| [a2ab15] | 1 | /*
 | 
|---|
 | 2 |  * CommandLineDialog.hpp
 | 
|---|
 | 3 |  *
 | 
|---|
 | 4 |  *  Created on: May 8, 2010
 | 
|---|
 | 5 |  *      Author: heber
 | 
|---|
 | 6 |  */
 | 
|---|
 | 7 | 
 | 
|---|
 | 8 | #ifndef COMMANDLINEDIALOG_HPP_
 | 
|---|
 | 9 | #define COMMANDLINEDIALOG_HPP_
 | 
|---|
 | 10 | 
 | 
|---|
 | 11 | #include <string>
 | 
|---|
 | 12 | 
 | 
|---|
| [97ebf8] | 13 | class atom;
 | 
|---|
 | 14 | class element;
 | 
|---|
 | 15 | class molecule;
 | 
|---|
 | 16 | class Vector;
 | 
|---|
 | 17 | 
 | 
|---|
| [5079a0] | 18 | #include "Dialog.hpp"
 | 
|---|
| [a2ab15] | 19 | 
 | 
|---|
 | 20 | /** CommandLineUIFactory implementation of the Dialog.
 | 
|---|
 | 21 |  * The idea here is that for each query the parsed command line options are used instead.
 | 
|---|
 | 22 |  */
 | 
|---|
 | 23 | class CommandLineDialog : public Dialog
 | 
|---|
 | 24 | {
 | 
|---|
 | 25 | public:
 | 
|---|
 | 26 |   CommandLineDialog();
 | 
|---|
 | 27 |   virtual ~CommandLineDialog();
 | 
|---|
 | 28 | 
 | 
|---|
| [86466e] | 29 |   virtual void queryEmpty(const char *, std::string = "");
 | 
|---|
| [75dc28] | 30 |   virtual void queryInt(const char *, std::string = "");
 | 
|---|
| [7cd6e7] | 31 |   virtual void queryInts(const char *, std::string = "");
 | 
|---|
| [75dc28] | 32 |   virtual void queryBoolean(const char *, std::string = "");
 | 
|---|
 | 33 |   virtual void queryString(const char*, std::string = "");
 | 
|---|
 | 34 |   virtual void queryStrings(const char*, std::string = "");
 | 
|---|
 | 35 |   virtual void queryDouble(const char*, std::string = "");
 | 
|---|
| [7cd6e7] | 36 |   virtual void queryDoubles(const char*, std::string = "");
 | 
|---|
| [75dc28] | 37 |   virtual void queryAtom(const char*, std::string = "");
 | 
|---|
| [7cd6e7] | 38 |   virtual void queryAtoms(const char*, std::string = "");
 | 
|---|
| [75dc28] | 39 |   virtual void queryMolecule(const char*, std::string = "");
 | 
|---|
| [7cd6e7] | 40 |   virtual void queryMolecules(const char*, std::string = "");
 | 
|---|
| [75dc28] | 41 |   virtual void queryVector(const char*, bool, std::string = "");
 | 
|---|
| [7cd6e7] | 42 |   virtual void queryVectors(const char*, bool, std::string = "");
 | 
|---|
| [75dc28] | 43 |   virtual void queryBox(const char*, std::string = "");
 | 
|---|
 | 44 |   virtual void queryElement(const char*, std::string = "");
 | 
|---|
| [7cd6e7] | 45 |   virtual void queryElements(const char*, std::string = "");
 | 
|---|
| [6f5dfe] | 46 |   virtual void queryFile(const char*, std::string = "");
 | 
|---|
| [a2ab15] | 47 | 
 | 
|---|
 | 48 | protected:
 | 
|---|
 | 49 |   // specialized stuff for text queries
 | 
|---|
| [86466e] | 50 |   class EmptyCommandLineQuery : public Dialog::EmptyQuery {
 | 
|---|
| [a2ab15] | 51 |   public:
 | 
|---|
| [86466e] | 52 |     EmptyCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
 | 53 |     virtual ~EmptyCommandLineQuery();
 | 
|---|
| [a2ab15] | 54 |     virtual bool handle();
 | 
|---|
 | 55 |   };
 | 
|---|
 | 56 | 
 | 
|---|
| [86466e] | 57 |   class IntCommandLineQuery : public Dialog::IntQuery {
 | 
|---|
| [a2ab15] | 58 |   public:
 | 
|---|
| [75dc28] | 59 |     IntCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
| [86466e] | 60 |     virtual ~IntCommandLineQuery();
 | 
|---|
| [a2ab15] | 61 |     virtual bool handle();
 | 
|---|
 | 62 |   };
 | 
|---|
 | 63 | 
 | 
|---|
| [7cd6e7] | 64 |   class IntsCommandLineQuery : public Dialog::IntsQuery {
 | 
|---|
 | 65 |   public:
 | 
|---|
 | 66 |     IntsCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
 | 67 |     virtual ~IntsCommandLineQuery();
 | 
|---|
 | 68 |     virtual bool handle();
 | 
|---|
 | 69 |   };
 | 
|---|
 | 70 | 
 | 
|---|
| [97ebf8] | 71 |   class BooleanCommandLineQuery : public Dialog::BooleanQuery {
 | 
|---|
 | 72 |   public:
 | 
|---|
| [75dc28] | 73 |     BooleanCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
| [97ebf8] | 74 |     virtual ~BooleanCommandLineQuery();
 | 
|---|
 | 75 |     virtual bool handle();
 | 
|---|
 | 76 |   };
 | 
|---|
 | 77 | 
 | 
|---|
| [86466e] | 78 |   class DoubleCommandLineQuery : public Dialog::DoubleQuery {
 | 
|---|
| [a2ab15] | 79 |   public:
 | 
|---|
| [75dc28] | 80 |     DoubleCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
| [86466e] | 81 |     virtual ~DoubleCommandLineQuery();
 | 
|---|
| [a2ab15] | 82 |     virtual bool handle();
 | 
|---|
 | 83 |   };
 | 
|---|
 | 84 | 
 | 
|---|
| [7cd6e7] | 85 |   class DoublesCommandLineQuery : public Dialog::DoublesQuery {
 | 
|---|
 | 86 |   public:
 | 
|---|
 | 87 |     DoublesCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
 | 88 |     virtual ~DoublesCommandLineQuery();
 | 
|---|
 | 89 |     virtual bool handle();
 | 
|---|
 | 90 |   };
 | 
|---|
 | 91 | 
 | 
|---|
| [86466e] | 92 |   class StringCommandLineQuery : public Dialog::StringQuery {
 | 
|---|
| [a2ab15] | 93 |   public:
 | 
|---|
| [75dc28] | 94 |     StringCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
| [86466e] | 95 |     virtual ~StringCommandLineQuery();
 | 
|---|
| [a2ab15] | 96 |     virtual bool handle();
 | 
|---|
 | 97 |   };
 | 
|---|
 | 98 | 
 | 
|---|
| [cd8e55] | 99 |   class StringsCommandLineQuery : public Dialog::StringsQuery {
 | 
|---|
 | 100 |   public:
 | 
|---|
| [75dc28] | 101 |     StringsCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
| [cd8e55] | 102 |     virtual ~StringsCommandLineQuery();
 | 
|---|
 | 103 |     virtual bool handle();
 | 
|---|
 | 104 |   };
 | 
|---|
 | 105 | 
 | 
|---|
| [97ebf8] | 106 |   class AtomCommandLineQuery : public Dialog::AtomQuery {
 | 
|---|
 | 107 |   public:
 | 
|---|
| [75dc28] | 108 |     AtomCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
| [97ebf8] | 109 |     virtual ~AtomCommandLineQuery();
 | 
|---|
 | 110 |     virtual bool handle();
 | 
|---|
 | 111 |   };
 | 
|---|
 | 112 | 
 | 
|---|
| [7cd6e7] | 113 |   class AtomsCommandLineQuery : public Dialog::AtomsQuery {
 | 
|---|
 | 114 |   public:
 | 
|---|
 | 115 |     AtomsCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
 | 116 |     virtual ~AtomsCommandLineQuery();
 | 
|---|
 | 117 |     virtual bool handle();
 | 
|---|
 | 118 |   };
 | 
|---|
 | 119 | 
 | 
|---|
| [86466e] | 120 |   class MoleculeCommandLineQuery : public Dialog::MoleculeQuery {
 | 
|---|
| [a2ab15] | 121 |   public:
 | 
|---|
| [75dc28] | 122 |     MoleculeCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
| [86466e] | 123 |     virtual ~MoleculeCommandLineQuery();
 | 
|---|
| [a2ab15] | 124 |     virtual bool handle();
 | 
|---|
 | 125 |   };
 | 
|---|
 | 126 | 
 | 
|---|
| [7cd6e7] | 127 |   class MoleculesCommandLineQuery : public Dialog::MoleculesQuery {
 | 
|---|
 | 128 |   public:
 | 
|---|
 | 129 |     MoleculesCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
 | 130 |     virtual ~MoleculesCommandLineQuery();
 | 
|---|
 | 131 |     virtual bool handle();
 | 
|---|
 | 132 |   };
 | 
|---|
 | 133 | 
 | 
|---|
| [86466e] | 134 |   class VectorCommandLineQuery : public Dialog::VectorQuery {
 | 
|---|
| [a2ab15] | 135 |   public:
 | 
|---|
| [75dc28] | 136 |     VectorCommandLineQuery(std::string title,bool _check, std::string _description = "");
 | 
|---|
| [86466e] | 137 |     virtual ~VectorCommandLineQuery();
 | 
|---|
 | 138 |     virtual bool handle();
 | 
|---|
 | 139 |   };
 | 
|---|
 | 140 | 
 | 
|---|
| [7cd6e7] | 141 |   class VectorsCommandLineQuery : public Dialog::VectorsQuery {
 | 
|---|
 | 142 |   public:
 | 
|---|
 | 143 |     VectorsCommandLineQuery(std::string title,bool _check, std::string _description = "");
 | 
|---|
 | 144 |     virtual ~VectorsCommandLineQuery();
 | 
|---|
 | 145 |     virtual bool handle();
 | 
|---|
 | 146 |   };
 | 
|---|
 | 147 | 
 | 
|---|
| [97ebf8] | 148 |   class BoxCommandLineQuery : public Dialog::BoxQuery {
 | 
|---|
 | 149 |   public:
 | 
|---|
| [75dc28] | 150 |     BoxCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
| [97ebf8] | 151 |     virtual ~BoxCommandLineQuery();
 | 
|---|
 | 152 |     virtual bool handle();
 | 
|---|
 | 153 |   };
 | 
|---|
 | 154 | 
 | 
|---|
| [86466e] | 155 |   class ElementCommandLineQuery : public Dialog::ElementQuery {
 | 
|---|
 | 156 |   public:
 | 
|---|
| [75dc28] | 157 |     ElementCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
| [86466e] | 158 |     virtual ~ElementCommandLineQuery();
 | 
|---|
| [a2ab15] | 159 |     virtual bool handle();
 | 
|---|
 | 160 |   };
 | 
|---|
| [7cd6e7] | 161 | 
 | 
|---|
 | 162 |   class ElementsCommandLineQuery : public Dialog::ElementsQuery {
 | 
|---|
 | 163 |   public:
 | 
|---|
 | 164 |     ElementsCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
 | 165 |     virtual ~ElementsCommandLineQuery();
 | 
|---|
 | 166 |     virtual bool handle();
 | 
|---|
 | 167 |   };
 | 
|---|
| [6f5dfe] | 168 | 
 | 
|---|
 | 169 |   class FileCommandLineQuery : public Dialog::FileQuery {
 | 
|---|
 | 170 |   public:
 | 
|---|
 | 171 |     FileCommandLineQuery(std::string title, std::string _description = "");
 | 
|---|
 | 172 |     virtual ~FileCommandLineQuery();
 | 
|---|
 | 173 |     virtual bool handle();
 | 
|---|
 | 174 |   };
 | 
|---|
| [a2ab15] | 175 | };
 | 
|---|
 | 176 | 
 | 
|---|
 | 177 | #endif /* COMMANDLINEDIALOG_HPP_ */
 | 
|---|