├── LICENSE
├── README.md
└── style.css
/LICENSE:
--------------------------------------------------------------------------------
1 | Creative Commons Legal Code
2 |
3 | CC0 1.0 Universal
4 |
5 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
6 | LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
7 | ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
8 | INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
9 | REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
10 | PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
11 | THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
12 | HEREUNDER.
13 |
14 | Statement of Purpose
15 |
16 | The laws of most jurisdictions throughout the world automatically confer
17 | exclusive Copyright and Related Rights (defined below) upon the creator
18 | and subsequent owner(s) (each and all, an "owner") of an original work of
19 | authorship and/or a database (each, a "Work").
20 |
21 | Certain owners wish to permanently relinquish those rights to a Work for
22 | the purpose of contributing to a commons of creative, cultural and
23 | scientific works ("Commons") that the public can reliably and without fear
24 | of later claims of infringement build upon, modify, incorporate in other
25 | works, reuse and redistribute as freely as possible in any form whatsoever
26 | and for any purposes, including without limitation commercial purposes.
27 | These owners may contribute to the Commons to promote the ideal of a free
28 | culture and the further production of creative, cultural and scientific
29 | works, or to gain reputation or greater distribution for their Work in
30 | part through the use and efforts of others.
31 |
32 | For these and/or other purposes and motivations, and without any
33 | expectation of additional consideration or compensation, the person
34 | associating CC0 with a Work (the "Affirmer"), to the extent that he or she
35 | is an owner of Copyright and Related Rights in the Work, voluntarily
36 | elects to apply CC0 to the Work and publicly distribute the Work under its
37 | terms, with knowledge of his or her Copyright and Related Rights in the
38 | Work and the meaning and intended legal effect of CC0 on those rights.
39 |
40 | 1. Copyright and Related Rights. A Work made available under CC0 may be
41 | protected by copyright and related or neighboring rights ("Copyright and
42 | Related Rights"). Copyright and Related Rights include, but are not
43 | limited to, the following:
44 |
45 | i. the right to reproduce, adapt, distribute, perform, display,
46 | communicate, and translate a Work;
47 | ii. moral rights retained by the original author(s) and/or performer(s);
48 | iii. publicity and privacy rights pertaining to a person's image or
49 | likeness depicted in a Work;
50 | iv. rights protecting against unfair competition in regards to a Work,
51 | subject to the limitations in paragraph 4(a), below;
52 | v. rights protecting the extraction, dissemination, use and reuse of data
53 | in a Work;
54 | vi. database rights (such as those arising under Directive 96/9/EC of the
55 | European Parliament and of the Council of 11 March 1996 on the legal
56 | protection of databases, and under any national implementation
57 | thereof, including any amended or successor version of such
58 | directive); and
59 | vii. other similar, equivalent or corresponding rights throughout the
60 | world based on applicable law or treaty, and any national
61 | implementations thereof.
62 |
63 | 2. Waiver. To the greatest extent permitted by, but not in contravention
64 | of, applicable law, Affirmer hereby overtly, fully, permanently,
65 | irrevocably and unconditionally waives, abandons, and surrenders all of
66 | Affirmer's Copyright and Related Rights and associated claims and causes
67 | of action, whether now known or unknown (including existing as well as
68 | future claims and causes of action), in the Work (i) in all territories
69 | worldwide, (ii) for the maximum duration provided by applicable law or
70 | treaty (including future time extensions), (iii) in any current or future
71 | medium and for any number of copies, and (iv) for any purpose whatsoever,
72 | including without limitation commercial, advertising or promotional
73 | purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
74 | member of the public at large and to the detriment of Affirmer's heirs and
75 | successors, fully intending that such Waiver shall not be subject to
76 | revocation, rescission, cancellation, termination, or any other legal or
77 | equitable action to disrupt the quiet enjoyment of the Work by the public
78 | as contemplated by Affirmer's express Statement of Purpose.
79 |
80 | 3. Public License Fallback. Should any part of the Waiver for any reason
81 | be judged legally invalid or ineffective under applicable law, then the
82 | Waiver shall be preserved to the maximum extent permitted taking into
83 | account Affirmer's express Statement of Purpose. In addition, to the
84 | extent the Waiver is so judged Affirmer hereby grants to each affected
85 | person a royalty-free, non transferable, non sublicensable, non exclusive,
86 | irrevocable and unconditional license to exercise Affirmer's Copyright and
87 | Related Rights in the Work (i) in all territories worldwide, (ii) for the
88 | maximum duration provided by applicable law or treaty (including future
89 | time extensions), (iii) in any current or future medium and for any number
90 | of copies, and (iv) for any purpose whatsoever, including without
91 | limitation commercial, advertising or promotional purposes (the
92 | "License"). The License shall be deemed effective as of the date CC0 was
93 | applied by Affirmer to the Work. Should any part of the License for any
94 | reason be judged legally invalid or ineffective under applicable law, such
95 | partial invalidity or ineffectiveness shall not invalidate the remainder
96 | of the License, and in such case Affirmer hereby affirms that he or she
97 | will not (i) exercise any of his or her remaining Copyright and Related
98 | Rights in the Work or (ii) assert any associated claims and causes of
99 | action with respect to the Work, in either case contrary to Affirmer's
100 | express Statement of Purpose.
101 |
102 | 4. Limitations and Disclaimers.
103 |
104 | a. No trademark or patent rights held by Affirmer are waived, abandoned,
105 | surrendered, licensed or otherwise affected by this document.
106 | b. Affirmer offers the Work as-is and makes no representations or
107 | warranties of any kind concerning the Work, express, implied,
108 | statutory or otherwise, including without limitation warranties of
109 | title, merchantability, fitness for a particular purpose, non
110 | infringement, or the absence of latent or other defects, accuracy, or
111 | the present or absence of errors, whether or not discoverable, all to
112 | the greatest extent permissible under applicable law.
113 | c. Affirmer disclaims responsibility for clearing rights of other persons
114 | that may apply to the Work or any use thereof, including without
115 | limitation any person's Copyright and Related Rights in the Work.
116 | Further, Affirmer disclaims responsibility for obtaining any necessary
117 | consents, permissions or other rights required for any use of the
118 | Work.
119 | d. Affirmer understands and acknowledges that Creative Commons is not a
120 | party to this document and has no duty or obligation with respect to
121 | this CC0 or use of the Work.
122 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # JavaFX-Dark-Theme :waning_crescent_moon:
2 | A complete CSS stylesheet to set a dark theme in your JavaFX UI.
3 |
4 | Built on top of the default JavaFX theme (Modena)
5 |
6 |
7 |
8 | ## How to use
9 | - **Load via FXML:**
10 |
11 |
12 | Add `stylesheets="@style.css"` to the top-level FXML tag.
13 |
14 |
15 |
16 | - **Load via Java:**
17 | Add the following code:
18 | ```
19 | File style = new File("relative-path/style.css");
20 | scene.getStylesheets().add(style.toURI().toURL().toExternalForm());
21 | ```
22 | or (online version)
23 | ```
24 | scene.getStylesheets().add("https://raw.githubusercontent.com/antoniopelusi/JavaFX-Dark-Theme/main/style.css");
25 | ```
26 |
27 |
28 |
29 | ## CSS preview example
30 | See this theme in action [**here**](https://github.com/antoniopelusi/KeyHolder-desktop)!
31 |
32 |
33 |
34 |
35 | ## List of JavaFX recolored elements
36 | - Label
37 | - Pane
38 | - GridPane
39 | - TextField
40 | - ComboBox
41 | - ChoiceBox
42 | - ListCell
43 | - ListView
44 | - Button
45 | - CheckBox
46 | - TextArea
47 | - ScrollBar
48 | - Menu
49 | - ProgressBar
50 | - Slider
51 | - TreeView
52 | - Tab
53 | - TitledPane
54 | - TableView
55 | - Tooltip
56 |
--------------------------------------------------------------------------------
/style.css:
--------------------------------------------------------------------------------
1 | /*
2 | *
3 | * Author: Antonio Pelusi
4 | * Website: https://www.antoniopelusi.com
5 | * Source code: https://github.com/antoniopelusi/JavaFX-Dark-Theme
6 | *
7 | */
8 |
9 | .root{
10 | -fx-background-color: #2D2D30;
11 | background-color: #2D2D30;
12 | }
13 |
14 |
15 | /* Label */
16 | .label{
17 | -fx-text-fill: #AFB1B3;
18 | }
19 |
20 |
21 | /* Pane */
22 | .pane-grid{
23 | -fx-background-color: #2D2D30;
24 | background-color: #2D2D30;
25 | }
26 |
27 |
28 | /* GridPane */
29 | .tab-pane-grid{
30 | /*
31 | * GridPane gridPane = new GridPane();
32 | * gridPane.getStyleClass().add("tab-pane-grid");
33 | * gridPane.setPadding(new Insets(3,0,0,0));
34 | */
35 | -fx-background-color: #2D2D30;
36 | background-color: #2D2D30;
37 | -fx-background-insets: 3 0 0 0;
38 | }
39 |
40 |
41 | /* TextField */
42 | .text-field{
43 | -fx-background-radius: 0;
44 | -fx-border-width: 1;
45 | border-width: 1;
46 | -fx-border-color: #222222;
47 | border-color: #222222;
48 | -fx-background-color: #1A1A1A;
49 | background-color: #1A1A1A;
50 | -fx-text-fill: #AFB1B3;
51 | -fx-highlight-fill: #4e4e4e;
52 | -fx-min-height: 25;
53 | min-height: 25;
54 | -fx-pref-height: 25;
55 | }
56 | .text-field:hover{
57 | -fx-border-color: #222222;
58 | border-color: #222222;
59 | -fx-background-color: #3E3E40;
60 | background-color: #3E3E40;
61 | }
62 | .text-field:focused{
63 | -fx-border-color: #4e4e4e;
64 | border-color: #4e4e4e;
65 | -fx-background-color: #1A1A1A;
66 | background-color: #1A1A1A;
67 | }
68 |
69 |
70 | /* ComboBox */
71 | .combo-box{
72 | -fx-background-radius: 0;
73 | -fx-border-insets: 0 0 -1 0;
74 | -fx-border-width: 1;
75 | border-width: 1;
76 | -fx-border-color: #222222;
77 | border-color: #222222;
78 | -fx-background-color: #1A1A1A;
79 | background-color: #1A1A1A;
80 | -fx-min-height: 25;
81 | min-height: 25;
82 | -fx-pref-height: 25;
83 | }
84 | .combo-box .list-cell:selected{
85 | -fx-background-color: #1A1A1A;
86 | background-color: #1A1A1A;
87 | }
88 | .combo-box .list-cell:hover{
89 | -fx-background-color: #3E3E40;
90 | background-color: #3E3E40;
91 | }
92 | .combo-box:hover{
93 | -fx-border-color: #222222;
94 | border-color: #222222;
95 | -fx-background-color: #3E3E40;
96 | background-color: #3E3E40;
97 | -fx-cursor: HAND;
98 | cursor: HAND;
99 | }
100 | .combo-box:focused{
101 | -fx-border-color: #4e4e4e;
102 | border-color: #4e4e4e;
103 | -fx-background-color: #1A1A1A;
104 | background-color: #1A1A1A;
105 | }
106 | .combo-box-base > .arrow-button {
107 | -fx-padding: 0 6;
108 | padding: 0 6;
109 | }
110 | .combo-box-base > .arrow-button > .arrow {
111 | -fx-background-color: #555555;
112 | background-color: #555555;
113 | -fx-background-insets: 0;
114 | -fx-padding: 2 4;
115 | padding: 2 4;
116 | -fx-shape: "M 0 0 H 7 L 3.5 4 z";
117 | }
118 | .combo-box .list-view{
119 | -fx-background-radius: 0;
120 | -fx-background-color: #1A1A1A;
121 | background-color: #1A1A1A;
122 | -fx-border-width: 0;
123 | border-width: 0;
124 | -fx-padding: 1;
125 | padding: 1;
126 | }
127 |
128 | /* ChoiceBox */
129 | .choice-box{
130 | -fx-background-radius: 0;
131 | -fx-border-insets: 0 0 -1 0;
132 | -fx-border-width: 1;
133 | border-width: 1;
134 | -fx-border-color: #222222;
135 | border-color: #222222;
136 | -fx-background-color: #1A1A1A;
137 | background-color: #1A1A1A;
138 | -fx-min-height: 25;
139 | min-height: 25;
140 | -fx-pref-height: 25;
141 | }
142 | .choice-box:hover{
143 | -fx-border-color: #222222;
144 | border-color: #222222;
145 | -fx-background-color: #3E3E40;
146 | background-color: #3E3E40;
147 | -fx-cursor: HAND;
148 | cursor: HAND;
149 | }
150 | .choice-box:focused{
151 | -fx-border-color: #4e4e4e;
152 | border-color: #4e4e4e;
153 | -fx-background-color: #1A1A1A;
154 | background-color: #1A1A1A;
155 | }
156 |
157 | /* ListCell */
158 | .list-cell{
159 | -fx-background-radius: 0;
160 | -fx-border-width: 0;
161 | border-width: 0;
162 | -fx-text-fill: #AFB1B3;
163 | -fx-background-color: #1A1A1A;
164 | background-color: #1A1A1A;
165 | -fx-min-height: 18;
166 | min-height: 18;
167 | -fx-pref-height: 18;
168 | -fx-padding: 0 0 0 3;
169 | padding: 0 0 0 3;
170 | }
171 | .list-cell:hover{
172 | -fx-background-color: #3E3E40;
173 | background-color: #3E3E40;
174 | -fx-cursor: HAND;
175 | cursor: HAND;
176 | }
177 | .list-cell:pressed{
178 | -fx-background-color: #3E3E40;
179 | background-color: #3E3E40;
180 | }
181 | .list-cell:selected{
182 | -fx-background-color: #3E3E40;
183 | background-color: #3E3E40;
184 | }
185 |
186 |
187 | /* ListView */
188 | .list-view{
189 | -fx-background-radius: 0;
190 | -fx-background-color: #1A1A1A;
191 | background-color: #1A1A1A;
192 | -fx-border-width: 1;
193 | border-width: 1;
194 | -fx-padding: 1;
195 | padding: 1;
196 | }
197 | .list-view .scroll-bar{
198 | -fx-background-insets: 0 -1 0 0;
199 | }
200 | .list-view .scroll-bar .thumb{
201 | -fx-background-insets: 0 3 0 2;
202 | }
203 | .list-view:hover{
204 | -fx-border-color: #3E3E40;
205 | border-color: #3E3E40;
206 | -fx-padding: 0;
207 | padding: 0;
208 | -fx-background-insets: 1 1 0 1;
209 | }
210 | .list-view:focused{
211 | -fx-background-color: #1A1A1A;
212 | background-color: #1A1A1A;
213 | -fx-border-color: #4e4e4e;
214 | border-color: #4e4e4e;
215 | -fx-padding: 0 0 1 0;
216 | padding: 0 0 1 0;
217 | -fx-background-insets: 1;
218 | }
219 |
220 |
221 | /* Button */
222 | .button{
223 | -fx-background-radius: 0;
224 | -fx-border-insets: 0 0 -1 0;
225 | -fx-border-width: 1;
226 | border-width: 1;
227 | -fx-border-color: #222222;
228 | border-color: #222222;
229 | -fx-background-color: #1A1A1A;
230 | background-color: #1A1A1A;
231 | -fx-text-fill: #AFB1B3;
232 | -fx-min-height: 25;
233 | min-height: 25;
234 | -fx-pref-height: 25;
235 | }
236 | .button:focused{
237 | -fx-border-color: #4e4e4e;
238 | border-color: #4e4e4e;
239 | -fx-background-color: #1A1A1A;
240 | background-color: #1A1A1A;
241 | }
242 | .button:hover{
243 | -fx-border-color: #222222;
244 | border-color: #222222;
245 | -fx-background-color: #3E3E40;
246 | background-color: #3E3E40;
247 | -fx-cursor: HAND;
248 | cursor: HAND;
249 | }
250 | .button:pressed{
251 | -fx-border-color: #4e4e4e;
252 | border-color: #4e4e4e;
253 | -fx-background-color: #4e4e4e;
254 | background-color: #4e4e4e;
255 | -fx-cursor: HAND;
256 | cursor: HAND;
257 | }
258 |
259 |
260 | /* CheckBox */
261 | .check-box{
262 | -fx-background-radius: 0;
263 | -fx-border-width: 0;
264 | border-width: 0;
265 | -fx-insets: 0 0 0 -1;
266 | -fx-background-color: transparent;
267 | background-color: transparent;
268 | -fx-text-fill: #AFB1B3;
269 | -fx-min-height: 25;
270 | min-height: 25;
271 | -fx-pref-height: 25;
272 | }
273 | .check-box > .box{
274 | -fx-background-radius: 0;
275 | -fx-border-width: 1;
276 | border-width: 1;
277 | -fx-border-color: #222222;
278 | border-color: #222222;
279 | -fx-insets: 0 0 -1 0;
280 | -fx-background-color: #1A1A1A;
281 | background-color: #1A1A1A;
282 | }
283 | .check-box:focused > .box{
284 | -fx-border-color: #4e4e4e;
285 | border-color: #4e4e4e;
286 | }
287 | .check-box:hover > .box{
288 | -fx-background-color: #3E3E40;
289 | background-color: #3E3E40;
290 | -fx-background-insets: 0 0 1 0;
291 | -fx-cursor: HAND;
292 | cursor: HAND;
293 | }
294 | .check-box > .box > .mark{
295 | -fx-background-color: transparent;
296 | background-color: transparent;
297 | -fx-shape: "M 9.97498 1.22334L 4.6983 9.09834 L 4.52164 9.09834 L 0 5.19331 L 1.27664 3.52165 L 4.255 6.08833 L 8.33331 1.52588e-005 L 9.97498 1.22334 Z " ;
298 | }
299 | .check-box:selected > .box > .mark{
300 | -fx-background-color: #AFB1B3;
301 | background-color: #AFB1B3;
302 | }
303 | .check-box:pressed > .box > .mark{
304 | -fx-background-color: #4e4e4e;
305 | background-color: #4e4e4e;
306 | }
307 |
308 |
309 | /* TextArea */
310 | .text-area{
311 | -fx-background-radius: 0;
312 | -fx-border-width: 1;
313 | border-width: 1;
314 | -fx-border-color: #222222;
315 | border-color: #222222;
316 | -fx-text-fill: #AFB1B3;
317 | -fx-highlight-fill: #4e4e4e;
318 | -fx-background-color: #1A1A1A;
319 | background-color: #1A1A1A;
320 | }
321 | .text-area:hover{
322 | -fx-border-color: #3E3E40;
323 | border-color: #3E3E40;
324 | }
325 | .text-area:focused{
326 | -fx-border-color: #4e4e4e;
327 | border-color: #4e4e4e;
328 | -fx-background-color: #1A1A1A;
329 | background-color: #1A1A1A;
330 | }
331 | .text-area .content{
332 | -fx-background-radius: 0;
333 | -fx-border-width: 0;
334 | border-width: 0;
335 | -fx-background-radius: 0;
336 | -fx-background-color: #1A1A1A;
337 | background-color: #1A1A1A;
338 | }
339 | .text-area .scroll-bar{
340 | -fx-background-insets: 0 -0.5 0.5 0;
341 | }
342 | .text-area .scroll-bar .thumb{
343 | -fx-background-insets: 0 2 0 2;
344 | }
345 |
346 |
347 | /* ScrollBar */
348 | .scroll-bar{
349 | -fx-background-radius: 0;
350 | -fx-background-color: #2A2A2C;
351 | background-color: #2A2A2C;
352 | }
353 | .scroll-bar:vertical{
354 | -fx-background-radius: 0;
355 | -fx-background-color: #2A2A2C;
356 | background-color: #2A2A2C;
357 | }
358 | .scroll-bar > .decrement-button{
359 | -fx-background-color: #2A2A2C;
360 | background-color: #2A2A2C;
361 | -fx-background-radius: 0;
362 | -fx-border-width: 0;
363 | border-width: 0;
364 | -fx-cursor: HAND;
365 | cursor: HAND;
366 | }
367 | .scroll-bar .decrement-button,
368 | .scroll-bar .increment-button{
369 | -fx-cursor: HAND;
370 | cursor: HAND;
371 | -fx-border-width: 0;
372 | border-width: 0;
373 | -fx-background-radius: 0;
374 | }
375 | .scroll-bar .decrement-button:hover,
376 | .scroll-bar .increment-button:hover{
377 | -fx-background-color: #4e4e4e;
378 | background-color: #4e4e4e;
379 | }
380 | .scroll-bar:vertical .increment-arrow,
381 | .scroll-bar:vertical .decrement-arrow,
382 | .scroll-bar:horizontal .increment-arrow,
383 | .scroll-bar:horizontal .decrement-arrow{
384 | -fx-shape : " ";
385 | }
386 | .scroll-bar:horizontal .thumb,
387 | .scroll-bar:vertical .thumb {
388 | -fx-background-color: #3D3D3D;
389 | background-color: #3D3D3D;
390 | -fx-background-radius : 0;
391 | -fx-cursor: HAND;
392 | cursor: HAND;
393 | }
394 |
395 |
396 | /* Menu */
397 | .menu-bar {
398 | -fx-background-color: #2D2D30;
399 | background-color: #2D2D30;
400 | -fx-border-width: 0;
401 | border-width: 0;
402 | }
403 | .menu-bar .menu-button{
404 | -fx-background: #4e4e4e;
405 | background: #4e4e4e;
406 | -fx-text-fill: #AFB1B3;
407 | -fx-min-height: 20;
408 | min-height: 20;
409 | -fx-pref-height: 20;
410 | -fx-padding: 0 5 0 5;
411 | padding: 0 5 0 5;
412 | -fx-cursor: HAND;
413 | cursor: HAND;
414 | }
415 | .menu-item{
416 | -fx-background-radius: 0;
417 | -fx-border-width: 0;
418 | border-width: 0;
419 | -fx-text-fill: #AFB1B3;
420 | -fx-background-color: #1A1A1A;
421 | background-color: #1A1A1A;
422 | }
423 | .menu-item:hover {
424 | -fx-background-color: #3E3E40;
425 | background-color: #3E3E40;
426 | -fx-cursor: HAND;
427 | cursor: HAND;
428 | }
429 | .menu-item:pressed {
430 | -fx-background-color: #4e4e4e;
431 | background-color: #4e4e4e;
432 | -fx-cursor: HAND;
433 | cursor: HAND;
434 | }
435 | .context-menu {
436 | -fx-background-color: #1A1A1A;
437 | background-color: #1A1A1A;
438 | -fx-border-width: 0;
439 | border-width: 0;
440 | -fx-padding: 0 0 -1 0;
441 | padding: 0 0 -1 0;
442 | }
443 |
444 |
445 | /* ProgressBar */
446 | .progress-bar{
447 | -fx-background-color: transparent;
448 | background-color: transparent;
449 | }
450 | .progress-bar .bar{
451 | -fx-background-color: #4e4e4e;
452 | background-color: #4e4e4e;
453 | -fx-background-radius: 0;
454 | -fx-padding: 3;
455 | padding: 3;
456 | -fx-background-insets: 0;
457 | }
458 | .progress-bar .track {
459 | -fx-background-color: transparent;
460 | background-color: transparent;
461 | -fx-background-radius: 0;
462 | }
463 |
464 |
465 | /* Slider */
466 | .slider{
467 | -fx-text-fill: #AFB1B3;
468 | }
469 | .slider .track{
470 | -fx-background-color: #1A1A1A;
471 | background-color: #1A1A1A;
472 | -fx-background-radius: 0;
473 | -fx-background-insets: 2 -2 1 0;
474 | }
475 | .slider .thumb{
476 | -fx-background-color: #B1B1B1;
477 | background-color: #B1B1B1;
478 | -fx-background-radius: 6;
479 | -fx-background-insets: 1 0 1 2;
480 | -fx-border-radius: 6;
481 | border-radius: 6;
482 | -fx-border-insets: 1 0 1 2;
483 | -fx-pref-width: 12;
484 | -fx-pref-height: 12;
485 | -fx-cursor: HAND;
486 | cursor: HAND;
487 | }
488 | .slider:focused .thumb{
489 | -fx-border-color: #4e4e4e;
490 | border-color: #4e4e4e;
491 | }
492 | .slider .thumb:hover{
493 | -fx-background-color: #3E3E40;
494 | background-color: #3E3E40;
495 | }
496 | .slider .thumb:pressed{
497 | -fx-background-color: #4e4e4e;
498 | background-color: #4e4e4e;
499 | }
500 |
501 |
502 | /* TreeView */
503 | .tree-view .scroll-bar{
504 | -fx-background-insets: 0 -1 0 0;
505 | }
506 | .tree-view .scroll-bar .thumb{
507 | -fx-background-insets: 0 3 0 2;
508 | }
509 | .tree-view {
510 | -fx-background-insets: 2;
511 | -fx-background-color: #1A1A1A;
512 | background-color: #1A1A1A;
513 | -fx-border-width: 1;
514 | border-width: 1;
515 | -fx-border-color: #222222;
516 | border-color: #222222;
517 | -fx-padding: 0 0 1 0;
518 | padding: 0 0 1 0;
519 | }
520 | .tree-view:hover{
521 | -fx-border-color: #3E3E40;
522 | border-color: #3E3E40;
523 | }
524 | .tree-view:focused {
525 | -fx-border-color: #4e4e4e;
526 | border-color: #4e4e4e;
527 | }
528 | .tree-cell{
529 | -fx-background-color: #1A1A1A;
530 | background-color: #1A1A1A;
531 | -fx-text-fill: #AFB1B3;
532 | -fx-border-width: 0;
533 | border-width: 0;
534 | -fx-pref-width: 20;
535 | -fx-pref-height: 20;
536 | -fx-padding: 1;
537 | padding: 1;
538 | -fx-cursor: HAND;
539 | cursor: HAND;
540 | }
541 | .tree-cell:hover{
542 | -fx-background-color: #3E3E40;
543 | background-color: #3E3E40;
544 | }
545 | .tree-cell:selected{
546 | -fx-background-color: #3E3E40;
547 | background-color: #3E3E40;
548 | }
549 | .tree-cell:pressed{
550 | -fx-background-color: #4e4e4e;
551 | background-color: #4e4e4e;
552 | }
553 | .tree-cell > .tree-disclosure-node > .arrow
554 | {
555 | -fx-background-color: #555555;
556 | background-color: #555555;
557 | }
558 | .tree-cell:hover > .tree-disclosure-node > .arrow
559 | {
560 | -fx-background-color: #4e4e4e;
561 | background-color: #4e4e4e;
562 | }
563 |
564 |
565 | /* Tab */
566 | .tab-pane{
567 | -fx-background-color: #4e4e4e;
568 | background-color: #4e4e4e;
569 | -fx-border-width: 1;
570 | border-width: 1;
571 | -fx-border-color: transparent;
572 | border-color: transparent;
573 | -fx-background-insets: 25.5 0 0 0;
574 | }
575 | .tab{
576 | -fx-background-radius: 0;
577 | -fx-border-width: 0;
578 | border-width: 0;
579 | -fx-background-color: #3E3E40;
580 | background-color: #3E3E40;
581 | -fx-text-fill: #AFB1B3;
582 | -fx-min-height: 20;
583 | min-height: 20;
584 | -fx-pref-height: 20;
585 | }
586 | .tab:selected{
587 | -fx-background-color: #4e4e4e;
588 | background-color: #4e4e4e;
589 | }
590 | .tab-pane:focused > .tab-header-area > .headers-region > .tab:selected .focus-indicator {
591 | -fx-border-color: transparent;
592 | border-color: transparent;
593 | }
594 | .tab .tab-close-button {
595 | -fx-shape: "M19,6.41L17.59,5 12,10.59 6.41,5 5,6.41 10.59,12 5,17.59 6.41,19 12,13.41 17.59,19 19,17.59 13.41,12z";
596 | -fx-background-color: #AFB1B3;
597 | background-color: #AFB1B3;
598 | -fx-background-insets: 2;
599 | -fx-margin: 0 0 -5 2;
600 | margin: 0 0 -5 2;
601 | -fx-cursor: HAND;
602 | cursor: HAND;
603 | }
604 | .tab .tab-label {
605 | -fx-text-fill: #AFB1B3;
606 | }
607 | .tab-pane .tab-header-area .tab-header-background {
608 | -fx-opacity: 0.0;
609 | opacity: 0.0;
610 | }
611 |
612 |
613 | /* TitledPane */
614 | .titled-pane{
615 | -fx-text-fill: #AFB1B3;
616 | -fx-label-padding: 0 0 -7 0;
617 | -fx-background-color: transparent;
618 | background-color: transparent;
619 | }
620 | .titled-pane .title{
621 | -fx-background-color: #3E3E42;
622 | background-color: #3E3E42;
623 | -fx-background-radius: 0;
624 | -fx-border-width: 0;
625 | border-width: 0;
626 | -fx-pref-height: 14;
627 | }
628 | .titled-pane .content{
629 | -fx-background-color: #2D2D30;
630 | background-color: #2D2D30;
631 | -fx-border-color: #3E3E42;
632 | border-color: #3E3E42;
633 | -fx-border-radius: 0;
634 | border-radius: 0;
635 | -fx-border-width: 3 2 2 2;
636 | border-width: 3 2 2 2;
637 | }
638 |
639 |
640 | /* TableView */
641 | .table-view{
642 | -fx-border-width: 1;
643 | border-width: 1;
644 | -fx-border-radius: 0;
645 | border-radius: 0;
646 | -fx-border-color: #222222;
647 | border-color: #222222;
648 | -fx-background-radius: 0;
649 | -fx-background-color: #1A1A1A;
650 | background-color: #1A1A1A;
651 | -fx-table-cell-border-color: #222222;
652 | }
653 | .table-view:focused{
654 | -fx-border-width: 1;
655 | border-width: 1;
656 | -fx-border-radius: 0;
657 | border-radius: 0;
658 | -fx-border-color: #4e4e4e;
659 | border-color: #4e4e4e;
660 | -fx-background-insets: 1;
661 | -fx-background-radius: 0;
662 | -fx-background-color: #1A1A1A;
663 | background-color: #1A1A1A;
664 | }
665 | .table-view .column-header-background{
666 | -fx-border-width: 0 0 1 0;
667 | border-width: 0 0 1 0;
668 | -fx-border-color: #222222;
669 | border-color: #222222;
670 | -fx-background-radius: 0;
671 | -fx-background-color: #1A1A1A;
672 | background-color: #1A1A1A;
673 | -fx-text-fill: #AFB1B3;
674 | }
675 | .table-view .column-header {
676 | -fx-background-color: transparent;
677 | background-color: transparent;
678 | -fx-border-color: #222222;
679 | border-color: #222222;
680 | }
681 | .table-view .column-resize-line {
682 | -fx-background-color: #4e4e4e;
683 | background-color: #4e4e4e;
684 | -fx-pref-width: 1;
685 | }
686 | .table-row-cell{
687 | -fx-background-color: #1A1A1A;
688 | background-color: #1A1A1A;
689 | -fx-text-background-color: #AFB1B3;
690 | -fx-margin: 1;
691 | margin: 1;
692 | }
693 | .table-row-cell:hover {
694 | -fx-background-color: #3E3E40;
695 | background-color: #3E3E40;
696 | -fx-background-insets: 0;
697 | -fx-background-radius: 0;
698 | }
699 | .table-row-cell:selected {
700 | -fx-table-cell-border-color: #222222;
701 | -fx-background-color: #3E3E40;
702 | background-color: #3E3E40;
703 | -fx-background-insets: 0;
704 | -fx-background-radius: 0;
705 | }
706 | .table-row-cell:pressed {
707 | -fx-background-color: #4e4e4e;
708 | background-color: #4e4e4e;
709 | -fx-background-insets: 0;
710 | -fx-background-radius: 0;
711 | }
712 | .table-view .column-header .label {
713 | -fx-alignment: center-left;
714 | -fx-cursor: HAND;
715 | cursor: HAND;
716 | }
717 | .table-view .filler {
718 | -fx-background-color: transparent;
719 | background-color: transparent;
720 | }
721 | .table-view .column-drag-header{
722 | -fx-background-color: #4e4e4e;
723 | background-color: #4e4e4e;
724 | }
725 |
726 |
727 | /* Tooltip */
728 | .tooltip{
729 | -fx-background-radius: 0;
730 | -fx-border-radius: 0;
731 | border-radius: 0;
732 | -fx-text-fill: #AFB1B3;
733 | -fx-padding: 5;
734 | padding: 5;
735 | }
736 |
--------------------------------------------------------------------------------