2 * Copyright 2001-2015, Haiku.
3 * Distributed under the terms of the MIT License.
6 * DarkWyrm <bpmagic@columbus.rr.com>
7 * Stephan Aßmus <superstippi@gmx.de>
8 * Rene Gollent <rene@gollent.com>
9 * Joseph Groover <looncraz@looncraz.net>
15 #include <DefaultColors.h>
16 #include <Directory.h>
19 #include <InterfaceDefs.h>
22 #include <ServerReadOnlyMemory.h>
27 #undef B_TRANSLATION_CONTEXT
28 #define B_TRANSLATION_CONTEXT "Colors tab"
31 static ColorDescription sColorDescriptionTable
[] = {
32 { B_PANEL_BACKGROUND_COLOR
, B_TRANSLATE_MARK("Panel background") },
33 { B_PANEL_TEXT_COLOR
, B_TRANSLATE_MARK("Panel text") },
34 { B_DOCUMENT_BACKGROUND_COLOR
, B_TRANSLATE_MARK("Document background") },
35 { B_DOCUMENT_TEXT_COLOR
, B_TRANSLATE_MARK("Document text") },
36 { B_CONTROL_BACKGROUND_COLOR
, B_TRANSLATE_MARK("Control background") },
37 { B_CONTROL_TEXT_COLOR
, B_TRANSLATE_MARK("Control text") },
38 { B_CONTROL_BORDER_COLOR
, B_TRANSLATE_MARK("Control border") },
39 { B_CONTROL_HIGHLIGHT_COLOR
, B_TRANSLATE_MARK("Control highlight") },
40 { B_CONTROL_MARK_COLOR
, B_TRANSLATE_MARK("Control mark") },
41 { B_NAVIGATION_BASE_COLOR
, B_TRANSLATE_MARK("Navigation base") },
42 { B_NAVIGATION_PULSE_COLOR
, B_TRANSLATE_MARK("Navigation pulse") },
43 { B_SHINE_COLOR
, B_TRANSLATE_MARK("Shine") },
44 { B_SHADOW_COLOR
, B_TRANSLATE_MARK("Shadow") },
45 { B_LINK_TEXT_COLOR
, B_TRANSLATE_MARK("Link text") },
46 { B_LINK_HOVER_COLOR
, B_TRANSLATE_MARK("Link hover") },
47 { B_LINK_VISITED_COLOR
, B_TRANSLATE_MARK("Link visited") },
48 { B_LINK_ACTIVE_COLOR
, B_TRANSLATE_MARK("Link active") },
49 { B_MENU_BACKGROUND_COLOR
, B_TRANSLATE_MARK("Menu background") },
50 { B_MENU_SELECTED_BACKGROUND_COLOR
,
51 B_TRANSLATE_MARK("Selected menu item background") },
52 { B_MENU_ITEM_TEXT_COLOR
, B_TRANSLATE_MARK("Menu item text") },
53 { B_MENU_SELECTED_ITEM_TEXT_COLOR
,
54 B_TRANSLATE_MARK("Selected menu item text") },
55 { B_MENU_SELECTED_BORDER_COLOR
,
56 B_TRANSLATE_MARK("Selected menu item border") },
57 { B_LIST_BACKGROUND_COLOR
, B_TRANSLATE_MARK("List background") },
58 { B_LIST_SELECTED_BACKGROUND_COLOR
,
59 B_TRANSLATE_MARK("Selected list item background") },
60 { B_LIST_ITEM_TEXT_COLOR
, B_TRANSLATE_MARK("List item text") },
61 { B_LIST_SELECTED_ITEM_TEXT_COLOR
,
62 B_TRANSLATE_MARK("Selected list item text") },
63 { B_SCROLL_BAR_THUMB_COLOR
,
64 B_TRANSLATE_MARK("Scroll bar thumb") },
65 { B_TOOL_TIP_BACKGROUND_COLOR
, B_TRANSLATE_MARK("Tooltip background") },
66 { B_TOOL_TIP_TEXT_COLOR
, B_TRANSLATE_MARK("Tooltip text") },
67 { B_STATUS_BAR_COLOR
, B_TRANSLATE_MARK("Status bar") },
68 { B_SUCCESS_COLOR
, B_TRANSLATE_MARK("Success") },
69 { B_FAILURE_COLOR
, B_TRANSLATE_MARK("Failure") },
70 { B_WINDOW_TAB_COLOR
, B_TRANSLATE_MARK("Window tab") },
71 { B_WINDOW_TEXT_COLOR
, B_TRANSLATE_MARK("Window tab text") },
72 { B_WINDOW_INACTIVE_TAB_COLOR
, B_TRANSLATE_MARK("Inactive window tab") },
73 { B_WINDOW_INACTIVE_TEXT_COLOR
,
74 B_TRANSLATE_MARK("Inactive window tab text") },
75 { B_WINDOW_BORDER_COLOR
, B_TRANSLATE_MARK("Window border") },
76 { B_WINDOW_INACTIVE_BORDER_COLOR
,
77 B_TRANSLATE_MARK("Inactive window border") }
80 const int32 sColorDescriptionCount
= sizeof(sColorDescriptionTable
)
81 / sizeof(ColorDescription
);
84 const ColorDescription
*
85 get_color_description(int32 index
)
87 if (index
< 0 || index
>= sColorDescriptionCount
)
89 return &sColorDescriptionTable
[index
];
94 color_description_count(void)
96 return sColorDescriptionCount
;
101 get_default_colors(BMessage
* message
)
106 for (int32 index
= 0; index
< kColorWhichCount
; ++index
) {
107 color_which which
= index_to_color_which(index
);
108 message
->AddColor(ui_color_name(which
),
109 BPrivate::kDefaultColors
[index
]);
115 get_current_colors(BMessage
* message
)
120 for (int32 index
= 0; index
< kColorWhichCount
; ++index
) {
121 color_which which
= index_to_color_which(index
);
122 message
->AddColor(ui_color_name(which
), ui_color(which
));