bool = True # or False # root = QgsProject.instance().layerTreeRoot() # allLayers = root.layerOrder() # for layer in allLayers: # root.findLayer(layer.id()).setItemVisibilityChecked(True) bridge = QgsLayerTreeMapCanvasBridge(root, canvas) windowTest = QMainWindow() windowTest.setCentralWidget(canvas) leyenda = QvLlegenda(canvas, atributos) leyenda.show() dwleyenda = QDockWidget( "Leyenda", windowTest ) dwleyenda.setContextMenuPolicy(Qt.PreventContextMenu) dwleyenda.setAllowedAreas( Qt.RightDockWidgetArea | Qt.LeftDockWidgetArea ) dwleyenda.setContentsMargins ( 1, 1, 1, 1 ) # AÑADIMOS nuestra instancia al dockwidget dwleyenda.setWidget(leyenda) # Coloquem el dockWidget al costat esquerra de la finestra # windowTest.addDockWidget( Qt.LeftDockWidgetArea, dwleyenda) windowTest.addDockWidget( Qt.RightDockWidgetArea, dwleyenda) # Fem visible el dockWidget dwleyenda.show() #atencion # Instanciamos la classe QvcrearMapetaConBotones capturesMapeta = QvcapturesMapeta(canvas) capturesMapeta.show()
class MainWindow(QMainWindow): def __init__(self, parent=None): super(MainWindow, self).__init__() self.setWindowTitle("RainbowBB") self.setParent(parent) self.initUI() def initUI(self): self.setStyleSheet("QCheckBox { background: palette(window); border-radius: 4px; padding: 2px; margin-right: 2px; }") self.toolBar = QToolBar(self) self.toolBar.setStyleSheet(stylesheet % (create_gradient("pastel"),)) self.toolBar.setMovable(False) self.toolBar.setContextMenuPolicy(Qt.CustomContextMenu) self.addToolBar(self.toolBar) self.reverseBox = QCheckBox("&Reverse", self) self.reverseBox.clicked.connect(lambda: self.updateGradient()) self.toolBar.addWidget(self.reverseBox) self.byWordBox = QCheckBox("By &word", self) self.toolBar.addWidget(self.byWordBox) self.bounceBox = QCheckBox("&Bounce", self) self.bounceBox.clicked.connect(lambda: self.updateGradient()) self.toolBar.addWidget(self.bounceBox) self.sizeList = QComboBox(self) self.sizeList.addItem("None") for num in range(1, 8): self.sizeList.addItem(str(num)) self.toolBar.addWidget(self.sizeList) self.cycleList = QComboBox(self) self.toolBar.addWidget(self.cycleList) self.cycleList.currentIndexChanged.connect(self.updateGradient) self.loadCycles() self.convertButton = QPushButton("&Convert", self) self.convertButton.clicked.connect(self.convert) self.toolBar.addWidget(self.convertButton) self.reloadButton = QPushButton("Reload", self) self.reloadButton.setShortcut("Alt+Shift+R") self.reloadButton.clicked.connect(self.loadCycles) self.toolBar.addWidget(self.reloadButton) self.inputDock = QDockWidget("Input", self) self.inputDock.setFeatures(QDockWidget.NoDockWidgetFeatures) self.inputDock.setContextMenuPolicy(Qt.CustomContextMenu) self.addDockWidget(Qt.LeftDockWidgetArea, self.inputDock) self.inputField = QTextEdit(self) self.inputField.setAcceptRichText(False) self.inputDock.setWidget(self.inputField) self.outputField = QTextEdit(self) self.outputField.setReadOnly(True) self.setCentralWidget(self.outputField) def updateGradient(self, index=None): if not index: index = self.cycleList.currentIndex() self.toolBar.setStyleSheet(stylesheet % (create_gradient(self.cycleList.itemText(index), self.reverseBox.isChecked(), self.bounceBox.isChecked()),)) def loadCycles(self): rainbowbb.load_cycles() self.cycleList.clear() self.cycleList.addItem("pastel") for cycle in sorted(list(rainbowbb.cycles.keys())): if cycle != "pastel": self.cycleList.addItem(cycle) def show(self): self.setVisible(True) self.inputField.setFocus() def convert(self): self.outputField.setPlainText(rainbowbb.size(rainbowbb.colorize(self.inputField.toPlainText(), self.cycleList.currentText(), self.reverseBox.isChecked(), not self.byWordBox.isChecked(), self.bounceBox.isChecked()), self.sizeList.currentText() if self.sizeList.currentText() != "None" else None))
class MainWindow(QMainWindow): def __init__(self, parent=None): super(MainWindow, self).__init__() self.setWindowTitle("RainbowBB") self.setParent(parent) self.initUI() def initUI(self): self.setStyleSheet( "QCheckBox { background: palette(window); border-radius: 4px; padding: 2px; margin-right: 2px; }" ) self.toolBar = QToolBar(self) self.toolBar.setStyleSheet(stylesheet % (create_gradient("pastel"), )) self.toolBar.setMovable(False) self.toolBar.setContextMenuPolicy(Qt.CustomContextMenu) self.addToolBar(self.toolBar) self.reverseBox = QCheckBox("&Reverse", self) self.reverseBox.clicked.connect(lambda: self.updateGradient()) self.toolBar.addWidget(self.reverseBox) self.byWordBox = QCheckBox("By &word", self) self.toolBar.addWidget(self.byWordBox) self.bounceBox = QCheckBox("&Bounce", self) self.bounceBox.clicked.connect(lambda: self.updateGradient()) self.toolBar.addWidget(self.bounceBox) self.sizeList = QComboBox(self) self.sizeList.addItem("None") for num in range(1, 8): self.sizeList.addItem(str(num)) self.toolBar.addWidget(self.sizeList) self.cycleList = QComboBox(self) self.toolBar.addWidget(self.cycleList) self.cycleList.currentIndexChanged.connect(self.updateGradient) self.loadCycles() self.convertButton = QPushButton("&Convert", self) self.convertButton.clicked.connect(self.convert) self.toolBar.addWidget(self.convertButton) self.reloadButton = QPushButton("Reload", self) self.reloadButton.setShortcut("Alt+Shift+R") self.reloadButton.clicked.connect(self.loadCycles) self.toolBar.addWidget(self.reloadButton) self.inputDock = QDockWidget("Input", self) self.inputDock.setFeatures(QDockWidget.NoDockWidgetFeatures) self.inputDock.setContextMenuPolicy(Qt.CustomContextMenu) self.addDockWidget(Qt.LeftDockWidgetArea, self.inputDock) self.inputField = QTextEdit(self) self.inputField.setAcceptRichText(False) self.inputDock.setWidget(self.inputField) self.outputField = QTextEdit(self) self.outputField.setReadOnly(True) self.setCentralWidget(self.outputField) def updateGradient(self, index=None): if not index: index = self.cycleList.currentIndex() self.toolBar.setStyleSheet(stylesheet % (create_gradient( self.cycleList.itemText(index), self.reverseBox.isChecked(), self.bounceBox.isChecked()), )) def loadCycles(self): rainbowbb.load_cycles() self.cycleList.clear() self.cycleList.addItem("pastel") for cycle in sorted(list(rainbowbb.cycles.keys())): if cycle != "pastel": self.cycleList.addItem(cycle) def show(self): self.setVisible(True) self.inputField.setFocus() def convert(self): self.outputField.setPlainText( rainbowbb.size( rainbowbb.colorize(self.inputField.toPlainText(), self.cycleList.currentText(), self.reverseBox.isChecked(), not self.byWordBox.isChecked(), self.bounceBox.isChecked()), self.sizeList.currentText() if self.sizeList.currentText() != "None" else None))
# Posem el canvas com a element central windowTest.setCentralWidget(canvas) # Instanciamos la classe QvcrearMapetaConBotones crearMapetaConBotones = QvCrearMapetaConBotones(canvas) crearMapetaConBotones.show() """ Amb aquesta linia: crearMapeta.show() es veuria el widget suelto, separat del canvas. Les següents línies mostren com integrar el widget 'crearMapeta' com a dockWidget. """ # Creem un dockWdget i definim les característiques dwcrearMapeta = QDockWidget("CrearMapeta", windowTest) dwcrearMapeta.setContextMenuPolicy(Qt.PreventContextMenu) dwcrearMapeta.setAllowedAreas(Qt.RightDockWidgetArea | Qt.LeftDockWidgetArea) dwcrearMapeta.setContentsMargins(1, 1, 1, 1) # # # AÑADIMOS nuestra instancia al dockwidget dwcrearMapeta.setWidget(crearMapetaConBotones) # # Coloquem el dockWidget al costat esquerra de la finestra windowTest.addDockWidget(Qt.LeftDockWidgetArea, dwcrearMapeta) # # Fem visible el dockWidget dwcrearMapeta.show() #atencion # Fem visible la finestra principal canvas.show()