00001 #ifndef OPIE_MAIN_WINDOW_H 00002 #define OPIE_MAIN_WINDOW_H 00003 00004 #include <qmainwindow.h> 00005 #include <qlist.h> 00006 #include <qfile.h> 00007 00008 #include "session.h" 00009 00015 class QToolBar; 00016 class QToolButton; 00017 class QMenuBar; 00018 class QAction; 00019 class MetaFactory; 00020 class TabWidget; 00021 class ProfileManager; 00022 class Profile; 00023 class FunctionKeyboard; 00024 class FKey; 00025 class DocLnk; 00026 00027 00028 class MainWindow : public QMainWindow { 00029 Q_OBJECT 00030 public: 00031 MainWindow( QWidget *parent = 0, const char *name = 0, WFlags fl = 0 ); 00032 ~MainWindow(); 00033 static QString appName() {return QString::fromLatin1("opie-console"); } 00034 00039 MetaFactory* factory(); 00040 00045 Session* currentSession(); 00046 00050 QList<Session> sessions(); 00051 00055 ProfileManager* manager(); 00056 TabWidget* tabWidget(); 00057 00058 private slots: 00059 void slotNew(); 00060 void slotConnect(); 00061 void slotDisconnect(); 00062 void slotTerminate(); 00063 void slotConfigure(); 00064 void slotClose(); 00065 void slotProfile(int); 00066 void slotTransfer(); 00067 void slotOpenKeb(bool); 00068 void slotOpenButtons(bool); 00069 void slotRecordScript(); 00070 void slotSaveScript(); 00071 void slotRunScript(int); 00072 void slotFullscreen(); 00073 void slotQuickLaunch(); 00074 void slotWrap(); 00075 void slotSessionChanged( Session* ); 00076 void slotKeyReceived(FKey, ushort, ushort, bool); 00077 void slotSaveHistory(); 00078 void slotSaveLog(); 00079 void slotScrollbarSelected(int); 00080 00081 /* what could these both slot do? */ 00082 void slotCopy(); 00083 void slotPaste(); 00084 00085 /* save the currentSession() to Profiles */ 00086 void slotSaveSession(); 00087 00088 private: 00089 void initUI(); 00090 void populateProfiles(); 00091 void populateScripts(); 00092 void create( const Profile& ); 00096 Session* m_curSession; 00097 00101 QList<Session> m_sessions; 00102 QList<DocLnk> m_scriptsData; 00103 00107 MetaFactory* m_factory; 00108 ProfileManager* m_manager; 00109 00110 /* 00111 * scrollbar 00112 */ 00113 00114 int sm_none, sm_left, sm_right; 00115 00116 TabWidget* m_consoleWindow; 00117 QToolBar* m_tool; 00118 QToolBar* m_icons; 00119 QToolBar* m_keyBar; 00120 QToolBar* m_buttonBar; 00121 QMenuBar* m_bar; 00122 QPopupMenu* m_console; 00123 QPopupMenu* m_sessionsPop; 00124 QPopupMenu* m_scriptsPop; 00125 QPopupMenu* m_scripts; 00126 QPopupMenu* m_scrollbar; 00127 QAction* m_connect; 00128 QAction* m_disconnect; 00129 QAction* m_quickLaunch; 00130 QAction* m_terminate; 00131 QAction* m_transfer; 00132 QAction* m_setProfiles; 00133 QAction* m_openKeys; 00134 QAction* m_openButtons; 00135 QAction* m_recordScript; 00136 QAction* m_saveScript; 00137 QAction* m_fullscreen; 00138 QAction* m_wrap; 00139 QAction* m_closewindow; 00140 QAction* m_recordLog; 00141 00142 FunctionKeyboard *m_kb; 00143 int m_runScript_id; 00144 bool m_isFullscreen; 00145 bool m_isWrapped; 00146 bool m_recordingLog; 00147 00148 QWidget* savedParentFullscreen; 00149 }; 00150 00151 00152 #endif
1.4.2