Index: src/UIElements/Qt4/QtDialog.cpp
===================================================================
--- src/UIElements/Qt4/QtDialog.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/QtDialog.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -19,4 +19,5 @@
 
 #include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 #include <QtGui/QDialogButtonBox>
Index: src/UIElements/Qt4/QtDialog.hpp
===================================================================
--- src/UIElements/Qt4/QtDialog.hpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/QtDialog.hpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -31,23 +31,4 @@
 class Matrix;
 
-// Forward declarations for plumbing
-template<typename T> class QtQueryListPipe;
-class BooleanQtQueryPipe;
-class BoxQtQueryPipe;
-class StringQtQueryPipe;
-class StringsQtQueryPipe;
-class IntQtQueryPipe;
-class DoubleQtQueryPipe;
-class DoublesQtQueryPipe;
-class AtomQtQueryPipe;
-class AtomsQtQueryPipe;
-class MoleculeQtQueryPipe;
-class MoleculesQtQueryPipe;
-class EmptyQtQueryPipe;
-class ElementQtQueryPipe;
-class ElementsQtQueryPipe;
-class VectorQtQueryPipe;
-class VectorsQtQueryPipe;
-class FileQtQueryPipe;
 
 class QtDialog : public QDialog, public Dialog
@@ -82,265 +63,22 @@
 
 protected:
-  class IntQtQuery : public Dialog::IntQuery {
-    public:
-      IntQtQuery(std::string _title,QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~IntQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QSpinBox *inputBox;
-
-      IntQtQueryPipe *pipe;
-    };
-
-  class IntsQtQuery : public Dialog::IntsQuery {
-    public:
-      IntsQtQuery(std::string _title,QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~IntsQtQuery();
-      virtual bool handle();
-      void IntegerEntered(const QString&);
-      void IntegerSelected();
-      void AddInteger();
-      void RemoveInteger();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-
-      QtQueryListPipe<int> *pipe;
-    };
-
-    class DoubleQtQuery : public Dialog::DoubleQuery {
-    public:
-      DoubleQtQuery(std::string title,QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~DoubleQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QDoubleSpinBox *inputBox;
-
-      DoubleQtQueryPipe *pipe;
-    };
-
-    class DoublesQtQuery : public Dialog::DoublesQuery {
-    public:
-      DoublesQtQuery(std::string title,QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~DoublesQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QDoubleSpinBox *inputBox;
-
-      QtQueryListPipe<double> *pipe;
-    };
-
-    class StringQtQuery : public Dialog::StringQuery {
-    public:
-      StringQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~StringQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QLineEdit *inputBox;
-
-      StringQtQueryPipe *pipe;
-    };
-
-    class StringsQtQuery : public Dialog::StringsQuery {
-    public:
-      StringsQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~StringsQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QLineEdit *inputBox;
-
-      QtQueryListPipe<std::string> *pipe;
-    };
-
-    class BoxQtQuery : public Dialog::BoxQuery {
-    public:
-      BoxQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~BoxQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QTableWidget *inputTable;
-
-      BoxQtQueryPipe *pipe;
-    };
-
-    class AtomQtQuery : public Dialog::AtomQuery {
-    public:
-      AtomQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~AtomQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QComboBox *inputBox;
-
-      AtomQtQueryPipe *pipe;
-    };
-
-    class AtomsQtQuery : public Dialog::AtomsQuery {
-    public:
-      AtomsQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~AtomsQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QLabel *inputLabel;
-      QListWidget *inputList;
-
-      AtomsQtQueryPipe *pipe;
-    };
-
-    class MoleculeQtQuery : public Dialog::MoleculeQuery {
-    public:
-      MoleculeQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~MoleculeQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QComboBox *inputBox;
-
-      MoleculeQtQueryPipe *pipe;
-    };
-
-    class MoleculesQtQuery : public Dialog::MoleculesQuery {
-    public:
-      MoleculesQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
-      virtual ~MoleculesQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QComboBox *inputBox;
-
-      MoleculesQtQueryPipe *pipe;
-    };
-
-    class VectorQtQuery : public Dialog::VectorQuery {
-    public:
-      VectorQtQuery(std::string title,bool _check,QBoxLayout *,QtDialog *);
-      virtual ~VectorQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *mainLayout;
-      QLabel *titleLabel;
-      QBoxLayout *subLayout;
-      QBoxLayout *coordLayout;
-      QLabel *coordLabel;
-      QDoubleSpinBox *coordInput;
-
-      VectorQtQueryPipe *pipe;
-    };
-
-    class VectorsQtQuery : public Dialog::VectorsQuery {
-    public:
-      VectorsQtQuery(std::string title,bool _check,QBoxLayout *,QtDialog *);
-      virtual ~VectorsQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *mainLayout;
-      QLabel *titleLabel;
-      QBoxLayout *subLayout;
-      QBoxLayout *coordLayout;
-      QLabel *coordLabel;
-      QDoubleSpinBox *coordInput;
-
-      VectorsQtQueryPipe *pipe;
-    };
-
-    class EmptyQtQuery : public Dialog::EmptyQuery {
-    public:
-      EmptyQtQuery(std::string _title, QBoxLayout *_parent, QtDialog *_dialog);
-      virtual ~EmptyQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-
-      EmptyQtQueryPipe *pipe;
-    };
-
-    class BooleanQtQuery : public Dialog::BooleanQuery {
-    public:
-      BooleanQtQuery(std::string _title, QBoxLayout *_parent, QtDialog *_dialog);
-      virtual ~BooleanQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QComboBox *booleanComboBox;
-
-      BooleanQtQueryPipe *pipe;
-    };
-
-    class ElementQtQuery : public Dialog::ElementQuery {
-    public:
-      ElementQtQuery(std::string _title, QBoxLayout *_parent, QtDialog *_dialog);
-      virtual ~ElementQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QComboBox *inputBox;
-
-      ElementQtQueryPipe *pipe;
-    };
-
-    class ElementsQtQuery : public Dialog::ElementsQuery {
-    public:
-      ElementsQtQuery(std::string _title, QBoxLayout *_parent, QtDialog *_dialog);
-      virtual ~ElementsQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *titleLabel;
-      QComboBox *inputBox;
-
-      ElementsQtQueryPipe *pipe;
-    };
-
-    class FileQtQuery : public Dialog::FileQuery {
-    public:
-      FileQtQuery(std::string _title, QBoxLayout *_parent, QtDialog *_dialog);
-      virtual ~FileQtQuery();
-      virtual bool handle();
-    private:
-      QBoxLayout *parent;
-      QBoxLayout *thisLayout;
-      QLabel *filenameLabel;
-      QLineEdit *filenameLineEdit;
-      QPushButton *filedialogButton;
-
-      FileQtQueryPipe *pipe;
-    };
+  class AtomQtQuery;
+  class AtomsQtQuery;
+  class BooleanQtQuery;
+  class BoxQtQuery;
+  class DoubleQtQuery;
+  class DoublesQtQuery;
+  class ElementQtQuery;
+  class ElementsQtQuery;
+  class EmptyQtQuery;
+  class FileQtQuery;
+  class IntQtQuery;
+  class IntsQtQuery;
+  class MoleculeQtQuery;
+  class MoleculesQtQuery;
+  class StringQtQuery;
+  class StringsQtQuery;
+  class VectorQtQuery;
+  class VectorsQtQuery;
 
 private:
Index: src/UIElements/Qt4/Query/AtomQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/AtomQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/AtomQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -24,5 +24,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 #include "atom.hpp"
Index: src/UIElements/Qt4/Query/AtomsQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/AtomsQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/AtomsQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -26,5 +26,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 #include "atom.hpp"
Index: src/UIElements/Qt4/Query/BooleanQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/BooleanQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/BooleanQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -24,5 +24,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 
Index: src/UIElements/Qt4/Query/BoxQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/BoxQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/BoxQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -24,5 +24,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 #include "LinearAlgebra/Matrix.hpp"
Index: src/UIElements/Qt4/Query/DoubleQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/DoubleQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/DoubleQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -24,5 +24,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 
Index: src/UIElements/Qt4/Query/DoublesQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/DoublesQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/DoublesQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -26,5 +26,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 #include "UIElements/Qt4/Pipe/QtQueryListPipe.hpp"
 
Index: src/UIElements/Qt4/Query/ElementQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/ElementQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/ElementQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -24,5 +24,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 #include "element.hpp"
Index: src/UIElements/Qt4/Query/ElementsQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/ElementsQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/ElementsQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -24,5 +24,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 #include "element.hpp"
Index: src/UIElements/Qt4/Query/EmptyQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/EmptyQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/EmptyQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -23,5 +23,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 
Index: src/UIElements/Qt4/Query/FileQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/FileQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/FileQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -25,5 +25,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 
Index: src/UIElements/Qt4/Query/IntQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/IntQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/IntQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -24,5 +24,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 
Index: src/UIElements/Qt4/Query/IntsQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/IntsQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/IntsQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -26,5 +26,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 #include "UIElements/Qt4/Pipe/QtQueryListPipe.hpp"
 
Index: src/UIElements/Qt4/Query/MoleculeQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/MoleculeQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/MoleculeQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -24,5 +24,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 #include "molecule.hpp"
Index: src/UIElements/Qt4/Query/MoleculesQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/MoleculesQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/MoleculesQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -24,5 +24,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 #include "molecule.hpp"
Index: src/UIElements/Qt4/Query/QtQuery.hpp
===================================================================
--- src/UIElements/Qt4/Query/QtQuery.hpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
+++ src/UIElements/Qt4/Query/QtQuery.hpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -0,0 +1,296 @@
+/*
+ * QtQuery.hpp
+ *
+ *  Created on: Nov 8, 2010
+ *      Author: heber
+ */
+
+#ifndef QTQUERY_HPP_
+#define QTQUERY_HPP_
+
+#include "Qt4/QtDialog.hpp"
+
+// Forward declarations for plumbing
+template<typename T> class QtQueryListPipe;
+class BooleanQtQueryPipe;
+class BoxQtQueryPipe;
+class StringQtQueryPipe;
+class StringsQtQueryPipe;
+class IntQtQueryPipe;
+class DoubleQtQueryPipe;
+class DoublesQtQueryPipe;
+class AtomQtQueryPipe;
+class AtomsQtQueryPipe;
+class MoleculeQtQueryPipe;
+class MoleculesQtQueryPipe;
+class EmptyQtQueryPipe;
+class ElementQtQueryPipe;
+class ElementsQtQueryPipe;
+class VectorQtQueryPipe;
+class VectorsQtQueryPipe;
+class FileQtQueryPipe;
+
+
+class QtDialog::AtomQtQuery : public Dialog::AtomQuery {
+public:
+  AtomQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~AtomQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QComboBox *inputBox;
+
+  AtomQtQueryPipe *pipe;
+};
+
+class QtDialog::AtomsQtQuery : public Dialog::AtomsQuery {
+public:
+  AtomsQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~AtomsQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QLabel *inputLabel;
+  QListWidget *inputList;
+
+  AtomsQtQueryPipe *pipe;
+};
+
+class QtDialog::BooleanQtQuery : public Dialog::BooleanQuery {
+public:
+  BooleanQtQuery(std::string _title, QBoxLayout *_parent, QtDialog *_dialog);
+  virtual ~BooleanQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QComboBox *booleanComboBox;
+
+  BooleanQtQueryPipe *pipe;
+};
+
+class QtDialog::BoxQtQuery : public Dialog::BoxQuery {
+public:
+  BoxQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~BoxQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QTableWidget *inputTable;
+
+  BoxQtQueryPipe *pipe;
+};
+
+class QtDialog::DoubleQtQuery : public Dialog::DoubleQuery {
+public:
+  DoubleQtQuery(std::string title,QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~DoubleQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QDoubleSpinBox *inputBox;
+
+  DoubleQtQueryPipe *pipe;
+};
+
+class QtDialog::DoublesQtQuery : public Dialog::DoublesQuery {
+public:
+  DoublesQtQuery(std::string title,QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~DoublesQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QDoubleSpinBox *inputBox;
+
+  QtQueryListPipe<double> *pipe;
+};
+
+class QtDialog::ElementQtQuery : public Dialog::ElementQuery {
+public:
+  ElementQtQuery(std::string _title, QBoxLayout *_parent, QtDialog *_dialog);
+  virtual ~ElementQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QComboBox *inputBox;
+
+  ElementQtQueryPipe *pipe;
+};
+
+class QtDialog::ElementsQtQuery : public Dialog::ElementsQuery {
+public:
+  ElementsQtQuery(std::string _title, QBoxLayout *_parent, QtDialog *_dialog);
+  virtual ~ElementsQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QComboBox *inputBox;
+
+  ElementsQtQueryPipe *pipe;
+};
+
+class QtDialog::EmptyQtQuery : public Dialog::EmptyQuery {
+public:
+  EmptyQtQuery(std::string _title, QBoxLayout *_parent, QtDialog *_dialog);
+  virtual ~EmptyQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+
+  EmptyQtQueryPipe *pipe;
+};
+
+class QtDialog::FileQtQuery : public Dialog::FileQuery {
+public:
+  FileQtQuery(std::string _title, QBoxLayout *_parent, QtDialog *_dialog);
+  virtual ~FileQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *filenameLabel;
+  QLineEdit *filenameLineEdit;
+  QPushButton *filedialogButton;
+
+  FileQtQueryPipe *pipe;
+};
+
+class QtDialog::IntQtQuery : public Dialog::IntQuery {
+public:
+  IntQtQuery(std::string _title,QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~IntQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QSpinBox *inputBox;
+
+  IntQtQueryPipe *pipe;
+};
+
+class QtDialog::IntsQtQuery : public Dialog::IntsQuery {
+public:
+  IntsQtQuery(std::string _title,QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~IntsQtQuery();
+  virtual bool handle();
+  void IntegerEntered(const QString&);
+  void IntegerSelected();
+  void AddInteger();
+  void RemoveInteger();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+
+  QtQueryListPipe<int> *pipe;
+};
+
+class QtDialog::MoleculeQtQuery : public Dialog::MoleculeQuery {
+public:
+  MoleculeQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~MoleculeQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QComboBox *inputBox;
+
+  MoleculeQtQueryPipe *pipe;
+};
+
+class QtDialog::MoleculesQtQuery : public Dialog::MoleculesQuery {
+public:
+  MoleculesQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~MoleculesQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QComboBox *inputBox;
+
+  MoleculesQtQueryPipe *pipe;
+};
+
+class QtDialog::StringQtQuery : public Dialog::StringQuery {
+public:
+  StringQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~StringQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QLineEdit *inputBox;
+
+  StringQtQueryPipe *pipe;
+};
+
+class QtDialog::StringsQtQuery : public Dialog::StringsQuery {
+public:
+  StringsQtQuery(std::string _title, QBoxLayout *_parent,QtDialog *_dialog);
+  virtual ~StringsQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *thisLayout;
+  QLabel *titleLabel;
+  QLineEdit *inputBox;
+
+  QtQueryListPipe<std::string> *pipe;
+};
+
+class QtDialog::VectorQtQuery : public Dialog::VectorQuery {
+public:
+  VectorQtQuery(std::string title,bool _check,QBoxLayout *,QtDialog *);
+  virtual ~VectorQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *mainLayout;
+  QLabel *titleLabel;
+  QBoxLayout *subLayout;
+  QBoxLayout *coordLayout;
+  QLabel *coordLabel;
+  QDoubleSpinBox *coordInput;
+
+  VectorQtQueryPipe *pipe;
+};
+
+class QtDialog::VectorsQtQuery : public Dialog::VectorsQuery {
+public:
+  VectorsQtQuery(std::string title,bool _check,QBoxLayout *,QtDialog *);
+  virtual ~VectorsQtQuery();
+  virtual bool handle();
+private:
+  QBoxLayout *parent;
+  QBoxLayout *mainLayout;
+  QLabel *titleLabel;
+  QBoxLayout *subLayout;
+  QBoxLayout *coordLayout;
+  QLabel *coordLabel;
+  QDoubleSpinBox *coordInput;
+
+  VectorsQtQueryPipe *pipe;
+};
+
+#endif /* QTQUERY_HPP_ */
Index: src/UIElements/Qt4/Query/StringQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/StringQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/StringQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -24,5 +24,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 
Index: src/UIElements/Qt4/Query/StringsQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/StringsQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/StringsQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -26,5 +26,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 #include "UIElements/Qt4/Pipe/QtQueryListPipe.hpp"
 
Index: src/UIElements/Qt4/Query/VectorQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/VectorQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/VectorQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -25,5 +25,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 
Index: src/UIElements/Qt4/Query/VectorsQtQuery.cpp
===================================================================
--- src/UIElements/Qt4/Query/VectorsQtQuery.cpp	(revision 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba)
+++ src/UIElements/Qt4/Query/VectorsQtQuery.cpp	(revision 308aa43f3e30fb9a88d9923d90ff3940289ce5a3)
@@ -25,5 +25,5 @@
 #include "Helpers/MemDebug.hpp"
 
-#include "UIElements/Qt4/QtDialog.hpp"
+#include "UIElements/Qt4/Query/QtQuery.hpp"
 
 
