summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-console/mainwindow.cpp
Unidiff
Diffstat (limited to 'noncore/apps/opie-console/mainwindow.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-console/mainwindow.cpp33
1 files changed, 33 insertions, 0 deletions
diff --git a/noncore/apps/opie-console/mainwindow.cpp b/noncore/apps/opie-console/mainwindow.cpp
index 1ae4a20..3c1c8ea 100644
--- a/noncore/apps/opie-console/mainwindow.cpp
+++ b/noncore/apps/opie-console/mainwindow.cpp
@@ -1,123 +1,156 @@
1 1
2#include <qaction.h> 2#include <qaction.h>
3#include <qmenubar.h> 3#include <qmenubar.h>
4#include <qlabel.h> 4#include <qlabel.h>
5#include <qpopupmenu.h> 5#include <qpopupmenu.h>
6#include <qtoolbar.h> 6#include <qtoolbar.h>
7 7
8#include "metafactory.h" 8#include "metafactory.h"
9#include "profilemanager.h"
9#include "mainwindow.h" 10#include "mainwindow.h"
10 11
11MainWindow::MainWindow() { 12MainWindow::MainWindow() {
12 m_factory = new MetaFactory(); 13 m_factory = new MetaFactory();
13 m_sessions.setAutoDelete( TRUE ); 14 m_sessions.setAutoDelete( TRUE );
14 m_curSession = 0; 15 m_curSession = 0;
16 m_manager = new ProfileManager(m_factory);
15 17
16 initUI(); 18 initUI();
19 populateProfiles();
17} 20}
18void MainWindow::initUI() { 21void MainWindow::initUI() {
19 setToolBarsMovable( FALSE ); 22 setToolBarsMovable( FALSE );
20 23
21 m_tool = new QToolBar( this ); 24 m_tool = new QToolBar( this );
22 m_tool->setHorizontalStretchable( TRUE ); 25 m_tool->setHorizontalStretchable( TRUE );
23 26
24 m_bar = new QMenuBar( m_tool ); 27 m_bar = new QMenuBar( m_tool );
25 m_console = new QPopupMenu( this ); 28 m_console = new QPopupMenu( this );
26 m_sessionsPop= new QPopupMenu( this ); 29 m_sessionsPop= new QPopupMenu( this );
27 m_settings = new QPopupMenu( this ); 30 m_settings = new QPopupMenu( this );
28 31
29 /* 32 /*
30 * new Action for new sessions 33 * new Action for new sessions
31 */ 34 */
32 QAction* a = new QAction(); 35 QAction* a = new QAction();
33 a->setText( tr("New Connection") ); 36 a->setText( tr("New Connection") );
34 a->addTo( m_console ); 37 a->addTo( m_console );
35 connect(a, SIGNAL(activated() ), 38 connect(a, SIGNAL(activated() ),
36 this, SLOT(slotNew() ) ); 39 this, SLOT(slotNew() ) );
37 40
38 41
39 42
40 /* 43 /*
41 * connect action 44 * connect action
42 */ 45 */
43 m_connect = new QAction(); 46 m_connect = new QAction();
44 m_connect->setText( tr("Connect") ); 47 m_connect->setText( tr("Connect") );
45 m_connect->addTo( m_console ); 48 m_connect->addTo( m_console );
46 connect(m_connect, SIGNAL(activated() ), 49 connect(m_connect, SIGNAL(activated() ),
47 this, SLOT(slotConnect() ) ); 50 this, SLOT(slotConnect() ) );
48 51
49 52
50 /* 53 /*
51 * disconnect action 54 * disconnect action
52 */ 55 */
53 m_disconnect = new QAction(); 56 m_disconnect = new QAction();
54 m_disconnect->setText( tr("Disconnect") ); 57 m_disconnect->setText( tr("Disconnect") );
55 m_disconnect->addTo( m_console ); 58 m_disconnect->addTo( m_console );
56 connect(m_disconnect, SIGNAL(activated() ), 59 connect(m_disconnect, SIGNAL(activated() ),
57 this, SLOT(slotDisconnect() ) ); 60 this, SLOT(slotDisconnect() ) );
58 61
59 /* 62 /*
60 * terminate action 63 * terminate action
61 */ 64 */
62 m_terminate = new QAction(); 65 m_terminate = new QAction();
63 m_terminate->setText( tr("Terminate") ); 66 m_terminate->setText( tr("Terminate") );
64 m_terminate->addTo( m_console ); 67 m_terminate->addTo( m_console );
65 connect(m_disconnect, SIGNAL(activated() ), 68 connect(m_disconnect, SIGNAL(activated() ),
66 this, SLOT(slotTerminate() ) ); 69 this, SLOT(slotTerminate() ) );
67 70
71 a = new QAction();
72 a->setText( tr("Close Window") );
73 a->addTo( m_console );
74 connect(a, SIGNAL(activated() ),
75 this, SLOT(slotClose() ) );
76
68 /* 77 /*
69 * the settings action 78 * the settings action
70 */ 79 */
71 m_setProfiles = new QAction(); 80 m_setProfiles = new QAction();
72 m_setProfiles->setText( tr("Configure Profiles") ); 81 m_setProfiles->setText( tr("Configure Profiles") );
73 m_setProfiles->addTo( m_settings ); 82 m_setProfiles->addTo( m_settings );
74 connect( m_setProfiles, SIGNAL(activated() ), 83 connect( m_setProfiles, SIGNAL(activated() ),
75 this, SLOT(slotConfigure() ) ); 84 this, SLOT(slotConfigure() ) );
76 85
77 /* insert the submenu */ 86 /* insert the submenu */
78 m_console->insertItem(tr("New from Profile"), m_sessionsPop, 87 m_console->insertItem(tr("New from Profile"), m_sessionsPop,
79 -1, 0); 88 -1, 0);
80 89
81 /* insert the connection menu */ 90 /* insert the connection menu */
82 m_bar->insertItem( tr("Connection"), m_console ); 91 m_bar->insertItem( tr("Connection"), m_console );
83 92
84 /* the settings menu */ 93 /* the settings menu */
85 m_bar->insertItem( tr("Settings"), m_settings ); 94 m_bar->insertItem( tr("Settings"), m_settings );
86 95
96 /*
97 * connect to the menu activation
98 */
99 connect( m_sessionsPop, SIGNAL(activated(int) ),
100 this, SLOT(slotProfile(int) ) );
101
102}
103ProfileManager* MainWindow::manager() {
104 return m_manager;
105}
106void MainWindow::populateProfiles() {
107 manager()->load();
108 Profile::ValueList list = manager()->all();
109 for (Profile::ValueList::Iterator it = list.begin(); it != list.end();
110 ++it ) {
111 m_sessionsPop->insertItem( (*it).name() );
112 }
113
87} 114}
88MainWindow::~MainWindow() { 115MainWindow::~MainWindow() {
89 delete m_factory; 116 delete m_factory;
90} 117}
91 118
92MetaFactory* MainWindow::factory() { 119MetaFactory* MainWindow::factory() {
93 return m_factory; 120 return m_factory;
94} 121}
95 122
96Session* MainWindow::currentSession() { 123Session* MainWindow::currentSession() {
97 return m_curSession; 124 return m_curSession;
98} 125}
99 126
100QList<Session> MainWindow::sessions() { 127QList<Session> MainWindow::sessions() {
101 return m_sessions; 128 return m_sessions;
102} 129}
103void MainWindow::slotNew() { 130void MainWindow::slotNew() {
104 qWarning("New Connection"); 131 qWarning("New Connection");
105} 132}
106void MainWindow::slotConnect() { 133void MainWindow::slotConnect() {
107 if ( currentSession() ) 134 if ( currentSession() )
108 currentSession()->layer()->open(); 135 currentSession()->layer()->open();
109} 136}
110void MainWindow::slotDisconnect() { 137void MainWindow::slotDisconnect() {
111 if ( currentSession() ) 138 if ( currentSession() )
112 currentSession()->layer()->close(); 139 currentSession()->layer()->close();
113} 140}
114void MainWindow::slotTerminate() { 141void MainWindow::slotTerminate() {
115 if ( currentSession() ) 142 if ( currentSession() )
116 currentSession()->layer()->close(); 143 currentSession()->layer()->close();
117 delete m_curSession; 144 delete m_curSession;
118 m_curSession = 0l; 145 m_curSession = 0l;
119 /* FIXME move to the next session */ 146 /* FIXME move to the next session */
120} 147}
121void MainWindow::slotConfigure() { 148void MainWindow::slotConfigure() {
122 qWarning("configure"); 149 qWarning("configure");
123} 150}
151void MainWindow::slotClose() {
152
153}
154void MainWindow::slotProfile(int) {
155
156}