# HG changeset patch # User paulb # Date 1130251993 0 # Node ID 3f3d9d85996e65a93168c09d884eabafc1cce2ca # Parent cb137333219c5db84ab7628766c6f57f190e0253 [project @ 2005-10-25 14:53:13 by paulb] Replaced tab widgets with nested frames. Added a parent parameter to the prepare_widget method. diff -r cb137333219c -r 3f3d9d85996e examples/Common/QtConfigurator/__init__.py --- a/examples/Common/QtConfigurator/__init__.py Tue Oct 25 14:52:22 2005 +0000 +++ b/examples/Common/QtConfigurator/__init__.py Tue Oct 25 14:53:13 2005 +0000 @@ -18,9 +18,12 @@ } widget_resources = { - "hard-disks" : ("config_hard_disks.ui", "hard_disks"), - "memory-units" : ("config_memory_units.ui", "memory_units"), - "storage-units" : ("config_storage_units.ui", "storage_units") + "hard-disk" : ("config_hard_disk.ui", "hard_disk"), + "memory-unit" : ("config_memory_unit.ui", "memory_unit"), + "storage-unit" : ("config_storage_unit.ui", "storage_unit") + #"hard-disks" : ("config_hard_disks.ui", "hard_disks"), + #"memory-units" : ("config_memory_units.ui", "memory_units"), + #"storage-units" : ("config_storage_units.ui", "storage_units") } document_resources = { @@ -66,12 +69,12 @@ filename = self.template_resources[template_identifier] return os.path.abspath(os.path.join(self.resource_dir, filename)) - def prepare_widget(self, template_identifier, widget_identifier): + def prepare_widget(self, template_identifier, widget_identifier, parent=None): template_path = self.prepare_template(template_identifier) fragment_name, widget_name = self.widget_resources[widget_identifier] fragment_path = os.path.abspath(os.path.join(self.resource_dir, fragment_name)) XSLForms.Prepare.ensure_qt_fragment(template_path, fragment_path, widget_name) - return qtui.QWidgetFactory.create(fragment_path) + return qtui.QWidgetFactory.create(fragment_path, None, parent) # Initialisation. @@ -128,12 +131,15 @@ self.refresh(current_text) def addHardDisk(self): - print self.sender() - hard_disks = self.prepare_widget("configuration", "hard-disks") - tab_pages = hard_disks.child("tab pages") - tab = tab_pages.child("tab") - self.hard_disks.addTab(tab, hard_disks.tabLabel(tab)) - self.factory.connect(tab, self) + #hard_disks = self.prepare_widget("configuration", "hard-disks") + #tab_pages = hard_disks.child("tab pages") + #tab = tab_pages.child("tab") + #self.hard_disks.addTab(tab, hard_disks.tabLabel(tab)) + #self.factory.connect(tab, self) + hard_disk = self.prepare_widget("configuration", "hard-disk", self.hard_disks) + self.hard_disks.layout().add(hard_disk) + hard_disk.show() + self.factory.connect(hard_disk, self) # Perform the consistency check. # NOTE: This is not as efficient as it could be since the general check @@ -141,11 +147,15 @@ self.refresh() def addMemoryUnit(self): - memory_units = self.prepare_widget("configuration", "memory-units") - tab_pages = memory_units.child("tab pages") - tab = tab_pages.child("tab") - self.memory_units.addTab(tab, memory_units.tabLabel(tab)) - self.factory.connect(tab, self) + #memory_units = self.prepare_widget("configuration", "memory-units") + #tab_pages = memory_units.child("tab pages") + #tab = tab_pages.child("tab") + #self.memory_units.addTab(tab, memory_units.tabLabel(tab)) + #self.factory.connect(tab, self) + memory_unit = self.prepare_widget("configuration", "memory-unit", self.memory_units) + self.memory_units.layout().add(memory_unit) + memory_unit.show() + self.factory.connect(memory_unit, self) # Perform the consistency check. # NOTE: This is not as efficient as it could be since the general check @@ -153,11 +163,15 @@ self.refresh() def addStorageUnit(self): - storage_units = self.prepare_widget("configuration", "storage-units") - tab_pages = storage_units.child("tab pages") - tab = tab_pages.child("tab") - self.storage_units.addTab(tab, storage_units.tabLabel(tab)) - self.factory.connect(tab, self) + #storage_units = self.prepare_widget("configuration", "storage-units") + #tab_pages = storage_units.child("tab pages") + #tab = tab_pages.child("tab") + #self.storage_units.addTab(tab, storage_units.tabLabel(tab)) + #self.factory.connect(tab, self) + storage_unit = self.prepare_widget("configuration", "storage-unit", self.storage_units) + self.storage_units.layout().add(storage_unit) + storage_unit.show() + self.factory.connect(storage_unit, self) # Perform the consistency check. # NOTE: This is not as efficient as it could be since the general check @@ -165,19 +179,31 @@ self.refresh() def removeHardDisk(self): - page = self.hard_disks.currentPage() - self.hard_disks.removePage(page) - page.deleteLater() + #page = self.hard_disks.currentPage() + #self.hard_disks.removePage(page) + #page.deleteLater() + remove_hard_disk = self.sender() + hard_disk = remove_hard_disk.parent() + self.hard_disks.layout().remove(hard_disk) + hard_disk.deleteLater() def removeMemoryUnit(self): - page = self.memory_units.currentPage() - self.memory_units.removePage(page) - page.deleteLater() + #page = self.memory_units.currentPage() + #self.memory_units.removePage(page) + #page.deleteLater() + remove_memory_unit = self.sender() + memory_unit = remove_memory_unit.parent() + self.memory_units.layout().remove(memory_unit) + memory_unit.deleteLater() def removeStorageUnit(self): - page = self.storage_units.currentPage() - self.storage_units.removePage(page) - page.deleteLater() + #page = self.storage_units.currentPage() + #self.storage_units.removePage(page) + #page.deleteLater() + remove_storage_unit = self.sender() + storage_unit = remove_storage_unit.parent() + self.storage_units.layout().remove(storage_unit) + storage_unit.deleteLater() def updateConfig(self): self.refresh()