Krita Source Code Documentation
Loading...
Searching...
No Matches
mixer_slider_docker.mixer_slider_docker.MixerSliderDocker Class Reference
+ Inheritance diagram for mixer_slider_docker.mixer_slider_docker.MixerSliderDocker:

Public Member Functions

 __init__ (self)
 
 canvasChanged (self, canvas)
 
 color_to_settings (self, managedcolor)
 
 get_color_space (self)
 
 init_ui (self)
 
 managedcolor_to_qcolor (self, managedcolor)
 
 parse_color (self, array)
 
 qcolor_to_managedcolor (self, qcolor)
 
 settings_changed (self)
 
 write_settings (self)
 

Public Attributes

 default_left_color
 
 default_right_color
 
 init_ui
 
 layout
 
 main_layout
 
 settings_button
 
 sliders
 
 top_layout
 
 ui
 
 widget
 

Detailed Description

Definition at line 22 of file mixer_slider_docker.py.

Constructor & Destructor Documentation

◆ __init__()

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.__init__ ( self)

Definition at line 25 of file mixer_slider_docker.py.

25 def __init__(self):
26 super(MixerSliderDocker, self).__init__()
27
28 main_program = Krita.instance()
29 settings = main_program.readSetting("", "MixerSliderColors",
30 "RGBA,U8,sRGB-elle-V2-srgbtrc.icc,1,0.8,0.4,1|" +
31 "RGBA,U8,sRGB-elle-V2-srgbtrc.icc,0,0,0,1") # alpha=1 == non-transparent
32
33 self.default_left_color = self.qcolor_to_managedcolor(QColor.fromRgbF(0.4, 0.8, 1, 1))
34 self.default_right_color = self.qcolor_to_managedcolor(QColor.fromRgbF(0, 0, 0, 1))
35
36 # make base-widget and layout
37 self.widget = QWidget()
38 self.sliders = []
39 self.top_layout = QVBoxLayout()
40 self.main_layout = QHBoxLayout()
41 self.top_layout.addLayout(self.main_layout)
42 self.top_layout.addStretch(0)
43 self.settings_button = QPushButton()
44 icon = main_program.icon("configure")
45 self.settings_button.setIcon(icon)
46 self.settings_button.setToolTip(i18n('Change settings'))
47 self.settings_button.setMaximumSize(30, 30)
48 self.main_layout.addWidget(self.settings_button)
49 self.layout = QVBoxLayout()
50 self.layout.setSpacing(0)
51 self.main_layout.addLayout(self.layout)
52 for line in settings.split(";"):
53 colors = line.split('|')
54 if len(colors) < 2: # discard old configurations
55 continue
56 left_color = self.parse_color(colors[0].split(','))
57 right_color = self.parse_color(colors[1].split(','))
58 widget = SliderLine(left_color, right_color, self)
59 self.sliders.append(widget)
60 self.layout.addWidget(widget)
61
62 self.widget.setLayout(self.top_layout)
63 self.setWindowTitle(i18n("Mixer Slider Docker"))
64 self.setWidget(self.widget)
65 [x.show() for x in self.sliders]
66
67 self.settings_button.clicked.connect(self.init_ui)
68
static Krita * instance()
instance retrieve the singleton instance of the Application object.
Definition Krita.cpp:390

References mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.__init__(), and Krita.instance().

Member Function Documentation

◆ canvasChanged()

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.canvasChanged ( self,
canvas )

Definition at line 115 of file mixer_slider_docker.py.

115 def canvasChanged(self, canvas):
116 pass
117

◆ color_to_settings()

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.color_to_settings ( self,
managedcolor )

Definition at line 104 of file mixer_slider_docker.py.

104 def color_to_settings(self, managedcolor):
105 return ','.join([managedcolor.colorModel(),
106 managedcolor.colorDepth(),
107 managedcolor.colorProfile()] +
108 [str(c) for c in managedcolor.components()])
109

◆ get_color_space()

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.get_color_space ( self)

Definition at line 85 of file mixer_slider_docker.py.

85 def get_color_space(self):
86 if self.canvas() is not None:
87 if self.canvas().view() is not None:
88 canvas_color = self.canvas().view().foregroundColor()
89 return ManagedColor(canvas_color.colorModel(), canvas_color.colorDepth(), canvas_color.colorProfile())
90 return ManagedColor('RGBA', 'U8', 'sRGB-elle-V2-srgbtrc.icc')
91
The ManagedColor class is a class to handle colors that are color managed. A managed color is a color...

References KoCanvasController.canvas(), KoCanvasObserverBasePrivate.canvas, KoShapeController::Private.canvas, KoShapeFillResourceConnector::Private.canvas, KoShapeManager.canvas(), KoShapeManager.canvas, KoSnapGuide.canvas, KoSnapProxy.canvas(), KoSnapGuide.canvas(), KoToolBase.canvas(), KoToolBasePrivate.canvas, CanvasData.canvas, KoToolProxy.canvas(), KoShapePainter.canvas, Canvas::Private.canvas, krita::DockWidget::Private.canvas, DockWidget.canvas(), View.canvas(), Private.canvas, KisCanvasWidgetBase::Private.canvas, KisCanvasWidgetBase.canvas(), KisCanvasAnimationState::Private.canvas, KoCanvasControllerWidget.canvas, Viewport.canvas(), KisShapeLayer::Private.canvas, KisShapeLayer.canvas(), KisInputManager.canvas(), KisInputManager::Private.canvas, KisCanvasResourceProvider.canvas(), KisView.canvas, KisViewManager.canvas(), KisOpenGLCanvasRenderer.canvas(), KisOpenGLCanvasRenderer::CanvasBridge.canvas(), KoCanvasControllerWidget.canvas(), KisOpenGLCanvas2::CanvasBridge.canvas(), KisAsyncColorSamplerHelper::Private.canvas, KoFillConfigWidget.canvas, KoStrokeConfigWidget.canvas, KoShadowConfigWidget.canvas, KisAnimCurvesDocker::Private.canvas, KisAnimTimelineDocker::Private.canvas, KisAnimTimelineFramesView::Private.canvas, RecorderWriter::Private.canvas, RecorderWriterManager::Private.canvas, RecorderDockerDock::Private.canvas, SnapshotDocker::Private.canvas, workflow_buttons.buttons_settings_dialog.SelectedColorPreview.canvas, and SvgTextCursor.canvas.

◆ init_ui()

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.init_ui ( self)

Definition at line 92 of file mixer_slider_docker.py.

92 def init_ui(self):
93 self.ui = UIMixerSliderDocker()
94 self.ui.initialize(self)
95

◆ managedcolor_to_qcolor()

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.managedcolor_to_qcolor ( self,
managedcolor )

Definition at line 122 of file mixer_slider_docker.py.

122 def managedcolor_to_qcolor(self, managedcolor):
123 return managedcolor.colorForCanvas(self.canvas())
124

References KoCanvasController.canvas(), KoCanvasObserverBasePrivate.canvas, KoShapeController::Private.canvas, KoShapeFillResourceConnector::Private.canvas, KoShapeManager.canvas(), KoShapeManager.canvas, KoSnapGuide.canvas, KoSnapProxy.canvas(), KoSnapGuide.canvas(), KoToolBase.canvas(), KoToolBasePrivate.canvas, CanvasData.canvas, KoToolProxy.canvas(), KoShapePainter.canvas, Canvas::Private.canvas, krita::DockWidget::Private.canvas, DockWidget.canvas(), View.canvas(), Private.canvas, KisCanvasWidgetBase::Private.canvas, KisCanvasWidgetBase.canvas(), KisCanvasAnimationState::Private.canvas, KoCanvasControllerWidget.canvas, Viewport.canvas(), KisShapeLayer::Private.canvas, KisShapeLayer.canvas(), KisInputManager.canvas(), KisInputManager::Private.canvas, KisCanvasResourceProvider.canvas(), KisView.canvas, KisViewManager.canvas(), KisOpenGLCanvasRenderer.canvas(), KisOpenGLCanvasRenderer::CanvasBridge.canvas(), KoCanvasControllerWidget.canvas(), KisOpenGLCanvas2::CanvasBridge.canvas(), KisAsyncColorSamplerHelper::Private.canvas, KoFillConfigWidget.canvas, KoStrokeConfigWidget.canvas, KoShadowConfigWidget.canvas, KisAnimCurvesDocker::Private.canvas, KisAnimTimelineDocker::Private.canvas, KisAnimTimelineFramesView::Private.canvas, RecorderWriter::Private.canvas, RecorderWriterManager::Private.canvas, RecorderDockerDock::Private.canvas, SnapshotDocker::Private.canvas, workflow_buttons.buttons_settings_dialog.SelectedColorPreview.canvas, and SvgTextCursor.canvas.

◆ parse_color()

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.parse_color ( self,
array )

Definition at line 110 of file mixer_slider_docker.py.

110 def parse_color(self, array):
111 color = ManagedColor(array[0], array[1], array[2])
112 color.setComponents([float(x) for x in array[3:]])
113 return color
114

◆ qcolor_to_managedcolor()

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.qcolor_to_managedcolor ( self,
qcolor )

Definition at line 118 of file mixer_slider_docker.py.

118 def qcolor_to_managedcolor(self, qcolor):
119 mc = ManagedColor.fromQColor(qcolor, self.canvas())
120 return mc
121
static ManagedColor * fromQColor(const QColor &qcolor, Canvas *canvas=0)
fromQColor is the (approximate) reverse of colorForCanvas()

◆ settings_changed()

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.settings_changed ( self)

Definition at line 69 of file mixer_slider_docker.py.

69 def settings_changed(self):
70 if self.ui.line_edit is not None:
71 num_sliders = int(self.ui.line_edit.text())
72 if len(self.sliders) > num_sliders:
73 for extra_line in self.sliders[num_sliders:]:
74 self.layout.removeWidget(extra_line)
75 extra_line.setParent(None)
76
77 self.sliders = self.sliders[0:num_sliders]
78 elif len(self.sliders) < num_sliders:
79 for i in range(num_sliders - len(self.sliders)):
80 widget = SliderLine(self.default_left_color, self.default_right_color, self)
81 self.sliders.append(widget)
82 self.layout.addWidget(widget)
83 self.write_settings()
84

References mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.default_left_color, mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.default_right_color, KisResourceItemChooser.layout, KoToolBox::Private.layout, KisCollapsibleButtonGroup::Private.layout, KisPaintOpPresetsEditor::Private.layout, KisSpinboxColorSelector::Private.layout, KisSpinboxHSXSelector::Private.layout, KisKKeySequenceWidgetPrivate.layout, KisFilterOptionWidget::Private.layout, KisMultiSensorsSelector::Private.layout, documenttools.tools.canvassizetool.canvassizetool.CanvasSizeTool.layout, documenttools.tools.rotatetool.rotatetool.RotateTool.layout, documenttools.tools.scaletool.scaletool.ScaleTool.layout, lastdocumentsdocker.lastdocumentsdocker.LastDocumentsDocker.layout, mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.layout, mixer_slider_docker.slider_line.SliderLine.layout, photobash_images.photobash_images_docker.PhotobashDocker.layout, scriptdocker.scriptdocker.ScriptDocker.layout, scripter.ui_scripter.tabwidgets.debuggerwidget.debuggerwidget.DebuggerWidget.layout, scripter.ui_scripter.tabwidgets.outputwidget.outputwidget.OutPutWidget.layout, tenscripts.uitenscripts.UITenScripts.layout, mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.sliders, KisVideoExportOptionsDialog.ui, VideoHDRMetadataOptionsDialog.ui, KisDelayedSaveDialog.ui, KisDlgHLGImport.ui, Contour.ui, Texture.ui, BevelAndEmboss.ui, BlendingOptions.ui, ColorOverlay.ui, DropShadow.ui, GradientOverlay.ui, InnerGlow.ui, PatternOverlay.ui, Satin.ui, Stroke.ui, StylesSelector.ui, KisDlgChangeCloneSource::Private.ui, KisDlgCustomTabletResolution.ui, KisRecoverNamedAutosaveDialog.ui, KisEditProfilesDialog::Private.ui, KisInputConfigurationPage.ui, KisInputConfigurationPageItem.ui, KisKeyInputEditor::Private.ui, KisMouseInputEditor::Private.ui, KisWheelInputEditor::Private.ui, KisPaintopPresetIconLibrary.ui, KisDlgListPicker.ui, KisLayerStyleAngleSelector.ui, KisProofingOptionsWidget::Private.ui, KoFillConfigWidget.ui, KoStrokeConfigWidget.ui, KisShortcutsEditorPrivate.ui, KisKShortcutWidgetPrivate.ui, KisColorSelectorSettings.ui, KisOnionSkinsDocker.ui, ArrangeDockerWidget.ui, KisDlgConfigureBrushHud.ui, GridConfigWidget.ui, RecorderExport::Private.ui, RecorderProfileSettings.ui, RecorderSnapshotsManager.ui, RecorderDockerDock::Private.ui, TouchDockerWidget.ui, krita.excepthook.ExceptHookDialog.ui, krita.sceditor.mainwindow.EditorMainWindow.ui, KisWdgConvertHeightToNormalMap.ui, KisWdgEdgeDetection.ui, KisHalftoneConfigPageWidget.ui(), KisHalftoneConfigPageWidget.ui(), KisWdgIndexColors.ui, KisMaskingBrushOption::Private.ui, krita_script_starter.krita_script_starter.KritaScriptStarter.ui, mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.ui, ToolReferenceImagesWidget::Private.ui, KisToolLazyBrushOptionsWidget::Private.ui, KisToolSmartPatchOptionsWidget::Private.ui, and mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.write_settings().

◆ write_settings()

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.write_settings ( self)

Definition at line 96 of file mixer_slider_docker.py.

96 def write_settings(self):
97 main_program = Krita.instance()
98 setting = ';'.join(
99 [self.color_to_settings(line.left) + '|' + self.color_to_settings(line.right)
100 for line in self.sliders])
101
102 main_program.writeSetting("", "MixerSliderColors", setting)
103

References mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.color_to_settings(), Krita.instance(), and mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.sliders.

Member Data Documentation

◆ default_left_color

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.default_left_color

Definition at line 33 of file mixer_slider_docker.py.

◆ default_right_color

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.default_right_color

Definition at line 34 of file mixer_slider_docker.py.

◆ init_ui

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.init_ui

Definition at line 67 of file mixer_slider_docker.py.

◆ layout

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.layout

Definition at line 49 of file mixer_slider_docker.py.

◆ main_layout

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.main_layout

Definition at line 40 of file mixer_slider_docker.py.

◆ settings_button

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.settings_button

Definition at line 43 of file mixer_slider_docker.py.

◆ sliders

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.sliders

Definition at line 38 of file mixer_slider_docker.py.

◆ top_layout

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.top_layout

Definition at line 39 of file mixer_slider_docker.py.

◆ ui

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.ui

Definition at line 93 of file mixer_slider_docker.py.

◆ widget

mixer_slider_docker.mixer_slider_docker.MixerSliderDocker.widget

Definition at line 37 of file mixer_slider_docker.py.


The documentation for this class was generated from the following file: