Multiple changes, view description:

- Tweak some light style colors
- Added dark style option (style requires colors review)
- Added function: GuiBackground() to retrieve style background color
- Removed useless spacing
This commit is contained in:
raysan5
2016-08-16 11:20:07 +02:00
parent 26079013c5
commit 7fae6f0a2b

123
raygui.h
View File

@ -251,6 +251,7 @@ typedef enum GuiProperty {
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
// Module Functions Declaration // Module Functions Declaration
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
RAYGUIDEF Color GuiBackground(void); // Get GUI background color
RAYGUIDEF void GuiLabel(Rectangle bounds, const char *text); // Label element, show text RAYGUIDEF void GuiLabel(Rectangle bounds, const char *text); // Label element, show text
RAYGUIDEF void GuiLabelEx(Rectangle bounds, const char *text, Color textColor, Color border, Color inner); // Label element extended, configurable colors RAYGUIDEF void GuiLabelEx(Rectangle bounds, const char *text, Color textColor, Color border, Color inner); // Label element extended, configurable colors
RAYGUIDEF bool GuiButton(Rectangle bounds, const char *text); // Button element, returns true when clicked RAYGUIDEF bool GuiButton(Rectangle bounds, const char *text); // Button element, returns true when clicked
@ -308,6 +309,10 @@ RAYGUIDEF int GetStyleProperty(int guiProperty); // Get
#define MOUSE_LEFT_BUTTON 0 #define MOUSE_LEFT_BUTTON 0
#endif #endif
#if !defined(RAYGUI_STYLE_DEFAULT_LIGHT) && !defined(RAYGUI_STYLE_DEFAULT_DARK)
#define RAYGUI_STYLE_DEFAULT_LIGHT
#endif
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
// Types and Structures Definition // Types and Structures Definition
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
@ -324,11 +329,12 @@ typedef enum { SLIDER_DEFAULT, SLIDER_HOVER, SLIDER_ACTIVE } SliderState;
// Global Variables Definition // Global Variables Definition
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
#if defined(RAYGUI_STYLE_DEFAULT_LIGHT)
// Current GUI style (default light) // Current GUI style (default light)
static int style[NUM_PROPERTIES] = { static int style[NUM_PROPERTIES] = {
0xf5f5f5ff, // GLOBAL_BASE_COLOR, 0xf5f5f5ff, // GLOBAL_BASE_COLOR
0xf5f5f5ff, // GLOBAL_BORDER_COLOR, 0xf5f5f5ff, // GLOBAL_BORDER_COLOR
0xf5f5f5ff, // GLOBAL_TEXT_COLOR, 0xf5f5f5ff, // GLOBAL_TEXT_COLOR
10, // GLOBAL_TEXT_FONTSIZE 10, // GLOBAL_TEXT_FONTSIZE
1, // GLOBAL_BORDER_WIDTH 1, // GLOBAL_BORDER_WIDTH
0xf5f5f5ff, // BACKGROUND_COLOR 0xf5f5f5ff, // BACKGROUND_COLOR
@ -342,7 +348,7 @@ static int style[NUM_PROPERTIES] = {
0x4d4d4dff, // BUTTON_DEFAULT_TEXT_COLOR 0x4d4d4dff, // BUTTON_DEFAULT_TEXT_COLOR
0xc8c8c8ff, // BUTTON_HOVER_BORDER_COLOR 0xc8c8c8ff, // BUTTON_HOVER_BORDER_COLOR
0xffffffff, // BUTTON_HOVER_INSIDE_COLOR 0xffffffff, // BUTTON_HOVER_INSIDE_COLOR
0x353535ff, // BUTTON_HOVER_TEXT_COLOR 0x868686ff, // BUTTON_HOVER_TEXT_COLOR
0x7bb0d6ff, // BUTTON_PRESSED_BORDER_COLOR 0x7bb0d6ff, // BUTTON_PRESSED_BORDER_COLOR
0xbcecffff, // BUTTON_PRESSED_INSIDE_COLOR 0xbcecffff, // BUTTON_PRESSED_INSIDE_COLOR
0x5f9aa7ff, // BUTTON_PRESSED_TEXT_COLOR 0x5f9aa7ff, // BUTTON_PRESSED_TEXT_COLOR
@ -425,6 +431,109 @@ static int style[NUM_PROPERTIES] = {
0x000000ff, // TEXTBOX_LINE_COLOR 0x000000ff, // TEXTBOX_LINE_COLOR
10 // TEXTBOX_TEXT_FONTSIZE 10 // TEXTBOX_TEXT_FONTSIZE
}; };
#elif defined(RAYGUI_STYLE_DEFAULT_DARK)
// Current GUI style (default dark)
static int style[NUM_PROPERTIES] = {
0xf5f5f5ff, // GLOBAL_BASE_COLOR
0xf5f5f5ff, // GLOBAL_BORDER_COLOR
0xf5f5f5ff, // GLOBAL_TEXT_COLOR
0xa, // GLOBAL_TEXT_FONTSIZE
0x1, // GLOBAL_BORDER_WIDTH
0x293235ff, // BACKGROUND_COLOR
0x0, // LABEL_BORDER_WIDTH
0x90acb4ff, // LABEL_TEXT_COLOR
0x0, // LABEL_TEXT_PADDING
0x2, // BUTTON_BORDER_WIDTH
0x0, // BUTTON_TEXT_PADDING
0x3e4a4fff, // BUTTON_DEFAULT_BORDER_COLOR
0x344041ff, // BUTTON_DEFAULT_INSIDE_COLOR
0x90acb4ff, // BUTTON_DEFAULT_TEXT_COLOR
0x47595fff, // BUTTON_HOVER_BORDER_COLOR
0x334f59ff, // BUTTON_HOVER_INSIDE_COLOR
0x90acb4ff, // BUTTON_HOVER_TEXT_COLOR
0x5f9aa4ff, // BUTTON_PRESSED_BORDER_COLOR
0x334f59ff, // BUTTON_PRESSED_INSIDE_COLOR
0x5f9aa8ff, // BUTTON_PRESSED_TEXT_COLOR
20, // TOGGLE_TEXT_PADDING
1, // TOGGLE_BORDER_WIDTH
0x3e4b4dff, // TOGGLE_DEFAULT_BORDER_COLOR
0x344041ff, // TOGGLE_DEFAULT_INSIDE_COLOR
0x828282ff, // TOGGLE_DEFAULT_TEXT_COLOR
0x47595fff, // TOGGLE_HOVER_BORDER_COLOR
0x334f59ff, // TOGGLE_HOVER_INSIDE_COLOR
0x828282ff, // TOGGLE_HOVER_TEXT_COLOR
0x5f9aa8ff, // TOGGLE_PRESSED_BORDER_COLOR
0x334f59ff, // TOGGLE_PRESSED_INSIDE_COLOR
0x5f9aa8ff, // TOGGLE_PRESSED_TEXT_COLOR
0x92c763ff, // TOGGLE_ACTIVE_BORDER_COLOR
0x334f59ff, // TOGGLE_ACTIVE_INSIDE_COLOR
0x92c763ff, // TOGGLE_ACTIVE_TEXT_COLOR
0x3, // TOGGLEGROUP_PADDING
0x1, // SLIDER_BORDER_WIDTH
0x0, // SLIDER_BUTTON_BORDER_WIDTH
0x828282ff, // SLIDER_BORDER_COLOR
0x3e4b4dff, // SLIDER_INSIDE_COLOR
0x92c763ff, // SLIDER_DEFAULT_COLOR
0xc3e0a9ff, // SLIDER_HOVER_COLOR
0xffffffff, // SLIDER_ACTIVE_COLOR
0x828282ff, // SLIDERBAR_BORDER_COLOR
0x344041ff, // SLIDERBAR_INSIDE_COLOR
0x92c763ff, // SLIDERBAR_DEFAULT_COLOR
0xc3e0a9ff, // SLIDERBAR_HOVER_COLOR
0xffffffff, // SLIDERBAR_ACTIVE_COLOR
0x828282ff, // SLIDERBAR_ZERO_LINE_COLOR
0x828282ff, // PROGRESSBAR_BORDER_COLOR
0x3e4b4dff, // PROGRESSBAR_INSIDE_COLOR
0x92c763ff, // PROGRESSBAR_PROGRESS_COLOR
0x1, // PROGRESSBAR_BORDER_WIDTH
0x3e4b4dff, // SPINNER_LABEL_BORDER_COLOR
0x344041ff, // SPINNER_LABEL_INSIDE_COLOR
0x3e4b4dff, // SPINNER_DEFAULT_BUTTON_BORDER_COLOR
0x344041ff, // SPINNER_DEFAULT_BUTTON_INSIDE_COLOR
0x5f9aa8ff, // SPINNER_DEFAULT_SYMBOL_COLOR
0x5f9aa8ff, // SPINNER_DEFAULT_TEXT_COLOR
0x47595fff, // SPINNER_HOVER_BUTTON_BORDER_COLOR
0x334f59ff, // SPINNER_HOVER_BUTTON_INSIDE_COLOR
0x5f9aa8ff, // SPINNER_HOVER_SYMBOL_COLOR
0x5f9aa8ff, // SPINNER_HOVER_TEXT_COLOR
0x92c763ff, // SPINNER_PRESSED_BUTTON_BORDER_COLOR
0x334f59ff, // SPINNER_PRESSED_BUTTON_INSIDE_COLOR
0x92c763ff, // SPINNER_PRESSED_SYMBOL_COLOR
0x92c763ff, // SPINNER_PRESSED_TEXT_COLOR
0x1, // COMBOBOX_PADDING
30, // COMBOBOX_BUTTON_WIDTH
20, // COMBOBOX_BUTTON_HEIGHT
0x1, // COMBOBOX_BORDER_WIDTH
0x3e4b4dff, // COMBOBOX_DEFAULT_BORDER_COLOR
0x344041ff, // COMBOBOX_DEFAULT_INSIDE_COLOR
0x5f9aa8ff, // COMBOBOX_DEFAULT_TEXT_COLOR
0x5f9aa8ff, // COMBOBOX_DEFAULT_LIST_TEXT_COLOR
0x47595fff, // COMBOBOX_HOVER_BORDER_COLOR
0x334f59ff, // COMBOBOX_HOVER_INSIDE_COLOR
0x5f9aa8ff, // COMBOBOX_HOVER_TEXT_COLOR
0x5f9aa8ff, // COMBOBOX_HOVER_LIST_TEXT_COLOR
0x5f9aa8ff, // COMBOBOX_PRESSED_BORDER_COLOR
0x334f59ff, // COMBOBOX_PRESSED_INSIDE_COLOR
0x5f9aa8ff, // COMBOBOX_PRESSED_TEXT_COLOR
0x92c763ff, // COMBOBOX_PRESSED_LIST_BORDER_COLOR
0x334f59ff, // COMBOBOX_PRESSED_LIST_INSIDE_COLOR
0x92c763ff, // COMBOBOX_PRESSED_LIST_TEXT_COLOR
0x47595fff, // CHECKBOX_DEFAULT_BORDER_COLOR
0x344041ff, // CHECKBOX_DEFAULT_INSIDE_COLOR
0x47595fff, // CHECKBOX_HOVER_BORDER_COLOR
0x334f59ff, // CHECKBOX_HOVER_INSIDE_COLOR
0x5f9aa8ff, // CHECKBOX_CLICK_BORDER_COLOR
0x334f59ff, // CHECKBOX_CLICK_INSIDE_COLOR
0x92c763ff, // CHECKBOX_STATUS_ACTIVE_COLOR
0x2, // CHECKBOX_INSIDE_WIDTH
0x1, // TEXTBOX_BORDER_WIDTH
0x47595fff, // TEXTBOX_BORDER_COLOR
0x828282ff, // TEXTBOX_INSIDE_COLOR
0xff, // TEXTBOX_TEXT_COLOR
0xff, // TEXTBOX_LINE_COLOR
0xa, // TEXTBOX_TEXT_FONTSIZE
};
#endif
#if !defined(RAYGUI_NO_STYLE_SAVE_LOAD) #if !defined(RAYGUI_NO_STYLE_SAVE_LOAD)
// GUI property names (to read/write style text files) // GUI property names (to read/write style text files)
@ -565,12 +674,12 @@ static void DrawRectangle(int posX, int posY, int width, int height, Color color
// Module Functions Definition // Module Functions Definition
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
RAYGUIDEF Color GuiBackground(void) { return GetColor(style[BACKGROUND_COLOR]); }
// Label element, show text // Label element, show text
RAYGUIDEF void GuiLabel(Rectangle bounds, const char *text) RAYGUIDEF void GuiLabel(Rectangle bounds, const char *text)
{ {
#define BLANK (Color){ 0, 0, 0, 0 } // Blank (Transparent) GuiLabelEx(bounds, text, GetColor(style[LABEL_TEXT_COLOR]), (Color){ 0, 0, 0, 0 }, (Color){ 0, 0, 0, 0 });
GuiLabelEx(bounds, text, GetColor(style[LABEL_TEXT_COLOR]), BLANK, BLANK);
} }
// Label element extended, configurable colors // Label element extended, configurable colors