Diffstat (limited to 'noncore/settings/networksettings2/profile') (more/less context) (show whitespace changes)
6 files changed, 90 insertions, 7 deletions
diff --git a/noncore/settings/networksettings2/profile/profileGUI.ui b/noncore/settings/networksettings2/profile/profileGUI.ui index 365704b..5bf9a9c 100644 --- a/noncore/settings/networksettings2/profile/profileGUI.ui +++ b/noncore/settings/networksettings2/profile/profileGUI.ui @@ -11,8 +11,8 @@ <rect> <x>0</x> <y>0</y> - <width>225</width> - <height>301</height> + <width>276</width> + <height>231</height> </rect> </property> <property stdset="1"> @@ -59,12 +59,46 @@ <vbox> <property stdset="1"> <name>margin</name> - <number>2</number> + <number>1</number> </property> <property stdset="1"> <name>spacing</name> + <number>2</number> + </property> + <widget> + <class>QLayoutWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>Layout8</cstring> + </property> + <grid> + <property stdset="1"> + <name>margin</name> <number>0</number> </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget row="0" column="0" rowspan="2" colspan="1" > + <class>QGroupBox</class> + <property stdset="1"> + <name>name</name> + <cstring>GroupBox1</cstring> + </property> + <property stdset="1"> + <name>title</name> + <string>Start</string> + </property> + <vbox> + <property stdset="1"> + <name>margin</name> + <number>11</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> <widget> <class>QCheckBox</class> <property stdset="1"> @@ -73,7 +107,7 @@ </property> <property stdset="1"> <name>text</name> - <string>Start automatically</string> + <string>Automatically</string> </property> </widget> <widget> @@ -88,7 +122,7 @@ </property> <property stdset="1"> <name>text</name> - <string>Confirm before start</string> + <string>Ask</string> </property> <property> <name>layoutMargin</name> @@ -112,6 +146,42 @@ <name>layoutMargin</name> </property> </widget> + </vbox> + </widget> + <widget row="0" column="1" > + <class>QCheckBox</class> + <property stdset="1"> + <name>name</name> + <cstring>TriggersVPN_CB</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Trigger VPN</string> + </property> + </widget> + <spacer row="1" column="1" > + <property> + <name>name</name> + <cstring>Spacer8</cstring> + </property> + <property stdset="1"> + <name>orientation</name> + <enum>Vertical</enum> + </property> + <property stdset="1"> + <name>sizeType</name> + <enum>Expanding</enum> + </property> + <property> + <name>sizeHint</name> + <size> + <width>20</width> + <height>20</height> + </size> + </property> + </spacer> + </grid> + </widget> <widget> <class>QLabel</class> <property stdset="1"> diff --git a/noncore/settings/networksettings2/profile/profile_NNI.cpp b/noncore/settings/networksettings2/profile/profile_NNI.cpp index 5b54aa4..cb52b2a 100644 --- a/noncore/settings/networksettings2/profile/profile_NNI.cpp +++ b/noncore/settings/networksettings2/profile/profile_NNI.cpp @@ -7,6 +7,7 @@ AProfile::AProfile( ProfileNetNode * PNN ) : ANetNodeInstance( PNN ) { Data.Confirm = 0; Data.Description = ""; Data.Disabled = 0; + Data.TriggerVPN = 0; GUI = 0; RT = 0; } @@ -19,6 +20,8 @@ void AProfile::setSpecificAttribute( QString & Attr, QString & Value ) { Data.Confirm = (Value=="yes"); } else if ( Attr == "disabled" ) { Data.Disabled = (Value=="yes"); + } else if ( Attr == "triggervpn" ) { + Data.TriggerVPN = (Value=="yes"); } else if ( Attr == "description" ) { Data.Description = Value; } @@ -28,6 +31,7 @@ void AProfile::saveSpecificAttribute( QTextStream & TS ) { TS << "automatic=" << ((Data.Automatic) ? "yes" : "no") << endl; TS << "preconfirm=" << ((Data.Confirm) ? "yes" : "no") << endl; TS << "disabled=" << ((Data.Disabled) ? "yes" : "no") << endl; + TS << "triggervpn=" << ((Data.TriggerVPN) ? "yes" : "no") << endl; TS << "description=" << Data.Description << endl; } diff --git a/noncore/settings/networksettings2/profile/profiledata.h b/noncore/settings/networksettings2/profile/profiledata.h index b4168e2..246d50c 100644 --- a/noncore/settings/networksettings2/profile/profiledata.h +++ b/noncore/settings/networksettings2/profile/profiledata.h @@ -10,6 +10,7 @@ typedef struct ProfileData { bool Confirm; // Do not bring this connection up bool Disabled; + bool TriggerVPN; } ProfileData_t; #endif diff --git a/noncore/settings/networksettings2/profile/profileedit.cpp b/noncore/settings/networksettings2/profile/profileedit.cpp index c9fb650..87e503e 100644 --- a/noncore/settings/networksettings2/profile/profileedit.cpp +++ b/noncore/settings/networksettings2/profile/profileedit.cpp @@ -58,6 +58,7 @@ QString ProfileEdit::acceptable( void ) { void ProfileEdit::showData( ProfileData_t & Data ) { Description_LE->setText( Data.Description ); Automatic_CB->setChecked( Data.Automatic ); + TriggersVPN_CB->setChecked( Data.TriggerVPN ); Confirm_CB->setChecked( Data.Confirm ); Disabled_CB->setChecked( Data.Disabled ); } @@ -68,6 +69,7 @@ bool ProfileEdit::commit( ProfileData_t & Data ) { TXTM( Data.Description, Description_LE, SM ); CBM( Data.Automatic, Automatic_CB, SM ); + CBM( Data.TriggerVPN, TriggersVPN_CB, SM ); CBM( Data.Disabled, Disabled_CB, SM ); CBM( Data.Confirm, Confirm_CB, SM ); diff --git a/noncore/settings/networksettings2/profile/profilerun.cpp b/noncore/settings/networksettings2/profile/profilerun.cpp index 79bb93e..1a5b15b 100644 --- a/noncore/settings/networksettings2/profile/profilerun.cpp +++ b/noncore/settings/networksettings2/profile/profilerun.cpp @@ -4,15 +4,17 @@ void ProfileRun::detectState( NodeCollection * NC ) { if( Data->Disabled ) { + Log(( "%s disabled\n", NC->name().latin1() )); NC->setCurrentState( Disabled ); } else { + Log(( "%s not disabled\n", NC->name().latin1() )); // find next item in connection // convert to runtime and ask to detect the state netNode()->nextNode()->runtime()->detectState( NC ); } } -bool ProfileRun::setState( NodeCollection * NC, Action_t A, bool ) { +bool ProfileRun::setState( NodeCollection * NC, Action_t A, bool F ) { ANetNodeInstance * NNNI; NNNI = netNode()->nextNode(); @@ -41,7 +43,7 @@ bool ProfileRun::setState( NodeCollection * NC, Action_t A, bool ) { default : break; } - return NNNI->runtime()->setState(NC, A); + return NNNI->runtime()->setState(NC, A, F ); } bool ProfileRun::canSetState( State_t Curr, Action_t A ) { diff --git a/noncore/settings/networksettings2/profile/profilerun.h b/noncore/settings/networksettings2/profile/profilerun.h index c8ea063..400b56c 100644 --- a/noncore/settings/networksettings2/profile/profilerun.h +++ b/noncore/settings/networksettings2/profile/profilerun.h @@ -23,6 +23,10 @@ public : virtual AsFullSetup * asFullSetup( void ) { return (AsFullSetup *)this; } + + virtual bool triggersVPN( void ) + { return Data->TriggerVPN; } + private : ProfileData * Data; |