def __init__(self, parent=None): super(ObjectController, self).__init__(parent) self.d_ptr = ObjectControllerPrivate() self.d_ptr.q_ptr = self self.d_ptr.m_object = 0 ## # scroll = QScrollArea(self) # scroll.setWidgetResizable(True) # # self.d_ptr.m_browser = QtGroupBoxPropertyBrowser(self) # layout = QVBoxLayout(self) # layout.setMargin(0) # layout.addWidget(scroll) # scroll.setWidget(self.d_ptr.m_browser) ## browser = QtTreePropertyBrowser(self) browser.setRootIsDecorated(False) self.d_ptr.m_browser = browser layout = QVBoxLayout(self) layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self.d_ptr.m_browser) self.d_ptr.m_readOnlyManager = QtVariantPropertyManager(self) self.d_ptr.m_manager = QtVariantPropertyManager(self) factory = QtVariantEditorFactory(self) self.d_ptr.m_browser.setFactoryForManager(self.d_ptr.m_manager, factory) self.d_ptr.m_manager.valueChangedSignal.connect( self.d_ptr.slotValueChanged)
def setupUi(self, PropertyWidget): PropertyWidget.setObjectName("PropertyWidget") PropertyWidget.resize(400, 300) self.widget_property = QWidget() self.setFeatures(QDockWidget.AllDockWidgetFeatures | \ QDockWidget.DockWidgetVerticalTitleBar) self.widget_property.setObjectName("widget_property") self.verticalLayout = QVBoxLayout(self.widget_property) self.verticalLayout.setContentsMargins(2, 2, 2, 2) self.verticalLayout.setObjectName("verticalLayout") self.line_path = QLineEdit(self.widget_property) self.line_path.setObjectName("line_path") self.verticalLayout.addWidget(self.line_path) self.prop_browser = QtTreePropertyBrowser() self.verticalLayout.addWidget(self.prop_browser) PropertyWidget.setWidget(self.widget_property) self.retranslateUi(PropertyWidget) QMetaObject.connectSlotsByName(PropertyWidget)
app = QApplication(sys.argv) undecoratedManager = QtDoublePropertyManager() undecoratedProperty = undecoratedManager.addProperty("Undecorated") undecoratedManager.setValue(undecoratedProperty, 123.45) decoratedManager = DecoratedDoublePropertyManager() decoratedProperty = decoratedManager.addProperty("Decorated") decoratedManager.setPrefix(decoratedProperty, "speed: ") decoratedManager.setSuffix(decoratedProperty, " km/h") decoratedManager.setValue(decoratedProperty, 123.45) undecoratedFactory = QtDoubleSpinBoxFactory() decoratedFactory = DecoratedDoubleSpinBoxFactory() editor = QtTreePropertyBrowser() editor.setFactoryForManager(undecoratedManager, undecoratedFactory) editor.setFactoryForManager(decoratedManager, decoratedFactory) editor.addProperty(undecoratedProperty) editor.addProperty(decoratedProperty) editor.show() ret = app.exec() del decoratedFactory del decoratedManager del undecoratedFactory del undecoratedManager del editor
enumIcons[3] = QIcon(":/demo/images/left.png") enumManager.setEnumIcons(item8, enumIcons) item0.addSubProperty(item8) item9 = intManager.addProperty("value") intManager.setRange(item9, -100, 100) item0.addSubProperty(item9) checkBoxFactory = QtCheckBoxFactory(w) spinBoxFactory = QtSpinBoxFactory(w) sliderFactory = QtSliderFactory(w) scrollBarFactory = QtScrollBarFactory(w) lineEditFactory = QtLineEditFactory(w) comboBoxFactory = QtEnumEditorFactory(w) editor1 = QtTreePropertyBrowser() editor1.setFactoryForManager(boolManager, checkBoxFactory) editor1.setFactoryForManager(intManager, spinBoxFactory) editor1.setFactoryForManager(stringManager, lineEditFactory) editor1.setFactoryForManager(sizeManager.subIntPropertyManager(), spinBoxFactory) editor1.setFactoryForManager(rectManager.subIntPropertyManager(), spinBoxFactory) editor1.setFactoryForManager(sizePolicyManager.subIntPropertyManager(), spinBoxFactory) editor1.setFactoryForManager(sizePolicyManager.subEnumPropertyManager(), comboBoxFactory) editor1.setFactoryForManager(enumManager, comboBoxFactory) editor1.addProperty(item0) editor2 = QtTreePropertyBrowser() editor2.addProperty(item0) editor3 = QtGroupBoxPropertyBrowser()
topItem.addSubProperty(item) item = variantManager.addProperty(QVariant.Font, str(i) + " Font Property") i += 1 topItem.addSubProperty(item) item = variantManager.addProperty(QVariant.Cursor, str(i) + " Cursor Property") i += 1 topItem.addSubProperty(item) item = variantManager.addProperty(QVariant.Color, str(i) + " Color Property") i += 1 topItem.addSubProperty(item) variantFactory = QtVariantEditorFactory() variantEditor = QtTreePropertyBrowser() variantEditor.setFactoryForManager(variantManager, variantFactory) variantEditor.addProperty(topItem) variantEditor.setPropertiesWithoutValueMarked(True) variantEditor.setRootIsDecorated(False) variantEditor.showMaximized() variantEditor.show() ret = app.exec_() del variantManager del variantFactory del variantEditor
def __init__(self, parent=None): super(MainWindow, self).__init__(parent) self.propertyToId = QMap() self.idToProperty = QMap() self.idToExpanded = QMap() editMenu = self.menuBar().addMenu(self.tr("Edit")) newObjectMenu = editMenu.addMenu(self.tr("New Object")) newRectangleAction = QAction(self.tr("Rectangle"), self) newRectangleAction.triggered.connect(self.newRectangle) newObjectMenu.addAction(newRectangleAction) newLineAction = QAction(self.tr("Line"), self) newLineAction.triggered.connect(self.newLine) newObjectMenu.addAction(newLineAction) newEllipseAction = QAction(self.tr("Ellipse"), self) newEllipseAction.triggered.connect(self.newEllipse) newObjectMenu.addAction(newEllipseAction) newTextAction = QAction(self.tr("Text"), self) newTextAction.triggered.connect(self.newText) newObjectMenu.addAction(newTextAction) self.deleteAction = QAction(self.tr("Delete Object"), self) self.deleteAction.triggered.connect(self.deleteObject) editMenu.addAction(self.deleteAction) clearAction = QAction(self.tr("Clear All"), self) clearAction.triggered.connect(self.clearAll) editMenu.addAction(clearAction) fillAction = QAction(self.tr("Fill View"), self) fillAction.triggered.connect(self.fillView) editMenu.addAction(fillAction) self.variantManager = QtVariantPropertyManager(self) self.variantManager.valueChangedSignal.connect(self.valueChanged) variantFactory = QtVariantEditorFactory(self) self.canvas = QtCanvas(800, 600) self.canvasView = CanvasView(self.canvas, self) self.setCentralWidget(self.canvasView) dock = QDockWidget(self) self.addDockWidget(Qt.RightDockWidgetArea, dock) self.propertyEditor = QtTreePropertyBrowser(dock) self.propertyEditor.setFactoryForManager(self.variantManager, variantFactory) dock.setWidget(self.propertyEditor) self.currentItem = QtCanvasItem(None) self.canvasView.itemClickedSignal.connect(self.itemClicked) self.canvasView.itemMovedSignal.connect(self.itemMoved) self.fillView() self.itemClicked(QtCanvasItem(None))
self.xToProperty.remove(d.x) if (d.y): self.yToProperty.remove(d.y) self.propertyToData.remove(property) super(VariantManager, self).uninitializeProperty(property) if __name__ == '__main__': app = QApplication(sys.argv) variantManager = VariantManager() item = variantManager.addProperty(QVariant.PointF, "PointF Property") item.setValue(QPointF(2.5, 13.13)) variantFactory = QtVariantEditorFactory() ed1 = QtTreePropertyBrowser() ed1.setResizeMode(QtTreePropertyBrowser.Interactive) varMan = variantManager ed1.setFactoryForManager(varMan, variantFactory) ed1.addProperty(item) ed1.show() ret = app.exec() del variantFactory del variantManager
def __init__(self, parent=None): super(MainWindow, self).__init__(parent) self.propertyToId = QMap() self.idToProperty = QMap() self.idToExpanded = QMap() editMenu = self.menuBar().addMenu(self.tr("Edit")) newObjectMenu = editMenu.addMenu(self.tr("New Object")) newRectangleAction = QAction(self.tr("Rectangle"), self) newRectangleAction.triggered.connect(self.newRectangle) newObjectMenu.addAction(newRectangleAction) newLineAction = QAction(self.tr("Line"), self) newLineAction.triggered.connect(self.newLine) newObjectMenu.addAction(newLineAction) newEllipseAction = QAction(self.tr("Ellipse"), self) newEllipseAction.triggered.connect(self.newEllipse) newObjectMenu.addAction(newEllipseAction) newTextAction = QAction(self.tr("Text"), self) newTextAction.triggered.connect(self.newText) newObjectMenu.addAction(newTextAction) self.deleteAction = QAction(self.tr("Delete Object"), self) self.deleteAction.triggered.connect(self.deleteObject) editMenu.addAction(self.deleteAction) clearAction = QAction(self.tr("Clear All"), self) clearAction.triggered.connect(self.clearAll) editMenu.addAction(clearAction) fillAction = QAction(self.tr("Fill View"), self) fillAction.triggered.connect(self.fillView) editMenu.addAction(fillAction) self.doubleManager = QtDoublePropertyManager(self) self.stringManager = QtStringPropertyManager(self) self.colorManager = QtColorPropertyManager(self) self.fontManager = QtFontPropertyManager(self) self.pointManager = QtPointPropertyManager(self) self.sizeManager = QtSizePropertyManager(self) self.doubleManager.valueChangedSignal.connect(self.valueChanged) self.stringManager.valueChangedSignal.connect(self.valueChanged) self.colorManager.valueChangedSignal.connect(self.valueChanged) self.fontManager.valueChangedSignal.connect(self.valueChanged) self.pointManager.valueChangedSignal.connect(self.valueChanged) self.sizeManager.valueChangedSignal.connect(self.valueChanged) doubleSpinBoxFactory = QtDoubleSpinBoxFactory(self) checkBoxFactory = QtCheckBoxFactory(self) spinBoxFactory = QtSpinBoxFactory(self) lineEditFactory = QtLineEditFactory(self) comboBoxFactory = QtEnumEditorFactory(self) self.canvas = QtCanvas(800, 600) self.canvasView = CanvasView(self.canvas, self) self.setCentralWidget(self.canvasView) dock = QDockWidget(self) self.addDockWidget(Qt.RightDockWidgetArea, dock) self.propertyEditor = QtTreePropertyBrowser(dock) self.propertyEditor.setFactoryForManager(self.doubleManager, doubleSpinBoxFactory) self.propertyEditor.setFactoryForManager(self.stringManager, lineEditFactory) self.propertyEditor.setFactoryForManager( self.colorManager.subIntPropertyManager(), spinBoxFactory) self.propertyEditor.setFactoryForManager( self.fontManager.subIntPropertyManager(), spinBoxFactory) self.propertyEditor.setFactoryForManager( self.fontManager.subBoolPropertyManager(), checkBoxFactory) self.propertyEditor.setFactoryForManager( self.fontManager.subEnumPropertyManager(), comboBoxFactory) self.propertyEditor.setFactoryForManager( self.pointManager.subIntPropertyManager(), spinBoxFactory) self.propertyEditor.setFactoryForManager( self.sizeManager.subIntPropertyManager(), spinBoxFactory) dock.setWidget(self.propertyEditor) self.currentItem = QtCanvasItem(None) self.canvasView.itemClickedSignal.connect(self.itemClicked) self.canvasView.itemMovedSignal.connect(self.itemMoved) self.fillView() self.itemClicked(QtCanvasItem(None))
def __init__(self): super(MainWindow, self).__init__() self.setGeometry(0, 0, 1280, 780) # Create actions and menus self.createMenu() self.createToolBar() # Create status bar self.statusBar().showMessage("Ready") # Vulkan widget self.vulkanWindow = VulkanWindow(self) self.vulkanWindowWidget = QtWidgets.QWidget.createWindowContainer( self.vulkanWindow) self.vulkanWindow.initialize() # Stop rendering while moving the window self.moveEventTimer = QtCore.QTimer(self) self.moveEventTimer.timeout.connect(self.moveEventDone) # Dock layout dock = QtWidgets.QDockWidget() dock.setAllowedAreas(QtCore.Qt.LeftDockWidgetArea | QtCore.Qt.RightDockWidgetArea) self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, dock) # Property editor self.variantManager = QtVariantPropertyManager(self) self.variantManager.valueChangedSignal.connect(self.valueChanged) topItem = self.variantManager.addProperty( QtVariantPropertyManager.groupTypeId(), "Group Property") item = self.variantManager.addProperty(QtCore.QVariant.Bool, "Pause?") item.setValue(False) topItem.addSubProperty(item) self.variantFactory = QtVariantEditorFactory() self.propertyEditor = QtTreePropertyBrowser(dock) self.propertyEditor.setFactoryForManager(self.variantManager, self.variantFactory) self.propertyEditor.addProperty(topItem) self.propertyEditor.setPropertiesWithoutValueMarked(True) self.propertyEditor.setRootIsDecorated(False) dock.setWidget(self.propertyEditor) # Vulkan viewport dock = QtWidgets.QDockWidget() dock.setWidget(self.vulkanWindowWidget) # Box layout #layout = QtWidgets.QVBoxLayout() #layout.addWidget(self.button) #layout.addWidget(self.vulkanWindowWidget) #layout.addWidget(dock) #mainWidget = QtWidgets.QWidget() #mainWidget.setLayout(layout) #self.setCentralWidget(mainWidget) self.setCentralWidget(self.vulkanWindowWidget)