summaryrefslogtreecommitdiff
path: root/noncore/settings/networksettings2/main.cpp
Side-by-side diff
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,3 +1,5 @@
+#include "nsdata.h"
+#include "activateprofile.h"
#include "networksettings.h"
#include <qpe/qpeapplication.h>
@@ -9,9 +11,14 @@ OPIE_EXPORT_APP( OApplicationFactory<NetworkSettings> )
#else
+// just standard GUI
#define ACT_GUI 0
+// used by interfaces to request for allow of up/down
#define ACT_REQUEST 1
+// regenerate config files
#define ACT_REGEN 2
+// used by interfaces to request user prompt
+#define ACT_PROMPT 3
int main( int argc, char * argv[] ) {
int rv = 0;
@@ -32,6 +39,9 @@ int main( int argc, char * argv[] ) {
Action = ACT_REGEN;
GuiType = QApplication::Tty;
rmv = 1;
+ } else if( strcmp( argv[i], "--prompt" ) == 0 ) {
+ Action = ACT_PROMPT;
+ rmv = 1;
}
if( rmv ) {
memmove( argv+i, argv+i+rmv,
@@ -62,28 +72,41 @@ int main( int argc, char * argv[] ) {
#endif
// init qt with app widget
- if( GuiType != QApplication::Tty ) {
- QWidget * W = 0;
- W = new NetworkSettings(0);
- TheApp->setMainWidget( W );
- W->show();
+
+ switch( Action ) {
+ case ACT_REQUEST :
+ { NetworkSettingsData NS;
+ NS.canStart( argv[1] );
+ }
+ break;
+ case ACT_REGEN :
+ { NetworkSettingsData NS;
+ // regen returns 0 if OK
+ rv = (NS.regenerate()) ? 1 : 0;
+ }
+ break;
+ case ACT_PROMPT :
+ { ActivateProfile AP(argv[1]);
+ if( AP.exec() == QDialog::Accepted ) {
+ printf( "%s-c%d-allowed", AP.selectedProfile() );
+ } else {
+ printf( "%s-cNN-disallowed" );
+ }
+ }
+ break;
+ case ACT_GUI :
+ { QWidget * W = new NetworkSettings(0);
+ TheApp->setMainWidget( W );
+ W->show();
#ifdef _WS_QWS_
- W->showMaximized();
+ W->showMaximized();
#else
- W->resize( W->sizeHint() );
+ W->resize( W->sizeHint() );
#endif
- rv = TheApp->exec();
- delete W;
- } else {
- switch( Action ) {
- case ACT_REQUEST :
- NetworkSettings::canStart( argv[1] );
- break;
- case ACT_REGEN :
- // regen returns 0 if OK
- rv = (NetworkSettings::regenerate()) ? 1 : 0;
- break;
- }
+ rv = TheApp->exec();
+ delete W;
+ }
+ break;
}
return rv;