1 | /*
|
---|
2 | * QTMainWindow.cpp
|
---|
3 | *
|
---|
4 | * Created on: Jan 14, 2010
|
---|
5 | * Author: crueger
|
---|
6 | */
|
---|
7 |
|
---|
8 | #include "QTMainWindow.hpp"
|
---|
9 |
|
---|
10 | #include<Qt/qapplication.h>
|
---|
11 | #include<Qt/qlabel.h>
|
---|
12 | #include<Qt/qstring.h>
|
---|
13 | #include<Qt/qmenubar.h>
|
---|
14 | #include<Qt/qsplitter.h>
|
---|
15 |
|
---|
16 | #include<iostream>
|
---|
17 | #include<boost/bind.hpp>
|
---|
18 |
|
---|
19 | #include "atom.hpp"
|
---|
20 | #include "molecule.hpp"
|
---|
21 | #include "Menu/QT4/QTMenu.hpp"
|
---|
22 | #include "Views/QT4/QTWorldView.hpp"
|
---|
23 | #include "Views/QT4/GLMoleculeView.hpp"
|
---|
24 | #include "Views/QT4/QTMoleculeView.hpp"
|
---|
25 | #include "Views/QT4/QTStatusBar.hpp"
|
---|
26 |
|
---|
27 |
|
---|
28 | using namespace std;
|
---|
29 |
|
---|
30 | QTMainWindow::QTMainWindow(menuPopulaters populaters,MoleculeListClass *molecules, config *configuration, periodentafel *periode, char *ConfigFileName,QApplication *_theApp) :
|
---|
31 | theApp(_theApp)
|
---|
32 | {
|
---|
33 | QSplitter *splitter1 = new QSplitter (Qt::Horizontal, this );
|
---|
34 | QSplitter *splitter2 = new QSplitter (Qt::Vertical, splitter1 );
|
---|
35 |
|
---|
36 | worldDisplay = new QTWorldView(molecules,splitter2);
|
---|
37 |
|
---|
38 | moleculeDisplay = new QTMoleculeView();
|
---|
39 | molecule3dDisplay = new GLMoleculeView();
|
---|
40 |
|
---|
41 | setCentralWidget(splitter1);
|
---|
42 | splitter1->addWidget(splitter2);
|
---|
43 | splitter1->addWidget(moleculeDisplay);
|
---|
44 | splitter2->addWidget(molecule3dDisplay);
|
---|
45 | splitter2->addWidget(worldDisplay);
|
---|
46 |
|
---|
47 | statusBar = new QTStatusBar(this);
|
---|
48 | setStatusBar(statusBar);
|
---|
49 |
|
---|
50 | editMoleculesMenu = new QTMenu("Edit Molecules");
|
---|
51 | populaters.MakeEditMoleculesMenu(editMoleculesMenu,molecules,configuration,periode);
|
---|
52 | menuBar()->addMenu(editMoleculesMenu);
|
---|
53 |
|
---|
54 | connect(worldDisplay,SIGNAL(moleculeSelected(molecule*)),moleculeDisplay,SLOT(moleculeSelected(molecule*)));
|
---|
55 | connect(worldDisplay,SIGNAL(moleculeUnSelected(molecule*)),moleculeDisplay,SLOT(moleculeUnSelected(molecule*)));
|
---|
56 | }
|
---|
57 |
|
---|
58 | QTMainWindow::~QTMainWindow()
|
---|
59 | {}
|
---|
60 |
|
---|
61 | void QTMainWindow::display() {
|
---|
62 | this->show();
|
---|
63 | theApp->exec();
|
---|
64 | }
|
---|