def setupValues(self): if self.cfg.getboolean("general", "differentApi", fallback=False): self.differentApiButton.setChecked(Qt.Checked) else: self.differentApiButton.setChecked(Qt.Unchecked) self.requiredApiEdit.setText(pytson.getCurrentApiVersion()) if self.cfg.getboolean("general", "loadAllMenus", fallback=False): self.loadMenusButton.setChecked(Qt.Checked) else: self.loadMenusButton.setChecked(Qt.Unchecked) bgcolor = QColor(self.cfg.get("console", "backgroundColor")).name() self.bgColorButton.setStyleSheet("background-color: %s;" % bgcolor) txtcolor = QColor(self.cfg.get("console", "textColor")).name() self.textColorButton.setStyleSheet("background-color: %s;" % txtcolor) f = QFont(self.cfg.get("console", "fontFamily")) self.fontFamilyCombo.setCurrentFont(f) self.fontSizeSpin.setValue(self.cfg.getint("console", "fontSize")) if self.cfg.getboolean("console", "tabcomplete"): self.tabcompleteButton.setChecked(True) self.spacesButton.setEnabled(False) self.tabwidthSpin.setEnabled(False) self.tabwidthLabel.setEnabled(False) else: self.tabcompleteButton.setChecked(False) self.spacesButton.setChecked(self.cfg.getboolean("console", "spaces")) self.tabwidthSpin.setValue(self.cfg.getint("console", "tabwidth")) self.scriptEdit.setText(self.cfg.get("console", "startup")) self.silentButton.setChecked(self.cfg.getboolean("console", "silentStartup")) self.languageCombo.addItem("Default", "en_US") for loc in pytson.locales(): qloc = QLocale(loc) self.languageCombo.addItem(qloc.nativeLanguageName(), loc) if self.cfg.get("general", "language") == loc: self.languageCombo.setCurrentIndex(self.languageCombo.count - 1) if self.cfg.get("general", "language") == "inherited": self.languageButton.setChecked(True) self.languageCombo.setEnabled(False) if self.cfg.getboolean("general", "verbose"): self.verboseButton.setChecked(True) self.setupList() self.reloadSite()
def onTextColorButtonClicked(self): curcolor = QColor(self.cfg.get("console", "textColor")) c = QColorDialog.getColor(curcolor, self, self._tr("Console Text Color")) if c.isValid(): self.cfg.set("console", "textColor", c.name()) self.textColorButton.setStyleSheet("background-color: %s;" % c.name())
def dropGuide(self, nodes=None, layers=None, name='*DropGuideline', tag='', color='darkMagenta', flip=(1,1), style='gsGlyphGuideline'): '''Build guideline trough *any two* given points or the *first two of the current selection*. If *single point* is given will create a vertical guideline trough that point, with guideline inclined according to the font's Italic Angle. if process layers (pLayers) is None guideline will be created in all compatible layers, otherwise the bool control tuple (active_layer (True or False), masters (True or False), masks (True or False), services (True or False)) is used. If all are set to False only the active layer is used. Args: nodes (list(int)): List of node indexes layers tuple(bool): Bool control tuple(active_layer, masters, masks, services). Note If all are set to False only the active layer is used. name (str): Name of the guideline to be build color (str): Color of the guideline according to QtCore colors style (str): Style of the guideline according to FontLab 6 Returns: None ''' #!!!NOTE: It seems that composite/element glyphs with different delta/transforamtion could affect the positioning! #!!!NOTE: As elements are bidirectional now, try to check and adapt for the current QTransform! from PythonQt.QtCore import QLineF from PythonQt.QtGui import QTransform, QColor # - Init italicAngle = self.italicAngle() origin = pqt.QtCore.QPointF(0,0) pLayers = self._prepareLayers(layers) if nodes is None: coordDict = {name:self.selectedCoords(name, applyTransform=True) for name in pLayers if self.layer(name).isCompatible(self.activeLayer(), True)} processSingle = len(self.selected()) < 2 else: # TODO: Make it qTransform aware! as the one above! coordDict = {name:[self.nodes(name)[nid].pointf for nid in nodes] for name in pLayers if self.layer(name).isCompatible(self.activeLayer(), True)} processSingle = len(nodes) < 2 # - Process for layerName, layerCoords in coordDict.iteritems(): if not processSingle: vector = QLineF(layerCoords[0], layerCoords[1]) else: vector = QLineF(layerCoords[0], origin) vector.setAngle(90 - italicAngle) vTransform = QTransform() vTransform.scale(float(flip[0]), float(flip[1])) vector = vTransform.map(vector) # - Build newg = fl6.flGuideLine(vector) newg.name, newg.color, newg.style = name, QColor(color), style newg.tag(tag.replace(' ', '').split(',')) self.layer(layerName).appendGuidelines([newg])
def showScriptingConsole(cls): if not cls.shell: cls.verboseLog(cls._tr("Creating scripting console"), "pyTSon.PluginHost.showScriptingConsole") tabcomp = cls.cfg.getboolean("console", "tabcomplete") spaces = cls.cfg.getboolean("console", "spaces") tabwidth = cls.cfg.getint("console", "tabwidth") font = QFont(cls.cfg.get("console", "fontFamily"), cls.cfg.getint("console", "fontSize")) bgcolor = QColor(cls.cfg.get("console", "backgroundColor")) txtcolor = QColor(cls.cfg.get("console", "textColor")) w = cls.cfg.getint("console", "width") h = cls.cfg.getint("console", "height") startup = cls.cfg.get("console", "startup") silent = cls.cfg.getboolean("console", "silentStartup") cls.shell = PythonConsole(tabcomp, spaces, tabwidth, font, bgcolor, txtcolor, w, h, startup, silent) cls.shell.connect("destroyed()", cls.scriptingConsoleDestroyed) cls.shell.show()
def __init__(self): QObject.__init__(self) # Generate colors self.colors = [] for hue in xrange(0, 255, 30): self.colors.append(QColor.fromHsv(hue, 255, 255, 96)) self.action = QAction("rainbowize_playlist", self) self.action.setText("Rainbowize!") self.action.setCheckable(True) self.action.connect("changed()", self.rainbowize) clementine.ui.AddAction('playlist_menu', self.action)
def initScene(): global mesh global shader global angle global t global t0 t0 = time() t = 0 angle = 0 mesh = GLMesh() shader = GLShaderProgram("default") shader.setUniform("alpha", 1.0) shader.setUniform("color", QColor(128, 255, 255)) mesh.setVertexShaderMapping(shader, ["position"], [3]) mesh.setVertices([0.5, 0.0, 0.0, 0.0, 0.5, 0.0, 0.0, 0.0, 0.5], [0, 1, 1, 2, 2, 0])
def initScene(): global mesh global shader global angle global t global t0 t0 = time() t = 0 angle = 0 mesh = GLHandler.newMesh() shader = GLHandler.newShader("default") GLHandler.setShaderParam(shader, "alpha", 1.0) GLHandler.setShaderParam(shader, "color", QColor(128, 255, 255)) GLHandler.setVertices(mesh, [0.5, 0.0, 0.0, 0.0, 0.5, 0.0, 0.0, 0.0, 0.5], shader, ["position"], [3], [0, 1, 1, 2, 2, 0]) HydrogenVR.appendPostProcessingShader("py", "grayscale")
def data(self, index, role): obj = self._indexObject(index) if role == Qt.DisplayRole: if type(obj) is Client: if obj.isRecording: return "*** %s *** [RECORDING]" % obj.displayName else: return obj.displayName return obj.name elif role == ServerViewRoles.isspacer: return type(obj) is Channel and obj.isSpacer elif type(obj) is Channel and role == ServerViewRoles.spacertype: return obj.spacerType elif type(obj) is Channel and role == ServerViewRoles.spacercustomtext: return obj.spacerCustomtext elif type(obj) is Channel and role == ServerViewRoles.spaceralignment: return obj.spacerAlignment elif role == Qt.DecorationRole: if not (type(obj) is Channel and obj.isSpacer): return QIcon(self.iconpack.icon(obj.iconVariable())) elif role == ServerViewRoles.statusicons: ret = [] if type(obj) is Channel: if obj.isDefault: ret.append(QIcon(self.iconpack.icon("DEFAULT"))) if obj.codec == ts3defines.CodecType.CODEC_OPUS_MUSIC: ret.append(QIcon(self.iconpack.icon("MUSIC"))) if obj.neededTalkPower > 0: ret.append(QIcon(self.iconpack.icon("MODERATED"))) if obj.iconID != 0: ret.append(QIcon(self.icons.icon(obj.iconID))) elif type(obj) is Client: # badges # priority speaker if obj.isPrioritySpeaker: ret.append(QIcon(self.iconpack.icon("CAPTURE"))) # istalker if obj.isTalker: ret.append(QIcon(self.iconpack.icon("IS_TALKER"))) elif obj.talkPower < obj.parentNode.neededTalkPower: ret.append(QIcon(self.iconpack.icon("INPUT_MUTED"))) # channelgroup if obj.channelGroup in self.cgicons: ret.append( QIcon(self.icons.icon(self.cgicons[obj.channelGroup]))) # servergroups for sg in obj.serverGroups: if sg in self.sgicons: ret.append(QIcon(self.icons.icon(self.sgicons[sg]))) # clienticon if obj.iconID != 0: ret.append(QIcon(self.icons.icon(obj.iconID))) # talkrequest if obj.isRequestingTalkPower: ret.append(QIcon(self.iconpack.icon("REQUEST_TALK_POWER"))) # flag if obj.country != "": ret.append(QIcon(self.countries.flag(obj.country))) else: assert type(obj) is Server if obj.iconID != 0: ret.append(QIcon(self.icons.icon(obj.iconID))) return ret elif role == Qt.FontRole: if type(obj) is Client and obj.isme: font = QApplication.font() font.setBold(True) return font elif role == Qt.ForegroundRole: if type(obj) is Client and obj.isRecording: return QColor(Qt.darkRed) return None