summaryrefslogtreecommitdiff
path: root/noncore/settings/networksettings2/main.cpp
Unidiff
Diffstat (limited to 'noncore/settings/networksettings2/main.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/networksettings2/main.cpp61
1 files changed, 42 insertions, 19 deletions
diff --git a/noncore/settings/networksettings2/main.cpp b/noncore/settings/networksettings2/main.cpp
index bcef631..1e1270e 100644
--- a/noncore/settings/networksettings2/main.cpp
+++ b/noncore/settings/networksettings2/main.cpp
@@ -1,20 +1,27 @@
1#include "nsdata.h"
2#include "activateprofile.h"
1#include "networksettings.h" 3#include "networksettings.h"
2#include <qpe/qpeapplication.h> 4#include <qpe/qpeapplication.h>
3 5
4#include <opie/oapplicationfactory.h> 6#include <opie/oapplicationfactory.h>
5 7
6#ifdef GONE 8#ifdef GONE
7 9
8OPIE_EXPORT_APP( OApplicationFactory<NetworkSettings> ) 10OPIE_EXPORT_APP( OApplicationFactory<NetworkSettings> )
9 11
10#else 12#else
11 13
14// just standard GUI
12#define ACT_GUI 0 15#define ACT_GUI 0
16// used by interfaces to request for allow of up/down
13#define ACT_REQUEST 1 17#define ACT_REQUEST 1
18// regenerate config files
14#define ACT_REGEN 2 19#define ACT_REGEN 2
20// used by interfaces to request user prompt
21#define ACT_PROMPT 3
15 22
16int main( int argc, char * argv[] ) { 23int main( int argc, char * argv[] ) {
17 int rv = 0; 24 int rv = 0;
18 int Action = ACT_GUI; 25 int Action = ACT_GUI;
19 // could be overruled by -qws 26 // could be overruled by -qws
20 QApplication::Type GuiType = QApplication::GuiClient; 27 QApplication::Type GuiType = QApplication::GuiClient;
@@ -29,12 +36,15 @@ int main( int argc, char * argv[] ) {
29 int rmv; 36 int rmv;
30 rmv = 0; 37 rmv = 0;
31 if( strcmp( argv[i], "--regen" ) == 0 ) { 38 if( strcmp( argv[i], "--regen" ) == 0 ) {
32 Action = ACT_REGEN; 39 Action = ACT_REGEN;
33 GuiType = QApplication::Tty; 40 GuiType = QApplication::Tty;
34 rmv = 1; 41 rmv = 1;
42 } else if( strcmp( argv[i], "--prompt" ) == 0 ) {
43 Action = ACT_PROMPT;
44 rmv = 1;
35 } 45 }
36 if( rmv ) { 46 if( rmv ) {
37 memmove( argv+i, argv+i+rmv, 47 memmove( argv+i, argv+i+rmv,
38 sizeof( char * ) * (argc-i-rmv) ); 48 sizeof( char * ) * (argc-i-rmv) );
39 i --; 49 i --;
40 argc -= rmv; 50 argc -= rmv;
@@ -59,34 +69,47 @@ int main( int argc, char * argv[] ) {
59 } 69 }
60#else 70#else
61 TheApp = new QApplication( argc, argv, GuiType ); 71 TheApp = new QApplication( argc, argv, GuiType );
62#endif 72#endif
63 73
64 // init qt with app widget 74 // init qt with app widget
65 if( GuiType != QApplication::Tty ) { 75
66 QWidget * W = 0; 76 switch( Action ) {
67 W = new NetworkSettings(0); 77 case ACT_REQUEST :
68 TheApp->setMainWidget( W ); 78 { NetworkSettingsData NS;
69 W->show(); 79 NS.canStart( argv[1] );
80 }
81 break;
82 case ACT_REGEN :
83 { NetworkSettingsData NS;
84 // regen returns 0 if OK
85 rv = (NS.regenerate()) ? 1 : 0;
86 }
87 break;
88 case ACT_PROMPT :
89 { ActivateProfile AP(argv[1]);
90 if( AP.exec() == QDialog::Accepted ) {
91 printf( "%s-c%d-allowed", AP.selectedProfile() );
92 } else {
93 printf( "%s-cNN-disallowed" );
94 }
95 }
96 break;
97 case ACT_GUI :
98 { QWidget * W = new NetworkSettings(0);
99 TheApp->setMainWidget( W );
100 W->show();
70#ifdef _WS_QWS_ 101#ifdef _WS_QWS_
71 W->showMaximized(); 102 W->showMaximized();
72#else 103#else
73 W->resize( W->sizeHint() ); 104 W->resize( W->sizeHint() );
74#endif 105#endif
75 rv = TheApp->exec(); 106 rv = TheApp->exec();
76 delete W; 107 delete W;
77 } else { 108 }
78 switch( Action ) { 109 break;
79 case ACT_REQUEST :
80 NetworkSettings::canStart( argv[1] );
81 break;
82 case ACT_REGEN :
83 // regen returns 0 if OK
84 rv = (NetworkSettings::regenerate()) ? 1 : 0;
85 break;
86 }
87 } 110 }
88 111
89 return rv; 112 return rv;
90} 113}
91 114
92#endif 115#endif