diff options
Diffstat (limited to 'include/Form.h')
-rw-r--r-- | include/Form.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/include/Form.h b/include/Form.h new file mode 100644 index 0000000..8a35898 --- /dev/null +++ b/include/Form.h @@ -0,0 +1,41 @@ +#ifndef __FORM_H__ +#define __FORM_H__ +#ifdef __cplusplus + +#include "Exceptions.h" +#include "Action.h" +#include "String.h" +/* + * Cette classe sert à afficher un formulaire de saisie. + * Constructeur: + * - titre = titre de la page + * - url = url de ce formulaire + * - inv = invite du formulaire + * - names = liste des noms des variables pour chaque champs + * - invs = liste des invites pour chaque champs + * - defaults = listes des valeurs par defaut pour chaque champs + * - lists = liste des listes de valeurs pour les menus deroulants. Si une liste déroulante = 0, + * alors il s'agira d'un champ de saisie manuel. + * - descs = liste des listes de descriptions pour les menus deroulants. + * - nb = nombre de champs + * - ok = Action a effectuer lorsque l'on clique sur le bouton Ok. + */ + +class Form : public Action { + public: + Form(const String & titre, const String & url, const String & inv, + String * names, String * invs, String * defaults, String ** lists, String ** descs, + int nb, Action * ok = 0); + virtual ~Form() { } + virtual String GetTitle(); + virtual void Do(Variables *, Handle *); + private: + String tit, iv, * nms, * ivs, * defs, ** lsts, ** dscs; + int n; + Action * Next; +}; + +#else +#error This only works with a C++ compiler +#endif +#endif |