Changeset fa27ed for src/UIElements/QT4


Ignore:
Timestamp:
Jan 15, 2010, 2:59:35 PM (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:
a6f180
Parents:
8f67e2
Message:

Added support to call MenuItems using QT4

Location:
src/UIElements/QT4
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • src/UIElements/QT4/QTMainWindow.cpp

    r8f67e2 rfa27ed  
    99
    1010#include<Qt/qapplication.h>
     11#include<Qt/qlabel.h>
     12#include<Qt/qstring.h>
     13#include<Qt/qmenubar.h>
    1114
    1215#include<iostream>
     16#include<boost/bind.hpp>
     17
     18#include "atom.hpp"
     19#include "molecule.hpp"
     20#include "Menu/QT4/QTMenu.hpp"
     21#include "Views/StreamStringView.hpp"
     22
    1323
    1424using namespace std;
     
    1626QTMainWindow::QTMainWindow(menuPopulaters populaters,MoleculeListClass *molecules, config *configuration, periodentafel *periode, char *ConfigFileName,QApplication *_theApp) :
    1727    theApp(_theApp)
    18 {}
     28{
     29  moleculeView = new StreamStringView(boost::bind(&MoleculeListClass::Enumerate,molecules,_1));
     30  moleculeDisplay = new QLabel(QString(moleculeView->toString().c_str()));
     31  setCentralWidget(moleculeDisplay);
     32
     33  editMoleculesMenu = new QTMenu("Edit Molecules");
     34  populaters.MakeEditMoleculesMenu(editMoleculesMenu,molecules,configuration,periode);
     35  menuBar()->addMenu(editMoleculesMenu);
     36}
    1937
    2038QTMainWindow::~QTMainWindow()
     
    2442
    2543void QTMainWindow::display() {
    26   cout << "Displaying the QTMainWindow" << endl;
    2744  this->show();
    2845  theApp->exec();
  • src/UIElements/QT4/QTMainWindow.hpp

    r8f67e2 rfa27ed  
    1212#include <Qt/qmainwindow.h>
    1313
     14class QLabel;
     15class StringView;
     16class QTMenu;
     17
    1418class QTMainWindow : public QMainWindow, public MainWindow
    1519{
     
    2428
    2529private:
     30  // All kinds of QTStuff used in this window
    2631  QApplication *theApp;
     32  QLabel *moleculeDisplay;
     33  QTMenu *editMoleculesMenu;
     34
     35  // All kinds of internal stuff that is bridged to QT
     36  StringView *moleculeView;
    2737
    2838};
  • src/UIElements/QT4/QTUIFactory.cpp

    r8f67e2 rfa27ed  
    1515#include "UIElements/QT4/QTUIFactory.hpp"
    1616#include "UIElements/QT4/QTMainWindow.hpp"
     17#include "defs.hpp"
    1718
    1819QTUIFactory::QTUIFactory()
     
    3334
    3435MainWindow* QTUIFactory::makeMainWindow(menuPopulaters populaters,MoleculeListClass *molecules, config *configuration, periodentafel *periode, char *ConfigFileName) {
    35   cout << "making QT4 Window" << endl;
    36 
    3736  // For now we just fake the command line parameters to make QT happy
    3837  int argc=1;
    3938  char **argv;
    4039  argv = new char*[1];
    41   argv[0] = new char[10];
    42   strcpy(argv[0],"foo");
     40  argv[0] = new char[64];
     41  strcpy(argv[0],MOLECUILDER_NAME);
    4342  app = new QApplication(argc,argv);
    4443  return new QTMainWindow(populaters,molecules,configuration,periode,ConfigFileName,app);
Note: See TracChangeset for help on using the changeset viewer.