diff options
author | Maarten Vanraes <alien@mageia.org> | 2016-04-24 21:42:30 +0200 |
---|---|---|
committer | Maarten Vanraes <alien@mageia.org> | 2016-05-14 09:25:24 +0200 |
commit | 492015c627ad9121bf53b1bd878729b789fc7908 (patch) | |
tree | 637892f8c920b269c09a4c08127474d80cc67d58 /lib/ManaTools | |
parent | ff4249bc18a5fea118cbb635aca68c6639d19117 (diff) | |
download | manatools-492015c627ad9121bf53b1bd878729b789fc7908.tar manatools-492015c627ad9121bf53b1bd878729b789fc7908.tar.gz manatools-492015c627ad9121bf53b1bd878729b789fc7908.tar.bz2 manatools-492015c627ad9121bf53b1bd878729b789fc7908.tar.xz manatools-492015c627ad9121bf53b1bd878729b789fc7908.zip |
Stretch to have less differences when recalculating layout
Diffstat (limited to 'lib/ManaTools')
-rw-r--r-- | lib/ManaTools/Module/Disk.pm | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/ManaTools/Module/Disk.pm b/lib/ManaTools/Module/Disk.pm index 996fecd9..95a803a9 100644 --- a/lib/ManaTools/Module/Disk.pm +++ b/lib/ManaTools/Module/Disk.pm @@ -268,7 +268,8 @@ sub _rebuildTab { $actionbox->clear(); # loop all connected parts - for my $part ($db->findin($io)) { + my @parts = $db->findin($io); + for my $part (@parts) { # add properties for each part in a frame with label my $frame = $factory->createFrame($propbox->container(), $part->label() ." properties"); @@ -283,6 +284,9 @@ sub _rebuildTab { # finalize propbox and actionbox $propbox->finished(); $actionbox->finished(); + + # stretch vertically if no children are there + $factory->createVStretch($vbox) if (scalar(@parts) == 0); }); } $tab->finishedSelectorItems(); @@ -383,8 +387,8 @@ sub _rebuildParts { my $baseType = $self->baseType(); my $simplified = $self->simplified(); my $info = $dialog->info(); - my $rpl = $self->content(); + # TODO: rebuild Tabs according to baseType and simplified, instead of always disks $rpl->clear(); $self->_rebuildItems($info->{disks}, $rpl, $rpl->container()); @@ -509,6 +513,7 @@ sub _adminDiskPanel { my $vbox2 = $factory->createVBox($hbox2); my $replacepoint = ManaTools::Shared::GUI::ReplacePoint->new(eventHandler => $self, parentWidget => $vbox2); # don't add children right away + $factory->createVStretch($replacepoint->container()); $replacepoint->finished(); $module->actionsBox($replacepoint); $factory->createVStretch($vbox2); @@ -522,12 +527,14 @@ sub _adminDiskPanel { # properties from IO first, and then the applicable Parts $module->ioProperties(ManaTools::Shared::GUI::Properties->new(eventHandler => $self, parentWidget => $align)); $replacepoint = ManaTools::Shared::GUI::ReplacePoint->new(eventHandler => $self, parentWidget => $vbox1); + $factory->createVStretch($replacepoint->container()); # don't add children right away $replacepoint->finished(); $module->propertiesBox($replacepoint); ## in this replacepoint is the Tabs with all the data $replacepoint = ManaTools::Shared::GUI::ReplacePoint->new(eventHandler => $self, parentWidget => $hbox3); + $factory->createVStretch($replacepoint->container()); # don't add children right away $replacepoint->finished(); |