You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

102 lines
2.1 KiB

14 years ago
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QSystemTrayIcon>
#include "graphwidget.h"
14 years ago
namespace Ui {
class MainWindow;
14 years ago
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
14 years ago
~MainWindow();
// instead of givin access to private m_ui
void statusBarMsg(const QString &msg);
// indicate that content has changed, modify title, save actions
void contentChanged(const bool &changed = true);
14 years ago
public slots:
14 years ago
// filemenu actions
void newFile();
void openFile(const QString &fileName = "");
void saveFile();
bool saveFileAs();
bool closeFile();
void exportScene();
void about();
// insert state icon
void insertPicture();
// toolbars
void showMainToolbar(const bool &show = true);
void showStatusIconToolbar(const bool &show = true);
protected:
// handle changed content at exit events
void closeEvent(QCloseEvent * event);
// show/hide toolbars, otherwise pass on the event to GraphWidget
void keyPressEvent(QKeyEvent *event);
private slots:
void quit();
14 years ago
private:
void setUpMainToolbar();
void setUpStatusIconToolbar();
void setTitle(const QString &title);
Ui::MainWindow *m_ui;
GraphWidget *m_graphicsView;
14 years ago
QString m_fileName;
bool m_contentChanged;
// main toolbar actions
QAction *m_addNode;
QAction *m_delNode;
QAction *m_editNode;
QAction *m_scaleUpNode;
QAction *m_scaleDownNode;
QAction *m_nodeColor;
QAction *m_nodeTextColor;
QAction *m_addEdge;
QAction *m_delEdge;
QAction *m_zoomIn;
QAction *m_zoomOut;
QAction *m_esc;
QAction *m_hintMode;
QAction *m_moveNode;
QAction *m_subtree;
QAction *m_showMainToolbar;
QAction *m_showStatusIconToolbar;
// state icons toolbar actions
QAction *m_insertIcon;
QAction *m_doIt;
QAction *m_trash;
QAction *m_info;
QAction *m_blocked;
QAction *m_question;
QAction *m_postpone;
QAction *m_delegate;
14 years ago
QAction *m_maybe;
14 years ago
};
#endif // MAINWINDOW_H