def create_color_picker_dialog(self): c = ColorPaletteDlg(self, "Color Palette") c.createDiscretePalette(DISCRETE_PALETTE, "Discrete Palette") c.createContinuousPalette(CONTINUOUS_PALETTE, "Continuous Palette") box = c.createBox("otherColors", "Other Colors") c.createColorButton(box, CANVAS_COLOR, "Canvas color", self.graph.color(OWPalette.Canvas)) c.setColorSchemas(self.color_settings, self.selected_schema_index) return c
def test_colorpalette(self): dlg = ColorPaletteDlg(None) dlg.createContinuousPalette("", "Gradient palette", False, QColor(Qt.white), QColor(Qt.black)) dlg.contLeft.getColor().getRgb() dlg.contRight.getColor().getRgb() dlg.contpassThroughBlack
def test_colorpalette(self): dlg = ColorPaletteDlg(None) dlg.createContinuousPalette( "", "Gradient palette", False, QColor(Qt.white), QColor(Qt.black)) dlg.contLeft.getColor().getRgb() dlg.contRight.getColor().getRgb() dlg.contpassThroughBlack
def update_properties(self): ## Mostly copied from OWScatterPlotGraph if not self.plot(): return if not self.rect: x, y = self.axes() self.rect = self.plot().data_rect_for_axes(x, y) s = self.graph_transform().mapRect(self.rect).size().toSize() if not s.isValid(): return rx = s.width() ry = s.height() rx -= rx % self.granularity ry -= ry % self.granularity p = self.graph_transform().map(QPointF( 0, 0)) - self.graph_transform().map(self.rect.topLeft()) p = p.toPoint() ox = p.x() oy = -p.y() if self.classifier.classVar.is_continuous: imagebmp = orangeom.potentialsBitmap(self.classifier, rx, ry, ox, oy, self.granularity, self.scale) palette = [ qRgb(255. * i / 255., 255. * i / 255., 255 - (255. * i / 255.)) for i in range(255) ] + [qRgb(255, 255, 255)] else: imagebmp, nShades = orangeom.potentialsBitmap( self.classifier, rx, ry, ox, oy, self.granularity, self.scale, self.spacing) palette = [] sortedClasses = get_variable_values_sorted( self.classifier.domain.classVar) for cls in self.classifier.classVar.values: color = self.plot().discPalette.getRGB( sortedClasses.index(cls)) towhite = [255 - c for c in color] for s in range(nShades): si = 1 - float(s) / nShades palette.append( qRgb(*tuple( [color[i] + towhite[i] * si for i in (0, 1, 2)]))) palette.extend( [qRgb(255, 255, 255) for i in range(256 - len(palette))]) self.potentialsImage = QImage(imagebmp, rx, ry, QImage.Format_Indexed8) self.potentialsImage.setColorTable( ColorPaletteDlg.signedPalette(palette ) if qVersion() < "4.5" else palette) self.potentialsImage.setNumColors(256) self.pixmap_item.setPixmap(QPixmap.fromImage(self.potentialsImage)) self.pixmap_item.setPos(self.graph_transform().map( self.rect.bottomLeft()))
def change_color(self, index): from_c, to_c, black = self.model().data(index, ColorRole) master = self.master dlg = ColorPaletteDlg(master) dlg.createContinuousPalette("", "Gradient palette", black, QColor(*from_c), QColor(*to_c)) dlg.setColorSchemas(master.color_settings, master.selected_schema_index) if dlg.exec(): self.model().setData(index, (dlg.contLeft.getColor().getRgb(), dlg.contRight.getColor().getRgb(), dlg.contpassThroughBlack), ColorRole) master.color_settings = dlg.getColorSchemas() master.selected_schema_index = dlg.selectedSchemaIndex
def update_properties(self): ## Mostly copied from OWScatterPlotGraph if not self.plot(): return if not self.rect: x, y = self.axes() self.rect = self.plot().data_rect_for_axes(x, y) s = self.graph_transform().mapRect(self.rect).size().toSize() if not s.isValid(): return rx = s.width() ry = s.height() rx -= rx % self.granularity ry -= ry % self.granularity p = self.graph_transform().map(QPointF(0, 0)) - self.graph_transform().map(self.rect.topLeft()) p = p.toPoint() ox = p.x() oy = -p.y() if isinstance(self.classifier.classVar, ContinuousVariable): imagebmp = orangeom.potentialsBitmap(self.classifier, rx, ry, ox, oy, self.granularity, self.scale) palette = [qRgb(255.0 * i / 255.0, 255.0 * i / 255.0, 255 - (255.0 * i / 255.0)) for i in range(255)] + [ qRgb(255, 255, 255) ] else: imagebmp, nShades = orangeom.potentialsBitmap( self.classifier, rx, ry, ox, oy, self.granularity, self.scale, self.spacing ) palette = [] sortedClasses = get_variable_values_sorted(self.classifier.domain.classVar) for cls in self.classifier.classVar.values: color = self.plot().discPalette.getRGB(sortedClasses.index(cls)) towhite = [255 - c for c in color] for s in range(nShades): si = 1 - float(s) / nShades palette.append(qRgb(*tuple([color[i] + towhite[i] * si for i in (0, 1, 2)]))) palette.extend([qRgb(255, 255, 255) for i in range(256 - len(palette))]) self.potentialsImage = QImage(imagebmp, rx, ry, QImage.Format_Indexed8) self.potentialsImage.setColorTable(ColorPaletteDlg.signedPalette(palette) if qVersion() < "4.5" else palette) self.potentialsImage.setNumColors(256) self.pixmap_item.setPixmap(QPixmap.fromImage(self.potentialsImage)) self.pixmap_item.setPos(self.graph_transform().map(self.rect.bottomLeft()))
def create_color_dialog(self): c = ColorPaletteDlg(self, "Color Palette") c.createDiscretePalette("discPalette", "Discrete Palette") c.createContinuousPalette("contPalette", "Continuous Palette") c.setColorSchemas(self.color_settings, self.selected_schema_index) return c
def createColorDialog(self): c = ColorPaletteDlg(self, "Color Palette") c.createDiscretePalette("discPalette", "Discrete Palette") c.createContinuousPalette("contPalette", "Continuous Palette") box = c.createBox("otherColors", "Other Colors") c.createColorButton(box, "Canvas", "Canvas color", self.graph.color(OWPalette.Canvas)) box.layout().addSpacing(5) c.createColorButton(box, "Grid", "Grid color", self.graph.color(OWPalette.Grid)) box.layout().addSpacing(5) c.setColorSchemas(self.colorSettings, self.selectedSchemaIndex) return c