Changeset 5ec8e3 for src/UIElements


Ignore:
Timestamp:
Jul 2, 2010, 9:51:01 AM (15 years ago)
Author:
Tillmann Crueger <crueger@…>
Branches:
Action_Thermostats, Add_AtomRandomPerturbation, Add_FitFragmentPartialChargesAction, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Added_ParseSaveFragmentResults, AddingActions_SaveParseParticleParameters, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_ParticleName_to_Atom, Adding_StructOpt_integration_tests, AtomFragments, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.5.4, Candidate_v1.6.0, Candidate_v1.6.1, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, CombiningParticlePotentialParsing, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_BoundInBox_CenterInBox_MoleculeActions, Fix_ChargeSampling_PBC, Fix_ChronosMutex, Fix_FitPartialCharges, Fix_FitPotential_needs_atomicnumbers, Fix_ForceAnnealing, Fix_IndependentFragmentGrids, Fix_ParseParticles, Fix_ParseParticles_split_forward_backward_Actions, Fix_PopActions, Fix_QtFragmentList_sorted_selection, Fix_Restrictedkeyset_FragmentMolecule, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, Fix_fitting_potentials, Fixes, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, FragmentAction_writes_AtomFragments, FragmentMolecule_checks_bonddegrees, GeometryObjects, Gui_Fixes, Gui_displays_atomic_force_velocity, ImplicitCharges, IndependentFragmentGrids, IndependentFragmentGrids_IndividualZeroInstances, IndependentFragmentGrids_IntegrationTest, IndependentFragmentGrids_Sole_NN_Calculation, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, MoreRobust_FragmentAutomation, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PdbParser_setsAtomName, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, Rewrite_FitPartialCharges, RotateToPrincipalAxisSystem_UndoRedo, SaturateAtoms_findBestMatching, SaturateAtoms_singleDegree, StoppableMakroAction, Subpackage_CodePatterns, Subpackage_JobMarket, Subpackage_LinearAlgebra, Subpackage_levmar, Subpackage_mpqc_open, Subpackage_vmg, Switchable_LogView, ThirdParty_MPQC_rebuilt_buildsystem, TrajectoryDependenant_MaxOrder, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, TremoloParser_setsAtomName, Ubuntu_1604_changes, stable
Children:
36166d
Parents:
56fb09 (diff), 7ac4af (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'VectorRefactoring' into StructureRefactoring

Conflicts:

molecuilder/src/Makefile.am

Location:
src/UIElements
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • src/UIElements/CommandLineUI/CommandLineDialog.cpp

    r56fb09 r5ec8e3  
    2727#include "verbose.hpp"
    2828#include "World.hpp"
     29#include "Box.hpp"
    2930
    3031#include "atom.hpp"
     
    7374}
    7475
    75 void CommandLineDialog::queryVector(const char* title, Vector *target,const double *const cellSize, bool check, string _description) {
    76   registerQuery(new VectorCommandLineQuery(title,target,cellSize,check, _description));
    77 }
    78 
    79 void CommandLineDialog::queryBox(const char* title, double ** const cellSize, string _description) {
     76void CommandLineDialog::queryVector(const char* title, Vector *target, bool check, string _description) {
     77  registerQuery(new VectorCommandLineQuery(title,target,check, _description));
     78}
     79
     80void CommandLineDialog::queryBox(const char* title, Box* cellSize, string _description) {
    8081  registerQuery(new BoxCommandLineQuery(title,cellSize,_description));
    8182}
     
    202203}
    203204
    204 CommandLineDialog::VectorCommandLineQuery::VectorCommandLineQuery(string title, Vector *_target, const double *const _cellSize, bool _check, string _description) :
    205     Dialog::VectorQuery(title,_target,_cellSize,_check, _description)
     205CommandLineDialog::VectorCommandLineQuery::VectorCommandLineQuery(string title, Vector *_target, bool _check, string _description) :
     206    Dialog::VectorQuery(title,_target,_check, _description)
    206207{}
    207208
     
    224225
    225226
    226 CommandLineDialog::BoxCommandLineQuery::BoxCommandLineQuery(string title, double ** const _cellSize, string _description) :
     227CommandLineDialog::BoxCommandLineQuery::BoxCommandLineQuery(string title, Box* _cellSize, string _description) :
    227228    Dialog::BoxQuery(title,_cellSize, _description)
    228229{}
  • src/UIElements/CommandLineUI/CommandLineDialog.hpp

    r56fb09 r5ec8e3  
    3434  virtual void queryAtom(const char*,atom**, std::string = "");
    3535  virtual void queryMolecule(const char*,molecule**,std::string = "");
    36   virtual void queryVector(const char*,Vector *,const double * const,bool, std::string = "");
    37   virtual void queryBox(const char*,double ** const, std::string = "");
     36  virtual void queryVector(const char*,Vector *,bool, std::string = "");
     37  virtual void queryBox(const char*,Box *, std::string = "");
    3838  virtual void queryElement(const char*, std::vector<element *> *, std::string = "");
    3939
     
    9191  class VectorCommandLineQuery : public Dialog::VectorQuery {
    9292  public:
    93     VectorCommandLineQuery(std::string title,Vector *_target,const double *const _cellSize,bool _check, std::string _description = "");
     93    VectorCommandLineQuery(std::string title,Vector *_target,bool _check, std::string _description = "");
    9494    virtual ~VectorCommandLineQuery();
    9595    virtual bool handle();
     
    9898  class BoxCommandLineQuery : public Dialog::BoxQuery {
    9999  public:
    100     BoxCommandLineQuery(std::string title,double ** const _cellSize, std::string _description = "");
     100    BoxCommandLineQuery(std::string title,Box* _cellSize, std::string _description = "");
    101101    virtual ~BoxCommandLineQuery();
    102102    virtual bool handle();
  • src/UIElements/Dialog.cpp

    r56fb09 r5ec8e3  
    1414#include "molecule.hpp"
    1515#include "vector.hpp"
     16#include "Matrix.hpp"
     17#include "Box.hpp"
    1618
    1719using namespace std;
     
    173175// Vector Queries
    174176
    175 Dialog::VectorQuery::VectorQuery(std::string title,Vector *_target,const double *const _cellSize,bool _check, std::string _description) :
     177Dialog::VectorQuery::VectorQuery(std::string title,Vector *_target,bool _check, std::string _description) :
    176178  Query(title, _description),
    177   cellSize(_cellSize),
    178179  check(_check),
    179180  target(_target)
     
    193194// Box Queries
    194195
    195 Dialog::BoxQuery::BoxQuery(std::string title, double ** const _cellSize, std::string _description) :
     196Dialog::BoxQuery::BoxQuery(std::string title, Box* _cellSize, std::string _description) :
    196197  Query(title, _description),
    197198  target(_cellSize)
     
    206207
    207208void Dialog::BoxQuery::setResult() {
    208   for (int i=0;i<6;i++) {
    209     (*target)[i] = tmp[i];
    210   }
     209  (*target)= ReturnFullMatrixforSymmetric(tmp);
    211210}
    212211
  • src/UIElements/Dialog.hpp

    r56fb09 r5ec8e3  
    1414
    1515class atom;
     16class Box;
    1617class element;
    1718class molecule;
     
    4243  virtual void queryAtom(const char*,atom**,std::string = "")=0;
    4344  virtual void queryMolecule(const char*,molecule**, std::string = "")=0;
    44   virtual void queryVector(const char*,Vector *,const double *const,bool, std::string = "")=0;
    45   virtual void queryBox(const char*,double ** const, std::string = "")=0;
     45  virtual void queryVector(const char*,Vector *,bool, std::string = "")=0;
     46  virtual void queryBox(const char*,Box*, std::string = "")=0;
    4647  virtual void queryElement(const char*, std::vector<element *> *, std::string = "")=0;
    4748
     
    162163  class VectorQuery : public Query {
    163164  public:
    164       VectorQuery(std::string title,Vector *_target,const double *const _cellSize,bool _check, std::string _description = "");
     165      VectorQuery(std::string title,Vector *_target,bool _check, std::string _description = "");
    165166      virtual ~VectorQuery();
    166167      virtual bool handle()=0;
     
    168169    protected:
    169170      Vector *tmp;
    170       const double *const cellSize;
    171171      bool check;
    172172    private:
     
    176176  class BoxQuery : public Query {
    177177  public:
    178       BoxQuery(std::string title,double ** const _cellSize, std::string _description = "");
     178      BoxQuery(std::string title,Box *_cellSize, std::string _description = "");
    179179      virtual ~BoxQuery();
    180180      virtual bool handle()=0;
    181181      virtual void setResult();
    182182    protected:
    183       double *tmp;
     183      double* tmp;
    184184    private:
    185       double **target;
     185      Box* target;
    186186  };
    187187
  • src/UIElements/QT4/QTDialog.cpp

    r56fb09 r5ec8e3  
    2929#include "molecule.hpp"
    3030#include "Descriptors/MoleculeIdDescriptor.hpp"
     31#include "Matrix.hpp"
     32#include "Box.hpp"
    3133
    3234
     
    9395}
    9496
    95 void QTDialog::queryBox(char const*, double**, string){
     97void QTDialog::queryBox(char const*, Box*, string){
    9698  // TODO
    9799  ASSERT(false, "Not implemented yet");
     
    118120}
    119121
    120 void QTDialog::queryVector(const char* title, Vector *target,const double *const cellSize, bool check,string) {
    121   registerQuery(new VectorQTQuery(title,target,cellSize,check,inputLayout,this));
     122void QTDialog::queryVector(const char* title, Vector *target, bool check,string) {
     123  registerQuery(new VectorQTQuery(title,target,check,inputLayout,this));
    122124}
    123125
     
    248250}
    249251
    250 QTDialog::VectorQTQuery::VectorQTQuery(std::string title, Vector *_target, const double *const _cellSize, bool _check,QBoxLayout *_parent,QTDialog *_dialog) :
    251     Dialog::VectorQuery(title,_target,_cellSize,_check),
    252     parent(_parent)
    253 {
    254   // About the j: I don't know why it was done this way, but it was used this way in Vector::AskPosition, so I reused it
    255   int j = -1;
     252QTDialog::VectorQTQuery::VectorQTQuery(std::string title, Vector *_target, bool _check,QBoxLayout *_parent,QTDialog *_dialog) :
     253    Dialog::VectorQuery(title,_target,_check),
     254    parent(_parent)
     255{
     256  const Matrix& M = World::getInstance().getDomain().getM();
    256257  const char *coords[3] = {"x:","y:","z:"};
    257258  mainLayout= new QHBoxLayout();
     
    261262  mainLayout->addLayout(subLayout);
    262263  for(int i=0; i<3; i++) {
    263     j+=i+1;
    264264    coordLayout[i] = new QHBoxLayout();
    265265    subLayout->addLayout(coordLayout[i]);
     
    267267    coordLayout[i]->addWidget(coordLabel[i]);
    268268    coordInput[i] = new QDoubleSpinBox();
    269     coordInput[i]->setRange(0,cellSize[j]);
     269    coordInput[i]->setRange(0,M.at(i,i));
    270270    coordInput[i]->setDecimals(3);
    271271    coordLayout[i]->addWidget(coordInput[i]);
  • src/UIElements/QT4/QTDialog.hpp

    r56fb09 r5ec8e3  
    4242  virtual void queryAtom(const char*,atom**,std::string = "");
    4343  virtual void queryMolecule(const char*,molecule**,std::string = "");
    44   virtual void queryVector(const char*,Vector *,const double *const,bool,std::string = "");
    45   virtual void queryBox(const char*,double ** const, std::string = "");
     44  virtual void queryVector(const char*,Vector *,bool,std::string = "");
     45  virtual void queryBox(const char*,Box*, std::string = "");
    4646  virtual void queryElement(const char*,std::vector<element *> *_target,std::string = "");
    4747
     
    109109    class VectorQTQuery : public Dialog::VectorQuery {
    110110    public:
    111       VectorQTQuery(std::string title,Vector *_target,const double *const _cellSize,bool _check,QBoxLayout *,QTDialog *);
     111      VectorQTQuery(std::string title,Vector *_target,bool _check,QBoxLayout *,QTDialog *);
    112112      virtual ~VectorQTQuery();
    113113      virtual bool handle();
  • src/UIElements/TextUI/TextDialog.cpp

    r56fb09 r5ec8e3  
    2525#include "molecule.hpp"
    2626#include "vector.hpp"
     27#include "Matrix.hpp"
     28#include "Box.hpp"
    2729
    2830using namespace std;
     
    6668}
    6769
    68 void TextDialog::queryVector(const char* title, Vector *target,const double *const cellSize, bool check, string description) {
    69   registerQuery(new VectorTextQuery(title,target,cellSize,check,description));
    70 }
    71 
    72 void TextDialog::queryBox(const char* title,double ** const cellSize, string description) {
     70void TextDialog::queryVector(const char* title, Vector *target, bool check, string description) {
     71  registerQuery(new VectorTextQuery(title,target,check,description));
     72}
     73
     74void TextDialog::queryBox(const char* title,Box* cellSize, string description) {
    7375  registerQuery(new BoxTextQuery(title,cellSize,description));
    7476}
     
    243245}
    244246
    245 TextDialog::VectorTextQuery::VectorTextQuery(std::string title, Vector *_target, const double *const _cellSize, bool _check, std::string _description) :
    246     Dialog::VectorQuery(title,_target,_cellSize,_check,_description)
     247TextDialog::VectorTextQuery::VectorTextQuery(std::string title, Vector *_target, bool _check, std::string _description) :
     248    Dialog::VectorQuery(title,_target,_check,_description)
    247249{}
    248250
     
    253255  Log() << Verbose(0) << getTitle();
    254256
     257  const Matrix &M = World::getInstance().getDomain().getM();
    255258  char coords[3] = {'x','y','z'};
    256   int j = -1;
    257259  for (int i=0;i<3;i++) {
    258     j += i+1;
    259260    do {
    260       Log() << Verbose(0) << coords[i] << "[0.." << cellSize[j] << "]: ";
     261      Log() << Verbose(0) << coords[i] << "[0.." << M.at(i,i) << "]: ";
    261262      cin >> (*tmp)[i];
    262     } while ((((*tmp)[i] < 0) || ((*tmp)[i] >= cellSize[j])) && (check));
     263    } while ((((*tmp)[i] < 0) || ((*tmp)[i] >= M.at(i,i))) && (check));
    263264  }
    264265  return true;
    265266}
    266267
    267 TextDialog::BoxTextQuery::BoxTextQuery(std::string title, double ** const _cellSize, std::string _description) :
     268TextDialog::BoxTextQuery::BoxTextQuery(std::string title, Box* _cellSize, std::string _description) :
    268269    Dialog::BoxQuery(title,_cellSize,_description)
    269270{}
  • src/UIElements/TextUI/TextDialog.hpp

    r56fb09 r5ec8e3  
    3131  virtual void queryAtom(const char*,atom**,std::string = "");
    3232  virtual void queryMolecule(const char*,molecule**,std::string = "");
    33   virtual void queryVector(const char*,Vector *,const double * const,bool, std::string = "");
    34   virtual void queryBox(const char*,double ** const, std::string = "");
     33  virtual void queryVector(const char*,Vector *,bool, std::string = "");
     34  virtual void queryBox(const char*,Box*, std::string = "");
    3535  virtual void queryElement(const char*, std::vector<element *> *, std::string = "");
    3636
     
    8888  class VectorTextQuery : public Dialog::VectorQuery {
    8989  public:
    90     VectorTextQuery(std::string title,Vector *_target,const double *const _cellSize,bool _check, std::string _description = NULL);
     90    VectorTextQuery(std::string title,Vector *_target,bool _check, std::string _description = NULL);
    9191    virtual ~VectorTextQuery();
    9292    virtual bool handle();
     
    9595  class BoxTextQuery : public Dialog::BoxQuery {
    9696  public:
    97     BoxTextQuery(std::string title,double ** const _cellSize, std::string _description = NULL);
     97    BoxTextQuery(std::string title,Box* _cellSize, std::string _description = NULL);
    9898    virtual ~BoxTextQuery();
    9999    virtual bool handle();
Note: See TracChangeset for help on using the changeset viewer.