]> git.zarvox.org Git - shareboard.git/blob - mainwindow.h
Implement image insertion and placement, tool selection, and eraser.
[shareboard.git] / mainwindow.h
1 #ifndef __MAINWINDOW_H__
2 #define __MAINWINDOW_H__
3
4 #include <QMainWindow>
5 #include <QColor>
6
7 class QMenu;
8 class QAction;
9 class ConnectWidget;
10 class ConnectionManager;
11 class Shareboard;
12 class Action;
13 class QSpinBox;
14 class QSlider;
15
16 class MainWindow : public QMainWindow {
17         Q_OBJECT
18 public:
19         MainWindow(QWidget* parent = 0);
20         ~MainWindow();
21 public slots:
22 //      void join();
23         void load();
24         void save();
25         void quit();
26         void switchToBoard();
27         void switchToConnect();
28         void showError(QString error);
29         void chooseColor();
30         void clearBoard();
31         void marshallAction(Action* action);
32         void updateSliderRange(int newmax);
33         void useEraserTool();
34         void useImageTool();
35         void usePenTool();
36 private:
37         void createActions();
38         void createMenus();
39         void createToolBars();
40         QMenu* fileMenu;
41         QToolBar* toolBar;
42 //      QAction* joinAction; // Removed in favor of central widget handling this.
43         QAction* loadPastAction;
44         QAction* saveAction;
45         QAction* quitAction;
46         QAction* colorAction;
47         QAction* clearAction;
48         QAction* imageAction;
49         QAction* penAction;
50         QAction* eraserAction;
51         QSpinBox* spinboxWidget;
52         QSlider* sliderWidget;
53         ConnectionManager* connMan;
54 //      HistoryManager* historyManager;
55         Shareboard* board;
56         ConnectWidget* prompt;
57         QColor lineColor;
58 };
59
60 #endif // __MAINWINDOW_H__