1###################################################################### 2# Aluminum Alloy 3# A Port of a Mac OS X theme originally made by Max Rudberg - http://www.maxthemes.com 4#Thank you the permission and original pixmaps! 5###################################################################### 6 7 8gtk-icon-sizes = "panel-menu=24,24:gtk-menu=16,16" 9gtk-menu-drop-shadow = 1 10gtk-menu-shadow-delay = 10 11 12include "icons/iconrc" 13 14 15 16 17style "osx-default" 18{ 19 20GtkScrollbar::has_secondary_backward_stepper = 1 21 GtkScrollbar::has_secondary_forward_stepper = 0 22 #GtkWidget::interior_focus = 1 23 #GtkWidget::focus-line-width=0 24 GtkButton::default_border = { 0, 0, 0, 0 } 25 GtkButton::default_outside_border = { 0, 0, 0, 0 } 26 #GtkButton::default_border = { 3,3,3,3 } 27 #GtkButton::default_outside_border = { 3,3,3,3 } 28 #GtkDialog::action_area_border = {0,0,0,0} 29 GtkButton::min_width = 23 30 31 #Yes or No? 32 #GtkWidget::focus_padding = 1 33 34#GtkEntry::padding = 2 35 GtkPaned::handle_size = 8 36 GtkTextView::shadow_type = GTK_SHADOW_IN 37 GtkFrame::shadow_type = GTK_SHADOW_IN 38 GtkScrolledWindow::shadow_type = GTK_SHADOW_IN 39#GtkEntry::shadow_type = GTK_SHADOW_NONE 40 GtkSpin::shadow_type = GTK_SHADOW_NONE 41 GtkComboBox::shadow_type = GTK_SHADOW_NONE 42 GtkHandle::shadow_type = GTK_SHADOW_OUT 43#GtkContainer::shadow_type = GTK_SHADOW_NONE 44#GtkPaned::shadow_type = GTK_SHADOW_IN 45 46 GtkMenuBar::internal-padding = 0 47 48 GtkContainer::border_width = 3 49 50 #These properties control how the image on a button is displaced when it is clicked. 51 #GtkButton::child_displacement_x = 0 52 #GtkButton::child_displacement_y = 1 53 54 #GtkButtonBox::child_min_width = 28 55 56 GtkOptionMenu::indicator_size = { 11, 20 } 57 GtkOptionMenu::indicator_spacing = { 6, 3, 1, 1 } 58 59 #xthickness = 1 60 #ythickness = 1 61 62 #This sets the color for odd rows in TreeViews to be light blue, instead of using 63 #the color set by gtk. 64 GtkTreeView::odd_row_color = "#d3d8e1" 65 66 fg[NORMAL] = "#000000" 67 fg[ACTIVE] = "#000000" 68# fg[PRELIGHT] = "#000000" 69 fg[SELECTED] = "#000000" 70 fg[INSENSITIVE] = "#747474" 71 bg[NORMAL] = "#e4e7ed" 72 bg[ACTIVE] = "#e4e7ed" 73 bg[PRELIGHT] = "#e4e7ed" 74 bg[SELECTED] = "#c4c4c4" 75 bg[INSENSITIVE] = "#e4e7ed" 76 base[NORMAL] = "#FFFFFF" 77 base[ACTIVE] = "#8b929f" ## 78 base[PRELIGHT] = "#FFFFFF" 79 base[INSENSITIVE]= "#e4e7ed" 80 base[SELECTED] = "#8b929f" 81 text[INSENSITIVE]= "#747474" 82 text[SELECTED] = "#000000" 83 text[ACTIVE] = "#000000" 84 text[PRELIGHT] = "#ffffff" 85 86#app backgrouds 87# bg_pixmap[NORMAL] = "bg_light.png" 88 #bg_pixmap[PRELIGHT] = "bg_light.png" 89 90 91#A semi-transparent hi-light for files selected in Nautilus 92 NautilusIconContainer::highlight_alpha=150 93 # NautilusIconContainer::dark_info_color = "#000000" 94 # NautilusIconContainer::light_info_color = "#ffffff" 95 96 97 engine "pixmap" 98 99 100 { 101 102 103 104# 105# Tooltips 106# 107 image 108 { 109 function = FLAT_BOX 110 recolorable = TRUE 111 detail = "tooltip" 112 file = "tooltip.png" 113 border = { 2, 2, 2, 2 } 114 stretch = TRUE 115 } 116 117# 118 119 120 121 #This defines how the focus is drawn. Using a transparent image means there is 122 #no line around a widget when it is in focus. 123 image 124 { 125 function = FOCUS 126 recolorable = TRUE 127 overlay_file = "transparent.png" 128 overlay_border = { 0, 0, 0, 0 } 129 overlay_stretch = TRUE 130 } 131 132 #The following four entries describe how the different types of shadows 133 #are drawn 134 image 135 { 136 function = SHADOW 137 recolorable = TRUE 138 shadow = OUT 139 file = "shadow_etched_out.png" 140 border = { 3, 3, 3, 3} 141 stretch = TRUE 142 } 143 144 image 145 { 146 function = SHADOW 147 recolorable = TRUE 148 shadow = IN 149 file = "shadow_in.png" 150 border = { 3, 3, 3, 3 } 151 stretch = TRUE 152 } 153 154 image 155 { 156 function = SHADOW 157 recolorable = TRUE 158 shadow = ETCHED_IN 159 file = "shadow_etched_in.png" 160 border = { 3, 3, 3, 3 } 161 stretch = TRUE 162 } 163 164 image 165 { 166 function = SHADOW 167 recolorable = TRUE 168 shadow = ETCHED_OUT 169 file = "shadow_etched_out.png" 170 border = { 3, 3, 3, 3 } 171 stretch = TRUE 172 } 173 174 #How to draw horizontal lines 175 image 176 { 177 function = HLINE 178 recolorable = TRUE 179 file = "hline_245.png" 180 border = { 3, 3, 0, 0 } 181 stretch = FALSE 182 } 183 184 #How to draw vertical lines 185 image 186 { 187 function = VLINE 188 recolorable = TRUE 189 file = "vline.png" 190 border = { 1, 0, 1, 1 } 191 stretch = TRUE 192 } 193 194 195 196 197# 198# The handle on Handleboxes 199# 200 image 201 { 202 function = HANDLE 203 recolorable = TRUE 204 overlay_file = "pane_splitter.png" 205 overlay_border = { 0, 0, 0, 0 } 206 overlay_stretch = FALSE 207 orientation = VERTICAL 208 } 209 image 210 { 211 function = HANDLE 212 recolorable = TRUE 213 overlay_file = "pane_splitter.png" 214 overlay_border = { 0, 0, 0, 0 } 215 overlay_stretch = FALSE 216 orientation = HORIZONTAL 217 } 218 219# 220# How to draw shadows with a gap on one side 221# 222 223 224 225 226 } 227 228} 229 230##################################################### 231#Buttons 232##################################################### 233 234style "button" { 235 xthickness = 3 236 ythickness = 0 237 238 engine "pixmap" { 239 image { 240 function = BOX 241 recolorable = TRUE 242 state = NORMAL 243 detail = "buttondefault" 244 shadow = IN 245 file = "button_normal.png" 246 border = {12,12,6,9} 247 stretch = TRUE 248 } 249 image { 250 function = BOX 251 recolorable = FALSE 252 state = NORMAL 253 shadow = OUT 254 file = "button_normal.png" 255 border = {12,12,6,9} 256 stretch = TRUE 257 } 258 image { 259 function = BOX 260 recolorable = FALSE 261 state = PRELIGHT 262 shadow = IN 263 file = "button_prelight.png" 264 border = {12,12,6,9} 265 stretch = TRUE 266 } 267 268 269 image { 270 function = BOX 271 recolorable = FALSE 272 state = ACTIVE 273 shadow = IN 274 file = "button_push.png" 275 border = {12,12,6,9} 276 stretch = TRUE 277 } 278 image 279 { 280 function = BOX 281 recolorable = TRUE 282 state = PRELIGHT 283 shadow = OUT 284 file = "button_prelight.png" 285 border = {12,12,6,9} 286 stretch = TRUE 287 } 288 image 289 { 290 function = BOX 291 recolorable = TRUE 292 state = NORMAL 293 shadow = IN 294 file = "button_prelight.png" 295 border = {12,12,6,9} 296 stretch = TRUE 297 } 298 image 299 { 300 function = BOX 301 recolorable = TRUE 302 state = INSENSITIVE 303 shadow = IN 304 file = "button_flat.png" 305 border = {12,12,6,9} 306 stretch = TRUE 307 } 308 image 309 { 310 function = BOX 311 recolorable = TRUE 312 state = INSENSITIVE 313 shadow = OUT 314 file = "button_flat.png" 315 border = {12,12,6,9} 316 stretch = TRUE 317 } 318 image 319 { 320 function = BOX 321 recolorable = TRUE 322 state = SELECTED 323 shadow = IN 324 file = "button_prelight.png" 325 border = {12,12,6,9} 326 stretch = TRUE 327 } 328 image 329 { 330 function = BOX 331 recolorable = TRUE 332 state = ACTIVE 333 shadow = IN 334 file = "button_prelight.png" 335 border = {12,12,6,9} 336 stretch = TRUE 337 } 338 } 339} 340class "GtkButton" style "button" 341 342################################################ 343# Paned Widgets: Windows divided into two or more sections, which can be 344# resized by dragging handles. 345################################################ 346 347style "osx-paned" = "osx-default" 348{ 349 #This section describes how panes are drawn. Panes are windows that are separated 350 #into two parts by a horizontal or vertical divider. The instructions set here over-ride 351 #the instructions set above for how to draw handles. 352 353 #xthickness = 5 354 #ythickness = 5 355 356 #This defines the thickness of the bar that divides the window. 357 GtkPaned::handle_size = 8 358 359 360 engine "pixmap" 361 { 362 # The handle on horizontal dividers 363 image 364 { 365 function = HANDLE 366 recolorable = TRUE 367 file = "null.png" 368 border = { 1, 1, 1, 1 } 369 stretch = TRUE 370 overlay_file = "pane_splitter.png" 371 overlay_border = {0,0,0,0} 372 overlay_stretch = FALSE 373 orientation = HORIZONTAL 374 } 375 376 # The handle on vertical dividers 377 image 378 { 379 function = HANDLE 380 recolorable = TRUE 381 382 file = "null.png" 383 border = { 1, 1, 1, 1 } 384 stretch = TRUE 385 overlay_file = "pane_splitter.png" 386 overlay_border = {0,0,0,0} 387 overlay_stretch = FALSE 388 orientation = VERTICAL 389 } 390 391 392 } 393} 394 395class "Gtk*Paned" style "osx-paned" 396 397############################################### 398# Menus 399############################################### 400 401style "osx-menu" { 402bg_pixmap[NORMAL] = "menu_back.png" 403 xthickness = 1 404 ythickness = 1 405 #bg[SELECTED] = { 0.30,0.35,0.65 } 406 fg[PRELIGHT] = "#ffffff" 407 fg[NORMAL] = "#ffffff" 408 fg[ACTIVE] = "#ffffff" 409 410engine "pixmap" { 411 image { 412 function = BOX 413 recolorable = TRUE 414 file = "menu_border.png" 415 border = { 1, 1, 1, 1 } 416 stretch = TRUE 417 } 418 419 image 420 { 421 function = HLINE 422 recolorable = TRUE 423 file = "hline_menu.png" 424 border = { 0, 0, 0, 0 } 425 stretch = FALSE 426 } 427 428 } 429} 430#widget_class "*Menu*" style "osx-menu" 431class "GtkMenu" style "osx-menu" 432 433 434 435############################################### 436# Menu Items 437############################################### 438 439style "MenuItem" 440{ 441 442 443 xthickness = 3 444 ythickness = 2 445 #bg[SELECTED] = { 0.30,0.35,0.65 } 446 fg[PRELIGHT] = "#ffffff" 447 448 449 450 engine "pixmap" 451 { 452 453 #This image is used to draw the highlight on a menu entry when it is 454 #moused over. 455 image 456 { 457 function = BOX 458 recolorable = TRUE 459 file = "menu_hi-light.png" 460 border = { 10, 2, 2, 2 } 461 stretch = TRUE 462 } 463 464 image 465 { 466 function = HLINE 467 recolorable = TRUE 468 file = "hline_menu.png" 469 border = { 0, 0, 0, 0 } 470 stretch = FALSE 471 } 472 473 } 474} 475 476widget_class "*.GtkMenuItem.*" style "MenuItem" 477widget_class "*.GtkAccelMenuItem.*" style "MenuItem" 478 479class "GtkMenuItem" style "MenuItem" 480 481############################################### 482# Styles and Controls for Option Menus 483############################################### 484 485style "OptionMenu" 486{ 487 engine "pixmap" { 488 489 image { 490 function = BOX 491 recolorable = TRUE 492 493 file = "menubar_option.png" 494 border = { 12, 23, 7, 11 } 495 stretch = TRUE 496 } 497 498 image { 499 function = TAB 500 recolorable = TRUE 501 overlay_file = "menubar_option_arrow.png" 502 overlay_stretch = FALSE 503 } 504 image { 505 function = TAB 506 recolorable = TRUE 507 state = INSENSITIVE 508 overlay_file = "menubar_option_arrow_insensitive.png" 509 overlay_stretch = FALSE 510 } 511 512} 513 514########################################### 515 516} 517 518 519class "GtkOptionMenu" style "OptionMenu" 520 521##################################################### 522#Notebook: How to draw the tabs, spacings, and backgrounds for notebooks. 523##################################################### 524 525style "notebook" { 526xthickness = 4 527 ythickness = 1 528 engine "pixmap" { 529 # NOTEBOOK TABS 530 # FIXME: Do left and right tabs as well 531 # TOP 532 # top background tabs 533 image { 534 function = EXTENSION 535 state = ACTIVE 536 gap_side = BOTTOM 537 file = "new_tab_top_inactive.png" 538 border = {10,10,5,8} 539 stretch = TRUE 540 } 541 # top foreground tab 542 image { 543 function = EXTENSION 544 gap_side = BOTTOM 545 file = "new_tab_top_active.png" 546 border = {10,10,5,8} 547 stretch = TRUE 548 } 549 550#BOTTOM 551image { 552 function = EXTENSION 553 state = ACTIVE 554 gap_side = TOP 555 file = "new_tab_top_inactive.png" 556 border = {10,10,5,8} 557 stretch = TRUE 558 } 559 # top foreground tab 560 image { 561 function = EXTENSION 562 gap_side = TOP 563 file = "new_tab_top_active.png" 564 border = {10,10,5,8} 565 stretch = TRUE 566 } 567 568#LEFT 569image { 570 function = EXTENSION 571 state = ACTIVE 572 gap_side = RIGHT 573 file = "new_tab_top_inactive.png" 574 border = {10,10,5,8} 575 stretch = TRUE 576 } 577 # top foreground tab 578 image { 579 function = EXTENSION 580 gap_side = RIGHT 581 file = "new_tab_top_active.png" 582 border = {10,10,5,8} 583 stretch = TRUE 584 } 585 586 587#RIGHT 588image { 589 function = EXTENSION 590 state = ACTIVE 591 gap_side = LEFT 592 file = "new_tab_top_inactive.png" 593 border = {10,10,5,8} 594 stretch = TRUE 595 } 596 # top foreground tab 597 image { 598 function = EXTENSION 599 gap_side = LEFT 600 file = "new_tab_top_active.png" 601 border = {10,10,5,8} 602 stretch = TRUE 603 } 604 605 606 # NOTEBOOK BORDERS 607 # tabs on top 608 image { 609 610 function = BOX_GAP 611 gap_side = TOP 612 file = "notebook_border.png" 613 border = {10,10,10,10} 614 stretch = TRUE 615 } 616 # tabs on bottom 617 image { 618 function = BOX_GAP 619 gap_side = BOTTOM 620 file = "notebook_border.png" 621 border = {10,10,10,10} 622 stretch = TRUE 623 } 624 # tabs on left 625 image { 626 function = BOX_GAP 627 gap_side = LEFT 628 file = "notebook_border.png" 629 border = {10,10,10,10} 630 stretch = TRUE 631 } 632 # tabs on right 633 image { 634 function = BOX_GAP 635 gap_side = RIGHT 636 file = "notebook_border.png" 637 border = {10,10,10,10} 638 stretch = TRUE 639 } 640 641# 642# How to draw the box of a notebook when it isnt attached to a tab 643# 644 645 646 image 647 { 648 649 function = BOX 650 recolorable = TRUE 651 file = "notebook_border.png" 652 border = { 10, 10, 10, 10 } 653 stretch = TRUE 654 gap_side = TOP 655 } 656 } 657} 658class "GtkNotebook" style "notebook" 659 660##################################################### 661# Text Entries 662##################################################### 663 664 665style "entry" 666{ 667 #xthickness = 2 668 #ythickness = 2 669 #bg[SELECTED] = { 0.30,0.35,0.65 } 670 #fg[PRELIGHT] = "#ffffff" 671 672 # 673 674 #In the default style we set this color to white because it sets the background color for 675 #things like GtkText and GtkList, etc, which we want white. But here we set the background 676 #color for GtkEntry to be light gray so that it blends in with things like toolbars. This causes a 677 #problem for GtkEntry widgets that appear on, say, notebook tabs. It would be *great* if I 678 #knew how to make the base of a GtkEntry widget transparent so that it blended in with 679 #whatever widget it sits on top of. 680 base[NORMAL] = "#e4e7ed" 681 682 #bg_pixmap[NORMAL] = "menu_background.png" 683 684 engine "pixmap" 685 { 686image 687 { 688 function = FLAT_BOX 689 recolorable = TRUE 690 state = INSENSITIVE 691 detail = "entry_bg" 692 file = "text_entry.png" 693 border = {6,6,6,6 } 694 stretch = TRUE 695 } 696 697 image 698 { 699 function = FLAT_BOX 700 recolorable = TRUE 701 state = NORMAL 702 detail = "entry_bg" 703 file = "text_entry.png" 704 border = {6,6,6,6 } 705 stretch = TRUE 706 } 707 708 image 709 { 710 function = FLAT_BOX 711 recolorable = TRUE 712 state = SELECTED 713 detail = "entry_bg" 714 file = "out_sel.png" 715 border = { 3,3,3,3 } 716 stretch = TRUE 717 } 718 719 720#This is a transparent shadow. 721 image 722 { 723 function = SHADOW 724 recolorable = TRUE 725 shadow = IN 726 #file = "null.png" 727 file = "transparent.png" 728 border = { 1,1,1,1 } 729 stretch = TRUE 730 } 731 image 732 { 733 function = FOCUS 734 recolorable = TRUE 735 overlay_file = "transparent.png" 736 overlay_border = { 2, 2, 2, 2 } 737 overlay_stretch = TRUE 738 } 739 740 741 742 743 744 745 } 746} 747 748class "GtkEntry" style "entry" 749 750############################################### 751# Gtk Lists, like the Rhythmbox playlist or Nautilus Listview 752############################################### 753style "list-header" 754{ 755 xthickness = 2 756 #ythickness = 2 757 GtkTreeView::odd_row_color = "#e4ebf5" 758 GtkTreeView::even_row_color = "#ffffff" 759 760 761} 762 763widget_class "*List" style "list-header" 764#widget_class "*Tree*" style "list-header" 765widget_class "GtkCList" style "list-header" 766 767 768 769 770 #The values I set here have to do with the relative size of three graphic elements 771 #I have used: the slider, the arrow box, and the trough. They all have the same width 772 #of 15 pixels, but gtk wants to put in some spacing between them. It seems like it 773 #places the sliders inside the trough with a default 1 pixel border on either side of the slider, 774 #so that the trough has its width stretched by an additional two pixels(?). Setting the 775 #trough border makes the arrow box sit on top of the trough squarely, by making sure that 776 #the trough stays the same width as the arrowbox(?). I could be totally wrong here. 777 778 779########################################### 780# Scrollbars 781########################################### 782# 783 784 785 786style "Scrollbar" { 787 788 GtkRange::trough_border = 0 789 GtkVScale::slider_length = 16 790 GtkVScale::slider_width = 19 791 GtkHScale::slider_length = 17 792 GtkHScale::slider_width = 19 793 GtkRange::slider_width = 15 794 GtkRange::stepper_size = 15 795GtkScrollbar::min_slider_length = 30 796 797 798 engine "pixmap" { 799 800 image { 801 function = BOX 802 recolorable = TRUE 803 detail = "trough" 804 file = "vertical_trough.png" 805 border = { 0, 0, 39, 39 } 806 stretch = TRUE 807 orientation = VERTICAL 808 } 809 image { 810 function = BOX 811 recolorable = TRUE 812 detail = "trough" 813 file = "horizontal_trough.png" 814 border = { 39, 39, 0, 0 } 815 stretch = TRUE 816 orientation = HORIZONTAL 817 } 818 image { 819 function = SLIDER 820 recolorable = TRUE 821 state = NORMAL 822 file = "scrollbar_horizontal.png" 823 border = { 12, 12, 6, 6 } 824 stretch = TRUE 825 orientation = HORIZONTAL 826 } 827 image { 828 function = SLIDER 829 recolorable = TRUE 830 state = PRELIGHT 831 file = "scrollbar_horizontal.png" 832 border = { 12, 12, 6 ,6 } 833 stretch = TRUE 834 orientation = HORIZONTAL 835 } 836 image { 837 function = SLIDER 838 recolorable = TRUE 839 state = INSENSITIVE 840 file = "scrollbar_horizontal_insens.png" 841 border = { 12, 12, 6 ,6 } 842 stretch = TRUE 843 orientation = HORIZONTAL 844 } 845 846 847 image { 848 function = SLIDER 849 recolorable = TRUE 850 state = NORMAL 851 file = "scrollbar_vertical.png" 852 border = { 6, 6, 12, 12 } 853 stretch = TRUE 854 orientation = VERTICAL 855 } 856 image { 857 function = SLIDER 858 recolorable = TRUE 859 state = PRELIGHT 860 file = "scrollbar_vertical.png" 861 border = { 6, 6, 12, 12 } 862 stretch = TRUE 863 orientation = VERTICAL 864 } 865 image { 866 function = SLIDER 867 recolorable = TRUE 868 state = INSENSITIVE 869 file = "scrollbar_vertical_insens.png" 870 border = { 6, 6, 12, 12 } 871 stretch = TRUE 872 orientation = VERTICAL 873 } 874 875# innen a nyilak 876 image { 877 function = BOX 878 recolorable = TRUE 879 state = NORMAL 880 file = "vscroll_down.png" 881 border = { 0, 0, 0, 0 } 882 stretch = TRUE 883 } 884 image { 885 function = BOX 886 recolorable = TRUE 887 state = PRELIGHT 888 file = "vscroll_down.png" 889 border = { 0, 0, 0, 0 } 890 stretch = TRUE 891 orientation = HORIZONTAL 892 } 893 image { 894 function = BOX 895 recolorable = TRUE 896 state = ACTIVE 897 file = "vscroll_down.png" 898 border = { 0, 0, 0, 0 } 899 stretch = TRUE 900 } 901 image { 902 function = BOX 903 recolorable = TRUE 904 state = INSENSITIVE 905 file = "vscroll_down.png" 906 border = { 0, 0, 0, 0 } 907 stretch = TRUE 908 } 909 910 911image 912 { 913 function = ARROW 914 recolorable = TRUE 915 state = NORMAL 916 overlay_file = "null.png" 917 overlay_border = { 0, 0, 0, 0 } 918 overlay_stretch = FALSE 919 arrow_direction = UP 920 } 921 image 922 { 923 function = ARROW 924 recolorable = TRUE 925 state = NORMAL 926 overlay_file = "null.png" 927 overlay_border = { 0, 0, 0, 0 } 928 overlay_stretch = FALSE 929 arrow_direction = DOWN 930 } 931 image 932 { 933 function = ARROW 934 recolorable = TRUE 935 state = NORMAL 936 overlay_file = "null.png" 937 overlay_border = { 0, 0, 0, 0 } 938 overlay_stretch = FALSE 939 arrow_direction = LEFT 940 } 941 image 942 { 943 function = ARROW 944 recolorable = TRUE 945 state = NORMAL 946 overlay_file = "null.png" 947 overlay_border = { 0, 0, 0, 0 } 948 overlay_stretch = FALSE 949 arrow_direction = RIGHT 950 } 951 image 952 { 953 function = ARROW 954 recolorable = TRUE 955 state = PRELIGHT 956 overlay_file = "null.png" 957 overlay_border = { 0, 0, 0, 0 } 958 overlay_stretch = FALSE 959 arrow_direction = UP 960 } 961 962 image 963 { 964 function = ARROW 965 recolorable = TRUE 966 state = PRELIGHT 967 overlay_file = "null.png" 968 overlay_border = { 0, 0, 0, 0 } 969 overlay_stretch = FALSE 970 arrow_direction = DOWN 971 } 972 image 973 { 974 function = ARROW 975 recolorable = TRUE 976 state = PRELIGHT 977 overlay_file = "null.png" 978 overlay_border = { 0, 0, 0, 0 } 979 overlay_stretch = FALSE 980 arrow_direction = LEFT 981 } 982 image 983 { 984 function = ARROW 985 recolorable = TRUE 986 state = PRELIGHT 987 overlay_file = "null.png" 988 overlay_border = { 0, 0, 0, 0 } 989 overlay_stretch = FALSE 990 arrow_direction = RIGHT 991 } 992 993# itt az insensitive 994 image 995 { 996 function = ARROW 997 recolorable = TRUE 998 state = INSENSITIVE 999 overlay_file = "null.png" 1000 overlay_border = { 0, 0, 0, 0 } 1001 overlay_stretch = FALSE 1002 arrow_direction = UP 1003 } 1004 1005 image 1006 { 1007 function = ARROW 1008 recolorable = TRUE 1009 state =INSENSITIVE 1010 overlay_file = "null.png" 1011 overlay_border = { 0, 0, 0, 0 } 1012 overlay_stretch = FALSE 1013 arrow_direction = DOWN 1014 } 1015 image 1016 { 1017 function = ARROW 1018 recolorable = TRUE 1019 state = INSENSITIVE 1020 overlay_file = "null.png" 1021 overlay_border = { 0, 0, 0, 0 } 1022 overlay_stretch = FALSE 1023 arrow_direction = LEFT 1024 } 1025 image 1026 { 1027 function = ARROW 1028 recolorable = TRUE 1029 state = INSENSITIVE 1030 overlay_file = "null.png" 1031 overlay_border = { 0, 0, 0, 0 } 1032 overlay_stretch = FALSE 1033 arrow_direction = RIGHT 1034 } 1035# idáig insensitive 1036 1037 image 1038 { 1039 function = ARROW 1040 recolorable = TRUE 1041 shadow = IN 1042 overlay_file = "null.png" 1043 overlay_border = { 0, 0, 0, 0 } 1044 overlay_stretch = FALSE 1045 arrow_direction = UP 1046 } 1047 image 1048 { 1049 function = ARROW 1050 recolorable = TRUE 1051 shadow = IN 1052 overlay_file = "null.png" 1053 overlay_border = { 0, 0, 0, 0 } 1054 overlay_stretch = FALSE 1055 arrow_direction = DOWN 1056 } 1057 image 1058 { 1059 function = ARROW 1060 recolorable = TRUE 1061 shadow = IN 1062 overlay_file = "null.png" 1063 overlay_border = { 0, 0, 0, 0 } 1064 overlay_stretch = FALSE 1065 arrow_direction = LEFT 1066 } 1067 image 1068 { 1069 function = ARROW 1070 recolorable = TRUE 1071 shadow = IN 1072 overlay_file = "null.png" 1073 overlay_border = { 0, 0, 0, 0 } 1074 overlay_stretch = FALSE 1075 arrow_direction = RIGHT 1076 } 1077 1078} 1079} 1080 1081class "GtkScrollbar" style "Scrollbar" 1082 1083########################################### 1084# Scales: The sliders used for volume, track position, etc. Drawn without 1085# arrow boxes on the end. 1086########################################### 1087 1088#Problem: scales in some apps, like the Gimp, dont look right when they 1089#are small. The slider is too thin and has two overlapping pieces and looks 1090#like crap. 1091 1092style "Scales" { 1093 1094 GtkVScale::slider_length = 21 1095 GtkVScale::slider_width = 21 1096 GtkHScale::slider_length = 21 1097 GtkHScale::slider_width = 21 1098 1099 engine "pixmap" { 1100 image { 1101 function = BOX 1102 recolorable = TRUE 1103 detail = "trough" 1104 file = "slider_vert_bg_new.png" 1105 border = { 0, 0, 10, 10 } 1106 stretch = TRUE 1107 orientation = VERTICAL 1108 } 1109 image { 1110 function = BOX 1111 recolorable = TRUE 1112 detail = "trough" 1113 file = "slider_horiz_bg_new.png" 1114 border = { 10, 10, 0, 0 } 1115 stretch = TRUE 1116 orientation = HORIZONTAL 1117 } 1118 image { 1119 function = SLIDER 1120 recolorable = TRUE 1121 state = NORMAL 1122 file = "slider_button_norm_south.png" 1123 border = { 0, 0, 0, 0 } 1124 stretch = TRUE 1125 orientation = HORIZONTAL 1126 } 1127 image { 1128 function = SLIDER 1129 recolorable = TRUE 1130 state = PRELIGHT 1131 file = "slider_button_prelight_south.png" 1132 border = { 0, 0, 0, 0 } 1133 stretch = TRUE 1134 orientation = HORIZONTAL 1135 } 1136 image { 1137 function = SLIDER 1138 recolorable = TRUE 1139 state = INSENSITIVE 1140 file = "slider_button_insens_south.png" 1141 border = { 0, 0, 0, 0 } 1142 stretch = TRUE 1143 orientation = HORIZONTAL 1144 } 1145 image { 1146 function = SLIDER 1147 recolorable = TRUE 1148 state = NORMAL 1149 file = "slider_button_norm_east.png" 1150 border = { 0, 0, 0, 0 } 1151 stretch = TRUE 1152 orientation = VERTICAL 1153 } 1154 image { 1155 function = SLIDER 1156 recolorable = TRUE 1157 state = PRELIGHT 1158 file = "slider_button_prelight_east.png" 1159 border = { 0, 0, 0, 0 } 1160 stretch = TRUE 1161 orientation = VERTICAL 1162 } 1163 image { 1164 function = SLIDER 1165 recolorable = TRUE 1166 state = INSENSITIVE 1167 file = "slider_button_insens_east.png" 1168 border = { 0, 0, 0, 0 } 1169 stretch = TRUE 1170 orientation = VERTICAL 1171 } 1172 } 1173 1174} 1175 1176class "GtkScale" style "Scales" 1177 1178################################################## 1179#Spin Controls 1180#--------------- 1181#These are buttons with two arrows that let you set some value by clicking the 1182#the arrows. The widget might also have a text entry box for setting the value 1183#directly by typing it in. 1184################################################## 1185 1186style "spin" 1187{ 1188 engine "pixmap" 1189 { 1190 1191 #First we set the images for drawing different parts of a text entry that 1192 #might be attached to the widget. This could be done by inheriting from the 1193 #style used for GtkEntry, but we just set everything here explicitly. Still having 1194 #the same problem as with GtkEntry with the white outline if we do not draw 1195 #a shadow with a thick enough border. 1196 1197 image 1198 { 1199 function = FLAT_BOX 1200 recolorable = TRUE 1201 state = NORMAL 1202 detail = "entry_bg" 1203 file = "text_entry.png" 1204 border = {6,6,6,6 } 1205 stretch = TRUE 1206 } 1207 1208 image 1209 { 1210 function = FLAT_BOX 1211 recolorable = TRUE 1212 state = SELECTED 1213 detail = "entry_bg" 1214 file = "out_sel.png" 1215 border = { 3,3,3,3 } 1216 stretch = TRUE 1217 } 1218 1219 image 1220 { 1221 function = FLAT_BOX 1222 recolorable = TRUE 1223 state = INSENSITIVE 1224 detail = "entry_bg" 1225 file = "text_entry.png" 1226 border = {6,6,6,6 } 1227 stretch = TRUE 1228 } 1229 1230 image 1231 { 1232 function = FOCUS 1233 recolorable = TRUE 1234 overlay_file = "text_entry_focus.png" 1235 overlay_border = { 2, 2, 2, 2 } 1236 overlay_stretch = TRUE 1237 } 1238 1239 image 1240 { 1241 function = SHADOW 1242 recolorable = TRUE 1243 shadow = IN 1244 file = "null.png" 1245 border = { 0,0,0,0 } 1246 stretch = TRUE 1247 } 1248 1249 1250 #The following two sections define the images used to draw the up and 1251 #down spin buttons in the INSENSITIVE state. 1252 image 1253 { 1254 function = BOX 1255 recolorable = TRUE 1256 state = INSENSITIVE 1257 detail = "spinbutton_up" 1258 file = "spin_up_insens.png" 1259 border = { 0,0,0,0 } 1260 stretch = TRUE 1261 } 1262 1263 image 1264 { 1265 function = BOX 1266 recolorable = TRUE 1267 state = INSENSITIVE 1268 detail = "spinbutton_down" 1269 file = "spin_down_insens.png" 1270 border = { 0,0,0,0 } 1271 stretch = TRUE 1272 } 1273 1274 #The following two sections define the images used to draw the up and 1275 #down spin buttons in the PRELIGHT state. 1276 image 1277 { 1278 function = BOX 1279 recolorable = TRUE 1280 state = PRELIGHT 1281 detail = "spinbutton_up" 1282 file = "spin_up_pre.png" 1283 border = { 0,0,0,0 } 1284 stretch = TRUE 1285 } 1286 1287 image 1288 { 1289 function = BOX 1290 recolorable = TRUE 1291 state = PRELIGHT 1292 detail = "spinbutton_down" 1293 file = "spin_down_pre.png" 1294 border = { 0,0,0,0 } 1295 stretch = TRUE 1296 } 1297 1298 #The following two sections define the images used to draw the up and 1299 #down spin buttons in any states that we have not already defined. 1300 image 1301 { 1302 function = BOX 1303 state = NORMAL 1304 recolorable = TRUE 1305 detail = "spinbutton_up" 1306 file = "spin_up.png" 1307 border = { 0,0,0,0 } 1308 stretch = TRUE 1309 } 1310 1311 image 1312 { 1313 function = BOX 1314 recolorable = TRUE 1315 state = NORMAL 1316 detail = "spinbutton_down" 1317 file = "spin_down.png" 1318 border = { 0,0,0,0 } 1319 stretch = TRUE 1320 } 1321 1322 #Pushed state 1323 image 1324 { 1325 function = BOX 1326 state = ACTIVE 1327 recolorable = TRUE 1328 detail = "spinbutton_up" 1329 file = "spin_up_push.png" 1330 border = { 0,0,0,0 } 1331 stretch = TRUE 1332 } 1333 1334 image 1335 { 1336 function = BOX 1337 recolorable = TRUE 1338 state = ACTIVE 1339 detail = "spinbutton_down" 1340 file = "spin_down_push.png" 1341 border = { 0,0,0,0 } 1342 stretch = TRUE 1343 } 1344 1345 1346 #The arrows drawn on the spinbuttons are set by the next two 1347 #entries. Different types of arrows can be used for different 1348 #states by setting images for each state. 1349 1350 image 1351 { 1352 function = ARROW 1353 recolorable = TRUE 1354 overlay_file = "spin_button_up_arrow.png" 1355 overlay_border = { 0, 0, 0, 0 } 1356 overlay_stretch = FALSE 1357 arrow_direction = UP 1358 } 1359 1360 image 1361 { 1362 function = ARROW 1363 recolorable = TRUE 1364 overlay_file = "spin_button_down_arrow.png" 1365 overlay_border = { 0, 0, 0, 0 } 1366 overlay_stretch = FALSE 1367 arrow_direction = DOWN 1368 } 1369 } 1370} 1371 1372class "GtkSpin*" style "spin" 1373 1374############################################ 1375# Check Boxes 1376# -------------- 1377# This section tells GTK how to draw check boxes. 1378############################################ 1379 1380style "CheckBox" 1381{ 1382 1383 engine "pixmap" 1384 { 1385 #This is the image used to draw an unchecked box. 1386 image 1387 { 1388 function = CHECK 1389 recolorable = TRUE 1390 state = NORMAL 1391 shadow = OUT 1392 overlay_file = "check_out.png" 1393 overlay_stretch = FALSE 1394 } 1395 1396 image 1397 { 1398 function = CHECK 1399 recolorable = TRUE 1400 state = PRELIGHT 1401 shadow = OUT 1402 overlay_file = "check_out.png" 1403 overlay_stretch = FALSE 1404 } 1405 1406 image 1407 { 1408 function = CHECK 1409 recolorable = TRUE 1410 state = ACTIVE 1411 shadow = OUT 1412 overlay_file = "check_out_push.png" 1413 overlay_stretch = FALSE 1414 } 1415 1416 image 1417 { 1418 function = CHECK 1419 recolorable = TRUE 1420 state = INSENSITIVE 1421 shadow = OUT 1422 overlay_file = "check_out_insens.png" 1423 overlay_stretch = FALSE 1424 } 1425 1426 #This is the image used to draw a selected (checked) box. 1427 image 1428 { 1429 function = CHECK 1430 recolorable = TRUE 1431 state = NORMAL 1432 shadow = IN 1433 overlay_file = "check_in.png" 1434 overlay_stretch = FALSE 1435 } 1436 1437 image 1438 { 1439 function = CHECK 1440 recolorable = TRUE 1441 state = PRELIGHT 1442 shadow = IN 1443 overlay_file = "check_in.png" 1444 overlay_stretch = FALSE 1445 } 1446 1447 image 1448 { 1449 function = CHECK 1450 recolorable = TRUE 1451 state = ACTIVE 1452 shadow = IN 1453 overlay_file = "check_in_push.png" 1454 overlay_stretch = FALSE 1455 } 1456 1457 1458 image 1459 { 1460 function = CHECK 1461 recolorable = TRUE 1462 state = INSENSITIVE 1463 shadow = IN 1464 overlay_file = "check_in_insens.png" 1465 overlay_stretch = FALSE 1466 } 1467 1468 #Use this image to draw the highlight when a line with a check box 1469 #is moused over. 1470 image 1471 { 1472 function = FLAT_BOX 1473 recolorable = TRUE 1474 file = "checklight.png" 1475 border = { 1, 1, 1, 1 } 1476 } 1477 1478 } 1479} 1480 1481class "GtkCheckButton" style "CheckBox" 1482 1483############################################ 1484# Radio Buttons 1485############################################ 1486 1487style "RadioButton" 1488{ 1489 1490 engine "pixmap" 1491 { 1492 1493 image 1494 { 1495 function = OPTION 1496 recolorable = TRUE 1497 state = NORMAL 1498 shadow = OUT 1499 overlay_file = "option_out.png" 1500 overlay_border = { 0, 0, 0, 0 } 1501 overlay_stretch = FALSE 1502 } 1503 1504image 1505 { 1506 function = OPTION 1507 recolorable = TRUE 1508 state = PRELIGHT 1509 shadow = OUT 1510 overlay_file = "option_out.png" 1511 overlay_border = { 0, 0, 0, 0 } 1512 overlay_stretch = FALSE 1513 } 1514 1515image 1516 { 1517 function = OPTION 1518 recolorable = TRUE 1519 state = ACTIVE 1520 shadow = OUT 1521 overlay_file = "option_out_push.png" 1522 overlay_border = { 0, 0, 0, 0 } 1523 overlay_stretch = FALSE 1524 } 1525 1526image 1527 { 1528 function = OPTION 1529 recolorable = TRUE 1530 state = INSENSITIVE 1531 shadow = OUT 1532 overlay_file = "option_out_insens.png" 1533 overlay_border = { 0, 0, 0, 0 } 1534 overlay_stretch = FALSE 1535 } 1536 1537 image 1538 { 1539 function = OPTION 1540 recolorable = TRUE 1541 state = NORMAL 1542 shadow = IN 1543 overlay_file = "option_in.png" 1544 overlay_border = { 0, 0, 0, 0 } 1545 overlay_stretch = FALSE 1546 } 1547 1548 image 1549 { 1550 function = OPTION 1551 recolorable = TRUE 1552 state = PRELIGHT 1553 shadow = IN 1554 overlay_file = "option_in.png" 1555 overlay_border = { 0, 0, 0, 0 } 1556 overlay_stretch = FALSE 1557 } 1558 1559 image 1560 { 1561 function = OPTION 1562 recolorable = TRUE 1563 state = ACTIVE 1564 shadow = IN 1565 overlay_file = "option_in_push.png" 1566 overlay_border = { 0, 0, 0, 0 } 1567 overlay_stretch = FALSE 1568 } 1569 1570 image 1571 { 1572 function = OPTION 1573 recolorable = TRUE 1574 state = INSENSITIVE 1575 shadow = IN 1576 overlay_file = "option_in_insens.png" 1577 overlay_border = { 0, 0, 0, 0 } 1578 overlay_stretch = FALSE 1579 } 1580 1581 #Use this image to draw the highlight when a line with a radio box 1582 #is moused over. 1583 image 1584 { 1585 function = FLAT_BOX 1586 recolorable = TRUE 1587 file = "checklight.png" 1588 border = { 1, 1, 1, 1 } 1589 } 1590 1591 } 1592} 1593 1594class "GtkRadioButton" style "RadioButton" 1595 1596################################################ 1597# Statusbars Drawn by gtk (info bar on the bottom of the window) 1598################################################ 1599style "osx-GtkStatusbar" = "osx-default" 1600{ 1601 1602xthickness = 2 1603 ythickness = 2 1604 GtkStatusbar::shadow_type = GTK_SHADOW_NONE 1605 1606 engine "pixmap" 1607 { 1608 1609 #This does not seem to be working. It seems that you can tell gtk how 1610 #to draw the resizing grip in the bottom right corner of the window, which 1611 #seems to be part of the status bar. Not sure why it is not working. 1612 image 1613 { 1614 function = RESIZE_GRIP 1615 recolorable = TRUE 1616 #state = NORMAL 1617 detail = "statusbar" 1618 overlay_file = "resize_grip.png" 1619 1620 overlay_border = {1,1,1,1 } 1621 overlay_stretch = FALSE 1622 } 1623 } 1624 1625 1626} 1627 1628class "GtkStatusbar" style "osx-GtkStatusbar" 1629 1630########################################### 1631#Progress Bars 1632########################################### 1633 1634style "ProgressBar" { 1635xthickness = 1 1636 ythickness = 1 1637 1638 engine "pixmap" { 1639 image { 1640 function = BOX 1641 recolorable = TRUE 1642 detail = "bar" 1643 file = "progressbar.png" 1644 border = { 0, 0, 3, 3} 1645 stretch = FALSE 1646 } 1647 image { 1648 function = BOX 1649 recolorable = TRUE 1650 detail = "trough" 1651 file = "trough.png" 1652 border = { 3, 3, 4, 4} 1653 stretch = TRUE 1654 orientation = HORIZONTAL 1655 } 1656 } 1657} 1658 1659class "GtkProgressBar" style "ProgressBar" 1660 1661########################################### 1662#GtkFrame 1663########################################### 1664 1665style "Frames" 1666{ 1667 #xthickness = 1 1668 #ythickness = 1 1669 1670 font_name = "Bold" 1671 1672 engine "pixmap" 1673 { 1674 image 1675 { 1676 function = FLAT_BOX 1677 recolorable = TRUE 1678 file = "menu_hi-light.png" 1679 border = { 10, 2, 2, 2} 1680 stretch = TRUE 1681 } 1682 1683 image 1684 { 1685 function = EXTENSION 1686 state = ACTIVE 1687 gap_side = BOTTOM 1688 file = "menu_hi-light.png" 1689 border = {10,2,2,2} 1690 stretch = TRUE 1691 } 1692 } 1693} 1694#widget_class "*GtkNotebook.GtkLabel" style "Frames" 1695#widget_class "*GtkNotebook.GtkHBox.GtkLabel" style "Frames" 1696#widget_class "*GtkFrame.GtkLabel" style "Frames" 1697#widget_class "*GtkFrame.GtkHBox.GtkLabel" style "Frames" 1698 1699 1700################################################ 1701# Text Widgets 1702################################################ 1703style "osx-Text" = "osx-default" 1704{ 1705 1706 base[NORMAL] = "#FFFFFF" 1707 fg[PRELIGHT] = "#FFFFFF" 1708} 1709 1710class "GtkTextView" style "osx-Text" 1711class "GtkScrolledWindow" style "osx-Text" 1712 1713 1714#Widgets that have not been defined yet 1715class "GtkWidget" style "osx-default" 1716 1717style "osx-tooltips" = "osx-default" 1718{ 1719 xthickness = 4 1720 ythickness = 4 1721 bg[NORMAL] = { 1.0,1.0,0.75 } 1722} 1723 1724 1725 1726