def refreshText(self): from ceed.editors.looknfeel.tabbed_editor import LookNFeelTabbedEditor if self.oldTargetWidgetLook: originalOldTargetName, _ = LookNFeelTabbedEditor.unmapMappedNameIntoOriginalParts(self.oldTargetWidgetLook) originalOldTargetName = u"\"" + originalOldTargetName + u"\"" else: originalOldTargetName = u"no selection" if self.newTargetWidgetLook: originalNewTargetName, _ = LookNFeelTabbedEditor.unmapMappedNameIntoOriginalParts(self.newTargetWidgetLook) originalNewTargetName = u"\"" + originalNewTargetName + u"\"" else: originalNewTargetName, _ = u"no selection" self.setText(u"Changed editing target from " + originalOldTargetName + " to " + originalNewTargetName)
def getAvailableSkins(self): """Retrieves skins (as strings representing their names) that are available from the set of schemes that were loaded. see syncToProject """ skins = [] it = PyCEGUI.WindowFactoryManager.getSingleton().getFalagardMappingIterator() while not it.isAtEnd(): currentSkin = it.getCurrentValue().d_windowType.split('/')[0] from ceed.editors.looknfeel.tabbed_editor import LookNFeelTabbedEditor ceedInternalEditingPrefix = LookNFeelTabbedEditor.getEditorIDStringPrefix() ceedInternalLNF = False if currentSkin.startswith(ceedInternalEditingPrefix): ceedInternalLNF = True if currentSkin not in skins and not ceedInternalLNF: skins.append(currentSkin) it.next() return sorted(skins)
def createPropertyForFalagardElement(self, falagardElement, attributeName, attributeValue, attributeCeguiType, helpText): """ Create a FalagardElementEditorProperty based on a type-specific property for the FalagardElement's attribute """ from ceed.editors.looknfeel.falagard_element_interface import FalagardElementInterface falagardElementTypeStr = FalagardElementInterface.getFalagardElementTypeAsString(falagardElement) # Get the python type representing the cegui type and also the editor options pythonDataType, editorOptions = self.getPythonCeguiTypeAndEditorOptions(self.propertyMap, falagardElementTypeStr, attributeName, attributeCeguiType) # Get the pythonised type of the value and also its editor-propertytype pythonTypeValue, propertyType = self.getEditorPropertyTypeAndValue(pythonDataType, attributeValue) # Unmap the reference in case we reference to the WidgetLookFeel if attributeName == "look" and falagardElementTypeStr == "SectionSpecification" and pythonTypeValue: from ceed.editors.looknfeel.tabbed_editor import LookNFeelTabbedEditor pythonTypeValue, _ = LookNFeelTabbedEditor.unmapMappedNameIntoOriginalParts(pythonTypeValue) typedProperty = propertyType(name=attributeName, category=falagardElementTypeStr, helpText=helpText, value=pythonTypeValue, defaultValue=pythonTypeValue, readOnly=False, editorOptions=editorOptions, createComponents=True ) # create and return the multi wrapper return FalagardElementEditorProperty(typedProperty, falagardElement, attributeName, self.visual)
def getAvailableSkins(self): """Retrieves skins (as strings representing their names) that are available from the set of schemes that were loaded. see syncToProject """ skins = [] it = PyCEGUI.WindowFactoryManager.getSingleton( ).getFalagardMappingIterator() while not it.isAtEnd(): currentSkin = it.getCurrentValue().d_windowType.split('/')[0] from ceed.editors.looknfeel.tabbed_editor import LookNFeelTabbedEditor ceedInternalEditingPrefix = LookNFeelTabbedEditor.getEditorIDStringPrefix( ) ceedInternalLNF = False if currentSkin.startswith(ceedInternalEditingPrefix): ceedInternalLNF = True if currentSkin not in skins and not ceedInternalLNF: skins.append(currentSkin) it.next() return sorted(skins)
def refreshText(self): from ceed.editors.looknfeel.tabbed_editor import LookNFeelTabbedEditor if self.oldTargetWidgetLook: originalOldTargetName, _ = LookNFeelTabbedEditor.unmapMappedNameIntoOriginalParts( self.oldTargetWidgetLook) originalOldTargetName = u"\"" + originalOldTargetName + u"\"" else: originalOldTargetName = u"no selection" if self.newTargetWidgetLook: originalNewTargetName, _ = LookNFeelTabbedEditor.unmapMappedNameIntoOriginalParts( self.newTargetWidgetLook) originalNewTargetName = u"\"" + originalNewTargetName + u"\"" else: originalNewTargetName, _ = u"no selection" self.setText(u"Changed editing target from " + originalOldTargetName + " to " + originalNewTargetName)
def updateToNewWidgetLook(self, targetWidgetLook): if targetWidgetLook: from ceed.editors.looknfeel.tabbed_editor import LookNFeelTabbedEditor name, editorID = LookNFeelTabbedEditor.unmapMappedNameIntoOriginalParts(self.tabbedEditor.targetWidgetLook) self.widgetLookNameLabel.setText(name) else: self.widgetLookNameLabel.setText("") self.updateStateCombobox() self.updateHierarchy()
def updateToNewWidgetLook(self, targetWidgetLook): if targetWidgetLook: from ceed.editors.looknfeel.tabbed_editor import LookNFeelTabbedEditor name, editorID = LookNFeelTabbedEditor.unmapMappedNameIntoOriginalParts( self.tabbedEditor.targetWidgetLook) self.widgetLookNameLabel.setText(name) else: self.widgetLookNameLabel.setText("") self.updateStateCombobox() self.updateHierarchy()
def getAvailableWidgetsBySkin(self): """Retrieves all mappings (string names) of all widgets that can be created see syncToProject """ ret = {} ret["__no_skin__"] = [ "DefaultWindow", "DragContainer", "VerticalLayoutContainer", "HorizontalLayoutContainer", "GridLayoutContainer" ] it = PyCEGUI.WindowFactoryManager.getSingleton( ).getFalagardMappingIterator() while not it.isAtEnd(): #base = it.getCurrentValue().d_baseType mappedType = it.getCurrentValue().d_windowType.split('/', 1) assert (len(mappedType) == 2) look = mappedType[0] widget = mappedType[1] from ceed.editors.looknfeel.tabbed_editor import LookNFeelTabbedEditor ceedInternalEditingPrefix = LookNFeelTabbedEditor.getEditorIDStringPrefix( ) ceedInternalLNF = False if look.startswith(ceedInternalEditingPrefix): ceedInternalLNF = True if not ceedInternalLNF: # insert empty list for the look if it's a new look if not look in ret: ret[look] = [] # append widget name to the list for its look ret[look].append(widget) it.next() # sort the lists for look in ret: ret[look].sort() return ret
def getAvailableWidgetsBySkin(self): """Retrieves all mappings (string names) of all widgets that can be created see syncToProject """ ret = {} ret["__no_skin__"] = ["DefaultWindow", "DragContainer", "VerticalLayoutContainer", "HorizontalLayoutContainer", "GridLayoutContainer"] it = PyCEGUI.WindowFactoryManager.getSingleton().getFalagardMappingIterator() while not it.isAtEnd(): #base = it.getCurrentValue().d_baseType mappedType = it.getCurrentValue().d_windowType.split('/', 1) assert(len(mappedType) == 2) look = mappedType[0] widget = mappedType[1] from ceed.editors.looknfeel.tabbed_editor import LookNFeelTabbedEditor ceedInternalEditingPrefix = LookNFeelTabbedEditor.getEditorIDStringPrefix() ceedInternalLNF = False if look.startswith(ceedInternalEditingPrefix): ceedInternalLNF = True if not ceedInternalLNF: # insert empty list for the look if it's a new look if not look in ret: ret[look] = [] # append widget name to the list for its look ret[look].append(widget) it.next() # sort the lists for look in ret: ret[look].sort() return ret
def createPropertyForFalagardElement(self, falagardElement, attributeName, attributeValue, attributeCeguiType, helpText): """ Create a FalagardElementEditorProperty based on a type-specific property for the FalagardElement's attribute """ from ceed.editors.looknfeel.falagard_element_interface import FalagardElementInterface falagardElementTypeStr = FalagardElementInterface.getFalagardElementTypeAsString( falagardElement) # Get the python type representing the cegui type and also the editor options pythonDataType, editorOptions = self.getPythonCeguiTypeAndEditorOptions( self.propertyMap, falagardElementTypeStr, attributeName, attributeCeguiType) # Get the pythonised type of the value and also its editor-propertytype pythonTypeValue, propertyType = self.getEditorPropertyTypeAndValue( pythonDataType, attributeValue) # Unmap the reference in case we reference to the WidgetLookFeel if attributeName == "look" and falagardElementTypeStr == "SectionSpecification" and pythonTypeValue: from ceed.editors.looknfeel.tabbed_editor import LookNFeelTabbedEditor pythonTypeValue, _ = LookNFeelTabbedEditor.unmapMappedNameIntoOriginalParts( pythonTypeValue) typedProperty = propertyType(name=attributeName, category=falagardElementTypeStr, helpText=helpText, value=pythonTypeValue, defaultValue=pythonTypeValue, readOnly=False, editorOptions=editorOptions, createComponents=True) # create and return the multi wrapper return FalagardElementEditorProperty(typedProperty, falagardElement, attributeName, self.visual)
def create(self, filePath): return LookNFeelTabbedEditor(filePath)