1/* 2 * Copyright 2010-2012, Haiku, Inc. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 */ 5 6 7#include "Colors.h" 8 9#include <Catalog.h> 10 11 12#undef B_TRANSLATION_CONTEXT 13#define B_TRANSLATION_CONTEXT "Terminal colors scheme" 14 15 16// Standard colors 17const rgb_color kBlack = { 0, 0, 0, 255 }; 18const rgb_color kGreen = { 0, 255, 0, 255 }; 19const rgb_color kWhite = { 255, 255, 255, 255 }; 20const rgb_color kYellow = { 255, 255, 0, 255 }; 21 22 23const struct color_scheme kColorSchemeDefault = { 24 B_TRANSLATE("Default"), 25 kBlack, 26 kWhite, 27 kWhite, 28 kBlack, 29 kWhite, 30 kBlack 31}; 32 33const struct color_scheme kColorSchemeBlue = { 34 B_TRANSLATE("Blue"), 35 kYellow, 36 { 0, 0, 139, 255 }, 37 kBlack, 38 kYellow, 39 kBlack, 40 { 0, 139, 139, 255 }, 41}; 42 43const struct color_scheme kColorSchemeMidnight = { 44 B_TRANSLATE("Midnight"), 45 kWhite, 46 kBlack, 47 kBlack, 48 kWhite, 49 kBlack, 50 kWhite 51}; 52 53const struct color_scheme kColorSchemeProfessional = { 54 B_TRANSLATE("Professional"), 55 kWhite, 56 { 8, 8, 8, 255 }, 57 { 50, 50, 50, 255 }, 58 kWhite, 59 kWhite, 60 { 50, 50, 50, 255 }, 61}; 62 63const struct color_scheme kColorSchemeRetro = { 64 B_TRANSLATE("Retro"), 65 kGreen, 66 kBlack, 67 kBlack, 68 kGreen, 69 kBlack, 70 kGreen 71}; 72 73const struct color_scheme kColorSchemeSlate = { 74 B_TRANSLATE("Slate"), 75 kWhite, 76 { 20, 20, 28, 255 }, 77 { 70, 70, 70, 255 }, 78 { 255, 200, 0, 255 }, 79 kWhite, 80 { 70, 70, 70, 255 }, 81}; 82 83struct color_scheme gCustomColorScheme = { 84 B_TRANSLATE("Custom") 85}; 86 87const color_scheme* gPredefinedColorSchemes[] = { 88 &kColorSchemeDefault, 89 &kColorSchemeBlue, 90 &kColorSchemeMidnight, 91 &kColorSchemeProfessional, 92 &kColorSchemeRetro, 93 &kColorSchemeSlate, 94 &gCustomColorScheme, 95 NULL 96}; 97 98 99bool 100color_scheme::operator==(const color_scheme& scheme) 101{ 102 return text_fore_color == scheme.text_fore_color 103 && text_back_color == scheme.text_back_color 104 && cursor_fore_color == scheme.cursor_fore_color 105 && cursor_back_color == scheme.cursor_back_color 106 && select_fore_color == scheme.select_fore_color 107 && select_back_color == scheme.select_back_color; 108} 109