tonarchy

tonarchy

https://git.tonybtw.com/tonarchy.git git://git.tonybtw.com/tonarchy.git
66,668 bytes raw
1
# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et:
2
#
3
# This is the main theme file, handling all the default widgets and theme
4
# properties. Since GTK 2 is old, we need to overcome some of its limitations,
5
# which is also mostly done in this file. Sadly not all of them can be overcome
6
# so there will always be a visible difference between the GTK 2 and 3 theme.
7
8
style "default" {
9
  xthickness = 1
10
  ythickness = 1
11
12
  ####################
13
  # Style Properties #
14
  ####################
15
16
  GtkWidget::focus-padding      = 0
17
  GtkWidget::focus-line-width   = 2
18
  GtkWidget::focus-line-pattern = "\2\1"
19
20
  GtkToolbar::space-size       = 5 # 1 + 2*2 (separator + margins)
21
  GtkToolbar::internal-padding = 2
22
  GtkToolButton::icon-spacing  = 4
23
24
  GtkWidget::tooltip-radius    = 4
25
  GtkWidget::tooltip-alpha     = 230
26
  GtkWidget::new-tooltip-style = 1 #for compatibility
27
28
  GtkWidget::link-color              = @link_color
29
  GtkWidget::visited-link-color      = @visited_link_color
30
  GnomeHRef::link_color              = @link_color
31
  GtkHTML::link-color                = @link_color
32
  GtkHTML::vlink-color               = @visited_link_color
33
  GtkIMHtml::hyperlink-color         = @link_color
34
  GtkIMHtml::hyperlink-visited-color = @visited_link_color
35
36
  GtkSeparatorMenuItem::horizontal-padding = 0
37
  GtkSeparatorMenuItem::wide-separators    = 1
38
  GtkSeparatorMenuItem::separator-height   = 3
39
40
  GtkButton::child-displacement-y = 0
41
42
  GtkButton::default-border         = {0, 0, 0, 0}
43
  GtkButton::default-outside-border = {0, 0, 0, 0}
44
  GtkButton::inner-border           = {0, 0, 0, 0}
45
46
  GtkEntry::state-hint   = 1
47
  GtkEntry::inner-border = {0, 0, 0, 0}
48
49
  GtkPaned::handle-size  = 8
50
  GtkHPaned::handle-size = 8
51
  GtkVPaned::handle-size = 8
52
53
  GtkScrollbar::trough-border = 0
54
  GtkRange::trough-border     = 0
55
  GtkRange::slider-width      = 17
56
  GtkRange::stepper-size      = 0
57
  GtkRange::activate-slider   = 1
58
59
  GtkScrollbar::activate-slider              = 1
60
  GtkScrollbar::stepper-size                 = 0
61
  GtkScrollbar::has-backward-stepper         = 0
62
  GtkScrollbar::has-forward-stepper          = 0
63
  GtkScrollbar::min-slider-length            = 32 # 24 + 2*4 (margins)
64
  GtkScrolledWindow::scrollbar-spacing       = 0
65
  GtkScrolledWindow::scrollbars-within-bevel = 1
66
67
  GtkScale::slider_length       = 24
68
  GtkScale::slider_width        = 24
69
  GtkScale::trough-side-details = 1
70
71
  GtkProgressBar::min-horizontal-bar-height = 4
72
  GtkProgressBar::min-vertical-bar-width    = 4
73
  GtkProgressBar::xspacing                  = 4
74
  GtkProgressBar::yspacing                  = 4
75
76
  GtkStatusbar::shadow_type    = GTK_SHADOW_NONE
77
  GtkSpinButton::shadow_type   = GTK_SHADOW_NONE
78
  GtkMenuBar::shadow-type      = GTK_SHADOW_NONE
79
  GtkToolbar::shadow-type      = GTK_SHADOW_NONE
80
  # TODO: find out what this comment means:
81
  # ( every window is misaligned for the sake of menus ):
82
  GtkMenuBar::internal-padding = 0
83
  GtkMenu::horizontal-padding  = 0
84
  GtkMenu::vertical-padding    = 4
85
  GtkMenu::double-arrows       = 0
86
  GtkMenuItem::arrow-scaling   = 1
87
  GtkMenuItem::toggle-spacing  = 12
88
89
  GtkCheckButton::indicator-size    = 24
90
  GtkCheckButton::indicator_spacing = 2
91
  GtkOptionMenu::indicator_spacing  = {8, 8, 4, 4}
92
93
  GtkTreeView::expander-size        = 16
94
  GtkTreeView::vertical-separator   = 0
95
  GtkTreeView::horizontal-separator = 4
96
  GtkTreeView::allow-rules          = 0
97
  # Set this because some apps read it
98
  GtkTreeView::odd-row-color        = @base_color
99
  GtkTreeView::even-row-color       = @base_color
100
101
  GtkExpander::expander-size = 16
102
103
  GtkNotebook::tab-overlap = 0
104
105
  ##########
106
  # Colors #
107
  ##########
108
109
  bg[NORMAL]      = @bg_color
110
  bg[PRELIGHT]    = @bg_color
111
  bg[SELECTED]    = mix (0.24, @selected_bg_color, @bg_color)
112
  bg[INSENSITIVE] = @bg_color
113
  bg[ACTIVE]      = @bg_color
114
115
  fg[NORMAL]      = @fg_color
116
  fg[PRELIGHT]    = @fg_color
117
  fg[SELECTED]    = @fg_color
118
  fg[INSENSITIVE] = mix (0.5, @fg_color, @bg_color)
119
  fg[ACTIVE]      = @fg_color
120
121
  text[NORMAL]      = @text_color
122
  text[PRELIGHT]    = @text_color
123
  text[SELECTED]    = @text_color
124
  text[INSENSITIVE] = mix (0.5, @text_color, @base_color)
125
  text[ACTIVE]      = @text_color
126
127
  base[NORMAL]      = @base_color
128
  base[PRELIGHT]    = mix (0.08, @text_color, @base_color)
129
  base[SELECTED]    = mix (0.24, @selected_bg_color, @base_color)
130
  base[INSENSITIVE] = mix (0.5, @base_color, @bg_color)
131
  base[ACTIVE]      = mix (0.24, @selected_bg_color, @base_color)
132
133
  # For succinctness, all reasonable pixmap options remain here
134
135
  # Draw frame around menu in a non-compositied environment
136
  # This needs to go before pixmap because we need to override some stuff
137
  engine "adwaita" {}
138
139
  engine "pixmap" {
140
141
    #################
142
    # Check Buttons #
143
    #################
144
145
    image {
146
      function        = CHECK
147
      state           = NORMAL
148
      shadow          = OUT
149
      overlay_file    = "assets/checkbox-unchecked.png"
150
      overlay_stretch = FALSE
151
    }
152
153
    image {
154
      function        = CHECK
155
      state           = PRELIGHT
156
      shadow          = OUT
157
      overlay_file    = "assets/checkbox-unchecked-hover.png"
158
      overlay_stretch = FALSE
159
    }
160
161
    image {
162
      function        = CHECK
163
      state           = ACTIVE
164
      shadow          = OUT
165
      overlay_file    = "assets/checkbox-unchecked-active.png"
166
      overlay_stretch = FALSE
167
    }
168
169
    image {
170
      function        = CHECK
171
      state           = SELECTED
172
      shadow          = OUT
173
      overlay_file    = "assets/checkbox-unchecked.png"
174
      overlay_stretch = FALSE
175
    }
176
177
    image {
178
      function        = CHECK
179
      state           = INSENSITIVE
180
      shadow          = OUT
181
      overlay_file    = "assets/checkbox-unchecked-disabled.png"
182
      overlay_stretch = FALSE
183
    }
184
185
    image {
186
      function        = CHECK
187
      state           = NORMAL
188
      shadow          = IN
189
      overlay_file    = "assets/checkbox-checked.png"
190
      overlay_stretch = FALSE
191
    }
192
193
    image {
194
      function        = CHECK
195
      state           = PRELIGHT
196
      shadow          = IN
197
      overlay_file    = "assets/checkbox-checked-hover.png"
198
      overlay_stretch = FALSE
199
    }
200
201
    image {
202
      function        = CHECK
203
      state           = ACTIVE
204
      shadow          = IN
205
      overlay_file    = "assets/checkbox-checked-active.png"
206
      overlay_stretch = FALSE
207
    }
208
209
    image {
210
      function        = CHECK
211
      state           = SELECTED
212
      shadow          = IN
213
      overlay_file    = "assets/checkbox-checked.png"
214
      overlay_stretch = FALSE
215
    }
216
217
    image {
218
      function        = CHECK
219
      state           = INSENSITIVE
220
      shadow          = IN
221
      overlay_file    = "assets/checkbox-checked-disabled.png"
222
      overlay_stretch = FALSE
223
    }
224
225
    image {
226
      function        = CHECK
227
      state           = NORMAL
228
      shadow          = ETCHED_IN
229
      overlay_file    = "assets/checkbox-mixed.png"
230
      overlay_stretch = FALSE
231
    }
232
233
    image {
234
      function        = CHECK
235
      state           = PRELIGHT
236
      shadow          = ETCHED_IN
237
      overlay_file    = "assets/checkbox-mixed-hover.png"
238
      overlay_stretch = FALSE
239
    }
240
241
    image {
242
      function        = CHECK
243
      state           = ACTIVE
244
      shadow          = ETCHED_IN
245
      overlay_file    = "assets/checkbox-mixed-active.png"
246
      overlay_stretch = FALSE
247
    }
248
249
    image {
250
      function        = CHECK
251
      state           = SELECTED
252
      shadow          = ETCHED_IN
253
      overlay_file    = "assets/checkbox-mixed.png"
254
      overlay_stretch = FALSE
255
    }
256
257
    image {
258
      function        = CHECK
259
      state           = INSENSITIVE
260
      shadow          = ETCHED_IN
261
      overlay_file    = "assets/checkbox-mixed-disabled.png"
262
      overlay_stretch = FALSE
263
    }
264
265
    #################
266
    # Radio Buttons #
267
    #################
268
269
    image {
270
      function        = OPTION
271
      state           = NORMAL
272
      shadow          = OUT
273
      overlay_file    = "assets/radio-unchecked.png"
274
      overlay_stretch = FALSE
275
    }
276
277
    image {
278
      function        = OPTION
279
      state           = PRELIGHT
280
      shadow          = OUT
281
      overlay_file    = "assets/radio-unchecked-hover.png"
282
      overlay_stretch = FALSE
283
    }
284
285
    image {
286
      function        = OPTION
287
      state           = ACTIVE
288
      shadow          = OUT
289
      overlay_file    = "assets/radio-unchecked-active.png"
290
      overlay_stretch = FALSE
291
    }
292
293
    image {
294
      function        = OPTION
295
      state           = SELECTED
296
      shadow          = OUT
297
      overlay_file    = "assets/radio-unchecked.png"
298
      overlay_stretch = FALSE
299
    }
300
301
    image {
302
      function        = OPTION
303
      state           = INSENSITIVE
304
      shadow          = OUT
305
      overlay_file    = "assets/radio-unchecked-disabled.png"
306
      overlay_stretch = FALSE
307
    }
308
309
    image {
310
      function        = OPTION
311
      state           = NORMAL
312
      shadow          = IN
313
      overlay_file    = "assets/radio-checked.png"
314
      overlay_stretch = FALSE
315
    }
316
317
    image {
318
      function        = OPTION
319
      state           = PRELIGHT
320
      shadow          = IN
321
      overlay_file    = "assets/radio-checked-hover.png"
322
      overlay_stretch = FALSE
323
    }
324
325
    image {
326
      function        = OPTION
327
      state           = ACTIVE
328
      shadow          = IN
329
      overlay_file    = "assets/radio-checked-active.png"
330
      overlay_stretch = FALSE
331
    }
332
333
    image {
334
      function        = OPTION
335
      state           = SELECTED
336
      shadow          = IN
337
      overlay_file    = "assets/radio-checked.png"
338
      overlay_stretch = FALSE
339
    }
340
341
    image {
342
      function        = OPTION
343
      state           = INSENSITIVE
344
      shadow          = IN
345
      overlay_file    = "assets/radio-checked-disabled.png"
346
      overlay_stretch = FALSE
347
    }
348
349
    image {
350
      function        = OPTION
351
      state           = NORMAL
352
      shadow          = ETCHED_IN
353
      overlay_file    = "assets/radio-mixed.png"
354
      overlay_stretch = FALSE
355
    }
356
357
    image {
358
      function        = OPTION
359
      state           = PRELIGHT
360
      shadow          = ETCHED_IN
361
      overlay_file    = "assets/radio-mixed-hover.png"
362
      overlay_stretch = FALSE
363
    }
364
365
    image {
366
      function        = OPTION
367
      state           = ACTIVE
368
      shadow          = ETCHED_IN
369
      overlay_file    = "assets/radio-mixed-active.png"
370
      overlay_stretch = FALSE
371
    }
372
373
    image {
374
      function        = OPTION
375
      state           = SELECTED
376
      shadow          = ETCHED_IN
377
      overlay_file    = "assets/radio-mixed.png"
378
      overlay_stretch = FALSE
379
    }
380
381
    image {
382
      function        = OPTION
383
      state           = INSENSITIVE
384
      shadow          = ETCHED_IN
385
      overlay_file    = "assets/radio-mixed-disabled.png"
386
      overlay_stretch = FALSE
387
    }
388
389
    ##########
390
    # Arrows #
391
    ##########
392
393
    # Overrides
394
395
    # Disable arrows in spinbuttons
396
    image {
397
      function = ARROW
398
      detail   = "spinbutton"
399
    }
400
401
    # Disable arrows for qt in scrollbars
402
403
    image {
404
      function = ARROW
405
      detail   = "vscrollbar"
406
    }
407
408
    image {
409
      function = ARROW
410
      detail   = "hscrollbar"
411
    }
412
413
    # Menu arrows
414
415
    image {
416
      function        = ARROW
417
      state           = NORMAL
418
      detail          = "menuitem"
419
      overlay_file    = "assets/pan-left.png"
420
      overlay_stretch = FALSE
421
      arrow_direction = LEFT
422
    }
423
424
    image {
425
      function        = ARROW
426
      state           = PRELIGHT
427
      detail          = "menuitem"
428
      overlay_file    = "assets/pan-left.png"
429
      overlay_stretch = FALSE
430
      arrow_direction = LEFT
431
    }
432
433
    image {
434
      function        = ARROW
435
      state           = INSENSITIVE
436
      detail          = "menuitem"
437
      overlay_file    = "assets/pan-left-disabled.png"
438
      overlay_stretch = FALSE
439
      arrow_direction = LEFT
440
    }
441
442
    image {
443
      function        = ARROW
444
      state           = NORMAL
445
      detail          = "menuitem"
446
      overlay_file    = "assets/pan-right.png"
447
      overlay_stretch = FALSE
448
      arrow_direction = RIGHT
449
    }
450
451
    image {
452
      function        = ARROW
453
      state           = PRELIGHT
454
      detail          = "menuitem"
455
      overlay_file    = "assets/pan-right.png"
456
      overlay_stretch = FALSE
457
      arrow_direction = RIGHT
458
    }
459
460
    image {
461
      function        = ARROW
462
      state           = INSENSITIVE
463
      detail          = "menuitem"
464
      overlay_file    = "assets/pan-right-disabled.png"
465
      overlay_stretch = FALSE
466
      arrow_direction = RIGHT
467
    }
468
469
    image {
470
      function        = ARROW
471
      state           = INSENSITIVE
472
      detail          = "menu_scroll_arrow_up"
473
      overlay_file    = "assets/pan-up-disabled.png"
474
      overlay_stretch = FALSE
475
    }
476
477
    image {
478
      function        = ARROW
479
      detail          = "menu_scroll_arrow_up"
480
      overlay_file    = "assets/pan-up.png"
481
      overlay_stretch = FALSE
482
    }
483
484
    image {
485
      function        = ARROW
486
      state           = INSENSITIVE
487
      detail          = "menu_scroll_arrow_down"
488
      overlay_file    = "assets/pan-down-disabled.png"
489
      overlay_stretch = FALSE
490
    }
491
492
    image {
493
      function        = ARROW
494
      detail          = "menu_scroll_arrow_down"
495
      overlay_file    = "assets/pan-down.png"
496
      overlay_stretch = FALSE
497
    }
498
499
    # Regular arrows
500
501
    image {
502
      function        = ARROW
503
      state           = NORMAL
504
      overlay_file    = "assets/pan-up-alt.png"
505
      overlay_stretch = FALSE
506
      arrow_direction = UP
507
    }
508
509
    image {
510
      function        = ARROW
511
      state           = PRELIGHT
512
      overlay_file    = "assets/pan-up.png"
513
      overlay_stretch = FALSE
514
      arrow_direction = UP
515
    }
516
517
    image {
518
      function        = ARROW
519
      state           = ACTIVE
520
      overlay_file    = "assets/pan-up.png"
521
      overlay_stretch = FALSE
522
      arrow_direction = UP
523
    }
524
525
    image {
526
      function        = ARROW
527
      state           = INSENSITIVE
528
      overlay_file    = "assets/pan-up-alt-disabled.png"
529
      overlay_stretch = FALSE
530
      arrow_direction = UP
531
    }
532
533
    image {
534
      function        = ARROW
535
      state           = NORMAL
536
      overlay_file    = "assets/pan-down-alt.png"
537
      overlay_stretch = FALSE
538
      arrow_direction = DOWN
539
    }
540
541
    image {
542
      function        = ARROW
543
      state           = PRELIGHT
544
      overlay_file    = "assets/pan-down.png"
545
      overlay_stretch = FALSE
546
      arrow_direction = DOWN
547
    }
548
549
    image {
550
      function        = ARROW
551
      state           = ACTIVE
552
      overlay_file    = "assets/pan-down.png"
553
      overlay_stretch = FALSE
554
      arrow_direction = DOWN
555
    }
556
557
    image {
558
      function        = ARROW
559
      state           = INSENSITIVE
560
      overlay_file    = "assets/pan-down-alt-disabled.png"
561
      overlay_stretch = FALSE
562
      arrow_direction = DOWN
563
    }
564
565
    image {
566
      function        = ARROW
567
      state           = NORMAL
568
      overlay_file    = "assets/pan-left-alt.png"
569
      overlay_stretch = FALSE
570
      arrow_direction = LEFT
571
    }
572
573
    image {
574
      function        = ARROW
575
      state           = PRELIGHT
576
      overlay_file    = "assets/pan-left.png"
577
      overlay_stretch = FALSE
578
      arrow_direction = LEFT
579
    }
580
581
    image {
582
      function        = ARROW
583
      state           = ACTIVE
584
      overlay_file    = "assets/pan-left.png"
585
      overlay_stretch = FALSE
586
      arrow_direction = LEFT
587
    }
588
589
    image {
590
      function        = ARROW
591
      state           = INSENSITIVE
592
      overlay_file    = "assets/pan-left-alt-disabled.png"
593
      overlay_stretch = FALSE
594
      arrow_direction = LEFT
595
    }
596
597
    image {
598
      function        = ARROW
599
      state           = NORMAL
600
      overlay_file    = "assets/pan-right-alt.png"
601
      overlay_stretch = FALSE
602
      arrow_direction = RIGHT
603
    }
604
605
    image {
606
      function        = ARROW
607
      state           = PRELIGHT
608
      overlay_file    = "assets/pan-right.png"
609
      overlay_stretch = FALSE
610
      arrow_direction = RIGHT
611
    }
612
613
    image {
614
      function        = ARROW
615
      state           = ACTIVE
616
      overlay_file    = "assets/pan-right.png"
617
      overlay_stretch = FALSE
618
      arrow_direction = RIGHT
619
    }
620
621
    image {
622
      function        = ARROW
623
      state           = INSENSITIVE
624
      overlay_file    = "assets/pan-right-alt-disabled.png"
625
      overlay_stretch = FALSE
626
      arrow_direction = RIGHT
627
    }
628
629
    ######################
630
    # Option Menu Arrows #
631
    ######################
632
633
    image {
634
      function        = TAB
635
      state           = NORMAL
636
      overlay_file    = "assets/pan-down-alt.png"
637
      overlay_stretch = FALSE
638
    }
639
640
    image {
641
      function        = TAB
642
      state           = PRELIGHT
643
      overlay_file    = "assets/pan-down.png"
644
      overlay_stretch = FALSE
645
    }
646
647
    image {
648
      function        = TAB
649
      state           = ACTIVE
650
      overlay_file    = "assets/pan-down.png"
651
      overlay_stretch = FALSE
652
    }
653
654
    image {
655
      function        = TAB
656
      state           = INSENSITIVE
657
      overlay_file    = "assets/pan-down-alt-disabled.png"
658
      overlay_stretch = FALSE
659
    }
660
661
    #########
662
    # Lines #
663
    #########
664
665
    image {
666
      function = VLINE
667
      file     = "assets/border.png"
668
      border   = {1, 0, 0, 0}
669
    }
670
671
    image {
672
      function = HLINE
673
      file     = "assets/border.png"
674
      border   = {0, 0, 1, 0}
675
    }
676
677
    #########
678
    # Focus #
679
    #########
680
681
    image {
682
      function = FOCUS
683
      file     = "assets/focus.png"
684
      border   = {5, 5, 5, 5} # Super strange, {4, 4, 4, 4} does not work properly...
685
      stretch  = TRUE
686
    }
687
688
    ###########
689
    # Handles #
690
    ###########
691
692
    image {
693
      function        = HANDLE
694
      detail          = "handlebox"
695
      overlay_file    = "assets/handle-vert.png"
696
      overlay_stretch = FALSE
697
    }
698
699
    image {
700
      function        = HANDLE
701
      state           = NORMAL
702
      overlay_file    = "assets/handle-horz.png"
703
      overlay_stretch = FALSE
704
      orientation     = HORIZONTAL
705
    }
706
707
    image {
708
      function        = HANDLE
709
      state           = PRELIGHT
710
      overlay_file    = "assets/handle-horz-hover.png"
711
      overlay_stretch = FALSE
712
      orientation     = HORIZONTAL
713
    }
714
715
    image {
716
      function        = HANDLE
717
      state           = ACTIVE
718
      overlay_file    = "assets/handle-horz-active.png"
719
      overlay_stretch = FALSE
720
      orientation     = HORIZONTAL
721
    }
722
723
    image {
724
      function        = HANDLE
725
      state           = NORMAL
726
      overlay_file    = "assets/handle-vert.png"
727
      overlay_stretch = FALSE
728
      orientation     = VERTICAL
729
    }
730
731
    image {
732
      function        = HANDLE
733
      state           = PRELIGHT
734
      overlay_file    = "assets/handle-vert-hover.png"
735
      overlay_stretch = FALSE
736
      orientation     = VERTICAL
737
    }
738
739
    image {
740
      function        = HANDLE
741
      state           = ACTIVE
742
      overlay_file    = "assets/handle-vert-active.png"
743
      overlay_stretch = FALSE
744
      orientation     = VERTICAL
745
    }
746
747
    image {
748
      function = RESIZE_GRIP
749
    }
750
751
    #############
752
    # Expanders #
753
    #############
754
755
    image {
756
      function       = EXPANDER
757
      expander_style = EXPANDED
758
      state          = NORMAL
759
      file           = "assets/pan-down-alt.png"
760
    }
761
762
    image {
763
      function       = EXPANDER
764
      expander_style = EXPANDED
765
      state          = PRELIGHT
766
      file           = "assets/pan-down.png"
767
    }
768
769
    image {
770
      function       = EXPANDER
771
      expander_style = EXPANDED
772
      state          = ACTIVE
773
      file           = "assets/pan-down.png"
774
    }
775
776
    image {
777
      function       = EXPANDER
778
      expander_style = EXPANDED
779
      state          = INSENSITIVE
780
      file           = "assets/pan-down-alt-disabled.png"
781
    }
782
783
    # LTR
784
785
    image {
786
      function       = EXPANDER
787
      expander_style = COLLAPSED
788
      state          = NORMAL
789
      file           = "assets/pan-right-alt.png"
790
      direction      = LTR
791
    }
792
793
    image {
794
      function       = EXPANDER
795
      expander_style = COLLAPSED
796
      state          = PRELIGHT
797
      file           = "assets/pan-right.png"
798
      direction      = LTR
799
    }
800
801
    image {
802
      function       = EXPANDER
803
      expander_style = COLLAPSED
804
      state          = ACTIVE
805
      file           = "assets/pan-right.png"
806
      direction      = LTR
807
    }
808
809
    image {
810
      function       = EXPANDER
811
      expander_style = COLLAPSED
812
      state          = INSENSITIVE
813
      file           = "assets/pan-right-alt-disabled.png"
814
      direction      = LTR
815
    }
816
817
    image {
818
      function       = EXPANDER
819
      expander_style = SEMI_COLLAPSED
820
      file           = "assets/pan-right-semi.png"
821
      direction      = LTR
822
    }
823
824
    image {
825
      function       = EXPANDER
826
      expander_style = SEMI_EXPANDED
827
      file           = "assets/pan-right-semi.png"
828
      direction      = LTR
829
    }
830
831
    # RTL
832
833
    image {
834
      function       = EXPANDER
835
      expander_style = COLLAPSED
836
      state          = NORMAL
837
      file           = "assets/pan-left-alt.png"
838
      direction      = RTL
839
    }
840
841
    image {
842
      function       = EXPANDER
843
      expander_style = COLLAPSED
844
      state          = PRELIGHT
845
      file           = "assets/pan-left.png"
846
      direction      = RTL
847
    }
848
849
    image {
850
      function       = EXPANDER
851
      expander_style = COLLAPSED
852
      state          = ACTIVE
853
      file           = "assets/pan-left.png"
854
      direction      = RTL
855
    }
856
857
    image {
858
      function       = EXPANDER
859
      expander_style = COLLAPSED
860
      state          = INSENSITIVE
861
      file           = "assets/pan-left-alt-disabled.png"
862
      direction      = RTL
863
    }
864
865
    image {
866
      function       = EXPANDER
867
      expander_style = SEMI_COLLAPSED
868
      file           = "assets/pan-left-semi.png"
869
      direction      = RTL
870
    }
871
872
    image {
873
      function       = EXPANDER
874
      expander_style = SEMI_EXPANDED
875
      file           = "assets/pan-left-semi.png"
876
      direction      = RTL
877
    }
878
879
    #############
880
    # Notebooks #
881
    #############
882
883
    # Left
884
885
    image {
886
      function = EXTENSION
887
      state    = NORMAL
888
      file     = "assets/tab.png"
889
      border   = {0, 1, 0, 0}
890
      stretch  = TRUE
891
      gap_side = RIGHT
892
    }
893
894
    image {
895
      function = EXTENSION
896
      gap_side = RIGHT
897
    }
898
899
    # Right
900
901
    image {
902
      function = EXTENSION
903
      state    = NORMAL
904
      file     = "assets/tab.png"
905
      border   = {1, 0, 0, 0}
906
      stretch  = TRUE
907
      gap_side = LEFT
908
    }
909
910
    image {
911
      function = EXTENSION
912
      gap_side = LEFT
913
    }
914
915
    # Up
916
917
    image {
918
      function = EXTENSION
919
      state    = NORMAL
920
      file     = "assets/tab.png"
921
      border   = {0, 0, 0, 1}
922
      stretch  = TRUE
923
      gap_side = BOTTOM
924
    }
925
926
    image {
927
      function = EXTENSION
928
      gap_side = BOTTOM
929
    }
930
931
    # Down
932
933
    image {
934
      function = EXTENSION
935
      state    = NORMAL
936
      file     = "assets/tab.png"
937
      border   = {0, 0, 1, 0}
938
      stretch  = TRUE
939
      gap_side = TOP
940
    }
941
942
    image {
943
      function = EXTENSION
944
      gap_side = TOP
945
    }
946
947
    # Inner frame
948
949
    image {
950
      function   = BOX_GAP
951
      detail     = "notebook"
952
      file       = "assets/frame-notebook.png"
953
      border     = {1, 1, 1, 1}
954
      stretch    = TRUE
955
      gap_file   = "assets/tab.png"
956
      gap_border = {1, 0, 0, 0}
957
      gap_side   = LEFT
958
    }
959
960
    image {
961
      function   = BOX_GAP
962
      detail     = "notebook"
963
      file       = "assets/frame-notebook.png"
964
      border     = {1, 1, 1, 1}
965
      stretch    = TRUE
966
      gap_file   = "assets/tab.png"
967
      gap_border = {0, 1, 0, 0}
968
      gap_side   = RIGHT
969
    }
970
971
    image {
972
      function   = BOX_GAP
973
      detail     = "notebook"
974
      file       = "assets/frame-notebook.png"
975
      border     = {1, 1, 1, 1}
976
      stretch    = TRUE
977
      gap_file   = "assets/tab.png"
978
      gap_border = {0, 0, 1, 0}
979
      gap_side   = TOP
980
    }
981
982
    image {
983
      function   = BOX_GAP
984
      detail     = "notebook"
985
      file       = "assets/frame-notebook.png"
986
      border     = {1, 1, 1, 1}
987
      stretch    = TRUE
988
      gap_file   = "assets/tab.png"
989
      gap_border = {0, 0, 0, 1}
990
      gap_side   = BOTTOM
991
    }
992
993
    # Standalone frame
994
    image {
995
      function = BOX
996
      detail   = "notebook"
997
      file     = "assets/frame-notebook.png"
998
      border   = {1, 1, 1, 1}
999
      stretch  = TRUE
1000
    }
1001
1002
    ##############
1003
    # Scrollbars #
1004
    ##############
1005
1006
    image {
1007
      function    = BOX
1008
      detail      = "trough"
1009
      file        = "assets/scrollbar-horz-trough.png"
1010
      border      = {0, 0, 1, 0}
1011
      orientation = HORIZONTAL
1012
    }
1013
1014
    image {
1015
      function    = BOX
1016
      detail      = "trough"
1017
      file        = "assets/scrollbar-vert-ltr-trough.png"
1018
      border      = {1, 0, 0, 0}
1019
      orientation = VERTICAL
1020
      direction   = LTR
1021
    }
1022
1023
    image {
1024
      function    = BOX
1025
      detail      = "trough"
1026
      file        = "assets/scrollbar-vert-rtl-trough.png"
1027
      border      = {0, 1, 0, 0}
1028
      orientation = VERTICAL
1029
      direction   = RTL
1030
    }
1031
1032
    # Horizontal sliders
1033
1034
    image {
1035
      function    = SLIDER
1036
      state       = NORMAL
1037
      detail      = "slider"
1038
      file        = "assets/scrollbar-horz-slider.png"
1039
      border      = {8, 8, 9, 8 }
1040
      stretch     = TRUE
1041
      orientation = HORIZONTAL
1042
    }
1043
1044
    image {
1045
      function    = SLIDER
1046
      state       = PRELIGHT
1047
      detail      = "slider"
1048
      file        = "assets/scrollbar-horz-slider-hover.png"
1049
      border      = {8, 8, 9, 8 }
1050
      stretch     = TRUE
1051
      orientation = HORIZONTAL
1052
    }
1053
1054
    image {
1055
      function    = SLIDER
1056
      state       = ACTIVE
1057
      detail      = "slider"
1058
      file        = "assets/scrollbar-horz-slider-active.png"
1059
      border      = {8, 8, 9, 8 }
1060
      stretch     = TRUE
1061
      orientation = HORIZONTAL
1062
    }
1063
1064
    image {
1065
      function    = SLIDER
1066
      state       = INSENSITIVE
1067
      detail      = "slider"
1068
      file        = "assets/scrollbar-horz-slider-disabled.png"
1069
      border      = {8, 8, 9, 8 }
1070
      stretch     = TRUE
1071
      orientation = HORIZONTAL
1072
    }
1073
1074
    # Vertical sliders
1075
1076
    image {
1077
      function    = SLIDER
1078
      state       = NORMAL
1079
      detail      = "slider"
1080
      file        = "assets/scrollbar-vert-ltr-slider.png"
1081
      border      = {9, 8, 8, 8}
1082
      stretch     = TRUE
1083
      orientation = VERTICAL
1084
      direction   = LTR
1085
    }
1086
1087
    image {
1088
      function    = SLIDER
1089
      state       = PRELIGHT
1090
      detail      = "slider"
1091
      file        = "assets/scrollbar-vert-ltr-slider-hover.png"
1092
      border      = {9, 8, 8, 8}
1093
      stretch     = TRUE
1094
      orientation = VERTICAL
1095
      direction   = LTR
1096
    }
1097
1098
    image {
1099
      function    = SLIDER
1100
      state       = ACTIVE
1101
      detail      = "slider"
1102
      file        = "assets/scrollbar-vert-ltr-slider-active.png"
1103
      border      = {9, 8, 8, 8}
1104
      stretch     = TRUE
1105
      orientation = VERTICAL
1106
      direction   = LTR
1107
    }
1108
1109
    image {
1110
      function    = SLIDER
1111
      state       = INSENSITIVE
1112
      detail      = "slider"
1113
      file        = "assets/scrollbar-vert-ltr-slider-disabled.png"
1114
      border      = {9, 8, 8, 8}
1115
      stretch     = TRUE
1116
      orientation = VERTICAL
1117
      direction   = LTR
1118
    }
1119
1120
    # RTL
1121
1122
    image {
1123
      function    = SLIDER
1124
      state       = NORMAL
1125
      detail      = "slider"
1126
      file        = "assets/scrollbar-vert-rtl-slider.png"
1127
      border      = {8, 9, 8, 8}
1128
      stretch     = TRUE
1129
      orientation = VERTICAL
1130
      direction   = RTL
1131
    }
1132
1133
    image {
1134
      function    = SLIDER
1135
      state       = PRELIGHT
1136
      detail      = "slider"
1137
      file        = "assets/scrollbar-vert-rtl-slider-hover.png"
1138
      border      = {8, 9, 8, 8}
1139
      stretch     = TRUE
1140
      orientation = VERTICAL
1141
      direction   = RTL
1142
    }
1143
1144
    image {
1145
      function    = SLIDER
1146
      state       = ACTIVE
1147
      detail      = "slider"
1148
      file        = "assets/scrollbar-vert-rtl-slider-active.png"
1149
      border      = {8, 9, 8, 8}
1150
      stretch     = TRUE
1151
      orientation = VERTICAL
1152
      direction   = RTL
1153
    }
1154
1155
    image {
1156
      function    = SLIDER
1157
      state       = INSENSITIVE
1158
      detail      = "slider"
1159
      file        = "assets/scrollbar-vert-rtl-slider-disabled.png"
1160
      border      = {8, 9, 8, 8}
1161
      stretch     = TRUE
1162
      orientation = VERTICAL
1163
      direction   = RTL
1164
    }
1165
1166
    ##########
1167
    # Scales #
1168
    ##########
1169
1170
    # Troughs, overrided later on. We set them here too because some widgets
1171
    # don't specify their orientation.
1172
1173
    image {
1174
      function    = BOX
1175
      detail      = "trough-upper"
1176
      file        = "assets/scale-horz-trough.png"
1177
      border      = {6, 6, 0, 0}
1178
      stretch     = TRUE
1179
      orientation = HORIZONTAL
1180
    }
1181
1182
    image {
1183
      function    = BOX
1184
      state       = INSENSITIVE
1185
      detail      = "trough-upper"
1186
      file        = "assets/scale-horz-trough-disabled.png"
1187
      border      = {6, 6, 0, 0}
1188
      stretch     = TRUE
1189
      orientation = HORIZONTAL
1190
    }
1191
1192
    image {
1193
      function    = BOX
1194
      detail      = "trough-lower"
1195
      file        = "assets/scale-horz-trough-active.png"
1196
      border      = {6, 6, 0, 0}
1197
      stretch     = TRUE
1198
      orientation = HORIZONTAL
1199
    }
1200
1201
    image {
1202
      function    = BOX
1203
      state       = INSENSITIVE
1204
      detail      = "trough-lower"
1205
      file        = "assets/scale-horz-trough-disabled.png"
1206
      border      = {6, 6, 0, 0}
1207
      stretch     = TRUE
1208
      orientation = HORIZONTAL
1209
    }
1210
1211
    image {
1212
      function    = BOX
1213
      detail      = "trough-upper"
1214
      file        = "assets/scale-vert-trough.png"
1215
      border      = {0, 0, 6, 6}
1216
      stretch     = TRUE
1217
      orientation = VERTICAL
1218
    }
1219
1220
    image {
1221
      function    = BOX
1222
      state       = INSENSITIVE
1223
      detail      = "trough-upper"
1224
      file        = "assets/scale-vert-trough-disabled.png"
1225
      border      = {0, 0, 6, 6}
1226
      stretch     = TRUE
1227
      orientation = VERTICAL
1228
    }
1229
1230
    image {
1231
      function    = BOX
1232
      detail      = "trough-lower"
1233
      file        = "assets/scale-vert-trough-active.png"
1234
      border      = {0, 0, 6, 6}
1235
      stretch     = TRUE
1236
      orientation = VERTICAL
1237
    }
1238
1239
    image {
1240
      function    = BOX
1241
      state       = INSENSITIVE
1242
      detail      = "trough-lower"
1243
      file        = "assets/scale-vert-trough-disabled.png"
1244
      border      = {0, 0, 6, 6}
1245
      stretch     = TRUE
1246
      orientation = VERTICAL
1247
    }
1248
1249
    # Sliders
1250
1251
    image {
1252
      function = SLIDER
1253
      state    = NORMAL
1254
      detail   = "hscale"
1255
      file     = "assets/scale-slider.png"
1256
    }
1257
1258
    image {
1259
      function = SLIDER
1260
      state    = PRELIGHT
1261
      detail   = "hscale"
1262
      file     = "assets/scale-slider-hover.png"
1263
    }
1264
1265
    image {
1266
      function = SLIDER
1267
      state    = ACTIVE
1268
      detail   = "hscale"
1269
      file     = "assets/scale-slider-active.png"
1270
    }
1271
1272
    image {
1273
      function = SLIDER
1274
      state    = INSENSITIVE
1275
      detail   = "hscale"
1276
      file     = "assets/scale-slider-disabled.png"
1277
    }
1278
1279
    image {
1280
      function = SLIDER
1281
      state    = NORMAL
1282
      detail   = "vscale"
1283
      file     = "assets/scale-slider.png"
1284
    }
1285
1286
    image {
1287
      function = SLIDER
1288
      state    = PRELIGHT
1289
      detail   = "vscale"
1290
      file     = "assets/scale-slider-hover.png"
1291
    }
1292
1293
    image {
1294
      function = SLIDER
1295
      state    = ACTIVE
1296
      detail   = "vscale"
1297
      file     = "assets/scale-slider-active.png"
1298
    }
1299
1300
    image {
1301
      function = SLIDER
1302
      state    = INSENSITIVE
1303
      detail   = "vscale"
1304
      file     = "assets/scale-slider-disabled.png"
1305
    }
1306
1307
    ###########
1308
    # Menubar #
1309
    ###########
1310
1311
    image {
1312
      function = BOX
1313
      detail   = "menubar"
1314
      file     = "assets/border.png"
1315
      border   = {0, 0, 0, 1}
1316
    }
1317
1318
    #########
1319
    # Menus #
1320
    #########
1321
1322
    image {
1323
      function = BOX
1324
      state    = PRELIGHT
1325
      detail   = "menu_scroll_arrow_up"
1326
      file     = "assets/border.png"
1327
    }
1328
1329
    image {
1330
      function = BOX
1331
      detail   = "menu_scroll_arrow_up"
1332
      file     = "assets/border.png"
1333
      border   = {0, 0, 0, 1}
1334
    }
1335
1336
    image {
1337
      function = BOX
1338
      state    = PRELIGHT
1339
      detail   = "menu_scroll_arrow_down"
1340
      file     = "assets/border.png"
1341
    }
1342
1343
    image {
1344
      function = BOX
1345
      detail   = "menu_scroll_arrow_down"
1346
      file     = "assets/border.png"
1347
      border   = {0, 0, 1, 0}
1348
    }
1349
1350
    ###########
1351
    # Entries #
1352
    ###########
1353
1354
    image {
1355
      function = SHADOW
1356
      state    = ACTIVE
1357
      detail   = "entry"
1358
      file     = "assets/entry-active.png"
1359
      border   = {6, 6, 6, 6}
1360
      stretch  = TRUE
1361
    }
1362
1363
    image {
1364
      function = SHADOW
1365
      state    = INSENSITIVE
1366
      detail   = "entry"
1367
      file     = "assets/entry-disabled.png"
1368
      border   = {6, 6, 6, 6}
1369
      stretch  = TRUE
1370
    }
1371
1372
    image {
1373
      function = SHADOW
1374
      detail   = "entry"
1375
      file     = "assets/entry.png"
1376
      border   = {6, 6, 6, 6}
1377
      stretch  = TRUE
1378
    }
1379
1380
    image {
1381
      function = FLAT_BOX
1382
      state    = ACTIVE
1383
      detail   = "entry_bg"
1384
      file     = "assets/entry-background.png"
1385
    }
1386
1387
    image {
1388
      function = FLAT_BOX
1389
      state    = INSENSITIVE
1390
      detail   = "entry_bg"
1391
      file     = "assets/entry-background-disabled.png"
1392
    }
1393
1394
    image {
1395
      function = FLAT_BOX
1396
      detail   = "entry_bg"
1397
      file     = "assets/entry-background.png"
1398
    }
1399
1400
    #########
1401
    # Spins #
1402
    #########
1403
1404
    # Spin-Up LTR
1405
1406
    image {
1407
      function        = BOX
1408
      state           = NORMAL
1409
      detail          = "spinbutton_up"
1410
      file            = "assets/spin-ltr-up.png"
1411
      border          = {0, 8, 8, 0}
1412
      stretch         = TRUE
1413
      overlay_file    = "assets/pan-up-alt.png"
1414
      overlay_stretch = FALSE
1415
      direction       = LTR
1416
    }
1417
1418
    image {
1419
      function        = BOX
1420
      state           = PRELIGHT
1421
      detail          = "spinbutton_up"
1422
      file            = "assets/spin-ltr-up-hover.png"
1423
      border          = {0, 8, 8, 0}
1424
      stretch         = TRUE
1425
      overlay_file    = "assets/pan-up.png"
1426
      overlay_stretch = FALSE
1427
      direction       = LTR
1428
    }
1429
1430
    image {
1431
      function        = BOX
1432
      state           = ACTIVE
1433
      detail          = "spinbutton_up"
1434
      file            = "assets/spin-ltr-up-active.png"
1435
      border          = {0, 8, 8, 0}
1436
      stretch         = TRUE
1437
      overlay_file    = "assets/pan-up.png"
1438
      overlay_stretch = FALSE
1439
      direction       = LTR
1440
    }
1441
1442
    image {
1443
      function        = BOX
1444
      state           = INSENSITIVE
1445
      detail          = "spinbutton_up"
1446
      file            = "assets/spin-ltr-up-disabled.png"
1447
      border          = {0, 8, 8, 0}
1448
      stretch         = TRUE
1449
      overlay_file    = "assets/pan-up-alt-disabled.png"
1450
      overlay_stretch = FALSE
1451
      direction       = LTR
1452
    }
1453
1454
    # Spin-Up RTL
1455
1456
    image {
1457
      function        = BOX
1458
      state           = NORMAL
1459
      detail          = "spinbutton_up"
1460
      file            = "assets/spin-rtl-up.png"
1461
      border          = {8, 0, 8, 0}
1462
      stretch         = TRUE
1463
      overlay_file    = "assets/pan-up-alt.png"
1464
      overlay_stretch = FALSE
1465
      direction       = RTL
1466
    }
1467
1468
    image {
1469
      function        = BOX
1470
      state           = PRELIGHT
1471
      detail          = "spinbutton_up"
1472
      file            = "assets/spin-rtl-up-hover.png"
1473
      border          = {8, 0, 8, 0}
1474
      stretch         = TRUE
1475
      overlay_file    = "assets/pan-up.png"
1476
      overlay_stretch = FALSE
1477
      direction       = RTL
1478
    }
1479
1480
    image {
1481
      function        = BOX
1482
      state           = ACTIVE
1483
      detail          = "spinbutton_up"
1484
      file            = "assets/spin-rtl-up-hover.png"
1485
      border          = {8, 0, 8, 0}
1486
      stretch         = TRUE
1487
      overlay_file    = "assets/pan-up.png"
1488
      overlay_stretch = FALSE
1489
      direction       = RTL
1490
    }
1491
1492
    image {
1493
      function        = BOX
1494
      state           = INSENSITIVE
1495
      detail          = "spinbutton_up"
1496
      file            = "assets/spin-rtl-up-disabled.png"
1497
      border          = {8, 0, 8, 0}
1498
      stretch         = TRUE
1499
      overlay_file    = "assets/pan-up-alt-disabled.png"
1500
      overlay_stretch = FALSE
1501
      direction       = RTL
1502
    }
1503
1504
    # Spin-Down LTR
1505
1506
    image {
1507
      function        = BOX
1508
      state           = NORMAL
1509
      detail          = "spinbutton_down"
1510
      file            = "assets/spin-ltr-down.png"
1511
      border          = {0, 8, 0, 8}
1512
      stretch         = TRUE
1513
      overlay_file    = "assets/pan-down-alt.png"
1514
      overlay_stretch = FALSE
1515
      direction       = LTR
1516
    }
1517
1518
    image {
1519
      function        = BOX
1520
      state           = PRELIGHT
1521
      detail          = "spinbutton_down"
1522
      file            = "assets/spin-ltr-down-hover.png"
1523
      border          = {0, 8, 0, 8}
1524
      stretch         = TRUE
1525
      overlay_file    = "assets/pan-down.png"
1526
      overlay_stretch = FALSE
1527
      direction       = LTR
1528
    }
1529
1530
    image {
1531
      function        = BOX
1532
      state           = ACTIVE
1533
      detail          = "spinbutton_down"
1534
      file            = "assets/spin-ltr-down-active.png"
1535
      border          = {0, 8, 0, 8}
1536
      stretch         = TRUE
1537
      overlay_file    = "assets/pan-down.png"
1538
      overlay_stretch = FALSE
1539
      direction       = LTR
1540
    }
1541
1542
    image {
1543
      function        = BOX
1544
      state           = INSENSITIVE
1545
      detail          = "spinbutton_down"
1546
      file            = "assets/spin-ltr-down-disabled.png"
1547
      border          = {0, 8, 0, 8}
1548
      stretch         = TRUE
1549
      overlay_file    = "assets/pan-down-alt-disabled.png"
1550
      overlay_stretch = FALSE
1551
      direction       = LTR
1552
    }
1553
1554
    # Spin-Down RTL
1555
1556
    image {
1557
      function        = BOX
1558
      state           = NORMAL
1559
      detail          = "spinbutton_down"
1560
      file            = "assets/spin-rtl-down.png"
1561
      border          = {8, 0, 0, 8}
1562
      stretch         = TRUE
1563
      overlay_file    = "assets/pan-down-alt.png"
1564
      overlay_stretch = FALSE
1565
      direction       = RTL
1566
    }
1567
1568
    image {
1569
      function        = BOX
1570
      state           = PRELIGHT
1571
      detail          = "spinbutton_down"
1572
      file            = "assets/spin-rtl-down-hover.png"
1573
      border          = {8, 0, 0, 8}
1574
      stretch         = TRUE
1575
      overlay_file    = "assets/pan-down.png"
1576
      overlay_stretch = FALSE
1577
      direction       = RTL
1578
    }
1579
1580
    image {
1581
      function        = BOX
1582
      state           = ACTIVE
1583
      detail          = "spinbutton_down"
1584
      file            = "assets/spin-rtl-down-active.png"
1585
      border          = {8, 0, 0, 8}
1586
      stretch         = TRUE
1587
      overlay_file    = "assets/pan-down.png"
1588
      overlay_stretch = FALSE
1589
      direction       = RTL
1590
    }
1591
1592
    image {
1593
      function        = BOX
1594
      state           = INSENSITIVE
1595
      detail          = "spinbutton_down"
1596
      file            = "assets/spin-rtl-down-disabled.png"
1597
      border          = {8, 0, 0, 8}
1598
      stretch         = TRUE
1599
      overlay_file    = "assets/pan-down-alt-disabled.png"
1600
      overlay_stretch = FALSE
1601
      direction       = RTL
1602
    }
1603
1604
    ##############
1605
    # Scrollbars #
1606
    ##############
1607
1608
    image {
1609
      function    = BOX
1610
      detail      = "bar"
1611
      file        = "assets/progressbar-progress.png"
1612
      stretch     = TRUE
1613
      border      = {0, 0, 0, 0}
1614
      orientation = HORIZONTAL
1615
    }
1616
1617
    image {
1618
      function    = BOX
1619
      detail      = "bar"
1620
      file        = "assets/progressbar-progress.png"
1621
      stretch     = TRUE
1622
      border      = {0, 0, 0, 0}
1623
      orientation = VERTICAL
1624
    }
1625
1626
    #############
1627
    # Treeviews #
1628
    #############
1629
1630
    # Disable active the column highlight
1631
    # We need to match specific cells or we break stuff
1632
    # Looking at you deadbeef
1633
1634
    image {
1635
      function = FLAT_BOX
1636
      detail   = "cell_even_sorted"
1637
      state    = NORMAL
1638
    }
1639
1640
    image {
1641
      function = FLAT_BOX
1642
      detail   = "cell_odd_sorted"
1643
      state    = NORMAL
1644
    }
1645
1646
    # Disable all the other shadows
1647
    # This prevents the Raleigh effect
1648
    image {
1649
      function = SHADOW
1650
    }
1651
  }
1652
}
1653
1654
style "menubar" {
1655
  bg[NORMAL]      = @titlebar_bg_color
1656
  fg[NORMAL]      = mix(0.7, @titlebar_fg_color, @titlebar_bg_color)
1657
  fg[PRELIGHT]    = @titlebar_fg_color
1658
  fg[INSENSITIVE] = mix(0.3, @titlebar_fg_color, @titlebar_bg_color)
1659
  bg[INSENSITIVE] = @bg_color
1660
  # Needed to fix Firefox's menubar text
1661
  bg[SELECTED]    = mix(0.12, @titlebar_fg_color, @titlebar_bg_color)
1662
  fg[SELECTED]    = @titlebar_fg_color
1663
}
1664
1665
style "menubar_item" {
1666
  xthickness = 3
1667
  ythickness = 4
1668
1669
  fg[NORMAL]      = mix(0.7, @titlebar_fg_color, @titlebar_bg_color)
1670
  bg[PRELIGHT]    = mix(0.12, @titlebar_fg_color, @titlebar_bg_color)
1671
  fg[PRELIGHT]    = @titlebar_fg_color
1672
  fg[INSENSITIVE] = mix(0.3, @titlebar_fg_color, @titlebar_bg_color)
1673
}
1674
1675
style "menu" {
1676
  xthickness = 0
1677
  ythickness = 0
1678
1679
  bg[NORMAL]      = @menu_color
1680
  bg[INSENSITIVE] = @menu_color
1681
  bg[PRELIGHT]    = @menu_color
1682
  bg[SELECTED]    = mix(0.08, @fg_color, @menu_color)
1683
}
1684
1685
style "menu_item" {
1686
  xthickness = 4
1687
  ythickness = 4
1688
1689
  bg[PRELIGHT]   = mix(0.08, @fg_color, @menu_color)
1690
  fg[PRELIGHT]   = @fg_color
1691
  # Chromium uses this setting
1692
  bg[SELECTED]   = mix(0.08, @fg_color, @menu_color)
1693
  text[SELECTED] = @fg_color
1694
  # Some widgets use text, we need to handle that
1695
  text[NORMAL]   = @fg_color
1696
  text[PRELIGHT] = @fg_color
1697
1698
  # Unfortunately we can't tell regular and menu checks/radios apart
1699
  # Without the heirarchy
1700
  engine "pixmap" {
1701
1702
    #################
1703
    # Check Buttons #
1704
    #################
1705
1706
    image {
1707
      function        = CHECK
1708
      state           = NORMAL
1709
      shadow          = OUT
1710
      overlay_file    = "assets/menu-checkbox-unchecked.png"
1711
      overlay_stretch = FALSE
1712
    }
1713
1714
    image {
1715
      function        = CHECK
1716
      state           = PRELIGHT
1717
      shadow          = OUT
1718
      overlay_file    = "assets/menu-checkbox-unchecked.png"
1719
      overlay_stretch = FALSE
1720
    }
1721
1722
    image {
1723
      function        = CHECK
1724
      state           = ACTIVE
1725
      shadow          = OUT
1726
      overlay_file    = "assets/menu-checkbox-unchecked.png"
1727
      overlay_stretch = FALSE
1728
    }
1729
1730
    image {
1731
      function        = CHECK
1732
      state           = INSENSITIVE
1733
      shadow          = OUT
1734
      overlay_file    = "assets/menu-checkbox-unchecked-disabled.png"
1735
      overlay_stretch = FALSE
1736
    }
1737
1738
    image {
1739
      function        = CHECK
1740
      state           = NORMAL
1741
      shadow          = IN
1742
      overlay_file    = "assets/menu-checkbox-checked.png"
1743
      overlay_stretch = FALSE
1744
    }
1745
1746
    image {
1747
      function        = CHECK
1748
      state           = PRELIGHT
1749
      shadow          = IN
1750
      overlay_file    = "assets/menu-checkbox-checked.png"
1751
      overlay_stretch = FALSE
1752
    }
1753
1754
    image {
1755
      function        = CHECK
1756
      state           = ACTIVE
1757
      shadow          = IN
1758
      overlay_file    = "assets/menu-checkbox-checked.png"
1759
      overlay_stretch = FALSE
1760
    }
1761
1762
    image {
1763
      function        = CHECK
1764
      state           = INSENSITIVE
1765
      shadow          = IN
1766
      overlay_file    = "assets/menu-checkbox-checked-disabled.png"
1767
      overlay_stretch = FALSE
1768
    }
1769
1770
    image {
1771
      function        = CHECK
1772
      state           = NORMAL
1773
      shadow          = ETCHED_IN
1774
      overlay_file    = "assets/menu-checkbox-mixed.png"
1775
      overlay_stretch = FALSE
1776
    }
1777
1778
    image {
1779
      function        = CHECK
1780
      state           = PRELIGHT
1781
      shadow          = ETCHED_IN
1782
      overlay_file    = "assets/menu-checkbox-mixed.png"
1783
      overlay_stretch = FALSE
1784
    }
1785
1786
    image {
1787
      function        = CHECK
1788
      state           = ACTIVE
1789
      shadow          = ETCHED_IN
1790
      overlay_file    = "assets/menu-checkbox-mixed.png"
1791
      overlay_stretch = FALSE
1792
    }
1793
1794
    image {
1795
      function        = CHECK
1796
      state           = INSENSITIVE
1797
      shadow          = ETCHED_IN
1798
      overlay_file    = "assets/menu-checkbox-mixed-disabled.png"
1799
      overlay_stretch = FALSE
1800
    }
1801
1802
    #################
1803
    # Radio Buttons #
1804
    #################
1805
1806
    image {
1807
      function        = OPTION
1808
      state           = NORMAL
1809
      shadow          = OUT
1810
      overlay_file    = "assets/menu-radio-unchecked.png"
1811
      overlay_stretch = FALSE
1812
    }
1813
1814
    image {
1815
      function        = OPTION
1816
      state           = PRELIGHT
1817
      shadow          = OUT
1818
      overlay_file    = "assets/menu-radio-unchecked.png"
1819
      overlay_stretch = FALSE
1820
    }
1821
1822
    image {
1823
      function        = OPTION
1824
      state           = ACTIVE
1825
      shadow          = OUT
1826
      overlay_file    = "assets/menu-radio-unchecked.png"
1827
      overlay_stretch = FALSE
1828
    }
1829
1830
    image {
1831
      function        = OPTION
1832
      state           = INSENSITIVE
1833
      shadow          = OUT
1834
      overlay_file    = "assets/menu-radio-unchecked-disabled.png"
1835
      overlay_stretch = FALSE
1836
    }
1837
1838
    image {
1839
      function        = OPTION
1840
      state           = NORMAL
1841
      shadow          = IN
1842
      overlay_file    = "assets/menu-radio-checked.png"
1843
      overlay_stretch = FALSE
1844
    }
1845
1846
    image {
1847
      function        = OPTION
1848
      state           = PRELIGHT
1849
      shadow          = IN
1850
      overlay_file    = "assets/menu-radio-checked.png"
1851
      overlay_stretch = FALSE
1852
    }
1853
1854
    image {
1855
      function        = OPTION
1856
      state           = ACTIVE
1857
      shadow          = IN
1858
      overlay_file    = "assets/menu-radio-checked.png"
1859
      overlay_stretch = FALSE
1860
    }
1861
1862
    image {
1863
      function        = OPTION
1864
      state           = INSENSITIVE
1865
      shadow          = IN
1866
      overlay_file    = "assets/menu-radio-checked-disabled.png"
1867
      overlay_stretch = FALSE
1868
    }
1869
1870
    image {
1871
      function        = OPTION
1872
      state           = NORMAL
1873
      shadow          = ETCHED_IN
1874
      overlay_file    = "assets/menu-radio-mixed.png"
1875
      overlay_stretch = FALSE
1876
    }
1877
1878
    image {
1879
      function        = OPTION
1880
      state           = PRELIGHT
1881
      shadow          = ETCHED_IN
1882
      overlay_file    = "assets/menu-radio-mixed.png"
1883
      overlay_stretch = FALSE
1884
    }
1885
1886
    image {
1887
      function        = OPTION
1888
      state           = ACTIVE
1889
      shadow          = ETCHED_IN
1890
      overlay_file    = "assets/menu-radio-mixed.png"
1891
      overlay_stretch = FALSE
1892
    }
1893
1894
    image {
1895
      function        = OPTION
1896
      state           = INSENSITIVE
1897
      shadow          = ETCHED_IN
1898
      overlay_file    = "assets/menu-radio-mixed-disabled.png"
1899
      overlay_stretch = FALSE
1900
    }
1901
  }
1902
}
1903
1904
style "separator_menu_item" {
1905
  xthickness = 0
1906
  ythickness = 2
1907
1908
  engine "pixmap" {
1909
    image {
1910
      function = BOX
1911
      file     = "assets/border.png"
1912
      border   = {0, 0, 0, 1}
1913
    }
1914
  }
1915
}
1916
1917
style "button_label" {
1918
  # fg[NORMAL] = mix(0.7, @fg_color, @bg_color)
1919
  # fg[INSENSITIVE] = mix(0.3, @fg_color, @bg_color)
1920
1921
  font_name = "Medium"
1922
}
1923
1924
style "normal_button_label" {
1925
  # fg[NORMAL] = @fg_color
1926
  # fg[INSENSITIVE] = mix(0.5, @fg_color, @bg_color)
1927
1928
  font_name = "Regular"
1929
}
1930
1931
style "button" {
1932
  xthickness = 6
1933
  ythickness = 6
1934
1935
  # For the sake of sanity style buttons this way
1936
  engine "pixmap" {
1937
1938
    ###########
1939
    # Buttons #
1940
    ###########
1941
1942
    image {
1943
      function = BOX
1944
      state    = NORMAL
1945
      file     = "assets/button.png"
1946
      border   = {6, 6, 6, 6}
1947
      stretch  = TRUE
1948
    }
1949
1950
    image {
1951
      function = BOX
1952
      state    = PRELIGHT
1953
      shadow   = OUT
1954
      file     = "assets/button-hover.png"
1955
      border   = {6, 6, 6, 6}
1956
      stretch  = TRUE
1957
    }
1958
1959
    # Don't add hover effect on pressed buttons
1960
    image {
1961
      function = BOX
1962
      state    = PRELIGHT
1963
      shadow   = IN
1964
      file     = "assets/button-active.png"
1965
      border   = {6, 6, 6, 6}
1966
      stretch  = TRUE
1967
    }
1968
1969
    image {
1970
      function = BOX
1971
      state    = ACTIVE
1972
      file     = "assets/button-active.png"
1973
      border   = {6, 6, 6, 6}
1974
      stretch  = TRUE
1975
    }
1976
1977
    image {
1978
      function = BOX
1979
      state    = INSENSITIVE
1980
      file     = "assets/button-disabled.png"
1981
      border   = {6, 6, 6, 6}
1982
      stretch  = TRUE
1983
    }
1984
  }
1985
}
1986
1987
style "link_button" {
1988
  # Disable the button effect, leave just the link
1989
  engine "pixmap" {
1990
    image {
1991
      function = BOX
1992
    }
1993
  }
1994
}
1995
1996
style "entry" {
1997
  base[NORMAL]      = @bg_color
1998
  base[SELECTED]    = mix (0.24, @selected_bg_color, @bg_color)
1999
  base[INSENSITIVE] = @bg_color
2000
  base[ACTIVE]      = mix (0.24, @selected_bg_color, @bg_color)
2001
2002
  # We set this same as the border of the border of the entry
2003
  # This way there's no overlap
2004
  xthickness = 6
2005
  ythickness = 6
2006
}
2007
2008
style "combobox" {
2009
  xthickness = 6
2010
  ythickness = 6
2011
2012
  # This affects only the button beside an entry
2013
  GtkButton::inner-border = {0, 0, 0, 0}
2014
2015
  # For the sake of sanity style buttons this way
2016
  engine "pixmap" {
2017
2018
    ###########
2019
    # Buttons #
2020
    ###########
2021
2022
    image {
2023
      function = BOX
2024
      state    = NORMAL
2025
      file     = "assets/entry.png"
2026
      border   = {6, 6, 6, 6}
2027
      stretch  = TRUE
2028
    }
2029
2030
    image {
2031
      function = BOX
2032
      state    = PRELIGHT
2033
      file     = "assets/entry-hover.png"
2034
      border   = {6, 6, 6, 6}
2035
      stretch  = TRUE
2036
    }
2037
2038
    image {
2039
      function = BOX
2040
      state    = ACTIVE
2041
      file     = "assets/entry-active.png"
2042
      border   = {6, 6, 6, 6}
2043
      stretch  = TRUE
2044
    }
2045
2046
    image {
2047
      function = BOX
2048
      state    = INSENSITIVE
2049
      file     = "assets/entry-disabled.png"
2050
      border   = {6, 6, 6, 6}
2051
      stretch  = TRUE
2052
    }
2053
  }
2054
}
2055
2056
style "combobox_cellview" {
2057
  # text[NORMAL] = mix(0.7, @fg_color, @bg_color)
2058
  # text[INSENSITIVE] = mix(0.3, @fg_color, @bg_color)
2059
}
2060
2061
style "combobox_entry" {
2062
  # Since one side of the button is missing, we need to shift the arrow a little to the right
2063
  GtkButton::inner-border = {0, 2, 0, 0}
2064
2065
  base[NORMAL] = @base_color
2066
  base[ACTIVE] = @base_color
2067
2068
  engine "pixmap" {
2069
2070
    #############
2071
    # LTR entry #
2072
    #############
2073
2074
    image {
2075
      function  = SHADOW
2076
      state     = NORMAL
2077
      detail    = "entry"
2078
      file      = "assets/combo-left-entry.png"
2079
      border    = {6, 6, 6, 6}
2080
      stretch   = TRUE
2081
      direction = LTR
2082
    }
2083
2084
    image {
2085
      function  = SHADOW
2086
      state     = ACTIVE
2087
      detail    = "entry"
2088
      file      = "assets/combo-left-entry-active.png"
2089
      border    = {6, 6, 6, 6}
2090
      stretch   = TRUE
2091
      direction = LTR
2092
    }
2093
2094
    image {
2095
      function  = SHADOW
2096
      state     = INSENSITIVE
2097
      detail    = "entry"
2098
      file      = "assets/combo-left-entry-disabled.png"
2099
      border    = {6, 6, 6, 6}
2100
      stretch   = TRUE
2101
      direction = LTR
2102
    }
2103
2104
    #############
2105
    # RTL entry #
2106
    #############
2107
2108
    image {
2109
      function  = SHADOW
2110
      state     = NORMAL
2111
      detail    = "entry"
2112
      file      = "assets/combo-right-entry.png"
2113
      border    = {6, 6, 6, 6}
2114
      stretch   = TRUE
2115
      direction = RTL
2116
    }
2117
2118
    image {
2119
      function  = SHADOW
2120
      state     = ACTIVE
2121
      detail    = "entry"
2122
      file      = "assets/combo-right-entry-active.png"
2123
      border    = {6, 6, 6, 6}
2124
      stretch   = TRUE
2125
      direction = RTL
2126
    }
2127
2128
    image {
2129
      function  = SHADOW
2130
      state     = INSENSITIVE
2131
      detail    = "entry"
2132
      file      = "assets/combo-right-entry-disabled.png"
2133
      border    = {6, 6, 6, 6}
2134
      stretch   = TRUE
2135
      direction = RTL
2136
    }
2137
2138
    ##############
2139
    # LTR button #
2140
    ##############
2141
2142
    image {
2143
      function  = BOX
2144
      state     = NORMAL
2145
      detail    = "button"
2146
      file      = "assets/combo-right-entry.png"
2147
      border    = {0, 6, 6, 6}
2148
      stretch   = TRUE
2149
      direction = LTR
2150
    }
2151
2152
    image {
2153
      function  = BOX
2154
      state     = PRELIGHT
2155
      detail    = "button"
2156
      file      = "assets/combo-right-entry-hover.png"
2157
      border    = {0, 6, 6, 6}
2158
      stretch   = TRUE
2159
      direction = LTR
2160
    }
2161
2162
    image {
2163
      function  = BOX
2164
      state     = ACTIVE
2165
      detail    = "button"
2166
      file      = "assets/combo-right-entry-active.png"
2167
      border    = {0, 6, 6, 6}
2168
      stretch   = TRUE
2169
      direction = LTR
2170
    }
2171
2172
    image {
2173
      function  = BOX
2174
      state     = INSENSITIVE
2175
      detail    = "button"
2176
      file      = "assets/combo-right-entry-disabled.png"
2177
      border    = {0, 6, 6, 6}
2178
      stretch   = TRUE
2179
      direction = LTR
2180
    }
2181
2182
    ##############
2183
    # RTL button #
2184
    ##############
2185
2186
    image {
2187
      function  = BOX
2188
      state     = NORMAL
2189
      detail    = "button"
2190
      file      = "assets/combo-left-entry.png"
2191
      border    = {6, 0, 6, 6}
2192
      stretch   = TRUE
2193
      direction = RTL
2194
    }
2195
2196
    image {
2197
      function  = BOX
2198
      state     = PRELIGHT
2199
      detail    = "button"
2200
      file      = "assets/combo-left-entry-hover.png"
2201
      border    = {6, 0, 6, 6}
2202
      stretch   = TRUE
2203
      direction = RTL
2204
    }
2205
2206
    image {
2207
      function  = BOX
2208
      state     = ACTIVE
2209
      detail    = "button"
2210
      file      = "assets/combo-left-entry-active.png"
2211
      border    = {6, 0, 6, 6}
2212
      stretch   = TRUE
2213
      direction = RTL
2214
    }
2215
2216
    image {
2217
      function  = BOX
2218
      state     = INSENSITIVE
2219
      detail    = "button"
2220
      file      = "assets/combo-left-entry-disabled.png"
2221
      border    = {6, 0, 6, 6}
2222
      stretch   = TRUE
2223
      direction = RTL
2224
    }
2225
  }
2226
}
2227
2228
style "combo_button_padding" {
2229
  # Since one side of the button is missing, we need to shift the arrow a
2230
  # little to the right.
2231
  # This is the same thing we've done above but the combo, unlike the combobox,
2232
  # uses padding the same way as a button.
2233
  GtkButton::inner-border = {3, 6, 3, 3}
2234
}
2235
2236
style "notebook" {
2237
  xthickness = 3
2238
  ythickness = 3
2239
  bg[NORMAL] = @base_color
2240
}
2241
2242
style "notebook_tab_label" {
2243
  fg[ACTIVE] = mix(0.7, @fg_color, @bg_color)
2244
2245
  font_name = "Medium"
2246
}
2247
2248
style "notebook_viewport" {
2249
  bg[NORMAL] = @base_color
2250
}
2251
2252
style "notebook_bg" {
2253
  bg[NORMAL]      = @base_color
2254
  bg[PRELIGHT]    = @base_color
2255
  bg[INSENSITIVE] = @base_color
2256
}
2257
2258
style "notebook_entry" {
2259
  base[NORMAL]      = @base_color
2260
  base[SELECTED]    = mix (0.24, @selected_bg_color, @base_color)
2261
  base[INSENSITIVE] = @base_color
2262
  base[ACTIVE]      = mix (0.24, @selected_bg_color, @base_color)
2263
}
2264
2265
style "normal_bg" {
2266
  bg[NORMAL]      = @bg_color
2267
  bg[PRELIGHT]    = @bg_color
2268
  bg[INSENSITIVE] = @bg_color
2269
}
2270
2271
style "normal_entry" {
2272
  base[NORMAL]      = @bg_color
2273
  base[SELECTED]    = mix (0.24, @selected_bg_color, @bg_color)
2274
  base[INSENSITIVE] = @bg_color
2275
  base[ACTIVE]      = mix (0.24, @selected_bg_color, @bg_color)
2276
}
2277
2278
style "textview" {
2279
  bg[NORMAL] = @base_color
2280
}
2281
2282
style "scale_horz" {
2283
  engine "pixmap" {
2284
    image {
2285
      function    = BOX
2286
      detail      = "trough-upper"
2287
      file        = "assets/scale-horz-trough.png"
2288
      border      = {6, 6, 0, 0}
2289
      stretch     = TRUE
2290
    }
2291
2292
    image {
2293
      function    = BOX
2294
      detail      = "trough-lower"
2295
      file        = "assets/scale-horz-trough-active.png"
2296
      border      = {6, 6, 0, 0}
2297
      stretch     = TRUE
2298
    }
2299
  }
2300
}
2301
2302
style "scale_vert" {
2303
  engine "pixmap" {
2304
    image {
2305
      function    = BOX
2306
      detail      = "trough-upper"
2307
      file        = "assets/scale-vert-trough.png"
2308
      border      = {0, 0, 6, 6}
2309
      stretch     = TRUE
2310
    }
2311
2312
    image {
2313
      function    = BOX
2314
      detail      = "trough-lower"
2315
      file        = "assets/scale-vert-trough-active.png"
2316
      border      = {0, 0, 6, 6}
2317
      stretch     = TRUE
2318
    }
2319
  }
2320
}
2321
2322
style "progressbar" {
2323
  xthickness = 0
2324
  ythickness = 0
2325
2326
  fg[PRELIGHT] = @selected_fg_color
2327
2328
  engine "pixmap" {
2329
    image {
2330
      function    = BOX
2331
      detail      = "trough"
2332
      file        = "assets/progressbar-trough.png"
2333
      border      = {0, 0, 0, 0}
2334
      stretch     = TRUE
2335
      orientation = HORIZONTAL
2336
    }
2337
2338
    image {
2339
      function    = BOX
2340
      detail      = "trough"
2341
      file        = "assets/progressbar-trough.png"
2342
      border      = {0, 0, 0, 0}
2343
      stretch     = TRUE
2344
      orientation = VERTICAL
2345
    }
2346
  }
2347
}
2348
2349
style "treeview_header" {
2350
  xthickness = 2
2351
  ythickness = 2
2352
2353
  fg[NORMAL]   = mix(0.7, @fg_color, @base_color)
2354
  fg[PRELIGHT] = @fg_color
2355
2356
  font_name = "Medium"
2357
2358
  GtkButton::inner-border = {4, 4, 0, 2}
2359
2360
  engine "pixmap" {
2361
    image {
2362
      function  = BOX
2363
      state     = NORMAL
2364
      file      = "assets/treeview-ltr-button.png"
2365
      border    = {0, 1, 0, 1}
2366
      stretch   = TRUE
2367
      direction = LTR
2368
    }
2369
2370
    image {
2371
      function  = BOX
2372
      state     = PRELIGHT
2373
      file      = "assets/treeview-ltr-button-hover.png"
2374
      border    = {0, 1, 0, 1}
2375
      stretch   = TRUE
2376
      direction = LTR
2377
    }
2378
2379
    image {
2380
      function  = BOX
2381
      state     = ACTIVE
2382
      file      = "assets/treeview-ltr-button-active.png"
2383
      border    = {0, 1, 0, 1}
2384
      stretch   = TRUE
2385
      direction = LTR
2386
    }
2387
2388
    image {
2389
      function  = BOX
2390
      state     = NORMAL
2391
      file      = "assets/treeview-rtl-button.png"
2392
      border    = {1, 0, 0, 1}
2393
      stretch   = TRUE
2394
      direction = RTL
2395
    }
2396
2397
    image {
2398
      function  = BOX
2399
      state     = PRELIGHT
2400
      file      = "assets/treeview-rtl-button-hover.png"
2401
      border    = {1, 0, 0, 1}
2402
      stretch   = TRUE
2403
      direction = RTL
2404
    }
2405
2406
    image {
2407
      function  = BOX
2408
      state     = ACTIVE
2409
      file      = "assets/treeview-rtl-button-active.png"
2410
      border    = {1, 0, 0, 1}
2411
      stretch   = TRUE
2412
      direction = RTL
2413
    }
2414
2415
    image {
2416
      function        = ARROW
2417
      state           = NORMAL
2418
      overlay_file    = "assets/pan-up-alt.png"
2419
      overlay_stretch = FALSE
2420
      arrow_direction = UP
2421
    }
2422
2423
    image {
2424
      function        = ARROW
2425
      state           = PRELIGHT
2426
      overlay_file    = "assets/pan-up.png"
2427
      overlay_stretch = FALSE
2428
      arrow_direction = UP
2429
    }
2430
2431
    image {
2432
      function        = ARROW
2433
      state           = ACTIVE
2434
      overlay_file    = "assets/pan-up.png"
2435
      overlay_stretch = FALSE
2436
      arrow_direction = UP
2437
    }
2438
2439
    image {
2440
      function        = ARROW
2441
      state           = NORMAL
2442
      overlay_file    = "assets/pan-down-alt.png"
2443
      overlay_stretch = FALSE
2444
      arrow_direction = DOWN
2445
    }
2446
2447
    image {
2448
      function        = ARROW
2449
      state           = PRELIGHT
2450
      overlay_file    = "assets/pan-down.png"
2451
      overlay_stretch = FALSE
2452
      arrow_direction = DOWN
2453
    }
2454
2455
    image {
2456
      function        = ARROW
2457
      state           = ACTIVE
2458
      overlay_file    = "assets/pan-down.png"
2459
      overlay_stretch = FALSE
2460
      arrow_direction = DOWN
2461
    }
2462
  }
2463
}
2464
2465
style "scrolled_window" {
2466
  engine "pixmap" {
2467
    image {
2468
      function = SHADOW
2469
      file     = "assets/frame.png"
2470
      border   = {1, 1, 1, 1}
2471
      stretch  = TRUE
2472
    }
2473
  }
2474
}
2475
2476
style "frame" {
2477
  engine "pixmap" {
2478
    image {
2479
      function = SHADOW
2480
      shadow   = NONE
2481
    }
2482
2483
    image {
2484
      function = SHADOW
2485
      file     = "assets/frame.png"
2486
      border   = {1, 1, 1, 1}
2487
      stretch  = TRUE
2488
    }
2489
2490
    image {
2491
      function       = SHADOW_GAP
2492
      file           = "assets/frame.png"
2493
      border         = {1, 1, 1, 1}
2494
      stretch        = TRUE
2495
      gap_start_file = "assets/border.png"
2496
      gap_end_file   = "assets/border.png"
2497
    }
2498
  }
2499
}
2500
2501
style "tool_button" {
2502
  GtkButton::inner-border = {2, 2, 2, 2}
2503
2504
  # For the sake of sanity style buttons this way
2505
  engine "pixmap" {
2506
    image {
2507
      function = BOX
2508
      state    = NORMAL
2509
      file     = "assets/flat-button.png"
2510
      border   = {6, 6, 6, 6}
2511
      stretch  = TRUE
2512
    }
2513
2514
    image {
2515
      function = BOX
2516
      state    = PRELIGHT
2517
      shadow   = OUT
2518
      file     = "assets/flat-button-hover.png"
2519
      border   = {6, 6, 6, 6}
2520
      stretch  = TRUE
2521
    }
2522
2523
    # Don't add hover effect on pressed buttons
2524
    image {
2525
      function = BOX
2526
      state    = PRELIGHT
2527
      shadow   = IN
2528
      file     = "assets/flat-button-active.png"
2529
      border   = {6, 6, 6, 6}
2530
      stretch  = TRUE
2531
    }
2532
2533
    image {
2534
      function = BOX
2535
      state    = ACTIVE
2536
      file     = "assets/flat-button-active.png"
2537
      border   = {6, 6, 6, 6}
2538
      stretch  = TRUE
2539
    }
2540
2541
    image {
2542
      function = BOX
2543
      state    = INSENSITIVE
2544
      shadow   = OUT
2545
      file     = "assets/flat-button-disabled.png"
2546
      border   = {6, 6, 6, 6}
2547
      stretch  = TRUE
2548
    }
2549
2550
    image {
2551
      function = BOX
2552
      state    = INSENSITIVE
2553
      shadow   = IN
2554
      file     = "assets/button-disabled.png"
2555
      border   = {6, 6, 6, 6}
2556
      stretch  = TRUE
2557
    }
2558
  }
2559
}
2560
2561
style "toolbar_separator" {
2562
  GtkWidget::wide-separators  = 1
2563
  GtkWidget::separator-width  = 1
2564
  GtkWidget::separator-height = 1
2565
2566
  engine "pixmap" {
2567
    image {
2568
      function = BOX
2569
      file     = "assets/border.png"
2570
    }
2571
  }
2572
}
2573
2574
style "inline_toolbar" {
2575
  # GtkToolbar::button-relief = GTK_RELIEF_NORMAL
2576
  bg[NORMAL]   = @base_color
2577
2578
  engine "pixmap" {
2579
    image {
2580
      function = BOX
2581
      file     = "assets/frame-inline.png"
2582
      border   = {1, 1, 0, 1}
2583
      stretch  = TRUE
2584
    }
2585
  }
2586
}
2587
2588
style "tooltip" {
2589
  xthickness = 8
2590
  ythickness = 8
2591
2592
  bg[NORMAL]   = @tooltip_bg_color
2593
  fg[NORMAL]   = @tooltip_fg_color
2594
  bg[SELECTED] = @tooltip_bg_color
2595
}
2596
2597
style "disable_text_shadow" {
2598
  engine "murrine" {
2599
    textstyle = 0
2600
  }
2601
}
2602
2603
style "disable_separator" {
2604
  xthickness = 0
2605
  ythickness = 0
2606
2607
  GtkWidget::wide-separators = 1
2608
}
2609
2610
# Default style, containing theme properties and trying to match every widget as
2611
# much as possible, which is not only faster than trying to match every widget
2612
# by its own but also less bug-prune and more consistent. However there is some
2613
# widget specific stuff that needs to be taken care of, which is the point of
2614
# every other style below.
2615
class "GtkWidget" style "default"
2616
2617
######################################
2618
# Override padding, style and colour #
2619
######################################
2620
2621
class "GtkButton"                                                  style "button"
2622
class "GtkLinkButton"                                              style "link_button"
2623
class "GtkEntry"                                                   style "entry"
2624
class "GtkOldEditable"                                             style "entry"
2625
class "GtkNotebook"                                                style "notebook"
2626
class "GtkHScale"                                                  style "scale_horz"
2627
class "GtkVScale"                                                  style "scale_vert"
2628
class "GtkProgressBar"                                             style "progressbar"
2629
class "GtkScrolledWindow"                                          style "scrolled_window"
2630
class "GtkFrame"                                                   style "frame"
2631
class "GtkSeparatorToolItem"                                       style "toolbar_separator"
2632
class "GtkMenuBar"                                                 style "menubar"
2633
class "GtkMenu"                                                    style "menu"
2634
class "GtkTextView"                                                style "textview"
2635
2636
# Menu and menubar items
2637
widget_class "*<GtkMenuItem>*"                                     style "menu_item"
2638
widget_class "*<GtkMenuBar>.<GtkMenuItem>*"                        style "menubar_item"
2639
widget_class "*<GtkSeparatorMenuItem>*"                            style "separator_menu_item"
2640
2641
# Treeview buttons
2642
widget_class "*<GtkTreeView>*<GtkButton>*"                         style "treeview_header"
2643
2644
# Give the file chooser toolbar a border
2645
widget_class "*<GtkFileChooserDefault>*<GtkToolbar>"               style "inline_toolbar"
2646
2647
# Fix padding on regular comboboxes
2648
widget_class "*<GtkComboBox>.<GtkButton>"                          style "combobox"
2649
widget_class "*<GtkOptionMenu>"                                    style "combobox"
2650
2651
# And disable separators on them
2652
widget_class "*<GtkComboBox>.<GtkButton>*<GtkSeparator>"           style "disable_separator"
2653
widget_class "*<GtkFontButton>*<GtkSeparator>"                     style "disable_separator"
2654
widget_class "*<GtkFileChooserButton>*<GtkSeparator>"              style "disable_separator"
2655
2656
# Join together the ComboBoxEntry entry and button
2657
widget_class "*<GtkComboBoxEntry>*"                                style "combobox_entry"
2658
2659
# Join the Combo entry and button
2660
widget_class "*<GtkCombo>*"                                        style "combobox_entry"
2661
2662
# Tweak the padding on the button a little bit because it
2663
# uses it a bit differently
2664
widget_class "*<GtkCombo>.<GtkButton>"                             style "combo_button_padding"
2665
2666
# Alas we cannot do the same for ComboBoxText because there
2667
# isn't a way to apply the style to only the comboboxes that
2668
# have an entry inside
2669
2670
# Tool buttons have different styles
2671
widget_class "*<GtkToolButton>*<GtkButton>"                        style "tool_button"
2672
widget_class "*<GtkVBox>*<GtkEventBox>.<GtkToolbar>*<GtkButton>"   style "tool_button"
2673
2674
# Notebooks
2675
widget_class "*<GtkNotebook>.<GtkLabel>"                           style "notebook_tab_label"
2676
widget_class "*<GtkNotebook>.<GtkHBox>.<GtkLabel>"                 style "notebook_tab_label"
2677
2678
# Notebooks are white, act accordingly
2679
widget_class "*<GtkNotebook>*<GtkEntry>"                           style "notebook_entry"
2680
widget_class "*<GtkNotebook>*<GtkProgressBar>"                     style "notebook_bg"
2681
widget_class "*<GtkNotebook>*<GtkSpinButton>"                      style "notebook_bg"
2682
widget_class "*<GtkNotebook>*<GtkScrolledWindow>*<GtkViewport>"    style "notebook_bg"
2683
widget_class "*<GtkNotebook>*<GimpRuler>"                          style "notebook_bg"
2684
widget_class "*<GtkNotebook>.<GimpDisplayShell>*<GtkEventBox>"     style "notebook_bg"
2685
2686
# However, stuff inside eventboxes inside notebooks is grey
2687
# again, react
2688
widget_class "*<GtkNotebook>*<GtkEventBox>*<GtkEntry>"             style "normal_entry"
2689
widget_class "*<GtkNotebook>*<GtkEventBox>*<GtkProgressBar>"       style "normal_bg"
2690
widget_class "*<GtkNotebook>*<GtkEventBox>*<GtkSpinButton>"        style "normal_bg"
2691
2692
# Button labels
2693
widget_class "*<GtkButton>.<GtkLabel>"                             style "button_label"
2694
2695
# Normalize button labels
2696
widget_class "*<GtkCheckButton>.<GtkLabel>"                        style "normal_button_label"
2697
widget_class "*<GtkOptionMenu>.<GtkLabel>"                         style "normal_button_label"
2698
2699
# ComboBoxes tend to draw the button label with text[]
2700
# instead of fg[], we need to fix that
2701
widget_class "*<GtkComboBox>*<GtkCellView>"                        style "combobox_cellview"
2702
2703
# Disable white text shadows
2704
widget_class "*<GtkLabel>"                                         style "disable_text_shadow"
2705
widget_class "*<GtkCellView>"                                      style "disable_text_shadow"
2706
2707
# GTK tooltips
2708
widget "gtk-tooltip*"                                              style "tooltip"