Released version 3-2015061300
[notion.git] / contrib / styles / look_qt.lua
blobafaa0d4ba667b6966ad8fdfa645d6896ff9159c7
1 -- Authors: Johan Kiviniemi
2 -- License: Unknown
3 -- Last Changed: Unknown
4 --
5 -- Look-qtrc 0.1 for the Ion window manager.
6 -- Based on look-cleanviolet.
7 --
8 -- I am using the QtCurve Gtk+ theme; now Qt, Gtk+ and Ion share the same
9 -- color theme automatically. :-)
11 -- http://www.kde-look.org/content/show.php?content=5065
13 -- Johan "Ion" Kiviniemi
15 local xft = false
16 local basefont
17 local tabfont
18 local menufont
19 --if gr.select_engine("xftde") then
20 if false then
21 xft = true
22 basefont = "xft:Bitstream Vera Sans:size=9:weight=bold"
23 tabfont = "xft:Bitstream Vera Sans:size=8:weight=bold"
24 menufont = "xft:Bitstream Vera Sans:size=10:weight=bold"
25 elseif gr.select_engine("de") then
26 xft = false
27 basefont = "-*-bitstream vera sans-bold-r-normal-*-9-*-*-*-*-*-*-*"
28 font = "-*-bitstream vera sans-bold-r-normal-*-8-*-*-*-*-*-*-*"
29 menufont = "-*-bitstream vera sans-bold-r-normal-*-10-*-*-*-*-*-*-*"
30 else
31 return
32 end
34 local qtrcfile = os.getenv("HOME").."/.qt/qtrc"
36 local palette = {}
37 -- palette[1] = active, palette[2] = inactive, palette[3] = disabled
38 for i = 1, 3 do
39 palette[i] = {}
40 for j = 1, 16 do
41 palette[i][j] = "#000000"
42 end
43 end
45 local inpalette = false
46 local paletteid = 0
47 for line in io.lines(qtrcfile) do
48 if string.find(line, "^%[") then inpalette = false end
49 if string.find(line, "^%[Palette%]") then inpalette = true end
50 if inpalette then
51 if string.find(line, "^active=") then paletteid = 1
52 elseif string.find(line, "^inactive=") then paletteid = 2
53 elseif string.find(line, "^disabled=") then paletteid = 3
54 else paletteid = 0
55 end
57 if paletteid > 0 then
58 local i = 1
59 for v in string.gmatch(line, "(#[0-9a-fA-F]+)") do
60 palette[paletteid][i] = v
61 i = i+1
62 end
63 end
64 end
65 end
67 -- Clear existing styles from memory.
68 de.reset()
70 -- Base style
71 de.defstyle("*", {
72 highlight_colour = palette[1][4],
73 shadow_colour = palette[1][5],
74 background_colour = palette[1][2],
75 foreground_colour = palette[1][1],
77 shadow_pixels = 1,
78 highlight_pixels = 1,
79 padding_pixels = 1,
80 spacing = 0,
81 border_style = "elevated",
83 font = basefont,
84 text_align = "left",
88 de.defstyle("frame", {
89 based_on = "*",
90 padding_colour = palette[1][2],
91 background_colour = palette[1][1],
92 transparent_background = false,
96 de.defstyle("frame-ionframe", {
97 based_on = "frame",
98 shadow_pixels = 0,
99 highlight_pixels = 0,
100 padding_pixels = 0,
101 spacing = 1,
105 de.defstyle("tab", {
106 based_on = "*",
107 font = tabfont,
109 de.substyle("active-selected", {
110 highlight_colour = palette[1][13],
111 shadow_colour = palette[1][13],
112 background_colour = palette[1][13],
113 foreground_colour = palette[1][14],
116 de.substyle("inactive-selected", {
117 highlight_colour = palette[1][4],
118 shadow_colour = palette[1][5],
119 background_colour = palette[1][2],
120 foreground_colour = palette[1][1],
125 de.defstyle("tab-frame", {
126 based_on = "tab",
128 de.substyle("*-*-*-*-activity", {
129 -- Red tab
130 highlight_colour = "#ffffff",
131 shadow_colour = "#ffffff",
132 background_colour = "#990000",
133 foreground_colour = "#ffffff",
138 de.defstyle("tab-frame-ionframe", {
139 based_on = "tab-frame",
140 spacing = 1,
141 bar_inside_frame = true,
145 de.defstyle("tab-menuentry", {
146 based_on = "tab",
147 text_align = "left",
148 spacing = 1,
151 de.defstyle("tab-menuentry-pmenu", {
152 based_on = "tab-menuentry",
153 de.substyle("inactive-selected", {
154 highlight_colour = palette[1][13],
155 shadow_colour = palette[1][13],
156 background_colour = palette[1][13],
157 foreground_colour = palette[1][14],
161 de.defstyle("tab-menuentry-big", {
162 based_on = "tab-menuentry",
163 font = menufont,
164 padding_pixels = 5,
168 de.defstyle("input", {
169 based_on = "*",
170 text_align = "left",
171 spacing = 1,
172 highlight_colour = palette[1][4],
173 shadow_colour = palette[1][5],
174 background_colour = palette[1][2],
175 foreground_colour = palette[1][1],
177 de.substyle("*-selection", {
178 background_colour = "#0000ff",
179 foreground_colour = "#00ff00",
182 de.substyle("*-cursor", {
183 background_colour = palette[1][1],
184 foreground_colour = palette[1][2],
188 -- Refresh objects' brushes.
189 gr.refresh()