1
/***************************************************************************
2
* Copyright (C) 2006 by Carsten Niehaus <cniehaus@kde.org>
3
* Copyright (C) 2007-2008 by Marcus D. Hanwell <marcus@cryos.org>
4
***************************************************************************/
6
/***************************************************************************
8
* This program is free software; you can redistribute it and/or modify *
9
* it under the terms of the GNU General Public License as published by *
10
* the Free Software Foundation; either version 2 of the License, or *
11
* (at your option) any later version. *
13
***************************************************************************/
14
#ifndef MOLECULEVIEW_H
15
#define MOLECULEVIEW_H
19
#include "ui_moleculeviewerwidget.h"
25
class PeriodicTableView;
30
* @author Carsten Niehaus
32
class MoleculeDialog : public KDialog
37
MoleculeDialog( QWidget * parent );
41
QString m_path;///to store the path were the molecules are located
42
QList<int> m_elementsIndex; // Index storing the element combo index
43
Avogadro::PeriodicTableView *m_periodicTable;
44
OpenBabel::OBForceField* m_forceField;
45
QSettings *m_drawSettings;
48
Ui::moleculeViewerForm ui;
51
* Set up the element combo box
59
void slotLoadMolecule();
62
* Get a new molecule using hot new stuff
64
void slotDownloadNewStuff();
69
void slotSaveMolecule();
74
void setViewEdit(int mode);
77
* Current element has changed
79
void slotElementChanged(int element);
82
* Custom element has been selected
84
void slotCustomElementChanged(int);
87
* Bond order has been changed
89
void slotBondOrderChanged(int);
92
* Automatic hydrogen addition on drawing
94
void slotAddHydrogensChanged(int);
97
* Update the statistical information about the current molecule
99
void slotUpdateStatistics();
102
* Add/remove hydrogens
104
void slotAdjustHydrogens();
107
* Geometry optimization
109
void slotGeometryOptimize();
113
#endif // MOLECULEVIEW_H