diff options
author | Matteo Pasotti <matteo.pasotti@gmail.com> | 2014-09-16 00:13:52 +0200 |
---|---|---|
committer | Matteo Pasotti <matteo.pasotti@gmail.com> | 2014-09-16 00:13:52 +0200 |
commit | 54e27181f2f1fa1916a5f7b61829e32228f97560 (patch) | |
tree | 1244f71ee887ff8f9d62d2b5ac747b60d85ebe3b /lib/AdminPanel/Module | |
parent | 66c0d6fa5e9555b08e40961585e15f59e2403903 (diff) | |
download | manatools-54e27181f2f1fa1916a5f7b61829e32228f97560.tar manatools-54e27181f2f1fa1916a5f7b61829e32228f97560.tar.gz manatools-54e27181f2f1fa1916a5f7b61829e32228f97560.tar.bz2 manatools-54e27181f2f1fa1916a5f7b61829e32228f97560.tar.xz manatools-54e27181f2f1fa1916a5f7b61829e32228f97560.zip |
- select the radiobutton with the current value
- invoke addVarsInSh to save changes
- check for root permissions
Diffstat (limited to 'lib/AdminPanel/Module')
-rw-r--r-- | lib/AdminPanel/Module/DisplayManager.pm | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/lib/AdminPanel/Module/DisplayManager.pm b/lib/AdminPanel/Module/DisplayManager.pm index a246cf74..12921089 100644 --- a/lib/AdminPanel/Module/DisplayManager.pm +++ b/lib/AdminPanel/Module/DisplayManager.pm @@ -35,7 +35,7 @@ use AdminPanel::Shared::GUI; # TODROP but provides network::network use lib qw(/usr/lib/libDrakX); use network::network; -use MDK::Common::System qw(getVarsFromSh); +use MDK::Common::System qw(getVarsFromSh addVarsInSh); extends qw( AdminPanel::Module ); @@ -147,13 +147,13 @@ sub _SharedUGUIInitialize { sub start { my $self = shift; - # if ($EUID != 0) { - # $self->sh_gui->warningMsgBox({ - # title => $self->name, - # text => $self->loc->N("root privileges required"), - # }); - # return; - # } + if ($EUID != 0) { + $self->sh_gui->warningMsgBox({ + title => $self->name, + text => $self->loc->N("root privileges required"), + }); + return; + } # initialize dm descriptions for i18n $self->_build_desc_for_i18n(); @@ -202,7 +202,7 @@ sub _manageProxyDialog { my ($dm_NAME) = apcat($self->conffile) =~ /^DISPLAYMANAGER=(.*)/m; my $dm = (AdminPanel::Shared::find { uc($_->{NAME}) eq uc($dm_NAME) } @{$self->dmlist}); - + $self->dialog($factory->createMainDialog()); my $layout = $factory->createVBox($self->dialog); @@ -230,6 +230,10 @@ sub _manageProxyDialog { foreach my $d (@{$self->dmlist()}) { my $rb = $factory->createRadioButton($factory->createHBox($factory->createLeft($rbbox)), $d->{NAME}); + if($d->{NAME} eq uc($dm_NAME)) + { + $rb->setValue(1); + } $rb_group->addRadioButton($rb); $rb->DISOWN(); } @@ -268,7 +272,9 @@ sub _manageProxyDialog { } ); }elsif ($widget == $okButton) { - next; + addVarsInSh($self->conffile, { DISPLAYMANAGER => lc($rb_group->currentButton()->label()) } ); + $self->ask_for_X_restart(); + last; } } } |