Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  nsRadioVisitor.h   Sprache: C

 
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */


#ifndef _nsRadioVisitor_h__
#define _nsRadioVisitor_h__

#include "mozilla/Attributes.h"
#include "nsIRadioVisitor.h"

using mozilla::dom::HTMLInputElement;

/**
 * nsRadioVisitor is the base class implementing nsIRadioVisitor and inherited
 * by all radio visitors.
 */

class nsRadioVisitor : public nsIRadioVisitor {
 protected:
  virtual ~nsRadioVisitor() = default;

 public:
  nsRadioVisitor() = default;

  NS_DECL_ISUPPORTS

  virtual bool Visit(HTMLInputElement* aRadio) override = 0;
};

/**
 * The following declarations are radio visitors inheriting from nsRadioVisitor.
 */


/**
 * nsRadioSetCheckedChangedVisitor is calling SetCheckedChanged with the given
 * parameter to all radio elements in the group.
 */

class nsRadioSetCheckedChangedVisitor : public nsRadioVisitor {
 public:
  explicit nsRadioSetCheckedChangedVisitor(bool aCheckedChanged)
      : mCheckedChanged(aCheckedChanged) {}

  virtual bool Visit(HTMLInputElement* aRadio) override;

 protected:
  bool mCheckedChanged;
};

/**
 * nsRadioGetCheckedChangedVisitor is getting the current checked changed value.
 * Getting it from one radio element is the group is enough given that all
 * elements should have the same value.
 */

class nsRadioGetCheckedChangedVisitor : public nsRadioVisitor {
 public:
  nsRadioGetCheckedChangedVisitor(bool* aCheckedChanged,
                                  HTMLInputElement* aExcludeElement)
      : mCheckedChanged(aCheckedChanged), mExcludeElement(aExcludeElement) {}

  virtual bool Visit(HTMLInputElement* aRadio) override;

 protected:
  bool* mCheckedChanged;
  HTMLInputElement* mExcludeElement;
};

/**
 * nsRadioSetValueMissingState is calling SetValueMissingState with the given
 * parameter to all radio elements in the group.
 * It is also calling ContentStatesChanged if needed.
 */

class nsRadioSetValueMissingState : public nsRadioVisitor {
 public:
  nsRadioSetValueMissingState(HTMLInputElement* aExcludeElement, bool aValidity)
      : mExcludeElement(aExcludeElement), mValidity(aValidity) {}

  virtual bool Visit(HTMLInputElement* aRadio) override;

 protected:
  HTMLInputElement* mExcludeElement;
  bool mValidity;
};

class nsRadioUpdateStateVisitor : public nsRadioVisitor {
 public:
  explicit nsRadioUpdateStateVisitor(HTMLInputElement* aExcludeElement)
      : mExcludeElement(aExcludeElement) {}

  virtual bool Visit(HTMLInputElement* aRadio) override;

 protected:
  HTMLInputElement* mExcludeElement;
};

#endif  // _nsRadioVisitor_h__

Messung V0.5
C=96 H=99 G=97

¤ Dauer der Verarbeitung: 0.11 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge