Fix build with gcc 4.7
[cadence.git] / src / theme.py
blob17a81b839d2352cad09d41a1f42d51b68c24781b
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
4 from PyQt4.QtCore import Qt, QString
5 from PyQt4.QtGui import QColor, QFont, QPen
7 class Theme(object):
9 # enum PortType
10 THEME_PORT_SQUARE = 0
11 THEME_PORT_POLYGON = 1
13 # enum List
14 THEME_MODERN_DARK = 0
15 THEME_CLASSIC_DARK = 1
16 THEME_MAX = 2
18 def __init__(self, idx):
19 super(Theme, self).__init__()
21 if (idx == self.THEME_MODERN_DARK):
22 # Name this theme
23 self.name = "Modern Dark"
25 # Canvas
26 self.canvas_bg = QColor(0,0,0)
28 # Boxes
29 self.box_pen = QPen(QColor(76,77,78), 1, Qt.SolidLine)
30 self.box_pen_sel = QPen(QColor(206,207,208), 1, Qt.DashLine)
31 self.box_bg_1 = QColor(32,34,35)
32 self.box_bg_2 = QColor(43,47,48)
33 self.box_shadow = QColor(89,89,89,180)
35 self.box_text = QPen(QColor(240,240,240), 0)
36 self.box_font_name = "Deja Vu Sans"
37 self.box_font_size = 8
38 self.box_font_state = QFont.Bold
40 # Ports
41 self.port_audio_jack_pen = QPen(QColor(63,90,126), 1)
42 self.port_audio_jack_pen_sel = QPen(QColor(63+30,90+30,126+30), 1)
43 self.port_midi_jack_pen = QPen(QColor(159,44,42), 1)
44 self.port_midi_jack_pen_sel = QPen(QColor(159+30,44+30,42+30), 1)
45 self.port_midi_a2j_pen = QPen(QColor(137,76,43), 1)
46 self.port_midi_a2j_pen_sel = QPen(QColor(137+30,76+30,43+30), 1)
47 self.port_midi_alsa_pen = QPen(QColor(93,141,46), 1)
48 self.port_midi_alsa_pen_sel = QPen(QColor(93+30,141+30,46+30), 1)
50 self.port_audio_jack_bg = QColor(35,61,99)
51 self.port_audio_jack_bg_sel = QColor(35+50,61+50,99+50)
52 self.port_midi_jack_bg = QColor(120,15,16)
53 self.port_midi_jack_bg_sel = QColor(120+50,15+50,16+50)
54 self.port_midi_a2j_bg = QColor(101,47,16)
55 self.port_midi_a2j_bg_sel = QColor(101+50,47+50,16+50)
56 self.port_midi_alsa_bg = QColor(64,112,18)
57 self.port_midi_alsa_bg_sel = QColor(64+50,112+50,18+50)
59 self.port_text = QPen(QColor(250,250,250), 0)
60 self.port_font_name = "Deja Vu Sans"
61 self.port_font_size = 8
62 self.port_font_state = QFont.Normal
63 self.port_mode = self.THEME_PORT_POLYGON
65 # Lines
66 self.line_audio_jack = QColor(63,90,126)
67 self.line_audio_jack_sel = QColor(63+90,90+90,126+90)
68 self.line_audio_jack_glow = QColor(100,100,200)
69 self.line_midi_jack = QColor(159,44,42)
70 self.line_midi_jack_sel = QColor(159+90,44+90,42+90)
71 self.line_midi_jack_glow = QColor(200,100,100)
72 self.line_midi_a2j = QColor(137,76,43)
73 self.line_midi_a2j_sel = QColor(137+90,76+90,43+90)
74 self.line_midi_a2j_glow = QColor(166,133,133)
75 self.line_midi_alsa = QColor(93,141,46)
76 self.line_midi_alsa_sel = QColor(93+90,141+90,46+90)
77 self.line_midi_alsa_glow = QColor(100,200,100)
79 self.rubberband_pen = QPen(QColor(206,207,208), 1, Qt.SolidLine)
80 self.rubberband_brush = QColor(76,77,78,100)
82 elif (idx == self.THEME_CLASSIC_DARK):
83 # Name this theme
84 self.name = "Classic Dark"
86 # Canvas
87 self.canvas_bg = QColor(0,0,0)
89 # Boxes
90 self.box_pen = QPen(QColor(147-70,151-70,143-70), 2, Qt.SolidLine)
91 self.box_pen_sel = QPen(QColor(147,151,143), 2, Qt.DashLine)
92 self.box_bg_1 = QColor(30,34,36)
93 self.box_bg_2 = QColor(30,34,36)
94 self.box_shadow = QColor(89,89,89,180)
96 self.box_text = QPen(QColor(255,255,255), 0)
97 self.box_font_name = "Sans"
98 self.box_font_size = 9
99 self.box_font_state = QFont.Normal
101 # Ports
102 self.port_audio_jack_pen = QPen(QColor(35,61,99), 0)
103 self.port_audio_jack_pen_sel = QPen(QColor(255,0,0), 0)
104 self.port_midi_jack_pen = QPen(QColor(120,15,16), 0)
105 self.port_midi_jack_pen_sel = QPen(QColor(255,0,0), 0)
106 self.port_midi_a2j_pen = QPen(QColor(101,47,17), 0)
107 self.port_midi_a2j_pen_sel = QPen(QColor(255,0,0), 0)
108 self.port_midi_alsa_pen = QPen(QColor(63,112,19), 0)
109 self.port_midi_alsa_pen_sel = QPen(QColor(255,0,0), 0)
111 self.port_audio_jack_bg = QColor(35,61,99)
112 self.port_audio_jack_bg_sel = QColor(255,0,0)
113 self.port_midi_jack_bg = QColor(120,15,16)
114 self.port_midi_jack_bg_sel = QColor(255,0,0)
115 self.port_midi_a2j_bg = QColor(101,47,17)
116 self.port_midi_a2j_bg_sel = QColor(255,0,0)
117 self.port_midi_alsa_bg = QColor(63,112,19)
118 self.port_midi_alsa_bg_sel = QColor(255,0,0)
120 self.port_text = QPen(QColor(250,250,250), 0)
121 self.port_font_name = "Sans"
122 self.port_font_size = 8
123 self.port_font_state = QFont.Normal
124 self.port_mode = self.THEME_PORT_SQUARE
126 # Lines
127 self.line_audio_jack = QColor(53,78,116)
128 self.line_audio_jack_sel = QColor(255,0,0)
129 self.line_audio_jack_glow = QColor(255,0,0)
130 self.line_midi_jack = QColor(139,32,32)
131 self.line_midi_jack_sel = QColor(255,0,0)
132 self.line_midi_jack_glow = QColor(255,0,0)
133 self.line_midi_a2j = QColor(120,65,33)
134 self.line_midi_a2j_sel = QColor(255,0,0)
135 self.line_midi_a2j_glow = QColor(255,0,0)
136 self.line_midi_alsa = QColor(81,130,36)
137 self.line_midi_alsa_sel = QColor(255,0,0)
138 self.line_midi_alsa_glow = QColor(255,0,0)
140 self.rubberband_pen = QPen(QColor(147,151,143), 2, Qt.SolidLine)
141 self.rubberband_brush = QColor(35,61,99,100)
143 def getDefaultTheme():
144 return Theme.THEME_MODERN_DARK
146 def getThemeName(idx):
147 if (idx == Theme.THEME_MODERN_DARK):
148 return QString("Modern Dark")
149 elif (idx == Theme.THEME_CLASSIC_DARK):
150 return QString("Classic Dark")
151 else:
152 return QString("")