Wed, 01 Jan 2014 14:38:45 +0100
Updated copyright for 2014.
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
3160
209a07d7e401
Updated copyright for 2014.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2992
diff
changeset
|
3 | # Copyright (c) 2009 - 2014 Detlev Offenbach <detlev@die-offenbachs.de> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a palette widget for the icon editor. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
1112
8a7d1b9d18db
Improved code quality by getting rid of star imports. That way pyflakes can do its job. A few bugs fixed found by flakes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
10 | from PyQt4.QtCore import pyqtSignal, Qt |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
11 | from PyQt4.QtGui import QWidget, QColor, QPainter, QBoxLayout, QLabel, \ |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
12 | QFrame, QPushButton, QSpinBox, QGroupBox, QVBoxLayout, QRadioButton, \ |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
13 | QSpacerItem, QSizePolicy, QPixmap, QColorDialog |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
15 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | class IconEditorPalette(QWidget): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | Class implementing a palette widget for the icon editor. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | @signal colorSelected(QColor) emitted after a new color has been selected |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
21 | @signal compositingChanged(QPainter.CompositionMode) emitted to signal a |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
22 | change of the compositing mode |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | """ |
495
b31b0bffa5b0
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
464
diff
changeset
|
24 | colorSelected = pyqtSignal(QColor) |
618
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
25 | compositingChanged = pyqtSignal(QPainter.CompositionMode) |
495
b31b0bffa5b0
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
464
diff
changeset
|
26 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
27 | def __init__(self, parent=None): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | Constructor |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | @param parent reference to the parent widget (QWidget) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | """ |
1131
7781e396c903
Changed the code to use super() to access the superclass.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1112
diff
changeset
|
33 | super().__init__(parent) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | if self.layoutDirection == Qt.Horizontal: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | direction = QBoxLayout.LeftToRight |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | direction = QBoxLayout.TopToBottom |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | self.__layout = QBoxLayout(direction, self) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | self.setLayout(self.__layout) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | self.__preview = QLabel(self) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | self.__preview.setFrameStyle(QFrame.Panel | QFrame.Sunken) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | self.__preview.setFixedHeight(64) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | self.__preview.setAlignment(Qt.AlignHCenter | Qt.AlignVCenter) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | self.__preview.setWhatsThis(self.trUtf8( |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | """<b>Preview</b>""" |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | """<p>This is a 1:1 preview of the current icon.</p>""" |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | )) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50 | self.__layout.addWidget(self.__preview) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | self.__color = QLabel(self) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | self.__color.setFrameStyle(QFrame.Panel | QFrame.Sunken) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | self.__color.setFixedHeight(24) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | self.__color.setAlignment(Qt.AlignHCenter | Qt.AlignVCenter) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | self.__color.setWhatsThis(self.trUtf8( |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57 | """<b>Current Color</b>""" |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58 | """<p>This is the currently selected color used for drawing.</p>""" |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | )) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60 | self.__layout.addWidget(self.__color) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | self.__colorTxt = QLabel(self) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | self.__colorTxt.setAlignment(Qt.AlignHCenter | Qt.AlignVCenter) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64 | self.__colorTxt.setWhatsThis(self.trUtf8( |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | """<b>Current Color Value</b>""" |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
66 | """<p>This is the currently selected color value used for""" |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
67 | """ drawing.</p>""" |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | )) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | self.__layout.addWidget(self.__colorTxt) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | self.__colorButton = QPushButton(self.trUtf8("Select Color"), self) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | self.__colorButton.setWhatsThis(self.trUtf8( |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | """<b>Select Color</b>""" |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
74 | """<p>Select the current drawing color via a color selection""" |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
75 | """ dialog.</p>""" |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76 | )) |
464
a2b1d1770ef0
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
414
diff
changeset
|
77 | self.__colorButton.clicked[()].connect(self.__selectColor) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | self.__layout.addWidget(self.__colorButton) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | self.__colorAlpha = QSpinBox(self) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | self.__colorAlpha.setRange(0, 255) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82 | self.__colorAlpha.setWhatsThis(self.trUtf8( |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83 | """<b>Select alpha channel value</b>""" |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
84 | """<p>Select the value for the alpha channel of the current""" |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
85 | """ color.</p>""" |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | )) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | self.__layout.addWidget(self.__colorAlpha) |
495
b31b0bffa5b0
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
464
diff
changeset
|
88 | self.__colorAlpha.valueChanged[int].connect(self.__alphaChanged) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | |
618
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
90 | self.__compositingGroup = QGroupBox(self.trUtf8("Compositing"), self) |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
91 | self.__compositingGroupLayout = QVBoxLayout(self.__compositingGroup) |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
92 | self.__compositingGroup.setLayout(self.__compositingGroupLayout) |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
93 | self.__sourceButton = QRadioButton(self.trUtf8("Replace"), |
618
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
94 | self.__compositingGroup) |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
95 | self.__sourceButton.setWhatsThis(self.trUtf8( |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
96 | """<b>Replace</b>""" |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
97 | """<p>Replace the existing pixel with a new color.</p>""" |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
98 | )) |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
99 | self.__sourceButton.clicked[bool].connect(self.__compositingChanged) |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
100 | self.__compositingGroupLayout.addWidget(self.__sourceButton) |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
101 | self.__sourceOverButton = QRadioButton(self.trUtf8("Blend"), |
618
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
102 | self.__compositingGroup) |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
103 | self.__sourceOverButton.setWhatsThis(self.trUtf8( |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
104 | """<b>Blend</b>""" |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
105 | """<p>Blend the new color over the existing pixel.</p>""" |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
106 | )) |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
107 | self.__sourceOverButton.setChecked(True) |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
108 | self.__sourceOverButton.clicked[bool].connect( |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
109 | self.__compositingChanged) |
618
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
110 | self.__compositingGroupLayout.addWidget(self.__sourceOverButton) |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
111 | self.__layout.addWidget(self.__compositingGroup) |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
112 | |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
113 | spacer = QSpacerItem( |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
114 | 10, 10, QSizePolicy.Minimum, QSizePolicy.Expanding) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
115 | self.__layout.addItem(spacer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
116 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
117 | def previewChanged(self, pixmap): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
119 | Public slot to update the preview. |
2957
c7f8c7561542
Continued correcting doc strings by using the new doc string checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
120 | |
c7f8c7561542
Continued correcting doc strings by using the new doc string checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
121 | @param pixmap new preview pixmap (QPixmap) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
122 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | self.__preview.setPixmap(pixmap) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
124 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
125 | def colorChanged(self, color): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
127 | Public slot to update the color preview. |
2957
c7f8c7561542
Continued correcting doc strings by using the new doc string checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
128 | |
c7f8c7561542
Continued correcting doc strings by using the new doc string checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
129 | @param color new color (QColor) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
131 | self.__currentColor = color |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
132 | self.__currentAlpha = color.alpha() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
133 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
134 | pm = QPixmap(90, 18) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
135 | pm.fill(color) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | self.__color.setPixmap(pm) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
137 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
138 | self.__colorTxt.setText( |
414
8c91e942d2da
Did some more string format conversions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
139 | "{0:d}, {1:d}, {2:d}, {3:d}".format( |
8c91e942d2da
Did some more string format conversions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
140 | color.red(), color.green(), color.blue(), color.alpha())) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
142 | self.__colorAlpha.setValue(self.__currentAlpha) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
143 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
144 | def __selectColor(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
146 | Private slot to select a new drawing color. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
148 | col = QColorDialog.getColor(self.__currentColor) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
149 | col.setAlpha(self.__currentAlpha) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
150 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
151 | if col.isValid(): |
495
b31b0bffa5b0
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
464
diff
changeset
|
152 | self.colorSelected.emit(col) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
153 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
154 | def __alphaChanged(self, val): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
155 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | Private slot to track changes of the alpha channel. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
157 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | @param val value of the alpha channel |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
159 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
160 | if val != self.__currentAlpha: |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
161 | col = QColor(self.__currentColor) |
826
2e3e2055e715
Fixed a few PEP 8 related issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
162 | col.setAlpha(val) |
2e3e2055e715
Fixed a few PEP 8 related issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
163 | self.colorSelected.emit(col) |
618
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
164 | |
619
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
165 | def setCompositingMode(self, mode): |
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
166 | """ |
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
167 | Public method to set the compositing mode. |
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
168 | |
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
169 | @param mode compositing mode to set (QPainter.CompositionMode) |
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
170 | """ |
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
171 | if mode == QPainter.CompositionMode_Source: |
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
172 | self.__sourceButton.setChecked(True) |
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
173 | elif mode == QPainter.CompositionMode_SourceOver: |
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
174 | self.__sourceOverButton.setChecked(True) |
52f88b8fe8b2
Fixed a forgotten initialisation statement and supporting method.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
618
diff
changeset
|
175 | |
618
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
176 | def __compositingChanged(self, on): |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
177 | """ |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
178 | Private slot to handle a change of the compositing mode. |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
179 | |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
180 | @param on flag indicating the checked state of the compositing button |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
181 | (boolean) |
618
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
182 | """ |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
183 | if on: |
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
184 | if self.__sourceButton.isChecked(): |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
185 | self.compositingChanged.emit( |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
186 | QPainter.CompositionMode_Source) |
618
42580bfc0777
Added use of compositing modes to the icon editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
495
diff
changeset
|
187 | elif self.__sourceOverButton.isChecked(): |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
188 | self.compositingChanged.emit( |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2957
diff
changeset
|
189 | QPainter.CompositionMode_SourceOver) |