diff --git a/examples/controls_test_suite/controls_test_suite.c b/examples/controls_test_suite/controls_test_suite.c index ba5209a..5307d80 100644 --- a/examples/controls_test_suite/controls_test_suite.c +++ b/examples/controls_test_suite/controls_test_suite.c @@ -203,14 +203,14 @@ int main() GuiGrid((Rectangle) { 560, 25 + 180 + 180, 100, 120 }, NULL, 20, 2); - GuiStatusBar((Rectangle){ 0, GetScreenHeight() - 20, GetScreenWidth(), 20 }, "This is a status bar"); + GuiStatusBar((Rectangle){ 0, (float)GetScreenHeight() - 20, (float)GetScreenWidth(), 20 }, "This is a status bar"); alphaValue = GuiColorBarAlpha((Rectangle){ 320, 490, 200, 30 }, NULL, alphaValue); if (showMessageBox) { DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(RAYWHITE, 0.8f)); - int result = GuiMessageBox((Rectangle){ GetScreenWidth()/2 - 125, GetScreenHeight()/2 - 50, 250, 100 }, GuiIconText(ICON_EXIT, "Close Window"), "Do you really want to exit?", "Yes;No"); + int result = GuiMessageBox((Rectangle){ (float)GetScreenWidth()/2 - 125, (float)GetScreenHeight()/2 - 50, 250, 100 }, GuiIconText(ICON_EXIT, "Close Window"), "Do you really want to exit?", "Yes;No"); if ((result == 0) || (result == 2)) showMessageBox = false; else if (result == 1) exitWindow = true; @@ -219,7 +219,7 @@ int main() if (showTextInputBox) { DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(RAYWHITE, 0.8f)); - int result = GuiTextInputBox((Rectangle){ GetScreenWidth()/2 - 120, GetScreenHeight()/2 - 60, 240, 140 }, "Save", GuiIconText(ICON_FILE_SAVE, "Save file as..."), "Ok;Cancel", textInput, 255, NULL); + int result = GuiTextInputBox((Rectangle){ (float)GetScreenWidth()/2 - 120, (float)GetScreenHeight()/2 - 60, 240, 140 }, "Save", GuiIconText(ICON_FILE_SAVE, "Save file as..."), "Ok;Cancel", textInput, 255, NULL); if (result == 1) { diff --git a/examples/controls_test_suite/fonts/FiveByFive10.ttf b/examples/controls_test_suite/fonts/FiveByFive10.ttf deleted file mode 100644 index df155e1..0000000 Binary files a/examples/controls_test_suite/fonts/FiveByFive10.ttf and /dev/null differ diff --git a/examples/controls_test_suite/fonts/NorthernLights.ttf b/examples/controls_test_suite/fonts/NorthernLights.ttf deleted file mode 100644 index 55c82cd..0000000 Binary files a/examples/controls_test_suite/fonts/NorthernLights.ttf and /dev/null differ diff --git a/examples/controls_test_suite/fonts/PIXEARG11.ttf b/examples/controls_test_suite/fonts/PIXEARG11.ttf deleted file mode 100644 index 8eaf339..0000000 Binary files a/examples/controls_test_suite/fonts/PIXEARG11.ttf and /dev/null differ diff --git a/examples/controls_test_suite/fonts/PixelOperator8.ttf b/examples/controls_test_suite/fonts/PixelOperator8.ttf deleted file mode 100644 index f9146ac..0000000 Binary files a/examples/controls_test_suite/fonts/PixelOperator8.ttf and /dev/null differ diff --git a/examples/controls_test_suite/fonts/pixelpoiiz10.ttf b/examples/controls_test_suite/fonts/pixelpoiiz10.ttf deleted file mode 100644 index b0c719d..0000000 Binary files a/examples/controls_test_suite/fonts/pixelpoiiz10.ttf and /dev/null differ diff --git a/examples/controls_test_suite/fonts/prstartk8.ttf b/examples/controls_test_suite/fonts/prstartk8.ttf deleted file mode 100644 index 6ce26eb..0000000 Binary files a/examples/controls_test_suite/fonts/prstartk8.ttf and /dev/null differ diff --git a/examples/controls_test_suite/fonts/rainyhearts16.ttf b/examples/controls_test_suite/fonts/rainyhearts16.ttf deleted file mode 100644 index 245cd40..0000000 Binary files a/examples/controls_test_suite/fonts/rainyhearts16.ttf and /dev/null differ diff --git a/examples/image_exporter/image_exporter.c b/examples/image_exporter/image_exporter.c index 0967801..d5d62ce 100644 --- a/examples/image_exporter/image_exporter.c +++ b/examples/image_exporter/image_exporter.c @@ -23,7 +23,7 @@ //------------------------------------------------------------------------------------ // Program main entry point //------------------------------------------------------------------------------------ -int main(int argc, char *argv[0]) +int main(int argc, char *argv[]) { // Initialization //-------------------------------------------------------------------------------------- diff --git a/examples/image_raw_importer/design/raw_importer_REF.png b/examples/image_importer_raw/design/raw_importer_REF.png similarity index 100% rename from examples/image_raw_importer/design/raw_importer_REF.png rename to examples/image_importer_raw/design/raw_importer_REF.png diff --git a/examples/image_raw_importer/design/raw_importer_REV0.png b/examples/image_importer_raw/design/raw_importer_REV0.png similarity index 100% rename from examples/image_raw_importer/design/raw_importer_REV0.png rename to examples/image_importer_raw/design/raw_importer_REV0.png diff --git a/examples/image_raw_importer/design/raw_importer_REV1.png b/examples/image_importer_raw/design/raw_importer_REV1.png similarity index 100% rename from examples/image_raw_importer/design/raw_importer_REV1.png rename to examples/image_importer_raw/design/raw_importer_REV1.png diff --git a/examples/image_raw_importer/design/raw_importer_REV2.png b/examples/image_importer_raw/design/raw_importer_REV2.png similarity index 100% rename from examples/image_raw_importer/design/raw_importer_REV2.png rename to examples/image_importer_raw/design/raw_importer_REV2.png diff --git a/examples/image_raw_importer/design/raw_importer_REV3.png b/examples/image_importer_raw/design/raw_importer_REV3.png similarity index 100% rename from examples/image_raw_importer/design/raw_importer_REV3.png rename to examples/image_importer_raw/design/raw_importer_REV3.png diff --git a/examples/image_raw_importer/design/raw_importer_REV4.png b/examples/image_importer_raw/design/raw_importer_REV4.png similarity index 100% rename from examples/image_raw_importer/design/raw_importer_REV4.png rename to examples/image_importer_raw/design/raw_importer_REV4.png diff --git a/examples/image_raw_importer/design/raw_importer_REV5.png b/examples/image_importer_raw/design/raw_importer_REV5.png similarity index 100% rename from examples/image_raw_importer/design/raw_importer_REV5.png rename to examples/image_importer_raw/design/raw_importer_REV5.png diff --git a/examples/image_raw_importer/image_2x2_RGBA.raw b/examples/image_importer_raw/image_2x2_RGBA.raw similarity index 100% rename from examples/image_raw_importer/image_2x2_RGBA.raw rename to examples/image_importer_raw/image_2x2_RGBA.raw diff --git a/examples/image_raw_importer/image_raw_importer.c b/examples/image_importer_raw/image_importer_raw.c similarity index 100% rename from examples/image_raw_importer/image_raw_importer.c rename to examples/image_importer_raw/image_importer_raw.c diff --git a/examples/scroll_panel/gui_scroll_panel.c b/examples/scroll_panel/scroll_panel.c similarity index 100% rename from examples/scroll_panel/gui_scroll_panel.c rename to examples/scroll_panel/scroll_panel.c diff --git a/examples/style_selector/style_selector.c b/examples/style_selector/style_selector.c new file mode 100644 index 0000000..654b826 --- /dev/null +++ b/examples/style_selector/style_selector.c @@ -0,0 +1,289 @@ +/******************************************************************************************* +* +* raygui - controls test suite +* +* TEST CONTROLS: +* - GuiDropdownBox() +* - GuiCheckBox() +* - GuiSpinner() +* - GuiValueBox() +* - GuiTextBox() +* - GuiButton() +* - GuiComboBox() +* - GuiListView() +* - GuiToggleGroup() +* - GuiTextBoxMulti() +* - GuiColorPicker() +* - GuiSlider() +* - GuiSliderBar() +* - GuiProgressBar() +* - GuiColorBarAlpha() +* - GuiScrollPanel() +* +* +* DEPENDENCIES: +* raylib 4.0 - Windowing/input management and drawing. +* raygui 3.2 - Immediate-mode GUI controls. +* +* COMPILATION (Windows - MinGW): +* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99 +* +* LICENSE: zlib/libpng +* +* Copyright (c) 2016-2022 Ramon Santamaria (@raysan5) +* +**********************************************************************************************/ + +#include "raylib.h" + +#define RAYGUI_IMPLEMENTATION +//#define RAYGUI_CUSTOM_ICONS // It requires providing gui_icons.h in the same directory +//#include "gui_icons.h" // External icons data provided, it can be generated with rGuiIcons tool +#include "../../src/raygui.h" + +// raygui embedded styles +#include "styles/style_cyber.h" // raygui style: cyber +#include "styles/style_jungle.h" // raygui style: jungle +#include "styles/style_lavanda.h" // raygui style: lavanda +#include "styles/style_dark.h" // raygui style: dark +#include "styles/style_bluish.h" // raygui style: bluish +#include "styles/style_terminal.h" // raygui style: terminal + +#include // Required for: strcpy() + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main() +{ + // Initialization + //--------------------------------------------------------------------------------------- + const int screenWidth = 690; + const int screenHeight = 560; + + InitWindow(screenWidth, screenHeight, "raygui - controls test suite"); + SetExitKey(0); + + // GUI controls initialization + //---------------------------------------------------------------------------------- + int dropdownBox000Active = 0; + bool dropDown000EditMode = false; + + int dropdownBox001Active = 0; + bool dropDown001EditMode = false; + + int spinner001Value = 0; + bool spinnerEditMode = false; + + int valueBox002Value = 0; + bool valueBoxEditMode = false; + + char textBoxText[64] = "Text box"; + bool textBoxEditMode = false; + + int listViewScrollIndex = 0; + int listViewActive = -1; + + int listViewExScrollIndex = 0; + int listViewExActive = 2; + int listViewExFocus = -1; + const char *listViewExList[8] = { "This", "is", "a", "list view", "with", "disable", "elements", "amazing!" }; + + char multiTextBoxText[256] = "Multi text box"; + bool multiTextBoxEditMode = false; + Color colorPickerValue = RED; + + int sliderValue = 50; + int sliderBarValue = 60; + float progressValue = 0.4f; + + bool forceSquaredChecked = false; + + float alphaValue = 0.5f; + + int comboBoxActive = 1; + + int toggleGroupActive = 0; + + Vector2 viewScroll = { 0, 0 }; + //---------------------------------------------------------------------------------- + + // Custom GUI font loading + //Font font = LoadFontEx("fonts/rainyhearts16.ttf", 12, 0, 0); + //GuiSetFont(font); + + bool exitWindow = false; + bool showMessageBox = false; + + char textInput[256] = { 0 }; + bool showTextInputBox = false; + + char textInputFileName[256] = { 0 }; + + GuiLoadStyleBluish(); + int visualStyleActive = 4; + int prevVisualStyleActive = 4; + + SetTargetFPS(60); + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!exitWindow) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + exitWindow = WindowShouldClose(); + + if (IsKeyPressed(KEY_ESCAPE)) showMessageBox = !showMessageBox; + + if (IsKeyDown(KEY_LEFT_CONTROL) && IsKeyPressed(KEY_S)) showTextInputBox = true; + + if (IsFileDropped()) + { + int dropFileCount = 0; + char **droppedFiles = GetDroppedFiles(&dropFileCount); + + if ((dropFileCount > 0) && IsFileExtension(droppedFiles[0], ".rgs")) GuiLoadStyle(droppedFiles[0]); + + ClearDroppedFiles(); // Clear internal buffers + } + + if (visualStyleActive != prevVisualStyleActive) + { + GuiLoadStyleDefault(); + + switch (visualStyleActive) + { + case 0: break; // Default style + case 1: GuiLoadStyleJungle(); break; + case 2: GuiLoadStyleLavanda(); break; + case 3: GuiLoadStyleDark(); break; + case 4: GuiLoadStyleBluish(); break; + case 5: GuiLoadStyleCyber(); break; + case 6: GuiLoadStyleTerminal(); break; + default: break; + } + + GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT); + + prevVisualStyleActive = visualStyleActive; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR))); + + + // Visuals options + GuiLabel((Rectangle){ 10, 10, 60, 24 }, "Style:"); + visualStyleActive = GuiComboBox((Rectangle){ 60,10, 120, 24 }, "default;Jungle;Lavanda;Dark;Bluish;Cyber;Terminal", visualStyleActive); + + /* + // raygui: controls drawing + //---------------------------------------------------------------------------------- + if (dropDown000EditMode || dropDown001EditMode) GuiLock(); + else if (!dropDown000EditMode && !dropDown001EditMode) GuiUnlock(); + //GuiDisable(); + + // First GUI column + //GuiSetStyle(CHECKBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT); + forceSquaredChecked = GuiCheckBox((Rectangle){ 25, 108, 15, 15 }, "FORCE CHECK!", forceSquaredChecked); + + GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); + //GuiSetStyle(VALUEBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT); + if (GuiSpinner((Rectangle){ 25, 135, 125, 30 }, NULL, &spinner001Value, 0, 100, spinnerEditMode)) spinnerEditMode = !spinnerEditMode; + if (GuiValueBox((Rectangle){ 25, 175, 125, 30 }, NULL, &valueBox002Value, 0, 100, valueBoxEditMode)) valueBoxEditMode = !valueBoxEditMode; + GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT); + if (GuiTextBox((Rectangle){ 25, 215, 125, 30 }, textBoxText, 64, textBoxEditMode)) textBoxEditMode = !textBoxEditMode; + + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); + + if (GuiButton((Rectangle){ 25, 255, 125, 30 }, GuiIconText(ICON_FILE_SAVE, "Save File"))) showTextInputBox = true; + + GuiGroupBox((Rectangle){ 25, 310, 125, 150 }, "STATES"); + //GuiLock(); + GuiSetState(STATE_NORMAL); if (GuiButton((Rectangle){ 30, 320, 115, 30 }, "NORMAL")) { } + GuiSetState(STATE_FOCUSED); if (GuiButton((Rectangle){ 30, 355, 115, 30 }, "FOCUSED")) { } + GuiSetState(STATE_PRESSED); if (GuiButton((Rectangle){ 30, 390, 115, 30 }, "#15#PRESSED")) { } + GuiSetState(STATE_DISABLED); if (GuiButton((Rectangle){ 30, 425, 115, 30 }, "DISABLED")) { } + GuiSetState(STATE_NORMAL); + //GuiUnlock(); + + comboBoxActive = GuiComboBox((Rectangle){ 25, 470, 125, 30 }, "ONE;TWO;THREE;FOUR", comboBoxActive); + + // NOTE: GuiDropdownBox must draw after any other control that can be covered on unfolding + GuiSetStyle(DROPDOWNBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT); + if (GuiDropdownBox((Rectangle){ 25, 65, 125, 30 }, "#01#ONE;#02#TWO;#03#THREE;#04#FOUR", &dropdownBox001Active, dropDown001EditMode)) dropDown001EditMode = !dropDown001EditMode; + + GuiSetStyle(DROPDOWNBOX, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); + if (GuiDropdownBox((Rectangle){ 25, 25, 125, 30 }, "ONE;TWO;THREE", &dropdownBox000Active, dropDown000EditMode)) dropDown000EditMode = !dropDown000EditMode; + + // Second GUI column + listViewActive = GuiListView((Rectangle){ 165, 25, 140, 140 }, "Charmander;Bulbasaur;#18#Squirtel;Pikachu;Eevee;Pidgey", &listViewScrollIndex, listViewActive); + listViewExActive = GuiListViewEx((Rectangle){ 165, 180, 140, 200 }, listViewExList, 8, &listViewExFocus, &listViewExScrollIndex, listViewExActive); + + toggleGroupActive = GuiToggleGroup((Rectangle){ 165, 400, 140, 25 }, "#1#ONE\n#3#TWO\n#8#THREE\n#23#", toggleGroupActive); + + // Third GUI column + if (GuiTextBoxMulti((Rectangle){ 320, 25, 225, 140 }, multiTextBoxText, 256, multiTextBoxEditMode)) multiTextBoxEditMode = !multiTextBoxEditMode; + colorPickerValue = GuiColorPicker((Rectangle){ 320, 185, 196, 192 }, NULL, colorPickerValue); + + sliderValue = GuiSlider((Rectangle){ 355, 400, 165, 20 }, "TEST", TextFormat("%2.2f", (float)sliderValue), sliderValue, -50, 100); + sliderBarValue = GuiSliderBar((Rectangle){ 320, 430, 200, 20 }, NULL, TextFormat("%i", (int)sliderBarValue), sliderBarValue, 0, 100); + progressValue = GuiProgressBar((Rectangle){ 320, 460, 200, 20 }, NULL, NULL, progressValue, 0, 1); + + // NOTE: View rectangle could be used to perform some scissor test + Rectangle view = GuiScrollPanel((Rectangle){ 560, 25, 100, 160 }, NULL, (Rectangle){ 560, 25, 200, 400 }, &viewScroll); + + GuiPanel((Rectangle){ 560, 25 + 180, 100, 160 }, "Panel Info"); + + GuiGrid((Rectangle) { 560, 25 + 180 + 180, 100, 120 }, NULL, 20, 2); + + GuiStatusBar((Rectangle){ 0, (float)GetScreenHeight() - 20, (float)GetScreenWidth(), 20 }, "This is a status bar"); + + alphaValue = GuiColorBarAlpha((Rectangle){ 320, 490, 200, 30 }, NULL, alphaValue); + + if (showMessageBox) + { + DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(RAYWHITE, 0.8f)); + int result = GuiMessageBox((Rectangle){ (float)GetScreenWidth()/2 - 125, (float)GetScreenHeight()/2 - 50, 250, 100 }, GuiIconText(ICON_EXIT, "Close Window"), "Do you really want to exit?", "Yes;No"); + + if ((result == 0) || (result == 2)) showMessageBox = false; + else if (result == 1) exitWindow = true; + } + + if (showTextInputBox) + { + DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(RAYWHITE, 0.8f)); + int result = GuiTextInputBox((Rectangle){ (float)GetScreenWidth()/2 - 120, (float)GetScreenHeight()/2 - 60, 240, 140 }, "Save", GuiIconText(ICON_FILE_SAVE, "Save file as..."), "Ok;Cancel", textInput, 255, NULL); + + if (result == 1) + { + // TODO: Validate textInput value and save + + strcpy(textInputFileName, textInput); + } + + if ((result == 0) || (result == 1) || (result == 2)) + { + showTextInputBox = false; + strcpy(textInput, "\0"); + } + } + */ + //---------------------------------------------------------------------------------- + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/style_selector/styles/style_bluish.h b/examples/style_selector/styles/style_bluish.h new file mode 100644 index 0000000..ffe20d7 --- /dev/null +++ b/examples/style_selector/styles/style_bluish.h @@ -0,0 +1,354 @@ +////////////////////////////////////////////////////////////////////////////////// +// // +// StyleAsCode exporter v1.2 - Style data exported as a values array // +// // +// USAGE: On init call: GuiLoadStyleBluish(); // +// // +// more info and bugs-report: github.com/raysan5/raygui // +// feedback and support: ray[at]raylibtech.com // +// // +// Copyright (c) 2020-2022 raylib technologies (@raylibtech) // +// // +////////////////////////////////////////////////////////////////////////////////// + +#define BLUISH_STYLE_PROPS_COUNT 14 + +// Custom style name: bluish +static const GuiStyleProp bluishStyleProps[BLUISH_STYLE_PROPS_COUNT] = { + { 0, 0, 0x5ca6a6ff }, // DEFAULT_BORDER_COLOR_NORMAL + { 0, 1, 0xb4e8f3ff }, // DEFAULT_BASE_COLOR_NORMAL + { 0, 2, 0x447e77ff }, // DEFAULT_TEXT_COLOR_NORMAL + { 0, 3, 0x5f8792ff }, // DEFAULT_BORDER_COLOR_FOCUSED + { 0, 4, 0xcdeff7ff }, // DEFAULT_BASE_COLOR_FOCUSED + { 0, 5, 0x4c6c74ff }, // DEFAULT_TEXT_COLOR_FOCUSED + { 0, 6, 0x3b5b5fff }, // DEFAULT_BORDER_COLOR_PRESSED + { 0, 7, 0xeaffffff }, // DEFAULT_BASE_COLOR_PRESSED + { 0, 8, 0x275057ff }, // DEFAULT_TEXT_COLOR_PRESSED + { 0, 9, 0x96aaacff }, // DEFAULT_BORDER_COLOR_DISABLED + { 0, 10, 0xc8d7d9ff }, // DEFAULT_BASE_COLOR_DISABLED + { 0, 11, 0x8c9c9eff }, // DEFAULT_TEXT_COLOR_DISABLED + { 0, 18, 0x84adb7ff }, // DEFAULT_LINE_COLOR + { 0, 19, 0xe8eef1ff }, // DEFAULT_BACKGROUND_COLOR +}; + +// WARNING: This style uses a custom font: (size: 10, spacing: 1) + +#define BLUISH_COMPRESSED_DATA_SIZE 1423 + +// Font image pixels data compressed (DEFLATE) +// NOTE: Original pixel data simplified to GRAYSCALE +static unsigned char bluishFontData[BLUISH_COMPRESSED_DATA_SIZE] = { 0xed, + 0xdd, 0xd1, 0x72, 0x9b, 0x3a, 0x10, 0x00, 0x50, 0xc4, 0xff, 0x7f, 0x72, 0x41, 0x77, 0x1a, 0x3b, 0x99, 0xb9, 0x2d, 0x2b, + 0x58, 0x21, 0x08, 0x6d, 0x4f, 0xcf, 0xb4, 0x0f, 0x91, 0x51, 0x24, 0x2d, 0xe0, 0x34, 0x5a, 0x2f, 0x75, 0x02, 0x00, 0xf8, + 0xcd, 0x1c, 0x7c, 0x6d, 0x0e, 0x5f, 0x3d, 0x27, 0x7a, 0x7a, 0x7d, 0x7d, 0x6e, 0xb4, 0xe7, 0x7a, 0x9b, 0x13, 0x3d, 0xb4, + 0x5a, 0xda, 0x6d, 0xbf, 0x2a, 0x6f, 0x23, 0x56, 0x76, 0xfe, 0x5a, 0x8f, 0xed, 0x55, 0xca, 0xbc, 0x7e, 0x4e, 0xcd, 0x62, + 0x5b, 0x0d, 0xbe, 0xb6, 0x6e, 0xce, 0xb7, 0xd6, 0x12, 0xb4, 0xcc, 0xb5, 0x06, 0xe3, 0xa9, 0x1f, 0x47, 0x6d, 0xf7, 0xd8, + 0x3a, 0x6a, 0xeb, 0x7b, 0x2c, 0x1b, 0x7d, 0x2c, 0xe1, 0x59, 0xf1, 0xf3, 0x3b, 0x46, 0x2b, 0xb4, 0x06, 0xf1, 0xac, 0x9b, + 0xaf, 0x7d, 0x29, 0x87, 0x5e, 0xdd, 0xfa, 0x0e, 0xb5, 0x2e, 0x75, 0x79, 0xaf, 0xc7, 0xaf, 0xb3, 0xa8, 0xa9, 0xd7, 0xc7, + 0x2d, 0xe7, 0xe3, 0xbf, 0x7e, 0x8c, 0xa7, 0x6c, 0x5c, 0x07, 0x3f, 0xa3, 0xb5, 0x06, 0xf1, 0x8a, 0xc6, 0xf3, 0x5a, 0xb9, + 0xb2, 0xd9, 0x63, 0xeb, 0xa8, 0xe9, 0xf0, 0x6a, 0x6f, 0x1f, 0xff, 0x1a, 0xe9, 0xf6, 0x3c, 0xca, 0x47, 0xdb, 0xd6, 0xda, + 0x2d, 0x83, 0xee, 0xab, 0xd1, 0x7c, 0xa7, 0xe6, 0xb5, 0xb5, 0xbd, 0x0a, 0x6b, 0xaa, 0xe5, 0x7c, 0xfc, 0xe3, 0x33, 0xba, + 0xbe, 0xff, 0x46, 0x33, 0x5b, 0x82, 0xf1, 0x94, 0xa0, 0xa5, 0x7d, 0xd4, 0x99, 0xf8, 0x97, 0xf7, 0x48, 0xe7, 0xe0, 0x7a, + 0xae, 0xc1, 0x15, 0x7d, 0x65, 0xf4, 0xf3, 0xf1, 0x2f, 0xef, 0x73, 0xb5, 0x04, 0xef, 0x4a, 0xf7, 0xc6, 0xbf, 0xbc, 0xef, + 0xff, 0x73, 0x30, 0xfa, 0x12, 0x46, 0x3f, 0xbe, 0xdb, 0x66, 0xde, 0x57, 0x73, 0xd7, 0xff, 0x6b, 0x9d, 0xa3, 0x73, 0xeb, + 0xba, 0xd8, 0xb7, 0xe7, 0x9b, 0x8b, 0x7f, 0x0d, 0xdf, 0x79, 0x3e, 0xcf, 0xe2, 0xb3, 0xb3, 0x58, 0x07, 0x5d, 0xff, 0x6b, + 0x38, 0x9e, 0xf2, 0xbe, 0xff, 0x6f, 0xcf, 0x39, 0x73, 0x15, 0x66, 0xe2, 0xbf, 0x17, 0xe3, 0x2b, 0xaf, 0xfd, 0xb8, 0xef, + 0x7c, 0xfc, 0x5f, 0x3d, 0x6e, 0x7d, 0x97, 0xab, 0xcf, 0xe2, 0x29, 0xf5, 0xf3, 0x5f, 0x69, 0xfc, 0xcc, 0xf3, 0x79, 0xee, + 0x64, 0xe6, 0x37, 0x2a, 0xce, 0xf7, 0xab, 0xbb, 0x33, 0xc8, 0xc4, 0xbf, 0x84, 0xab, 0x5a, 0x6e, 0x7f, 0xff, 0x6f, 0xc5, + 0xbf, 0x35, 0xd2, 0x56, 0xfc, 0x73, 0xb3, 0xa8, 0xc9, 0x9f, 0xc1, 0x9f, 0x17, 0xff, 0xfa, 0xf5, 0xff, 0xa1, 0x63, 0x73, + 0x8b, 0x5e, 0xdf, 0xea, 0xe9, 0x7b, 0x66, 0xdd, 0x33, 0x9e, 0xa7, 0xcd, 0x82, 0x33, 0x7e, 0x74, 0xc4, 0xf1, 0x87, 0xd8, + 0x03, 0x00, 0x00, 0x00, 0x0c, 0xcb, 0xf2, 0x19, 0x95, 0x61, 0x32, 0xba, 0xe5, 0x5c, 0x56, 0x50, 0x9c, 0x9d, 0xd3, 0xca, + 0x48, 0x6a, 0x8f, 0xf2, 0xae, 0xf5, 0x98, 0x6e, 0xca, 0xf9, 0xa9, 0x1d, 0x19, 0x29, 0x77, 0xb5, 0x2c, 0x87, 0xb3, 0x30, + 0xb6, 0x77, 0x73, 0xe3, 0xec, 0x9c, 0x35, 0x58, 0xab, 0xbd, 0x51, 0xde, 0xb7, 0x1e, 0x73, 0xc7, 0xe8, 0x7a, 0x7e, 0x5b, + 0x5e, 0x77, 0x76, 0xe7, 0x96, 0x54, 0xcb, 0xba, 0xbb, 0xd7, 0x97, 0xcb, 0x7c, 0x39, 0xb7, 0xaf, 0xda, 0xca, 0xce, 0x8b, + 0xf2, 0x3f, 0x5a, 0xa3, 0x8c, 0xf2, 0x2a, 0x6a, 0xf7, 0xac, 0x97, 0xa1, 0xc7, 0x2c, 0x5d, 0xf1, 0x8f, 0x67, 0x15, 0xef, + 0xcd, 0xb7, 0xb3, 0x1e, 0xe3, 0xde, 0x72, 0x2d, 0xc7, 0xb3, 0x0f, 0xa2, 0x18, 0xc7, 0x39, 0x12, 0xd9, 0xdc, 0x99, 0xda, + 0xc8, 0xab, 0xd8, 0x9b, 0xdb, 0x92, 0xda, 0x9b, 0xac, 0x3b, 0x6b, 0x78, 0x3e, 0x5b, 0xe6, 0x58, 0x76, 0xc6, 0xda, 0x98, + 0x6f, 0x3b, 0xc3, 0x64, 0x4d, 0x1d, 0xb3, 0x0e, 0xc8, 0x57, 0xc9, 0x9e, 0x3d, 0xad, 0x3c, 0x9c, 0xb5, 0x11, 0xff, 0x39, + 0x39, 0xb7, 0x57, 0xcb, 0x9c, 0xda, 0x0b, 0xae, 0x3b, 0x6b, 0x78, 0x3e, 0x5b, 0xe6, 0xd8, 0xfa, 0x95, 0xee, 0x3b, 0xf6, + 0xa8, 0x63, 0xae, 0x3b, 0x03, 0x6a, 0xba, 0x9f, 0xfa, 0x75, 0xa6, 0x8e, 0xbc, 0xff, 0x97, 0x8e, 0x77, 0xe4, 0x72, 0x3a, + 0x57, 0xe3, 0xf8, 0x1d, 0xbb, 0x2f, 0xc3, 0x64, 0xd4, 0x31, 0xcf, 0xca, 0xdd, 0x28, 0x9d, 0x77, 0xec, 0x7b, 0x5a, 0xae, + 0x88, 0x7f, 0x6f, 0x86, 0xc9, 0x3a, 0xec, 0x98, 0xe9, 0xf6, 0x9c, 0x9e, 0x1a, 0x5e, 0xff, 0xad, 0xf5, 0x18, 0xb9, 0x86, + 0xad, 0x3c, 0xa0, 0xf6, 0x08, 0xfe, 0x05, 0x8b, 0xdf, 0xd9, 0x00, 0x00, 0x00, 0x00, 0x40, 0x22, 0xff, 0xa7, 0x9d, 0x7d, + 0x93, 0xcb, 0x50, 0x69, 0x67, 0xed, 0x64, 0x6b, 0xf4, 0xcc, 0xb7, 0x67, 0xdd, 0x8c, 0x6e, 0xe9, 0x59, 0x8b, 0xbd, 0x96, + 0xdc, 0x91, 0xfb, 0xbf, 0xef, 0x8e, 0x73, 0x4a, 0xa2, 0xdf, 0x6a, 0x2f, 0x1f, 0x47, 0x8d, 0xd9, 0xfd, 0xab, 0xbb, 0x23, + 0x7b, 0xfd, 0x3b, 0x3f, 0x30, 0x3f, 0xa9, 0x95, 0xb9, 0xf4, 0x39, 0xf2, 0x91, 0xbb, 0x85, 0xaf, 0x96, 0x65, 0x73, 0x2d, + 0x7a, 0xf7, 0xd0, 0x7a, 0xf2, 0x50, 0xda, 0xbb, 0x61, 0xe3, 0xe2, 0xdf, 0x3b, 0xe7, 0x7b, 0x5b, 0xb2, 0x75, 0x44, 0x9e, + 0x17, 0xff, 0x56, 0x96, 0xcf, 0xa8, 0xf8, 0x9f, 0xcb, 0x83, 0x19, 0x17, 0xff, 0x9e, 0x1c, 0xae, 0x78, 0xec, 0xad, 0x3c, + 0xa8, 0x3b, 0xe3, 0x1f, 0xd7, 0xd1, 0x3a, 0x12, 0xff, 0x7c, 0x96, 0x4f, 0x3e, 0xfe, 0xe7, 0xf2, 0x60, 0xc6, 0xc5, 0xbf, + 0x27, 0x87, 0x63, 0x6d, 0x54, 0x8b, 0x5a, 0xd3, 0xb5, 0x47, 0xea, 0x4e, 0x8e, 0xe1, 0xd2, 0x11, 0xff, 0x12, 0x8e, 0xf1, + 0x6c, 0xfe, 0x67, 0xe6, 0xfa, 0x2f, 0x97, 0xe5, 0xc1, 0x8c, 0xbd, 0xff, 0x8f, 0x5a, 0x87, 0xb2, 0x93, 0x7d, 0x58, 0x3a, + 0xb2, 0x45, 0xd6, 0xc1, 0x6b, 0x71, 0x2c, 0xdf, 0x61, 0x4c, 0xfc, 0x7b, 0xfa, 0x3a, 0x76, 0x4c, 0x36, 0xfe, 0xa5, 0x23, + 0xfe, 0x23, 0xc7, 0xde, 0x8e, 0x7f, 0x69, 0x64, 0x8b, 0xec, 0x1f, 0x33, 0x3a, 0xfe, 0xbd, 0x59, 0x2d, 0x65, 0x60, 0x5f, + 0x75, 0x70, 0xfc, 0xf3, 0x79, 0x32, 0x63, 0xc7, 0xde, 0x8e, 0x7f, 0xff, 0xe8, 0x5e, 0x7f, 0xe6, 0x0b, 0x72, 0xe8, 0x51, + 0x71, 0x06, 0x00, 0x00, 0x00, 0x00, 0xf5, 0x7f, 0xa6, 0xc6, 0x13, 0xa9, 0xda, 0x59, 0x46, 0xc7, 0xb3, 0x85, 0x3e, 0x33, + 0x28, 0xb6, 0xf3, 0x27, 0xc6, 0x54, 0xfa, 0xd9, 0x7f, 0x76, 0x57, 0xf6, 0xfb, 0x44, 0xab, 0xd5, 0x33, 0xb6, 0xab, 0x9f, + 0x71, 0x76, 0x2c, 0xcb, 0xa7, 0x95, 0xf7, 0x92, 0xfb, 0x0c, 0x6a, 0x54, 0x9b, 0x66, 0x0e, 0x2a, 0xdd, 0x64, 0x3f, 0xbb, + 0xdf, 0xaa, 0x55, 0x11, 0xf7, 0x33, 0xb2, 0x8a, 0x45, 0x0d, 0xcf, 0xd7, 0xda, 0x31, 0xb6, 0x25, 0xf8, 0x6a, 0xd4, 0xc7, + 0xdc, 0xfd, 0x49, 0xe9, 0xfe, 0x5a, 0x0e, 0x47, 0x6b, 0x2a, 0xc5, 0x3b, 0x86, 0xaf, 0xbd, 0xee, 0xec, 0x19, 0xb0, 0x86, + 0xd7, 0xd8, 0xf6, 0x58, 0xe7, 0x30, 0xbf, 0x65, 0x0a, 0x9f, 0x66, 0x96, 0xaf, 0x55, 0x53, 0x83, 0xa7, 0x86, 0xb5, 0xf7, + 0x8f, 0xa2, 0xb1, 0x45, 0x4f, 0x4b, 0x9a, 0x82, 0x3e, 0x96, 0xee, 0xcf, 0x84, 0xd7, 0x9d, 0xe7, 0x48, 0x65, 0x7a, 0x6e, + 0x9d, 0x01, 0xad, 0x27, 0xb9, 0x2d, 0x03, 0x9e, 0x55, 0x92, 0xaf, 0x55, 0xd3, 0xca, 0x3c, 0x68, 0xf7, 0x96, 0xad, 0xcd, + 0x12, 0x9f, 0x33, 0xb9, 0x3b, 0xc3, 0xa8, 0x0a, 0x33, 0xc7, 0xee, 0x9c, 0xa5, 0x31, 0xa3, 0x29, 0x7d, 0x06, 0x5c, 0xfb, + 0x24, 0x8f, 0xeb, 0x32, 0x0f, 0x8e, 0xce, 0x62, 0xf4, 0xce, 0xf2, 0xf1, 0xf8, 0x4f, 0xa7, 0x6a, 0x82, 0x94, 0xee, 0x5c, + 0x99, 0xdc, 0x19, 0x70, 0x75, 0xfc, 0xaf, 0xca, 0x3c, 0x18, 0x55, 0x81, 0x63, 0x7d, 0x68, 0xfc, 0xf7, 0xaa, 0xcd, 0xe4, + 0x63, 0x99, 0xcf, 0x18, 0x9d, 0xbe, 0xe5, 0xce, 0x30, 0xfa, 0x98, 0x29, 0xfd, 0x3f, 0x99, 0x67, 0xc4, 0xbf, 0xaf, 0x42, + 0x4d, 0x49, 0xd7, 0x12, 0xfa, 0xae, 0xf8, 0xe7, 0x9f, 0x23, 0xd5, 0x77, 0xcc, 0xf8, 0xdc, 0xcb, 0x3b, 0xe2, 0xcf, 0x9f, + 0x53, 0xf9, 0x68, 0x91, 0x9f, 0x04, 0x00, 0x00, 0x00, 0x40, 0x52, 0xf9, 0x9f, 0x4c, 0xf6, 0xca, 0xf7, 0xb7, 0xcc, 0x3b, + 0xbb, 0x5a, 0xa5, 0xbb, 0xa5, 0x0c, 0xeb, 0xb3, 0x95, 0x63, 0x74, 0xf6, 0x99, 0x67, 0x9f, 0x7d, 0x97, 0x01, 0x3b, 0xe7, + 0xaf, 0x7f, 0xe7, 0x41, 0x3b, 0xeb, 0xe3, 0x5b, 0xae, 0xff, 0x34, 0xff, 0x15, 0xf5, 0x06, 0x5a, 0x15, 0x22, 0xe6, 0xc3, + 0xb9, 0x15, 0x4b, 0xb8, 0xa7, 0xba, 0x36, 0x6a, 0x06, 0xe4, 0xf7, 0x20, 0xbe, 0xbf, 0xca, 0xce, 0x92, 0x7c, 0x0e, 0xd5, + 0x7c, 0x63, 0x8d, 0x8d, 0x75, 0x27, 0x1f, 0x26, 0x97, 0x43, 0x13, 0xd7, 0x50, 0x98, 0x52, 0xaf, 0x8d, 0x9e, 0x49, 0xf4, + 0x67, 0xc6, 0x7f, 0x4a, 0xe6, 0xf6, 0xad, 0x07, 0xea, 0x65, 0x8c, 0xaa, 0xb1, 0x51, 0x3a, 0x32, 0x7c, 0x4a, 0xe3, 0xf9, + 0x63, 0xb9, 0xf8, 0x47, 0x4f, 0xab, 0x5b, 0x4f, 0x3e, 0xf9, 0xe9, 0x9a, 0x2a, 0x1b, 0xe3, 0x9f, 0x60, 0x33, 0xae, 0x9a, + 0xc7, 0xf8, 0x1a, 0x1b, 0xad, 0x9d, 0xf2, 0x38, 0xaf, 0x32, 0x17, 0xff, 0xab, 0x6a, 0x3b, 0x5c, 0x53, 0x65, 0xa3, 0xb7, + 0x42, 0x48, 0x4f, 0x6e, 0x4f, 0x79, 0x48, 0x8d, 0x8d, 0x6c, 0x85, 0x90, 0xf3, 0xf7, 0xff, 0xe7, 0xee, 0x54, 0xdf, 0x53, + 0x67, 0xa3, 0x27, 0x4f, 0xe7, 0xaa, 0x9d, 0xf9, 0xfc, 0xee, 0x7c, 0x26, 0xb7, 0x52, 0x65, 0x97, 0x51, 0x79, 0x3a, 0x4f, + 0xf2, 0x94, 0x67, 0x9e, 0xf1, 0xa4, 0x73, 0xda, 0x1a, 0xfc, 0xdb, 0x59, 0x5e, 0xd6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x2f, + 0xf0, 0x1f }; + +// Font characters rectangles data +static const Rectangle bluishFontRecs[95] = { + { 4, 4, 5 , 10 }, + { 17, 4, 2 , 8 }, + { 27, 4, 4 , 3 }, + { 39, 4, 6 , 8 }, + { 53, 4, 5 , 10 }, + { 66, 4, 6 , 8 }, + { 80, 4, 5 , 10 }, + { 93, 4, 2 , 3 }, + { 103, 4, 3 , 8 }, + { 114, 4, 3 , 8 }, + { 125, 4, 6 , 6 }, + { 139, 4, 6 , 6 }, + { 153, 4, 2 , 3 }, + { 163, 4, 5 , 2 }, + { 176, 4, 2 , 2 }, + { 186, 4, 6 , 8 }, + { 200, 4, 5 , 8 }, + { 213, 4, 3 , 8 }, + { 224, 4, 5 , 8 }, + { 237, 4, 5 , 8 }, + { 4, 22, 5 , 8 }, + { 17, 22, 5 , 8 }, + { 30, 22, 5 , 8 }, + { 43, 22, 5 , 8 }, + { 56, 22, 5 , 8 }, + { 69, 22, 5 , 8 }, + { 82, 22, 2 , 8 }, + { 92, 22, 2 , 9 }, + { 102, 22, 4 , 6 }, + { 114, 22, 5 , 4 }, + { 127, 22, 4 , 6 }, + { 139, 22, 5 , 8 }, + { 152, 22, 6 , 8 }, + { 166, 22, 5 , 8 }, + { 179, 22, 5 , 8 }, + { 192, 22, 5 , 8 }, + { 205, 22, 5 , 8 }, + { 218, 22, 5 , 8 }, + { 231, 22, 5 , 8 }, + { 4, 40, 5 , 8 }, + { 17, 40, 5 , 8 }, + { 30, 40, 4 , 8 }, + { 42, 40, 5 , 8 }, + { 55, 40, 5 , 8 }, + { 68, 40, 5 , 8 }, + { 81, 40, 8 , 8 }, + { 97, 40, 5 , 8 }, + { 110, 40, 5 , 8 }, + { 123, 40, 5 , 8 }, + { 136, 40, 5 , 9 }, + { 149, 40, 5 , 8 }, + { 162, 40, 5 , 8 }, + { 175, 40, 6 , 8 }, + { 189, 40, 5 , 8 }, + { 202, 40, 5 , 8 }, + { 215, 40, 8 , 8 }, + { 231, 40, 5 , 8 }, + { 4, 58, 5 , 8 }, + { 17, 58, 5 , 8 }, + { 30, 58, 3 , 8 }, + { 41, 58, 6 , 8 }, + { 55, 58, 3 , 8 }, + { 66, 58, 6 , 4 }, + { 80, 58, 5 , 1 }, + { 93, 58, 2 , 3 }, + { 103, 58, 5 , 6 }, + { 116, 58, 5 , 8 }, + { 129, 58, 5 , 6 }, + { 142, 58, 5 , 8 }, + { 155, 58, 5 , 6 }, + { 168, 58, 5 , 8 }, + { 181, 58, 5 , 7 }, + { 194, 58, 5 , 8 }, + { 207, 58, 2 , 8 }, + { 217, 58, 3 , 9 }, + { 228, 58, 5 , 8 }, + { 241, 58, 2 , 8 }, + { 4, 76, 8 , 6 }, + { 20, 76, 5 , 6 }, + { 33, 76, 5 , 6 }, + { 46, 76, 5 , 7 }, + { 59, 76, 5 , 7 }, + { 72, 76, 5 , 6 }, + { 85, 76, 5 , 6 }, + { 98, 76, 5 , 8 }, + { 111, 76, 5 , 6 }, + { 124, 76, 5 , 6 }, + { 137, 76, 8 , 6 }, + { 153, 76, 5 , 6 }, + { 166, 76, 5 , 7 }, + { 179, 76, 5 , 6 }, + { 192, 76, 4 , 8 }, + { 204, 76, 2 , 10 }, + { 214, 76, 4 , 8 }, + { 226, 76, 6 , 4 }, +}; + +// Font characters info data +// NOTE: No chars.image data provided +static const GlyphInfo bluishFontChars[95] = { + { 32, 0, 9, 5, { 0 }}, + { 33, 0, 1, 2, { 0 }}, + { 34, 0, 1, 4, { 0 }}, + { 35, 0, 1, 6, { 0 }}, + { 36, 0, 0, 5, { 0 }}, + { 37, 0, 1, 6, { 0 }}, + { 38, 0, 0, 5, { 0 }}, + { 39, 0, 1, 2, { 0 }}, + { 40, 0, 1, 3, { 0 }}, + { 41, 0, 1, 3, { 0 }}, + { 42, 0, 1, 6, { 0 }}, + { 43, 0, 2, 6, { 0 }}, + { 44, 0, 7, 2, { 0 }}, + { 45, 0, 4, 5, { 0 }}, + { 46, 0, 7, 2, { 0 }}, + { 47, 0, 1, 6, { 0 }}, + { 48, 0, 1, 5, { 0 }}, + { 49, 0, 1, 3, { 0 }}, + { 50, 0, 1, 5, { 0 }}, + { 51, 0, 1, 5, { 0 }}, + { 52, 0, 1, 5, { 0 }}, + { 53, 0, 1, 5, { 0 }}, + { 54, 0, 1, 5, { 0 }}, + { 55, 0, 1, 5, { 0 }}, + { 56, 0, 1, 5, { 0 }}, + { 57, 0, 1, 5, { 0 }}, + { 58, 0, 1, 2, { 0 }}, + { 59, 0, 1, 2, { 0 }}, + { 60, 0, 2, 4, { 0 }}, + { 61, 0, 3, 5, { 0 }}, + { 62, 0, 2, 4, { 0 }}, + { 63, 0, 1, 5, { 0 }}, + { 64, 0, 1, 6, { 0 }}, + { 65, 0, 1, 5, { 0 }}, + { 66, 0, 1, 5, { 0 }}, + { 67, 0, 1, 5, { 0 }}, + { 68, 0, 1, 5, { 0 }}, + { 69, 0, 1, 5, { 0 }}, + { 70, 0, 1, 5, { 0 }}, + { 71, 0, 1, 5, { 0 }}, + { 72, 0, 1, 5, { 0 }}, + { 73, 0, 1, 4, { 0 }}, + { 74, 0, 1, 5, { 0 }}, + { 75, 0, 1, 5, { 0 }}, + { 76, 0, 1, 5, { 0 }}, + { 77, 0, 1, 8, { 0 }}, + { 78, 0, 1, 5, { 0 }}, + { 79, 0, 1, 5, { 0 }}, + { 80, 0, 1, 5, { 0 }}, + { 81, 0, 1, 5, { 0 }}, + { 82, 0, 1, 5, { 0 }}, + { 83, 0, 1, 5, { 0 }}, + { 84, 0, 1, 6, { 0 }}, + { 85, 0, 1, 5, { 0 }}, + { 86, 0, 1, 5, { 0 }}, + { 87, 0, 1, 8, { 0 }}, + { 88, 0, 1, 5, { 0 }}, + { 89, 0, 1, 5, { 0 }}, + { 90, 0, 1, 5, { 0 }}, + { 91, 0, 1, 3, { 0 }}, + { 92, 0, 1, 6, { 0 }}, + { 93, 0, 1, 3, { 0 }}, + { 94, 0, 1, 6, { 0 }}, + { 95, 0, 9, 5, { 0 }}, + { 96, 0, 1, 2, { 0 }}, + { 97, 0, 3, 5, { 0 }}, + { 98, 0, 1, 5, { 0 }}, + { 99, 0, 3, 5, { 0 }}, + { 100, 0, 1, 5, { 0 }}, + { 101, 0, 3, 5, { 0 }}, + { 102, 0, 1, 5, { 0 }}, + { 103, 0, 3, 5, { 0 }}, + { 104, 0, 1, 5, { 0 }}, + { 105, 0, 1, 2, { 0 }}, + { 106, 0, 1, 3, { 0 }}, + { 107, 0, 1, 5, { 0 }}, + { 108, 0, 1, 2, { 0 }}, + { 109, 0, 3, 8, { 0 }}, + { 110, 0, 3, 5, { 0 }}, + { 111, 0, 3, 5, { 0 }}, + { 112, 0, 3, 5, { 0 }}, + { 113, 0, 3, 5, { 0 }}, + { 114, 0, 3, 5, { 0 }}, + { 115, 0, 3, 5, { 0 }}, + { 116, 0, 1, 5, { 0 }}, + { 117, 0, 3, 5, { 0 }}, + { 118, 0, 3, 5, { 0 }}, + { 119, 0, 3, 8, { 0 }}, + { 120, 0, 3, 5, { 0 }}, + { 121, 0, 3, 5, { 0 }}, + { 122, 0, 3, 5, { 0 }}, + { 123, 0, 1, 4, { 0 }}, + { 124, 0, 0, 2, { 0 }}, + { 125, 0, 1, 4, { 0 }}, + { 126, 0, 3, 6, { 0 }}, +}; + +// Style loading function: bluish +static void GuiLoadStyleBluish(void) +{ + // Load style properties provided + // NOTE: Default properties are propagated + for (int i = 0; i < BLUISH_STYLE_PROPS_COUNT; i++) + { + GuiSetStyle(bluishStyleProps[i].controlId, bluishStyleProps[i].propertyId, bluishStyleProps[i].propertyValue); + } + + // Custom font loading + // NOTE: Compressed font image data (DEFLATE), it requires DecompressData() function + int bluishFontDataSize = 0; + unsigned char *data = DecompressData(bluishFontData, BLUISH_COMPRESSED_DATA_SIZE, &bluishFontDataSize); + Image imFont = { data, 256, 256, 1, 2 }; + + Font font = { 0 }; + font.baseSize = 10; + font.glyphCount = 95; + + // Load texture from image + font.texture = LoadTextureFromImage(imFont); + UnloadImage(imFont); // Uncompressed data can be unloaded from memory + + // Copy char recs data from global fontRecs + // NOTE: Required to avoid issues if trying to free font + font.recs = (Rectangle *)malloc(font.glyphCount*sizeof(Rectangle)); + memcpy(font.recs, bluishFontRecs, font.glyphCount*sizeof(Rectangle)); + + // Copy font char info data from global fontChars + // NOTE: Required to avoid issues if trying to free font + font.glyphs = (GlyphInfo *)malloc(font.glyphCount*sizeof(GlyphInfo)); + memcpy(font.glyphs, bluishFontChars, font.glyphCount*sizeof(GlyphInfo)); + + GuiSetFont(font); + + // Setup a white rectangle on the font to be used on shapes drawing, + // this way we make sure all gui can be drawn on a single pass because no texture change is required + // NOTE: Setting up this rectangle is a manual process (for the moment) + Rectangle whiteChar = { 66, 5, 2, 2 }; + SetShapesTexture(font.texture, whiteChar); +} diff --git a/examples/style_selector/styles/style_cyber.h b/examples/style_selector/styles/style_cyber.h new file mode 100644 index 0000000..8588437 --- /dev/null +++ b/examples/style_selector/styles/style_cyber.h @@ -0,0 +1,340 @@ +////////////////////////////////////////////////////////////////////////////////// +// // +// StyleAsCode exporter v1.2 - Style data exported as a values array // +// // +// USAGE: On init call: GuiLoadStyleCyber(); // +// // +// more info and bugs-report: github.com/raysan5/raygui // +// feedback and support: ray[at]raylibtech.com // +// // +// Copyright (c) 2020-2022 raylib technologies (@raylibtech) // +// // +////////////////////////////////////////////////////////////////////////////////// + +#define CYBER_STYLE_PROPS_COUNT 16 + +// Custom style name: cyber +static const GuiStyleProp cyberStyleProps[CYBER_STYLE_PROPS_COUNT] = { + { 0, 0, 0x2f7486ff }, // DEFAULT_BORDER_COLOR_NORMAL + { 0, 1, 0x024658ff }, // DEFAULT_BASE_COLOR_NORMAL + { 0, 2, 0x51bfd3ff }, // DEFAULT_TEXT_COLOR_NORMAL + { 0, 3, 0x82cde0ff }, // DEFAULT_BORDER_COLOR_FOCUSED + { 0, 4, 0x3299b4ff }, // DEFAULT_BASE_COLOR_FOCUSED + { 0, 5, 0xb6e1eaff }, // DEFAULT_TEXT_COLOR_FOCUSED + { 0, 6, 0xeb7630ff }, // DEFAULT_BORDER_COLOR_PRESSED + { 0, 7, 0xffbc51ff }, // DEFAULT_BASE_COLOR_PRESSED + { 0, 8, 0xd86f36ff }, // DEFAULT_TEXT_COLOR_PRESSED + { 0, 9, 0x134b5aff }, // DEFAULT_BORDER_COLOR_DISABLED + { 0, 10, 0x02313dff }, // DEFAULT_BASE_COLOR_DISABLED + { 0, 11, 0x17505fff }, // DEFAULT_TEXT_COLOR_DISABLED + { 0, 16, 0x0000000e }, // DEFAULT_TEXT_SIZE + { 0, 17, 0x00000000 }, // DEFAULT_TEXT_SPACING + { 0, 18, 0x81c0d0ff }, // DEFAULT_LINE_COLOR + { 0, 19, 0x00222bff }, // DEFAULT_BACKGROUND_COLOR +}; + +// WARNING: This style uses a custom font: (size: 14, spacing: 0) + +#define CYBER_COMPRESSED_DATA_SIZE 1104 + +// Font image pixels data compressed (DEFLATE) +// NOTE: Original pixel data simplified to GRAYSCALE +static unsigned char cyberFontData[CYBER_COMPRESSED_DATA_SIZE] = { 0xed, + 0xdd, 0xe1, 0x6e, 0x9b, 0x30, 0x14, 0x05, 0x60, 0xb4, 0xf7, 0x7f, 0xe3, 0x8d, 0x9d, 0x49, 0x95, 0xb6, 0xa9, 0x9b, 0x02, + 0xf6, 0xb5, 0x4d, 0x48, 0xfa, 0xed, 0xfb, 0xd7, 0x94, 0x05, 0x7c, 0xb1, 0x81, 0xfa, 0xc4, 0xc9, 0x06, 0x00, 0xb0, 0x58, + 0x2e, 0x7e, 0xb7, 0x34, 0xff, 0x74, 0xde, 0x11, 0xfd, 0xfe, 0xf7, 0xdc, 0x63, 0x5f, 0x77, 0x74, 0x8f, 0x8e, 0x24, 0x27, + 0xc7, 0x99, 0x87, 0x2d, 0xf3, 0xef, 0x56, 0x39, 0xd8, 0xbe, 0x6f, 0x4f, 0xfb, 0xce, 0xc3, 0x1c, 0xee, 0xfd, 0xda, 0xf3, + 0x39, 0x87, 0x6d, 0xb6, 0x77, 0x6c, 0x75, 0xdc, 0xce, 0xab, 0xea, 0xff, 0xf9, 0xdf, 0xa3, 0xff, 0x29, 0x0d, 0xad, 0x56, + 0x3d, 0xbb, 0xc6, 0xeb, 0xbf, 0x75, 0x9d, 0x5f, 0xeb, 0xc7, 0xc5, 0x34, 0x54, 0xba, 0xbf, 0x1f, 0xad, 0x1a, 0xaf, 0xf7, + 0x86, 0x63, 0xd9, 0xcb, 0xef, 0x98, 0xee, 0x3d, 0xea, 0xad, 0x7f, 0x0e, 0x46, 0xee, 0x79, 0x3d, 0xaa, 0x7a, 0x36, 0x56, + 0xc6, 0x9f, 0x6b, 0xeb, 0x3f, 0x36, 0xfe, 0x9f, 0xbf, 0xdf, 0xf7, 0x0f, 0xed, 0x7b, 0xf5, 0x2a, 0xfd, 0xbf, 0xed, 0x3d, + 0x73, 0x93, 0xf1, 0xbf, 0x5e, 0xff, 0xbf, 0xfd, 0x3f, 0x03, 0x15, 0x6b, 0x3f, 0xae, 0x2b, 0xae, 0xff, 0xe3, 0xf6, 0xc6, + 0xbd, 0xcc, 0x84, 0xab, 0xde, 0xea, 0x7b, 0xed, 0xb1, 0xeb, 0x7f, 0x1a, 0xcf, 0xae, 0x75, 0xf5, 0xbf, 0xde, 0x8f, 0xe6, + 0x23, 0x78, 0x4e, 0xfd, 0xaf, 0x1b, 0xff, 0x7b, 0xee, 0xff, 0xf3, 0x26, 0xf5, 0x4f, 0x47, 0xaf, 0xea, 0x7d, 0xfa, 0x5c, + 0x79, 0xbf, 0xe2, 0xf9, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0xd3, 0xac, 0x63, 0x0a, 0xc9, 0x86, 0xf7, 0x6e, + 0xa3, 0x96, 0xa3, 0xcc, 0x49, 0x4e, 0x35, 0x0d, 0xbf, 0x71, 0xb6, 0x7d, 0x6d, 0x1e, 0xfc, 0x38, 0x27, 0xbb, 0x36, 0xf1, + 0xb0, 0x35, 0x67, 0xc0, 0x67, 0x1c, 0x4d, 0x9a, 0xb7, 0xaf, 0x65, 0x25, 0x8f, 0xf3, 0x68, 0xb5, 0x1c, 0x74, 0x86, 0x32, + 0x8b, 0x19, 0x7c, 0x7d, 0x74, 0xa4, 0x38, 0x4b, 0x35, 0x3d, 0xfe, 0xe9, 0x8a, 0xa3, 0xc9, 0xa7, 0x4c, 0xe4, 0xfc, 0xd6, + 0x38, 0xce, 0x9a, 0x54, 0xfb, 0xef, 0xda, 0x1c, 0x74, 0xff, 0x58, 0x9f, 0x49, 0xe9, 0x94, 0xda, 0xd9, 0xfc, 0xbb, 0xa5, + 0x46, 0x8f, 0x66, 0x9f, 0x98, 0xb1, 0x69, 0x4b, 0x1a, 0x65, 0xb0, 0x0f, 0xed, 0x85, 0xb6, 0xfc, 0x96, 0xfd, 0x8f, 0xad, + 0x38, 0x26, 0xae, 0xa9, 0xfe, 0x59, 0xde, 0xed, 0xd1, 0xef, 0xef, 0x43, 0x9f, 0xa4, 0x48, 0x7e, 0x7e, 0xd8, 0x97, 0x64, + 0xac, 0x72, 0x78, 0x45, 0x4a, 0xd7, 0x58, 0xdf, 0x33, 0x26, 0xb5, 0xe5, 0xa0, 0xf7, 0x85, 0x09, 0xb3, 0x2c, 0xca, 0xee, + 0x3f, 0xea, 0xff, 0xd7, 0x8d, 0x76, 0xdb, 0xd2, 0xeb, 0xf3, 0x9c, 0x2b, 0x74, 0x3d, 0x07, 0xbf, 0xf6, 0xfa, 0x7f, 0xd5, + 0x19, 0xb3, 0x62, 0xfc, 0x9f, 0xff, 0x94, 0x33, 0x7a, 0x4f, 0x9b, 0x62, 0x5e, 0x77, 0xf6, 0x1d, 0xef, 0xda, 0xfb, 0xff, + 0xd6, 0xa3, 0x49, 0xf1, 0x53, 0x5f, 0x57, 0xb5, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaf, 0x9a, 0xfe, 0x4d, + 0x69, 0xc6, 0x7a, 0x6c, 0xeb, 0x7a, 0xfe, 0x72, 0x5d, 0x4e, 0x26, 0x27, 0xbf, 0xdb, 0xba, 0x5e, 0xd9, 0x79, 0x8a, 0x77, + 0xbf, 0x41, 0x0a, 0x78, 0x2c, 0x53, 0x98, 0xa5, 0x79, 0x97, 0xde, 0xff, 0x63, 0x56, 0xfd, 0x73, 0x98, 0xe4, 0xcb, 0x85, + 0x29, 0xdf, 0xf5, 0x99, 0xe8, 0x99, 0x7d, 0xe5, 0x7e, 0xf5, 0xaf, 0xae, 0x37, 0x99, 0x83, 0xd4, 0x7b, 0x4e, 0x32, 0xb1, + 0x77, 0xaa, 0xff, 0x36, 0xa1, 0xfe, 0xf5, 0xf1, 0x3f, 0x27, 0xe9, 0xe2, 0x34, 0x8d, 0x65, 0x73, 0x73, 0xfb, 0xad, 0x67, + 0xed, 0xe3, 0x15, 0x27, 0xcf, 0xd6, 0x33, 0x7d, 0x7e, 0xff, 0xae, 0x8e, 0xff, 0x2b, 0xfb, 0x7f, 0x5e, 0xaa, 0xff, 0xb7, + 0x5c, 0xff, 0xeb, 0x29, 0xfe, 0x0c, 0xa6, 0x80, 0xf7, 0xe6, 0xfa, 0xde, 0x67, 0xfc, 0x9f, 0x5b, 0xff, 0xdc, 0xe2, 0xfe, + 0x2f, 0x4b, 0xc6, 0xe7, 0xf6, 0xf1, 0x25, 0x83, 0x89, 0xee, 0xb9, 0x77, 0xf0, 0xd7, 0xde, 0xff, 0x8f, 0xf5, 0xa0, 0xf6, + 0x63, 0xca, 0xf4, 0xf1, 0x77, 0x74, 0xed, 0xdf, 0xb9, 0xe3, 0x3f, 0xaf, 0xf4, 0xd9, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x30, 0x8f, 0x96, 0xe2, 0x6a, 0x5d, 0xe9, 0x5c, 0x13, 0xaa, 0xb2, 0xfa, 0x6a, 0x7d, 0x9e, 0x76, 0xce, 0x2c, 0x6f, + 0x86, 0xe7, 0xe8, 0xdb, 0x5e, 0x4f, 0x79, 0x3e, 0xbd, 0x67, 0x36, 0xbf, 0x27, 0xa3, 0x90, 0xf2, 0x1c, 0xec, 0x75, 0xab, + 0x85, 0x8e, 0xcf, 0x0e, 0x8f, 0x7e, 0x63, 0xf2, 0xfa, 0xfa, 0xb7, 0x7c, 0x7f, 0x74, 0x3d, 0x0b, 0x36, 0xf6, 0xcd, 0xfe, + 0x39, 0xcc, 0x87, 0x8e, 0x9f, 0x01, 0xf5, 0x6c, 0xcd, 0x3b, 0xd5, 0xff, 0xbc, 0x4d, 0x53, 0xae, 0xfe, 0xd8, 0xb7, 0x81, + 0xaf, 0xcd, 0x60, 0xec, 0x4d, 0xe7, 0x46, 0x6d, 0xad, 0xd7, 0x7d, 0x78, 0x55, 0xdc, 0x2b, 0xeb, 0x3f, 0x5e, 0x89, 0x2c, + 0xc9, 0xa8, 0xe7, 0xb2, 0x4f, 0xdf, 0x54, 0x72, 0x7e, 0xf5, 0x6d, 0xe7, 0xd5, 0xbf, 0xa5, 0x67, 0x8f, 0xf7, 0xff, 0x91, + 0x57, 0xd3, 0xdc, 0x0b, 0xef, 0x95, 0xc1, 0xca, 0xc0, 0x5e, 0x5c, 0x59, 0xff, 0xe3, 0xea, 0xcd, 0xb8, 0xfe, 0x8f, 0x55, + 0xf8, 0xbc, 0x05, 0x7e, 0xa8, 0xff, 0xe0, 0x73, 0x46, 0x1a, 0x9e, 0xa3, 0xaa, 0x4f, 0x18, 0xe7, 0xaf, 0x8c, 0x65, 0x94, + 0x47, 0x9f, 0x11, 0x9e, 0x71, 0x6d, 0xb8, 0xea, 0xe9, 0xd0, 0xf3, 0xbf, 0xbf, 0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf0, 0x8a, 0xf3, 0x63, 0x79, 0x93, 0xf9, 0xc5, 0x34, 0x7d, 0x8b, 0xf6, 0xf9, 0xea, 0xa9, 0xc7, 0x6b, 0xaf, 0xee, 0xa5, + 0xd4, 0x55, 0x7d, 0x9f, 0xe6, 0x27, 0x04, 0xfe, 0xdf, 0x72, 0xef, 0x98, 0x05, 0xcd, 0xf4, 0xe4, 0x6a, 0x26, 0xa5, 0x3a, + 0x7a, 0xf2, 0xc6, 0xfd, 0xc9, 0xa9, 0x39, 0xaf, 0xce, 0xca, 0xb6, 0xcd, 0xa9, 0xff, 0x58, 0x76, 0x3a, 0xcb, 0x52, 0x13, + 0x5f, 0xa7, 0xfe, 0x5b, 0x71, 0xbd, 0xd2, 0xb9, 0xfd, 0xbf, 0x67, 0xbf, 0x52, 0x4e, 0x35, 0x57, 0xfa, 0x7f, 0xde, 0xbe, + 0xfe, 0xb5, 0xd6, 0xcc, 0x94, 0x1e, 0x57, 0xcb, 0x4e, 0xed, 0xe5, 0xf4, 0x69, 0x6f, 0xfd, 0x73, 0x69, 0xff, 0xdf, 0x1a, + 0x57, 0xc3, 0x9c, 0xd9, 0x96, 0xf5, 0xf5, 0x8a, 0x57, 0xdf, 0x85, 0xd5, 0x3f, 0x21, 0x31, 0xa3, 0xfe, 0x63, 0xab, 0x68, + 0x3e, 0xa7, 0x3d, 0x56, 0xec, 0x5d, 0x6e, 0x90, 0x41, 0xed, 0xeb, 0x25, 0x33, 0xfb, 0xff, 0xca, 0x7b, 0x0c, 0xf5, 0x5f, + 0xf1, 0xce, 0x57, 0xd4, 0x7f, 0xfb, 0x52, 0xe9, 0xcc, 0xf7, 0xcf, 0xa2, 0x4a, 0xda, 0x7e, 0xed, 0xbf, 0x40, 0x69, 0x05, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xd9, 0xf3, 0x6e, 0x79, 0x42, 0x9a, 0xaa, 0x25, 0x4f, 0xd3, 0x96, 0x14, 0x39, 0x9e, + 0x5b, 0x32, 0xc3, 0xb4, 0xaa, 0xfe, 0x47, 0xdf, 0x54, 0xdc, 0x9e, 0x50, 0xcb, 0x92, 0x9f, 0xaa, 0xfd, 0x15, 0xf5, 0xdf, + 0x9a, 0x92, 0x6b, 0x99, 0x96, 0x7b, 0xbd, 0x53, 0x1e, 0xec, 0x7d, 0xce, 0x80, 0xfa, 0xea, 0x9d, 0xf5, 0xfe, 0x3f, 0x73, + 0x3d, 0x67, 0xf5, 0x5f, 0x93, 0xbf, 0x68, 0x5f, 0xbd, 0xb1, 0xb2, 0x4a, 0xed, 0xcc, 0x75, 0xdb, 0x9d, 0x01, 0xef, 0x96, + 0xef, 0xd2, 0xff, 0xbf, 0xea, 0xa7, 0x0b, 0xd5, 0x1f, 0xf5, 0x67, 0xfc, 0xf9, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0x0f, 0xbf, 0x00 }; + +// Font characters rectangles data +static const Rectangle cyberFontRecs[95] = { + { 4, 4, 4 , 14 }, + { 16, 4, 1 , 8 }, + { 25, 4, 4 , 3 }, + { 37, 4, 8 , 8 }, + { 53, 4, 8 , 9 }, + { 69, 4, 8 , 8 }, + { 85, 4, 8 , 8 }, + { 101, 4, 1 , 3 }, + { 110, 4, 4 , 9 }, + { 122, 4, 4 , 9 }, + { 134, 4, 5 , 6 }, + { 147, 4, 5 , 6 }, + { 160, 4, 2 , 2 }, + { 170, 4, 4 , 1 }, + { 182, 4, 1 , 1 }, + { 191, 4, 8 , 8 }, + { 207, 4, 8 , 8 }, + { 223, 4, 2 , 8 }, + { 233, 4, 8 , 8 }, + { 4, 26, 8 , 8 }, + { 20, 26, 8 , 8 }, + { 36, 26, 8 , 8 }, + { 52, 26, 8 , 8 }, + { 68, 26, 7 , 8 }, + { 83, 26, 8 , 8 }, + { 99, 26, 8 , 8 }, + { 115, 26, 1 , 4 }, + { 124, 26, 2 , 5 }, + { 134, 26, 4 , 8 }, + { 146, 26, 5 , 3 }, + { 159, 26, 4 , 8 }, + { 171, 26, 7 , 8 }, + { 186, 26, 8 , 8 }, + { 202, 26, 8 , 8 }, + { 218, 26, 8 , 8 }, + { 234, 26, 8 , 8 }, + { 4, 48, 8 , 8 }, + { 20, 48, 7 , 8 }, + { 35, 48, 7 , 8 }, + { 50, 48, 8 , 8 }, + { 66, 48, 8 , 8 }, + { 82, 48, 5 , 8 }, + { 95, 48, 7 , 8 }, + { 110, 48, 8 , 8 }, + { 126, 48, 7 , 8 }, + { 141, 48, 8 , 8 }, + { 157, 48, 8 , 8 }, + { 173, 48, 8 , 8 }, + { 189, 48, 8 , 8 }, + { 205, 48, 8 , 9 }, + { 221, 48, 8 , 8 }, + { 237, 48, 8 , 8 }, + { 4, 70, 8 , 8 }, + { 20, 70, 8 , 8 }, + { 36, 70, 8 , 8 }, + { 52, 70, 9 , 8 }, + { 69, 70, 8 , 8 }, + { 85, 70, 8 , 8 }, + { 101, 70, 8 , 8 }, + { 117, 70, 4 , 9 }, + { 129, 70, 8 , 8 }, + { 145, 70, 4 , 9 }, + { 157, 70, 4 , 3 }, + { 169, 70, 7 , 1 }, + { 184, 70, 2 , 3 }, + { 194, 70, 7 , 5 }, + { 209, 70, 7 , 8 }, + { 224, 70, 7 , 5 }, + { 239, 70, 7 , 8 }, + { 4, 92, 7 , 5 }, + { 19, 92, 4 , 8 }, + { 31, 92, 7 , 7 }, + { 46, 92, 7 , 8 }, + { 61, 92, 1 , 8 }, + { 70, 92, 3 , 10 }, + { 81, 92, 7 , 8 }, + { 96, 92, 4 , 8 }, + { 108, 92, 9 , 5 }, + { 125, 92, 7 , 5 }, + { 140, 92, 7 , 5 }, + { 155, 92, 7 , 7 }, + { 170, 92, 7 , 7 }, + { 185, 92, 5 , 5 }, + { 198, 92, 7 , 5 }, + { 213, 92, 5 , 8 }, + { 226, 92, 7 , 5 }, + { 4, 114, 7 , 5 }, + { 19, 114, 9 , 5 }, + { 36, 114, 7 , 5 }, + { 51, 114, 7 , 7 }, + { 66, 114, 7 , 5 }, + { 81, 114, 4 , 9 }, + { 93, 114, 1 , 9 }, + { 102, 114, 4 , 9 }, + { 114, 114, 8 , 2 }, +}; + +// Font characters info data +// NOTE: No chars.image data provided +static const GlyphInfo cyberFontChars[95] = { + { 32, 0, 11, 4, { 0 }}, + { 33, 0, 3, 2, { 0 }}, + { 34, 0, 3, 4, { 0 }}, + { 35, 0, 3, 8, { 0 }}, + { 36, 0, 3, 8, { 0 }}, + { 37, 0, 3, 8, { 0 }}, + { 38, 0, 3, 8, { 0 }}, + { 39, 0, 3, 2, { 0 }}, + { 40, 0, 3, 4, { 0 }}, + { 41, 0, 3, 4, { 0 }}, + { 42, 0, 4, 6, { 0 }}, + { 43, 0, 4, 6, { 0 }}, + { 44, 0, 10, 3, { 0 }}, + { 45, 0, 7, 5, { 0 }}, + { 46, 0, 10, 2, { 0 }}, + { 47, 0, 3, 8, { 0 }}, + { 48, 0, 3, 8, { 0 }}, + { 49, 0, 3, 3, { 0 }}, + { 50, 0, 3, 8, { 0 }}, + { 51, 0, 3, 8, { 0 }}, + { 52, 0, 3, 8, { 0 }}, + { 53, 0, 3, 8, { 0 }}, + { 54, 0, 3, 8, { 0 }}, + { 55, 0, 3, 7, { 0 }}, + { 56, 0, 3, 8, { 0 }}, + { 57, 0, 3, 8, { 0 }}, + { 58, 0, 6, 2, { 0 }}, + { 59, 0, 6, 3, { 0 }}, + { 60, 0, 3, 5, { 0 }}, + { 61, 0, 6, 6, { 0 }}, + { 62, 0, 3, 5, { 0 }}, + { 63, 0, 3, 7, { 0 }}, + { 64, 0, 3, 8, { 0 }}, + { 65, 0, 3, 8, { 0 }}, + { 66, 0, 3, 8, { 0 }}, + { 67, 0, 3, 8, { 0 }}, + { 68, 0, 3, 8, { 0 }}, + { 69, 0, 3, 7, { 0 }}, + { 70, 0, 3, 7, { 0 }}, + { 71, 0, 3, 8, { 0 }}, + { 72, 0, 3, 8, { 0 }}, + { 73, 0, 3, 6, { 0 }}, + { 74, 0, 3, 7, { 0 }}, + { 75, 0, 3, 8, { 0 }}, + { 76, 0, 3, 7, { 0 }}, + { 77, 0, 3, 9, { 0 }}, + { 78, 0, 3, 8, { 0 }}, + { 79, 0, 3, 8, { 0 }}, + { 80, 0, 3, 8, { 0 }}, + { 81, 0, 3, 8, { 0 }}, + { 82, 0, 3, 8, { 0 }}, + { 83, 0, 3, 8, { 0 }}, + { 84, 0, 3, 8, { 0 }}, + { 85, 0, 3, 8, { 0 }}, + { 86, 0, 3, 8, { 0 }}, + { 87, 0, 3, 10, { 0 }}, + { 88, 0, 3, 8, { 0 }}, + { 89, 0, 3, 8, { 0 }}, + { 90, 0, 3, 8, { 0 }}, + { 91, 0, 3, 4, { 0 }}, + { 92, 0, 3, 8, { 0 }}, + { 93, 0, 3, 4, { 0 }}, + { 94, 0, 3, 4, { 0 }}, + { 95, 0, 11, 7, { 0 }}, + { 96, 0, 3, 3, { 0 }}, + { 97, 0, 6, 7, { 0 }}, + { 98, 0, 3, 7, { 0 }}, + { 99, 0, 6, 7, { 0 }}, + { 100, 0, 3, 7, { 0 }}, + { 101, 0, 6, 7, { 0 }}, + { 102, 0, 3, 5, { 0 }}, + { 103, 0, 6, 7, { 0 }}, + { 104, 0, 3, 7, { 0 }}, + { 105, 0, 3, 2, { 0 }}, + { 106, -2, 3, 2, { 0 }}, + { 107, 0, 3, 7, { 0 }}, + { 108, 0, 3, 4, { 0 }}, + { 109, 0, 6, 10, { 0 }}, + { 110, 0, 6, 7, { 0 }}, + { 111, 0, 6, 7, { 0 }}, + { 112, 0, 6, 7, { 0 }}, + { 113, 0, 6, 7, { 0 }}, + { 114, 0, 6, 6, { 0 }}, + { 115, 0, 6, 7, { 0 }}, + { 116, 0, 3, 6, { 0 }}, + { 117, 0, 6, 7, { 0 }}, + { 118, 0, 6, 7, { 0 }}, + { 119, 0, 6, 10, { 0 }}, + { 120, 0, 6, 7, { 0 }}, + { 121, 0, 6, 7, { 0 }}, + { 122, 0, 6, 7, { 0 }}, + { 123, 0, 3, 5, { 0 }}, + { 124, 0, 3, 2, { 0 }}, + { 125, 0, 3, 5, { 0 }}, + { 126, 0, 6, 8, { 0 }}, +}; + +// Style loading function: cyber +static void GuiLoadStyleCyber(void) +{ + // Load style properties provided + // NOTE: Default properties are propagated + for (int i = 0; i < CYBER_STYLE_PROPS_COUNT; i++) + { + GuiSetStyle(cyberStyleProps[i].controlId, cyberStyleProps[i].propertyId, cyberStyleProps[i].propertyValue); + } + + // Custom font loading + // NOTE: Compressed font image data (DEFLATE), it requires DecompressData() function + int cyberFontDataSize = 0; + unsigned char *data = DecompressData(cyberFontData, CYBER_COMPRESSED_DATA_SIZE, &cyberFontDataSize); + Image imFont = { data, 256, 256, 1, 2 }; + + Font font = { 0 }; + font.baseSize = 14; + font.glyphCount = 95; + + // Load texture from image + font.texture = LoadTextureFromImage(imFont); + UnloadImage(imFont); // Uncompressed data can be unloaded from memory + + // Copy char recs data from global fontRecs + // NOTE: Required to avoid issues if trying to free font + font.recs = (Rectangle *)malloc(font.glyphCount*sizeof(Rectangle)); + memcpy(font.recs, cyberFontRecs, font.glyphCount*sizeof(Rectangle)); + + // Copy font char info data from global fontChars + // NOTE: Required to avoid issues if trying to free font + font.glyphs = (GlyphInfo *)malloc(font.glyphCount*sizeof(GlyphInfo)); + memcpy(font.glyphs, cyberFontChars, font.glyphCount*sizeof(GlyphInfo)); + + GuiSetFont(font); + + // Setup a white rectangle on the font to be used on shapes drawing, + // this way we make sure all gui can be drawn on a single pass because no texture change is required + // NOTE: Setting up this rectangle is a manual process (for the moment) + Rectangle whiteChar = { 89, 9, 2, 2 }; + SetShapesTexture(font.texture, whiteChar); +} diff --git a/examples/style_selector/styles/style_dark.h b/examples/style_selector/styles/style_dark.h new file mode 100644 index 0000000..17d6f13 --- /dev/null +++ b/examples/style_selector/styles/style_dark.h @@ -0,0 +1,347 @@ +////////////////////////////////////////////////////////////////////////////////// +// // +// StyleAsCode exporter v1.2 - Style data exported as a values array // +// // +// USAGE: On init call: GuiLoadStyleDark(); // +// // +// more info and bugs-report: github.com/raysan5/raygui // +// feedback and support: ray[at]raylibtech.com // +// // +// Copyright (c) 2020-2022 raylib technologies (@raylibtech) // +// // +////////////////////////////////////////////////////////////////////////////////// + +#define DARK_STYLE_PROPS_COUNT 22 + +// Custom style name: dark +static const GuiStyleProp darkStyleProps[DARK_STYLE_PROPS_COUNT] = { + { 0, 0, 0x878787ff }, // DEFAULT_BORDER_COLOR_NORMAL + { 0, 1, 0x2c2c2cff }, // DEFAULT_BASE_COLOR_NORMAL + { 0, 2, 0xc3c3c3ff }, // DEFAULT_TEXT_COLOR_NORMAL + { 0, 3, 0xe1e1e1ff }, // DEFAULT_BORDER_COLOR_FOCUSED + { 0, 4, 0x848484ff }, // DEFAULT_BASE_COLOR_FOCUSED + { 0, 5, 0x181818ff }, // DEFAULT_TEXT_COLOR_FOCUSED + { 0, 6, 0x000000ff }, // DEFAULT_BORDER_COLOR_PRESSED + { 0, 7, 0xefefefff }, // DEFAULT_BASE_COLOR_PRESSED + { 0, 8, 0x202020ff }, // DEFAULT_TEXT_COLOR_PRESSED + { 0, 9, 0x6a6a6aff }, // DEFAULT_BORDER_COLOR_DISABLED + { 0, 10, 0x818181ff }, // DEFAULT_BASE_COLOR_DISABLED + { 0, 11, 0x606060ff }, // DEFAULT_TEXT_COLOR_DISABLED + { 0, 16, 0x00000010 }, // DEFAULT_TEXT_SIZE + { 0, 17, 0x00000000 }, // DEFAULT_TEXT_SPACING + { 0, 18, 0x9d9d9dff }, // DEFAULT_LINE_COLOR + { 0, 19, 0x3c3c3cff }, // DEFAULT_BACKGROUND_COLOR + { 1, 5, 0xf7f7f7ff }, // LABEL_TEXT_COLOR_FOCUSED + { 1, 8, 0x898989ff }, // LABEL_TEXT_COLOR_PRESSED + { 4, 5, 0xb0b0b0ff }, // SLIDER_TEXT_COLOR_FOCUSED + { 5, 5, 0x848484ff }, // PROGRESSBAR_TEXT_COLOR_FOCUSED + { 9, 5, 0xf5f5f5ff }, // TEXTBOX_TEXT_COLOR_FOCUSED + { 10, 5, 0xf6f6f6ff }, // VALUEBOX_TEXT_COLOR_FOCUSED +}; + +// WARNING: This style uses a custom font: PixelOperator.ttf (size: 16, spacing: 0) + +#define DARK_COMPRESSED_DATA_SIZE 1031 + +// Font image pixels data compressed (DEFLATE) +// NOTE: Original pixel data simplified to GRAYSCALE +static unsigned char darkFontData[DARK_COMPRESSED_DATA_SIZE] = { 0xed, + 0xdd, 0xd1, 0x76, 0x9b, 0x30, 0x0c, 0x00, 0x50, 0xff, 0xff, 0x4f, 0x6b, 0x4f, 0x3b, 0xeb, 0xb6, 0x16, 0x90, 0x90, 0x8d, + 0x93, 0xdc, 0xdd, 0x97, 0x9d, 0x36, 0x25, 0xc4, 0xc2, 0xc6, 0x04, 0xc9, 0xc4, 0x00, 0x00, 0xf8, 0x47, 0x7c, 0xfb, 0x93, + 0xf8, 0xf1, 0x95, 0x71, 0x79, 0x3b, 0xc7, 0x3f, 0xff, 0xfd, 0xdb, 0x38, 0x78, 0xaf, 0x6b, 0xfb, 0x9a, 0x7d, 0xdf, 0x48, + 0xb4, 0xc4, 0xf7, 0xfb, 0x17, 0x97, 0xb7, 0xfb, 0xd3, 0xe7, 0xcb, 0xbf, 0xfe, 0x68, 0x4b, 0xe7, 0xed, 0xfc, 0x54, 0xfc, + 0xe3, 0x52, 0x24, 0xe2, 0x62, 0xdb, 0x5c, 0x6f, 0xc5, 0xa3, 0x77, 0x8e, 0xe6, 0x16, 0x3c, 0x3f, 0x3a, 0x7f, 0x8a, 0x74, + 0xbe, 0x3d, 0xe2, 0xa0, 0x1f, 0xcd, 0x8d, 0xff, 0xd7, 0x7f, 0xb9, 0x7e, 0x1c, 0xc9, 0x88, 0x76, 0xf4, 0xf4, 0xe3, 0xfd, + 0x8c, 0xd4, 0xf6, 0x67, 0xc4, 0x3f, 0x5a, 0xc7, 0xae, 0x68, 0xed, 0xff, 0xc7, 0xaf, 0xcc, 0xf6, 0xb7, 0x48, 0xf6, 0xdd, + 0x8e, 0x36, 0xa9, 0xf5, 0xff, 0xee, 0xe8, 0xff, 0xf9, 0xec, 0x7d, 0xe3, 0x50, 0x7e, 0x5c, 0x5e, 0x19, 0xff, 0x4a, 0xec, + 0xae, 0x8e, 0x5c, 0x95, 0x3e, 0x31, 0x36, 0x88, 0x7f, 0xf6, 0x38, 0x3c, 0x6e, 0xab, 0x91, 0x3e, 0x33, 0x3c, 0x1f, 0xff, + 0xf3, 0xf1, 0x3f, 0x26, 0xc4, 0xff, 0xf9, 0x79, 0xf4, 0x9f, 0x88, 0x45, 0xb2, 0x2f, 0xe7, 0xce, 0x31, 0x91, 0xe8, 0x45, + 0xf5, 0xd6, 0xab, 0x9d, 0xff, 0xbf, 0x46, 0x3f, 0xde, 0x38, 0xfe, 0x91, 0x9c, 0xdf, 0x66, 0xe7, 0x38, 0x3b, 0xb4, 0xc2, + 0xf9, 0xfc, 0xff, 0x78, 0xef, 0xe2, 0xe6, 0xd8, 0x15, 0x2f, 0xd6, 0xfb, 0x3b, 0xe3, 0x1f, 0xd3, 0xe2, 0x1f, 0x4b, 0xe2, + 0x3f, 0x0e, 0xaf, 0x6a, 0xe3, 0xf6, 0x0c, 0x7b, 0xcf, 0xf8, 0x67, 0xaf, 0xff, 0x6b, 0x23, 0xec, 0xf3, 0x2d, 0x11, 0x37, + 0xaf, 0x41, 0x78, 0xfd, 0x6f, 0x11, 0x43, 0xf4, 0x7d, 0x8f, 0x8c, 0xf8, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8b, 0xef, + 0xd0, 0x45, 0x53, 0xb6, 0x6c, 0x25, 0x53, 0xfd, 0x5e, 0x9e, 0x7f, 0x2e, 0x6b, 0xf7, 0x6c, 0xef, 0xf2, 0xfb, 0xde, 0xf9, + 0x37, 0x47, 0x59, 0xc8, 0xb5, 0x1c, 0xeb, 0x2b, 0x95, 0x16, 0x9d, 0xb9, 0x25, 0xf5, 0x4c, 0xf5, 0xee, 0x3b, 0x49, 0x51, + 0xae, 0x2b, 0xe8, 0xf9, 0x54, 0x77, 0x7e, 0xd3, 0x13, 0xa5, 0xae, 0xf8, 0x8f, 0x2d, 0xe2, 0x9f, 0xcf, 0x13, 0xca, 0x1f, + 0xb7, 0x91, 0xce, 0x47, 0x8b, 0xd6, 0x9c, 0xad, 0x68, 0x8d, 0x52, 0x24, 0x2a, 0xad, 0x7a, 0x72, 0x4e, 0x77, 0xef, 0xff, + 0xd7, 0x32, 0xb2, 0x3f, 0x2b, 0xfe, 0xf9, 0x73, 0xeb, 0xdd, 0x33, 0xec, 0x8a, 0x5c, 0x82, 0x6a, 0xa5, 0x4c, 0x3e, 0xfe, + 0xf9, 0xde, 0x73, 0xb6, 0xb5, 0x51, 0xca, 0xa3, 0xbe, 0x9b, 0x01, 0x9e, 0xad, 0x52, 0x5b, 0x9d, 0x8f, 0x3a, 0x3f, 0x23, + 0x37, 0x2e, 0xd4, 0xb8, 0xed, 0xdb, 0xff, 0x63, 0x42, 0xff, 0x5f, 0x93, 0x8f, 0x1c, 0x4b, 0x8f, 0x92, 0xb3, 0x5e, 0xd4, + 0x75, 0x56, 0x7b, 0x95, 0xf8, 0xaf, 0xfe, 0x6c, 0xb1, 0x65, 0xd6, 0xd8, 0xbc, 0x36, 0xda, 0x7d, 0xfe, 0xdf, 0x75, 0xc5, + 0x7e, 0xbf, 0x52, 0x7d, 0x4d, 0xf4, 0xa3, 0xf4, 0x3d, 0x48, 0x65, 0x8e, 0xd4, 0x7b, 0xfd, 0x9f, 0x9f, 0xc1, 0x87, 0x0c, + 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x8f, 0xca, 0xff, 0x5f, 0x93, 0x11, 0x34, 0x4a, 0x2b, 0xa1, 0xcf, 0xcf, + 0xb9, 0xbf, 0xb3, 0x26, 0x78, 0x3c, 0x9c, 0x61, 0x7e, 0x5c, 0x2d, 0xf0, 0xda, 0xf1, 0x7f, 0xfe, 0x37, 0xa3, 0xb0, 0x7e, + 0xe7, 0xca, 0xf8, 0x8f, 0x42, 0x34, 0x7a, 0xb2, 0xe4, 0x73, 0x5b, 0x89, 0xff, 0xfe, 0xb7, 0x63, 0xfc, 0xc7, 0x92, 0xf8, + 0xc7, 0xcb, 0xc7, 0xbf, 0x52, 0x6b, 0x71, 0x9c, 0x59, 0x2b, 0xfe, 0xe7, 0x6d, 0x1b, 0xa5, 0x2a, 0x8c, 0xfe, 0xf8, 0x47, + 0x71, 0x2b, 0x71, 0x72, 0x44, 0xf5, 0xe6, 0xdc, 0xf7, 0xe4, 0xe9, 0xad, 0x8d, 0x7f, 0xf7, 0x73, 0x3f, 0x76, 0xea, 0xff, + 0xd7, 0xea, 0xae, 0x66, 0x67, 0x1f, 0xdf, 0xe9, 0xe9, 0x4f, 0xf6, 0xff, 0xee, 0x67, 0x6b, 0xad, 0x3e, 0xff, 0xcf, 0x9a, + 0xff, 0x8d, 0xf4, 0x68, 0x12, 0xdb, 0xc6, 0xff, 0xce, 0x2c, 0xb4, 0x3b, 0xfe, 0xf1, 0x22, 0xf3, 0xff, 0x51, 0x38, 0x3e, + 0x67, 0xcf, 0xff, 0xaf, 0x3d, 0xef, 0x68, 0xef, 0xf8, 0x8f, 0x1b, 0xe7, 0xd7, 0x58, 0x72, 0xfd, 0x3f, 0x4e, 0xae, 0x36, + 0x7a, 0xde, 0x67, 0xb4, 0xad, 0xdf, 0xff, 0xf7, 0xbe, 0xe5, 0x6b, 0xf5, 0xb3, 0x2b, 0x16, 0x58, 0x75, 0x1d, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0xfe, 0xff, 0xd9, 0x1d, 0xe4, 0xfc, 0xbd, 0xe8, 0xd1, 0x78, 0x6f, 0x3f, 0x9a, 0x32, 0x19, + 0xc6, 0xc1, 0x9d, 0xf8, 0xec, 0x0a, 0x7c, 0x3d, 0x99, 0xb9, 0x47, 0x7b, 0xdf, 0x57, 0xd3, 0x30, 0x6e, 0xef, 0x51, 0x7e, + 0x3d, 0xc1, 0xe7, 0x57, 0x96, 0x8d, 0xc6, 0xcc, 0xae, 0x75, 0xd5, 0x36, 0x33, 0x73, 0xc6, 0xbb, 0xeb, 0x3f, 0xba, 0x5a, + 0x23, 0x6e, 0x8c, 0x0c, 0xb3, 0xe3, 0x5f, 0x5f, 0xe9, 0xbb, 0x7a, 0x7c, 0xad, 0x88, 0x7f, 0x4f, 0x16, 0x69, 0x3e, 0xf2, + 0x6b, 0xd6, 0xd3, 0x3e, 0x7b, 0x9e, 0xca, 0xba, 0xdc, 0xc7, 0x4a, 0x06, 0xed, 0xbb, 0xc6, 0xff, 0xf9, 0xf5, 0xb4, 0x67, + 0x55, 0x76, 0xf5, 0x66, 0xd0, 0x8b, 0xff, 0xbc, 0xda, 0xbe, 0x58, 0x38, 0x32, 0x55, 0x2b, 0x68, 0xe6, 0xd5, 0x0c, 0x76, + 0x57, 0x91, 0xcc, 0x1f, 0xff, 0x6b, 0xcf, 0xb9, 0xaa, 0x3c, 0x1d, 0x68, 0xb7, 0xfe, 0xdf, 0x99, 0x3b, 0xbd, 0x4b, 0xfc, + 0xeb, 0xb3, 0xfc, 0xd1, 0x34, 0x2b, 0x7d, 0x6e, 0xfc, 0x5f, 0xfd, 0xc4, 0x8b, 0xfa, 0x3c, 0xfc, 0x89, 0x3d, 0xa9, 0xbc, + 0x73, 0xe5, 0xaf, 0xb2, 0x99, 0xfd, 0x9d, 0xf1, 0xdf, 0xef, 0x08, 0xe0, 0xe9, 0x51, 0x8c, 0xf7, 0x3a, 0x02, 0x54, 0xe0, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x36, 0xbb, 0xe3, 0x7e, 0x9c, 0xa5, 0x13, 0x2d, 0x19, 0x37, 0xbb, 0xaf, 0xa5, + 0x3f, 0x4e, 0xd6, 0xa7, 0xbd, 0x96, 0xdb, 0x15, 0xdb, 0xde, 0x0f, 0xae, 0xb6, 0x7f, 0x57, 0xfe, 0xf4, 0xee, 0x6b, 0xe9, + 0xdf, 0x5f, 0x93, 0x33, 0x4e, 0x8e, 0x8e, 0x57, 0x8c, 0x7f, 0x25, 0x67, 0xf4, 0xf9, 0xb5, 0x94, 0xa3, 0x94, 0xf1, 0x1a, + 0x9b, 0xe7, 0xcc, 0xed, 0x94, 0x8b, 0xbd, 0x72, 0xfc, 0x8f, 0x72, 0x74, 0xa2, 0x21, 0x0f, 0x5a, 0xfc, 0x47, 0xba, 0x16, + 0x6f, 0xe7, 0xfe, 0xff, 0xc4, 0xda, 0xeb, 0xef, 0x17, 0xff, 0xce, 0x8a, 0xab, 0x19, 0x6b, 0x69, 0xe7, 0xab, 0x3b, 0xdf, + 0xbf, 0xff, 0x57, 0xe7, 0xff, 0x3d, 0xe3, 0xff, 0xea, 0xb5, 0xb4, 0xf3, 0xf3, 0xff, 0xcf, 0x18, 0xff, 0xef, 0xbc, 0x22, + 0x73, 0xac, 0xbd, 0x5e, 0x5e, 0xae, 0xf8, 0x7f, 0x7a, 0x5e, 0xee, 0xdd, 0xeb, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x46, 0xbf, 0x00 }; + +// Font characters rectangles data +static const Rectangle darkFontRecs[95] = { + { 4, 4, 4 , 16 }, + { 16, 4, 1 , 9 }, + { 25, 4, 3 , 3 }, + { 36, 4, 6 , 9 }, + { 50, 4, 5 , 13 }, + { 63, 4, 7 , 9 }, + { 78, 4, 5 , 9 }, + { 91, 4, 1 , 3 }, + { 100, 4, 3 , 9 }, + { 111, 4, 3 , 9 }, + { 122, 4, 5 , 5 }, + { 135, 4, 5 , 5 }, + { 148, 4, 2 , 3 }, + { 158, 4, 4 , 1 }, + { 170, 4, 1 , 1 }, + { 179, 4, 3 , 9 }, + { 190, 4, 5 , 9 }, + { 203, 4, 3 , 9 }, + { 214, 4, 5 , 9 }, + { 227, 4, 5 , 9 }, + { 240, 4, 5 , 9 }, + { 4, 28, 5 , 9 }, + { 17, 28, 5 , 9 }, + { 30, 28, 5 , 9 }, + { 43, 28, 5 , 9 }, + { 56, 28, 5 , 9 }, + { 69, 28, 1 , 7 }, + { 78, 28, 2 , 9 }, + { 88, 28, 3 , 5 }, + { 99, 28, 4 , 3 }, + { 111, 28, 3 , 5 }, + { 122, 28, 5 , 9 }, + { 135, 28, 7 , 9 }, + { 150, 28, 5 , 9 }, + { 163, 28, 5 , 9 }, + { 176, 28, 5 , 9 }, + { 189, 28, 5 , 9 }, + { 202, 28, 5 , 9 }, + { 215, 28, 5 , 9 }, + { 228, 28, 5 , 9 }, + { 241, 28, 5 , 9 }, + { 4, 52, 1 , 9 }, + { 13, 52, 5 , 9 }, + { 26, 52, 5 , 9 }, + { 39, 52, 5 , 9 }, + { 52, 52, 7 , 9 }, + { 67, 52, 5 , 9 }, + { 80, 52, 5 , 9 }, + { 93, 52, 5 , 9 }, + { 106, 52, 5 , 9 }, + { 119, 52, 5 , 9 }, + { 132, 52, 5 , 9 }, + { 145, 52, 5 , 9 }, + { 158, 52, 5 , 9 }, + { 171, 52, 5 , 9 }, + { 184, 52, 7 , 9 }, + { 199, 52, 5 , 9 }, + { 212, 52, 5 , 9 }, + { 225, 52, 5 , 9 }, + { 238, 52, 3 , 9 }, + { 4, 76, 3 , 9 }, + { 15, 76, 3 , 9 }, + { 26, 76, 5 , 3 }, + { 39, 76, 5 , 1 }, + { 52, 76, 2 , 2 }, + { 62, 76, 5 , 7 }, + { 75, 76, 5 , 9 }, + { 88, 76, 5 , 7 }, + { 101, 76, 5 , 9 }, + { 114, 76, 5 , 7 }, + { 127, 76, 4 , 9 }, + { 139, 76, 5 , 9 }, + { 152, 76, 5 , 9 }, + { 165, 76, 1 , 9 }, + { 174, 76, 5 , 11 }, + { 187, 76, 5 , 9 }, + { 200, 76, 2 , 9 }, + { 210, 76, 7 , 7 }, + { 225, 76, 5 , 7 }, + { 238, 76, 5 , 7 }, + { 4, 100, 5 , 9 }, + { 17, 100, 5 , 9 }, + { 30, 100, 5 , 7 }, + { 43, 100, 5 , 7 }, + { 56, 100, 4 , 8 }, + { 68, 100, 5 , 7 }, + { 81, 100, 5 , 7 }, + { 94, 100, 7 , 7 }, + { 109, 100, 5 , 7 }, + { 122, 100, 5 , 9 }, + { 135, 100, 5 , 7 }, + { 148, 100, 4 , 9 }, + { 160, 100, 1 , 9 }, + { 169, 100, 4 , 9 }, + { 181, 100, 6 , 2 }, +}; + +// Font glyphs info data +// NOTE: No glyphs.image data provided +static const GlyphInfo darkFontChars[95] = { + { 32, 0, 13, 4, { 0 }}, + { 33, 2, 4, 5, { 0 }}, + { 34, 2, 4, 7, { 0 }}, + { 35, 1, 4, 8, { 0 }}, + { 36, 1, 2, 7, { 0 }}, + { 37, 1, 4, 9, { 0 }}, + { 38, 1, 4, 7, { 0 }}, + { 39, 2, 4, 5, { 0 }}, + { 40, 3, 4, 7, { 0 }}, + { 41, 1, 4, 7, { 0 }}, + { 42, 1, 4, 7, { 0 }}, + { 43, 1, 6, 7, { 0 }}, + { 44, 1, 12, 5, { 0 }}, + { 45, 1, 8, 6, { 0 }}, + { 46, 2, 12, 5, { 0 }}, + { 47, 1, 4, 5, { 0 }}, + { 48, 1, 4, 7, { 0 }}, + { 49, 2, 4, 7, { 0 }}, + { 50, 1, 4, 7, { 0 }}, + { 51, 1, 4, 7, { 0 }}, + { 52, 1, 4, 7, { 0 }}, + { 53, 1, 4, 7, { 0 }}, + { 54, 1, 4, 7, { 0 }}, + { 55, 1, 4, 7, { 0 }}, + { 56, 1, 4, 7, { 0 }}, + { 57, 1, 4, 7, { 0 }}, + { 58, 2, 6, 5, { 0 }}, + { 59, 1, 6, 5, { 0 }}, + { 60, 1, 6, 5, { 0 }}, + { 61, 1, 7, 6, { 0 }}, + { 62, 1, 6, 5, { 0 }}, + { 63, 1, 4, 7, { 0 }}, + { 64, 1, 4, 9, { 0 }}, + { 65, 1, 4, 7, { 0 }}, + { 66, 1, 4, 7, { 0 }}, + { 67, 1, 4, 7, { 0 }}, + { 68, 1, 4, 7, { 0 }}, + { 69, 1, 4, 7, { 0 }}, + { 70, 1, 4, 7, { 0 }}, + { 71, 1, 4, 7, { 0 }}, + { 72, 1, 4, 7, { 0 }}, + { 73, 2, 4, 5, { 0 }}, + { 74, 1, 4, 7, { 0 }}, + { 75, 1, 4, 7, { 0 }}, + { 76, 1, 4, 7, { 0 }}, + { 77, 1, 4, 9, { 0 }}, + { 78, 1, 4, 7, { 0 }}, + { 79, 1, 4, 7, { 0 }}, + { 80, 1, 4, 7, { 0 }}, + { 81, 1, 4, 7, { 0 }}, + { 82, 1, 4, 7, { 0 }}, + { 83, 1, 4, 7, { 0 }}, + { 84, 1, 4, 7, { 0 }}, + { 85, 1, 4, 7, { 0 }}, + { 86, 1, 4, 7, { 0 }}, + { 87, 1, 4, 9, { 0 }}, + { 88, 1, 4, 7, { 0 }}, + { 89, 1, 4, 7, { 0 }}, + { 90, 1, 4, 7, { 0 }}, + { 91, 3, 4, 7, { 0 }}, + { 92, 1, 4, 5, { 0 }}, + { 93, 1, 4, 7, { 0 }}, + { 94, 1, 4, 7, { 0 }}, + { 95, 0, 14, 5, { 0 }}, + { 96, 1, 4, 5, { 0 }}, + { 97, 1, 6, 7, { 0 }}, + { 98, 1, 4, 7, { 0 }}, + { 99, 1, 6, 7, { 0 }}, + { 100, 1, 4, 7, { 0 }}, + { 101, 1, 6, 7, { 0 }}, + { 102, 1, 4, 6, { 0 }}, + { 103, 1, 6, 7, { 0 }}, + { 104, 1, 4, 7, { 0 }}, + { 105, 2, 4, 5, { 0 }}, + { 106, 1, 4, 7, { 0 }}, + { 107, 1, 4, 7, { 0 }}, + { 108, 2, 4, 5, { 0 }}, + { 109, 1, 6, 9, { 0 }}, + { 110, 1, 6, 7, { 0 }}, + { 111, 1, 6, 7, { 0 }}, + { 112, 1, 6, 7, { 0 }}, + { 113, 1, 6, 7, { 0 }}, + { 114, 1, 6, 7, { 0 }}, + { 115, 1, 6, 7, { 0 }}, + { 116, 1, 5, 6, { 0 }}, + { 117, 1, 6, 7, { 0 }}, + { 118, 1, 6, 7, { 0 }}, + { 119, 1, 6, 9, { 0 }}, + { 120, 1, 6, 7, { 0 }}, + { 121, 1, 6, 7, { 0 }}, + { 122, 1, 6, 7, { 0 }}, + { 123, 2, 4, 7, { 0 }}, + { 124, 2, 4, 5, { 0 }}, + { 125, 1, 4, 7, { 0 }}, + { 126, 1, 4, 8, { 0 }}, +}; + +// Style loading function: dark +static void GuiLoadStyleDark(void) +{ + // Load style properties provided + // NOTE: Default properties are propagated + for (int i = 0; i < DARK_STYLE_PROPS_COUNT; i++) + { + GuiSetStyle(darkStyleProps[i].controlId, darkStyleProps[i].propertyId, darkStyleProps[i].propertyValue); + } + + // Custom font loading + // NOTE: Compressed font image data (DEFLATE), it requires DecompressData() function + int darkFontDataSize = 0; + unsigned char *data = DecompressData(darkFontData, DARK_COMPRESSED_DATA_SIZE, &darkFontDataSize); + Image imFont = { data, 256, 256, 1, 2 }; + + Font font = { 0 }; + font.baseSize = 16; + font.glyphCount = 95; + + // Load texture from image + font.texture = LoadTextureFromImage(imFont); + UnloadImage(imFont); // Uncompressed data can be unloaded from memory + + // Copy char recs data from global fontRecs + // NOTE: Required to avoid issues if trying to free font + font.recs = (Rectangle *)malloc(font.glyphCount*sizeof(Rectangle)); + memcpy(font.recs, darkFontRecs, font.glyphCount*sizeof(Rectangle)); + + // Copy font char info data from global fontChars + // NOTE: Required to avoid issues if trying to free font + font.glyphs = (GlyphInfo *)malloc(font.glyphCount*sizeof(GlyphInfo)); + memcpy(font.glyphs, darkFontChars, font.glyphCount*sizeof(GlyphInfo)); + + GuiSetFont(font); + + // TODO: Setup a white rectangle on the font to be used on shapes drawing, + // this way we make sure all gui can be drawn on a single pass because no texture change is required + // NOTE: Setting up this rectangle is a manual process (for the moment) + Rectangle whiteChar = { 124, 6, 1, 1 }; + SetShapesTexture(font.texture, whiteChar); + + //----------------------------------------------------------------- + + // TODO: Custom user style setup: Set specific properties here (if required) + // i.e. Controls specific BORDER_WIDTH, TEXT_PADDING, TEXT_ALIGNMENT +} diff --git a/examples/style_selector/styles/style_jungle.h b/examples/style_selector/styles/style_jungle.h new file mode 100644 index 0000000..1ff60d9 --- /dev/null +++ b/examples/style_selector/styles/style_jungle.h @@ -0,0 +1,337 @@ +////////////////////////////////////////////////////////////////////////////////// +// // +// StyleAsCode exporter v1.2 - Style data exported as a values array // +// // +// USAGE: On init call: GuiLoadStyleJungle(); // +// // +// more info and bugs-report: github.com/raysan5/raygui // +// feedback and support: ray[at]raylibtech.com // +// // +// Copyright (c) 2020-2022 raylib technologies (@raylibtech) // +// // +////////////////////////////////////////////////////////////////////////////////// + +#define JUNGLE_STYLE_PROPS_COUNT 16 + +// Custom style name: jungle +static const GuiStyleProp jungleStyleProps[JUNGLE_STYLE_PROPS_COUNT] = { + { 0, 0, 0x60827dff }, // DEFAULT_BORDER_COLOR_NORMAL + { 0, 1, 0x2c3334ff }, // DEFAULT_BASE_COLOR_NORMAL + { 0, 2, 0x82a29fff }, // DEFAULT_TEXT_COLOR_NORMAL + { 0, 3, 0x5f9aa8ff }, // DEFAULT_BORDER_COLOR_FOCUSED + { 0, 4, 0x334e57ff }, // DEFAULT_BASE_COLOR_FOCUSED + { 0, 5, 0x6aa9b8ff }, // DEFAULT_TEXT_COLOR_FOCUSED + { 0, 6, 0xa9cb8dff }, // DEFAULT_BORDER_COLOR_PRESSED + { 0, 7, 0x3b6357ff }, // DEFAULT_BASE_COLOR_PRESSED + { 0, 8, 0x97af81ff }, // DEFAULT_TEXT_COLOR_PRESSED + { 0, 9, 0x5b6462ff }, // DEFAULT_BORDER_COLOR_DISABLED + { 0, 10, 0x2c3334ff }, // DEFAULT_BASE_COLOR_DISABLED + { 0, 11, 0x666b69ff }, // DEFAULT_TEXT_COLOR_DISABLED + { 0, 16, 0x0000000c }, // DEFAULT_TEXT_SIZE + { 0, 17, 0x00000000 }, // DEFAULT_TEXT_SPACING + { 0, 18, 0x638465ff }, // DEFAULT_LINE_COLOR + { 0, 19, 0x2b3a3aff }, // DEFAULT_BACKGROUND_COLOR +}; + +// WARNING: This style uses a custom font: (size: 12, spacing: 0) + +#define JUNGLE_COMPRESSED_DATA_SIZE 1059 + +// Font image pixels data compressed (DEFLATE) +// NOTE: Original pixel data simplified to GRAYSCALE +static unsigned char jungleFontData[JUNGLE_COMPRESSED_DATA_SIZE] = { 0xed, + 0xdd, 0xe1, 0x6e, 0xdb, 0x20, 0x14, 0x06, 0x50, 0x84, 0xfa, 0xfe, 0xaf, 0xcc, 0xd4, 0x6d, 0xdd, 0xb4, 0x35, 0xc6, 0xdc, + 0x0b, 0xd8, 0x69, 0x7a, 0x7a, 0xd4, 0x3f, 0x71, 0xeb, 0xd8, 0x5c, 0x83, 0x53, 0xf1, 0x15, 0xb7, 0x02, 0x00, 0xf0, 0xc9, + 0xfb, 0xd7, 0xe3, 0xd7, 0x1e, 0x6d, 0x29, 0xbf, 0xb7, 0x8c, 0xef, 0xeb, 0xe3, 0xf5, 0x5f, 0x5b, 0xea, 0xe1, 0x4f, 0x3c, + 0xde, 0x63, 0x3d, 0x38, 0x86, 0xa3, 0xa3, 0x3e, 0x3e, 0xb2, 0x12, 0xda, 0x72, 0xbc, 0xff, 0xe3, 0xf6, 0x2a, 0x81, 0x73, + 0xf8, 0xf7, 0xab, 0x04, 0xce, 0xa5, 0xff, 0x7b, 0xbb, 0xeb, 0xdf, 0x6f, 0x83, 0xe3, 0x6d, 0xbf, 0xbe, 0xdf, 0x5b, 0xa2, + 0x06, 0xf6, 0x79, 0xfc, 0xf3, 0x25, 0x74, 0x05, 0xc6, 0xaf, 0x8c, 0x58, 0xeb, 0xf6, 0x7e, 0xfa, 0xec, 0x1c, 0x5a, 0xf0, + 0x08, 0x3e, 0x5e, 0xdf, 0x59, 0xff, 0xf2, 0xe7, 0x3d, 0xc6, 0xfb, 0xff, 0x59, 0x55, 0x5a, 0x7b, 0x7b, 0xd8, 0x12, 0xa5, + 0x5b, 0x9b, 0x9a, 0x78, 0xa7, 0x15, 0x57, 0x73, 0x59, 0xd4, 0xba, 0xb5, 0x7b, 0x0e, 0x2d, 0x51, 0xff, 0xdc, 0x15, 0xba, + 0x6a, 0x3f, 0xb9, 0xfe, 0xff, 0xee, 0xed, 0xe7, 0x15, 0xd0, 0xdf, 0xeb, 0xfc, 0x11, 0xaf, 0xea, 0xff, 0x65, 0x6b, 0xf5, + 0x67, 0xea, 0x7f, 0xc5, 0xf8, 0xdf, 0xff, 0xf9, 0x7e, 0x9b, 0x3d, 0xde, 0x5f, 0xfd, 0xdd, 0xff, 0xe3, 0x77, 0xcf, 0x15, + 0xf5, 0x8f, 0xdf, 0xff, 0xf7, 0x56, 0x7f, 0xc5, 0xf8, 0xff, 0x8c, 0x9f, 0x23, 0xcf, 0xee, 0xe3, 0x8f, 0xaf, 0x9d, 0xb6, + 0xbd, 0xff, 0xdf, 0xa1, 0x57, 0xfd, 0xb3, 0xcf, 0x7f, 0x6d, 0x62, 0x9c, 0xdd, 0xdd, 0xff, 0x33, 0xfb, 0xfa, 0x68, 0x89, + 0x96, 0xe8, 0x9f, 0x5f, 0xb5, 0xfe, 0xbd, 0xea, 0xb3, 0x62, 0xac, 0x89, 0xdc, 0xe5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x5e, 0x73, 0xc6, 0xa4, 0x3f, 0xff, 0xbe, 0x72, 0x26, 0x72, 0xd7, 0xb6, 0xf1, 0xb4, 0x41, 0x24, 0xb9, 0x52, 0x13, 0x2d, + 0x76, 0x57, 0xbb, 0xec, 0x4a, 0xfb, 0x95, 0x70, 0x36, 0x63, 0xe4, 0x68, 0xb2, 0xef, 0x37, 0x53, 0xff, 0x1a, 0x9c, 0x7b, + 0xed, 0x27, 0xf4, 0x8e, 0xf2, 0x8c, 0xc7, 0x33, 0xd7, 0xb3, 0xe7, 0x17, 0xdd, 0x16, 0x1b, 0x01, 0xca, 0x25, 0xfd, 0x7f, + 0x2c, 0xc3, 0xb4, 0x27, 0xdd, 0xf8, 0x38, 0x67, 0xd6, 0x3b, 0xd6, 0xb7, 0x70, 0xa2, 0xf0, 0xef, 0x6c, 0xf3, 0xde, 0xeb, + 0x7b, 0x75, 0xea, 0x33, 0x9b, 0x28, 0xc9, 0x5c, 0x93, 0x99, 0x04, 0xeb, 0x8a, 0xf1, 0x7f, 0x4d, 0xff, 0xef, 0x5d, 0xa7, + 0xed, 0xbf, 0xef, 0x35, 0xe3, 0xf8, 0x5d, 0xf5, 0xdf, 0x31, 0x56, 0x97, 0x81, 0x51, 0x21, 0x7b, 0x2c, 0xb9, 0xfb, 0x7f, + 0x26, 0xa9, 0xd3, 0x4b, 0x2b, 0xe5, 0x3f, 0x4f, 0xdd, 0xd1, 0xff, 0x67, 0xfa, 0x78, 0x6e, 0xfc, 0xef, 0xd7, 0x7f, 0x5d, + 0xba, 0xad, 0xdd, 0xf2, 0x69, 0x7a, 0xa4, 0x8f, 0x3d, 0xd7, 0xfd, 0x9f, 0x95, 0x79, 0xc6, 0xfb, 0xfe, 0x9e, 0x52, 0x15, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf6, 0xe6, 0xf1, 0xae, 0xca, 0x94, 0xb4, 0xc1, 0x55, 0x7c, 0x8e, 0xf3, 0x5a, 0x57, + 0xa5, 0xf5, 0xae, 0x6f, 0xef, 0xd5, 0xb9, 0x8f, 0x15, 0x73, 0xd2, 0x99, 0x15, 0xcc, 0xe6, 0xb3, 0x88, 0xed, 0x29, 0x12, + 0x79, 0x3b, 0xda, 0xed, 0xce, 0xfa, 0x67, 0x8e, 0x27, 0x5f, 0xff, 0x96, 0x5c, 0x61, 0xf0, 0x6c, 0x65, 0x98, 0xe7, 0xaa, + 0x7f, 0x26, 0x75, 0x30, 0x53, 0xff, 0xf3, 0xb1, 0xaa, 0x74, 0xea, 0x11, 0x1f, 0xe3, 0xb3, 0xf5, 0x6f, 0xc9, 0x75, 0x1f, + 0xf7, 0xdc, 0xc5, 0xf6, 0xd4, 0x3f, 0xd3, 0x6e, 0xaf, 0x32, 0xfe, 0x9f, 0xef, 0xb3, 0x26, 0xc7, 0xff, 0x76, 0x3a, 0xaa, + 0xb4, 0xe5, 0x69, 0xd4, 0x78, 0x9f, 0x1a, 0x6d, 0x9f, 0xef, 0x5b, 0xff, 0xb2, 0xa5, 0xfe, 0x7b, 0xde, 0xf1, 0xeb, 0xdc, + 0xff, 0x33, 0xab, 0x57, 0xdf, 0x91, 0x73, 0x9b, 0xcb, 0x86, 0x9f, 0x6d, 0xbd, 0xa2, 0x65, 0xf6, 0x8d, 0xff, 0x52, 0x80, + 0x5f, 0x27, 0x25, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xc5, 0x1c, 0x45, 0x7e, 0xee, 0x6c, 0xc7, 0x0c, 0xe0, 0xe7, + 0xd7, 0xeb, 0xc0, 0x1c, 0xe6, 0xff, 0xaf, 0xd7, 0x83, 0xc4, 0x48, 0x0b, 0xae, 0xf9, 0x97, 0x7b, 0x1e, 0xef, 0xe8, 0x3a, + 0x68, 0xf9, 0x04, 0xe1, 0x8a, 0x79, 0xc0, 0xeb, 0xeb, 0x5f, 0x86, 0xe6, 0x63, 0x3f, 0x57, 0xb2, 0x26, 0x32, 0x43, 0x35, + 0xb8, 0xe2, 0x53, 0x6f, 0x85, 0xa8, 0x78, 0x9a, 0xe9, 0xbc, 0x15, 0x32, 0x6b, 0xdd, 0x9d, 0xed, 0x2d, 0xf7, 0x84, 0xe2, + 0x5e, 0x3a, 0xe6, 0x2c, 0xcb, 0x12, 0x3f, 0xf3, 0x1a, 0x3e, 0xb7, 0x3a, 0x30, 0x06, 0xec, 0xcf, 0x48, 0x97, 0x70, 0x7f, + 0x9c, 0xcb, 0xdd, 0xed, 0xaf, 0x7f, 0x19, 0xc8, 0xf8, 0xad, 0x4e, 0xa4, 0xb4, 0x93, 0xa7, 0xdf, 0x66, 0xae, 0x80, 0xdd, + 0xf5, 0x3f, 0x3b, 0xd7, 0x7c, 0x4a, 0xa8, 0x2c, 0xbd, 0x6e, 0x56, 0xd7, 0x7f, 0xe4, 0x3a, 0x5d, 0x7d, 0x05, 0x67, 0xae, + 0x80, 0x6b, 0xfa, 0x7f, 0x0b, 0xd7, 0xbf, 0x3f, 0x36, 0xac, 0x6f, 0xbd, 0x4c, 0x0a, 0x28, 0x37, 0xa2, 0xcc, 0xa6, 0xd5, + 0x32, 0x55, 0xac, 0xa9, 0x91, 0xe3, 0x8a, 0x4f, 0xd0, 0xb9, 0x67, 0x55, 0xaf, 0x4e, 0x6c, 0xe6, 0x5a, 0xe2, 0xfa, 0xfa, + 0xb7, 0xf4, 0x13, 0xbf, 0xeb, 0xd3, 0x3d, 0xfd, 0x3a, 0xd7, 0xeb, 0xf2, 0x89, 0xbd, 0xf5, 0xfd, 0xff, 0xf9, 0xfe, 0x1b, + 0xed, 0x8a, 0xdf, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x9e, 0x6b, 0x14, 0xc4, 0x57, 0xaa, 0x39, 0xff, 0x8d, 0xec, + 0xb3, 0xb3, 0xae, 0x7c, 0x76, 0xee, 0xae, 0xe7, 0xdb, 0xe5, 0xd7, 0x05, 0x6b, 0x5b, 0x9e, 0x00, 0xb7, 0x7e, 0xde, 0x6c, + 0x6e, 0x15, 0xb3, 0xb3, 0x16, 0xca, 0xae, 0xb8, 0x15, 0xcd, 0x60, 0xcc, 0xe4, 0x7a, 0xb2, 0x99, 0x8f, 0xf5, 0x39, 0xbc, + 0x35, 0xd9, 0xb6, 0x5c, 0xff, 0xcf, 0xe5, 0x42, 0x9e, 0xad, 0xfe, 0xe5, 0xa2, 0x7c, 0xde, 0x4c, 0xfd, 0x67, 0x9f, 0xfe, + 0x9c, 0x4f, 0x64, 0xc5, 0x5b, 0xf5, 0x15, 0xea, 0x3f, 0x96, 0xde, 0xcd, 0xe4, 0x08, 0x57, 0xe7, 0xf0, 0xee, 0xaa, 0x7f, + 0x4b, 0x3d, 0x3b, 0x77, 0xa6, 0xfe, 0x73, 0x79, 0xf9, 0xeb, 0xfa, 0x7f, 0xfe, 0x1d, 0xcb, 0x96, 0x27, 0xa3, 0xcf, 0xf6, + 0xd6, 0xd8, 0x4a, 0x8d, 0x77, 0x24, 0xb5, 0xd6, 0xe7, 0xe5, 0x76, 0x25, 0xbb, 0xee, 0x4d, 0x2f, 0xae, 0xca, 0xaf, 0xce, + 0xae, 0xfe, 0x7d, 0x47, 0xfd, 0x65, 0xc7, 0x5e, 0xfb, 0x2a, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x6e, 0xf3, 0x38, + 0xeb, 0x9e, 0x47, 0x15, 0x5d, 0xd5, 0xad, 0x85, 0x57, 0x68, 0x63, 0xd7, 0x0c, 0x70, 0xe9, 0x54, 0x69, 0x2e, 0xfd, 0x72, + 0xf4, 0x6a, 0xed, 0x26, 0x45, 0xb8, 0xbb, 0xfe, 0x35, 0xbc, 0x56, 0x5b, 0x7c, 0x45, 0x33, 0x9e, 0xb5, 0xfe, 0xf9, 0x14, + 0x97, 0x2b, 0xe0, 0x15, 0x92, 0x1c, 0x99, 0x9c, 0x9b, 0xfe, 0xff, 0x9a, 0xff, 0x07, 0xa2, 0xfe, 0x92, 0x5c, 0xea, 0xcf, + 0xca, 0xbf, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x29, 0x3f, 0x00 }; + +// Font characters rectangles data +static const Rectangle jungleFontRecs[95] = { + { 4, 4, 5 , 12 }, + { 17, 4, 2 , 7 }, + { 27, 4, 5 , 3 }, + { 40, 4, 5 , 5 }, + { 53, 4, 6 , 7 }, + { 67, 4, 7 , 7 }, + { 82, 4, 5 , 7 }, + { 95, 4, 3 , 3 }, + { 106, 4, 4 , 8 }, + { 118, 4, 4 , 8 }, + { 130, 4, 5 , 5 }, + { 143, 4, 5 , 5 }, + { 156, 4, 2 , 3 }, + { 166, 4, 5 , 1 }, + { 179, 4, 2 , 2 }, + { 189, 4, 7 , 7 }, + { 204, 4, 7 , 6 }, + { 219, 4, 6 , 6 }, + { 233, 4, 6 , 6 }, + { 4, 24, 6 , 6 }, + { 18, 24, 6 , 6 }, + { 32, 24, 6 , 6 }, + { 46, 24, 6 , 6 }, + { 60, 24, 6 , 6 }, + { 74, 24, 6 , 6 }, + { 88, 24, 6 , 6 }, + { 102, 24, 2 , 5 }, + { 112, 24, 2 , 6 }, + { 122, 24, 3 , 5 }, + { 133, 24, 5 , 3 }, + { 146, 24, 3 , 5 }, + { 157, 24, 6 , 7 }, + { 171, 24, 7 , 7 }, + { 186, 24, 6 , 7 }, + { 200, 24, 6 , 7 }, + { 214, 24, 6 , 7 }, + { 228, 24, 6 , 7 }, + { 4, 44, 6 , 7 }, + { 18, 44, 6 , 7 }, + { 32, 44, 6 , 7 }, + { 46, 44, 6 , 7 }, + { 60, 44, 6 , 7 }, + { 74, 44, 6 , 7 }, + { 88, 44, 6 , 7 }, + { 102, 44, 6 , 7 }, + { 116, 44, 7 , 7 }, + { 131, 44, 6 , 7 }, + { 145, 44, 6 , 7 }, + { 159, 44, 6 , 7 }, + { 173, 44, 7 , 8 }, + { 188, 44, 6 , 7 }, + { 202, 44, 6 , 7 }, + { 216, 44, 6 , 7 }, + { 230, 44, 6 , 7 }, + { 4, 64, 6 , 7 }, + { 18, 64, 7 , 7 }, + { 33, 64, 6 , 7 }, + { 47, 64, 6 , 7 }, + { 61, 64, 6 , 7 }, + { 75, 64, 4 , 8 }, + { 87, 64, 7 , 7 }, + { 102, 64, 4 , 8 }, + { 114, 64, 4 , 2 }, + { 126, 64, 6 , 1 }, + { 140, 64, 2 , 2 }, + { 150, 64, 6 , 5 }, + { 164, 64, 6 , 7 }, + { 178, 64, 6 , 5 }, + { 192, 64, 6 , 7 }, + { 206, 64, 6 , 5 }, + { 220, 64, 6 , 7 }, + { 234, 64, 6 , 7 }, + { 4, 84, 6 , 7 }, + { 18, 84, 6 , 7 }, + { 32, 84, 5 , 8 }, + { 45, 84, 6 , 7 }, + { 59, 84, 6 , 7 }, + { 73, 84, 7 , 5 }, + { 88, 84, 6 , 5 }, + { 102, 84, 6 , 5 }, + { 116, 84, 6 , 7 }, + { 130, 84, 6 , 7 }, + { 144, 84, 6 , 5 }, + { 158, 84, 6 , 5 }, + { 172, 84, 6 , 6 }, + { 186, 84, 6 , 5 }, + { 200, 84, 6 , 5 }, + { 214, 84, 7 , 5 }, + { 229, 84, 6 , 5 }, + { 4, 104, 6 , 7 }, + { 18, 104, 6 , 5 }, + { 32, 104, 4 , 8 }, + { 44, 104, 2 , 8 }, + { 54, 104, 4 , 8 }, + { 66, 104, 5 , 2 }, +}; + +// Font characters info data +// NOTE: No chars.image data provided +static const GlyphInfo jungleFontChars[95] = { + { 32, 0, 9, 5, { 0 }}, + { 33, 0, 2, 3, { 0 }}, + { 34, 0, 2, 6, { 0 }}, + { 35, 0, 3, 6, { 0 }}, + { 36, 0, 2, 7, { 0 }}, + { 37, 0, 2, 8, { 0 }}, + { 38, 0, 2, 6, { 0 }}, + { 39, 0, 2, 4, { 0 }}, + { 40, 0, 2, 5, { 0 }}, + { 41, 0, 2, 5, { 0 }}, + { 42, 0, 2, 6, { 0 }}, + { 43, 0, 3, 6, { 0 }}, + { 44, 0, 7, 3, { 0 }}, + { 45, 0, 5, 6, { 0 }}, + { 46, 0, 7, 3, { 0 }}, + { 47, 0, 2, 8, { 0 }}, + { 48, 0, 3, 8, { 0 }}, + { 49, 0, 3, 7, { 0 }}, + { 50, 0, 3, 7, { 0 }}, + { 51, 0, 3, 7, { 0 }}, + { 52, 0, 3, 7, { 0 }}, + { 53, 0, 3, 7, { 0 }}, + { 54, 0, 3, 7, { 0 }}, + { 55, 0, 3, 7, { 0 }}, + { 56, 0, 3, 7, { 0 }}, + { 57, 0, 3, 7, { 0 }}, + { 58, 0, 4, 3, { 0 }}, + { 59, 0, 4, 3, { 0 }}, + { 60, 0, 3, 4, { 0 }}, + { 61, 0, 4, 6, { 0 }}, + { 62, 0, 3, 4, { 0 }}, + { 63, 0, 2, 7, { 0 }}, + { 64, 0, 2, 8, { 0 }}, + { 65, 0, 2, 7, { 0 }}, + { 66, 0, 2, 7, { 0 }}, + { 67, 0, 2, 7, { 0 }}, + { 68, 0, 2, 7, { 0 }}, + { 69, 0, 2, 7, { 0 }}, + { 70, 0, 2, 7, { 0 }}, + { 71, 0, 2, 7, { 0 }}, + { 72, 0, 2, 7, { 0 }}, + { 73, 0, 2, 7, { 0 }}, + { 74, 0, 2, 7, { 0 }}, + { 75, 0, 2, 7, { 0 }}, + { 76, 0, 2, 7, { 0 }}, + { 77, 0, 2, 8, { 0 }}, + { 78, 0, 2, 7, { 0 }}, + { 79, 0, 2, 7, { 0 }}, + { 80, 0, 2, 7, { 0 }}, + { 81, 0, 2, 7, { 0 }}, + { 82, 0, 2, 7, { 0 }}, + { 83, 0, 2, 7, { 0 }}, + { 84, 0, 2, 7, { 0 }}, + { 85, 0, 2, 7, { 0 }}, + { 86, 0, 2, 7, { 0 }}, + { 87, 0, 2, 8, { 0 }}, + { 88, 0, 2, 7, { 0 }}, + { 89, 0, 2, 7, { 0 }}, + { 90, 0, 2, 7, { 0 }}, + { 91, 0, 2, 5, { 0 }}, + { 92, 0, 2, 8, { 0 }}, + { 93, 0, 2, 5, { 0 }}, + { 94, 0, -1, 5, { 0 }}, + { 95, 0, 10, 7, { 0 }}, + { 96, 0, -1, 3, { 0 }}, + { 97, 0, 4, 7, { 0 }}, + { 98, 0, 2, 7, { 0 }}, + { 99, 0, 4, 7, { 0 }}, + { 100, 0, 2, 7, { 0 }}, + { 101, 0, 4, 7, { 0 }}, + { 102, 0, 2, 7, { 0 }}, + { 103, 0, 4, 7, { 0 }}, + { 104, 0, 2, 7, { 0 }}, + { 105, 0, 2, 7, { 0 }}, + { 106, 0, 2, 6, { 0 }}, + { 107, 0, 2, 7, { 0 }}, + { 108, 0, 2, 7, { 0 }}, + { 109, 0, 4, 8, { 0 }}, + { 110, 0, 4, 7, { 0 }}, + { 111, 0, 4, 7, { 0 }}, + { 112, 0, 4, 7, { 0 }}, + { 113, 0, 4, 7, { 0 }}, + { 114, 0, 4, 7, { 0 }}, + { 115, 0, 4, 7, { 0 }}, + { 116, 0, 3, 7, { 0 }}, + { 117, 0, 4, 7, { 0 }}, + { 118, 0, 4, 7, { 0 }}, + { 119, 0, 4, 8, { 0 }}, + { 120, 0, 4, 7, { 0 }}, + { 121, 0, 4, 7, { 0 }}, + { 122, 0, 4, 7, { 0 }}, + { 123, 0, 2, 5, { 0 }}, + { 124, 0, 2, 3, { 0 }}, + { 125, 0, 2, 5, { 0 }}, + { 126, 0, -1, 6, { 0 }}, +}; + +// Style loading function: jungle +static void GuiLoadStyleJungle(void) +{ + // Load style properties provided + // NOTE: Default properties are propagated + for (int i = 0; i < JUNGLE_STYLE_PROPS_COUNT; i++) + { + GuiSetStyle(jungleStyleProps[i].controlId, jungleStyleProps[i].propertyId, jungleStyleProps[i].propertyValue); + } + + // Custom font loading + // NOTE: Compressed font image data (DEFLATE), it requires DecompressData() function + int jungleFontDataSize = 0; + unsigned char *data = DecompressData(jungleFontData, JUNGLE_COMPRESSED_DATA_SIZE, &jungleFontDataSize); + Image imFont = { data, 256, 256, 1, 2 }; + + Font font = { 0 }; + font.baseSize = 12; + font.glyphCount = 95; + + // Load texture from image + font.texture = LoadTextureFromImage(imFont); + UnloadImage(imFont); // Uncompressed data can be unloaded from memory + + // Copy char recs data from global fontRecs + // NOTE: Required to avoid issues if trying to free font + font.recs = (Rectangle *)malloc(font.glyphCount*sizeof(Rectangle)); + memcpy(font.recs, jungleFontRecs, font.glyphCount*sizeof(Rectangle)); + + // Copy font char info data from global fontChars + // NOTE: Required to avoid issues if trying to free font + font.glyphs = (GlyphInfo *)malloc(font.glyphCount*sizeof(GlyphInfo)); + memcpy(font.glyphs, jungleFontChars, font.glyphCount*sizeof(GlyphInfo)); + + GuiSetFont(font); + + // Setup a white rectangle on the font to be used on shapes drawing, + // this way we make sure all gui can be drawn on a single pass because no texture change is required + // NOTE: Setting up this rectangle is a manual process (for the moment) + Rectangle whiteChar = { 27, 4, 2, 2 }; + SetShapesTexture(font.texture, whiteChar); +} diff --git a/examples/style_selector/styles/style_lavanda.h b/examples/style_selector/styles/style_lavanda.h new file mode 100644 index 0000000..21f93a1 --- /dev/null +++ b/examples/style_selector/styles/style_lavanda.h @@ -0,0 +1,349 @@ +////////////////////////////////////////////////////////////////////////////////// +// // +// StyleAsCode exporter v1.2 - Style data exported as a values array // +// // +// USAGE: On init call: GuiLoadStyleLavanda(); // +// // +// more info and bugs-report: github.com/raysan5/raygui // +// feedback and support: ray[at]raylibtech.com // +// // +// Copyright (c) 2020-2022 raylib technologies (@raylibtech) // +// // +////////////////////////////////////////////////////////////////////////////////// + +#define LAVANDA_STYLE_PROPS_COUNT 15 + +// Custom style name: lavanda +static const GuiStyleProp lavandaStyleProps[LAVANDA_STYLE_PROPS_COUNT] = { + { 0, 0, 0xab9bd3ff }, // DEFAULT_BORDER_COLOR_NORMAL + { 0, 1, 0x3e4350ff }, // DEFAULT_BASE_COLOR_NORMAL + { 0, 2, 0xdadaf4ff }, // DEFAULT_TEXT_COLOR_NORMAL + { 0, 3, 0xee84a0ff }, // DEFAULT_BORDER_COLOR_FOCUSED + { 0, 4, 0xf4b7c7ff }, // DEFAULT_BASE_COLOR_FOCUSED + { 0, 5, 0xb7657bff }, // DEFAULT_TEXT_COLOR_FOCUSED + { 0, 6, 0xd5c8dbff }, // DEFAULT_BORDER_COLOR_PRESSED + { 0, 7, 0x966ec0ff }, // DEFAULT_BASE_COLOR_PRESSED + { 0, 8, 0xd7ccf7ff }, // DEFAULT_TEXT_COLOR_PRESSED + { 0, 9, 0x8fa2bdff }, // DEFAULT_BORDER_COLOR_DISABLED + { 0, 10, 0x6b798dff }, // DEFAULT_BASE_COLOR_DISABLED + { 0, 11, 0x8292a9ff }, // DEFAULT_TEXT_COLOR_DISABLED + { 0, 16, 0x00000010 }, // DEFAULT_TEXT_SIZE + { 0, 18, 0x84adb7ff }, // DEFAULT_LINE_COLOR + { 0, 19, 0x5b5b81ff }, // DEFAULT_BACKGROUND_COLOR +}; + +// WARNING: This style uses a custom font: (size: 16, spacing: 1) + +#define LAVANDA_COMPRESSED_DATA_SIZE 1317 + +// Font image pixels data compressed (DEFLATE) +// NOTE: Original pixel data simplified to GRAYSCALE +static unsigned char lavandaFontData[LAVANDA_COMPRESSED_DATA_SIZE] = { 0xed, + 0xdd, 0x4b, 0x96, 0xa3, 0x48, 0x0c, 0x05, 0x50, 0xf6, 0xbf, 0xe9, 0xd7, 0xa3, 0x3a, 0xdd, 0x7d, 0xaa, 0x0c, 0x21, 0x85, + 0xc0, 0x76, 0xd6, 0xcd, 0x3b, 0x4b, 0xff, 0x00, 0x11, 0x80, 0xcd, 0x13, 0xe4, 0x00, 0x00, 0xf8, 0x4d, 0xfe, 0xf8, 0x9f, + 0x9c, 0x3c, 0x37, 0xcb, 0xef, 0xf4, 0xeb, 0xff, 0xb9, 0x78, 0xc6, 0xff, 0x9f, 0xb5, 0xf6, 0xbe, 0x59, 0xfe, 0xfc, 0xce, + 0x23, 0xf9, 0xe3, 0xf4, 0x65, 0xe3, 0xf5, 0xaf, 0xde, 0xa1, 0xfe, 0xfc, 0x7f, 0xff, 0xbe, 0xa1, 0xfe, 0x59, 0x78, 0xe5, + 0xf9, 0xe3, 0xd9, 0x58, 0x27, 0xae, 0x96, 0x56, 0xca, 0x6b, 0xcc, 0xce, 0x52, 0x3d, 0x9b, 0xc6, 0xca, 0xf3, 0x27, 0xa6, + 0xb0, 0x5e, 0xff, 0x9c, 0x2e, 0xcb, 0xd7, 0xff, 0x3f, 0x5f, 0xa7, 0xee, 0xae, 0x7f, 0x67, 0x1c, 0xe5, 0xa6, 0xa5, 0x5a, + 0x1d, 0x6f, 0xd5, 0x39, 0x9d, 0x99, 0xd2, 0x4e, 0x95, 0x56, 0xd6, 0xee, 0x5c, 0xbc, 0x77, 0x06, 0xa6, 0xf9, 0xd5, 0xb4, + 0xdd, 0x3d, 0x8a, 0xd6, 0xd7, 0xd8, 0x8c, 0xcc, 0x51, 0x6e, 0x1c, 0xff, 0x53, 0x63, 0xf4, 0xcf, 0xaf, 0xbe, 0xda, 0x4b, + 0x64, 0xbc, 0xfe, 0x53, 0x6b, 0xff, 0x3b, 0xea, 0x9f, 0xdb, 0xa7, 0x3d, 0xcb, 0xcf, 0xbb, 0xda, 0x93, 0xe6, 0x72, 0x6a, + 0x73, 0x79, 0xe4, 0x96, 0x1b, 0xc6, 0xff, 0x27, 0x1c, 0x53, 0x7f, 0x7f, 0xfd, 0x8f, 0xc5, 0xad, 0xf8, 0xd1, 0x38, 0x0a, + 0xfc, 0x59, 0xf5, 0x3f, 0xaf, 0x70, 0xc6, 0xf6, 0xf2, 0x79, 0xcb, 0x7c, 0x75, 0xe6, 0xee, 0xbf, 0x8f, 0xa7, 0xf1, 0xea, + 0xbf, 0xb3, 0xfe, 0xd9, 0x18, 0x87, 0xcf, 0xef, 0x01, 0xf7, 0x8e, 0x49, 0x7e, 0xbd, 0x3a, 0x0f, 0xef, 0xff, 0x9f, 0xab, + 0x7f, 0xf5, 0xfb, 0xff, 0xd5, 0x77, 0xad, 0x6f, 0xf8, 0x25, 0xe9, 0x5d, 0x63, 0xec, 0x6f, 0x59, 0x0a, 0xea, 0xaf, 0xfe, + 0xd6, 0xb6, 0xcf, 0x3f, 0xf6, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0xeb, 0xcc, 0x44, 0x4e, 0x93, 0x5d, 0xd5, 0x44, + 0x6d, 0x8a, 0xd9, 0xc4, 0x5c, 0xa4, 0x3f, 0x76, 0x72, 0xf9, 0xb5, 0x6e, 0x80, 0xb4, 0xce, 0xd1, 0x1f, 0x5b, 0xe9, 0xb7, + 0xb4, 0xa6, 0x64, 0x32, 0xff, 0x9f, 0x91, 0xec, 0x69, 0x37, 0xe5, 0x96, 0xed, 0xf3, 0x63, 0xd5, 0x39, 0x4e, 0x23, 0xa9, + 0x7c, 0xbd, 0xf6, 0xf5, 0x3b, 0x23, 0x32, 0x94, 0xa8, 0x4d, 0xfb, 0xbc, 0x64, 0x46, 0x13, 0x86, 0x69, 0x7d, 0x4e, 0x6e, + 0x49, 0xd5, 0x64, 0x28, 0x87, 0xdf, 0x9b, 0xb7, 0xee, 0x5a, 0x95, 0xc6, 0x16, 0x70, 0xbe, 0xfe, 0x95, 0xed, 0x72, 0x7f, + 0xfa, 0x52, 0x3a, 0x6f, 0x9f, 0xdb, 0xc6, 0xff, 0xf5, 0x68, 0x4c, 0xb3, 0xc7, 0x21, 0xe5, 0x6d, 0x43, 0xca, 0xfd, 0x66, + 0xdd, 0xa4, 0x5d, 0x1a, 0x63, 0x3d, 0xe5, 0x8e, 0xb5, 0xab, 0x31, 0xb2, 0x3e, 0xe5, 0x19, 0x4a, 0x2b, 0x77, 0xfa, 0x44, + 0xd2, 0xe8, 0x24, 0xdb, 0x1d, 0xc9, 0xb9, 0x79, 0xfc, 0x5f, 0x1f, 0x33, 0xcc, 0x6c, 0x9d, 0x32, 0x32, 0xf5, 0x79, 0x5b, + 0x7a, 0x2c, 0xcd, 0x3d, 0xd8, 0x6e, 0x25, 0xf3, 0x48, 0xc6, 0x35, 0x83, 0x1d, 0x8b, 0xc7, 0x56, 0x0e, 0xfc, 0x73, 0x13, + 0xda, 0xaf, 0xb6, 0xff, 0x59, 0xcc, 0x9e, 0x7d, 0x5b, 0xfd, 0xbb, 0x3d, 0x7d, 0xdf, 0x5c, 0xff, 0x7a, 0x35, 0x56, 0xeb, + 0x5f, 0x3f, 0xe2, 0xc8, 0xc9, 0xde, 0x77, 0x3a, 0xe7, 0x98, 0x72, 0xe7, 0x7d, 0xe7, 0x3b, 0x63, 0x3e, 0xbe, 0xfa, 0xbb, + 0xdd, 0x56, 0x29, 0x1f, 0xdb, 0x9c, 0xf7, 0x46, 0xbf, 0x3e, 0x1a, 0x89, 0x84, 0xe9, 0x47, 0xfc, 0x46, 0x06, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3d, 0xe7, 0x36, 0x53, 0xce, 0xdc, 0x4e, 0xa6, 0x99, 0xd3, 0xce, 0x22, 0x9f, 0xe7, 0x24, + 0x8f, 0x66, 0x96, 0xbf, 0xfe, 0xba, 0x9c, 0x5e, 0x21, 0x37, 0x23, 0xb9, 0x9e, 0x6c, 0x67, 0x1e, 0xb2, 0x9d, 0xcc, 0xbd, + 0xca, 0xc0, 0x74, 0xea, 0x9f, 0xa5, 0xb4, 0x43, 0x27, 0xa3, 0xd4, 0xc9, 0x29, 0x65, 0xe3, 0xda, 0x9b, 0x69, 0x27, 0xbd, + 0xd6, 0x52, 0x67, 0xb9, 0x31, 0xf9, 0x37, 0x51, 0xff, 0x34, 0xd2, 0xe2, 0x59, 0x4a, 0x5d, 0x77, 0x33, 0x79, 0xdd, 0x2c, + 0x57, 0xef, 0x0a, 0x83, 0xd9, 0x4a, 0xfa, 0x5d, 0x57, 0x20, 0x9b, 0xa3, 0x3f, 0xed, 0x8e, 0x88, 0xb5, 0xbc, 0x78, 0xb7, + 0x5b, 0x20, 0x0b, 0xa9, 0xff, 0x8c, 0x65, 0xf2, 0xf6, 0xb2, 0x7c, 0x79, 0x43, 0xfd, 0xe7, 0xba, 0x67, 0x2a, 0x57, 0x9a, + 0xad, 0xef, 0x2d, 0xf2, 0xe3, 0xeb, 0x7f, 0xd7, 0xf6, 0x7f, 0x25, 0x9f, 0x9b, 0x5b, 0xb2, 0xad, 0x95, 0xf1, 0x9f, 0xa5, + 0x34, 0xeb, 0x6c, 0xfd, 0x8f, 0xa5, 0x24, 0x6c, 0x4e, 0xf3, 0xfc, 0xf5, 0xd7, 0x65, 0x34, 0xdf, 0x9c, 0x66, 0x06, 0xfb, + 0xba, 0x2b, 0xe1, 0xf9, 0xfa, 0x1f, 0x37, 0x74, 0x33, 0x66, 0xe4, 0xe8, 0x68, 0x6e, 0xff, 0x9f, 0x46, 0x15, 0x3f, 0xb9, + 0xfe, 0x53, 0xc7, 0xff, 0x69, 0xcf, 0xc5, 0x5a, 0x0f, 0xec, 0xd9, 0x27, 0xce, 0xf5, 0x5d, 0x75, 0xe7, 0x23, 0x1b, 0x09, + 0xf2, 0x34, 0xfa, 0x03, 0xa6, 0x3a, 0xa7, 0xd7, 0xfa, 0xbf, 0xb3, 0xdc, 0x85, 0x79, 0xf5, 0x3e, 0x29, 0xa7, 0xd9, 0xbb, + 0xf5, 0xef, 0xf5, 0x28, 0xac, 0xce, 0xc7, 0xd1, 0xc8, 0xf9, 0xf7, 0x7e, 0x7f, 0x59, 0x79, 0xcf, 0xdc, 0xdc, 0x0d, 0xf1, + 0x99, 0x57, 0x4f, 0xcf, 0x6d, 0x7d, 0x0f, 0x9f, 0x94, 0xf4, 0x7f, 0x67, 0xfd, 0x3f, 0xb1, 0x03, 0x4b, 0xb7, 0x07, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xe7, 0x7f, 0x5e, 0x27, 0x03, 0x2b, 0xd7, 0xdc, 0xef, 0xdf, 0x5f, 0xa0, 0xf6, 0x19, + 0xd3, 0xe7, 0xe4, 0x6b, 0x29, 0x8a, 0x34, 0xce, 0x69, 0xaf, 0x7e, 0xe6, 0xfe, 0xd9, 0xd2, 0xfd, 0xfc, 0xc9, 0xde, 0x14, + 0x55, 0x93, 0xf6, 0xc7, 0x58, 0xfa, 0xb2, 0x97, 0xc9, 0xa9, 0x65, 0xca, 0x52, 0xba, 0x66, 0x79, 0xde, 0x70, 0xb6, 0xfc, + 0xe7, 0xd4, 0xbf, 0x9a, 0xbe, 0x4a, 0x2b, 0xb1, 0x56, 0xad, 0x73, 0xe5, 0x93, 0x33, 0xb2, 0x5c, 0xab, 0x99, 0xe0, 0x5e, + 0xa6, 0x35, 0x03, 0x15, 0x38, 0x6e, 0xba, 0x23, 0xc8, 0xfa, 0x3e, 0x26, 0xad, 0xed, 0x70, 0x4a, 0x5b, 0xff, 0xea, 0xd6, + 0x62, 0xa2, 0xfe, 0xb9, 0x35, 0xff, 0x77, 0x6f, 0xfd, 0x9f, 0xca, 0xb0, 0xd5, 0xfb, 0x5b, 0xfa, 0x6b, 0xcc, 0xea, 0xf6, + 0x3f, 0x23, 0xe3, 0x3f, 0x83, 0xf9, 0xdf, 0x6c, 0xde, 0x87, 0xe9, 0x1b, 0xeb, 0xbf, 0x73, 0x37, 0x97, 0x7b, 0xb6, 0xdc, + 0xb5, 0x7d, 0x70, 0xc6, 0xf6, 0xff, 0x19, 0x99, 0xdb, 0xe3, 0x8d, 0x57, 0x7e, 0x4f, 0xeb, 0x2e, 0x4b, 0x47, 0xb1, 0x23, + 0xae, 0x36, 0x52, 0xea, 0x77, 0x0b, 0xc9, 0x4d, 0x47, 0x4f, 0xd9, 0xda, 0x43, 0x7f, 0x43, 0xfd, 0x3b, 0x47, 0x06, 0x47, + 0xfb, 0x9b, 0x41, 0xe5, 0x28, 0x79, 0xa6, 0xe3, 0x32, 0x37, 0xd6, 0x3f, 0x23, 0x9d, 0x81, 0x9f, 0x5b, 0xff, 0x27, 0xd6, + 0x9a, 0x99, 0x23, 0xdf, 0xce, 0x77, 0xd1, 0x89, 0x3b, 0xea, 0xa4, 0xf5, 0x6d, 0xf2, 0xb8, 0xed, 0xd7, 0x8a, 0xef, 0xcb, + 0xa3, 0x67, 0xf4, 0x91, 0xf9, 0xe5, 0x97, 0xc7, 0x96, 0xcc, 0xcf, 0xa9, 0xff, 0x33, 0x7d, 0x1d, 0xd3, 0x7b, 0xa2, 0x77, + 0xef, 0x53, 0x33, 0xb2, 0x07, 0x46, 0x97, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x3b, 0x5f, 0x97, 0xad, 0x6c, 0x6c, + 0x2f, 0x8f, 0x34, 0x91, 0xcd, 0xe9, 0xa4, 0xbc, 0x8e, 0xf6, 0xd5, 0xf5, 0xbb, 0xb9, 0xc2, 0xf3, 0xf3, 0x63, 0x59, 0x3c, + 0x67, 0x56, 0xcf, 0x3a, 0x55, 0xd3, 0x23, 0xe7, 0x49, 0xd4, 0x94, 0x92, 0xa7, 0xb9, 0xbc, 0xce, 0x7b, 0xe5, 0x1a, 0xbd, + 0x6b, 0xd7, 0x61, 0xad, 0x64, 0xf3, 0x7b, 0x57, 0xd7, 0x4f, 0x2b, 0x25, 0x38, 0x99, 0x13, 0xdc, 0xc9, 0x7d, 0x5c, 0xad, + 0x5f, 0xb9, 0xe8, 0x5c, 0xc8, 0x48, 0xaa, 0xfd, 0x3a, 0x4f, 0x5d, 0xef, 0x0e, 0x9a, 0x4c, 0x5b, 0xed, 0xdc, 0x0d, 0x22, + 0x83, 0x3d, 0x0a, 0xf7, 0x65, 0x26, 0x26, 0xb7, 0xff, 0xfb, 0xcb, 0xb9, 0x92, 0x4b, 0xda, 0xdf, 0x52, 0xef, 0xd5, 0xff, + 0xfa, 0xde, 0x25, 0xf7, 0xf5, 0x28, 0x3d, 0x55, 0xff, 0xce, 0x52, 0xbb, 0xbf, 0xfe, 0xb5, 0x94, 0x74, 0x6f, 0x0c, 0x5f, + 0x5f, 0x5d, 0x3b, 0xc3, 0x69, 0xc7, 0x9f, 0x5d, 0xff, 0x6c, 0xec, 0x81, 0xf7, 0x32, 0xf8, 0x57, 0x5d, 0x0c, 0x4f, 0xd6, + 0x7f, 0xae, 0x47, 0x35, 0xb7, 0xf5, 0x0a, 0xf6, 0xeb, 0x7f, 0x14, 0xf7, 0xbf, 0xc7, 0xe2, 0x1d, 0x1c, 0x26, 0xba, 0x86, + 0xfb, 0xdb, 0xe3, 0xd9, 0x63, 0xbc, 0xfa, 0xb4, 0x3f, 0x3d, 0xfe, 0xe7, 0x33, 0xaa, 0x79, 0x2c, 0x83, 0x7a, 0x47, 0xcf, + 0x70, 0xef, 0x1a, 0xf2, 0x53, 0xd3, 0xfe, 0xde, 0xfa, 0x3f, 0x93, 0x50, 0xce, 0x1b, 0xeb, 0x3f, 0xff, 0x59, 0x69, 0xf7, + 0x15, 0xfc, 0xdc, 0xcc, 0x74, 0x3e, 0xa8, 0x6e, 0xdf, 0xb5, 0x8c, 0x64, 0xe6, 0xd5, 0x5f, 0xfd, 0xff, 0xde, 0x3c, 0x7f, + 0xa4, 0xfe, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xed, 0x1f }; + +// Font characters rectangles data +static const Rectangle lavandaFontRecs[95] = { + { 4, 4, 5 , 16 }, + { 17, 4, 1 , 9 }, + { 26, 4, 3 , 3 }, + { 37, 4, 7 , 8 }, + { 52, 4, 5 , 11 }, + { 65, 4, 10 , 8 }, + { 83, 4, 7 , 9 }, + { 98, 4, 1 , 3 }, + { 107, 4, 3 , 12 }, + { 118, 4, 3 , 12 }, + { 129, 4, 5 , 4 }, + { 142, 4, 5 , 5 }, + { 155, 4, 2 , 3 }, + { 165, 4, 3 , 1 }, + { 176, 4, 1 , 1 }, + { 185, 4, 4 , 12 }, + { 197, 4, 5 , 9 }, + { 210, 4, 3 , 9 }, + { 221, 4, 5 , 9 }, + { 234, 4, 5 , 9 }, + { 4, 28, 5 , 9 }, + { 17, 28, 5 , 9 }, + { 30, 28, 5 , 9 }, + { 43, 28, 5 , 9 }, + { 56, 28, 5 , 9 }, + { 69, 28, 5 , 9 }, + { 82, 28, 1 , 4 }, + { 91, 28, 2 , 6 }, + { 101, 28, 4 , 5 }, + { 113, 28, 4 , 3 }, + { 125, 28, 4 , 5 }, + { 137, 28, 5 , 9 }, + { 150, 28, 7 , 10 }, + { 165, 28, 7 , 9 }, + { 180, 28, 6 , 9 }, + { 194, 28, 5 , 9 }, + { 207, 28, 6 , 9 }, + { 221, 28, 5 , 9 }, + { 234, 28, 5 , 9 }, + { 4, 52, 6 , 9 }, + { 18, 52, 5 , 10 }, + { 31, 52, 1 , 9 }, + { 40, 52, 6 , 9 }, + { 54, 52, 6 , 9 }, + { 68, 52, 5 , 9 }, + { 81, 52, 8 , 11 }, + { 97, 52, 6 , 10 }, + { 111, 52, 7 , 9 }, + { 126, 52, 5 , 9 }, + { 139, 52, 7 , 11 }, + { 154, 52, 5 , 9 }, + { 167, 52, 6 , 9 }, + { 181, 52, 7 , 9 }, + { 196, 52, 6 , 9 }, + { 210, 52, 6 , 10 }, + { 224, 52, 9 , 10 }, + { 4, 76, 6 , 11 }, + { 18, 76, 5 , 10 }, + { 31, 76, 5 , 9 }, + { 44, 76, 3 , 12 }, + { 55, 76, 4 , 12 }, + { 67, 76, 3 , 12 }, + { 78, 76, 5 , 4 }, + { 91, 76, 6 , 1 }, + { 105, 76, 3 , 3 }, + { 116, 76, 6 , 7 }, + { 130, 76, 5 , 9 }, + { 143, 76, 4 , 7 }, + { 155, 76, 5 , 10 }, + { 168, 76, 4 , 7 }, + { 180, 76, 3 , 10 }, + { 191, 76, 4 , 11 }, + { 203, 76, 5 , 11 }, + { 216, 76, 1 , 9 }, + { 225, 76, 5 , 12 }, + { 238, 76, 5 , 9 }, + { 4, 100, 1 , 9 }, + { 13, 100, 8 , 9 }, + { 29, 100, 5 , 9 }, + { 42, 100, 4 , 7 }, + { 54, 100, 5 , 10 }, + { 67, 100, 5 , 10 }, + { 80, 100, 5 , 7 }, + { 93, 100, 5 , 7 }, + { 106, 100, 3 , 9 }, + { 117, 100, 5 , 7 }, + { 130, 100, 5 , 8 }, + { 143, 100, 9 , 8 }, + { 160, 100, 5 , 9 }, + { 173, 100, 6 , 9 }, + { 187, 100, 4 , 7 }, + { 199, 100, 5 , 12 }, + { 212, 100, 1 , 12 }, + { 221, 100, 5 , 12 }, + { 234, 100, 6 , 2 }, +}; + +// Font characters info data +// NOTE: No chars.image data provided +static const GlyphInfo lavandaFontChars[95] = { + { 32, 0, 12, 5, { 0 }}, + { 33, 0, 3, 2, { 0 }}, + { 34, 0, 3, 4, { 0 }}, + { 35, 0, 3, 8, { 0 }}, + { 36, 0, 2, 6, { 0 }}, + { 37, 0, 4, 11, { 0 }}, + { 38, 0, 3, 8, { 0 }}, + { 39, 0, 3, 2, { 0 }}, + { 40, 0, 2, 4, { 0 }}, + { 41, 0, 2, 4, { 0 }}, + { 42, 0, 3, 6, { 0 }}, + { 43, 0, 5, 6, { 0 }}, + { 44, 0, 10, 3, { 0 }}, + { 45, 0, 7, 4, { 0 }}, + { 46, 0, 11, 2, { 0 }}, + { 47, 0, 2, 5, { 0 }}, + { 48, 0, 3, 6, { 0 }}, + { 49, 0, 3, 4, { 0 }}, + { 50, 0, 3, 6, { 0 }}, + { 51, 0, 3, 6, { 0 }}, + { 52, 0, 3, 6, { 0 }}, + { 53, 0, 3, 6, { 0 }}, + { 54, 0, 3, 6, { 0 }}, + { 55, 0, 3, 6, { 0 }}, + { 56, 0, 3, 6, { 0 }}, + { 57, 0, 3, 6, { 0 }}, + { 58, 0, 7, 2, { 0 }}, + { 59, 0, 7, 3, { 0 }}, + { 60, 0, 5, 5, { 0 }}, + { 61, 0, 6, 5, { 0 }}, + { 62, 0, 5, 5, { 0 }}, + { 63, 0, 3, 6, { 0 }}, + { 64, 0, 4, 8, { 0 }}, + { 65, 0, 3, 8, { 0 }}, + { 66, 0, 3, 7, { 0 }}, + { 67, 0, 3, 6, { 0 }}, + { 68, 0, 3, 7, { 0 }}, + { 69, 0, 3, 6, { 0 }}, + { 70, 0, 3, 6, { 0 }}, + { 71, 0, 3, 7, { 0 }}, + { 72, 0, 2, 6, { 0 }}, + { 73, 0, 3, 2, { 0 }}, + { 74, 0, 3, 7, { 0 }}, + { 75, 0, 3, 7, { 0 }}, + { 76, 0, 3, 6, { 0 }}, + { 77, 0, 3, 9, { 0 }}, + { 78, 0, 2, 7, { 0 }}, + { 79, 0, 3, 8, { 0 }}, + { 80, 0, 3, 6, { 0 }}, + { 81, 0, 3, 8, { 0 }}, + { 82, 0, 3, 6, { 0 }}, + { 83, 0, 3, 7, { 0 }}, + { 84, 0, 3, 8, { 0 }}, + { 85, 0, 3, 7, { 0 }}, + { 86, 0, 2, 7, { 0 }}, + { 87, 0, 2, 10, { 0 }}, + { 88, 0, 3, 7, { 0 }}, + { 89, 0, 3, 6, { 0 }}, + { 90, 0, 3, 6, { 0 }}, + { 91, 0, 2, 4, { 0 }}, + { 92, 0, 2, 5, { 0 }}, + { 93, 0, 2, 4, { 0 }}, + { 94, 0, 3, 6, { 0 }}, + { 95, 0, 13, 7, { 0 }}, + { 96, 0, 3, 4, { 0 }}, + { 97, 0, 5, 7, { 0 }}, + { 98, 0, 3, 6, { 0 }}, + { 99, 0, 5, 5, { 0 }}, + { 100, 0, 2, 6, { 0 }}, + { 101, 0, 5, 5, { 0 }}, + { 102, 0, 2, 4, { 0 }}, + { 103, 0, 4, 5, { 0 }}, + { 104, 0, 3, 6, { 0 }}, + { 105, 0, 3, 2, { 0 }}, + { 106, -1, 3, 5, { 0 }}, + { 107, 0, 3, 6, { 0 }}, + { 108, 0, 3, 2, { 0 }}, + { 109, 0, 5, 9, { 0 }}, + { 110, 0, 5, 6, { 0 }}, + { 111, 0, 5, 5, { 0 }}, + { 112, 0, 5, 6, { 0 }}, + { 113, 0, 5, 6, { 0 }}, + { 114, 0, 5, 6, { 0 }}, + { 115, 0, 5, 6, { 0 }}, + { 116, 0, 3, 4, { 0 }}, + { 117, 0, 5, 6, { 0 }}, + { 118, 0, 4, 6, { 0 }}, + { 119, 0, 4, 10, { 0 }}, + { 120, 0, 5, 6, { 0 }}, + { 121, -1, 5, 6, { 0 }}, + { 122, 0, 5, 5, { 0 }}, + { 123, 0, 2, 6, { 0 }}, + { 124, 0, 2, 2, { 0 }}, + { 125, 0, 2, 6, { 0 }}, + { 126, 0, 7, 7, { 0 }}, +}; + +// Style loading function: lavanda +static void GuiLoadStyleLavanda(void) +{ + // Load style properties provided + // NOTE: Default properties are propagated + for (int i = 0; i < LAVANDA_STYLE_PROPS_COUNT; i++) + { + GuiSetStyle(lavandaStyleProps[i].controlId, lavandaStyleProps[i].propertyId, lavandaStyleProps[i].propertyValue); + } + + // Custom font loading + // NOTE: Compressed font image data (DEFLATE), it requires DecompressData() function + int lavandaFontDataSize = 0; + unsigned char *data = DecompressData(lavandaFontData, LAVANDA_COMPRESSED_DATA_SIZE, &lavandaFontDataSize); + Image imFont = { data, 256, 256, 1, 2 }; + + Font font = { 0 }; + font.baseSize = 16; + font.glyphCount = 95; + + // Load texture from image + font.texture = LoadTextureFromImage(imFont); + UnloadImage(imFont); // Uncompressed data can be unloaded from memory + + // Copy char recs data from global fontRecs + // NOTE: Required to avoid issues if trying to free font + font.recs = (Rectangle *)malloc(font.glyphCount*sizeof(Rectangle)); + memcpy(font.recs, lavandaFontRecs, font.glyphCount*sizeof(Rectangle)); + + // Copy font char info data from global fontChars + // NOTE: Required to avoid issues if trying to free font + font.glyphs = (GlyphInfo *)malloc(font.glyphCount*sizeof(GlyphInfo)); + memcpy(font.glyphs, lavandaFontChars, font.glyphCount*sizeof(GlyphInfo)); + + GuiSetFont(font); + + // Setup a white rectangle on the font to be used on shapes drawing, + // this way we make sure all gui can be drawn on a single pass because no texture change is required + // NOTE: Setting up this rectangle is a manual process (for the moment) + Rectangle whiteChar = { 130, 5, 2, 2 }; + SetShapesTexture(font.texture, whiteChar); +} diff --git a/examples/style_selector/styles/style_terminal.h b/examples/style_selector/styles/style_terminal.h new file mode 100644 index 0000000..20877e4 --- /dev/null +++ b/examples/style_selector/styles/style_terminal.h @@ -0,0 +1,333 @@ +////////////////////////////////////////////////////////////////////////////////// +// // +// StyleAsCode exporter v1.2 - Style data exported as a values array // +// // +// USAGE: On init call: GuiLoadStyleTerminal(); // +// // +// more info and bugs-report: github.com/raysan5/raygui // +// feedback and support: ray[at]raylibtech.com // +// // +// Copyright (c) 2020-2022 raylib technologies (@raylibtech) // +// // +////////////////////////////////////////////////////////////////////////////////// + +#define TERMINAL_STYLE_PROPS_COUNT 16 + +// Custom style name: terminal +static const GuiStyleProp terminalStyleProps[TERMINAL_STYLE_PROPS_COUNT] = { + { 0, 0, 0x1c8d00ff }, // DEFAULT_BORDER_COLOR_NORMAL + { 0, 1, 0x161313ff }, // DEFAULT_BASE_COLOR_NORMAL + { 0, 2, 0x38f620ff }, // DEFAULT_TEXT_COLOR_NORMAL + { 0, 3, 0xc3fbc6ff }, // DEFAULT_BORDER_COLOR_FOCUSED + { 0, 4, 0x43bf2eff }, // DEFAULT_BASE_COLOR_FOCUSED + { 0, 5, 0xdcfadcff }, // DEFAULT_TEXT_COLOR_FOCUSED + { 0, 6, 0x1f5b19ff }, // DEFAULT_BORDER_COLOR_PRESSED + { 0, 7, 0x43ff28ff }, // DEFAULT_BASE_COLOR_PRESSED + { 0, 8, 0x1e6f15ff }, // DEFAULT_TEXT_COLOR_PRESSED + { 0, 9, 0x223b22ff }, // DEFAULT_BORDER_COLOR_DISABLED + { 0, 10, 0x182c18ff }, // DEFAULT_BASE_COLOR_DISABLED + { 0, 11, 0x244125ff }, // DEFAULT_TEXT_COLOR_DISABLED + { 0, 16, 0x00000010 }, // DEFAULT_TEXT_SIZE + { 0, 17, 0x00000000 }, // DEFAULT_TEXT_SPACING + { 0, 18, 0xe6fce3ff }, // DEFAULT_LINE_COLOR + { 0, 19, 0x0c1505ff }, // DEFAULT_BACKGROUND_COLOR +}; + +// WARNING: This style uses a custom font: (size: 16, spacing: 0) + +#define TERMINAL_COMPRESSED_DATA_SIZE 964 + +// Font image pixels data compressed (DEFLATE) +// NOTE: Original pixel data simplified to GRAYSCALE +static unsigned char terminalFontData[TERMINAL_COMPRESSED_DATA_SIZE] = { 0xed, + 0xdd, 0x41, 0xb6, 0x9b, 0x30, 0x0c, 0x05, 0x50, 0xf6, 0xbf, 0x69, 0x75, 0xd0, 0xd3, 0x41, 0x7b, 0x9a, 0x0f, 0x92, 0x65, + 0xc7, 0xc0, 0xed, 0x9d, 0xa5, 0x09, 0x9f, 0xf0, 0x02, 0x38, 0xb6, 0xec, 0xc4, 0x01, 0x00, 0xf0, 0x8f, 0xf8, 0xef, 0x23, + 0xf1, 0xf1, 0x99, 0x71, 0x79, 0x3b, 0xbf, 0x1f, 0x8d, 0x8f, 0x7f, 0xe5, 0xcf, 0xbf, 0x2b, 0x5b, 0xba, 0xfe, 0xac, 0x48, + 0xed, 0xdd, 0xd8, 0x5e, 0xd5, 0xb6, 0x93, 0x7d, 0xf6, 0xcf, 0xfb, 0x13, 0x1b, 0xe4, 0x7f, 0xfe, 0x6e, 0x33, 0xc7, 0x33, + 0xca, 0xe9, 0xe5, 0x3f, 0x9d, 0x33, 0xcf, 0xa1, 0xec, 0x3e, 0xd6, 0x8e, 0xc9, 0x1e, 0xf9, 0x67, 0xff, 0x46, 0x6e, 0xbf, + 0x63, 0x68, 0xcf, 0x6b, 0xe7, 0xf4, 0xd8, 0xde, 0xdd, 0x39, 0xff, 0xe3, 0xe3, 0x95, 0xbc, 0x7a, 0x1c, 0x57, 0xe5, 0x3f, + 0xfe, 0x2e, 0xe5, 0x7f, 0xf6, 0xcc, 0x7c, 0x96, 0x3f, 0xa7, 0x17, 0x37, 0xcf, 0x3f, 0xdb, 0xee, 0x79, 0x66, 0xfe, 0x9f, + 0xae, 0x0c, 0x3f, 0xdf, 0x93, 0x3f, 0xbf, 0x66, 0xe5, 0xdd, 0x7b, 0x4e, 0xfe, 0x67, 0xf7, 0xd1, 0xeb, 0xc7, 0x22, 0xdb, + 0x32, 0x5c, 0x9f, 0xff, 0x48, 0x8b, 0xec, 0xde, 0xf9, 0xc7, 0xc9, 0xb1, 0x8a, 0x81, 0xf6, 0xed, 0xe8, 0x35, 0x43, 0xfe, + 0xdf, 0xce, 0xff, 0xb8, 0x41, 0xfe, 0x47, 0x43, 0xfb, 0xaf, 0xf2, 0xce, 0x9e, 0x90, 0x7f, 0xed, 0xdd, 0xdd, 0x33, 0xff, + 0xea, 0xf7, 0xff, 0xcf, 0x7d, 0x1e, 0xf2, 0x7f, 0xd2, 0xf5, 0x3f, 0x4e, 0xae, 0x1d, 0x23, 0xed, 0x97, 0x3d, 0xf3, 0x8f, + 0x4b, 0x57, 0xcb, 0xf1, 0xde, 0xc2, 0xec, 0x35, 0xf7, 0x0d, 0x7d, 0xd4, 0xbb, 0xe7, 0xcf, 0x8a, 0x51, 0x0a, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xd0, 0x83, 0x5e, 0xa9, 0x31, 0xef, 0xfd, 0x9f, 0x5c, 0xed, 0x5c, 0xbd, 0x9e, 0xfe, 0xea, 0x1e, 0xc6, + 0xf2, 0xa3, 0x32, 0x3b, 0x97, 0x39, 0x23, 0xc8, 0x99, 0xd1, 0xfb, 0xd1, 0xba, 0xc4, 0x98, 0x5e, 0x81, 0x1b, 0xd3, 0xde, + 0x61, 0xa5, 0x1e, 0x20, 0x16, 0x8d, 0xf9, 0xdf, 0x23, 0xff, 0x28, 0x8c, 0xa7, 0x77, 0xcc, 0x26, 0x91, 0xff, 0xd3, 0xce, + 0xff, 0xb3, 0x7d, 0xff, 0xfb, 0x13, 0x25, 0xff, 0x5d, 0xf2, 0x3f, 0xd2, 0xf7, 0xb5, 0x18, 0xaa, 0x1c, 0x78, 0x4f, 0xfe, + 0xf9, 0x16, 0xc8, 0x51, 0x9c, 0xf1, 0xd7, 0x51, 0x97, 0x3e, 0x7f, 0x6e, 0xce, 0x59, 0xfe, 0x95, 0xb6, 0x5c, 0x25, 0xff, + 0xb3, 0x5c, 0x72, 0xd5, 0xe5, 0xbd, 0x73, 0x15, 0xeb, 0xb3, 0x77, 0xf6, 0xad, 0xce, 0x7e, 0xce, 0xf5, 0xff, 0x5e, 0xf9, + 0xaf, 0xaf, 0xe1, 0x8a, 0x0b, 0x75, 0xac, 0xf2, 0xff, 0xde, 0xf9, 0x1f, 0x5f, 0xbc, 0x2a, 0xc8, 0x5f, 0xfe, 0x6f, 0xca, + 0xbf, 0xda, 0x62, 0x8b, 0xd6, 0xad, 0xed, 0x78, 0xff, 0xcf, 0xae, 0xaf, 0xb1, 0xae, 0xff, 0xef, 0x28, 0xf6, 0x86, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x86, 0xfa, 0xff, 0x7c, 0x15, 0x7e, 0xd7, 0xd8, 0x67, 0x6c, 0x31, 0xfb, 0x60, 0xc6, + 0x5c, 0x86, 0xea, 0x11, 0xea, 0xda, 0x62, 0x7e, 0x0d, 0xb5, 0x9e, 0x95, 0xf8, 0xf3, 0x5b, 0x99, 0x31, 0xce, 0x3e, 0x7b, + 0xd4, 0xbe, 0x52, 0xff, 0xb0, 0x32, 0xff, 0x4a, 0xad, 0x85, 0xfc, 0xe5, 0x2f, 0x7f, 0xf9, 0xcb, 0x7f, 0xaf, 0xfc, 0xcf, + 0xd7, 0x8b, 0x8f, 0xa1, 0x2a, 0xba, 0x5a, 0x9d, 0x51, 0x67, 0xed, 0xfb, 0x8a, 0x76, 0xcf, 0x48, 0x9d, 0x7d, 0x7c, 0x39, + 0xff, 0xb3, 0xd9, 0x6f, 0x63, 0x35, 0x94, 0xdf, 0x3e, 0xff, 0x77, 0x99, 0x67, 0x17, 0xc5, 0x33, 0xbd, 0x6b, 0xaf, 0x23, + 0x7d, 0xfe, 0x8f, 0x9f, 0xfb, 0xf2, 0xdf, 0x3f, 0xff, 0x91, 0x2a, 0x6c, 0xf9, 0xef, 0x93, 0xff, 0x59, 0xc2, 0xf2, 0x7f, + 0x7a, 0xfe, 0x9f, 0x7f, 0x87, 0xee, 0x2e, 0xf9, 0x77, 0x57, 0xc5, 0x57, 0xf3, 0xef, 0xac, 0x8c, 0xaf, 0xf6, 0xa2, 0x45, + 0x71, 0x3d, 0x82, 0x48, 0xf7, 0x83, 0x56, 0xf2, 0x37, 0x0f, 0x00, 0xf6, 0x9b, 0x79, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xab, 0x7a, 0xc5, 0x73, 0x95, 0x6f, 0x7d, 0xeb, 0x81, 0x1d, 0x93, 0x47, 0xf6, 0x6a, 0xe3, 0x98, 0xe3, 0xbf, 0x5e, 0x70, + 0xa4, 0x46, 0x54, 0x2b, 0x7b, 0xdd, 0xb9, 0xbe, 0x5a, 0xa4, 0x47, 0x4a, 0xb2, 0x35, 0x4a, 0xf9, 0xf1, 0x98, 0x9e, 0xd5, + 0xf0, 0x3a, 0xab, 0x15, 0xaa, 0x55, 0xa2, 0xfd, 0xc7, 0x20, 0xca, 0x75, 0x0c, 0x47, 0x53, 0x05, 0xc1, 0x8c, 0xb5, 0xbd, + 0xe5, 0x2f, 0xff, 0xae, 0x5f, 0x8f, 0x99, 0x51, 0x0d, 0xdc, 0x53, 0x8d, 0x12, 0x83, 0xd5, 0x37, 0xeb, 0xf2, 0xff, 0xce, + 0x0a, 0xde, 0xeb, 0x6a, 0xbe, 0xb2, 0x9f, 0xa6, 0x68, 0x4c, 0x50, 0xfe, 0xdf, 0xcf, 0xbf, 0x7a, 0x34, 0xde, 0x93, 0x7f, + 0x47, 0x6d, 0xf9, 0x93, 0xf2, 0x8f, 0x86, 0x99, 0xcf, 0x63, 0xf3, 0x66, 0xde, 0x90, 0xff, 0x8c, 0xfb, 0x6f, 0x4f, 0x6b, + 0xe2, 0x7d, 0xe7, 0x7f, 0x47, 0x75, 0xf1, 0xfc, 0x2b, 0xc3, 0x9c, 0xd7, 0xec, 0x98, 0xff, 0xfa, 0xaa, 0x48, 0xf9, 0xcf, + 0xbf, 0xfe, 0xef, 0x9c, 0x7f, 0xa5, 0x77, 0x68, 0xf5, 0x9d, 0xa1, 0xfb, 0x35, 0x33, 0xd7, 0x4f, 0x91, 0xbf, 0x0a, 0xf4, + 0x3b, 0xf4, 0xff, 0x77, 0x3e, 0x1f, 0x67, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x8d, 0xac, 0x75, 0xfe, 0x9e, 0x75, + 0xb6, 0xe2, 0x62, 0xe5, 0x3a, 0x8a, 0xb5, 0x15, 0xc0, 0xe2, 0x72, 0x7d, 0xcf, 0xde, 0xe3, 0x01, 0x6b, 0xd6, 0x4c, 0xae, + 0xae, 0xae, 0xf7, 0xdd, 0xfc, 0xb3, 0xa3, 0xa0, 0xd7, 0x1f, 0xdb, 0xef, 0xb7, 0xf0, 0x9f, 0x9e, 0x7f, 0xf7, 0x3a, 0xda, + 0xdd, 0x9f, 0x89, 0xa7, 0xe7, 0xff, 0xf3, 0x9d, 0x61, 0x45, 0xfe, 0xf5, 0x35, 0x3b, 0x8f, 0x87, 0x64, 0xfd, 0xbd, 0xfc, + 0xb3, 0x33, 0x7b, 0x76, 0x39, 0xff, 0xe7, 0xdc, 0x13, 0xe4, 0x7f, 0x97, 0xf6, 0xdf, 0x21, 0xff, 0xcd, 0xf2, 0xef, 0x5f, + 0x47, 0xbb, 0x3a, 0xb7, 0xec, 0x7a, 0x5b, 0xef, 0x4d, 0xdf, 0xff, 0x8e, 0x86, 0x79, 0xe0, 0xe7, 0x6b, 0x2f, 0x77, 0xaf, + 0xa3, 0x5c, 0xf9, 0xfe, 0xf7, 0xf4, 0x6a, 0xc9, 0x58, 0x52, 0xcf, 0xb6, 0xcf, 0xf1, 0x89, 0x29, 0xf3, 0xe6, 0xe5, 0xbf, + 0x7b, 0xfe, 0xb5, 0x6f, 0xe3, 0xcf, 0xcf, 0x7f, 0xe5, 0xd1, 0x7f, 0xc6, 0xd9, 0x21, 0xff, 0x77, 0xd7, 0x72, 0xcb, 0xff, + 0x5d, 0xd7, 0xad, 0xd1, 0xfe, 0x7f, 0xcc, 0xef, 0x40, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0d, 0x7e, 0x01 }; + +// Font characters rectangles data +static const Rectangle terminalFontRecs[95] = { + { 4, 4, 4 , 16 }, + { 16, 4, 1 , 11 }, + { 25, 4, 3 , 3 }, + { 36, 4, 6 , 11 }, + { 50, 4, 5 , 11 }, + { 63, 4, 5 , 11 }, + { 76, 4, 5 , 11 }, + { 89, 4, 1 , 2 }, + { 98, 4, 2 , 13 }, + { 108, 4, 2 , 13 }, + { 118, 4, 3 , 3 }, + { 129, 4, 5 , 5 }, + { 142, 4, 1 , 3 }, + { 151, 4, 5 , 1 }, + { 164, 4, 1 , 1 }, + { 173, 4, 6 , 12 }, + { 187, 4, 5 , 11 }, + { 200, 4, 2 , 11 }, + { 210, 4, 5 , 11 }, + { 223, 4, 5 , 11 }, + { 236, 4, 5 , 11 }, + { 4, 28, 5 , 11 }, + { 17, 28, 5 , 11 }, + { 30, 28, 5 , 11 }, + { 43, 28, 5 , 11 }, + { 56, 28, 5 , 11 }, + { 69, 28, 1 , 8 }, + { 78, 28, 1 , 10 }, + { 87, 28, 4 , 5 }, + { 99, 28, 5 , 3 }, + { 112, 28, 4 , 5 }, + { 124, 28, 5 , 11 }, + { 137, 28, 11 , 11 }, + { 156, 28, 5 , 11 }, + { 169, 28, 5 , 11 }, + { 182, 28, 5 , 11 }, + { 195, 28, 5 , 11 }, + { 208, 28, 5 , 11 }, + { 221, 28, 5 , 11 }, + { 234, 28, 5 , 11 }, + { 4, 52, 5 , 11 }, + { 17, 52, 1 , 11 }, + { 26, 52, 5 , 11 }, + { 39, 52, 5 , 11 }, + { 52, 52, 5 , 11 }, + { 65, 52, 7 , 11 }, + { 80, 52, 5 , 11 }, + { 93, 52, 5 , 11 }, + { 106, 52, 5 , 11 }, + { 119, 52, 5 , 13 }, + { 132, 52, 5 , 11 }, + { 145, 52, 5 , 11 }, + { 158, 52, 5 , 11 }, + { 171, 52, 5 , 11 }, + { 184, 52, 5 , 11 }, + { 197, 52, 7 , 11 }, + { 212, 52, 5 , 11 }, + { 225, 52, 5 , 11 }, + { 238, 52, 5 , 11 }, + { 4, 76, 2 , 13 }, + { 14, 76, 6 , 12 }, + { 28, 76, 2 , 13 }, + { 38, 76, 5 , 4 }, + { 51, 76, 5 , 1 }, + { 64, 76, 2 , 2 }, + { 74, 76, 5 , 8 }, + { 87, 76, 5 , 11 }, + { 100, 76, 5 , 8 }, + { 113, 76, 5 , 11 }, + { 126, 76, 5 , 8 }, + { 139, 76, 4 , 11 }, + { 151, 76, 5 , 10 }, + { 164, 76, 5 , 11 }, + { 177, 76, 1 , 11 }, + { 186, 76, 1 , 13 }, + { 195, 76, 5 , 11 }, + { 208, 76, 1 , 11 }, + { 217, 76, 7 , 8 }, + { 232, 76, 5 , 8 }, + { 4, 100, 5 , 8 }, + { 17, 100, 5 , 10 }, + { 30, 100, 5 , 10 }, + { 43, 100, 4 , 8 }, + { 55, 100, 5 , 8 }, + { 68, 100, 3 , 11 }, + { 79, 100, 5 , 8 }, + { 92, 100, 5 , 8 }, + { 105, 100, 7 , 8 }, + { 120, 100, 5 , 8 }, + { 133, 100, 5 , 10 }, + { 146, 100, 5 , 8 }, + { 159, 100, 3 , 13 }, + { 170, 100, 1 , 15 }, + { 179, 100, 3 , 13 }, + { 190, 100, 5 , 3 }, +}; + +// Font characters info data +// NOTE: No chars.image data provided +static const GlyphInfo terminalFontChars[95] = { + { 32, 0, 14, 4, { 0 }}, + { 33, 1, 3, 3, { 0 }}, + { 34, 1, 3, 5, { 0 }}, + { 35, 1, 3, 8, { 0 }}, + { 36, 1, 3, 7, { 0 }}, + { 37, 1, 3, 7, { 0 }}, + { 38, 1, 3, 7, { 0 }}, + { 39, 1, 3, 3, { 0 }}, + { 40, 1, 2, 4, { 0 }}, + { 41, 1, 2, 4, { 0 }}, + { 42, 1, 3, 5, { 0 }}, + { 43, 1, 7, 7, { 0 }}, + { 44, 1, 13, 3, { 0 }}, + { 45, 1, 9, 7, { 0 }}, + { 46, 1, 13, 3, { 0 }}, + { 47, 1, 2, 8, { 0 }}, + { 48, 1, 3, 7, { 0 }}, + { 49, 1, 3, 4, { 0 }}, + { 50, 1, 3, 7, { 0 }}, + { 51, 1, 3, 7, { 0 }}, + { 52, 1, 3, 7, { 0 }}, + { 53, 1, 3, 7, { 0 }}, + { 54, 1, 3, 7, { 0 }}, + { 55, 1, 3, 7, { 0 }}, + { 56, 1, 3, 7, { 0 }}, + { 57, 1, 3, 7, { 0 }}, + { 58, 1, 6, 3, { 0 }}, + { 59, 1, 6, 3, { 0 }}, + { 60, 1, 7, 6, { 0 }}, + { 61, 1, 8, 7, { 0 }}, + { 62, 1, 7, 6, { 0 }}, + { 63, 1, 3, 7, { 0 }}, + { 64, 2, 3, 15, { 0 }}, + { 65, 1, 3, 7, { 0 }}, + { 66, 1, 3, 7, { 0 }}, + { 67, 1, 3, 7, { 0 }}, + { 68, 1, 3, 7, { 0 }}, + { 69, 1, 3, 7, { 0 }}, + { 70, 1, 3, 7, { 0 }}, + { 71, 1, 3, 7, { 0 }}, + { 72, 1, 3, 7, { 0 }}, + { 73, 1, 3, 3, { 0 }}, + { 74, 1, 3, 7, { 0 }}, + { 75, 1, 3, 7, { 0 }}, + { 76, 1, 3, 7, { 0 }}, + { 77, 1, 3, 9, { 0 }}, + { 78, 1, 3, 7, { 0 }}, + { 79, 1, 3, 7, { 0 }}, + { 80, 1, 3, 7, { 0 }}, + { 81, 1, 3, 7, { 0 }}, + { 82, 1, 3, 7, { 0 }}, + { 83, 1, 3, 7, { 0 }}, + { 84, 1, 3, 7, { 0 }}, + { 85, 1, 3, 7, { 0 }}, + { 86, 1, 3, 7, { 0 }}, + { 87, 1, 3, 9, { 0 }}, + { 88, 1, 3, 7, { 0 }}, + { 89, 1, 3, 7, { 0 }}, + { 90, 1, 3, 7, { 0 }}, + { 91, 1, 2, 4, { 0 }}, + { 92, 1, 2, 8, { 0 }}, + { 93, 1, 2, 4, { 0 }}, + { 94, 1, 3, 7, { 0 }}, + { 95, 1, 15, 7, { 0 }}, + { 96, 1, 0, 4, { 0 }}, + { 97, 1, 6, 7, { 0 }}, + { 98, 1, 3, 7, { 0 }}, + { 99, 1, 6, 7, { 0 }}, + { 100, 1, 3, 7, { 0 }}, + { 101, 1, 6, 7, { 0 }}, + { 102, 1, 3, 6, { 0 }}, + { 103, 1, 6, 7, { 0 }}, + { 104, 1, 3, 7, { 0 }}, + { 105, 1, 3, 3, { 0 }}, + { 106, 1, 3, 3, { 0 }}, + { 107, 1, 3, 7, { 0 }}, + { 108, 1, 3, 3, { 0 }}, + { 109, 1, 6, 9, { 0 }}, + { 110, 1, 6, 7, { 0 }}, + { 111, 1, 6, 7, { 0 }}, + { 112, 1, 6, 7, { 0 }}, + { 113, 1, 6, 7, { 0 }}, + { 114, 1, 6, 6, { 0 }}, + { 115, 1, 6, 7, { 0 }}, + { 116, 1, 3, 5, { 0 }}, + { 117, 1, 6, 7, { 0 }}, + { 118, 1, 6, 7, { 0 }}, + { 119, 1, 6, 9, { 0 }}, + { 120, 1, 6, 7, { 0 }}, + { 121, 1, 6, 7, { 0 }}, + { 122, 1, 6, 7, { 0 }}, + { 123, 1, 2, 5, { 0 }}, + { 124, 1, 1, 3, { 0 }}, + { 125, 1, 2, 5, { 0 }}, + { 126, 1, 8, 7, { 0 }}, +}; + +// Style loading function: terminal +static void GuiLoadStyleTerminal(void) +{ + // Load style properties provided + // NOTE: Default properties are propagated + for (int i = 0; i < TERMINAL_STYLE_PROPS_COUNT; i++) + { + GuiSetStyle(terminalStyleProps[i].controlId, terminalStyleProps[i].propertyId, terminalStyleProps[i].propertyValue); + } + + // Custom font loading + // NOTE: Compressed font image data (DEFLATE), it requires DecompressData() function + int terminalFontDataSize = 0; + unsigned char *data = DecompressData(terminalFontData, TERMINAL_COMPRESSED_DATA_SIZE, &terminalFontDataSize); + Image imFont = { data, 256, 256, 1, 2 }; + + Font font = { 0 }; + font.baseSize = 16; + font.glyphCount = 95; + + // Load texture from image + font.texture = LoadTextureFromImage(imFont); + UnloadImage(imFont); // Uncompressed data can be unloaded from memory + + // Copy char recs data from global fontRecs + // NOTE: Required to avoid issues if trying to free font + font.recs = (Rectangle *)malloc(font.glyphCount*sizeof(Rectangle)); + memcpy(font.recs, terminalFontRecs, font.glyphCount*sizeof(Rectangle)); + + // Copy font char info data from global fontChars + // NOTE: Required to avoid issues if trying to free font + font.glyphs = (GlyphInfo *)malloc(font.glyphCount*sizeof(GlyphInfo)); + memcpy(font.glyphs, terminalFontChars, font.glyphCount*sizeof(GlyphInfo)); + + GuiSetFont(font); + + // Setup a white rectangle on the font to be used on shapes drawing, + // this way we make sure all gui can be drawn on a single pass because no texture change is required + // NOTE: Setting up this rectangle is a manual process (for the moment) + Rectangle whiteChar = { 63, 4, 2, 2 }; + SetShapesTexture(font.texture, whiteChar); +} diff --git a/examples/text_editor/text_editor.c b/examples/text_editor/text_editor.c index 90de5f7..4534751 100644 --- a/examples/text_editor/text_editor.c +++ b/examples/text_editor/text_editor.c @@ -123,7 +123,7 @@ bool GuiTextEditor(Rectangle bounds, char *text, int textSize, bool editMode) static int selectStartCp = -1; static int selectLengthCp = 0; - GuiControlState state = guiState; + GuiState state = guiState; bool pressed = false; bool textWrap = true; // TODO: Word-Wrap vs Char-Wrap -> textWrapMode { NO_WRAP_LOCK, NO_WRAP_OVERFLOW, CHAR_WRAP, WORD_WRAP } @@ -135,13 +135,13 @@ bool GuiTextEditor(Rectangle bounds, char *text, int textSize, bool editMode) // Update control //-------------------------------------------------------------------- - if ((state != GUI_STATE_DISABLED) && !guiLocked) + if ((state != STATE_DISABLED) && !guiLocked) { Vector2 mousePoint = GetMousePosition(); if (editMode) { - state = GUI_STATE_PRESSED; + state = STATE_PRESSED; framesCounter++; // TODO: Cursor position logic (mouse and keys) @@ -173,7 +173,7 @@ bool GuiTextEditor(Rectangle bounds, char *text, int textSize, bool editMode) { if (CheckCollisionPointRec(mousePoint, bounds)) { - state = GUI_STATE_FOCUSED; + state = STATE_FOCUSED; if (IsMouseButtonPressed(0)) pressed = true; } } @@ -195,8 +195,8 @@ bool GuiTextEditor(Rectangle bounds, char *text, int textSize, bool editMode) //-------------------------------------------------------------------- DrawRectangleLinesEx(bounds, GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), guiAlpha)); - if (state == GUI_STATE_PRESSED) DrawRectangle(bounds.x + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.height - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_PRESSED)), guiAlpha)); - else if (state == GUI_STATE_DISABLED) DrawRectangle(bounds.x + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.height - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_DISABLED)), guiAlpha)); + if (state == STATE_PRESSED) DrawRectangle(bounds.x + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.height - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_PRESSED)), guiAlpha)); + else if (state == STATE_DISABLED) DrawRectangle(bounds.x + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.height - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_DISABLED)), guiAlpha)); Font font = GetFontDefault(); diff --git a/examples/text_box_selection/textbox_extended_demo.c b/examples/textbox_selection/textbox_selection.c similarity index 99% rename from examples/text_box_selection/textbox_extended_demo.c rename to examples/textbox_selection/textbox_selection.c index 846ee7d..c0c4d18 100644 --- a/examples/text_box_selection/textbox_extended_demo.c +++ b/examples/textbox_selection/textbox_selection.c @@ -166,7 +166,7 @@ int main(int argc, char **argv) } // Convert text to hex representation and draw it on screen - char hex[(((textboxActive == 1) ? SIZEOF(text02) : SIZEOF(text01)) + 1)*3 + 1]; + char *hex = RAYGUI_MALLOC((((textboxActive == 1) ? SIZEOF(text02) : SIZEOF(text01)) + 1)*3 + 1); char *text = (textboxActive == 1) ? text02 : text01; int maxSize = (textboxActive == 1) ? SIZEOF(text02) : SIZEOF(text01); for (int i = 0, j = 0; i < maxSize; ++i, j += 3) sprintf(&hex[j], "%02Xh ", (char)text[i]); @@ -214,6 +214,8 @@ int main(int argc, char **argv) // Draw hexadecimal values viewer DrawTextBoxedSelectable(guiFont, hex, (Rectangle){ 20, 95, 760, 205 }, 20, 1, true, BLACK, startIdx*3, len*3, colorFG, colorBG); + RAYGUI_FREE(hex); + // Draw right-mouse-button-click menu and logic //--------------------------------------------------------------------------------------- if (showMenu) diff --git a/projects/VS2022/examples/custom_file_dialog.vcxproj b/projects/VS2022/examples/custom_file_dialog.vcxproj new file mode 100644 index 0000000..2b8486e --- /dev/null +++ b/projects/VS2022/examples/custom_file_dialog.vcxproj @@ -0,0 +1,357 @@ + + + + + Debug.DLL + Win32 + + + Debug.DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release.DLL + Win32 + + + Release.DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A} + Win32Proj + custom_file_dialog + custom_file_dialog + 10.0 + + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + {e89d61ac-55de-4482-afd4-df7242ebc859} + + + + + + + + + \ No newline at end of file diff --git a/projects/VS2022/examples/image_exporter.vcxproj b/projects/VS2022/examples/image_exporter.vcxproj new file mode 100644 index 0000000..f69e89f --- /dev/null +++ b/projects/VS2022/examples/image_exporter.vcxproj @@ -0,0 +1,357 @@ + + + + + Debug.DLL + Win32 + + + Debug.DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release.DLL + Win32 + + + Release.DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {67B2B88C-EA52-403F-A596-5107008C71F2} + Win32Proj + image_exporter + image_exporter + 10.0 + + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + {e89d61ac-55de-4482-afd4-df7242ebc859} + + + + + + + + + \ No newline at end of file diff --git a/projects/VS2022/examples/image_importer_raw.vcxproj b/projects/VS2022/examples/image_importer_raw.vcxproj new file mode 100644 index 0000000..830fd42 --- /dev/null +++ b/projects/VS2022/examples/image_importer_raw.vcxproj @@ -0,0 +1,357 @@ + + + + + Debug.DLL + Win32 + + + Debug.DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release.DLL + Win32 + + + Release.DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {6628D753-270D-418D-A87F-6E2E63B9E3D0} + Win32Proj + image_importer_raw + image_importer_raw + 10.0 + + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + {e89d61ac-55de-4482-afd4-df7242ebc859} + + + + + + + + + \ No newline at end of file diff --git a/projects/VS2022/examples/portable_window.vcxproj b/projects/VS2022/examples/portable_window.vcxproj new file mode 100644 index 0000000..dbdb2bf --- /dev/null +++ b/projects/VS2022/examples/portable_window.vcxproj @@ -0,0 +1,357 @@ + + + + + Debug.DLL + Win32 + + + Debug.DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release.DLL + Win32 + + + Release.DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8} + Win32Proj + portable_window + portable_window + 10.0 + + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + {e89d61ac-55de-4482-afd4-df7242ebc859} + + + + + + + + + \ No newline at end of file diff --git a/projects/VS2022/examples/property_list.vcxproj b/projects/VS2022/examples/property_list.vcxproj new file mode 100644 index 0000000..186e249 --- /dev/null +++ b/projects/VS2022/examples/property_list.vcxproj @@ -0,0 +1,357 @@ + + + + + Debug.DLL + Win32 + + + Debug.DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release.DLL + Win32 + + + Release.DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {D28301C9-C293-4F41-9F58-F2609F33134E} + Win32Proj + property_list + property_list + 10.0 + + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + {e89d61ac-55de-4482-afd4-df7242ebc859} + + + + + + + + + \ No newline at end of file diff --git a/projects/VS2022/examples/scroll_panel.vcxproj b/projects/VS2022/examples/scroll_panel.vcxproj new file mode 100644 index 0000000..0709ca2 --- /dev/null +++ b/projects/VS2022/examples/scroll_panel.vcxproj @@ -0,0 +1,357 @@ + + + + + Debug.DLL + Win32 + + + Debug.DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release.DLL + Win32 + + + Release.DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87} + Win32Proj + scroll_panel + scroll_panel + 10.0 + + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + {e89d61ac-55de-4482-afd4-df7242ebc859} + + + + + + + + + \ No newline at end of file diff --git a/projects/VS2022/examples/style_selector.vcxproj b/projects/VS2022/examples/style_selector.vcxproj new file mode 100644 index 0000000..d2b80a4 --- /dev/null +++ b/projects/VS2022/examples/style_selector.vcxproj @@ -0,0 +1,357 @@ + + + + + Debug.DLL + Win32 + + + Debug.DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release.DLL + Win32 + + + Release.DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430} + Win32Proj + style_selector + style_selector + 10.0 + + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions) + CompileAsCpp + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsCpp + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + {e89d61ac-55de-4482-afd4-df7242ebc859} + + + + + + + + + \ No newline at end of file diff --git a/projects/VS2022/examples/test.props b/projects/VS2022/examples/test.props new file mode 100644 index 0000000..aeaaab6 --- /dev/null +++ b/projects/VS2022/examples/test.props @@ -0,0 +1,27 @@ +# +# Property types: +# b // Bool +# i // Int +# f // Float +# t // Text +# l // Select +# g // Section (Group) +# v2 // Vector 2D +# v3 // Vector 3D +# v4 // Vector 4D +# r // Rectangle +# c // Color +# + +b Bool 0 1 +g #102#SECTION 0 2 +i Int 0 123 0 0 1 +f Float 0 0.990000 0.000000 0.000000 1.000000 3 +t Text 0 Hello! 30 +l Select 0 ONE;TWO;THREE;FOUR 0 +i Int Range 0 32 0 100 1 +r Rect 0 0 0 100 200 +v2 Vec2 0 20.000000 20.000000 +v3 Vec3 0 12.000000 13.000000 14.000000 +v4 Vec4 1 12.000000 13.000000 14.000000 15.000000 +c Color 1 0 255 0 255 diff --git a/projects/VS2022/examples/text_editor.vcxproj b/projects/VS2022/examples/text_editor.vcxproj new file mode 100644 index 0000000..4c83795 --- /dev/null +++ b/projects/VS2022/examples/text_editor.vcxproj @@ -0,0 +1,357 @@ + + + + + Debug.DLL + Win32 + + + Debug.DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release.DLL + Win32 + + + Release.DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36} + Win32Proj + text_editor + text_editor + 10.0 + + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + {e89d61ac-55de-4482-afd4-df7242ebc859} + + + + + + + + + \ No newline at end of file diff --git a/projects/VS2022/examples/textbox_selection.vcxproj b/projects/VS2022/examples/textbox_selection.vcxproj new file mode 100644 index 0000000..16c8d51 --- /dev/null +++ b/projects/VS2022/examples/textbox_selection.vcxproj @@ -0,0 +1,357 @@ + + + + + Debug.DLL + Win32 + + + Debug.DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release.DLL + Win32 + + + Release.DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {B740AD57-ABF2-4421-96C0-FE220130A873} + Win32Proj + textbox_selection + textbox_selection + 10.0 + + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + MultiThreaded + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;VERSION_ONE;%(PreprocessorDefinitions) + $(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + {e89d61ac-55de-4482-afd4-df7242ebc859} + + + + + + + + + \ No newline at end of file diff --git a/projects/VS2022/raygui.sln b/projects/VS2022/raygui.sln index ba64047..49d33e4 100644 --- a/projects/VS2022/raygui.sln +++ b/projects/VS2022/raygui.sln @@ -7,6 +7,25 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "controls_test_suite", "exam EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "raylib", "raylib\raylib.vcxproj", "{E89D61AC-55DE-4482-AFD4-DF7242EBC859}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "custom_file_dialog", "examples\custom_file_dialog.vcxproj", "{E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "image_exporter", "examples\image_exporter.vcxproj", "{67B2B88C-EA52-403F-A596-5107008C71F2}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "image_importer_raw", "examples\image_importer_raw.vcxproj", "{6628D753-270D-418D-A87F-6E2E63B9E3D0}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "portable_window", "examples\portable_window.vcxproj", "{FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "property_list", "examples\property_list.vcxproj", "{D28301C9-C293-4F41-9F58-F2609F33134E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "scroll_panel", "examples\scroll_panel.vcxproj", "{56EE93DF-A3AF-4856-A4EC-E27358C6DA87}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_editor", "examples\text_editor.vcxproj", "{AB6D26C4-F5F4-420D-B15B-CE52619A5D36}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "examples", "examples", "{5DC256E9-D698-4D07-8AD7-DFDAE9125DE3}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textbox_selection", "examples\textbox_selection.vcxproj", "{B740AD57-ABF2-4421-96C0-FE220130A873}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "style_selector", "examples\style_selector.vcxproj", "{BCF5E746-FDBF-4CAC-9B95-44FE9A498430}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -20,22 +39,6 @@ Global Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x64.ActiveCfg = Debug|x64 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x64.Build.0 = Debug|x64 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x86.ActiveCfg = Debug|Win32 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x86.Build.0 = Debug|Win32 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x64.Build.0 = Release.DLL|x64 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x86.Build.0 = Release.DLL|Win32 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x64.ActiveCfg = Release|x64 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x64.Build.0 = Release|x64 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x86.ActiveCfg = Release|Win32 - {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x86.Build.0 = Release|Win32 {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 @@ -52,10 +55,182 @@ Global {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x64.Build.0 = Release|x64 {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x86.ActiveCfg = Release|Win32 {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x86.Build.0 = Release|Win32 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x64.ActiveCfg = Debug|x64 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x64.Build.0 = Debug|x64 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x86.ActiveCfg = Debug|Win32 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x86.Build.0 = Debug|Win32 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x64.ActiveCfg = Release|x64 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x64.Build.0 = Release|x64 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x86.ActiveCfg = Release|Win32 + {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x86.Build.0 = Release|Win32 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Debug|x64.ActiveCfg = Debug|x64 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Debug|x64.Build.0 = Debug|x64 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Debug|x86.ActiveCfg = Debug|Win32 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Debug|x86.Build.0 = Debug|Win32 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Release|x64.ActiveCfg = Release|x64 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Release|x64.Build.0 = Release|x64 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Release|x86.ActiveCfg = Release|Win32 + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}.Release|x86.Build.0 = Release|Win32 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Debug|x64.ActiveCfg = Debug|x64 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Debug|x64.Build.0 = Debug|x64 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Debug|x86.ActiveCfg = Debug|Win32 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Debug|x86.Build.0 = Debug|Win32 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Release|x64.ActiveCfg = Release|x64 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Release|x64.Build.0 = Release|x64 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Release|x86.ActiveCfg = Release|Win32 + {67B2B88C-EA52-403F-A596-5107008C71F2}.Release|x86.Build.0 = Release|Win32 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Debug|x64.ActiveCfg = Debug|x64 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Debug|x64.Build.0 = Debug|x64 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Debug|x86.ActiveCfg = Debug|Win32 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Debug|x86.Build.0 = Debug|Win32 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Release|x64.ActiveCfg = Release|x64 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Release|x64.Build.0 = Release|x64 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Release|x86.ActiveCfg = Release|Win32 + {6628D753-270D-418D-A87F-6E2E63B9E3D0}.Release|x86.Build.0 = Release|Win32 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Debug|x64.ActiveCfg = Debug|x64 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Debug|x64.Build.0 = Debug|x64 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Debug|x86.ActiveCfg = Debug|Win32 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Debug|x86.Build.0 = Debug|Win32 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Release|x64.ActiveCfg = Release|x64 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Release|x64.Build.0 = Release|x64 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Release|x86.ActiveCfg = Release|Win32 + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}.Release|x86.Build.0 = Release|Win32 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Debug|x64.ActiveCfg = Debug|x64 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Debug|x64.Build.0 = Debug|x64 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Debug|x86.ActiveCfg = Debug|Win32 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Debug|x86.Build.0 = Debug|Win32 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Release|x64.ActiveCfg = Release|x64 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Release|x64.Build.0 = Release|x64 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Release|x86.ActiveCfg = Release|Win32 + {D28301C9-C293-4F41-9F58-F2609F33134E}.Release|x86.Build.0 = Release|Win32 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Debug|x64.ActiveCfg = Debug|x64 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Debug|x64.Build.0 = Debug|x64 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Debug|x86.ActiveCfg = Debug|Win32 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Debug|x86.Build.0 = Debug|Win32 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Release|x64.ActiveCfg = Release|x64 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Release|x64.Build.0 = Release|x64 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Release|x86.ActiveCfg = Release|Win32 + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87}.Release|x86.Build.0 = Release|Win32 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Debug|x64.ActiveCfg = Debug|x64 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Debug|x64.Build.0 = Debug|x64 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Debug|x86.ActiveCfg = Debug|Win32 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Debug|x86.Build.0 = Debug|Win32 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Release|x64.ActiveCfg = Release|x64 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Release|x64.Build.0 = Release|x64 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Release|x86.ActiveCfg = Release|Win32 + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36}.Release|x86.Build.0 = Release|Win32 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Debug|x64.ActiveCfg = Debug|x64 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Debug|x64.Build.0 = Debug|x64 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Debug|x86.ActiveCfg = Debug|Win32 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Debug|x86.Build.0 = Debug|Win32 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Release|x64.ActiveCfg = Release|x64 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Release|x64.Build.0 = Release|x64 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Release|x86.ActiveCfg = Release|Win32 + {B740AD57-ABF2-4421-96C0-FE220130A873}.Release|x86.Build.0 = Release|Win32 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Debug|x64.ActiveCfg = Debug|x64 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Debug|x64.Build.0 = Debug|x64 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Debug|x86.ActiveCfg = Debug|Win32 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Debug|x86.Build.0 = Debug|Win32 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Release|x64.ActiveCfg = Release|x64 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Release|x64.Build.0 = Release|x64 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Release|x86.ActiveCfg = Release|Win32 + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {0981CA98-E4A5-4DF1-987F-A41D09131EFC} = {5DC256E9-D698-4D07-8AD7-DFDAE9125DE3} + {E1CF5310-BCF6-4063-861D-EDFF65D9FE2A} = {5DC256E9-D698-4D07-8AD7-DFDAE9125DE3} + {67B2B88C-EA52-403F-A596-5107008C71F2} = {5DC256E9-D698-4D07-8AD7-DFDAE9125DE3} + {6628D753-270D-418D-A87F-6E2E63B9E3D0} = {5DC256E9-D698-4D07-8AD7-DFDAE9125DE3} + {FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8} = {5DC256E9-D698-4D07-8AD7-DFDAE9125DE3} + {D28301C9-C293-4F41-9F58-F2609F33134E} = {5DC256E9-D698-4D07-8AD7-DFDAE9125DE3} + {56EE93DF-A3AF-4856-A4EC-E27358C6DA87} = {5DC256E9-D698-4D07-8AD7-DFDAE9125DE3} + {AB6D26C4-F5F4-420D-B15B-CE52619A5D36} = {5DC256E9-D698-4D07-8AD7-DFDAE9125DE3} + {B740AD57-ABF2-4421-96C0-FE220130A873} = {5DC256E9-D698-4D07-8AD7-DFDAE9125DE3} + {BCF5E746-FDBF-4CAC-9B95-44FE9A498430} = {5DC256E9-D698-4D07-8AD7-DFDAE9125DE3} + EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {E926C768-6307-4423-A1EC-57E95B1FAB29} EndGlobalSection diff --git a/src/extras/gui_textbox_extended.h b/src/extras/gui_textbox_extended.h index 470127e..d8d0f06 100644 --- a/src/extras/gui_textbox_extended.h +++ b/src/extras/gui_textbox_extended.h @@ -548,7 +548,7 @@ RAYGUIAPI bool GuiTextBoxEx(Rectangle bounds, char *text, int textSize, bool edi static int framesCounter = 0; // Required for blinking cursor - GuiControlState state = guiState; + GuiState state = guiState; bool pressed = false; // Make sure length doesn't exceed `textSize`. `textSize` is actually the max amount of characters the textbox can handle. @@ -588,7 +588,7 @@ RAYGUIAPI bool GuiTextBoxEx(Rectangle bounds, char *text, int textSize, bool edi // Update control //-------------------------------------------------------------------- - if ((state != GUI_STATE_DISABLED) && !guiLocked) + if ((state != STATE_DISABLED) && !guiLocked) { Vector2 mousePoint = GetMousePosition(); @@ -615,7 +615,7 @@ RAYGUIAPI bool GuiTextBoxEx(Rectangle bounds, char *text, int textSize, bool edi if (active) { - state = GUI_STATE_PRESSED; + state = STATE_PRESSED; framesCounter++; // Make sure state doesn't have invalid values @@ -910,7 +910,7 @@ RAYGUIAPI bool GuiTextBoxEx(Rectangle bounds, char *text, int textSize, bool edi } else selStart = selStart - guiTextBoxState.start; } - else state = GUI_STATE_FOCUSED; + else state = STATE_FOCUSED; if (IsKeyPressed(KEY_ENTER) || (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(0))) pressed = true; } @@ -941,7 +941,7 @@ RAYGUIAPI bool GuiTextBoxEx(Rectangle bounds, char *text, int textSize, bool edi if (CheckCollisionPointRec(mousePoint, bounds)) { - state = GUI_STATE_FOCUSED; + state = STATE_FOCUSED; if (IsMouseButtonPressed(0)) pressed = true; } @@ -954,7 +954,7 @@ RAYGUIAPI bool GuiTextBoxEx(Rectangle bounds, char *text, int textSize, bool edi //-------------------------------------------------------------------- DrawRectangleLinesEx(bounds, GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), guiAlpha)); - if (state == GUI_STATE_PRESSED) + if (state == STATE_PRESSED) { DrawRectangle(bounds.x + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.height - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_FOCUSED)), guiAlpha)); @@ -964,7 +964,7 @@ RAYGUIAPI bool GuiTextBoxEx(Rectangle bounds, char *text, int textSize, bool edi DrawRectangle(cursorPos.x, cursorPos.y-1, 1, GuiGetStyle(DEFAULT, TEXT_SIZE)+2, Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER_COLOR_PRESSED)), guiAlpha)); } } - else if (state == GUI_STATE_DISABLED) + else if (state == STATE_DISABLED) { DrawRectangle(bounds.x + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), bounds.height - 2*GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_DISABLED)), guiAlpha)); }