Compare commits
277 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| aa81c167f1 | |||
| 37992af28a | |||
| 9cf37c5e51 | |||
| 60e216283d | |||
| 7f46aa5929 | |||
| b54733ec12 | |||
| 7da92d224d | |||
| 1c7ceb6fda | |||
| 251f7fde3a | |||
| 80e802b18d | |||
| 6fc9337cd8 | |||
| 38a3d100e1 | |||
| 628f2e0290 | |||
| ab209bc5d1 | |||
| 8c14e61214 | |||
| 27caba8834 | |||
| 31b097ee3e | |||
| b0d7073551 | |||
| 731bae72d5 | |||
| 4ad311bd6f | |||
| c4d71e1c0b | |||
| d04c68b915 | |||
| 42aaec6640 | |||
| d05586ef0f | |||
| 2b45fea429 | |||
| 665520d7c9 | |||
| fcaab0e9ef | |||
| 926fdf91cc | |||
| 8de6bf1d63 | |||
| bb02c2059e | |||
| fdc0ea5249 | |||
| 6b2f812cc7 | |||
| f343f0057c | |||
| bb17983e22 | |||
| b2ff512c8e | |||
| 6b88e106e0 | |||
| 87fc5aa72c | |||
| e0d3c02892 | |||
| b80fa4016c | |||
| 8c89d8794f | |||
| 5d7bc6b70a | |||
| 1d9fd31074 | |||
| 5d1de95ba2 | |||
| abbf1b1198 | |||
| 19f781780e | |||
| 15a4151b66 | |||
| f218fd001a | |||
| 9f9b822338 | |||
| c02a5883e0 | |||
| 3cd28c0828 | |||
| cec2de3440 | |||
| 5b37ce0630 | |||
| 9e3c5009e4 | |||
| 42cc62e853 | |||
| 0ced5b1c0d | |||
| 32f16ceafd | |||
| 8f808dfe66 | |||
| b5e5271646 | |||
| 0aeac22701 | |||
| 78963b1817 | |||
| fa8272d605 | |||
| 9914eb8d94 | |||
| 64179558e4 | |||
| 85d6736be9 | |||
| bd4d2d860c | |||
| 3fedc2fac4 | |||
| 59cf0c7607 | |||
| c16a98365f | |||
| 03a3cce57b | |||
| ad8e056b0c | |||
| 6e4cd54baa | |||
| a8062229b0 | |||
| d4b9d1fb32 | |||
| abe8bba7fa | |||
| 1021907604 | |||
| 9dc0b58566 | |||
| 16e63f33ee | |||
| 3386e912d3 | |||
| 0562c4c93f | |||
| d981abebd8 | |||
| 98df231227 | |||
| ed4731ad9e | |||
| a3075fcaf4 | |||
| 5cb62810b9 | |||
| f4890960d8 | |||
| eac855b0dd | |||
| e4cc3ce450 | |||
| 3c0aaff191 | |||
| 5f22083d6c | |||
| 353b8a4b5b | |||
| 7837b9dc06 | |||
| 3e6f5fdf01 | |||
| c49cbc9849 | |||
| b37c0df561 | |||
| 680a4bca4b | |||
| a0cded315a | |||
| c8a2e7d442 | |||
| 4e2a878e71 | |||
| 9c826f213f | |||
| 7ef0ae713b | |||
| 38236a5513 | |||
| fc6742a5fe | |||
| 798da1b522 | |||
| 1b18e43768 | |||
| 47269f30ce | |||
| 5bcfa6ccdc | |||
| c29da799cc | |||
| 2f127b3e83 | |||
| 1f920bf264 | |||
| df117f84cb | |||
| 4232b2a0e7 | |||
| f9483a6a52 | |||
| 99299c3f06 | |||
| 161dc0ed84 | |||
| 6cff9e20d4 | |||
| 013f1a2772 | |||
| f534a9a265 | |||
| 694e770351 | |||
| 7b2e7a107b | |||
| 781123c647 | |||
| 9113b1e4c9 | |||
| 486bc9b5e3 | |||
| 9554ca8d63 | |||
| ffb4a7a851 | |||
| c991cbcaf8 | |||
| f13c5c3ec3 | |||
| 865bb29376 | |||
| c4e121d548 | |||
| baf3790cac | |||
| 4c5784f07d | |||
| 8b28248552 | |||
| ec3a7a414d | |||
| 1fdc76d8ad | |||
| 7137b8331d | |||
| 483b3a17ad | |||
| 4466262b50 | |||
| 6d79cdf2fd | |||
| f08ec1d08a | |||
| 453bf67c40 | |||
| 84246d75e8 | |||
| e30cb00f39 | |||
| 151c4c5dce | |||
| 6789281386 | |||
| 9e51cf9213 | |||
| 0476dab3cf | |||
| 4f933c1e81 | |||
| 0dd763f4a4 | |||
| 627e879018 | |||
| 9407bf1a1d | |||
| 7a2a57b868 | |||
| d0f8e9bb0a | |||
| 876dd2879a | |||
| 78cd3d650d | |||
| 803e3b92af | |||
| ce42af4858 | |||
| c8d8fb5a86 | |||
| d0815ce9f3 | |||
| 843ecc2258 | |||
| cdb9fc9bff | |||
| 690214dd0a | |||
| 6f1b6ad15f | |||
| ac231606d3 | |||
| b472287b0a | |||
| ebe196799a | |||
| 7c578ae94b | |||
| 90ef00a474 | |||
| 17f9d3c0f5 | |||
| f00fa5ff23 | |||
| 1f0dbc8aa1 | |||
| cc359132b6 | |||
| a76d9f96e6 | |||
| 0280f973e5 | |||
| 679cc2f17f | |||
| 52755a2913 | |||
| 638484742e | |||
| 4fb2f1a19c | |||
| 042df8f004 | |||
| 7a2964302a | |||
| e287ca4c47 | |||
| c7eb926853 | |||
| f023911302 | |||
| 9dbc340cb6 | |||
| c8417c606a | |||
| 318bc4a747 | |||
| 24fcac010e | |||
| eface74b13 | |||
| 5c50b082b3 | |||
| f9aa763661 | |||
| 37bc50cad3 | |||
| e12b1f93c3 | |||
| 771513ebe5 | |||
| de39a6064f | |||
| da356fffff | |||
| 7887356296 | |||
| a611c16e66 | |||
| 379ab63197 | |||
| 110553535b | |||
| 43209cf627 | |||
| 70e30d447f | |||
| 0f05fccf4c | |||
| 23121c5454 | |||
| ba575e9e76 | |||
| 733fa0fce0 | |||
| 38bda86911 | |||
| 0c264d5af3 | |||
| a778d8474a | |||
| 10ebad86ef | |||
| a609522c05 | |||
| acc19b74b3 | |||
| 65a82bfe54 | |||
| af51e4ccf7 | |||
| 61c6bd22f9 | |||
| 0d3dc299cd | |||
| ba2fdec93b | |||
| a5068756be | |||
| 22c0b5754a | |||
| e4db44518e | |||
| 4e1a1d2348 | |||
| 405f7ab7e8 | |||
| e86d0dc2bf | |||
| a456bcb763 | |||
| 31a38d34fc | |||
| a770a93fb2 | |||
| 1a9f0fbe9c | |||
| 283716857c | |||
| 2fa812484c | |||
| f822fb1468 | |||
| 8c70f3315a | |||
| 8993f07c94 | |||
| 7c63e389b8 | |||
| 0ed765cd8b | |||
| f1853f50e7 | |||
| b0dfa6dcbf | |||
| f7abbc055f | |||
| 46243ef6d2 | |||
| 2bb3e17c1e | |||
| 734d067335 | |||
| e81fd89b6d | |||
| c1af7c3edd | |||
| 469496d177 | |||
| 653ee23f58 | |||
| 181f41cee0 | |||
| d45a0f55f1 | |||
| 3e1162bb9a | |||
| fc43382050 | |||
| c1d906855b | |||
| d871bc0641 | |||
| 8197be08d8 | |||
| 424ad14d3c | |||
| c3dc43d4c5 | |||
| cf45f9bccf | |||
| 873c6a95b3 | |||
| 24e0dd6600 | |||
| 2083c6984a | |||
| 0907bee71b | |||
| 65e39bb4bc | |||
| bad9c8bb58 | |||
| d5856e5182 | |||
| 76c6184c49 | |||
| 6edd0865c0 | |||
| a4a6ff98b3 | |||
| 78f24a3868 | |||
| 045d4856f0 | |||
| d215533b5a | |||
| 806b216e20 | |||
| d77bd5f3ef | |||
| c2bee39e0b | |||
| d2752e9a47 | |||
| 6b216626ec | |||
| 13aac618ad | |||
| a11fb5f38d | |||
| ef99aafee9 | |||
| 3749de3ef8 | |||
| 0cbbb48410 | |||
| 3627bb960a | |||
| 28d7584fc1 | |||
| b4288f969c |
2
LICENSE
@ -1,6 +1,6 @@
|
|||||||
zlib License
|
zlib License
|
||||||
|
|
||||||
Copyright (c) 2014-2020 Ramon Santamaria (@raysan5)
|
Copyright (c) 2014-2023 Ramon Santamaria (@raysan5)
|
||||||
|
|
||||||
This software is provided "as-is", without any express or implied warranty. In no event
|
This software is provided "as-is", without any express or implied warranty. In no event
|
||||||
will the authors be held liable for any damages arising from the use of this software.
|
will the authors be held liable for any damages arising from the use of this software.
|
||||||
|
|||||||
107
README.md
@ -1,35 +1,49 @@
|
|||||||
<img align="left" src="logo/raygui_256x256.png" width=256>
|
<img align="left" src="logo/raygui_256x256.png" width=256>
|
||||||
|
|
||||||
**raygui** is a simple and easy-to-use immediate-mode-gui library.
|
**raygui is a simple and easy-to-use immediate-mode-gui library.**
|
||||||
|
|
||||||
raygui was initially inspired by [Unity IMGUI](https://docs.unity3d.com/Manual/GUIScriptingGuide.html) (immediate mode GUI API).
|
`raygui` was originally inspired by [Unity IMGUI](https://docs.unity3d.com/Manual/GUIScriptingGuide.html) (immediate mode GUI API).
|
||||||
|
|
||||||
raygui was originated as an auxiliar module for [raylib](https://github.com/raysan5/raylib) to create simple GUI interfaces using raylib graphic style (simple colors, plain rectangular shapes, wide borders...).
|
`raygui` was designed as an auxiliar module for [raylib](https://github.com/raysan5/raylib) to create simple GUI interfaces using raylib graphic style (simple colors, plain rectangular shapes, wide borders...) but it can be adapted to other engines/frameworks.
|
||||||
|
|
||||||
raygui is intended for **tools development**; it has already been used to develop the following tools: [rFXGen](https://github.com/raysan5/rfxgen), [rTexViewer](https://raylibtech.itch.io/rtexviewer), [rTexPacker](https://raylibtech.itch.io/rtexpacker) [rGuiStyler](https://raylibtech.itch.io/rguistyler), [rGuiLayout](https://raylibtech.itch.io/rguilayout) and [rGuiIcons](https://raylibtech.itch.io/rguiicons)
|
`raygui` is intended for **tools development**; it has already been used to develop [multiple published tools](https://raylibtech.itch.io).
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
## raygui provided controls
|
**WARNING: Latest `raygui` from master branch is always aligned with latest `raylib` from master branch.**
|
||||||
|
|
||||||
#### Container/separator controls
|
**Make sure to use the appropiate versions.**
|
||||||
|
|
||||||
|
## features
|
||||||
|
|
||||||
|
- **Immediate-mode gui, no retained data**
|
||||||
|
- **+25** controls provided (basic and advanced)
|
||||||
|
- Powerful **styling system** for colors, font and metrics
|
||||||
|
- Standalone usage mode supported (for other graphic libs)
|
||||||
|
- **Icons support**, embedding a complete 1-bit icons pack
|
||||||
|
- Multiple **tools** provided for raygui development
|
||||||
|
|
||||||
|
## raygui controls
|
||||||
|
|
||||||
|
### basic controls
|
||||||
```
|
```
|
||||||
WindowBox | GroupBox | Line | Panel
|
Label | Button | LabelButton | Toggle | ToggleGroup | CheckBox
|
||||||
|
ComboBox | DropdownBox | TextBox | ValueBox | Spinner
|
||||||
|
Slider | SliderBar | ProgressBar | StatusBar | DummyRec | Grid
|
||||||
```
|
```
|
||||||
#### Basic controls
|
### container/separator controls
|
||||||
```
|
```
|
||||||
Label | Button | LabelButton | ImageButton | Toggle | ToggleGroup | CheckBox
|
WindowBox | GroupBox | Line | Panel | ScrollPanel | TabBar
|
||||||
ComboBox | DropdownBox | TextBox | TextBoxMulti | ValueBox | Spinner | Slider
|
|
||||||
SliderBar | ProgressBar | StatusBar | ScrollBar | ScrollPanel | DummyRec | Grid
|
|
||||||
```
|
```
|
||||||
#### Advance controls
|
### advanced controls
|
||||||
```
|
```
|
||||||
ListView | ColorPicker | MessageBox | TextInputBox
|
ListView | ColorPicker | MessageBox | TextInputBox
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
## raygui styles
|
## raygui styles
|
||||||
|
|
||||||
raygui comes with a [default](styles/default) style automatically loaded at runtime:
|
`raygui` comes with a [default](styles/default) style automatically loaded at runtime:
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@ -37,37 +51,70 @@ Some additional styles are also provided for convenience, just check [styles dir
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
Custom styles can also be created very easily using [rGuiStyler](https://raylibtech.itch.io/rguistyler) tool.
|
Custom styles can also be created very easily using [rGuiStyler](https://raylibtech.itch.io/rguistyler) tool.
|
||||||
|
|
||||||
Styles can be loaded at runtime using raygui `GuiLoadStyle()` function. Simple and easy-to-use.
|
Styles can be loaded at runtime using raygui `GuiLoadStyle()` function. Simple and easy-to-use.
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
*rGuiStyler v3.1 - raygui styles editor, useful to create custom styles*
|
|
||||||
|
|
||||||
## raygui icons
|
## raygui icons
|
||||||
|
|
||||||
`raygui` supports custom icons provided as an external array of data. To support icons just define `RAYGUI_SUPPORT_ICONS` before including `raygui`.
|
`raygui` supports custom icons, by default, a predefined set of icons is provided inside `raygui` as an array of binary data; it contains **256 possible icons** defined as **16x16 pixels** each; each pixel is codified using **1-bit**. The total size of the array is `2048 bytes`.
|
||||||
|
|
||||||
A set of custom handcrafted icons is provided in [`riconsdata`](src/riconsdata.h). This set of icons can be created and customized using [rGuiIcons](https://raylibtech.itch.io/rguiicons) tool.
|
|
||||||
|
|
||||||
<img align="right" src="images/raygui_ricons.png">
|
<img align="right" src="images/raygui_ricons.png">
|
||||||
|
|
||||||
```c
|
To use any of those icons just prefix the *#iconId#* number to **any text** written within `raygui` controls:
|
||||||
#define RAYGUI_IMPLEMENTATION
|
|
||||||
#define RAYGUI_SUPPORT_ICONS
|
|
||||||
#include "raygui.h"
|
|
||||||
```
|
|
||||||
To use any of those icons in your gui, just preprend *iconId* to any text written within `raygui` controls:
|
|
||||||
```c
|
```c
|
||||||
if (GuiButton(rec, "#05#Open Image")) { /* ACTION */ }
|
if (GuiButton(rec, "#05#Open Image")) { /* ACTION */ }
|
||||||
```
|
```
|
||||||
or use the provided `GuiIconText()` function to prepend it automatically, using a clearer identifier.
|
It's also possible to use the provided `GuiIconText()` function to prefix it automatically, using a clearer identifier (defined in `raygui.h`).
|
||||||
```c
|
```c
|
||||||
if (GuiButton(rec, GuiIconText(RICON_FILE_OPEN, "Open Image"))) { /* ACTION */ }
|
if (GuiButton(rec, GuiIconText(RICON_FILE_OPEN, "Open Image"))) { /* ACTION */ }
|
||||||
```
|
```
|
||||||
|
Provided set of icons can be reviewed and customized using [rGuiIcons](https://raylibtech.itch.io/rguiicons) tool.
|
||||||
|
|
||||||
license
|
## raygui support tools
|
||||||
-------
|
|
||||||
|
- [**rGuiStyler**](https://raylibtech.itch.io/rguistyler) - A simple and easy-to-use raygui styles editor.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
- [**rGuiIcons**](https://raylibtech.itch.io/rguiicons) - A simple and easy-to-use raygui icons editor.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
- [**rGuiLayout**](https://raylibtech.itch.io/rguilayout) - A simple and easy-to-use raygui layouts editor.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## building
|
||||||
|
|
||||||
|
`raygui` is intended to be used as a portable single-file header-only library, to be directly integrated into any C/C++ codebase but some users could require a shared/dynamic version of the library, for example, to create bindings:
|
||||||
|
|
||||||
|
- **Windows (MinGW, GCC)**
|
||||||
|
```
|
||||||
|
copy src/raygui.h src/raygui.c
|
||||||
|
gcc -o src/raygui.dll src/raygui.c -shared -DRAYGUI_IMPLEMENTATION -DBUILD_LIBTYPE_SHARED -static-libgcc -lopengl32 -lgdi32 -lwinmm -Wl,--out-implib,src/librayguidll.a
|
||||||
|
```
|
||||||
|
|
||||||
|
- **Windows (MSVC)**
|
||||||
|
```
|
||||||
|
copy src\raylib.h src\raylib.c
|
||||||
|
cl /O2 /I../raylib/src/ /D_USRDLL /D_WINDLL /DRAYGUI_IMPLEMENTATION /DBUILD_LIBTYPE_SHARED src/raygui.c /LD /Feraygui.dll /link /LIBPATH ../raylib/build/raylib/Release/raylib.lib /subsystem:windows /machine:x64
|
||||||
|
```
|
||||||
|
|
||||||
|
- **Linux (GCC)**
|
||||||
|
```
|
||||||
|
mv src/raygui.h src/raygui.c
|
||||||
|
gcc -o raygui.so src/raygui.c -shared -fpic -DRAYGUI_IMPLEMENTATION -lraylib -lGL -lm -lpthread -ldl -lrt -lX11
|
||||||
|
```
|
||||||
|
|
||||||
|
- **Mac (clang, homebrew installed raylib)**
|
||||||
|
```
|
||||||
|
cp src/raygui.h src/raygui.c
|
||||||
|
brew install raylib
|
||||||
|
gcc -o raygui.dynlib src/raygui.c -shared -fpic -DRAYGUI_IMPLEMENTATION -framework OpenGL -lm -lpthread -ldl $(pkg-config --libs --cflags raylib)
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## license
|
||||||
|
|
||||||
raygui is licensed under an unmodified zlib/libpng license, which is an OSI-certified, BSD-like license that allows static linking with closed source software. Check [LICENSE](LICENSE) for further details.
|
raygui is licensed under an unmodified zlib/libpng license, which is an OSI-certified, BSD-like license that allows static linking with closed source software. Check [LICENSE](LICENSE) for further details.
|
||||||
|
|||||||
@ -319,7 +319,7 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP)
|
|||||||
ifeq ($(PLATFORM_OS),OSX)
|
ifeq ($(PLATFORM_OS),OSX)
|
||||||
# Libraries for OSX 10.9 desktop compiling
|
# Libraries for OSX 10.9 desktop compiling
|
||||||
# NOTE: Required packages: libopenal-dev libegl1-mesa-dev
|
# NOTE: Required packages: libopenal-dev libegl1-mesa-dev
|
||||||
LDLIBS = -lraylib -framework OpenGL -framework OpenAL -framework Cocoa
|
LDLIBS = -lraylib -framework OpenGL -framework Cocoa -framework IOKit -framework CoreAudio -framework CoreVideo
|
||||||
endif
|
endif
|
||||||
ifeq ($(PLATFORM_OS),BSD)
|
ifeq ($(PLATFORM_OS),BSD)
|
||||||
# Libraries for FreeBSD, OpenBSD, NetBSD, DragonFly desktop compiling
|
# Libraries for FreeBSD, OpenBSD, NetBSD, DragonFly desktop compiling
|
||||||
@ -349,11 +349,13 @@ EXAMPLES = \
|
|||||||
controls_test_suite/controls_test_suite \
|
controls_test_suite/controls_test_suite \
|
||||||
custom_file_dialog/custom_file_dialog \
|
custom_file_dialog/custom_file_dialog \
|
||||||
image_exporter/image_exporter \
|
image_exporter/image_exporter \
|
||||||
image_raw_importer/image_raw_importer \
|
image_importer_raw/image_importer_raw \
|
||||||
|
property_list/property_list \
|
||||||
portable_window/portable_window \
|
portable_window/portable_window \
|
||||||
scroll_panel/gui_scroll_panel \
|
scroll_panel/scroll_panel \
|
||||||
text_box_selection/textbox_extended_demo \
|
style_selector/style_selector \
|
||||||
text_editor/text_editor
|
custom_sliders/custom_sliders \
|
||||||
|
animation_curve/animation_curve
|
||||||
|
|
||||||
CURRENT_MAKEFILE = $(lastword $(MAKEFILE_LIST))
|
CURRENT_MAKEFILE = $(lastword $(MAKEFILE_LIST))
|
||||||
|
|
||||||
|
|||||||
480
examples/animation_curve/animation_curve.c
Normal file
@ -0,0 +1,480 @@
|
|||||||
|
/*******************************************************************************************
|
||||||
|
*
|
||||||
|
* Animation curves - An example demo for animation curves
|
||||||
|
*
|
||||||
|
* DEPENDENCIES:
|
||||||
|
* raylib 4.0 - Windowing/input management and drawing.
|
||||||
|
* raygui 3.0 - 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) 2023 Pierre Jaffuer (@smallcluster)
|
||||||
|
*
|
||||||
|
**********************************************************************************************/
|
||||||
|
|
||||||
|
#include "raylib.h"
|
||||||
|
|
||||||
|
#define RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT 24
|
||||||
|
#define RAYGUI_IMPLEMENTATION
|
||||||
|
#include "../../src/raygui.h"
|
||||||
|
|
||||||
|
// raygui embedded styles
|
||||||
|
#include "../style_selector/styles/style_cyber.h" // raygui style: cyber
|
||||||
|
#include "../style_selector/styles/style_jungle.h" // raygui style: jungle
|
||||||
|
#include "../style_selector/styles/style_lavanda.h" // raygui style: lavanda
|
||||||
|
#include "../style_selector/styles/style_dark.h" // raygui style: dark
|
||||||
|
#include "../style_selector/styles/style_bluish.h" // raygui style: bluish
|
||||||
|
#include "../style_selector/styles/style_terminal.h" // raygui style: terminal
|
||||||
|
|
||||||
|
#undef RAYGUI_IMPLEMENTATION // Avoid including raygui implementation again
|
||||||
|
|
||||||
|
#define GUI_CURVE_EDIT_IMPLEMENTATION
|
||||||
|
#include "gui_curve_edit.h"
|
||||||
|
|
||||||
|
//------------------------------------------------------------------------------------
|
||||||
|
// Helper function
|
||||||
|
//------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
void LoadDefaults(GuiCurveEditState curves[]);
|
||||||
|
|
||||||
|
//------------------------------------------------------------------------------------
|
||||||
|
// Program main entry point
|
||||||
|
//------------------------------------------------------------------------------------
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
// Initialization
|
||||||
|
//---------------------------------------------------------------------------------------
|
||||||
|
const int screenWidth = 800;
|
||||||
|
const int screenHeight = 540;
|
||||||
|
|
||||||
|
InitWindow(screenWidth, screenHeight, "Animation curves");
|
||||||
|
SetTargetFPS(60);
|
||||||
|
|
||||||
|
// Gui style
|
||||||
|
GuiLoadStyleDefault();
|
||||||
|
int visualStyleActive = 0;
|
||||||
|
int prevVisualStyleActive = 0;
|
||||||
|
|
||||||
|
float fontSize = GuiGetStyle(DEFAULT, TEXT_SIZE);
|
||||||
|
const float margin = 8;
|
||||||
|
|
||||||
|
// Gui states
|
||||||
|
Vector2 scrollOffset = (Vector2) {0,0};
|
||||||
|
Rectangle contentRect = (Rectangle) {0,0,0,0};
|
||||||
|
bool moveSlider = false;
|
||||||
|
bool sectionActive[5] = {false};
|
||||||
|
sectionActive[0] = true;
|
||||||
|
const char* sectionNames[5] = {"X Position", "Y Position", "Width", "Height", "Rotation"};
|
||||||
|
bool editValueBox[5][4] = {false};
|
||||||
|
char* valTextBox[5][4][20];
|
||||||
|
bool playAnimation = true;
|
||||||
|
bool showHelp = true;
|
||||||
|
|
||||||
|
Rectangle settingsRect = (Rectangle) {screenWidth-screenWidth/3, 0, screenWidth/3, screenHeight};
|
||||||
|
|
||||||
|
// Animation curves
|
||||||
|
// 0 -> Ball X position
|
||||||
|
// 1 -> Ball Y position
|
||||||
|
// 2 -> Ball Width
|
||||||
|
// 3 -> Ball Height
|
||||||
|
// 4 -> Ball rotation
|
||||||
|
GuiCurveEditState curves[5];
|
||||||
|
LoadDefaults(curves);
|
||||||
|
|
||||||
|
// Animation time
|
||||||
|
float time = 0.f;
|
||||||
|
float animationTime = 4.f;
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Main game loop
|
||||||
|
while (!WindowShouldClose()) // Detect window close button or ESC key
|
||||||
|
{
|
||||||
|
// Update
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
if(playAnimation)
|
||||||
|
time += GetFrameTime();
|
||||||
|
|
||||||
|
// Reset timer
|
||||||
|
if(time > animationTime)
|
||||||
|
time = 0;
|
||||||
|
|
||||||
|
// Ball animation
|
||||||
|
const float t = time / animationTime;
|
||||||
|
Vector2 ballPos = (Vector2) {EvalGuiCurve(&curves[0], t), EvalGuiCurve(&curves[1], t)};
|
||||||
|
Vector2 ballSize = (Vector2) {EvalGuiCurve(&curves[2], t), EvalGuiCurve(&curves[3], t)};
|
||||||
|
float ballRotation = EvalGuiCurve(&curves[4], t);
|
||||||
|
|
||||||
|
// Update style
|
||||||
|
if(visualStyleActive != prevVisualStyleActive){
|
||||||
|
switch (visualStyleActive)
|
||||||
|
{
|
||||||
|
case 0: GuiLoadStyleDefault(); break;
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
fontSize = GuiGetStyle(DEFAULT, TEXT_SIZE);
|
||||||
|
prevVisualStyleActive = visualStyleActive;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update settings panel rect
|
||||||
|
Rectangle sliderRect = (Rectangle) {settingsRect.x-4, settingsRect.y, 4, settingsRect.height};
|
||||||
|
if(CheckCollisionPointRec(GetMousePosition(), sliderRect) && IsMouseButtonPressed(MOUSE_BUTTON_LEFT)){
|
||||||
|
moveSlider = true;
|
||||||
|
}
|
||||||
|
if(IsMouseButtonUp(MOUSE_BUTTON_LEFT)){
|
||||||
|
moveSlider = false;
|
||||||
|
}
|
||||||
|
if(moveSlider){
|
||||||
|
settingsRect.x = GetMouseX();
|
||||||
|
// Minimum-Maximum size
|
||||||
|
if(settingsRect.x > screenWidth-4)
|
||||||
|
settingsRect.x = screenWidth-4;
|
||||||
|
else if(settingsRect.x < 4) // width of the slider
|
||||||
|
settingsRect.x = 4;
|
||||||
|
settingsRect.width = screenWidth-settingsRect.x;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Draw
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
BeginDrawing();
|
||||||
|
ClearBackground(GetColor( GuiGetStyle(DEFAULT, BACKGROUND_COLOR)));
|
||||||
|
|
||||||
|
// Scene
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// sky
|
||||||
|
DrawRectangle(curves[0].start, curves[1].end, curves[0].end-curves[0].start, curves[1].start-curves[1].end, BLUE);
|
||||||
|
|
||||||
|
// ground
|
||||||
|
DrawRectangle(curves[0].start, curves[1].start, curves[0].end-curves[0].start, 32, DARKGREEN);
|
||||||
|
|
||||||
|
BeginScissorMode(curves[0].start, curves[1].end, curves[0].end-curves[0].start, curves[1].start-curves[1].end+32);
|
||||||
|
// Draw ball
|
||||||
|
DrawRectanglePro((Rectangle){ballPos.x, ballPos.y, ballSize.x, ballSize.y}, (Vector2){ballSize.x/2.f,ballSize.y/2.f}, ballRotation, PINK);
|
||||||
|
// Local origin
|
||||||
|
DrawLine(ballPos.x, ballPos.y, ballPos.x + cosf(ballRotation*DEG2RAD)*ballSize.x, ballPos.y +sinf(ballRotation*DEG2RAD)*ballSize.y, RED);
|
||||||
|
DrawLine(ballPos.x, ballPos.y, ballPos.x + cosf((ballRotation+90)*DEG2RAD)*ballSize.x, ballPos.y +sinf((ballRotation+90)*DEG2RAD)*ballSize.y, GREEN);
|
||||||
|
EndScissorMode();
|
||||||
|
|
||||||
|
// Bounds
|
||||||
|
DrawRectangleLines(curves[0].start, curves[1].end, curves[0].end-curves[0].start, curves[1].start-curves[1].end+32, GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_NORMAL)));
|
||||||
|
|
||||||
|
// GUI
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Help window
|
||||||
|
if(showHelp){
|
||||||
|
if(GuiWindowBox((Rectangle) {margin, margin, settingsRect.x-2*margin, curves[1].end-2*margin}, "help")){
|
||||||
|
showHelp = false;
|
||||||
|
}
|
||||||
|
Rectangle helpTextRect = (Rectangle) {2*margin, 2*margin+RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT, settingsRect.x-4-4*margin, 0};
|
||||||
|
GuiLabel((Rectangle) {helpTextRect.x, helpTextRect.y+helpTextRect.height, helpTextRect.width, fontSize}, "Curve widget controls:");
|
||||||
|
helpTextRect.height += fontSize+margin;
|
||||||
|
GuiLabel((Rectangle) {helpTextRect.x, helpTextRect.y+helpTextRect.height, helpTextRect.width, fontSize}, "- Left click to move/add point or move tangents");
|
||||||
|
helpTextRect.height += fontSize+margin/2;
|
||||||
|
GuiLabel((Rectangle) {helpTextRect.x, helpTextRect.y+helpTextRect.height, helpTextRect.width, fontSize}, "- While moving a tangent, hold SHIFT to disable tangent symetry");
|
||||||
|
helpTextRect.height += fontSize+margin/2;
|
||||||
|
GuiLabel((Rectangle) {helpTextRect.x, helpTextRect.y+helpTextRect.height, helpTextRect.width, fontSize}, "- Right click to remove a point");
|
||||||
|
helpTextRect.height += fontSize+margin/2;
|
||||||
|
DrawRectangleGradientV(margin, margin+curves[1].end-2*margin, settingsRect.x-2*margin, 12, (Color){0,0,0,100}, BLANK);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Settings panel
|
||||||
|
GuiScrollPanel(settingsRect, "Settings", contentRect, &scrollOffset);
|
||||||
|
// Clip rendering
|
||||||
|
BeginScissorMode(settingsRect.x, settingsRect.y+RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT, settingsRect.width, settingsRect.height);
|
||||||
|
// Rebuild the content Rect
|
||||||
|
contentRect = (Rectangle) {settingsRect.x+margin, RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT+margin, settingsRect.width-2*margin-GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH), 0};
|
||||||
|
|
||||||
|
// Help button
|
||||||
|
if(GuiButton((Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width, 1.5*fontSize}, GuiIconText(showHelp ? ICON_EYE_ON : ICON_EYE_OFF, "Curve controls help"))){
|
||||||
|
showHelp = !showHelp;
|
||||||
|
}
|
||||||
|
contentRect.height += 1.5*fontSize + margin;
|
||||||
|
|
||||||
|
// Animation Time slider
|
||||||
|
animationTime = GuiSlider((Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width/2, fontSize}, NULL, TextFormat("Animation Time: %.2fs", animationTime), animationTime, 1, 8);
|
||||||
|
contentRect.height += fontSize + margin;
|
||||||
|
|
||||||
|
// Load default curves
|
||||||
|
if(GuiButton((Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width, 1.5*fontSize}, "Load default")){
|
||||||
|
LoadDefaults(curves);
|
||||||
|
animationTime = 4.f;
|
||||||
|
time = 0.f;
|
||||||
|
}
|
||||||
|
contentRect.height += 1.5*fontSize + margin;
|
||||||
|
|
||||||
|
// Styles
|
||||||
|
GuiLabel((Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width, fontSize}, "Style:");
|
||||||
|
contentRect.height += fontSize;
|
||||||
|
visualStyleActive = GuiComboBox((Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width, 1.5*fontSize}, "default;Jungle;Lavanda;Dark;Bluish;Cyber;Terminal", visualStyleActive);
|
||||||
|
contentRect.height += 1.5*fontSize + margin;
|
||||||
|
|
||||||
|
// Draw curves with their controls
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
for(int i=0; i < 5; i++){
|
||||||
|
// Collapsing section
|
||||||
|
Rectangle headerRect = (Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width, 1.5*fontSize};
|
||||||
|
GuiStatusBar(headerRect, NULL);
|
||||||
|
if(GuiLabelButton(headerRect, GuiIconText(sectionActive[i] ? ICON_ARROW_DOWN_FILL : ICON_ARROW_RIGHT_FILL, sectionNames[i]))){
|
||||||
|
sectionActive[i] = !sectionActive[i];
|
||||||
|
}
|
||||||
|
contentRect.height += 1.5*fontSize + margin;
|
||||||
|
|
||||||
|
// Skip this section
|
||||||
|
if(!sectionActive[i])
|
||||||
|
continue;
|
||||||
|
|
||||||
|
// Draw curve control
|
||||||
|
Rectangle curveRect = (Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width, fontSize*12};
|
||||||
|
EndScissorMode(); // Stop clipping from setting rect
|
||||||
|
// Curves can leaks from control boundary... scissor it !
|
||||||
|
BeginScissorMode(curveRect.x, curveRect.y, curveRect.width, curveRect.height);
|
||||||
|
GuiCurveEdit(&curves[i],curveRect);
|
||||||
|
EndScissorMode();
|
||||||
|
// Resume clipping from setting rect
|
||||||
|
BeginScissorMode(settingsRect.x, settingsRect.y+RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT, settingsRect.width, settingsRect.height);
|
||||||
|
contentRect.height += fontSize*12 + margin;
|
||||||
|
|
||||||
|
// Draw selected point controls
|
||||||
|
GuiCurveEditPoint* p = &(curves[i].points[curves[i].selectedIndex]);
|
||||||
|
p->leftLinear = GuiCheckBox((Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, 1.5*fontSize, 1.5*fontSize}, "Left Linear", p->leftLinear);
|
||||||
|
p->rightLinear = GuiCheckBox((Rectangle){contentRect.x+contentRect.width/2, contentRect.y+contentRect.height+scrollOffset.y, 1.5*fontSize, 1.5*fontSize}, "Right Linear", p->rightLinear);
|
||||||
|
contentRect.height += 1.5*fontSize + margin;
|
||||||
|
|
||||||
|
// Positions
|
||||||
|
GuiLabel((Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width, fontSize}, "Position");
|
||||||
|
contentRect.height += fontSize;
|
||||||
|
|
||||||
|
if(!editValueBox[i][0]){
|
||||||
|
// transform x position to string
|
||||||
|
gcvt(p->position.x, 6, valTextBox[i][0]);
|
||||||
|
}
|
||||||
|
if(!editValueBox[i][1]){
|
||||||
|
// transform y position to string
|
||||||
|
gcvt(curves[i].start + (curves[i].end-curves[i].start) * p->position.y, 6, valTextBox[i][1]);
|
||||||
|
}
|
||||||
|
|
||||||
|
// X pos
|
||||||
|
if(GuiTextBox((Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width/2-margin, 1.5*fontSize}, valTextBox[i][0], 20, editValueBox[i][0])){
|
||||||
|
editValueBox[i][0] = !editValueBox[i][0];
|
||||||
|
// input ended
|
||||||
|
if(!editValueBox[i][0]){
|
||||||
|
// Try to convert text to float and assign it to the point
|
||||||
|
char * endPtr;
|
||||||
|
double value = strtod( (char *) valTextBox[i][0], &endPtr);
|
||||||
|
if ( endPtr != (char *) valTextBox[i][0] ) {
|
||||||
|
p->position.x = value < 0 ? 0 : value > 1 ? 1 : value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Y pos
|
||||||
|
if(GuiTextBox((Rectangle){contentRect.x+contentRect.width/2, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width/2, 1.5*fontSize}, valTextBox[i][1], 20, editValueBox[i][1])){
|
||||||
|
editValueBox[i][1] = !editValueBox[i][1];
|
||||||
|
|
||||||
|
// input ended
|
||||||
|
if(!editValueBox[i][1]){
|
||||||
|
// Try to convert text to float and assign it to the point
|
||||||
|
char * endPtr;
|
||||||
|
double value = strtod( (char *)valTextBox[i][1], &endPtr);
|
||||||
|
if ( endPtr != (char *) valTextBox[i][1] ) {
|
||||||
|
float normalizedVal = (value-curves[i].start) / (curves[i].end-curves[i].start);
|
||||||
|
p->position.y = normalizedVal < 0 ? 0 : normalizedVal > 1 ? 1 : normalizedVal;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
contentRect.height += 1.5*fontSize + margin;
|
||||||
|
|
||||||
|
// Tangents
|
||||||
|
GuiLabel((Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width, fontSize}, "Tangents");
|
||||||
|
contentRect.height += fontSize;
|
||||||
|
|
||||||
|
if(!editValueBox[i][2]){
|
||||||
|
// transform left tangent to string
|
||||||
|
gcvt(p->tangents.x, 6, valTextBox[i][2]);
|
||||||
|
}
|
||||||
|
if(!editValueBox[i][3]){
|
||||||
|
// transform right tangent to string
|
||||||
|
gcvt(p->tangents.y, 6, valTextBox[i][3]);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Left tan
|
||||||
|
if(GuiTextBox((Rectangle){contentRect.x, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width/2-margin, 1.5*fontSize}, valTextBox[i][2], 20, editValueBox[i][2])){
|
||||||
|
editValueBox[i][2] = !editValueBox[i][2];
|
||||||
|
// input ended
|
||||||
|
if(!editValueBox[i][2]){
|
||||||
|
// Try to convert text to float and assign it to the point
|
||||||
|
char * endPtr;
|
||||||
|
double value = strtod( (char *) valTextBox[i][2], &endPtr);
|
||||||
|
if ( endPtr != (char *) valTextBox[i][2] ) {
|
||||||
|
p->tangents.x = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Right tan
|
||||||
|
if(GuiTextBox((Rectangle){contentRect.x+contentRect.width/2, contentRect.y+contentRect.height+scrollOffset.y, contentRect.width/2, 1.5*fontSize}, valTextBox[i][3], 20, editValueBox[i][3])){
|
||||||
|
editValueBox[i][3] = !editValueBox[i][3];
|
||||||
|
// input ended
|
||||||
|
if(!editValueBox[i][3]){
|
||||||
|
// Try to convert text to float and assign it to the point
|
||||||
|
char * endPtr;
|
||||||
|
double value = strtod( (char *) valTextBox[i][3], &endPtr);
|
||||||
|
if ( endPtr != (char *) valTextBox[i][3] ) {
|
||||||
|
p->tangents.y = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
contentRect.height += 1.5*fontSize + margin;
|
||||||
|
|
||||||
|
}
|
||||||
|
contentRect.height += margin;
|
||||||
|
EndScissorMode();
|
||||||
|
|
||||||
|
// Settings panel shadow
|
||||||
|
DrawRectangleGradientH(settingsRect.x-12, 0, 12, settingsRect.height, BLANK, (Color){0,0,0,100});
|
||||||
|
|
||||||
|
// Slider
|
||||||
|
if(moveSlider){
|
||||||
|
DrawRectangle(sliderRect.x, sliderRect.y, sliderRect.width, sliderRect.height, GetColor(GuiGetStyle(DEFAULT, BASE_COLOR_PRESSED)));
|
||||||
|
}else if(CheckCollisionPointRec(GetMousePosition(), sliderRect)){
|
||||||
|
DrawRectangle(sliderRect.x, sliderRect.y, sliderRect.width, sliderRect.height, GetColor(GuiGetStyle(DEFAULT, BASE_COLOR_FOCUSED)));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Draw Time controls
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
Rectangle timeLineRect = (Rectangle) {0, screenHeight-4*fontSize, settingsRect.x, 4*fontSize};
|
||||||
|
GuiPanel((Rectangle) { timeLineRect.x, timeLineRect.y, timeLineRect.width, 2*fontSize}, NULL);
|
||||||
|
GuiLabel((Rectangle) { timeLineRect.x, timeLineRect.y, timeLineRect.width, 2*fontSize}, TextFormat("Normalized Time: %.3f", time / animationTime));
|
||||||
|
if(GuiButton((Rectangle) { timeLineRect.x+timeLineRect.width/2-2*fontSize-margin/4, timeLineRect.y, 2*fontSize, 2*fontSize}, GuiIconText(playAnimation ? ICON_PLAYER_PAUSE : ICON_PLAYER_PLAY, ""))){
|
||||||
|
playAnimation = !playAnimation;
|
||||||
|
}
|
||||||
|
if(GuiButton((Rectangle) { timeLineRect.x+timeLineRect.width/2+margin/4, timeLineRect.y, 2*fontSize, 2*fontSize}, GuiIconText(ICON_PLAYER_STOP, ""))){
|
||||||
|
playAnimation = false;
|
||||||
|
time = 0;
|
||||||
|
}
|
||||||
|
time = animationTime * GuiSlider((Rectangle){timeLineRect.x, timeLineRect.y+2*fontSize, timeLineRect.width, timeLineRect.height-2*fontSize}, NULL, NULL, time / animationTime, 0, 1);
|
||||||
|
|
||||||
|
// Time panel shadow
|
||||||
|
DrawRectangleGradientV(timeLineRect.x, timeLineRect.y-12, timeLineRect.width, 12, BLANK, (Color){0,0,0,100});
|
||||||
|
|
||||||
|
|
||||||
|
EndDrawing();
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
}
|
||||||
|
|
||||||
|
CloseWindow(); // Close window and OpenGL context
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void LoadDefaults(GuiCurveEditState curves[]){
|
||||||
|
// X pos
|
||||||
|
curves[0].start = 28;
|
||||||
|
curves[0].end = 506;
|
||||||
|
curves[0].numPoints = 4;
|
||||||
|
curves[0].selectedIndex = 0;
|
||||||
|
curves[0].editLeftTangent = false;
|
||||||
|
curves[0].editRightTangent = false;
|
||||||
|
curves[0].points[0].position =(Vector2) {0.000000, 0.000000}; curves[0].points[0].tangents = (Vector2) {0.000000, 1.515101}; curves[0].points[0].leftLinear = 1;curves[0].points[0].rightLinear = 1;
|
||||||
|
curves[0].points[1].position =(Vector2) {0.422414, 0.640000}; curves[0].points[1].tangents = (Vector2) {-2.824348, -4.494999};curves[0].points[1].leftLinear = 0;curves[0].points[1].rightLinear = 0;
|
||||||
|
curves[0].points[2].position =(Vector2) {0.732759, 0.210000}; curves[0].points[2].tangents = (Vector2) {0.000000, 2.956133}; curves[0].points[2].leftLinear = 0;curves[0].points[2].rightLinear = 1;
|
||||||
|
curves[0].points[3].position =(Vector2) {1.000000, 1.000000}; curves[0].points[3].tangents = (Vector2) {2.956133, 0.000000}; curves[0].points[3].leftLinear = 1;curves[0].points[3].rightLinear = 1;
|
||||||
|
|
||||||
|
// Y pos
|
||||||
|
curves[1].start = 405;
|
||||||
|
curves[1].end = 135;
|
||||||
|
curves[1].numPoints = 7;
|
||||||
|
curves[1].selectedIndex = 0;
|
||||||
|
curves[1].editLeftTangent = false;
|
||||||
|
curves[1].editRightTangent = false;
|
||||||
|
curves[1].points[0].position = (Vector2) {0.000000, 1.000000};curves[1].points[0].tangents = (Vector2) { 0.000000 , 0.000000};curves[1].points[0].leftLinear = 0;curves[1].points[0].rightLinear = 0;
|
||||||
|
curves[1].points[1].position = (Vector2) {0.140000, 0.000000};curves[1].points[1].tangents = (Vector2) {-10.000000 ,10.000000};curves[1].points[1].leftLinear = 0;curves[1].points[1].rightLinear = 0;
|
||||||
|
curves[1].points[2].position = (Vector2) {0.450000, 0.000000};curves[1].points[2].tangents = (Vector2) {-10.000000 ,10.000000};curves[1].points[2].leftLinear = 0;curves[1].points[2].rightLinear = 0;
|
||||||
|
curves[1].points[3].position = (Vector2) {0.670000, 0.000000};curves[1].points[3].tangents = (Vector2) {-10.000000 ,10.000000};curves[1].points[3].leftLinear = 0;curves[1].points[3].rightLinear = 0;
|
||||||
|
curves[1].points[4].position = (Vector2) {0.830000, 0.000000};curves[1].points[4].tangents = (Vector2) {-10.000000 ,10.000000};curves[1].points[4].leftLinear = 0;curves[1].points[4].rightLinear = 0;
|
||||||
|
curves[1].points[5].position = (Vector2) {0.940000, 0.000000};curves[1].points[5].tangents = (Vector2) {-10.000000 ,10.000000};curves[1].points[5].leftLinear = 0;curves[1].points[5].rightLinear = 0;
|
||||||
|
curves[1].points[6].position = (Vector2) {1.000000, 0.000000};curves[1].points[6].tangents = (Vector2) {-10.000000 , 0.000000};curves[1].points[6].leftLinear = 0;curves[1].points[6].rightLinear = 0;
|
||||||
|
|
||||||
|
// X size
|
||||||
|
curves[2].start = 1;
|
||||||
|
curves[2].end = 64;
|
||||||
|
curves[2].numPoints = 16;
|
||||||
|
curves[2].selectedIndex = 0;
|
||||||
|
curves[2].editLeftTangent = false;
|
||||||
|
curves[2].editRightTangent = false;
|
||||||
|
curves[2].points[0].position = (Vector2) {0.000000, 0.492063}; curves[2].points[0].tangents = (Vector2) {0,0}; curves[2].points[0].leftLinear = 0; curves[2].points[0].rightLinear = 0;
|
||||||
|
curves[2].points[1].position = (Vector2) {0.130000, 0.492063}; curves[2].points[1].tangents = (Vector2) {0,0}; curves[2].points[1].leftLinear = 0; curves[2].points[1].rightLinear = 0;
|
||||||
|
curves[2].points[2].position = (Vector2) {0.140000, 0.746032}; curves[2].points[2].tangents = (Vector2) {0,0}; curves[2].points[2].leftLinear = 0; curves[2].points[2].rightLinear = 0;
|
||||||
|
curves[2].points[3].position = (Vector2) {0.150000, 0.492063}; curves[2].points[3].tangents = (Vector2) {0,0}; curves[2].points[3].leftLinear = 0; curves[2].points[3].rightLinear = 0;
|
||||||
|
curves[2].points[4].position = (Vector2) {0.440000, 0.490000}; curves[2].points[4].tangents = (Vector2) {0,0}; curves[2].points[4].leftLinear = 0; curves[2].points[4].rightLinear = 0;
|
||||||
|
curves[2].points[5].position = (Vector2) {0.450000, 0.682540}; curves[2].points[5].tangents = (Vector2) {0,0}; curves[2].points[5].leftLinear = 0; curves[2].points[5].rightLinear = 0;
|
||||||
|
curves[2].points[6].position = (Vector2) {0.460000, 0.480000}; curves[2].points[6].tangents = (Vector2) {0,0}; curves[2].points[6].leftLinear = 0; curves[2].points[6].rightLinear = 0;
|
||||||
|
curves[2].points[7].position = (Vector2) {0.660000, 0.492063}; curves[2].points[7].tangents = (Vector2) {0,0}; curves[2].points[7].leftLinear = 0; curves[2].points[7].rightLinear = 0;
|
||||||
|
curves[2].points[8].position = (Vector2) {0.670000, 0.619048}; curves[2].points[8].tangents = (Vector2) {0,0}; curves[2].points[8].leftLinear = 0; curves[2].points[8].rightLinear = 0;
|
||||||
|
curves[2].points[9].position = (Vector2) {0.680000, 0.492063}; curves[2].points[9].tangents = (Vector2) {0,0}; curves[2].points[9].leftLinear = 0; curves[2].points[9].rightLinear = 0;
|
||||||
|
curves[2].points[10].position = (Vector2) {0.820000, 0.492063}; curves[2].points[10].tangents = (Vector2) {0,0}; curves[2].points[10].leftLinear = 0; curves[2].points[10].rightLinear = 0;
|
||||||
|
curves[2].points[11].position = (Vector2) {0.830000, 0.619048}; curves[2].points[11].tangents = (Vector2) {0,0}; curves[2].points[11].leftLinear = 0; curves[2].points[11].rightLinear = 0;
|
||||||
|
curves[2].points[12].position = (Vector2) {0.840000, 0.492063}; curves[2].points[12].tangents = (Vector2) {0,0}; curves[2].points[12].leftLinear = 0; curves[2].points[12].rightLinear = 0;
|
||||||
|
curves[2].points[13].position = (Vector2) {0.930000, 0.492063}; curves[2].points[13].tangents = (Vector2) {0,0}; curves[2].points[13].leftLinear = 0; curves[2].points[13].rightLinear = 0;
|
||||||
|
curves[2].points[14].position = (Vector2) {0.940000, 0.619048}; curves[2].points[14].tangents = (Vector2) {0,0}; curves[2].points[14].leftLinear = 0; curves[2].points[14].rightLinear = 0;
|
||||||
|
curves[2].points[15].position = (Vector2) {0.950000, 0.492063}; curves[2].points[15].tangents = (Vector2) {0,0}; curves[2].points[15].leftLinear = 0; curves[2].points[15].rightLinear = 0;
|
||||||
|
|
||||||
|
// Y Size
|
||||||
|
curves[3].start = 1;
|
||||||
|
curves[3].end = 64;
|
||||||
|
curves[3].numPoints = 16;
|
||||||
|
curves[3].selectedIndex = 0;
|
||||||
|
curves[3].editLeftTangent = false;
|
||||||
|
curves[3].editRightTangent = false;
|
||||||
|
curves[3].points[0].position = (Vector2) {0.000000, 0.492063};curves[3].points[0].tangents = (Vector2) {0,0};curves[3].points[0].leftLinear = 0;curves[3].points[0].rightLinear = 0;
|
||||||
|
curves[3].points[1].position = (Vector2) {0.130000, 0.492063};curves[3].points[1].tangents = (Vector2) {0,0};curves[3].points[1].leftLinear = 0;curves[3].points[1].rightLinear = 0;
|
||||||
|
curves[3].points[2].position = (Vector2) {0.140000, 0.238095};curves[3].points[2].tangents = (Vector2) {0,0};curves[3].points[2].leftLinear = 0;curves[3].points[2].rightLinear = 0;
|
||||||
|
curves[3].points[3].position = (Vector2) {0.150000, 0.492063};curves[3].points[3].tangents = (Vector2) {0,0};curves[3].points[3].leftLinear = 0;curves[3].points[3].rightLinear = 0;
|
||||||
|
curves[3].points[4].position = (Vector2) {0.440000, 0.492063};curves[3].points[4].tangents = (Vector2) {0,0};curves[3].points[4].leftLinear = 0;curves[3].points[4].rightLinear = 0;
|
||||||
|
curves[3].points[5].position = (Vector2) {0.450000, 0.301587};curves[3].points[5].tangents = (Vector2) {0,0};curves[3].points[5].leftLinear = 0;curves[3].points[5].rightLinear = 0;
|
||||||
|
curves[3].points[6].position = (Vector2) {0.460000, 0.492063};curves[3].points[6].tangents = (Vector2) {0,0};curves[3].points[6].leftLinear = 0;curves[3].points[6].rightLinear = 0;
|
||||||
|
curves[3].points[7].position = (Vector2) {0.660000, 0.492063};curves[3].points[7].tangents = (Vector2) {0,0};curves[3].points[7].leftLinear = 0;curves[3].points[7].rightLinear = 0;
|
||||||
|
curves[3].points[8].position = (Vector2) {0.670000, 0.365079};curves[3].points[8].tangents = (Vector2) {0,0};curves[3].points[8].leftLinear = 0;curves[3].points[8].rightLinear = 0;
|
||||||
|
curves[3].points[9].position = (Vector2) {0.680000, 0.492063};curves[3].points[9].tangents = (Vector2) {0,0};curves[3].points[9].leftLinear = 0;curves[3].points[9].rightLinear = 0;
|
||||||
|
curves[3].points[10].position = (Vector2) {0.820000, 0.492063};curves[3].points[10].tangents = (Vector2) {0,0};curves[3].points[10].leftLinear = 0;curves[3].points[10].rightLinear = 0;
|
||||||
|
curves[3].points[11].position = (Vector2) {0.830000, 0.365079};curves[3].points[11].tangents = (Vector2) {0,0};curves[3].points[11].leftLinear = 0;curves[3].points[11].rightLinear = 0;
|
||||||
|
curves[3].points[12].position = (Vector2) {0.840000, 0.492063};curves[3].points[12].tangents = (Vector2) {0,0};curves[3].points[12].leftLinear = 0;curves[3].points[12].rightLinear = 0;
|
||||||
|
curves[3].points[13].position = (Vector2) {0.930000, 0.492063};curves[3].points[13].tangents = (Vector2) {0,0};curves[3].points[13].leftLinear = 0;curves[3].points[13].rightLinear = 0;
|
||||||
|
curves[3].points[14].position = (Vector2) {0.940000, 0.365079};curves[3].points[14].tangents = (Vector2) {0,0};curves[3].points[14].leftLinear = 0;curves[3].points[14].rightLinear = 0;
|
||||||
|
curves[3].points[15].position = (Vector2) {0.950000, 0.507937};curves[3].points[15].tangents = (Vector2) {0,0};curves[3].points[15].leftLinear = 0;curves[3].points[15].rightLinear = 0;
|
||||||
|
|
||||||
|
// Rotation
|
||||||
|
|
||||||
|
curves[4].start = -360;
|
||||||
|
curves[4].end = 360;
|
||||||
|
curves[4].numPoints = 9;
|
||||||
|
curves[4].selectedIndex = 0;
|
||||||
|
curves[4].editLeftTangent = false;
|
||||||
|
curves[4].editRightTangent = false;
|
||||||
|
curves[4].points[0].position = (Vector2) {0.140000, 0.500000};curves[4].points[0].tangents = (Vector2) {0,0};curves[4].points[0].leftLinear = 0;curves[4].points[0].rightLinear = 0;
|
||||||
|
curves[4].points[1].position = (Vector2) {0.450000, 0.500000};curves[4].points[1].tangents = (Vector2) {0,0};curves[4].points[1].leftLinear = 0;curves[4].points[1].rightLinear = 0;
|
||||||
|
curves[4].points[2].position = (Vector2) {0.670000, 0.500000};curves[4].points[2].tangents = (Vector2) {0,0};curves[4].points[2].leftLinear = 0;curves[4].points[2].rightLinear = 0;
|
||||||
|
curves[4].points[3].position = (Vector2) {0.830000, 0.500000};curves[4].points[3].tangents = (Vector2) {0,0};curves[4].points[3].leftLinear = 0;curves[4].points[3].rightLinear = 0;
|
||||||
|
curves[4].points[4].position = (Vector2) {0.940000, 0.500000};curves[4].points[4].tangents = (Vector2) {0,0};curves[4].points[4].leftLinear = 0;curves[4].points[4].rightLinear = 0;
|
||||||
|
curves[4].points[5].position = (Vector2) {1.000000, 0.500000};curves[4].points[5].tangents = (Vector2) {0,0};curves[4].points[5].leftLinear = 0;curves[4].points[5].rightLinear = 0;
|
||||||
|
curves[4].points[6].position = (Vector2) {0.000000, 0.472222};curves[4].points[6].tangents = (Vector2) {0,0};curves[4].points[6].leftLinear = 0;curves[4].points[6].rightLinear = 0;
|
||||||
|
curves[4].points[7].position = (Vector2) {0.302752, 0.527778};curves[4].points[7].tangents = (Vector2) {0,0};curves[4].points[7].leftLinear = 0;curves[4].points[7].rightLinear = 0;
|
||||||
|
curves[4].points[8].position = (Vector2) {0.577982, 0.472222};curves[4].points[8].tangents = (Vector2) {0,0};curves[4].points[8].leftLinear = 0;curves[4].points[8].rightLinear = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
517
examples/animation_curve/gui_curve_edit.h
Normal file
@ -0,0 +1,517 @@
|
|||||||
|
/*******************************************************************************************
|
||||||
|
*
|
||||||
|
* CurveEdit v1.0 - A cubic Hermite editor for making animation curves
|
||||||
|
*
|
||||||
|
* MODULE USAGE:
|
||||||
|
* #define GUI_CURVE_EDIT_IMPLEMENTATION
|
||||||
|
* #include "gui_curve_edit.h"
|
||||||
|
*
|
||||||
|
* INIT: GuiCurveEditState state = InitCurveEdit();
|
||||||
|
* EVALUATE: float y = EvalGuiCurve(&state, t); // 0 <= t <= 1
|
||||||
|
* DRAW: BeginScissorMode(bounds.x,bounds.y,bounds.width,bounds.height);
|
||||||
|
* GuiCurveEdit(&state, bounds, pointSize);
|
||||||
|
* EndScissorMode();
|
||||||
|
*
|
||||||
|
* NOTE: See 'Module Structures Declaration' section for more informations.
|
||||||
|
*
|
||||||
|
* NOTE: This module uses functions of the stdlib:
|
||||||
|
* - qsort
|
||||||
|
*
|
||||||
|
* NOTE: Built-in interactions:
|
||||||
|
* - Left click to move/add point or move tangents
|
||||||
|
* - While moving a tangent, hold (left/right) SHIFT to disable tangent symetry
|
||||||
|
* - Right click to remove a point
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* LICENSE: zlib/libpng
|
||||||
|
*
|
||||||
|
* Copyright (c) 2023 Pierre Jaffuer (@smallcluster)
|
||||||
|
*
|
||||||
|
* This software is provided "as-is", without any express or implied warranty. In no event
|
||||||
|
* will the authors be held liable for any damages arising from the use of this software.
|
||||||
|
*
|
||||||
|
* Permission is granted to anyone to use this software for any purpose, including commercial
|
||||||
|
* applications, and to alter it and redistribute it freely, subject to the following restrictions:
|
||||||
|
*
|
||||||
|
* 1. The origin of this software must not be misrepresented; you must not claim that you
|
||||||
|
* wrote the original software. If you use this software in a product, an acknowledgment
|
||||||
|
* in the product documentation would be appreciated but is not required.
|
||||||
|
*
|
||||||
|
* 2. Altered source versions must be plainly marked as such, and must not be misrepresented
|
||||||
|
* as being the original software.
|
||||||
|
*
|
||||||
|
* 3. This notice may not be removed or altered from any source distribution.
|
||||||
|
*
|
||||||
|
**********************************************************************************************/
|
||||||
|
|
||||||
|
#include "raylib.h"
|
||||||
|
|
||||||
|
#ifndef GUI_CURVE_EDIT_H
|
||||||
|
#define GUI_CURVE_EDIT_H
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef GUI_CURVE_EDIT_MAX_POINTS
|
||||||
|
#define GUI_CURVE_EDIT_MAX_POINTS 30
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// Module Structures Declaration
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
Vector2 position = (Vector2) {0,0}; // In normalized space [0.f, 1.f]
|
||||||
|
Vector2 tangents = (Vector2) {0,0}; // The derivatives (left/right) of the 1D curve
|
||||||
|
// Let the curve editor calculate tangents to linearize part of the curve
|
||||||
|
bool leftLinear = false;
|
||||||
|
bool rightLinear = false;
|
||||||
|
} GuiCurveEditPoint;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
float start = 0; // Value at y = 0
|
||||||
|
float end = 1; // Value at y = 1
|
||||||
|
// Always valid (unless you manualy change state's point array)
|
||||||
|
int selectedIndex = -1; // -1 before Init
|
||||||
|
// Unsorted array with at least one point (constant curve)
|
||||||
|
GuiCurveEditPoint points[GUI_CURVE_EDIT_MAX_POINTS];
|
||||||
|
int numPoints = 0;
|
||||||
|
|
||||||
|
// private part
|
||||||
|
bool editLeftTangent = false;
|
||||||
|
bool editRightTangent = false;
|
||||||
|
Vector2 mouseOffset = (Vector2) {0,0};
|
||||||
|
} GuiCurveEditState;
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" { // Prevents name mangling of functions
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// Module Functions Declaration
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Initialize state
|
||||||
|
GuiCurveEditState InitGuiCurveEdit();
|
||||||
|
// Draw and update curve control
|
||||||
|
void GuiCurveEdit(GuiCurveEditState *state, Rectangle bounds);
|
||||||
|
|
||||||
|
// 1D Interpolation
|
||||||
|
// Returns the y value (in [start, end]) of the curve at x = t
|
||||||
|
// t must be normalized [0.f, 1.f]
|
||||||
|
float EvalGuiCurve(GuiCurveEditState *state, float t);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif // GUI_CURVE_EDIT_H
|
||||||
|
|
||||||
|
/***********************************************************************************
|
||||||
|
*
|
||||||
|
* GUI_CURVE_EDIT IMPLEMENTATION
|
||||||
|
*
|
||||||
|
************************************************************************************/
|
||||||
|
#if defined(GUI_CURVE_EDIT_IMPLEMENTATION)
|
||||||
|
|
||||||
|
#include "../../src/raygui.h" // Change this to fit your project
|
||||||
|
|
||||||
|
#include "stdlib.h" // Required for qsort
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// Module Functions Definition
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
GuiCurveEditState InitGuiCurveEdit()
|
||||||
|
{
|
||||||
|
GuiCurveEditState state;
|
||||||
|
|
||||||
|
state.start = 0;
|
||||||
|
state.end = 1;
|
||||||
|
state.selectedIndex = 0;
|
||||||
|
state.editLeftTangent = false;
|
||||||
|
state.editRightTangent = false;
|
||||||
|
state.mouseOffset = (Vector2) {0.f,0.f};
|
||||||
|
|
||||||
|
// At least one point (AVG by default)
|
||||||
|
state.numPoints = 1;
|
||||||
|
state.points[0].position = (Vector2) {0.5f,0.5f};
|
||||||
|
state.points[0].tangents = (Vector2) {0.f,0.f};
|
||||||
|
state.points[0].leftLinear = false;
|
||||||
|
state.points[0].rightLinear = false;
|
||||||
|
|
||||||
|
return state;
|
||||||
|
}
|
||||||
|
|
||||||
|
int CompareGuiCurveEditPointPtr (const void * a, const void * b)
|
||||||
|
{
|
||||||
|
float fa = (*(GuiCurveEditPoint**)a)->position.x;
|
||||||
|
float fb = (*(GuiCurveEditPoint**)b)->position.x;
|
||||||
|
return (fa > fb) - (fa < fb);
|
||||||
|
}
|
||||||
|
|
||||||
|
float EvalGuiCurve(GuiCurveEditState *state, float t){
|
||||||
|
|
||||||
|
// Sort points
|
||||||
|
GuiCurveEditPoint* sortedPoints[GUI_CURVE_EDIT_MAX_POINTS];
|
||||||
|
for(int i=0; i < state->numPoints; i++){
|
||||||
|
sortedPoints[i] = &state->points[i];
|
||||||
|
}
|
||||||
|
qsort(sortedPoints, state->numPoints, sizeof(GuiCurveEditPoint*), CompareGuiCurveEditPointPtr);
|
||||||
|
|
||||||
|
if(state->numPoints == 0)
|
||||||
|
return state->start;
|
||||||
|
|
||||||
|
// Constants part on edges
|
||||||
|
if(t <= sortedPoints[0]->position.x)
|
||||||
|
return state->start + (state->end-state->start) * sortedPoints[0]->position.y;
|
||||||
|
if(t >= sortedPoints[state->numPoints-1]->position.x)
|
||||||
|
return state->start + (state->end-state->start) * sortedPoints[state->numPoints-1]->position.y;
|
||||||
|
|
||||||
|
// Find curve portion
|
||||||
|
for(int i=0; i < state->numPoints-1; i++){
|
||||||
|
const GuiCurveEditPoint* p1 = sortedPoints[i];
|
||||||
|
const GuiCurveEditPoint* p2 = sortedPoints[i+1];
|
||||||
|
// Skip this range
|
||||||
|
if(!(t >= p1->position.x && t < p2->position.x) || p1->position.x == p2->position.x)
|
||||||
|
continue;
|
||||||
|
float scale = (p2->position.x-p1->position.x);
|
||||||
|
float T = (t-p1->position.x)/scale;
|
||||||
|
float startTangent = scale * p1->tangents.y;
|
||||||
|
float endTangent = scale * p2->tangents.x;
|
||||||
|
float T2 = T*T;
|
||||||
|
float T3 = T*T*T;
|
||||||
|
return state->start + (state->end-state->start) * ((2*T3-3*T2+1)*p1->position.y+(T3-2*T2+T)*startTangent+(3*T2-2*T3)*p2->position.y+(T3-T2)*endTangent);
|
||||||
|
}
|
||||||
|
|
||||||
|
return state->start;
|
||||||
|
}
|
||||||
|
|
||||||
|
void GuiCurveEdit(GuiCurveEditState *state, Rectangle bounds){
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// CONST
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
const float pointSize = 10;
|
||||||
|
const float fontSize = GuiGetStyle(DEFAULT, TEXT_SIZE);
|
||||||
|
const float handleLength = pointSize*2.5;
|
||||||
|
const float handleSize = pointSize/1.5f;
|
||||||
|
|
||||||
|
const Rectangle innerBounds = (Rectangle){bounds.x+fontSize, bounds.y+fontSize, bounds.width-2*fontSize, bounds.height-2*fontSize};
|
||||||
|
const Vector2 mouse = GetMousePosition();
|
||||||
|
const Vector2 mouseLocal = (Vector2) {(mouse.x-innerBounds.x)/innerBounds.width, (innerBounds.y+innerBounds.height-mouse.y)/innerBounds.height};
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// UPDATE STATE
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Find first point under mouse (-1 if not found)
|
||||||
|
int hoveredPointIndex = -1;
|
||||||
|
for(int i=0; i < state->numPoints; i++){
|
||||||
|
const GuiCurveEditPoint* p = &state->points[i];
|
||||||
|
const Vector2 screenPos = (Vector2){p->position.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-p->position.y*innerBounds.height};
|
||||||
|
const Rectangle pointRect = (Rectangle) {screenPos.x-pointSize/2.f, screenPos.y-pointSize/2.f, pointSize, pointSize};
|
||||||
|
if(CheckCollisionPointRec(mouse, pointRect)){
|
||||||
|
hoveredPointIndex = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Unselect tangents
|
||||||
|
if(IsMouseButtonReleased(MOUSE_BUTTON_LEFT)){
|
||||||
|
state->editLeftTangent = false;
|
||||||
|
state->editRightTangent = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Select a tangent if possible
|
||||||
|
if(IsMouseButtonPressed(MOUSE_BUTTON_LEFT) && state->selectedIndex != -1 && CheckCollisionPointRec(mouse, bounds)){
|
||||||
|
const GuiCurveEditPoint* p = &state->points[state->selectedIndex];
|
||||||
|
const Vector2 screenPos = (Vector2){p->position.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-p->position.y*innerBounds.height};
|
||||||
|
|
||||||
|
// Left control
|
||||||
|
Vector2 target = (Vector2) {(p->position.x-1)*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-(p->position.y-p->tangents.x)*innerBounds.height};
|
||||||
|
Vector2 dir = (Vector2) {target.x-screenPos.x, target.y-screenPos.y};
|
||||||
|
float d = sqrt(dir.x*dir.x+dir.y*dir.y);
|
||||||
|
Vector2 control = (Vector2) {screenPos.x+dir.x/d*handleLength, screenPos.y+dir.y/d*handleLength};
|
||||||
|
Rectangle controlRect = (Rectangle) {control.x-handleSize/2.f, control.y-handleSize/2.f, handleSize, handleSize};
|
||||||
|
|
||||||
|
// Edit left tangent
|
||||||
|
if(CheckCollisionPointRec(mouse, controlRect)){
|
||||||
|
state->editLeftTangent = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Right control
|
||||||
|
target = (Vector2) {(p->position.x+1)*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-(p->position.y+p->tangents.y)*innerBounds.height};
|
||||||
|
dir = (Vector2) {target.x-screenPos.x, target.y-screenPos.y};
|
||||||
|
d = sqrt(dir.x*dir.x+dir.y*dir.y);
|
||||||
|
control = (Vector2) {screenPos.x+dir.x/d*handleLength, screenPos.y+dir.y/d*handleLength};
|
||||||
|
controlRect = (Rectangle) {control.x-handleSize/2.f, control.y-handleSize/2.f, handleSize, handleSize};
|
||||||
|
// Edit right tangent
|
||||||
|
if(CheckCollisionPointRec(mouse, controlRect)){
|
||||||
|
state->editRightTangent = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Move tangents
|
||||||
|
if(IsMouseButtonDown(MOUSE_BUTTON_LEFT) && state->editRightTangent){
|
||||||
|
// editRightTangent == true implies selectedIndex != -1
|
||||||
|
GuiCurveEditPoint* p = &state->points[state->selectedIndex];
|
||||||
|
const Vector2 screenPos = (Vector2){p->position.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-p->position.y*innerBounds.height};
|
||||||
|
const Vector2 dir = (Vector2){mouseLocal.x-p->position.x, mouseLocal.y-p->position.y};
|
||||||
|
// Calculate right tangent slope
|
||||||
|
p->tangents.y = dir.x < 0.001f ? dir.y/0.001f : dir.y/dir.x;
|
||||||
|
p->rightLinear = false; // Stop right linearization update
|
||||||
|
|
||||||
|
// Tangents are symetric by default unless SHIFT is pressed
|
||||||
|
if(!(IsKeyDown(KEY_LEFT_SHIFT) || IsKeyDown(KEY_RIGHT_SHIFT))){
|
||||||
|
p->tangents.x = p->tangents.y;
|
||||||
|
p->leftLinear = false; // Stop left linearization update
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if(IsMouseButtonDown(MOUSE_BUTTON_LEFT) && state->editLeftTangent){
|
||||||
|
// editLeftTangent == true implies selectedIndex != -1
|
||||||
|
GuiCurveEditPoint* p = &state->points[state->selectedIndex];
|
||||||
|
const Vector2 screenPos = (Vector2){p->position.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-p->position.y*innerBounds.height};
|
||||||
|
const Vector2 dir = (Vector2){mouseLocal.x-p->position.x, mouseLocal.y-p->position.y};
|
||||||
|
// Calculate left tangent slope
|
||||||
|
p->tangents.x = dir.x > -0.001f ? dir.y/(-0.001f) : dir.y/dir.x;
|
||||||
|
p->leftLinear = false; // Stop left linearization update
|
||||||
|
|
||||||
|
// Tangents are symetric by default unless SHIFT is pressed
|
||||||
|
if(!(IsKeyDown(KEY_LEFT_SHIFT) || IsKeyDown(KEY_RIGHT_SHIFT))){
|
||||||
|
p->tangents.y = p->tangents.x;
|
||||||
|
p->rightLinear = false; // Stop right linearization update
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Select a point
|
||||||
|
else if(IsMouseButtonPressed(MOUSE_BUTTON_LEFT) && hoveredPointIndex != -1 CheckCollisionPointRec(mouse, bounds)){
|
||||||
|
state->selectedIndex = hoveredPointIndex;
|
||||||
|
const GuiCurveEditPoint* p = &state->points[state->selectedIndex];
|
||||||
|
const Vector2 screenPos = (Vector2){p->position.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-p->position.y*innerBounds.height};
|
||||||
|
state->mouseOffset = (Vector2) {p->position.x - mouseLocal.x, p->position.y - mouseLocal.y};
|
||||||
|
}
|
||||||
|
// Remove a point (check against bounds)
|
||||||
|
else if(IsMouseButtonPressed(MOUSE_BUTTON_RIGHT) && hoveredPointIndex != -1 && CheckCollisionPointRec(mouse, bounds) && state->numPoints > 1){
|
||||||
|
// Deselect everything
|
||||||
|
state->selectedIndex = 0; // select first point by default
|
||||||
|
state->editLeftTangent = false;
|
||||||
|
state->editRightTangent = false;
|
||||||
|
|
||||||
|
// Remove point
|
||||||
|
state->numPoints -= 1;
|
||||||
|
for(int i=hoveredPointIndex; i < state->numPoints; i++ ){
|
||||||
|
state->points[i] = state->points[i+1];
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add a point (check against innerBounds)
|
||||||
|
} else if(IsMouseButtonPressed(MOUSE_BUTTON_LEFT) && CheckCollisionPointRec(mouse, innerBounds) && state->numPoints < GUI_CURVE_EDIT_MAX_POINTS){
|
||||||
|
state->editLeftTangent = false;
|
||||||
|
state->editRightTangent = false;
|
||||||
|
|
||||||
|
// Create new point
|
||||||
|
GuiCurveEditPoint p;
|
||||||
|
p.tangents = (Vector2) {0.f, 0.f};
|
||||||
|
p.position = mouseLocal;
|
||||||
|
p.leftLinear = false;
|
||||||
|
p.rightLinear = false;
|
||||||
|
// Append point
|
||||||
|
state->points[state->numPoints] = p;
|
||||||
|
state->selectedIndex = state->numPoints; // select new point
|
||||||
|
state->numPoints += 1;
|
||||||
|
// Point is add on mouse pos
|
||||||
|
state->mouseOffset = (Vector2) {0,0};
|
||||||
|
|
||||||
|
// Move selected point
|
||||||
|
} else if(state->selectedIndex != -1 && IsMouseButtonDown(MOUSE_BUTTON_LEFT) && CheckCollisionPointRec(mouse, bounds) ){
|
||||||
|
GuiCurveEditPoint* p = &state->points[state->selectedIndex];
|
||||||
|
|
||||||
|
// use mouse offset on click to prevent point teleporting to mouse
|
||||||
|
const Vector2 newLocalPos = (Vector2){mouseLocal.x + state->mouseOffset.x, mouseLocal.y + state->mouseOffset.y};
|
||||||
|
|
||||||
|
// Clamp to innerbounds
|
||||||
|
p->position.x = newLocalPos.x < 0 ? 0 : newLocalPos.x > 1 ? 1 : newLocalPos.x;
|
||||||
|
p->position.y = newLocalPos.y < 0 ? 0 : newLocalPos.y > 1 ? 1 : newLocalPos.y;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Sort points
|
||||||
|
GuiCurveEditPoint* sortedPoints[GUI_CURVE_EDIT_MAX_POINTS];
|
||||||
|
for(int i=0; i < state->numPoints; i++){
|
||||||
|
sortedPoints[i] = &state->points[i];
|
||||||
|
}
|
||||||
|
qsort(sortedPoints, state->numPoints, sizeof(GuiCurveEditPoint*), CompareGuiCurveEditPointPtr);
|
||||||
|
|
||||||
|
|
||||||
|
// Update linear tangents
|
||||||
|
for(int i=0; i < state->numPoints; i++){
|
||||||
|
GuiCurveEditPoint* p = sortedPoints[i];
|
||||||
|
// Left tangent
|
||||||
|
if(i > 0 && p->leftLinear){
|
||||||
|
const GuiCurveEditPoint* p2 = sortedPoints[i-1];
|
||||||
|
Vector2 dir = (Vector2) {p2->position.x-p->position.x, p2->position.y-p->position.y};
|
||||||
|
p->tangents.x = dir.x == 0 ? 0 : dir.y/dir.x;
|
||||||
|
}
|
||||||
|
// Right tangent
|
||||||
|
if(i < state->numPoints-1 && p->rightLinear){
|
||||||
|
const GuiCurveEditPoint* p2 = sortedPoints[i+1];
|
||||||
|
Vector2 dir = (Vector2) {p2->position.x-p->position.x, p2->position.y-p->position.y};
|
||||||
|
p->tangents.y = dir.x == 0 ? 0 : dir.y/dir.x;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// DRAWING
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Draw bg
|
||||||
|
DrawRectangle(bounds.x, bounds.y, bounds.width, bounds.height, GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR)));
|
||||||
|
|
||||||
|
// Draw grid
|
||||||
|
// H lines
|
||||||
|
const Color lineColor = GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_NORMAL));
|
||||||
|
DrawLine(bounds.x, innerBounds.y, bounds.x+bounds.width, innerBounds.y, lineColor); // end
|
||||||
|
DrawLine(bounds.x, innerBounds.y+innerBounds.height/2, bounds.x+bounds.width, innerBounds.y+innerBounds.height/2, lineColor); // avg
|
||||||
|
DrawLine(bounds.x, innerBounds.y+innerBounds.height, bounds.x+bounds.width, innerBounds.y+innerBounds.height, lineColor); // start
|
||||||
|
|
||||||
|
// V lines
|
||||||
|
DrawLine(innerBounds.x, bounds.y, innerBounds.x, bounds.y+bounds.height, lineColor); // 0
|
||||||
|
DrawLine(innerBounds.x+innerBounds.width/4, bounds.y, innerBounds.x+innerBounds.width/4, bounds.y+bounds.height, lineColor); // 0.25
|
||||||
|
DrawLine(innerBounds.x+innerBounds.width/2, bounds.y, innerBounds.x+innerBounds.width/2, bounds.y+bounds.height, lineColor); // 0.5
|
||||||
|
DrawLine(innerBounds.x+3*innerBounds.width/4, bounds.y, innerBounds.x+3*innerBounds.width/4, bounds.y+bounds.height, lineColor); // 0.75
|
||||||
|
DrawLine(innerBounds.x+innerBounds.width, bounds.y, innerBounds.x+innerBounds.width, bounds.y+bounds.height, lineColor); // 1
|
||||||
|
|
||||||
|
Font font = GuiGetFont();
|
||||||
|
// V labels
|
||||||
|
DrawTextEx(font, "0", (Vector2) {innerBounds.x, bounds.y+bounds.height-fontSize}, fontSize,GuiGetStyle(DEFAULT, TEXT_SPACING), lineColor);
|
||||||
|
DrawTextEx(font, "0.25", (Vector2) {innerBounds.x+innerBounds.width/4.f, bounds.y+bounds.height-fontSize}, fontSize,GuiGetStyle(DEFAULT, TEXT_SPACING), lineColor);
|
||||||
|
DrawTextEx(font, "0.5", (Vector2) {innerBounds.x+innerBounds.width/2.f, bounds.y+bounds.height-fontSize}, fontSize,GuiGetStyle(DEFAULT, TEXT_SPACING), lineColor);
|
||||||
|
DrawTextEx(font, "0.75", (Vector2) {innerBounds.x+3.f*innerBounds.width/4.f, bounds.y+bounds.height-fontSize}, fontSize,GuiGetStyle(DEFAULT, TEXT_SPACING), lineColor);
|
||||||
|
DrawTextEx(font, "1", (Vector2) {innerBounds.x+innerBounds.width, bounds.y+bounds.height-fontSize}, fontSize,GuiGetStyle(DEFAULT, TEXT_SPACING), lineColor);
|
||||||
|
|
||||||
|
// H labels
|
||||||
|
DrawTextEx(font, TextFormat("%.2f", state->start), (Vector2) {innerBounds.x, innerBounds.y-fontSize+innerBounds.height}, fontSize, GuiGetStyle(DEFAULT, TEXT_SPACING), lineColor);
|
||||||
|
DrawTextEx(font, TextFormat("%.2f", state->start + (state->end-state->start)/2.f), (Vector2) {innerBounds.x, innerBounds.y-fontSize+innerBounds.height/2.f}, fontSize, GuiGetStyle(DEFAULT, TEXT_SPACING), lineColor);
|
||||||
|
DrawTextEx(font, TextFormat("%.2f", state->end), (Vector2) {innerBounds.x, innerBounds.y}, fontSize, GuiGetStyle(DEFAULT, TEXT_SPACING), lineColor);
|
||||||
|
|
||||||
|
// Draw contours
|
||||||
|
if(CheckCollisionPointRec(mouse, bounds))
|
||||||
|
DrawRectangleLines(bounds.x, bounds.y, bounds.width, bounds.height, GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_FOCUSED)));
|
||||||
|
else
|
||||||
|
DrawRectangleLines(bounds.x, bounds.y, bounds.width, bounds.height, GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_NORMAL)));
|
||||||
|
|
||||||
|
// Draw points
|
||||||
|
for(int i=0; i < state->numPoints; i++){
|
||||||
|
|
||||||
|
const GuiCurveEditPoint* p = sortedPoints[i];
|
||||||
|
|
||||||
|
const Vector2 screenPos = (Vector2){p->position.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-p->position.y*innerBounds.height};
|
||||||
|
const Rectangle pointRect = (Rectangle) {screenPos.x-pointSize/2.f, screenPos.y-pointSize/2.f, pointSize, pointSize};
|
||||||
|
|
||||||
|
Color pointColor;
|
||||||
|
Color pointBorderColor;
|
||||||
|
|
||||||
|
// Draw point
|
||||||
|
if(&state->points[state->selectedIndex] == p){
|
||||||
|
|
||||||
|
// Draw left handle
|
||||||
|
if(i > 0){
|
||||||
|
const Vector2 target = (Vector2) {(p->position.x-1)*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-(p->position.y-p->tangents.x)*innerBounds.height};
|
||||||
|
const Vector2 dir = (Vector2) {target.x-screenPos.x, target.y-screenPos.y};
|
||||||
|
const float d = sqrt(dir.x*dir.x+dir.y*dir.y);
|
||||||
|
const Vector2 control = (Vector2) {screenPos.x+dir.x/d*handleLength, screenPos.y+dir.y/d*handleLength};
|
||||||
|
const Rectangle controlRect = (Rectangle) {control.x-handleSize/2.f, control.y-handleSize/2.f, handleSize, handleSize};
|
||||||
|
|
||||||
|
Color controlColor;
|
||||||
|
Color controlBorderColor;
|
||||||
|
if(state->editLeftTangent){
|
||||||
|
controlColor = GetColor(GuiGetStyle(DEFAULT, BASE_COLOR_PRESSED));
|
||||||
|
controlBorderColor = GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_NORMAL));
|
||||||
|
} else if(CheckCollisionPointRec(mouse, controlRect)){
|
||||||
|
controlColor = GetColor(GuiGetStyle(DEFAULT, BASE_COLOR_FOCUSED));
|
||||||
|
controlBorderColor = GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_NORMAL));
|
||||||
|
}else{
|
||||||
|
controlColor = GetColor(GuiGetStyle(BUTTON, BASE_COLOR_NORMAL));
|
||||||
|
controlBorderColor = GetColor(GuiGetStyle(BUTTON, BORDER_COLOR_NORMAL));
|
||||||
|
}
|
||||||
|
DrawLine(screenPos.x,screenPos.y, control.x, control.y, controlColor);
|
||||||
|
DrawRectangle(controlRect.x, controlRect.y, controlRect.width, controlRect.height, controlColor);
|
||||||
|
DrawRectangleLines(controlRect.x, controlRect.y, controlRect.width, controlRect.height, controlColor);
|
||||||
|
}
|
||||||
|
// Draw right handle
|
||||||
|
if(i < state->numPoints-1){
|
||||||
|
const Vector2 target = (Vector2) {(p->position.x+1)*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-(p->position.y+p->tangents.y)*innerBounds.height};
|
||||||
|
const Vector2 dir = (Vector2) {target.x-screenPos.x, target.y-screenPos.y};
|
||||||
|
const float d = sqrt(dir.x*dir.x+dir.y*dir.y);
|
||||||
|
const Vector2 control = (Vector2) {screenPos.x+dir.x/d*handleLength, screenPos.y+dir.y/d*handleLength};
|
||||||
|
const Rectangle controlRect = (Rectangle) {control.x-handleSize/2.f, control.y-handleSize/2.f, handleSize, handleSize};
|
||||||
|
|
||||||
|
Color controlColor;
|
||||||
|
Color controlBorderColor;
|
||||||
|
if(state->editRightTangent){
|
||||||
|
controlColor = GetColor(GuiGetStyle(DEFAULT, BASE_COLOR_PRESSED));
|
||||||
|
controlBorderColor = GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_NORMAL));
|
||||||
|
} else if(CheckCollisionPointRec(mouse, controlRect)){
|
||||||
|
controlColor = GetColor(GuiGetStyle(DEFAULT, BASE_COLOR_FOCUSED));
|
||||||
|
controlBorderColor = GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_NORMAL));
|
||||||
|
}else{
|
||||||
|
controlColor = GetColor(GuiGetStyle(BUTTON, BASE_COLOR_NORMAL));
|
||||||
|
controlBorderColor = GetColor(GuiGetStyle(BUTTON, BORDER_COLOR_NORMAL));
|
||||||
|
}
|
||||||
|
DrawLine(screenPos.x,screenPos.y, control.x, control.y, controlColor);
|
||||||
|
DrawRectangle(controlRect.x, controlRect.y, controlRect.width, controlRect.height, controlColor);
|
||||||
|
DrawRectangleLines(controlRect.x, controlRect.y, controlRect.width, controlRect.height, controlColor);
|
||||||
|
}
|
||||||
|
|
||||||
|
pointColor = GetColor(GuiGetStyle(DEFAULT, BASE_COLOR_PRESSED));
|
||||||
|
pointBorderColor = GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_NORMAL));
|
||||||
|
|
||||||
|
} else if(&state->points[hoveredPointIndex] == p) {
|
||||||
|
pointColor = GetColor(GuiGetStyle(DEFAULT, BASE_COLOR_FOCUSED));
|
||||||
|
pointBorderColor = GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_NORMAL));
|
||||||
|
} else {
|
||||||
|
pointColor = GetColor(GuiGetStyle(BUTTON, BASE_COLOR_NORMAL));
|
||||||
|
pointBorderColor = GetColor(GuiGetStyle(BUTTON, BORDER_COLOR_NORMAL));
|
||||||
|
}
|
||||||
|
|
||||||
|
DrawRectangle(pointRect.x, pointRect.y, pointRect.width, pointRect.height, pointColor);
|
||||||
|
DrawRectangleLines(pointRect.x, pointRect.y, pointRect.width, pointRect.height, pointBorderColor);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// Draw curve
|
||||||
|
Color curveColor = GetColor(GuiGetStyle(LABEL, TEXT_COLOR_FOCUSED));
|
||||||
|
if(state->numPoints == 1){
|
||||||
|
const GuiCurveEditPoint* p = sortedPoints[0];
|
||||||
|
const Vector2 screenPos = (Vector2){p->position.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-p->position.y*innerBounds.height};
|
||||||
|
DrawLine(innerBounds.x, screenPos.y, innerBounds.x+innerBounds.width, screenPos.y, curveColor);
|
||||||
|
}else {
|
||||||
|
for(int i=0; i < state->numPoints-1; i++){
|
||||||
|
const GuiCurveEditPoint* p1 = sortedPoints[i];
|
||||||
|
const GuiCurveEditPoint* p2 = sortedPoints[i+1];
|
||||||
|
const Vector2 screenPos1 = (Vector2){p1->position.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-p1->position.y*innerBounds.height};
|
||||||
|
const Vector2 screenPos2 = (Vector2){p2->position.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-p2->position.y*innerBounds.height};
|
||||||
|
// Constant on edge
|
||||||
|
if(screenPos1.x > innerBounds.x && i == 0){
|
||||||
|
DrawLine(innerBounds.x, screenPos1.y, screenPos1.x, screenPos1.y, curveColor);
|
||||||
|
}
|
||||||
|
if(screenPos2.x < innerBounds.x+innerBounds.width && i == (state->numPoints-2)){
|
||||||
|
DrawLine(screenPos2.x, screenPos2.y, innerBounds.x+innerBounds.width, screenPos2.y, curveColor);
|
||||||
|
}
|
||||||
|
// Draw cubic Hermite curve
|
||||||
|
const float scale = (p2->position.x-p1->position.x)/3.f;
|
||||||
|
const Vector2 offset1 = (Vector2) {scale, scale*p1->tangents.y};
|
||||||
|
// negative endTangent => top part => need to invert value to calculate offset
|
||||||
|
const Vector2 offset2 = (Vector2) {-scale, -scale*p2->tangents.x};
|
||||||
|
|
||||||
|
const Vector2 c1 = (Vector2) {p1->position.x+offset1.x, p1->position.y+offset1.y};
|
||||||
|
const Vector2 c2 = (Vector2) {p2->position.x+offset2.x, p2->position.y+offset2.y};
|
||||||
|
|
||||||
|
const Vector2 screenC1 = (Vector2) {c1.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-c1.y*innerBounds.height};
|
||||||
|
const Vector2 screenC2 = (Vector2) {c2.x*innerBounds.width+innerBounds.x, innerBounds.y+innerBounds.height-c2.y*innerBounds.height};
|
||||||
|
|
||||||
|
DrawLineBezierCubic(screenPos1, screenPos2, screenC1, screenC2, 1, curveColor);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // GUI_CURVE_EDIT_IMPLEMENTATION
|
||||||
|
|
||||||
@ -12,7 +12,6 @@
|
|||||||
* - GuiComboBox()
|
* - GuiComboBox()
|
||||||
* - GuiListView()
|
* - GuiListView()
|
||||||
* - GuiToggleGroup()
|
* - GuiToggleGroup()
|
||||||
* - GuiTextBoxMulti()
|
|
||||||
* - GuiColorPicker()
|
* - GuiColorPicker()
|
||||||
* - GuiSlider()
|
* - GuiSlider()
|
||||||
* - GuiSliderBar()
|
* - GuiSliderBar()
|
||||||
@ -22,25 +21,26 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* DEPENDENCIES:
|
* DEPENDENCIES:
|
||||||
* raylib 2.6-dev - Windowing/input management and drawing.
|
* raylib 4.5 - Windowing/input management and drawing
|
||||||
* raygui 2.6-dev - Immediate-mode GUI controls.
|
* raygui 3.5 - Immediate-mode GUI controls with custom styling and icons
|
||||||
*
|
*
|
||||||
* COMPILATION (Windows - MinGW):
|
* COMPILATION (Windows - MinGW):
|
||||||
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
||||||
*
|
*
|
||||||
* LICENSE: zlib/libpng
|
* LICENSE: zlib/libpng
|
||||||
*
|
*
|
||||||
* Copyright (c) 2020 Ramon Santamaria (@raysan5)
|
* Copyright (c) 2016-2023 Ramon Santamaria (@raysan5)
|
||||||
*
|
*
|
||||||
**********************************************************************************************/
|
**********************************************************************************************/
|
||||||
|
|
||||||
#include "raylib.h"
|
#include "raylib.h"
|
||||||
|
|
||||||
#define RAYGUI_IMPLEMENTATION
|
#define RAYGUI_IMPLEMENTATION
|
||||||
#define RAYGUI_SUPPORT_ICONS
|
//#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"
|
#include "../../src/raygui.h"
|
||||||
|
|
||||||
#undef RAYGUI_IMPLEMENTATION // Avoid including raygui implementation again
|
#include <string.h> // Required for: strcpy()
|
||||||
|
|
||||||
//------------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------------
|
||||||
// Program main entry point
|
// Program main entry point
|
||||||
@ -49,9 +49,9 @@ int main()
|
|||||||
{
|
{
|
||||||
// Initialization
|
// Initialization
|
||||||
//---------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------
|
||||||
int screenWidth = 690;
|
const int screenWidth = 690;
|
||||||
int screenHeight = 560;
|
const int screenHeight = 560;
|
||||||
|
|
||||||
InitWindow(screenWidth, screenHeight, "raygui - controls test suite");
|
InitWindow(screenWidth, screenHeight, "raygui - controls test suite");
|
||||||
SetExitKey(0);
|
SetExitKey(0);
|
||||||
|
|
||||||
@ -59,19 +59,19 @@ int main()
|
|||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
int dropdownBox000Active = 0;
|
int dropdownBox000Active = 0;
|
||||||
bool dropDown000EditMode = false;
|
bool dropDown000EditMode = false;
|
||||||
|
|
||||||
int dropdownBox001Active = 0;
|
int dropdownBox001Active = 0;
|
||||||
bool dropDown001EditMode = false;
|
bool dropDown001EditMode = false;
|
||||||
|
|
||||||
int spinner001Value = 0;
|
int spinner001Value = 0;
|
||||||
bool spinnerEditMode = false;
|
bool spinnerEditMode = false;
|
||||||
|
|
||||||
int valueBox002Value = 0;
|
int valueBox002Value = 0;
|
||||||
bool valueBoxEditMode = false;
|
bool valueBoxEditMode = false;
|
||||||
|
|
||||||
char textBoxText[64] = "Text box";
|
char textBoxText[64] = "Text box";
|
||||||
bool textBoxEditMode = false;
|
bool textBoxEditMode = false;
|
||||||
|
|
||||||
int listViewScrollIndex = 0;
|
int listViewScrollIndex = 0;
|
||||||
int listViewActive = -1;
|
int listViewActive = -1;
|
||||||
|
|
||||||
@ -83,32 +83,32 @@ int main()
|
|||||||
char multiTextBoxText[256] = "Multi text box";
|
char multiTextBoxText[256] = "Multi text box";
|
||||||
bool multiTextBoxEditMode = false;
|
bool multiTextBoxEditMode = false;
|
||||||
Color colorPickerValue = RED;
|
Color colorPickerValue = RED;
|
||||||
|
|
||||||
int sliderValue = 50;
|
int sliderValue = 50;
|
||||||
int sliderBarValue = 60;
|
int sliderBarValue = 60;
|
||||||
float progressValue = 0.4f;
|
float progressValue = 0.4f;
|
||||||
|
|
||||||
bool forceSquaredChecked = false;
|
bool forceSquaredChecked = false;
|
||||||
|
|
||||||
float alphaValue = 0.5f;
|
float alphaValue = 0.5f;
|
||||||
|
|
||||||
int comboBoxActive = 1;
|
int comboBoxActive = 1;
|
||||||
|
|
||||||
int toggleGroupActive = 0;
|
int toggleGroupActive = 0;
|
||||||
|
|
||||||
Vector2 viewScroll = { 0, 0 };
|
Vector2 viewScroll = { 0, 0 };
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
// Custom GUI font loading
|
// Custom GUI font loading
|
||||||
//Font font = LoadFontEx("fonts/rainyhearts16.ttf", 12, 0, 0);
|
//Font font = LoadFontEx("fonts/rainyhearts16.ttf", 12, 0, 0);
|
||||||
//GuiSetFont(font);
|
//GuiSetFont(font);
|
||||||
|
|
||||||
bool exitWindow = false;
|
bool exitWindow = false;
|
||||||
bool showMessageBox = false;
|
bool showMessageBox = false;
|
||||||
|
|
||||||
char textInput[256] = { 0 };
|
char textInput[256] = { 0 };
|
||||||
bool showTextInputBox = false;
|
bool showTextInputBox = false;
|
||||||
|
|
||||||
char textInputFileName[256] = { 0 };
|
char textInputFileName[256] = { 0 };
|
||||||
|
|
||||||
SetTargetFPS(60);
|
SetTargetFPS(60);
|
||||||
@ -120,19 +120,18 @@ int main()
|
|||||||
// Update
|
// Update
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
exitWindow = WindowShouldClose();
|
exitWindow = WindowShouldClose();
|
||||||
|
|
||||||
if (IsKeyPressed(KEY_ESCAPE)) showMessageBox = !showMessageBox;
|
if (IsKeyPressed(KEY_ESCAPE)) showMessageBox = !showMessageBox;
|
||||||
|
|
||||||
if (IsKeyDown(KEY_LEFT_CONTROL) && IsKeyPressed(KEY_S)) showTextInputBox = true;
|
if (IsKeyDown(KEY_LEFT_CONTROL) && IsKeyPressed(KEY_S)) showTextInputBox = true;
|
||||||
|
|
||||||
if (IsFileDropped())
|
if (IsFileDropped())
|
||||||
{
|
{
|
||||||
int dropsCount = 0;
|
FilePathList droppedFiles = LoadDroppedFiles();
|
||||||
char **droppedFiles = GetDroppedFiles(&dropsCount);
|
|
||||||
|
if ((droppedFiles.count > 0) && IsFileExtension(droppedFiles.paths[0], ".rgs")) GuiLoadStyle(droppedFiles.paths[0]);
|
||||||
if ((dropsCount > 0) && IsFileExtension(droppedFiles[0], ".rgs")) GuiLoadStyle(droppedFiles[0]);
|
|
||||||
|
UnloadDroppedFiles(droppedFiles); // Clear internal buffers
|
||||||
ClearDroppedFiles(); // Clear internal buffers
|
|
||||||
}
|
}
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
@ -141,45 +140,45 @@ int main()
|
|||||||
BeginDrawing();
|
BeginDrawing();
|
||||||
|
|
||||||
ClearBackground(GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR)));
|
ClearBackground(GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR)));
|
||||||
|
|
||||||
// raygui: controls drawing
|
// raygui: controls drawing
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
if (dropDown000EditMode || dropDown001EditMode) GuiLock();
|
// Check all possible events that require GuiLock
|
||||||
//GuiDisable();
|
if (dropDown000EditMode ||
|
||||||
|
dropDown001EditMode) GuiLock();
|
||||||
|
|
||||||
// First GUI column
|
// First GUI column
|
||||||
//GuiSetStyle(CHECKBOX, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_LEFT);
|
//GuiSetStyle(CHECKBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
|
||||||
forceSquaredChecked = GuiCheckBox((Rectangle){ 25, 108, 15, 15 }, "FORCE CHECK!", forceSquaredChecked);
|
forceSquaredChecked = GuiCheckBox((Rectangle){ 25, 108, 15, 15 }, "FORCE CHECK!", forceSquaredChecked);
|
||||||
|
|
||||||
GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_CENTER);
|
GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
|
||||||
//GuiSetStyle(VALUEBOX, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_LEFT);
|
//GuiSetStyle(VALUEBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
|
||||||
if (GuiSpinner((Rectangle){ 25, 135, 125, 30 }, NULL, &spinner001Value, 0, 100, spinnerEditMode)) spinnerEditMode = !spinnerEditMode;
|
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;
|
if (GuiValueBox((Rectangle){ 25, 175, 125, 30 }, NULL, &valueBox002Value, 0, 100, valueBoxEditMode)) valueBoxEditMode = !valueBoxEditMode;
|
||||||
GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_LEFT);
|
GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
|
||||||
if (GuiTextBox((Rectangle){ 25, 215, 125, 30 }, textBoxText, 64, textBoxEditMode)) textBoxEditMode = !textBoxEditMode;
|
if (GuiTextBox((Rectangle){ 25, 215, 125, 30 }, textBoxText, 64, textBoxEditMode)) textBoxEditMode = !textBoxEditMode;
|
||||||
|
|
||||||
GuiSetStyle(BUTTON, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_CENTER);
|
GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
|
||||||
|
|
||||||
GuiSetTooltip("Save current file.");
|
if (GuiButton((Rectangle){ 25, 255, 125, 30 }, GuiIconText(ICON_FILE_SAVE, "Save File"))) showTextInputBox = true;
|
||||||
if (GuiButton((Rectangle){ 25, 255, 125, 30 }, GuiIconText(RICON_FILE_SAVE, "Save File"))) showTextInputBox = true;
|
|
||||||
GuiClearTooltip();
|
|
||||||
|
|
||||||
GuiGroupBox((Rectangle){ 25, 310, 125, 150 }, "STATES");
|
GuiGroupBox((Rectangle){ 25, 310, 125, 150 }, "STATES");
|
||||||
GuiLock();
|
//GuiLock();
|
||||||
GuiSetState(GUI_STATE_NORMAL); if (GuiButton((Rectangle){ 30, 320, 115, 30 }, "NORMAL")) { }
|
GuiSetState(STATE_NORMAL); if (GuiButton((Rectangle){ 30, 320, 115, 30 }, "NORMAL")) { }
|
||||||
GuiSetState(GUI_STATE_FOCUSED); if (GuiButton((Rectangle){ 30, 355, 115, 30 }, "FOCUSED")) { }
|
GuiSetState(STATE_FOCUSED); if (GuiButton((Rectangle){ 30, 355, 115, 30 }, "FOCUSED")) { }
|
||||||
GuiSetState(GUI_STATE_PRESSED); if (GuiButton((Rectangle){ 30, 390, 115, 30 }, "#15#PRESSED")) { }
|
GuiSetState(STATE_PRESSED); if (GuiButton((Rectangle){ 30, 390, 115, 30 }, "#15#PRESSED")) { }
|
||||||
GuiSetState(GUI_STATE_DISABLED); if (GuiButton((Rectangle){ 30, 425, 115, 30 }, "DISABLED")) { }
|
GuiSetState(STATE_DISABLED); if (GuiButton((Rectangle){ 30, 425, 115, 30 }, "DISABLED")) { }
|
||||||
GuiSetState(GUI_STATE_NORMAL);
|
GuiSetState(STATE_NORMAL);
|
||||||
GuiUnlock();
|
//GuiUnlock();
|
||||||
|
|
||||||
comboBoxActive = GuiComboBox((Rectangle){ 25, 470, 125, 30 }, "ONE;TWO;THREE;FOUR", comboBoxActive);
|
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
|
// NOTE: GuiDropdownBox must draw after any other control that can be covered on unfolding
|
||||||
GuiSetStyle(DROPDOWNBOX, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_LEFT);
|
GuiUnlock();
|
||||||
|
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;
|
if (GuiDropdownBox((Rectangle){ 25, 65, 125, 30 }, "#01#ONE;#02#TWO;#03#THREE;#04#FOUR", &dropdownBox001Active, dropDown001EditMode)) dropDown001EditMode = !dropDown001EditMode;
|
||||||
|
|
||||||
GuiSetStyle(DROPDOWNBOX, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_CENTER);
|
GuiSetStyle(DROPDOWNBOX, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
|
||||||
if (GuiDropdownBox((Rectangle){ 25, 25, 125, 30 }, "ONE;TWO;THREE", &dropdownBox000Active, dropDown000EditMode)) dropDown000EditMode = !dropDown000EditMode;
|
if (GuiDropdownBox((Rectangle){ 25, 25, 125, 30 }, "ONE;TWO;THREE", &dropdownBox000Active, dropDown000EditMode)) dropDown000EditMode = !dropDown000EditMode;
|
||||||
|
|
||||||
// Second GUI column
|
// Second GUI column
|
||||||
@ -187,51 +186,51 @@ int main()
|
|||||||
listViewExActive = GuiListViewEx((Rectangle){ 165, 180, 140, 200 }, listViewExList, 8, &listViewExFocus, &listViewExScrollIndex, listViewExActive);
|
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);
|
toggleGroupActive = GuiToggleGroup((Rectangle){ 165, 400, 140, 25 }, "#1#ONE\n#3#TWO\n#8#THREE\n#23#", toggleGroupActive);
|
||||||
|
|
||||||
// Third GUI column
|
// Third GUI column
|
||||||
if (GuiTextBoxMulti((Rectangle){ 320, 25, 225, 140 }, multiTextBoxText, 256, multiTextBoxEditMode)) multiTextBoxEditMode = !multiTextBoxEditMode;
|
GuiPanel((Rectangle){ 320, 25, 225, 140 }, "Panel Info");
|
||||||
colorPickerValue = GuiColorPicker((Rectangle){ 320, 185, 196, 192 }, colorPickerValue);
|
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);
|
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);
|
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);
|
progressValue = GuiProgressBar((Rectangle){ 320, 460, 200, 20 }, NULL, NULL, progressValue, 0, 1);
|
||||||
|
|
||||||
// NOTE: View rectangle could be used to perform some scissor test
|
// NOTE: View rectangle could be used to perform some scissor test
|
||||||
Rectangle view = GuiScrollPanel((Rectangle){ 560, 25, 100, 160 }, (Rectangle){ 560, 25, 200, 400 }, &viewScroll);
|
Rectangle view = GuiScrollPanel((Rectangle){ 560, 25, 102, 354 }, NULL, (Rectangle){ 560, 25, 300, 1200 }, &viewScroll);
|
||||||
|
|
||||||
GuiStatusBar((Rectangle){ 0, GetScreenHeight() - 20, GetScreenWidth(), 20 }, "This is a status bar");
|
GuiGrid((Rectangle) { 560, 25 + 180 + 195, 100, 120 }, NULL, 20, 2);
|
||||||
|
|
||||||
alphaValue = GuiColorBarAlpha((Rectangle){ 320, 490, 200, 30 }, alphaValue);
|
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)
|
if (showMessageBox)
|
||||||
{
|
{
|
||||||
DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(RAYWHITE, 0.8f));
|
DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(RAYWHITE, 0.8f));
|
||||||
int result = GuiMessageBox((Rectangle){ GetScreenWidth()/2 - 125, GetScreenHeight()/2 - 50, 250, 100 }, GuiIconText(RICON_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;
|
if ((result == 0) || (result == 2)) showMessageBox = false;
|
||||||
else if (result == 1) exitWindow = true;
|
else if (result == 1) exitWindow = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (showTextInputBox)
|
if (showTextInputBox)
|
||||||
{
|
{
|
||||||
DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(RAYWHITE, 0.8f));
|
DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(RAYWHITE, 0.8f));
|
||||||
int result = GuiTextInputBox((Rectangle){ GetScreenWidth()/2 - 120, GetScreenHeight()/2 - 60, 240, 140 }, GuiIconText(RICON_FILE_SAVE, "Save file as..."), "Introduce a save file name", "Ok;Cancel", textInput);
|
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)
|
if (result == 1)
|
||||||
{
|
{
|
||||||
// TODO: Validate textInput value and save
|
// TODO: Validate textInput value and save
|
||||||
|
|
||||||
strcpy(textInputFileName, textInput);
|
strcpy(textInputFileName, textInput);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((result == 0) || (result == 1) || (result == 2))
|
if ((result == 0) || (result == 1) || (result == 2))
|
||||||
{
|
{
|
||||||
showTextInputBox = false;
|
showTextInputBox = false;
|
||||||
strcpy(textInput, "\0");
|
strcpy(textInput, "\0");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
GuiUnlock();
|
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
EndDrawing();
|
EndDrawing();
|
||||||
|
|||||||
@ -3,26 +3,24 @@
|
|||||||
* raygui - custom file dialog to load image
|
* raygui - custom file dialog to load image
|
||||||
*
|
*
|
||||||
* DEPENDENCIES:
|
* DEPENDENCIES:
|
||||||
* raylib 2.6-dev - Windowing/input management and drawing.
|
* raylib 4.0 - Windowing/input management and drawing.
|
||||||
* raygui 2.6-dev - Immediate-mode GUI controls.
|
* raygui 3.0 - Immediate-mode GUI controls.
|
||||||
*
|
*
|
||||||
* COMPILATION (Windows - MinGW):
|
* COMPILATION (Windows - MinGW):
|
||||||
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
||||||
*
|
*
|
||||||
* LICENSE: zlib/libpng
|
* LICENSE: zlib/libpng
|
||||||
*
|
*
|
||||||
* Copyright (c) 2020 Ramon Santamaria (@raysan5)
|
* Copyright (c) 2016-2023 Ramon Santamaria (@raysan5)
|
||||||
*
|
*
|
||||||
**********************************************************************************************/
|
**********************************************************************************************/
|
||||||
|
|
||||||
#include "raylib.h"
|
#include "raylib.h"
|
||||||
|
|
||||||
#define RAYGUI_IMPLEMENTATION
|
#define RAYGUI_IMPLEMENTATION
|
||||||
#define RAYGUI_SUPPORT_ICONS
|
|
||||||
#include "../../src/raygui.h"
|
#include "../../src/raygui.h"
|
||||||
|
|
||||||
#undef RAYGUI_IMPLEMENTATION // Avoid including raygui implementation again
|
#undef RAYGUI_IMPLEMENTATION // Avoid including raygui implementation again
|
||||||
|
|
||||||
#define GUI_FILE_DIALOG_IMPLEMENTATION
|
#define GUI_FILE_DIALOG_IMPLEMENTATION
|
||||||
#include "gui_file_dialog.h"
|
#include "gui_file_dialog.h"
|
||||||
|
|
||||||
@ -40,7 +38,7 @@ int main()
|
|||||||
SetExitKey(0);
|
SetExitKey(0);
|
||||||
|
|
||||||
// Custom file dialog
|
// Custom file dialog
|
||||||
GuiFileDialogState fileDialogState = InitGuiFileDialog(420, 310, GetWorkingDirectory(), false);
|
GuiFileDialogState fileDialogState = InitGuiFileDialog(GetWorkingDirectory());
|
||||||
|
|
||||||
bool exitWindow = false;
|
bool exitWindow = false;
|
||||||
|
|
||||||
@ -85,9 +83,9 @@ int main()
|
|||||||
|
|
||||||
// raygui: controls drawing
|
// raygui: controls drawing
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
if (fileDialogState.fileDialogActive) GuiLock();
|
if (fileDialogState.windowActive) GuiLock();
|
||||||
|
|
||||||
if (GuiButton((Rectangle){ 20, 20, 140, 30 }, GuiIconText(RICON_FILE_OPEN, "Open Image"))) fileDialogState.fileDialogActive = true;
|
if (GuiButton((Rectangle){ 20, 20, 140, 30 }, GuiIconText(ICON_FILE_OPEN, "Open Image"))) fileDialogState.windowActive = true;
|
||||||
|
|
||||||
GuiUnlock();
|
GuiUnlock();
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/*******************************************************************************************
|
/*******************************************************************************************
|
||||||
*
|
*
|
||||||
* FileDialog v1.1 - Modal file dialog to open/save files
|
* FileDialog v1.2 - Modal file dialog to open/save files
|
||||||
*
|
*
|
||||||
* MODULE USAGE:
|
* MODULE USAGE:
|
||||||
* #define GUI_FILE_DIALOG_IMPLEMENTATION
|
* #define GUI_FILE_DIALOG_IMPLEMENTATION
|
||||||
@ -10,15 +10,15 @@
|
|||||||
* DRAW: GuiFileDialog(&state);
|
* DRAW: GuiFileDialog(&state);
|
||||||
*
|
*
|
||||||
* NOTE: This module depends on some raylib file system functions:
|
* NOTE: This module depends on some raylib file system functions:
|
||||||
* - GetDirectoryFiles()
|
* - LoadDirectoryFiles()
|
||||||
* - ClearDirectoryFiles()
|
* - UnloadDirectoryFiles()
|
||||||
* - GetWorkingDirectory()
|
* - GetWorkingDirectory()
|
||||||
* - DirectoryExists()
|
* - DirectoryExists()
|
||||||
* - FileExists()
|
* - FileExists()
|
||||||
*
|
*
|
||||||
* LICENSE: zlib/libpng
|
* LICENSE: zlib/libpng
|
||||||
*
|
*
|
||||||
* Copyright (c) 2019-2020 Ramon Santamaria (@raysan5)
|
* Copyright (c) 2019-2022 Ramon Santamaria (@raysan5)
|
||||||
*
|
*
|
||||||
* This software is provided "as-is", without any express or implied warranty. In no event
|
* This software is provided "as-is", without any express or implied warranty. In no event
|
||||||
* will the authors be held liable for any damages arising from the use of this software.
|
* will the authors be held liable for any damages arising from the use of this software.
|
||||||
@ -39,45 +39,44 @@
|
|||||||
|
|
||||||
#include "raylib.h"
|
#include "raylib.h"
|
||||||
|
|
||||||
// WARNING: raygui implementation is expected to be defined before including this header
|
|
||||||
#undef RAYGUI_IMPLEMENTATION
|
|
||||||
#include "../../src/raygui.h"
|
|
||||||
|
|
||||||
#ifndef GUI_FILE_DIALOG_H
|
#ifndef GUI_FILE_DIALOG_H
|
||||||
#define GUI_FILE_DIALOG_H
|
#define GUI_FILE_DIALOG_H
|
||||||
|
|
||||||
|
// Gui file dialog context data
|
||||||
typedef struct {
|
typedef struct {
|
||||||
Vector2 position;
|
|
||||||
Vector2 size;
|
|
||||||
|
|
||||||
bool fileDialogActive;
|
// Window management variables
|
||||||
|
bool windowActive;
|
||||||
|
Rectangle windowBounds;
|
||||||
|
Vector2 panOffset;
|
||||||
|
bool dragMode;
|
||||||
|
bool supportDrag;
|
||||||
|
|
||||||
|
// UI variables
|
||||||
bool dirPathEditMode;
|
bool dirPathEditMode;
|
||||||
char dirPathText[256];
|
char dirPathText[1024];
|
||||||
|
|
||||||
int filesListScrollIndex;
|
int filesListScrollIndex;
|
||||||
bool filesListEditMode;
|
bool filesListEditMode;
|
||||||
int filesListActive;
|
int filesListActive;
|
||||||
|
|
||||||
bool fileNameEditMode;
|
bool fileNameEditMode;
|
||||||
char fileNameText[256];
|
char fileNameText[1024];
|
||||||
bool SelectFilePressed;
|
bool SelectFilePressed;
|
||||||
bool CancelFilePressed;
|
bool CancelFilePressed;
|
||||||
int fileTypeActive;
|
int fileTypeActive;
|
||||||
int itemFocused;
|
int itemFocused;
|
||||||
|
|
||||||
// Custom state variables (depend on development software)
|
// Custom state variables
|
||||||
// NOTE: This variables should be added manually if required
|
FilePathList dirFiles;
|
||||||
char **dirFiles;
|
|
||||||
int dirFilesCount;
|
|
||||||
|
|
||||||
char filterExt[256];
|
char filterExt[256];
|
||||||
|
char dirPathTextCopy[1024];
|
||||||
char dirPathTextCopy[256];
|
char fileNameTextCopy[1024];
|
||||||
char fileNameTextCopy[256];
|
|
||||||
|
|
||||||
int prevFilesListActive;
|
int prevFilesListActive;
|
||||||
|
|
||||||
|
bool saveFileMode;
|
||||||
|
|
||||||
} GuiFileDialogState;
|
} GuiFileDialogState;
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
@ -102,7 +101,7 @@ extern "C" { // Prevents name mangling of functions
|
|||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
// Module Functions Declaration
|
// Module Functions Declaration
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
GuiFileDialogState InitGuiFileDialog(int width, int height, const char *initPath, bool active);
|
GuiFileDialogState InitGuiFileDialog(const char *initPath);
|
||||||
void GuiFileDialog(GuiFileDialogState *state);
|
void GuiFileDialog(GuiFileDialogState *state);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
@ -125,13 +124,12 @@ void GuiFileDialog(GuiFileDialogState *state);
|
|||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
// Defines and Macros
|
// Defines and Macros
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
#define MAX_DIRECTORY_FILES 1024
|
#define MAX_DIRECTORY_FILES 2048
|
||||||
#define MAX_DIR_PATH_LENGTH 1024
|
#define MAX_ICON_PATH_LENGTH 512
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
// Types and Structures Definition
|
// Types and Structures Definition
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
#if defined(USE_CUSTOM_LISTVIEW_FILEINFO)
|
#if defined(USE_CUSTOM_LISTVIEW_FILEINFO)
|
||||||
// Detailed file info type
|
// Detailed file info type
|
||||||
typedef struct FileInfo {
|
typedef struct FileInfo {
|
||||||
@ -143,19 +141,19 @@ typedef struct FileInfo {
|
|||||||
} FileInfo;
|
} FileInfo;
|
||||||
#else
|
#else
|
||||||
// Filename only
|
// Filename only
|
||||||
typedef char *FileInfo;
|
typedef char *FileInfo; // Files are just a path string
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
// Global Variables Definition
|
// Global Variables Definition
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
FileInfo *dirFilesIcon = NULL;
|
FileInfo *dirFilesIcon = NULL; // Path string + icon (for fancy drawing)
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
// Internal Module Functions Definition
|
// Internal Module Functions Definition
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
// Read all filenames from directory (supported file types)
|
// Read files in new path
|
||||||
static char **ReadDirectoryFiles(const char *dir, int *filesCount, char *filterExt);
|
static void ReloadDirectoryFiles(GuiFileDialogState *state);
|
||||||
|
|
||||||
#if defined(USE_CUSTOM_LISTVIEW_FILEINFO)
|
#if defined(USE_CUSTOM_LISTVIEW_FILEINFO)
|
||||||
// List View control for files info with extended parameters
|
// List View control for files info with extended parameters
|
||||||
@ -165,18 +163,19 @@ static int GuiListViewFiles(Rectangle bounds, FileInfo *files, int count, int *f
|
|||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
// Module Functions Definition
|
// Module Functions Definition
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
GuiFileDialogState InitGuiFileDialog(int width, int height, const char *initPath, bool active)
|
GuiFileDialogState InitGuiFileDialog(const char *initPath)
|
||||||
{
|
{
|
||||||
GuiFileDialogState state = { 0 };
|
GuiFileDialogState state = { 0 };
|
||||||
|
|
||||||
// Default dialog size is 440x310
|
// Init window data
|
||||||
state.size.x = width == -1 ? 440 : width;
|
state.windowBounds = (Rectangle){ GetScreenWidth()/2 - 440/2, GetScreenHeight()/2 - 310/2, 440, 310 };
|
||||||
state.size.y = height == -1 ? 310 : height;
|
state.windowActive = false;
|
||||||
state.position = (Vector2){ GetScreenWidth()/2 - state.size.x/2, GetScreenHeight()/2 - state.size.y/2 };
|
state.supportDrag = true;
|
||||||
|
state.dragMode = false;
|
||||||
|
state.panOffset = (Vector2){ 0, 0 };
|
||||||
|
|
||||||
state.fileDialogActive = active;
|
// Init path data
|
||||||
state.dirPathEditMode = false;
|
state.dirPathEditMode = false;
|
||||||
|
|
||||||
state.filesListActive = -1;
|
state.filesListActive = -1;
|
||||||
state.prevFilesListActive = state.filesListActive;
|
state.prevFilesListActive = state.filesListActive;
|
||||||
state.filesListScrollIndex = 0;
|
state.filesListScrollIndex = 0;
|
||||||
@ -202,85 +201,98 @@ GuiFileDialogState InitGuiFileDialog(int width, int height, const char *initPath
|
|||||||
}
|
}
|
||||||
else strcpy(state.dirPathText, GetWorkingDirectory());
|
else strcpy(state.dirPathText, GetWorkingDirectory());
|
||||||
|
|
||||||
|
// TODO: Why we keep a copy?
|
||||||
strcpy(state.dirPathTextCopy, state.dirPathText);
|
strcpy(state.dirPathTextCopy, state.dirPathText);
|
||||||
strcpy(state.fileNameTextCopy, state.fileNameText);
|
strcpy(state.fileNameTextCopy, state.fileNameText);
|
||||||
|
|
||||||
strcpy(state.filterExt, "all");
|
state.filterExt[0] = '\0';
|
||||||
|
//strcpy(state.filterExt, "all");
|
||||||
|
|
||||||
state.dirFilesCount = 0;
|
state.dirFiles.count = 0;
|
||||||
state.dirFiles = NULL; // NOTE: Loaded lazily on window active
|
|
||||||
|
|
||||||
return state;
|
return state;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Read files in new path
|
|
||||||
static void FD_RELOAD_DIRPATH(GuiFileDialogState *state)
|
|
||||||
{
|
|
||||||
for (int i = 0; i < state->dirFilesCount; i++) RL_FREE(state->dirFiles[i]);
|
|
||||||
RL_FREE(state->dirFiles);
|
|
||||||
|
|
||||||
state->dirFiles = ReadDirectoryFiles(state->dirPathText, &state->dirFilesCount, state->filterExt);
|
|
||||||
state->itemFocused = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update and draw file dialog
|
// Update and draw file dialog
|
||||||
void GuiFileDialog(GuiFileDialogState *state)
|
void GuiFileDialog(GuiFileDialogState *state)
|
||||||
{
|
{
|
||||||
if (state->fileDialogActive)
|
if (state->windowActive)
|
||||||
{
|
{
|
||||||
const int winWidth = state->size.x;
|
// Update window dragging
|
||||||
const int winHeight = state->size.y;
|
//----------------------------------------------------------------------------------------
|
||||||
|
if (state->supportDrag)
|
||||||
// Load dirFilesIcon and state->dirFiles lazily on windows open
|
|
||||||
// NOTE: they are automatically unloaded at fileDialog closing
|
|
||||||
//------------------------------------------------------------------------------------
|
|
||||||
if (dirFilesIcon == NULL)
|
|
||||||
{
|
{
|
||||||
dirFilesIcon = (FileInfo *)RL_MALLOC(MAX_DIRECTORY_FILES*sizeof(FileInfo)); // Max files to read
|
Vector2 mousePosition = GetMousePosition();
|
||||||
for (int i = 0; i < MAX_DIRECTORY_FILES; i++) dirFilesIcon[i] = (char *)calloc(MAX_DIR_PATH_LENGTH, 1); // Max file name length
|
|
||||||
}
|
|
||||||
|
|
||||||
if (state->dirFiles == NULL)
|
if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
|
||||||
{
|
|
||||||
state->dirFiles = ReadDirectoryFiles(state->dirPathText, &state->dirFilesCount, state->filterExt);
|
|
||||||
|
|
||||||
for(int f = 0; f < state->dirFilesCount; f++)
|
|
||||||
{
|
{
|
||||||
if (strcmp(state->fileNameText, state->dirFiles[f]) == 0)
|
// Window can be dragged from the top window bar
|
||||||
|
if (CheckCollisionPointRec(mousePosition, (Rectangle){ state->windowBounds.x, state->windowBounds.y, (float)state->windowBounds.width, RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT }))
|
||||||
{
|
{
|
||||||
if (state->filesListActive != f) state->filesListScrollIndex = state->filesListActive = f; // Make it active and visible only on first call
|
state->dragMode = true;
|
||||||
|
state->panOffset.x = mousePosition.x - state->windowBounds.x;
|
||||||
break;
|
state->panOffset.y = mousePosition.y - state->windowBounds.y;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (state->dragMode)
|
||||||
|
{
|
||||||
|
state->windowBounds.x = (mousePosition.x - state->panOffset.x);
|
||||||
|
state->windowBounds.y = (mousePosition.y - state->panOffset.y);
|
||||||
|
|
||||||
|
// Check screen limits to avoid moving out of screen
|
||||||
|
if (state->windowBounds.x < 0) state->windowBounds.x = 0;
|
||||||
|
else if (state->windowBounds.x > (GetScreenWidth() - state->windowBounds.width)) state->windowBounds.x = GetScreenWidth() - state->windowBounds.width;
|
||||||
|
|
||||||
|
if (state->windowBounds.y < 0) state->windowBounds.y = 0;
|
||||||
|
else if (state->windowBounds.y > (GetScreenHeight() - state->windowBounds.height)) state->windowBounds.y = GetScreenHeight() - state->windowBounds.height;
|
||||||
|
|
||||||
|
if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) state->dragMode = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR)), 0.85f));
|
// Load dirFilesIcon and state->dirFiles lazily on windows open
|
||||||
state->fileDialogActive = !GuiWindowBox((Rectangle){ state->position.x + 0, state->position.y + 0, winWidth, winHeight }, "#198#LuaJIT | Select File Dialog");
|
// NOTE: They are automatically unloaded at fileDialog closing
|
||||||
|
//----------------------------------------------------------------------------------------
|
||||||
|
if (dirFilesIcon == NULL)
|
||||||
|
{
|
||||||
|
dirFilesIcon = (FileInfo *)RL_CALLOC(MAX_DIRECTORY_FILES, sizeof(FileInfo)); // Max files to read
|
||||||
|
for (int i = 0; i < MAX_DIRECTORY_FILES; i++) dirFilesIcon[i] = (char *)RL_CALLOC(MAX_ICON_PATH_LENGTH, 1); // Max file name length
|
||||||
|
}
|
||||||
|
|
||||||
if (GuiButton((Rectangle){ state->position.x + winWidth - 50, state->position.y + 35, 40, 25 }, "< ..")) // || IsKeyReleased(KEY_DPAD_Y))
|
// Load current directory files
|
||||||
|
if (state->dirFiles.paths == NULL) ReloadDirectoryFiles(state);
|
||||||
|
//----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Draw window and controls
|
||||||
|
//----------------------------------------------------------------------------------------
|
||||||
|
state->windowActive = !GuiWindowBox(state->windowBounds, "#198# Select File Dialog");
|
||||||
|
|
||||||
|
// Draw previous directory button + logic
|
||||||
|
if (GuiButton((Rectangle){ state->windowBounds.x + state->windowBounds.width - 48, state->windowBounds.y + 24 + 12, 40, 24 }, "< .."))
|
||||||
{
|
{
|
||||||
// Move dir path one level up
|
// Move dir path one level up
|
||||||
strcpy(state->dirPathText, GetPrevDirectoryPath(state->dirPathText));
|
strcpy(state->dirPathText, GetPrevDirectoryPath(state->dirPathText));
|
||||||
|
|
||||||
// RL_FREE previous dirFiles (reloaded by ReadDirectoryFiles())
|
// Reload directory files (frees previous list)
|
||||||
FD_RELOAD_DIRPATH(state);
|
ReloadDirectoryFiles(state);
|
||||||
|
|
||||||
state->filesListActive = -1;
|
state->filesListActive = -1;
|
||||||
strcpy(state->fileNameText, "\0");
|
memset(state->fileNameText, 0, 1024);
|
||||||
strcpy(state->fileNameTextCopy, state->fileNameText);
|
memset(state->fileNameTextCopy, 0, 1024);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GuiTextBox((Rectangle){ state->position.x + 10, state->position.y + 35, winWidth - 65, 25 }, state->dirPathText, 256, state->dirPathEditMode))
|
// Draw current directory text box info + path editing logic
|
||||||
|
if (GuiTextBox((Rectangle){ state->windowBounds.x + 8, state->windowBounds.y + 24 + 12, state->windowBounds.width - 48 - 16, 24 }, state->dirPathText, 1024, state->dirPathEditMode))
|
||||||
{
|
{
|
||||||
if (state->dirPathEditMode)
|
if (state->dirPathEditMode)
|
||||||
{
|
{
|
||||||
// Verify if a valid path has been introduced
|
// Verify if a valid path has been introduced
|
||||||
if (DirectoryExists(state->dirPathText))
|
if (DirectoryExists(state->dirPathText))
|
||||||
{
|
{
|
||||||
// RL_FREE previous dirFiles (reloaded by ReadDirectoryFiles())
|
// Reload directory files (frees previous list)
|
||||||
FD_RELOAD_DIRPATH(state);
|
ReloadDirectoryFiles(state);
|
||||||
|
|
||||||
strcpy(state->dirPathTextCopy, state->dirPathText);
|
strcpy(state->dirPathTextCopy, state->dirPathText);
|
||||||
}
|
}
|
||||||
@ -290,35 +302,34 @@ void GuiFileDialog(GuiFileDialogState *state)
|
|||||||
state->dirPathEditMode = !state->dirPathEditMode;
|
state->dirPathEditMode = !state->dirPathEditMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// List view elements are aligned left
|
||||||
int prevTextAlignment = GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT);
|
int prevTextAlignment = GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT);
|
||||||
int prevElementsHeight = GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
int prevElementsHeight = GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
||||||
GuiSetStyle(LISTVIEW, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_LEFT);
|
GuiSetStyle(LISTVIEW, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
|
||||||
GuiSetStyle(LISTVIEW, LIST_ITEMS_HEIGHT, 24);
|
GuiSetStyle(LISTVIEW, LIST_ITEMS_HEIGHT, 24);
|
||||||
|
|
||||||
// TODO: ListViewElements should be aligned left
|
|
||||||
# if defined(USE_CUSTOM_LISTVIEW_FILEINFO)
|
# if defined(USE_CUSTOM_LISTVIEW_FILEINFO)
|
||||||
FileInfo fileInfo;
|
state->filesListActive = GuiListViewFiles((Rectangle){ state->position.x + 8, state->position.y + 48 + 20, state->windowBounds.width - 16, state->windowBounds.height - 60 - 16 - 68 }, fileInfo, state->dirFiles.count, &state->itemFocused, &state->filesListScrollIndex, state->filesListActive);
|
||||||
state->filesListActive = GuiListViewFiles((Rectangle){ state->position.x + 10, state->position.y + 70, winWidth - 20, winHeight - 135 }, fileInfo, state->dirFilesCount, &state->itemFocused, &state->filesListScrollIndex, state->filesListActive);
|
|
||||||
# else
|
# else
|
||||||
state->filesListActive = GuiListViewEx((Rectangle){ state->position.x + 10, state->position.y + 70, winWidth - 20, winHeight - 135 }, (const char**)dirFilesIcon, state->dirFilesCount, &state->itemFocused, &state->filesListScrollIndex, state->filesListActive);
|
state->filesListActive = GuiListViewEx((Rectangle){ state->windowBounds.x + 8, state->windowBounds.y + 48 + 20, state->windowBounds.width - 16, state->windowBounds.height - 60 - 16 - 68 }, (const char**)dirFilesIcon, state->dirFiles.count, &state->itemFocused, &state->filesListScrollIndex, state->filesListActive);
|
||||||
# endif
|
# endif
|
||||||
GuiSetStyle(LISTVIEW, TEXT_ALIGNMENT, prevTextAlignment);
|
GuiSetStyle(LISTVIEW, TEXT_ALIGNMENT, prevTextAlignment);
|
||||||
GuiSetStyle(LISTVIEW, LIST_ITEMS_HEIGHT, prevElementsHeight);
|
GuiSetStyle(LISTVIEW, LIST_ITEMS_HEIGHT, prevElementsHeight);
|
||||||
|
|
||||||
|
// Check if a path has been selected, if it is a directory, move to that directory (and reload paths)
|
||||||
if ((state->filesListActive >= 0) && (state->filesListActive != state->prevFilesListActive))
|
if ((state->filesListActive >= 0) && (state->filesListActive != state->prevFilesListActive))
|
||||||
//&& (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) || IsKeyPressed(KEY_ENTER) || IsKeyPressed(KEY_DPAD_A)))
|
//&& (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) || IsKeyPressed(KEY_ENTER) || IsKeyPressed(KEY_DPAD_A)))
|
||||||
{
|
{
|
||||||
strcpy(state->fileNameText, state->dirFiles[state->filesListActive]);
|
strcpy(state->fileNameText, GetFileName(state->dirFiles.paths[state->filesListActive]));
|
||||||
|
|
||||||
if (DirectoryExists(TextFormat("%s/%s", state->dirPathText, state->fileNameText)))
|
if (DirectoryExists(TextFormat("%s/%s", state->dirPathText, state->fileNameText)))
|
||||||
{
|
{
|
||||||
if (TextIsEqual(state->fileNameText, "..")) strcpy(state->dirPathText, GetPrevDirectoryPath(state->dirPathText));
|
if (TextIsEqual(state->fileNameText, "..")) strcpy(state->dirPathText, GetPrevDirectoryPath(state->dirPathText));
|
||||||
else strcpy(state->dirPathText, TextFormat("%s/%s", strcmp(state->dirPathText, "/")==0 ? "" : state->dirPathText, state->fileNameText));
|
else strcpy(state->dirPathText, TextFormat("%s/%s", (strcmp(state->dirPathText, "/") == 0)? "" : state->dirPathText, state->fileNameText));
|
||||||
|
|
||||||
strcpy(state->dirPathTextCopy, state->dirPathText);
|
strcpy(state->dirPathTextCopy, state->dirPathText);
|
||||||
|
|
||||||
// RL_FREE previous dirFiles (reloaded by ReadDirectoryFiles())
|
// Reload directory files (frees previous list)
|
||||||
FD_RELOAD_DIRPATH(state);
|
ReloadDirectoryFiles(state);
|
||||||
|
|
||||||
strcpy(state->dirPathTextCopy, state->dirPathText);
|
strcpy(state->dirPathTextCopy, state->dirPathText);
|
||||||
|
|
||||||
@ -330,9 +341,10 @@ void GuiFileDialog(GuiFileDialogState *state)
|
|||||||
state->prevFilesListActive = state->filesListActive;
|
state->prevFilesListActive = state->filesListActive;
|
||||||
}
|
}
|
||||||
|
|
||||||
GuiLabel((Rectangle){ state->position.x + 10, state->position.y + winHeight - 60, 68, 25 }, "File name:");
|
// Draw bottom controls
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
if (GuiTextBox((Rectangle){ state->position.x + 75, state->position.y + winHeight - 60, winWidth - 200, 25 }, state->fileNameText, 128, state->fileNameEditMode))
|
GuiLabel((Rectangle){ state->windowBounds.x + 8, state->windowBounds.y + state->windowBounds.height - 68, 60, 24 }, "File name:");
|
||||||
|
if (GuiTextBox((Rectangle){ state->windowBounds.x + 72, state->windowBounds.y + state->windowBounds.height - 68, state->windowBounds.width - 184, 24 }, state->fileNameText, 128, state->fileNameEditMode))
|
||||||
{
|
{
|
||||||
if (*state->fileNameText)
|
if (*state->fileNameText)
|
||||||
{
|
{
|
||||||
@ -340,9 +352,9 @@ void GuiFileDialog(GuiFileDialogState *state)
|
|||||||
if (FileExists(TextFormat("%s/%s", state->dirPathText, state->fileNameText)))
|
if (FileExists(TextFormat("%s/%s", state->dirPathText, state->fileNameText)))
|
||||||
{
|
{
|
||||||
// Select filename from list view
|
// Select filename from list view
|
||||||
for (int i = 0; i < state->dirFilesCount; i++)
|
for (int i = 0; i < state->dirFiles.count; i++)
|
||||||
{
|
{
|
||||||
if (TextIsEqual(state->fileNameText, state->dirFiles[i]))
|
if (TextIsEqual(state->fileNameText, state->dirFiles.paths[i]))
|
||||||
{
|
{
|
||||||
state->filesListActive = i;
|
state->filesListActive = i;
|
||||||
strcpy(state->fileNameTextCopy, state->fileNameText);
|
strcpy(state->fileNameTextCopy, state->fileNameText);
|
||||||
@ -350,7 +362,7 @@ void GuiFileDialog(GuiFileDialogState *state)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else if (!state->saveFileMode)
|
||||||
{
|
{
|
||||||
strcpy(state->fileNameText, state->fileNameTextCopy);
|
strcpy(state->fileNameText, state->fileNameTextCopy);
|
||||||
}
|
}
|
||||||
@ -359,38 +371,33 @@ void GuiFileDialog(GuiFileDialogState *state)
|
|||||||
state->fileNameEditMode = !state->fileNameEditMode;
|
state->fileNameEditMode = !state->fileNameEditMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
state->fileTypeActive = GuiComboBox((Rectangle){ state->position.x + 75, state->position.y + winHeight - 30, winWidth - 200, 25 }, "All files", state->fileTypeActive);
|
GuiLabel((Rectangle){ state->windowBounds.x + 8, state->windowBounds.y + state->windowBounds.height - 24 - 12, 68, 24 }, "File filter:");
|
||||||
GuiLabel((Rectangle){ state->position.x + 10, state->position.y + winHeight - 30, 68, 25 }, "File filter:");
|
state->fileTypeActive = GuiComboBox((Rectangle){ state->windowBounds.x + 72, state->windowBounds.y + state->windowBounds.height - 24 - 12, state->windowBounds.width - 184, 24 }, "All files", state->fileTypeActive);
|
||||||
|
|
||||||
state->SelectFilePressed = GuiButton((Rectangle){ state->position.x + winWidth - 120, state->position.y + winHeight - 60, 110,
|
state->SelectFilePressed = GuiButton((Rectangle){ state->windowBounds.x + state->windowBounds.width - 96 - 8, state->windowBounds.y + state->windowBounds.height - 68, 96, 24 }, "Select");
|
||||||
#ifdef PLATFORM_DESKTOP
|
|
||||||
25
|
|
||||||
#else
|
|
||||||
25 + 30
|
|
||||||
#endif
|
|
||||||
}, "Select");// || IsKeyPressed(KEY_ENTER) || IsKeyPressed(KEY_DPAD_A);
|
|
||||||
|
|
||||||
if (state->SelectFilePressed) state->fileDialogActive = false;
|
if (GuiButton((Rectangle){ state->windowBounds.x + state->windowBounds.width - 96 - 8, state->windowBounds.y + state->windowBounds.height - 24 - 12, 96, 24 }, "Cancel")) state->windowActive = false;
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
|
|
||||||
#ifdef PLATFORM_DESKTOP
|
// Exit on file selected
|
||||||
if (GuiButton((Rectangle){ state->position.x + winWidth - 120, state->position.y + winHeight - 30, 110, 25 }, "Quit")) state->fileDialogActive = false;
|
if (state->SelectFilePressed) state->windowActive = false;
|
||||||
#endif
|
|
||||||
|
|
||||||
// File dialog has been closed!
|
// File dialog has been closed, free all memory before exit
|
||||||
if (!state->fileDialogActive)
|
if (!state->windowActive)
|
||||||
{
|
{
|
||||||
// RL_FREE dirFiles memory
|
// Free dirFilesIcon memory
|
||||||
for (int i = 0; i < state->dirFilesCount; i++)
|
for (int i = 0; i < MAX_DIRECTORY_FILES; i++) RL_FREE(dirFilesIcon[i]);
|
||||||
{
|
|
||||||
RL_FREE(state->dirFiles[i]);
|
|
||||||
RL_FREE(dirFilesIcon[i]);
|
|
||||||
}
|
|
||||||
|
|
||||||
RL_FREE(state->dirFiles);
|
|
||||||
RL_FREE(dirFilesIcon);
|
RL_FREE(dirFilesIcon);
|
||||||
|
|
||||||
dirFilesIcon = NULL;
|
dirFilesIcon = NULL;
|
||||||
state->dirFiles = NULL;
|
|
||||||
|
// Unload directory file paths
|
||||||
|
UnloadDirectoryFiles(state->dirFiles);
|
||||||
|
|
||||||
|
// Reset state variables
|
||||||
|
state->dirFiles.count = 0;
|
||||||
|
state->dirFiles.capacity = 0;
|
||||||
|
state->dirFiles.paths = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -410,105 +417,54 @@ static inline int FileCompare(const char *d1, const char *d2, const char *dir)
|
|||||||
return strcmp(d1, d2);
|
return strcmp(d1, d2);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Read all filenames from directory (supported file types)
|
// Read files in new path
|
||||||
static char **ReadDirectoryFiles(const char *dir, int *filesCount, char *filterExt)
|
static void ReloadDirectoryFiles(GuiFileDialogState *state)
|
||||||
{
|
{
|
||||||
int validFilesCount = 0;
|
UnloadDirectoryFiles(state->dirFiles);
|
||||||
char **validFiles = (char **)RL_MALLOC(MAX_DIRECTORY_FILES*sizeof(char *)); // Max files to read
|
|
||||||
for (int i = 0; i < MAX_DIRECTORY_FILES; i++) validFiles[i] = (char *)RL_MALLOC(MAX_DIR_PATH_LENGTH); // Max file name length
|
|
||||||
|
|
||||||
int filterExtCount = 0;
|
state->dirFiles = LoadDirectoryFilesEx(state->dirPathText, (state->filterExt[0] == '\0')? NULL : state->filterExt, false);
|
||||||
const char **extensions = GuiTextSplit(filterExt, &filterExtCount, NULL);
|
state->itemFocused = 0;
|
||||||
bool filterExtensions = true;
|
|
||||||
|
|
||||||
int dirFilesCount = 0;
|
// Reset dirFilesIcon memory
|
||||||
char **files = GetDirectoryFiles(dir, &dirFilesCount);
|
for (int i = 0; i < MAX_DIRECTORY_FILES; i++) memset(dirFilesIcon[i], 0, MAX_ICON_PATH_LENGTH);
|
||||||
|
|
||||||
// Sort files and directories: dir by name + files by name
|
// Copy paths as icon + fileNames into dirFilesIcon
|
||||||
// https://en.wikibooks.org/wiki/Algorithm_Implementation/Sorting/Quicksort#C
|
for (int i = 0; i < state->dirFiles.count; i++)
|
||||||
if (dirFilesCount > 1)
|
|
||||||
{
|
{
|
||||||
const int MAX = 64;
|
if (IsPathFile(state->dirFiles.paths[i]))
|
||||||
unsigned int left = 0, stack[64], pos = 0, seed = rand(), len = dirFilesCount;
|
|
||||||
|
|
||||||
for (;;)
|
|
||||||
{
|
{
|
||||||
for (; left + 1 < len; len++) // Sort left to len - 1
|
// Path is a file, a file icon for convenience (for some recognized extensions)
|
||||||
|
if (IsFileExtension(state->dirFiles.paths[i], ".png;.bmp;.tga;.gif;.jpg;.jpeg;.psd;.hdr;.qoi;.dds;.pkm;.ktx;.pvr;.astc"))
|
||||||
{
|
{
|
||||||
if (pos == MAX) len = stack[pos = 0]; // Stack overflow, reset
|
strcpy(dirFilesIcon[i], TextFormat("#12#%s", GetFileName(state->dirFiles.paths[i])));
|
||||||
char *pivot = files[left + seed%(len - left)]; // Pick random pivot
|
|
||||||
seed = seed*69069 + 1; // Next pseudo-random number
|
|
||||||
stack[pos++] = len; // Sort right part later
|
|
||||||
|
|
||||||
for (unsigned int right = left - 1;;) // Inner loop: partitioning
|
|
||||||
{
|
|
||||||
while (FileCompare(files[++right], pivot, dir) < 0); // Look for greater element
|
|
||||||
while (FileCompare(pivot, files[--len], dir) < 0); // Look for smaller element
|
|
||||||
if (right >= len) break; // Partition point found?
|
|
||||||
char *temp = files[right];
|
|
||||||
files[right] = files[len]; // The only swap
|
|
||||||
files[len] = temp;
|
|
||||||
} // Partitioned, continue left part
|
|
||||||
}
|
}
|
||||||
|
else if (IsFileExtension(state->dirFiles.paths[i], ".wav;.mp3;.ogg;.flac;.xm;.mod;.it;.wma;.aiff"))
|
||||||
if (pos == 0) break; // Stack empty?
|
|
||||||
left = len; // Left to right is sorted
|
|
||||||
len = stack[--pos]; // Get next range to sort
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (TextIsEqual(extensions[0], "all")) filterExtensions = false;
|
|
||||||
|
|
||||||
for (int i = 0; (i < dirFilesCount) && (validFilesCount < MAX_DIRECTORY_FILES); i++)
|
|
||||||
{
|
|
||||||
if (TextIsEqual(files[i], ".")) continue;
|
|
||||||
|
|
||||||
if (!filterExtensions)
|
|
||||||
{
|
|
||||||
strncpy(validFiles[validFilesCount], files[i], MAX_DIR_PATH_LENGTH);
|
|
||||||
|
|
||||||
// Only filter files by extensions, directories should be available
|
|
||||||
if (DirectoryExists(TextFormat("%s/%s", dir, files[i]))) strcpy(dirFilesIcon[validFilesCount], TextFormat("#%i#%s", 1, files[i]));
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
// TODO: Assign custom filetype icons depending on file extension (image, audio, text, video, models...)
|
strcpy(dirFilesIcon[i], TextFormat("#11#%s", GetFileName(state->dirFiles.paths[i])));
|
||||||
|
|
||||||
if (IsFileExtension(files[i], ".png")) strcpy(dirFilesIcon[validFilesCount], TextFormat("#%i#%s", 12, files[i]));
|
|
||||||
else strcpy(dirFilesIcon[validFilesCount], TextFormat("#%i#%s", 10, files[i]));
|
|
||||||
}
|
}
|
||||||
|
else if (IsFileExtension(state->dirFiles.paths[i], ".txt;.info;.md;.nfo;.xml;.json;.c;.cpp;.cs;.lua;.py;.glsl;.vs;.fs"))
|
||||||
validFilesCount++;
|
{
|
||||||
|
strcpy(dirFilesIcon[i], TextFormat("#10#%s", GetFileName(state->dirFiles.paths[i])));
|
||||||
|
}
|
||||||
|
else if (IsFileExtension(state->dirFiles.paths[i], ".exe;.bin;.raw;.msi"))
|
||||||
|
{
|
||||||
|
strcpy(dirFilesIcon[i], TextFormat("#200#%s", GetFileName(state->dirFiles.paths[i])));
|
||||||
|
}
|
||||||
|
else strcpy(dirFilesIcon[i], TextFormat("#218#%s", GetFileName(state->dirFiles.paths[i])));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
for (int j = 0; j < filterExtCount; j++)
|
// Path is a directory, add a directory icon
|
||||||
{
|
strcpy(dirFilesIcon[i], TextFormat("#1#%s", GetFileName(state->dirFiles.paths[i])));
|
||||||
// Check file type extensions supported
|
|
||||||
// NOTE: We just store valid files list
|
|
||||||
if (IsFileExtension(files[i], extensions[j]))
|
|
||||||
{
|
|
||||||
// TODO: Assign custom filetype icons depending on file extension (image, audio, text, video, models...)
|
|
||||||
|
|
||||||
if (IsFileExtension(files[i], ".png")) strcpy(dirFilesIcon[validFilesCount], TextFormat("#%i#%s", 12, files[i]));
|
|
||||||
else strcpy(dirFilesIcon[validFilesCount], TextFormat("#%i#%s", 10, files[i]));
|
|
||||||
|
|
||||||
validFilesCount++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ClearDirectoryFiles();
|
|
||||||
|
|
||||||
*filesCount = validFilesCount;
|
|
||||||
return validFiles;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(USE_CUSTOM_LISTVIEW_FILEINFO)
|
#if defined(USE_CUSTOM_LISTVIEW_FILEINFO)
|
||||||
// List View control for files info with extended parameters
|
// List View control for files info with extended parameters
|
||||||
static int GuiListViewFiles(Rectangle bounds, FileInfo *files, int count, int *focus, int *scrollIndex, int active)
|
static int GuiListViewFiles(Rectangle bounds, FileInfo *files, int count, int *focus, int *scrollIndex, int active)
|
||||||
{
|
{
|
||||||
GuiControlState state = guiState;
|
GuiState state = guiState;
|
||||||
int itemFocused = (focus == NULL)? -1 : *focus;
|
int itemFocused = (focus == NULL)? -1 : *focus;
|
||||||
int itemSelected = active;
|
int itemSelected = active;
|
||||||
|
|
||||||
|
|||||||
470
examples/custom_sliders/custom_sliders.c
Normal file
@ -0,0 +1,470 @@
|
|||||||
|
/*******************************************************************************************
|
||||||
|
*
|
||||||
|
* raygui - custom sliders
|
||||||
|
*
|
||||||
|
* DEPENDENCIES:
|
||||||
|
* raylib 4.0 - Windowing/input management and drawing.
|
||||||
|
* raygui 3.0 - 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-2023 Ramon Santamaria (@raysan5)
|
||||||
|
*
|
||||||
|
**********************************************************************************************/
|
||||||
|
|
||||||
|
#include "raylib.h"
|
||||||
|
|
||||||
|
#define RAYGUI_IMPLEMENTATION
|
||||||
|
#include "../../src/raygui.h"
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// Controls Functions Declaration
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
float GuiVerticalSlider(Rectangle bounds, const char *textTop, const char *textBottom, float value, float minValue, float maxValue);
|
||||||
|
float GuiVerticalSliderBar(Rectangle bounds, const char *textTop, const char *textBottom, float value, float minValue, float maxValue);
|
||||||
|
float GuiVerticalSliderPro(Rectangle bounds, const char *textTop, const char *textBottom, float value, float minValue, float maxValue, int sliderHeight);
|
||||||
|
|
||||||
|
bool GuiSliderOwning(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue, bool editMode);
|
||||||
|
bool GuiSliderBarOwning(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue, bool editMode);
|
||||||
|
bool GuiSliderProOwning(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue, int sliderWidth, bool editMode);
|
||||||
|
|
||||||
|
bool GuiVerticalSliderOwning(Rectangle bounds, const char *textTop, const char *textBottom, float *value, float minValue, float maxValue, bool editMode);
|
||||||
|
bool GuiVerticalSliderBarOwning(Rectangle bounds, const char *textTop, const char *textBottom, float *value, float minValue, float maxValue, bool editMode);
|
||||||
|
bool GuiVerticalSliderProOwning(Rectangle bounds, const char *textTop, const char *textBottom, float *value, float minValue, float maxValue, int sliderHeight, bool editMode);
|
||||||
|
|
||||||
|
//------------------------------------------------------------------------------------
|
||||||
|
// Program main entry point
|
||||||
|
//------------------------------------------------------------------------------------
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
// Initialization
|
||||||
|
//---------------------------------------------------------------------------------------
|
||||||
|
int screenWidth = 800;
|
||||||
|
int screenHeight = 450;
|
||||||
|
|
||||||
|
InitWindow(screenWidth, screenHeight, "raygui - custom sliders");
|
||||||
|
|
||||||
|
float value = 0.5f;
|
||||||
|
bool sliderEditMode = false;
|
||||||
|
bool vSliderEditMode = false;
|
||||||
|
bool vSliderBarEditMode = false;
|
||||||
|
|
||||||
|
SetTargetFPS(60);
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Main game loop
|
||||||
|
while (!WindowShouldClose()) // Detect window close button or ESC key
|
||||||
|
{
|
||||||
|
// Update
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// TODO: Implement required update logic
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Draw
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
BeginDrawing();
|
||||||
|
|
||||||
|
ClearBackground(GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR)));
|
||||||
|
|
||||||
|
if (vSliderEditMode || vSliderBarEditMode) GuiLock();
|
||||||
|
else GuiUnlock();
|
||||||
|
|
||||||
|
// raygui: controls drawing
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
GuiGroupBox((Rectangle){ 66, 24, 276, 312 }, "STANDARD");
|
||||||
|
value = GuiSlider((Rectangle){ 96, 48, 216, 16 }, TextFormat("%0.2f", value), NULL, value, 0.0f, 1.0f);
|
||||||
|
value = GuiVerticalSlider((Rectangle){ 120, 120, 24, 192 }, TextFormat("%0.2f", value), NULL, value, 0.0f, 1.0f);
|
||||||
|
value = GuiVerticalSliderBar((Rectangle){ 264, 120, 24, 192 }, TextFormat("%0.2f", value), NULL, value, 0.0f, 1.0f);
|
||||||
|
|
||||||
|
GuiGroupBox((Rectangle){ 378, 24, 276, 312 }, "OWNING");
|
||||||
|
if (GuiSliderOwning((Rectangle){ 408, 48, 216, 16 }, NULL, TextFormat("%0.2f", value), &value, 0.0f, 1.0f, sliderEditMode)) sliderEditMode = !sliderEditMode;
|
||||||
|
if (GuiVerticalSliderOwning((Rectangle){ 432, 120, 24, 192 }, NULL, TextFormat("%0.2f", value), &value, 0.0f, 1.0f, vSliderEditMode)) vSliderEditMode = !vSliderEditMode;
|
||||||
|
if (GuiVerticalSliderBarOwning((Rectangle){ 576, 120, 24, 192 }, NULL, TextFormat("%0.2f", value), &value, 0.0f, 1.0f, vSliderBarEditMode)) vSliderBarEditMode = !vSliderBarEditMode;
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
EndDrawing();
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
}
|
||||||
|
|
||||||
|
// De-Initialization
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
|
CloseWindow(); // Close window and OpenGL context
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
//------------------------------------------------------------------------------------
|
||||||
|
// Controls Functions Definitions (local)
|
||||||
|
//------------------------------------------------------------------------------------
|
||||||
|
float GuiVerticalSliderPro(Rectangle bounds, const char *textTop, const char *textBottom, float value, float minValue, float maxValue, int sliderHeight)
|
||||||
|
{
|
||||||
|
GuiState state = (GuiState)GuiGetState();
|
||||||
|
|
||||||
|
int sliderValue = (int)(((value - minValue)/(maxValue - minValue)) * (bounds.height - 2 * GuiGetStyle(SLIDER, BORDER_WIDTH)));
|
||||||
|
|
||||||
|
Rectangle slider = {
|
||||||
|
bounds.x + GuiGetStyle(SLIDER, BORDER_WIDTH) + GuiGetStyle(SLIDER, SLIDER_PADDING),
|
||||||
|
bounds.y + bounds.height - sliderValue,
|
||||||
|
bounds.width - 2*GuiGetStyle(SLIDER, BORDER_WIDTH) - 2*GuiGetStyle(SLIDER, SLIDER_PADDING),
|
||||||
|
0.0f,
|
||||||
|
};
|
||||||
|
|
||||||
|
if (sliderHeight > 0) // Slider
|
||||||
|
{
|
||||||
|
slider.y -= sliderHeight/2;
|
||||||
|
slider.height = (float)sliderHeight;
|
||||||
|
}
|
||||||
|
else if (sliderHeight == 0) // SliderBar
|
||||||
|
{
|
||||||
|
slider.y -= GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
slider.height = (float)sliderValue;
|
||||||
|
}
|
||||||
|
// Update control
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
if ((state != STATE_DISABLED) && !guiLocked)
|
||||||
|
{
|
||||||
|
Vector2 mousePoint = GetMousePosition();
|
||||||
|
|
||||||
|
if (CheckCollisionPointRec(mousePoint, bounds))
|
||||||
|
{
|
||||||
|
if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
|
||||||
|
{
|
||||||
|
state = STATE_PRESSED;
|
||||||
|
|
||||||
|
// Get equivalent value and slider position from mousePoint.x
|
||||||
|
float normalizedValue = (bounds.y + bounds.height - mousePoint.y - (float)(sliderHeight / 2)) / (bounds.height - (float)sliderHeight);
|
||||||
|
value = (maxValue - minValue) * normalizedValue + minValue;
|
||||||
|
|
||||||
|
if (sliderHeight > 0) slider.y = mousePoint.y - slider.height / 2; // Slider
|
||||||
|
else if (sliderHeight == 0) // SliderBar
|
||||||
|
{
|
||||||
|
slider.y = mousePoint.y;
|
||||||
|
slider.height = bounds.y + bounds.height - slider.y - GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else state = STATE_FOCUSED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (value > maxValue) value = maxValue;
|
||||||
|
else if (value < minValue) value = minValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Bar limits check
|
||||||
|
if (sliderHeight > 0) // Slider
|
||||||
|
{
|
||||||
|
if (slider.y < (bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH))) slider.y = bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
else if ((slider.y + slider.height) >= (bounds.y + bounds.height)) slider.y = bounds.y + bounds.height - slider.height - GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
}
|
||||||
|
else if (sliderHeight == 0) // SliderBar
|
||||||
|
{
|
||||||
|
if (slider.y < (bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH)))
|
||||||
|
{
|
||||||
|
slider.y = bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
slider.height = bounds.height - 2*GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
// Draw control
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
GuiDrawRectangle(bounds, GuiGetStyle(SLIDER, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(SLIDER, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(SLIDER, (state != STATE_DISABLED)? BASE_COLOR_NORMAL : BASE_COLOR_DISABLED)), guiAlpha));
|
||||||
|
|
||||||
|
// Draw slider internal bar (depends on state)
|
||||||
|
if ((state == STATE_NORMAL) || (state == STATE_PRESSED)) GuiDrawRectangle(slider, 0, BLANK, Fade(GetColor(GuiGetStyle(SLIDER, BASE_COLOR_PRESSED)), guiAlpha));
|
||||||
|
else if (state == STATE_FOCUSED) GuiDrawRectangle(slider, 0, BLANK, Fade(GetColor(GuiGetStyle(SLIDER, TEXT_COLOR_FOCUSED)), guiAlpha));
|
||||||
|
|
||||||
|
// Draw top/bottom text if provided
|
||||||
|
if (textTop != NULL)
|
||||||
|
{
|
||||||
|
Rectangle textBounds = { 0 };
|
||||||
|
textBounds.width = (float)GetTextWidth(textTop);
|
||||||
|
textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
|
||||||
|
textBounds.x = bounds.x + bounds.width/2 - textBounds.width/2;
|
||||||
|
textBounds.y = bounds.y - textBounds.height - GuiGetStyle(SLIDER, TEXT_PADDING);
|
||||||
|
|
||||||
|
GuiDrawText(textTop, textBounds, TEXT_ALIGN_RIGHT, Fade(GetColor(GuiGetStyle(SLIDER, TEXT + (state*3))), guiAlpha));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (textBottom != NULL)
|
||||||
|
{
|
||||||
|
Rectangle textBounds = { 0 };
|
||||||
|
textBounds.width = (float)GetTextWidth(textBottom);
|
||||||
|
textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
|
||||||
|
textBounds.x = bounds.x + bounds.width/2 - textBounds.width/2;
|
||||||
|
textBounds.y = bounds.y + bounds.height + GuiGetStyle(SLIDER, TEXT_PADDING);
|
||||||
|
|
||||||
|
GuiDrawText(textBottom, textBounds, TEXT_ALIGN_LEFT, Fade(GetColor(GuiGetStyle(SLIDER, TEXT + (state*3))), guiAlpha));
|
||||||
|
}
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
float GuiVerticalSlider(Rectangle bounds, const char *textTop, const char *textBottom, float value, float minValue, float maxValue)
|
||||||
|
{
|
||||||
|
return GuiVerticalSliderPro(bounds, textTop, textBottom, value, minValue, maxValue, GuiGetStyle(SLIDER, SLIDER_WIDTH));
|
||||||
|
}
|
||||||
|
|
||||||
|
float GuiVerticalSliderBar(Rectangle bounds, const char *textTop, const char *textBottom, float value, float minValue, float maxValue)
|
||||||
|
{
|
||||||
|
return GuiVerticalSliderPro(bounds, textTop, textBottom, value, minValue, maxValue, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool GuiSliderProOwning(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue, int sliderWidth, bool editMode)
|
||||||
|
{
|
||||||
|
GuiState state = (GuiState)GuiGetState();
|
||||||
|
|
||||||
|
float tempValue = *value;
|
||||||
|
bool pressed = false;
|
||||||
|
|
||||||
|
int sliderValue = (int)(((tempValue - minValue)/(maxValue - minValue))*(bounds.width - 2*GuiGetStyle(SLIDER, BORDER_WIDTH)));
|
||||||
|
|
||||||
|
Rectangle slider = {
|
||||||
|
bounds.x,
|
||||||
|
bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH) + GuiGetStyle(SLIDER, SLIDER_PADDING),
|
||||||
|
0,
|
||||||
|
bounds.height - 2*GuiGetStyle(SLIDER, BORDER_WIDTH) - 2*GuiGetStyle(SLIDER, SLIDER_PADDING)
|
||||||
|
};
|
||||||
|
|
||||||
|
if (sliderWidth > 0) // Slider
|
||||||
|
{
|
||||||
|
slider.x += (sliderValue - sliderWidth/2);
|
||||||
|
slider.width = (float)sliderWidth;
|
||||||
|
}
|
||||||
|
else if (sliderWidth == 0) // SliderBar
|
||||||
|
{
|
||||||
|
slider.x += GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
slider.width = (float)sliderValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update control
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
if ((state != STATE_DISABLED) && (editMode || !guiLocked))
|
||||||
|
{
|
||||||
|
Vector2 mousePoint = GetMousePosition();
|
||||||
|
|
||||||
|
if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
|
||||||
|
{
|
||||||
|
if (CheckCollisionPointRec(mousePoint, bounds))
|
||||||
|
{
|
||||||
|
pressed = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON) && editMode)
|
||||||
|
{
|
||||||
|
pressed = true;
|
||||||
|
}
|
||||||
|
if (editMode)
|
||||||
|
{
|
||||||
|
state = STATE_PRESSED;
|
||||||
|
tempValue = ((maxValue - minValue)*(mousePoint.x - (float)(bounds.x + sliderWidth/2)))/(float)(bounds.width - sliderWidth) + minValue;
|
||||||
|
|
||||||
|
if (sliderWidth > 0) slider.x = mousePoint.x - slider.width/2; // Slider
|
||||||
|
else if (sliderWidth == 0) slider.width = (float)sliderValue; // SliderBar
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (CheckCollisionPointRec(mousePoint, bounds))
|
||||||
|
{
|
||||||
|
state = STATE_FOCUSED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (tempValue > maxValue) tempValue = maxValue;
|
||||||
|
else if (tempValue < minValue) tempValue = minValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Bar limits check
|
||||||
|
if (sliderWidth > 0) // Slider
|
||||||
|
{
|
||||||
|
if (slider.x <= (bounds.x + GuiGetStyle(SLIDER, BORDER_WIDTH))) slider.x = bounds.x + GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
else if ((slider.x + slider.width) >= (bounds.x + bounds.width)) slider.x = bounds.x + bounds.width - slider.width - GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
}
|
||||||
|
else if (sliderWidth == 0) // SliderBar
|
||||||
|
{
|
||||||
|
if (slider.width > bounds.width) slider.width = bounds.width - 2*GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
// Draw control
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
GuiDrawRectangle(bounds, GuiGetStyle(SLIDER, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(SLIDER, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(SLIDER, (state != STATE_DISABLED)? BASE_COLOR_NORMAL : BASE_COLOR_DISABLED)), guiAlpha));
|
||||||
|
|
||||||
|
// Draw slider internal bar (depends on state)
|
||||||
|
if ((state == STATE_NORMAL) || (state == STATE_PRESSED))
|
||||||
|
GuiDrawRectangle(slider, 0, BLANK, Fade(GetColor(GuiGetStyle(SLIDER, BASE_COLOR_PRESSED)), guiAlpha));
|
||||||
|
else if (state == STATE_FOCUSED)
|
||||||
|
GuiDrawRectangle(slider, 0, BLANK, Fade(GetColor(GuiGetStyle(SLIDER, TEXT_COLOR_FOCUSED)), guiAlpha));
|
||||||
|
|
||||||
|
// Draw left/right text if provided
|
||||||
|
if (textLeft != NULL)
|
||||||
|
{
|
||||||
|
Rectangle textBounds = { 0 };
|
||||||
|
textBounds.width = (float)GetTextWidth(textLeft);
|
||||||
|
textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
|
||||||
|
textBounds.x = bounds.x - textBounds.width - GuiGetStyle(SLIDER, TEXT_PADDING);
|
||||||
|
textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
|
||||||
|
|
||||||
|
GuiDrawText(textLeft, textBounds, TEXT_ALIGN_RIGHT, Fade(GetColor(GuiGetStyle(SLIDER, TEXT + (state*3))), guiAlpha));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (textRight != NULL)
|
||||||
|
{
|
||||||
|
Rectangle textBounds = { 0 };
|
||||||
|
textBounds.width = (float)GetTextWidth(textRight);
|
||||||
|
textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
|
||||||
|
textBounds.x = bounds.x + bounds.width + GuiGetStyle(SLIDER, TEXT_PADDING);
|
||||||
|
textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
|
||||||
|
|
||||||
|
GuiDrawText(textRight, textBounds, TEXT_ALIGN_LEFT, Fade(GetColor(GuiGetStyle(SLIDER, TEXT + (state*3))), guiAlpha));
|
||||||
|
}
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
|
||||||
|
*value = tempValue;
|
||||||
|
return pressed;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool GuiSliderOwning(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue, bool editMode)
|
||||||
|
{
|
||||||
|
return GuiSliderProOwning(bounds, textLeft, textRight, value, minValue, maxValue, GuiGetStyle(SLIDER, SLIDER_WIDTH), editMode);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool GuiSliderBarOwning(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue, bool editMode)
|
||||||
|
{
|
||||||
|
return GuiSliderProOwning(bounds, textLeft, textRight, value, minValue, maxValue, 0, editMode);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool GuiVerticalSliderProOwning(Rectangle bounds, const char *textTop, const char *textBottom, float *value, float minValue, float maxValue, int sliderHeight, bool editMode)
|
||||||
|
{
|
||||||
|
GuiState state = (GuiState)GuiGetState();
|
||||||
|
|
||||||
|
float tempValue = *value;
|
||||||
|
bool pressed = false;
|
||||||
|
|
||||||
|
int sliderValue = (int)(((tempValue - minValue)/(maxValue - minValue)) * (bounds.height - 2 * GuiGetStyle(SLIDER, BORDER_WIDTH)));
|
||||||
|
|
||||||
|
Rectangle slider = {
|
||||||
|
bounds.x + GuiGetStyle(SLIDER, BORDER_WIDTH) + GuiGetStyle(SLIDER, SLIDER_PADDING),
|
||||||
|
bounds.y + bounds.height - sliderValue,
|
||||||
|
bounds.width - 2*GuiGetStyle(SLIDER, BORDER_WIDTH) - 2*GuiGetStyle(SLIDER, SLIDER_PADDING),
|
||||||
|
0.0f,
|
||||||
|
};
|
||||||
|
|
||||||
|
if (sliderHeight > 0) // Slider
|
||||||
|
{
|
||||||
|
slider.y -= sliderHeight/2;
|
||||||
|
slider.height = (float)sliderHeight;
|
||||||
|
}
|
||||||
|
else if (sliderHeight == 0) // SliderBar
|
||||||
|
{
|
||||||
|
slider.y -= GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
slider.height = (float)sliderValue;
|
||||||
|
}
|
||||||
|
// Update control
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
if ((state != STATE_DISABLED) && (editMode || !guiLocked))
|
||||||
|
{
|
||||||
|
Vector2 mousePoint = GetMousePosition();
|
||||||
|
|
||||||
|
if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
|
||||||
|
{
|
||||||
|
if (CheckCollisionPointRec(mousePoint, bounds))
|
||||||
|
{
|
||||||
|
pressed = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON) && editMode)
|
||||||
|
{
|
||||||
|
pressed = true;
|
||||||
|
}
|
||||||
|
if (editMode)
|
||||||
|
{
|
||||||
|
state = STATE_PRESSED;
|
||||||
|
|
||||||
|
float normalizedValue = (bounds.y + bounds.height - mousePoint.y - (float)(sliderHeight / 2)) / (bounds.height - (float)sliderHeight);
|
||||||
|
tempValue = (maxValue - minValue) * normalizedValue + minValue;
|
||||||
|
|
||||||
|
if (sliderHeight > 0) slider.y = mousePoint.y - slider.height / 2; // Slider
|
||||||
|
else if (sliderHeight == 0) // SliderBar
|
||||||
|
{
|
||||||
|
slider.y = mousePoint.y;
|
||||||
|
slider.height = bounds.y + bounds.height - slider.y - GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (CheckCollisionPointRec(mousePoint, bounds))
|
||||||
|
{
|
||||||
|
state = STATE_FOCUSED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (tempValue > maxValue) tempValue = maxValue;
|
||||||
|
else if (tempValue < minValue) tempValue = minValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Bar limits check
|
||||||
|
if (sliderHeight > 0) // Slider
|
||||||
|
{
|
||||||
|
if (slider.y < (bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH))) slider.y = bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
else if ((slider.y + slider.height) >= (bounds.y + bounds.height)) slider.y = bounds.y + bounds.height - slider.height - GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
}
|
||||||
|
else if (sliderHeight == 0) // SliderBar
|
||||||
|
{
|
||||||
|
if (slider.y < (bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH)))
|
||||||
|
{
|
||||||
|
slider.y = bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
slider.height = bounds.height - 2*GuiGetStyle(SLIDER, BORDER_WIDTH);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
// Draw control
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
GuiDrawRectangle(bounds, GuiGetStyle(SLIDER, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(SLIDER, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(SLIDER, (state != STATE_DISABLED)? BASE_COLOR_NORMAL : BASE_COLOR_DISABLED)), guiAlpha));
|
||||||
|
|
||||||
|
// Draw slider internal bar (depends on state)
|
||||||
|
if ((state == STATE_NORMAL) || (state == STATE_PRESSED))
|
||||||
|
GuiDrawRectangle(slider, 0, BLANK, Fade(GetColor(GuiGetStyle(SLIDER, BASE_COLOR_PRESSED)), guiAlpha));
|
||||||
|
else if (state == STATE_FOCUSED)
|
||||||
|
GuiDrawRectangle(slider, 0, BLANK, Fade(GetColor(GuiGetStyle(SLIDER, TEXT_COLOR_FOCUSED)), guiAlpha));
|
||||||
|
|
||||||
|
// Draw top/bottom text if provided
|
||||||
|
if (textTop != NULL)
|
||||||
|
{
|
||||||
|
Rectangle textBounds = { 0 };
|
||||||
|
textBounds.width = (float)GetTextWidth(textTop);
|
||||||
|
textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
|
||||||
|
textBounds.x = bounds.x + bounds.width/2 - textBounds.width/2;
|
||||||
|
textBounds.y = bounds.y - textBounds.height - GuiGetStyle(SLIDER, TEXT_PADDING);
|
||||||
|
|
||||||
|
GuiDrawText(textTop, textBounds, TEXT_ALIGN_RIGHT, Fade(GetColor(GuiGetStyle(SLIDER, TEXT + (state*3))), guiAlpha));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (textBottom != NULL)
|
||||||
|
{
|
||||||
|
Rectangle textBounds = { 0 };
|
||||||
|
textBounds.width = (float)GetTextWidth(textBottom);
|
||||||
|
textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
|
||||||
|
textBounds.x = bounds.x + bounds.width/2 - textBounds.width/2;
|
||||||
|
textBounds.y = bounds.y + bounds.height + GuiGetStyle(SLIDER, TEXT_PADDING);
|
||||||
|
|
||||||
|
GuiDrawText(textBottom, textBounds, TEXT_ALIGN_LEFT, Fade(GetColor(GuiGetStyle(SLIDER, TEXT + (state*3))), guiAlpha));
|
||||||
|
}
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
|
||||||
|
*value = tempValue;
|
||||||
|
return pressed;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool GuiVerticalSliderOwning(Rectangle bounds, const char *textTop, const char *textBottom, float *value, float minValue, float maxValue, bool editMode)
|
||||||
|
{
|
||||||
|
return GuiVerticalSliderProOwning(bounds, textTop, textBottom, value, minValue, maxValue, GuiGetStyle(SLIDER, SLIDER_WIDTH), editMode);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool GuiVerticalSliderBarOwning(Rectangle bounds, const char *textTop, const char *textBottom, float *value, float minValue, float maxValue, bool editMode)
|
||||||
|
{
|
||||||
|
return GuiVerticalSliderProOwning(bounds, textTop, textBottom, value, minValue, maxValue, 0, editMode);
|
||||||
|
}
|
||||||
@ -3,29 +3,27 @@
|
|||||||
* raygui - image exporter
|
* raygui - image exporter
|
||||||
*
|
*
|
||||||
* DEPENDENCIES:
|
* DEPENDENCIES:
|
||||||
* raylib 2.1 - Windowing/input management and drawing.
|
* raylib 4.0 - Windowing/input management and drawing.
|
||||||
* raygui 2.0 - Immediate-mode GUI controls.
|
* raygui 3.0 - Immediate-mode GUI controls.
|
||||||
*
|
*
|
||||||
* COMPILATION (Windows - MinGW):
|
* COMPILATION (Windows - MinGW):
|
||||||
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
||||||
*
|
*
|
||||||
* LICENSE: zlib/libpng
|
* LICENSE: zlib/libpng
|
||||||
*
|
*
|
||||||
* Copyright (c) 2020 Ramon Santamaria (@raysan5)
|
* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5)
|
||||||
*
|
*
|
||||||
********************************************************************************************/
|
********************************************************************************************/
|
||||||
|
|
||||||
#include "raylib.h"
|
#include "raylib.h"
|
||||||
|
|
||||||
#define RAYGUI_IMPLEMENTATION
|
#define RAYGUI_IMPLEMENTATION
|
||||||
#define RAYGUI_SUPPORT_RICONS
|
|
||||||
#include "../../src/raygui.h"
|
#include "../../src/raygui.h"
|
||||||
|
|
||||||
|
|
||||||
//------------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------------
|
||||||
// Program main entry point
|
// Program main entry point
|
||||||
//------------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------------
|
||||||
int main(int argc, char *argv[0])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
// Initialization
|
// Initialization
|
||||||
//--------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------
|
||||||
@ -68,12 +66,11 @@ int main(int argc, char *argv[0])
|
|||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
if (IsFileDropped())
|
if (IsFileDropped())
|
||||||
{
|
{
|
||||||
int fileCount = 0;
|
FilePathList droppedFiles = LoadDroppedFiles();
|
||||||
char **droppedFiles = GetDroppedFiles(&fileCount);
|
|
||||||
|
|
||||||
if (fileCount == 1)
|
if (droppedFiles.count == 1)
|
||||||
{
|
{
|
||||||
Image imTemp = LoadImage(droppedFiles[0]);
|
Image imTemp = LoadImage(droppedFiles.paths[0]);
|
||||||
|
|
||||||
if (imTemp.data != NULL)
|
if (imTemp.data != NULL)
|
||||||
{
|
{
|
||||||
@ -91,7 +88,7 @@ int main(int argc, char *argv[0])
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ClearDroppedFiles();
|
UnloadDroppedFiles(droppedFiles);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (btnExport)
|
if (btnExport)
|
||||||
@ -102,17 +99,17 @@ int main(int argc, char *argv[0])
|
|||||||
|
|
||||||
if (fileFormatActive == 0) // PNG
|
if (fileFormatActive == 0) // PNG
|
||||||
{
|
{
|
||||||
if ((GetExtension(fileName) == NULL) || (!IsFileExtension(fileName, ".png"))) strcat(fileName, ".png\0"); // No extension provided
|
if ((GetFileExtension(fileName) == NULL) || (!IsFileExtension(fileName, ".png"))) strcat(fileName, ".png\0"); // No extension provided
|
||||||
ExportImage(image, fileName);
|
ExportImage(image, fileName);
|
||||||
}
|
}
|
||||||
else if (fileFormatActive == 1) // RAW
|
else if (fileFormatActive == 1) // RAW
|
||||||
{
|
{
|
||||||
if ((GetExtension(fileName) == NULL) || (!IsFileExtension(fileName, ".raw"))) strcat(fileName, ".raw\0"); // No extension provided
|
if ((GetFileExtension(fileName) == NULL) || (!IsFileExtension(fileName, ".raw"))) strcat(fileName, ".raw\0"); // No extension provided
|
||||||
|
|
||||||
int dataSize = GetPixelDataSize(image.width, image.height, image.format);
|
int dataSize = GetPixelDataSize(image.width, image.height, image.format);
|
||||||
|
|
||||||
FILE *rawFile = fopen(fileName, "wb");
|
FILE *rawFile = fopen(fileName, "wb");
|
||||||
fwrite(image.data, dataSize, 1, rawFile);
|
fwrite(image.data, 1, dataSize, rawFile);
|
||||||
fclose(rawFile);
|
fclose(rawFile);
|
||||||
}
|
}
|
||||||
else if (fileFormatActive == 2) // CODE
|
else if (fileFormatActive == 2) // CODE
|
||||||
@ -147,7 +144,7 @@ int main(int argc, char *argv[0])
|
|||||||
DrawTextureEx(texture, (Vector2){ screenWidth/2 - (float)texture.width*imageScale/2, screenHeight/2 - (float)texture.height*imageScale/2 }, 0.0f, imageScale, WHITE);
|
DrawTextureEx(texture, (Vector2){ screenWidth/2 - (float)texture.width*imageScale/2, screenHeight/2 - (float)texture.height*imageScale/2 }, 0.0f, imageScale, WHITE);
|
||||||
|
|
||||||
DrawRectangleLinesEx(imageRec, 1, CheckCollisionPointRec(GetMousePosition(), imageRec) ? RED : DARKGRAY);
|
DrawRectangleLinesEx(imageRec, 1, CheckCollisionPointRec(GetMousePosition(), imageRec) ? RED : DARKGRAY);
|
||||||
DrawText(FormatText("SCALE: %.2f%%", imageScale*100.0f), 20, screenHeight - 40, 20, GetColor(GuiGetStyle(DEFAULT, LINE_COLOR)));
|
DrawText(TextFormat("SCALE: %.2f%%", imageScale*100.0f), 20, screenHeight - 40, 20, GetColor(GuiGetStyle(DEFAULT, LINE_COLOR)));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.4 KiB |
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 6.4 KiB |
@ -3,22 +3,21 @@
|
|||||||
* raygui - image raw importer
|
* raygui - image raw importer
|
||||||
*
|
*
|
||||||
* DEPENDENCIES:
|
* DEPENDENCIES:
|
||||||
* raylib 2.1 - Windowing/input management and drawing.
|
* raylib 4.0 - Windowing/input management and drawing.
|
||||||
* raygui 2.0 - Immediate-mode GUI controls.
|
* raygui 3.0 - Immediate-mode GUI controls.
|
||||||
*
|
*
|
||||||
* COMPILATION (Windows - MinGW):
|
* COMPILATION (Windows - MinGW):
|
||||||
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
||||||
*
|
*
|
||||||
* LICENSE: zlib/libpng
|
* LICENSE: zlib/libpng
|
||||||
*
|
*
|
||||||
* Copyright (c) 2020 Ramon Santamaria (@raysan5)
|
* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5)
|
||||||
*
|
*
|
||||||
**********************************************************************************************/
|
**********************************************************************************************/
|
||||||
|
|
||||||
#include "raylib.h"
|
#include "raylib.h"
|
||||||
|
|
||||||
#define RAYGUI_IMPLEMENTATION
|
#define RAYGUI_IMPLEMENTATION
|
||||||
#define RAYGUI_SUPPORT_RICONS
|
|
||||||
#include "../../src/raygui.h"
|
#include "../../src/raygui.h"
|
||||||
|
|
||||||
#include <string.h> // Required for: strcpy()
|
#include <string.h> // Required for: strcpy()
|
||||||
@ -83,21 +82,20 @@ int main()
|
|||||||
// Check if a file is dropped
|
// Check if a file is dropped
|
||||||
if (IsFileDropped())
|
if (IsFileDropped())
|
||||||
{
|
{
|
||||||
int fileCount = 0;
|
FilePathList droppedFiles = LoadDroppedFiles();
|
||||||
char **droppedFiles = GetDroppedFiles(&fileCount);
|
|
||||||
|
|
||||||
// Check file extensions for drag-and-drop
|
// Check file extensions for drag-and-drop
|
||||||
if ((fileCount == 1) && IsFileExtension(droppedFiles[0], ".raw"))
|
if ((droppedFiles.count == 1) && IsFileExtension(droppedFiles.paths[0], ".raw"))
|
||||||
{
|
{
|
||||||
FILE *imageFile = fopen(droppedFiles[0], "rb");
|
FILE *imageFile = fopen(droppedFiles.paths[0], "rb");
|
||||||
fseek(imageFile, 0L, SEEK_END);
|
fseek(imageFile, 0L, SEEK_END);
|
||||||
dataSize = ftell(imageFile);
|
dataSize = ftell(imageFile);
|
||||||
fclose(imageFile);
|
fclose(imageFile);
|
||||||
|
|
||||||
// NOTE: Returned string is just a pointer to droppedFiles[0],
|
// NOTE: Returned string is just a pointer to droppedFiles[0],
|
||||||
// we need to make a copy of that data somewhere else: fileName
|
// we need to make a copy of that data somewhere else: fileName
|
||||||
strcpy(fileNamePath, droppedFiles[0]);
|
strcpy(fileNamePath, droppedFiles.paths[0]);
|
||||||
strcpy(fileName, GetFileName(droppedFiles[0]));
|
strcpy(fileName, GetFileName(droppedFiles.paths[0]));
|
||||||
|
|
||||||
// Try to guess possible raw values
|
// Try to guess possible raw values
|
||||||
// Let's assume image is square, RGBA, 8 bit per channel
|
// Let's assume image is square, RGBA, 8 bit per channel
|
||||||
@ -109,7 +107,7 @@ int main()
|
|||||||
importWindowActive = true;
|
importWindowActive = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
ClearDroppedFiles();
|
UnloadDroppedFiles(droppedFiles);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if load button has been pressed
|
// Check if load button has been pressed
|
||||||
@ -128,17 +126,17 @@ int main()
|
|||||||
// Select correct format depending on channels and bpp
|
// Select correct format depending on channels and bpp
|
||||||
if (bpp == 8)
|
if (bpp == 8)
|
||||||
{
|
{
|
||||||
if (channels == 1) format = UNCOMPRESSED_GRAYSCALE;
|
if (channels == 1) format = PIXELFORMAT_UNCOMPRESSED_GRAYSCALE;
|
||||||
else if (channels == 2) format = UNCOMPRESSED_GRAY_ALPHA;
|
else if (channels == 2) format = PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA;
|
||||||
else if (channels == 3) format = UNCOMPRESSED_R8G8B8;
|
else if (channels == 3) format = PIXELFORMAT_UNCOMPRESSED_R8G8B8;
|
||||||
else if (channels == 4) format = UNCOMPRESSED_R8G8B8A8;
|
else if (channels == 4) format = PIXELFORMAT_UNCOMPRESSED_R8G8B8A8;
|
||||||
}
|
}
|
||||||
else if (bpp == 32)
|
else if (bpp == 32)
|
||||||
{
|
{
|
||||||
if (channels == 1) format = UNCOMPRESSED_R32;
|
if (channels == 1) format = PIXELFORMAT_UNCOMPRESSED_R32;
|
||||||
else if (channels == 2) TraceLog(LOG_WARNING, "Channel bit-depth not supported!");
|
else if (channels == 2) TraceLog(LOG_WARNING, "Channel bit-depth not supported!");
|
||||||
else if (channels == 3) format = UNCOMPRESSED_R32G32B32;
|
else if (channels == 3) format = PIXELFORMAT_UNCOMPRESSED_R32G32B32;
|
||||||
else if (channels == 4) format = UNCOMPRESSED_R32G32B32A32;
|
else if (channels == 4) format = PIXELFORMAT_UNCOMPRESSED_R32G32B32A32;
|
||||||
}
|
}
|
||||||
else if (bpp == 16) TraceLog(LOG_WARNING, "Channel bit-depth not supported!");
|
else if (bpp == 16) TraceLog(LOG_WARNING, "Channel bit-depth not supported!");
|
||||||
}
|
}
|
||||||
@ -174,7 +172,7 @@ int main()
|
|||||||
if (texture.id != 0)
|
if (texture.id != 0)
|
||||||
{
|
{
|
||||||
DrawTextureEx(texture, (Vector2){ screenWidth/2 - texture.width*imageScale/2, screenHeight/2 - texture.height*imageScale/2 }, 0, imageScale, WHITE);
|
DrawTextureEx(texture, (Vector2){ screenWidth/2 - texture.width*imageScale/2, screenHeight/2 - texture.height*imageScale/2 }, 0, imageScale, WHITE);
|
||||||
DrawText(FormatText("SCALE x%.0f", imageScale), 20, screenHeight - 40, 20, GetColor(GuiGetStyle(DEFAULT, LINE_COLOR)));
|
DrawText(TextFormat("SCALE x%.0f", imageScale), 20, screenHeight - 40, 20, GetColor(GuiGetStyle(DEFAULT, LINE_COLOR)));
|
||||||
}
|
}
|
||||||
else DrawText("drag & drop RAW image file", 320, 180, 10, GetColor(GuiGetStyle(DEFAULT, LINE_COLOR)));
|
else DrawText("drag & drop RAW image file", 320, 180, 10, GetColor(GuiGetStyle(DEFAULT, LINE_COLOR)));
|
||||||
|
|
||||||
@ -187,7 +185,7 @@ int main()
|
|||||||
GuiLabel((Rectangle){ windowOffset.x + 10, windowOffset.y + 30, 65, 20 }, "Import file:");
|
GuiLabel((Rectangle){ windowOffset.x + 10, windowOffset.y + 30, 65, 20 }, "Import file:");
|
||||||
GuiLabel((Rectangle){ windowOffset.x + 85, windowOffset.y + 30, 75, 20 }, fileName);
|
GuiLabel((Rectangle){ windowOffset.x + 85, windowOffset.y + 30, 75, 20 }, fileName);
|
||||||
GuiLabel((Rectangle){ windowOffset.x + 10, windowOffset.y + 50, 65, 20 }, "File size:");
|
GuiLabel((Rectangle){ windowOffset.x + 10, windowOffset.y + 50, 65, 20 }, "File size:");
|
||||||
GuiLabel((Rectangle){ windowOffset.x + 85, windowOffset.y + 50, 75, 20 }, FormatText("%i bytes", dataSize));
|
GuiLabel((Rectangle){ windowOffset.x + 85, windowOffset.y + 50, 75, 20 }, TextFormat("%i bytes", dataSize));
|
||||||
GuiGroupBox((Rectangle){ windowOffset.x + 10, windowOffset.y + 85, 180, 80 }, "Resolution");
|
GuiGroupBox((Rectangle){ windowOffset.x + 10, windowOffset.y + 85, 180, 80 }, "Resolution");
|
||||||
GuiLabel((Rectangle){ windowOffset.x + 20, windowOffset.y + 100, 33, 25 }, "Width:");
|
GuiLabel((Rectangle){ windowOffset.x + 20, windowOffset.y + 100, 33, 25 }, "Width:");
|
||||||
if (GuiValueBox((Rectangle){ windowOffset.x + 60, windowOffset.y + 100, 80, 25 }, NULL, &widthValue, 0, 8192, widthEditMode)) widthEditMode = !widthEditMode;
|
if (GuiValueBox((Rectangle){ windowOffset.x + 60, windowOffset.y + 100, 80, 25 }, NULL, &widthValue, 0, 8192, widthEditMode)) widthEditMode = !widthEditMode;
|
||||||
@ -3,15 +3,15 @@
|
|||||||
* raygui - portable window
|
* raygui - portable window
|
||||||
*
|
*
|
||||||
* DEPENDENCIES:
|
* DEPENDENCIES:
|
||||||
* raylib 2.1 - Windowing/input management and drawing.
|
* raylib 4.0 - Windowing/input management and drawing.
|
||||||
* raygui 2.0 - Immediate-mode GUI controls.
|
* raygui 3.0 - Immediate-mode GUI controls.
|
||||||
*
|
*
|
||||||
* COMPILATION (Windows - MinGW):
|
* COMPILATION (Windows - MinGW):
|
||||||
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
||||||
*
|
*
|
||||||
* LICENSE: zlib/libpng
|
* LICENSE: zlib/libpng
|
||||||
*
|
*
|
||||||
* Copyright (c) 2020 Ramon Santamaria (@raysan5)
|
* Copyright (c) 2016-2023 Ramon Santamaria (@raysan5)
|
||||||
*
|
*
|
||||||
**********************************************************************************************/
|
**********************************************************************************************/
|
||||||
|
|
||||||
@ -27,8 +27,8 @@ int main()
|
|||||||
{
|
{
|
||||||
// Initialization
|
// Initialization
|
||||||
//---------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------
|
||||||
int screenWidth = 800;
|
const int screenWidth = 800;
|
||||||
int screenHeight = 600;
|
const int screenHeight = 600;
|
||||||
|
|
||||||
SetConfigFlags(FLAG_WINDOW_UNDECORATED);
|
SetConfigFlags(FLAG_WINDOW_UNDECORATED);
|
||||||
InitWindow(screenWidth, screenHeight, "raygui - portable window");
|
InitWindow(screenWidth, screenHeight, "raygui - portable window");
|
||||||
@ -79,9 +79,9 @@ int main()
|
|||||||
|
|
||||||
ClearBackground(RAYWHITE);
|
ClearBackground(RAYWHITE);
|
||||||
|
|
||||||
exitWindow = GuiWindowBox((Rectangle){ 0, 0, screenWidth, screenHeight }, "PORTABLE WINDOW");
|
exitWindow = GuiWindowBox((Rectangle){ 0, 0, screenWidth, screenHeight }, "#198# PORTABLE WINDOW");
|
||||||
|
|
||||||
DrawText(FormatText("Mouse Position: [ %.0f, %.0f ]", mousePosition.x, mousePosition.y), 10, 40, 10, DARKGRAY);
|
DrawText(TextFormat("Mouse Position: [ %.0f, %.0f ]", mousePosition.x, mousePosition.y), 10, 40, 10, DARKGRAY);
|
||||||
|
|
||||||
EndDrawing();
|
EndDrawing();
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
|
|||||||
@ -198,7 +198,7 @@ double GuiDMValueBox(Rectangle bounds, double value, double minValue, double max
|
|||||||
|
|
||||||
enum {cursorTimer = 6, maxChars = 31, textPadding = 2};
|
enum {cursorTimer = 6, maxChars = 31, textPadding = 2};
|
||||||
|
|
||||||
GuiControlState state = GuiGetState();
|
GuiState state = GuiGetState();
|
||||||
|
|
||||||
// Make sure value is in range
|
// Make sure value is in range
|
||||||
if(maxValue != minValue){
|
if(maxValue != minValue){
|
||||||
@ -214,7 +214,7 @@ double GuiDMValueBox(Rectangle bounds, double value, double minValue, double max
|
|||||||
|
|
||||||
// Update control
|
// Update control
|
||||||
//--------------------------------------------------------------------
|
//--------------------------------------------------------------------
|
||||||
if ((state != GUI_STATE_DISABLED) && !guiLocked)
|
if ((state != STATE_DISABLED) && !guiLocked)
|
||||||
{
|
{
|
||||||
if (editMode)
|
if (editMode)
|
||||||
{
|
{
|
||||||
@ -222,7 +222,7 @@ double GuiDMValueBox(Rectangle bounds, double value, double minValue, double max
|
|||||||
if(cursor > len) cursor = len;
|
if(cursor > len) cursor = len;
|
||||||
if(cursor < 0) cursor = 0;
|
if(cursor < 0) cursor = 0;
|
||||||
|
|
||||||
state = GUI_STATE_PRESSED;
|
state = STATE_PRESSED;
|
||||||
framesCounter++;
|
framesCounter++;
|
||||||
|
|
||||||
if(IsKeyPressed(KEY_RIGHT) || (IsKeyDown(KEY_RIGHT) && (framesCounter%cursorTimer == 0))) {
|
if(IsKeyPressed(KEY_RIGHT) || (IsKeyDown(KEY_RIGHT) && (framesCounter%cursorTimer == 0))) {
|
||||||
@ -309,7 +309,7 @@ double GuiDMValueBox(Rectangle bounds, double value, double minValue, double max
|
|||||||
{
|
{
|
||||||
if (CheckCollisionPointRec(GetMousePosition(), bounds))
|
if (CheckCollisionPointRec(GetMousePosition(), bounds))
|
||||||
{
|
{
|
||||||
state = GUI_STATE_FOCUSED;
|
state = STATE_FOCUSED;
|
||||||
if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) framesCounter = 0;
|
if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) framesCounter = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -326,7 +326,7 @@ double GuiDMValueBox(Rectangle bounds, double value, double minValue, double max
|
|||||||
int textWidth = GetTextWidth(textValue);
|
int textWidth = GetTextWidth(textValue);
|
||||||
if(textWidth > textBounds.width) textBounds.width = textWidth;
|
if(textWidth > textBounds.width) textBounds.width = textWidth;
|
||||||
|
|
||||||
if (state == GUI_STATE_PRESSED)
|
if (state == STATE_PRESSED)
|
||||||
{
|
{
|
||||||
DrawRectangle(bounds.x + GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.y + GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.height - 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(VALUEBOX, BASE_COLOR_PRESSED)), guiAlpha));
|
DrawRectangle(bounds.x + GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.y + GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.height - 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(VALUEBOX, BASE_COLOR_PRESSED)), guiAlpha));
|
||||||
|
|
||||||
@ -345,12 +345,12 @@ double GuiDMValueBox(Rectangle bounds, double value, double minValue, double max
|
|||||||
DrawRectangle(bounds.x + textWidthCursor + (int)((bounds.width - textWidth - textPadding)/2.0f) + 2, bounds.y + 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), 1, bounds.height - 4*GuiGetStyle(VALUEBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(VALUEBOX, BORDER_COLOR_PRESSED)), guiAlpha));
|
DrawRectangle(bounds.x + textWidthCursor + (int)((bounds.width - textWidth - textPadding)/2.0f) + 2, bounds.y + 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), 1, bounds.height - 4*GuiGetStyle(VALUEBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(VALUEBOX, BORDER_COLOR_PRESSED)), guiAlpha));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (state == GUI_STATE_DISABLED)
|
else if (state == STATE_DISABLED)
|
||||||
{
|
{
|
||||||
DrawRectangle(bounds.x + GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.y + GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.height - 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(VALUEBOX, BASE_COLOR_DISABLED)), guiAlpha));
|
DrawRectangle(bounds.x + GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.y + GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), bounds.height - 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(VALUEBOX, BASE_COLOR_DISABLED)), guiAlpha));
|
||||||
}
|
}
|
||||||
|
|
||||||
GuiDrawText(textValue, textBounds, GUI_TEXT_ALIGN_CENTER, Fade(GetColor(GuiGetStyle(VALUEBOX, TEXT + (state*3))), guiAlpha));
|
GuiDrawText(textValue, textBounds, TEXT_ALIGN_CENTER, Fade(GetColor(GuiGetStyle(VALUEBOX, TEXT + (state*3))), guiAlpha));
|
||||||
|
|
||||||
value = valueHasChanged ? strtod(textValue, NULL) : value;
|
value = valueHasChanged ? strtod(textValue, NULL) : value;
|
||||||
|
|
||||||
@ -366,24 +366,24 @@ double GuiDMValueBox(Rectangle bounds, double value, double minValue, double max
|
|||||||
|
|
||||||
|
|
||||||
double GuiDMSpinner(Rectangle bounds, double value, double minValue, double maxValue, double step, int precision, bool editMode) {
|
double GuiDMSpinner(Rectangle bounds, double value, double minValue, double maxValue, double step, int precision, bool editMode) {
|
||||||
GuiControlState state = GuiGetState();
|
GuiState state = GuiGetState();
|
||||||
|
|
||||||
Rectangle spinner = { bounds.x + GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH) + GuiGetStyle(SPINNER, SPIN_BUTTON_PADDING), bounds.y,
|
Rectangle spinner = { bounds.x + GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH) + GuiGetStyle(SPINNER, SPIN_BUTTON_SPACING), bounds.y,
|
||||||
bounds.width - 2*(GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH) + GuiGetStyle(SPINNER, SPIN_BUTTON_PADDING)), bounds.height };
|
bounds.width - 2*(GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH) + GuiGetStyle(SPINNER, SPIN_BUTTON_SPACING)), bounds.height };
|
||||||
Rectangle leftButtonBound = { (float)bounds.x, (float)bounds.y, (float)GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH), (float)bounds.height };
|
Rectangle leftButtonBound = { (float)bounds.x, (float)bounds.y, (float)GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH), (float)bounds.height };
|
||||||
Rectangle rightButtonBound = { (float)bounds.x + bounds.width - GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH), (float)bounds.y, (float)GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH), (float)bounds.height };
|
Rectangle rightButtonBound = { (float)bounds.x + bounds.width - GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH), (float)bounds.y, (float)GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH), (float)bounds.height };
|
||||||
|
|
||||||
// Update control
|
// Update control
|
||||||
//--------------------------------------------------------------------
|
//--------------------------------------------------------------------
|
||||||
if ((state != GUI_STATE_DISABLED) && !guiLocked)
|
if ((state != STATE_DISABLED) && !guiLocked)
|
||||||
{
|
{
|
||||||
Vector2 mousePoint = GetMousePosition();
|
Vector2 mousePoint = GetMousePosition();
|
||||||
|
|
||||||
// Check spinner state
|
// Check spinner state
|
||||||
if (CheckCollisionPointRec(mousePoint, bounds))
|
if (CheckCollisionPointRec(mousePoint, bounds))
|
||||||
{
|
{
|
||||||
if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = GUI_STATE_PRESSED;
|
if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
|
||||||
else state = GUI_STATE_FOCUSED;
|
else state = STATE_FOCUSED;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//--------------------------------------------------------------------
|
//--------------------------------------------------------------------
|
||||||
@ -396,9 +396,9 @@ double GuiDMSpinner(Rectangle bounds, double value, double minValue, double maxV
|
|||||||
int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH);
|
int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH);
|
||||||
int tempTextAlign = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
|
int tempTextAlign = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
|
||||||
GuiSetStyle(BUTTON, BORDER_WIDTH, GuiGetStyle(SPINNER, BORDER_WIDTH));
|
GuiSetStyle(BUTTON, BORDER_WIDTH, GuiGetStyle(SPINNER, BORDER_WIDTH));
|
||||||
GuiSetStyle(BUTTON, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_CENTER);
|
GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
|
||||||
|
|
||||||
#if defined(RAYGUI_SUPPORT_ICONS)
|
#if defined(RAYGUI_SUPPORT_RICONS)
|
||||||
if (GuiButton(leftButtonBound, GuiIconText(RICON_ARROW_LEFT_FILL, NULL))) value -= step;
|
if (GuiButton(leftButtonBound, GuiIconText(RICON_ARROW_LEFT_FILL, NULL))) value -= step;
|
||||||
if (GuiButton(rightButtonBound, GuiIconText(RICON_ARROW_RIGHT_FILL, NULL))) value += step;
|
if (GuiButton(rightButtonBound, GuiIconText(RICON_ARROW_RIGHT_FILL, NULL))) value += step;
|
||||||
#else
|
#else
|
||||||
@ -417,7 +417,7 @@ double GuiDMSpinner(Rectangle bounds, double value, double minValue, double maxV
|
|||||||
|
|
||||||
|
|
||||||
void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* focus, int* scrollIndex) {
|
void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* focus, int* scrollIndex) {
|
||||||
#ifdef RAYGUI_SUPPORT_ICONS
|
#ifdef RAYGUI_SUPPORT_RICONS
|
||||||
#define PROPERTY_COLLAPSED_ICON "#120#"
|
#define PROPERTY_COLLAPSED_ICON "#120#"
|
||||||
#define PROPERTY_EXPANDED_ICON "#121#"
|
#define PROPERTY_EXPANDED_ICON "#121#"
|
||||||
#else
|
#else
|
||||||
@ -430,7 +430,7 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
#define PROPERTY_DECIMAL_DIGITS 3 //how many digits to show (used only for the vector properties)
|
#define PROPERTY_DECIMAL_DIGITS 3 //how many digits to show (used only for the vector properties)
|
||||||
|
|
||||||
// NOTE: Using ListView style for everything !!
|
// NOTE: Using ListView style for everything !!
|
||||||
GuiControlState state = GuiGetState();
|
GuiState state = GuiGetState();
|
||||||
int propFocused = (focus == NULL)? -1 : *focus;
|
int propFocused = (focus == NULL)? -1 : *focus;
|
||||||
int scroll = *scrollIndex > 0 ? 0 : *scrollIndex; // NOTE: scroll should always be negative or 0
|
int scroll = *scrollIndex > 0 ? 0 : *scrollIndex; // NOTE: scroll should always be negative or 0
|
||||||
|
|
||||||
@ -457,9 +457,9 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
Rectangle scrollBarBounds = {bounds.x + GuiGetStyle(LISTVIEW, BORDER_WIDTH), bounds.y + GuiGetStyle(LISTVIEW, BORDER_WIDTH),
|
Rectangle scrollBarBounds = {bounds.x + GuiGetStyle(LISTVIEW, BORDER_WIDTH), bounds.y + GuiGetStyle(LISTVIEW, BORDER_WIDTH),
|
||||||
GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH), bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH)};
|
GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH), bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH)};
|
||||||
|
|
||||||
absoluteBounds.x = bounds.x + GuiGetStyle(LISTVIEW, LIST_ITEMS_PADDING) + GuiGetStyle(DEFAULT, BORDER_WIDTH);
|
absoluteBounds.x = bounds.x + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING) + GuiGetStyle(DEFAULT, BORDER_WIDTH);
|
||||||
absoluteBounds.y = bounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_PADDING) + GuiGetStyle(DEFAULT, BORDER_WIDTH) + scroll;
|
absoluteBounds.y = bounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING) + GuiGetStyle(DEFAULT, BORDER_WIDTH) + scroll;
|
||||||
absoluteBounds.width = bounds.width - 2*(GuiGetStyle(LISTVIEW, LIST_ITEMS_PADDING) + GuiGetStyle(DEFAULT, BORDER_WIDTH));
|
absoluteBounds.width = bounds.width - 2*(GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING) + GuiGetStyle(DEFAULT, BORDER_WIDTH));
|
||||||
|
|
||||||
if(useScrollBar) {
|
if(useScrollBar) {
|
||||||
if(GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)
|
if(GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)
|
||||||
@ -469,13 +469,13 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
absoluteBounds.width -= GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH); // adjust width to fit the scrollbar
|
absoluteBounds.width -= GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH); // adjust width to fit the scrollbar
|
||||||
}
|
}
|
||||||
|
|
||||||
int maxScroll = absoluteBounds.height + 2*(GuiGetStyle(LISTVIEW, LIST_ITEMS_PADDING) + GuiGetStyle(DEFAULT, BORDER_WIDTH))-bounds.height;
|
int maxScroll = absoluteBounds.height + 2*(GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING) + GuiGetStyle(DEFAULT, BORDER_WIDTH))-bounds.height;
|
||||||
|
|
||||||
// Update control
|
// Update control
|
||||||
//--------------------------------------------------------------------
|
//--------------------------------------------------------------------
|
||||||
Vector2 mousePos = GetMousePosition();
|
Vector2 mousePos = GetMousePosition();
|
||||||
// NOTE: most of the update code is actually done in the draw control section
|
// NOTE: most of the update code is actually done in the draw control section
|
||||||
if ((state != GUI_STATE_DISABLED) && !guiLocked) {
|
if ((state != STATE_DISABLED) && !guiLocked) {
|
||||||
if(!CheckCollisionPointRec(mousePos, bounds)) {
|
if(!CheckCollisionPointRec(mousePos, bounds)) {
|
||||||
propFocused = -1;
|
propFocused = -1;
|
||||||
}
|
}
|
||||||
@ -508,11 +508,11 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
{
|
{
|
||||||
Rectangle propBounds = {absoluteBounds.x, absoluteBounds.y + currentHeight, absoluteBounds.width, height};
|
Rectangle propBounds = {absoluteBounds.x, absoluteBounds.y + currentHeight, absoluteBounds.width, height};
|
||||||
Color textColor = Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_NORMAL)), guiAlpha);
|
Color textColor = Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_NORMAL)), guiAlpha);
|
||||||
int propState = GUI_STATE_NORMAL;
|
int propState = STATE_NORMAL;
|
||||||
|
|
||||||
// Get the state of this property and do some initial drawing
|
// Get the state of this property and do some initial drawing
|
||||||
if(PROP_CHECK_FLAG(&props[p], GUI_PFLAG_DISABLED)) {
|
if(PROP_CHECK_FLAG(&props[p], GUI_PFLAG_DISABLED)) {
|
||||||
propState = GUI_STATE_DISABLED;
|
propState = STATE_DISABLED;
|
||||||
propBounds.height += 1;
|
propBounds.height += 1;
|
||||||
DrawRectangleRec(propBounds, Fade(GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_DISABLED)), guiAlpha));
|
DrawRectangleRec(propBounds, Fade(GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_DISABLED)), guiAlpha));
|
||||||
propBounds.height -= 1;
|
propBounds.height -= 1;
|
||||||
@ -520,25 +520,25 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
} else {
|
} else {
|
||||||
if(CheckCollisionPointRec(mousePos, propBounds) && !guiLocked) {
|
if(CheckCollisionPointRec(mousePos, propBounds) && !guiLocked) {
|
||||||
if(IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) {
|
if(IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) {
|
||||||
propState = GUI_STATE_PRESSED;
|
propState = STATE_PRESSED;
|
||||||
//DrawRectangleRec(propRect, Fade(GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_PRESSED)), guiAlpha));
|
//DrawRectangleRec(propRect, Fade(GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_PRESSED)), guiAlpha));
|
||||||
textColor = Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_PRESSED)), guiAlpha);
|
textColor = Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_PRESSED)), guiAlpha);
|
||||||
} else {
|
} else {
|
||||||
propState = GUI_STATE_FOCUSED;
|
propState = STATE_FOCUSED;
|
||||||
propFocused = p;
|
propFocused = p;
|
||||||
//DrawRectangleRec(propRect, Fade(GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_FOCUSED)), guiAlpha));
|
//DrawRectangleRec(propRect, Fade(GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_FOCUSED)), guiAlpha));
|
||||||
textColor = Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_FOCUSED)), guiAlpha);
|
textColor = Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_FOCUSED)), guiAlpha);
|
||||||
}
|
}
|
||||||
} else propState = GUI_STATE_NORMAL;
|
} else propState = STATE_NORMAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(propState == GUI_STATE_DISABLED) GuiSetState(propState);
|
if(propState == STATE_DISABLED) GuiSetState(propState);
|
||||||
switch(props[p].type)
|
switch(props[p].type)
|
||||||
{
|
{
|
||||||
case GUI_PROP_BOOL: {
|
case GUI_PROP_BOOL: {
|
||||||
// draw property name
|
// draw property name
|
||||||
GuiDrawText(props[p].name, (Rectangle){propBounds.x + PROPERTY_PADDING, propBounds.y, propBounds.width/2-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(props[p].name, (Rectangle){propBounds.x + PROPERTY_PADDING, propBounds.y, propBounds.width/2-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, TEXT_ALIGN_LEFT, textColor);
|
||||||
if(propState == GUI_STATE_PRESSED) props[p].value.vbool = !props[p].value.vbool; // toggle the property value when clicked
|
if(propState == STATE_PRESSED) props[p].value.vbool = !props[p].value.vbool; // toggle the property value when clicked
|
||||||
|
|
||||||
// draw property value
|
// draw property value
|
||||||
const bool locked = guiLocked;
|
const bool locked = guiLocked;
|
||||||
@ -549,40 +549,40 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
|
|
||||||
case GUI_PROP_INT:
|
case GUI_PROP_INT:
|
||||||
// draw property name
|
// draw property name
|
||||||
GuiDrawText(props[p].name, (Rectangle){propBounds.x + PROPERTY_PADDING, propBounds.y, propBounds.width/2-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(props[p].name, (Rectangle){propBounds.x + PROPERTY_PADDING, propBounds.y, propBounds.width/2-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, TEXT_ALIGN_LEFT, textColor);
|
||||||
// draw property value
|
// draw property value
|
||||||
props[p].value.vint.val = GuiDMSpinner((Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2},
|
props[p].value.vint.val = GuiDMSpinner((Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2},
|
||||||
props[p].value.vint.val, props[p].value.vint.min, props[p].value.vint.max, props[p].value.vint.step, 0, (propState == GUI_STATE_FOCUSED) );
|
props[p].value.vint.val, props[p].value.vint.min, props[p].value.vint.max, props[p].value.vint.step, 0, (propState == STATE_FOCUSED) );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GUI_PROP_FLOAT:
|
case GUI_PROP_FLOAT:
|
||||||
// draw property name
|
// draw property name
|
||||||
GuiDrawText(props[p].name, (Rectangle){propBounds.x + PROPERTY_PADDING, propBounds.y, propBounds.width/2-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(props[p].name, (Rectangle){propBounds.x + PROPERTY_PADDING, propBounds.y, propBounds.width/2-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, TEXT_ALIGN_LEFT, textColor);
|
||||||
// draw property value
|
// draw property value
|
||||||
props[p].value.vfloat.val = GuiDMSpinner((Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2},
|
props[p].value.vfloat.val = GuiDMSpinner((Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2},
|
||||||
props[p].value.vfloat.val, props[p].value.vfloat.min, props[p].value.vfloat.max, props[p].value.vfloat.step, props[p].value.vfloat.precision, (propState == GUI_STATE_FOCUSED) );
|
props[p].value.vfloat.val, props[p].value.vfloat.min, props[p].value.vfloat.max, props[p].value.vfloat.step, props[p].value.vfloat.precision, (propState == STATE_FOCUSED) );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GUI_PROP_TEXT: {
|
case GUI_PROP_TEXT: {
|
||||||
Rectangle titleBounds = { propBounds.x, propBounds.y, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) };
|
Rectangle titleBounds = { propBounds.x, propBounds.y, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) };
|
||||||
// Collapse/Expand property on click
|
// Collapse/Expand property on click
|
||||||
if((propState == GUI_STATE_PRESSED) && CheckCollisionPointRec(mousePos, titleBounds))
|
if((propState == STATE_PRESSED) && CheckCollisionPointRec(mousePos, titleBounds))
|
||||||
PROP_TOGGLE_FLAG(&props[p], GUI_PFLAG_COLLAPSED);
|
PROP_TOGGLE_FLAG(&props[p], GUI_PFLAG_COLLAPSED);
|
||||||
|
|
||||||
// draw property name
|
// draw property name
|
||||||
GuiDrawText(PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED) ? PROPERTY_COLLAPSED_ICON : PROPERTY_EXPANDED_ICON, titleBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED) ? PROPERTY_COLLAPSED_ICON : PROPERTY_EXPANDED_ICON, titleBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
GuiDrawText(props[p].name, (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(props[p].name, (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, TEXT_ALIGN_LEFT, textColor);
|
||||||
GuiDrawText(TextFormat("%i/%i", strlen(props[p].value.vtext.val), props[p].value.vtext.size), (Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(TextFormat("%i/%i", strlen(props[p].value.vtext.val), props[p].value.vtext.size), (Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2}, TEXT_ALIGN_LEFT, textColor);
|
||||||
|
|
||||||
// draw property value
|
// draw property value
|
||||||
if(!PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED))
|
if(!PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED))
|
||||||
GuiTextBox((Rectangle){propBounds.x, propBounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)+1, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2}, props[p].value.vtext.val, props[p].value.vtext.size, (propState == GUI_STATE_FOCUSED));
|
GuiTextBox((Rectangle){propBounds.x, propBounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)+1, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2}, props[p].value.vtext.val, props[p].value.vtext.size, (propState == STATE_FOCUSED));
|
||||||
} break;
|
} break;
|
||||||
|
|
||||||
case GUI_PROP_SELECT: {
|
case GUI_PROP_SELECT: {
|
||||||
// TODO: Create a custom dropdownbox control instead of using the raygui combobox
|
// TODO: Create a custom dropdownbox control instead of using the raygui combobox
|
||||||
// draw property name
|
// draw property name
|
||||||
GuiDrawText(props[p].name, (Rectangle){propBounds.x + PROPERTY_PADDING, propBounds.y, propBounds.width/2-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(props[p].name, (Rectangle){propBounds.x + PROPERTY_PADDING, propBounds.y, propBounds.width/2-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, TEXT_ALIGN_LEFT, textColor);
|
||||||
// draw property value
|
// draw property value
|
||||||
props[p].value.vselect.active = GuiComboBox((Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2},
|
props[p].value.vselect.active = GuiComboBox((Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2},
|
||||||
props[p].value.vselect.val, props[p].value.vselect.active);
|
props[p].value.vselect.val, props[p].value.vselect.active);
|
||||||
@ -591,7 +591,7 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
case GUI_PROP_VECTOR2: case GUI_PROP_VECTOR3: case GUI_PROP_VECTOR4: {
|
case GUI_PROP_VECTOR2: case GUI_PROP_VECTOR3: case GUI_PROP_VECTOR4: {
|
||||||
Rectangle titleBounds = { propBounds.x, propBounds.y, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) };
|
Rectangle titleBounds = { propBounds.x, propBounds.y, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) };
|
||||||
// Collapse/Expand property on click
|
// Collapse/Expand property on click
|
||||||
if((propState == GUI_STATE_PRESSED) && CheckCollisionPointRec(mousePos, titleBounds))
|
if((propState == STATE_PRESSED) && CheckCollisionPointRec(mousePos, titleBounds))
|
||||||
PROP_TOGGLE_FLAG(&props[p], GUI_PFLAG_COLLAPSED);
|
PROP_TOGGLE_FLAG(&props[p], GUI_PFLAG_COLLAPSED);
|
||||||
|
|
||||||
const char* fmt = "";
|
const char* fmt = "";
|
||||||
@ -600,33 +600,33 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
else fmt = TextFormat("[%.0f, %.0f, %.0f, %.0f]", props[p].value.v4.x, props[p].value.v4.y, props[p].value.v4.z, props[p].value.v4.w);
|
else fmt = TextFormat("[%.0f, %.0f, %.0f, %.0f]", props[p].value.v4.x, props[p].value.v4.y, props[p].value.v4.z, props[p].value.v4.w);
|
||||||
|
|
||||||
// draw property name
|
// draw property name
|
||||||
GuiDrawText(PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED) ? PROPERTY_COLLAPSED_ICON : PROPERTY_EXPANDED_ICON, titleBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED) ? PROPERTY_COLLAPSED_ICON : PROPERTY_EXPANDED_ICON, titleBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
GuiDrawText(props[p].name, (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(props[p].name, (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, TEXT_ALIGN_LEFT, textColor);
|
||||||
GuiDrawText(fmt, (Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(fmt, (Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2}, TEXT_ALIGN_LEFT, textColor);
|
||||||
|
|
||||||
// draw X, Y, Z, W values (only when expanded)
|
// draw X, Y, Z, W values (only when expanded)
|
||||||
if(!PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED)) {
|
if(!PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED)) {
|
||||||
Rectangle slotBounds = { propBounds.x, propBounds.y+GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)+1, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2};
|
Rectangle slotBounds = { propBounds.x, propBounds.y+GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)+1, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2};
|
||||||
Rectangle lblBounds = { propBounds.x+PROPERTY_PADDING, slotBounds.y, GetTextWidth("A"), slotBounds.height};
|
Rectangle lblBounds = { propBounds.x+PROPERTY_PADDING, slotBounds.y, GetTextWidth("A"), slotBounds.height};
|
||||||
Rectangle valBounds = { lblBounds.x+lblBounds.width+PROPERTY_PADDING, slotBounds.y, propBounds.width-lblBounds.width-2*PROPERTY_PADDING, slotBounds.height};
|
Rectangle valBounds = { lblBounds.x+lblBounds.width+PROPERTY_PADDING, slotBounds.y, propBounds.width-lblBounds.width-2*PROPERTY_PADDING, slotBounds.height};
|
||||||
GuiDrawText("X", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("X", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.v2.x = GuiDMSpinner(valBounds, props[p].value.v2.x, 0.0, 0.0, 1.0, PROPERTY_DECIMAL_DIGITS, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.v2.x = GuiDMSpinner(valBounds, props[p].value.v2.x, 0.0, 0.0, 1.0, PROPERTY_DECIMAL_DIGITS, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
||||||
lblBounds.y = valBounds.y = slotBounds.y;
|
lblBounds.y = valBounds.y = slotBounds.y;
|
||||||
GuiDrawText("Y", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("Y", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.v2.y = GuiDMSpinner(valBounds, props[p].value.v2.y, 0.0, 0.0, 1.0, PROPERTY_DECIMAL_DIGITS, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.v2.y = GuiDMSpinner(valBounds, props[p].value.v2.y, 0.0, 0.0, 1.0, PROPERTY_DECIMAL_DIGITS, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
||||||
lblBounds.y = valBounds.y = slotBounds.y;
|
lblBounds.y = valBounds.y = slotBounds.y;
|
||||||
if(props[p].type >= GUI_PROP_VECTOR3) {
|
if(props[p].type >= GUI_PROP_VECTOR3) {
|
||||||
GuiDrawText("Z", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("Z", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.v3.z = GuiDMSpinner(valBounds, props[p].value.v3.z, 0.0, 0.0, 1.0, PROPERTY_DECIMAL_DIGITS, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.v3.z = GuiDMSpinner(valBounds, props[p].value.v3.z, 0.0, 0.0, 1.0, PROPERTY_DECIMAL_DIGITS, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
||||||
lblBounds.y = valBounds.y = slotBounds.y;
|
lblBounds.y = valBounds.y = slotBounds.y;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(props[p].type >= GUI_PROP_VECTOR4) {
|
if(props[p].type >= GUI_PROP_VECTOR4) {
|
||||||
GuiDrawText("W", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("W", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.v4.w = GuiDMSpinner(valBounds, props[p].value.v4.w, 0.0, 0.0, 1.0, PROPERTY_DECIMAL_DIGITS, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.v4.w = GuiDMSpinner(valBounds, props[p].value.v4.w, 0.0, 0.0, 1.0, PROPERTY_DECIMAL_DIGITS, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} break;
|
} break;
|
||||||
@ -634,34 +634,34 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
case GUI_PROP_RECT:{
|
case GUI_PROP_RECT:{
|
||||||
Rectangle titleBounds = { propBounds.x, propBounds.y, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) };
|
Rectangle titleBounds = { propBounds.x, propBounds.y, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) };
|
||||||
// Collapse/Expand property on click
|
// Collapse/Expand property on click
|
||||||
if((propState == GUI_STATE_PRESSED) && CheckCollisionPointRec(mousePos, titleBounds))
|
if((propState == STATE_PRESSED) && CheckCollisionPointRec(mousePos, titleBounds))
|
||||||
PROP_TOGGLE_FLAG(&props[p], GUI_PFLAG_COLLAPSED);
|
PROP_TOGGLE_FLAG(&props[p], GUI_PFLAG_COLLAPSED);
|
||||||
|
|
||||||
// draw property name
|
// draw property name
|
||||||
GuiDrawText(PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED) ? PROPERTY_COLLAPSED_ICON : PROPERTY_EXPANDED_ICON, titleBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED) ? PROPERTY_COLLAPSED_ICON : PROPERTY_EXPANDED_ICON, titleBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
GuiDrawText(props[p].name, (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(props[p].name, (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, TEXT_ALIGN_LEFT, textColor);
|
||||||
GuiDrawText(TextFormat("[%.0f, %.0f, %.0f, %.0f]", props[p].value.vrect.x, props[p].value.vrect.y, props[p].value.vrect.width, props[p].value.vrect.height),
|
GuiDrawText(TextFormat("[%.0f, %.0f, %.0f, %.0f]", props[p].value.vrect.x, props[p].value.vrect.y, props[p].value.vrect.width, props[p].value.vrect.height),
|
||||||
(Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2}, GUI_TEXT_ALIGN_LEFT, textColor);
|
(Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2}, TEXT_ALIGN_LEFT, textColor);
|
||||||
|
|
||||||
// draw X, Y, Width, Height values (only when expanded)
|
// draw X, Y, Width, Height values (only when expanded)
|
||||||
if(!PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED)) {
|
if(!PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED)) {
|
||||||
Rectangle slotBounds = { propBounds.x, propBounds.y+GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)+1, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2};
|
Rectangle slotBounds = { propBounds.x, propBounds.y+GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)+1, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2};
|
||||||
Rectangle lblBounds = { propBounds.x+PROPERTY_PADDING, slotBounds.y, GetTextWidth("Height"), slotBounds.height};
|
Rectangle lblBounds = { propBounds.x+PROPERTY_PADDING, slotBounds.y, GetTextWidth("Height"), slotBounds.height};
|
||||||
Rectangle valBounds = { lblBounds.x+lblBounds.width+PROPERTY_PADDING, slotBounds.y, propBounds.width-lblBounds.width-2*PROPERTY_PADDING, slotBounds.height};
|
Rectangle valBounds = { lblBounds.x+lblBounds.width+PROPERTY_PADDING, slotBounds.y, propBounds.width-lblBounds.width-2*PROPERTY_PADDING, slotBounds.height};
|
||||||
GuiDrawText("X", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("X", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.vrect.x = GuiDMSpinner(valBounds, props[p].value.vrect.x, 0.0, 0.0, 1.0, 0, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.vrect.x = GuiDMSpinner(valBounds, props[p].value.vrect.x, 0.0, 0.0, 1.0, 0, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
||||||
lblBounds.y = valBounds.y = slotBounds.y;
|
lblBounds.y = valBounds.y = slotBounds.y;
|
||||||
GuiDrawText("Y", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("Y", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.vrect.y = GuiDMSpinner(valBounds, props[p].value.vrect.y, 0.0, 0.0, 1.0, 0, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.vrect.y = GuiDMSpinner(valBounds, props[p].value.vrect.y, 0.0, 0.0, 1.0, 0, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
||||||
lblBounds.y = valBounds.y = slotBounds.y;
|
lblBounds.y = valBounds.y = slotBounds.y;
|
||||||
GuiDrawText("Width", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("Width", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.vrect.width = GuiDMSpinner(valBounds, props[p].value.vrect.width, 0.0, 0.0, 1.0, 0, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.vrect.width = GuiDMSpinner(valBounds, props[p].value.vrect.width, 0.0, 0.0, 1.0, 0, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
||||||
lblBounds.y = valBounds.y = slotBounds.y;
|
lblBounds.y = valBounds.y = slotBounds.y;
|
||||||
GuiDrawText("Height", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("Height", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.vrect.height = GuiDMSpinner(valBounds, props[p].value.vrect.height, 0.0, 0.0, 1.0, 0, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.vrect.height = GuiDMSpinner(valBounds, props[p].value.vrect.height, 0.0, 0.0, 1.0, 0, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
}
|
}
|
||||||
} break;
|
} break;
|
||||||
|
|
||||||
@ -669,17 +669,17 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
case GUI_PROP_COLOR: {
|
case GUI_PROP_COLOR: {
|
||||||
Rectangle titleBounds = { propBounds.x, propBounds.y, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) };
|
Rectangle titleBounds = { propBounds.x, propBounds.y, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) };
|
||||||
// Collapse/Expand property on click
|
// Collapse/Expand property on click
|
||||||
if((propState == GUI_STATE_PRESSED) && CheckCollisionPointRec(mousePos, titleBounds))
|
if((propState == STATE_PRESSED) && CheckCollisionPointRec(mousePos, titleBounds))
|
||||||
PROP_TOGGLE_FLAG(&props[p], GUI_PFLAG_COLLAPSED);
|
PROP_TOGGLE_FLAG(&props[p], GUI_PFLAG_COLLAPSED);
|
||||||
|
|
||||||
// draw property name
|
// draw property name
|
||||||
GuiDrawText(PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED) ? PROPERTY_COLLAPSED_ICON : PROPERTY_EXPANDED_ICON, titleBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED) ? PROPERTY_COLLAPSED_ICON : PROPERTY_EXPANDED_ICON, titleBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
GuiDrawText(props[p].name, (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y+1, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(props[p].name, (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y+1, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2}, TEXT_ALIGN_LEFT, textColor);
|
||||||
DrawLineEx( (Vector2){propBounds.x+propBounds.width/2, propBounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 5}, (Vector2){propBounds.x+propBounds.width, propBounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 5}, 6.0f, props[p].value.vcolor);
|
DrawLineEx( (Vector2){propBounds.x+propBounds.width/2, propBounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 5}, (Vector2){propBounds.x+propBounds.width, propBounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 5}, 6.0f, props[p].value.vcolor);
|
||||||
const char* fmt = TextFormat("#%02X%02X%02X%02X", props[p].value.vcolor.r, props[p].value.vcolor.g, props[p].value.vcolor.b, props[p].value.vcolor.a);
|
const char* fmt = TextFormat("#%02X%02X%02X%02X", props[p].value.vcolor.r, props[p].value.vcolor.g, props[p].value.vcolor.b, props[p].value.vcolor.a);
|
||||||
char clip[10] = "\0";
|
char clip[10] = "\0";
|
||||||
memcpy(clip, fmt, 10*sizeof(char)); // copy to temporary buffer since we can't be sure when TextFormat() will be called again and our text will be overwritten
|
memcpy(clip, fmt, 10*sizeof(char)); // copy to temporary buffer since we can't be sure when TextFormat() will be called again and our text will be overwritten
|
||||||
GuiDrawText(fmt, (Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(fmt, (Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2}, TEXT_ALIGN_LEFT, textColor);
|
||||||
|
|
||||||
// draw R, G, B, A values (only when expanded)
|
// draw R, G, B, A values (only when expanded)
|
||||||
if(!PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED)) {
|
if(!PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED)) {
|
||||||
@ -704,29 +704,29 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
GuiSetStyle(SCROLLBAR, ARROWS_VISIBLE, 0);
|
GuiSetStyle(SCROLLBAR, ARROWS_VISIBLE, 0);
|
||||||
GuiSetStyle(DEFAULT, BORDER_COLOR_DISABLED, GuiGetStyle(DEFAULT, BACKGROUND_COLOR)); // disable scrollbar background
|
GuiSetStyle(DEFAULT, BORDER_COLOR_DISABLED, GuiGetStyle(DEFAULT, BACKGROUND_COLOR)); // disable scrollbar background
|
||||||
|
|
||||||
GuiDrawText("R", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("R", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.vcolor.r = GuiDMValueBox(valBounds, props[p].value.vcolor.r, 0.0, 255.0, 0, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.vcolor.r = GuiDMValueBox(valBounds, props[p].value.vcolor.r, 0.0, 255.0, 0, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
if(sbarBounds.width > GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2)
|
if(sbarBounds.width > GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2)
|
||||||
props[p].value.vcolor.r = GuiScrollBar(sbarBounds, props[p].value.vcolor.r, 0, 255);
|
props[p].value.vcolor.r = GuiScrollBar(sbarBounds, props[p].value.vcolor.r, 0, 255);
|
||||||
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
||||||
lblBounds.y = valBounds.y = sbarBounds.y = slotBounds.y;
|
lblBounds.y = valBounds.y = sbarBounds.y = slotBounds.y;
|
||||||
|
|
||||||
GuiDrawText("G", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("G", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.vcolor.g = GuiDMValueBox(valBounds, props[p].value.vcolor.g, 0.0, 255.0, 0, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.vcolor.g = GuiDMValueBox(valBounds, props[p].value.vcolor.g, 0.0, 255.0, 0, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
if(sbarBounds.width > GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2)
|
if(sbarBounds.width > GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2)
|
||||||
props[p].value.vcolor.g = GuiScrollBar(sbarBounds, props[p].value.vcolor.g, 0, 255);
|
props[p].value.vcolor.g = GuiScrollBar(sbarBounds, props[p].value.vcolor.g, 0, 255);
|
||||||
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
||||||
lblBounds.y = valBounds.y = sbarBounds.y = slotBounds.y;
|
lblBounds.y = valBounds.y = sbarBounds.y = slotBounds.y;
|
||||||
|
|
||||||
GuiDrawText("B", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("B", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.vcolor.b = GuiDMValueBox(valBounds, props[p].value.vcolor.b, 0.0, 255.0, 0, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.vcolor.b = GuiDMValueBox(valBounds, props[p].value.vcolor.b, 0.0, 255.0, 0, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
if(sbarBounds.width > GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2)
|
if(sbarBounds.width > GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2)
|
||||||
props[p].value.vcolor.b = GuiScrollBar(sbarBounds, props[p].value.vcolor.b, 0, 255);
|
props[p].value.vcolor.b = GuiScrollBar(sbarBounds, props[p].value.vcolor.b, 0, 255);
|
||||||
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
slotBounds.y += GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
|
||||||
lblBounds.y = valBounds.y = sbarBounds.y = slotBounds.y;
|
lblBounds.y = valBounds.y = sbarBounds.y = slotBounds.y;
|
||||||
|
|
||||||
GuiDrawText("A", lblBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText("A", lblBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
props[p].value.vcolor.a = GuiDMValueBox(valBounds, props[p].value.vcolor.a, 0.0, 255.0, 0, (propState == GUI_STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
props[p].value.vcolor.a = GuiDMValueBox(valBounds, props[p].value.vcolor.a, 0.0, 255.0, 0, (propState == STATE_FOCUSED) && CheckCollisionPointRec(mousePos, slotBounds) );
|
||||||
if(sbarBounds.width > GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2)
|
if(sbarBounds.width > GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)-2)
|
||||||
props[p].value.vcolor.a = GuiScrollBar(sbarBounds, props[p].value.vcolor.a, 0, 255);
|
props[p].value.vcolor.a = GuiScrollBar(sbarBounds, props[p].value.vcolor.a, 0, 255);
|
||||||
|
|
||||||
@ -740,7 +740,7 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
}
|
}
|
||||||
|
|
||||||
// support COPY/PASTE (need to do this here since GuiDMValueBox() also has COPY/PASTE so we need to overwrite it)
|
// support COPY/PASTE (need to do this here since GuiDMValueBox() also has COPY/PASTE so we need to overwrite it)
|
||||||
if((propState == GUI_STATE_FOCUSED)) {
|
if((propState == STATE_FOCUSED)) {
|
||||||
if(IsKeyDown(KEY_LEFT_CONTROL) && IsKeyPressed(KEY_C))
|
if(IsKeyDown(KEY_LEFT_CONTROL) && IsKeyPressed(KEY_C))
|
||||||
SetClipboardText(clip);
|
SetClipboardText(clip);
|
||||||
else if(IsKeyDown(KEY_LEFT_CONTROL) && IsKeyPressed(KEY_V)){
|
else if(IsKeyDown(KEY_LEFT_CONTROL) && IsKeyPressed(KEY_V)){
|
||||||
@ -754,15 +754,15 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
case GUI_PROP_SECTION: {
|
case GUI_PROP_SECTION: {
|
||||||
Rectangle titleBounds = { propBounds.x, propBounds.y, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) };
|
Rectangle titleBounds = { propBounds.x, propBounds.y, propBounds.width, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) };
|
||||||
// Collapse/Expand section on click
|
// Collapse/Expand section on click
|
||||||
if( (propState == GUI_STATE_PRESSED) && CheckCollisionPointRec(mousePos, titleBounds) )
|
if( (propState == STATE_PRESSED) && CheckCollisionPointRec(mousePos, titleBounds) )
|
||||||
PROP_TOGGLE_FLAG(&props[p], GUI_PFLAG_COLLAPSED);
|
PROP_TOGGLE_FLAG(&props[p], GUI_PFLAG_COLLAPSED);
|
||||||
|
|
||||||
if(!PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED)) {
|
if(!PROP_CHECK_FLAG(&props[p], GUI_PFLAG_COLLAPSED)) {
|
||||||
GuiDrawText(PROPERTY_EXPANDED_ICON, titleBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(PROPERTY_EXPANDED_ICON, titleBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
GuiDrawText(props[p].name, (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, GUI_TEXT_ALIGN_CENTER, textColor);
|
GuiDrawText(props[p].name, (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, TEXT_ALIGN_CENTER, textColor);
|
||||||
} else {
|
} else {
|
||||||
GuiDrawText(PROPERTY_COLLAPSED_ICON, titleBounds, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(PROPERTY_COLLAPSED_ICON, titleBounds, TEXT_ALIGN_LEFT, textColor);
|
||||||
GuiDrawText(TextFormat("%s [%i]", props[p].name, props[p].value.vsection), (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, GUI_TEXT_ALIGN_CENTER, textColor);
|
GuiDrawText(TextFormat("%s [%i]", props[p].name, props[p].value.vsection), (Rectangle){propBounds.x+PROPERTY_ICON_SIZE+PROPERTY_PADDING, propBounds.y, propBounds.width-PROPERTY_ICON_SIZE-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, TEXT_ALIGN_CENTER, textColor);
|
||||||
}
|
}
|
||||||
} break;
|
} break;
|
||||||
|
|
||||||
@ -770,9 +770,9 @@ void GuiDMPropertyList(Rectangle bounds, GuiDMProperty* props, int count, int* f
|
|||||||
// NOTE: Add your custom property here !!
|
// NOTE: Add your custom property here !!
|
||||||
default: {
|
default: {
|
||||||
// draw property name
|
// draw property name
|
||||||
GuiDrawText(props[p].name, (Rectangle){propBounds.x + PROPERTY_PADDING, propBounds.y, propBounds.width/2-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(props[p].name, (Rectangle){propBounds.x + PROPERTY_PADDING, propBounds.y, propBounds.width/2-PROPERTY_PADDING, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT)}, TEXT_ALIGN_LEFT, textColor);
|
||||||
// draw property type
|
// draw property type
|
||||||
GuiDrawText(TextFormat("TYPE %i", props[p].type), (Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2}, GUI_TEXT_ALIGN_LEFT, textColor);
|
GuiDrawText(TextFormat("TYPE %i", props[p].type), (Rectangle){propBounds.x+propBounds.width/2, propBounds.y + 1, propBounds.width/2, GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) - 2}, TEXT_ALIGN_LEFT, textColor);
|
||||||
} break;
|
} break;
|
||||||
|
|
||||||
} // end of switch()
|
} // end of switch()
|
||||||
|
|||||||
@ -1,24 +1,23 @@
|
|||||||
/*******************************************************************************************
|
/*******************************************************************************************
|
||||||
*
|
*
|
||||||
* raygui - a custom property list control
|
* raygui - custom property list control
|
||||||
*
|
*
|
||||||
* DEPENDENCIES:
|
* DEPENDENCIES:
|
||||||
* raylib 3.0
|
* raylib 4.0 - Windowing/input management and drawing.
|
||||||
* raygui 2.7
|
* raygui 3.0 - Immediate-mode GUI controls.
|
||||||
*
|
*
|
||||||
* COMPILATION (Windows - MinGW):
|
* COMPILATION (Windows - MinGW):
|
||||||
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
||||||
*
|
*
|
||||||
* LICENSE: zlib/libpng
|
* LICENSE: zlib/libpng
|
||||||
*
|
*
|
||||||
* Copyright (c) 2020 Vlad Adrian (@Demizdor - https://github.com/Demizdor)
|
* Copyright (c) 2020-2023 Vlad Adrian (@Demizdor) and Ramon Santamaria (@raysan5)
|
||||||
*
|
*
|
||||||
**********************************************************************************************/
|
**********************************************************************************************/
|
||||||
|
|
||||||
#include "raylib.h"
|
#include "raylib.h"
|
||||||
|
|
||||||
#define RAYGUI_IMPLEMENTATION
|
#define RAYGUI_IMPLEMENTATION
|
||||||
#define RAYGUI_SUPPORT_ICONS
|
|
||||||
#include "../../src/raygui.h"
|
#include "../../src/raygui.h"
|
||||||
|
|
||||||
#undef RAYGUI_IMPLEMENTATION // Avoid including raygui implementation again
|
#undef RAYGUI_IMPLEMENTATION // Avoid including raygui implementation again
|
||||||
@ -26,8 +25,6 @@
|
|||||||
#define GUI_PROPERTY_LIST_IMPLEMENTATION
|
#define GUI_PROPERTY_LIST_IMPLEMENTATION
|
||||||
#include "dm_property_list.h"
|
#include "dm_property_list.h"
|
||||||
|
|
||||||
#define SCREEN_WIDTH 800
|
|
||||||
#define SCREEN_HEIGHT 450
|
|
||||||
#define SIZEOF(A) (sizeof(A)/sizeof(A[0]))
|
#define SIZEOF(A) (sizeof(A)/sizeof(A[0]))
|
||||||
|
|
||||||
//------------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------------
|
||||||
@ -37,7 +34,11 @@ int main()
|
|||||||
{
|
{
|
||||||
// Initialization
|
// Initialization
|
||||||
//---------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------
|
||||||
|
const int screenWidth = 800;
|
||||||
|
const int screenHeight = 450;
|
||||||
|
|
||||||
|
InitWindow(screenWidth, screenHeight, "raygui - property list");
|
||||||
|
|
||||||
GuiDMProperty prop[] = {
|
GuiDMProperty prop[] = {
|
||||||
PBOOL("Bool", 0, true),
|
PBOOL("Bool", 0, true),
|
||||||
PSECTION("#102#SECTION", 0, 2),
|
PSECTION("#102#SECTION", 0, 2),
|
||||||
@ -52,17 +53,17 @@ int main()
|
|||||||
PVEC4("Vec4", 0, 12, 13, 14, 15),
|
PVEC4("Vec4", 0, 12, 13, 14, 15),
|
||||||
PCOLOR("Color", 0, 0, 255, 0, 255),
|
PCOLOR("Color", 0, 0, 255, 0, 255),
|
||||||
};
|
};
|
||||||
int focus = 0, scroll = 0; // needed by GuiDMPropertyList()
|
|
||||||
|
|
||||||
InitWindow(SCREEN_WIDTH, SCREEN_HEIGHT, "raygui - property list");
|
|
||||||
SetTargetFPS(60);
|
|
||||||
|
|
||||||
|
int focus = 0, scroll = 0; // Needed by GuiDMPropertyList()
|
||||||
|
|
||||||
GuiLoadStyleDefault();
|
GuiLoadStyleDefault();
|
||||||
// adjust the default raygui style a bit
|
|
||||||
|
// Tweak the default raygui style a bit
|
||||||
GuiSetStyle(LISTVIEW, LIST_ITEMS_HEIGHT, 24);
|
GuiSetStyle(LISTVIEW, LIST_ITEMS_HEIGHT, 24);
|
||||||
GuiSetStyle(LISTVIEW, SCROLLBAR_WIDTH, 12);
|
GuiSetStyle(LISTVIEW, SCROLLBAR_WIDTH, 12);
|
||||||
//--------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
|
SetTargetFPS(60);
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
|
|
||||||
// Main game loop
|
// Main game loop
|
||||||
while (!WindowShouldClose()) // Detect window close button or ESC key
|
while (!WindowShouldClose()) // Detect window close button or ESC key
|
||||||
@ -70,20 +71,28 @@ int main()
|
|||||||
// Draw
|
// Draw
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
BeginDrawing();
|
BeginDrawing();
|
||||||
|
|
||||||
ClearBackground(GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR)));
|
ClearBackground(GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR)));
|
||||||
|
|
||||||
GuiGrid((Rectangle){0,0,SCREEN_WIDTH,SCREEN_HEIGHT},20.0f, 2); // draw a fancy grid
|
GuiGrid((Rectangle){0, 0, screenWidth, screenHeight}, "Property List", 20.0f, 2); // Draw a fancy grid
|
||||||
|
|
||||||
GuiDMPropertyList((Rectangle){(SCREEN_WIDTH - 180)/2, (SCREEN_HEIGHT - 280)/2, 180, 280}, prop, SIZEOF(prop), &focus, &scroll);
|
GuiDMPropertyList((Rectangle){(screenWidth - 180)/2, (screenHeight - 280)/2, 180, 280}, prop, SIZEOF(prop), &focus, &scroll);
|
||||||
|
|
||||||
if(prop[0].value.vbool)
|
if (prop[0].value.vbool >= 1)
|
||||||
|
{
|
||||||
DrawText(TextFormat("FOCUS:%i | SCROLL:%i | FPS:%i", focus, scroll, GetFPS()), prop[8].value.v2.x, prop[8].value.v2.y, 20, prop[11].value.vcolor);
|
DrawText(TextFormat("FOCUS:%i | SCROLL:%i | FPS:%i", focus, scroll, GetFPS()), prop[8].value.v2.x, prop[8].value.v2.y, 20, prop[11].value.vcolor);
|
||||||
EndDrawing();
|
}
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
|
EndDrawing();
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// De-Initialization
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
GuiDMSaveProperties("test.props", prop, SIZEOF(prop)); // Save properties to `test.props` file at exit
|
GuiDMSaveProperties("test.props", prop, SIZEOF(prop)); // Save properties to `test.props` file at exit
|
||||||
CloseWindow(); // Close window and OpenGL context
|
|
||||||
|
CloseWindow(); // Close window and OpenGL context
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
27
examples/property_list/test.props
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#
|
||||||
|
# Property types:
|
||||||
|
# b <name> <flags> <value> // Bool
|
||||||
|
# i <name> <flags> <value> <min> <max> <step> // Int
|
||||||
|
# f <name> <flags> <value> <min> <max> <step> <precision> // Float
|
||||||
|
# t <name> <flags> <value> <edit_length> // Text
|
||||||
|
# l <name> <flags> <value> <active> // Select
|
||||||
|
# g <name> <flags> <value> // Section (Group)
|
||||||
|
# v2 <name> <flags> <x> <y> // Vector 2D
|
||||||
|
# v3 <name> <flags> <x> <y> <z> // Vector 3D
|
||||||
|
# v4 <name> <flags> <x> <y> <z> <w> // Vector 4D
|
||||||
|
# r <name> <flags> <x> <y> <width> <height> // Rectangle
|
||||||
|
# c <name> <flags> <r> <g> <b> <a> // 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 1 Hello! 30
|
||||||
|
l Select 0 ONE;TWO;THREE;FOUR 3
|
||||||
|
i Int Range 0 32 0 100 1
|
||||||
|
r Rect 1 0 0 100 200
|
||||||
|
v2 Vec2 1 20.000000 20.000000
|
||||||
|
v3 Vec3 1 12.000000 13.000000 14.000000
|
||||||
|
v4 Vec4 1 12.000000 13.000000 14.000000 15.000000
|
||||||
|
c Color 1 94 68 197 160
|
||||||
@ -6,18 +6,18 @@
|
|||||||
* - GuiScrollPanel()
|
* - GuiScrollPanel()
|
||||||
*
|
*
|
||||||
* DEPENDENCIES:
|
* DEPENDENCIES:
|
||||||
* raylib 2.4 - Windowing/input management and drawing.
|
* raylib 4.0 - Windowing/input management and drawing.
|
||||||
* raygui 2.0 - Immediate-mode GUI controls.
|
* raygui 3.0 - Immediate-mode GUI controls.
|
||||||
*
|
*
|
||||||
* COMPILATION (Windows - MinGW):
|
* COMPILATION (Windows - MinGW):
|
||||||
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
||||||
*
|
*
|
||||||
* COMPILATION (Linux - gcc):
|
* COMPILATION (Linux - gcc):
|
||||||
* gcc -o $(NAME_PART) $(FILE_NAME) -I../../src -lraylib -std=c99
|
* gcc -o $(NAME_PART) $(FILE_NAME) -I../../src -lraylib -lGL -lm -lpthread -ldl -lrt -lX11 -std=c99
|
||||||
*
|
*
|
||||||
* LICENSE: zlib/libpng
|
* LICENSE: zlib/libpng
|
||||||
*
|
*
|
||||||
* Copyright (c) 2019 Vlad Adrian (@Demizdor) and Ramon Santamaria (@raysan5)
|
* Copyright (c) 2019-2023 Vlad Adrian (@Demizdor) and Ramon Santamaria (@raysan5)
|
||||||
*
|
*
|
||||||
**********************************************************************************************/
|
**********************************************************************************************/
|
||||||
|
|
||||||
@ -40,16 +40,16 @@ int main()
|
|||||||
const int screenHeight = 450;
|
const int screenHeight = 450;
|
||||||
|
|
||||||
InitWindow(screenWidth, screenHeight, "raygui - GuiScrollPanel()");
|
InitWindow(screenWidth, screenHeight, "raygui - GuiScrollPanel()");
|
||||||
|
|
||||||
Rectangle panelRec = { 20, 40, 200, 150 };
|
Rectangle panelRec = { 20, 40, 200, 150 };
|
||||||
Rectangle panelContentRec = {0, 0, 340, 340 };
|
Rectangle panelContentRec = {0, 0, 340, 340 };
|
||||||
Vector2 panelScroll = { 99, -20 };
|
Vector2 panelScroll = { 99, -20 };
|
||||||
|
|
||||||
bool showContentArea = true;
|
bool showContentArea = true;
|
||||||
|
|
||||||
SetTargetFPS(60);
|
SetTargetFPS(60);
|
||||||
//---------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------
|
||||||
|
|
||||||
// Main game loop
|
// Main game loop
|
||||||
while (!WindowShouldClose()) // Detect window close button or ESC key
|
while (!WindowShouldClose()) // Detect window close button or ESC key
|
||||||
{
|
{
|
||||||
@ -61,26 +61,26 @@ int main()
|
|||||||
// Draw
|
// Draw
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
BeginDrawing();
|
BeginDrawing();
|
||||||
|
|
||||||
ClearBackground(RAYWHITE);
|
ClearBackground(RAYWHITE);
|
||||||
|
|
||||||
DrawText(TextFormat("[%f, %f]", panelScroll.x, panelScroll.y), 4, 4, 20, RED);
|
DrawText(TextFormat("[%f, %f]", panelScroll.x, panelScroll.y), 4, 4, 20, RED);
|
||||||
|
|
||||||
Rectangle view = GuiScrollPanel(panelRec, panelContentRec, &panelScroll);
|
Rectangle view = GuiScrollPanel(panelRec, NULL, panelContentRec, &panelScroll);
|
||||||
|
|
||||||
BeginScissorMode(view.x, view.y, view.width, view.height);
|
BeginScissorMode(view.x, view.y, view.width, view.height);
|
||||||
GuiGrid((Rectangle){panelRec.x + panelScroll.x, panelRec.y + panelScroll.y, panelContentRec.width, panelContentRec.height}, 16, 3);
|
GuiGrid((Rectangle){panelRec.x + panelScroll.x, panelRec.y + panelScroll.y, panelContentRec.width, panelContentRec.height}, NULL, 16, 3);
|
||||||
EndScissorMode();
|
EndScissorMode();
|
||||||
|
|
||||||
if (showContentArea) DrawRectangle(panelRec.x + panelScroll.x, panelRec.y + panelScroll.y, panelContentRec.width, panelContentRec.height, Fade(RED, 0.1));
|
if (showContentArea) DrawRectangle(panelRec.x + panelScroll.x, panelRec.y + panelScroll.y, panelContentRec.width, panelContentRec.height, Fade(RED, 0.1));
|
||||||
|
|
||||||
DrawStyleEditControls();
|
DrawStyleEditControls();
|
||||||
|
|
||||||
showContentArea = GuiCheckBox((Rectangle){ 565, 80, 20, 20 }, "SHOW CONTENT AREA", showContentArea);
|
showContentArea = GuiCheckBox((Rectangle){ 565, 80, 20, 20 }, "SHOW CONTENT AREA", showContentArea);
|
||||||
|
|
||||||
panelContentRec.width = GuiSliderBar((Rectangle){ 590, 385, 145, 15}, "WIDTH", TextFormat("%i", (int)panelContentRec.width), 1, 600, true);
|
panelContentRec.width = GuiSliderBar((Rectangle){ 590, 385, 145, 15}, "WIDTH", TextFormat("%i", (int)panelContentRec.width), panelContentRec.width, 1, 600);
|
||||||
panelContentRec.height = GuiSliderBar((Rectangle){ 590, 410, 145, 15 }, "HEIGHT", TextFormat("%i", (int)panelContentRec.height), 1, 400, true);
|
panelContentRec.height = GuiSliderBar((Rectangle){ 590, 410, 145, 15 }, "HEIGHT", TextFormat("%i", (int)panelContentRec.height), panelContentRec.height, 1, 400);
|
||||||
|
|
||||||
EndDrawing();
|
EndDrawing();
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
}
|
}
|
||||||
@ -99,35 +99,35 @@ static void DrawStyleEditControls(void)
|
|||||||
// ScrollPanel style controls
|
// ScrollPanel style controls
|
||||||
//----------------------------------------------------------
|
//----------------------------------------------------------
|
||||||
GuiGroupBox((Rectangle){ 550, 170, 220, 205 }, "SCROLLBAR STYLE");
|
GuiGroupBox((Rectangle){ 550, 170, 220, 205 }, "SCROLLBAR STYLE");
|
||||||
|
|
||||||
int style = GuiGetStyle(SCROLLBAR, BORDER_WIDTH);
|
int style = GuiGetStyle(SCROLLBAR, BORDER_WIDTH);
|
||||||
GuiLabel((Rectangle){ 555, 195, 110, 10 }, "BORDER_WIDTH");
|
GuiLabel((Rectangle){ 555, 195, 110, 10 }, "BORDER_WIDTH");
|
||||||
GuiSpinner((Rectangle){ 670, 190, 90, 20 }, NULL, &style, 0, 6, false);
|
GuiSpinner((Rectangle){ 670, 190, 90, 20 }, NULL, &style, 0, 6, false);
|
||||||
GuiSetStyle(SCROLLBAR, BORDER_WIDTH, style);
|
GuiSetStyle(SCROLLBAR, BORDER_WIDTH, style);
|
||||||
|
|
||||||
style = GuiGetStyle(SCROLLBAR, ARROWS_SIZE);
|
style = GuiGetStyle(SCROLLBAR, ARROWS_SIZE);
|
||||||
GuiLabel((Rectangle){ 555, 220, 110, 10 }, "ARROWS_SIZE");
|
GuiLabel((Rectangle){ 555, 220, 110, 10 }, "ARROWS_SIZE");
|
||||||
GuiSpinner((Rectangle){ 670, 215, 90, 20 }, NULL, &style, 4, 14, false);
|
GuiSpinner((Rectangle){ 670, 215, 90, 20 }, NULL, &style, 4, 14, false);
|
||||||
GuiSetStyle(SCROLLBAR, ARROWS_SIZE, style);
|
GuiSetStyle(SCROLLBAR, ARROWS_SIZE, style);
|
||||||
|
|
||||||
style = GuiGetStyle(SCROLLBAR, SLIDER_PADDING);
|
style = GuiGetStyle(SCROLLBAR, SLIDER_PADDING);
|
||||||
GuiLabel((Rectangle){ 555, 245, 110, 10 }, "SLIDER_PADDING");
|
GuiLabel((Rectangle){ 555, 245, 110, 10 }, "SLIDER_PADDING");
|
||||||
GuiSpinner((Rectangle){ 670, 240, 90, 20 }, NULL, &style, 0, 14, false);
|
GuiSpinner((Rectangle){ 670, 240, 90, 20 }, NULL, &style, 0, 14, false);
|
||||||
GuiSetStyle(SCROLLBAR, SLIDER_PADDING, style);
|
GuiSetStyle(SCROLLBAR, SLIDER_PADDING, style);
|
||||||
|
|
||||||
style = GuiCheckBox((Rectangle){ 565, 280, 20, 20 }, "ARROWS_VISIBLE", GuiGetStyle(SCROLLBAR, ARROWS_VISIBLE));
|
style = GuiCheckBox((Rectangle){ 565, 280, 20, 20 }, "ARROWS_VISIBLE", GuiGetStyle(SCROLLBAR, ARROWS_VISIBLE));
|
||||||
GuiSetStyle(SCROLLBAR, ARROWS_VISIBLE, style);
|
GuiSetStyle(SCROLLBAR, ARROWS_VISIBLE, style);
|
||||||
|
|
||||||
style = GuiGetStyle(SCROLLBAR, SLIDER_PADDING);
|
style = GuiGetStyle(SCROLLBAR, SLIDER_PADDING);
|
||||||
GuiLabel((Rectangle){ 555, 325, 110, 10 }, "SLIDER_PADDING");
|
GuiLabel((Rectangle){ 555, 325, 110, 10 }, "SLIDER_PADDING");
|
||||||
GuiSpinner((Rectangle){ 670, 320, 90, 20 }, NULL, &style, 0, 14, false);
|
GuiSpinner((Rectangle){ 670, 320, 90, 20 }, NULL, &style, 0, 14, false);
|
||||||
GuiSetStyle(SCROLLBAR, SLIDER_PADDING, style);
|
GuiSetStyle(SCROLLBAR, SLIDER_PADDING, style);
|
||||||
|
|
||||||
style = GuiGetStyle(SCROLLBAR, SLIDER_WIDTH);
|
style = GuiGetStyle(SCROLLBAR, SLIDER_WIDTH);
|
||||||
GuiLabel((Rectangle){ 555, 350, 110, 10 }, "SLIDER_WIDTH");
|
GuiLabel((Rectangle){ 555, 350, 110, 10 }, "SLIDER_WIDTH");
|
||||||
GuiSpinner((Rectangle){ 670, 345, 90, 20 }, NULL, &style, 2, 100, false);
|
GuiSpinner((Rectangle){ 670, 345, 90, 20 }, NULL, &style, 2, 100, false);
|
||||||
GuiSetStyle(SCROLLBAR, SLIDER_WIDTH, style);
|
GuiSetStyle(SCROLLBAR, SLIDER_WIDTH, style);
|
||||||
|
|
||||||
const char *text = GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE? "SCROLLBAR: LEFT" : "SCROLLBAR: RIGHT";
|
const char *text = GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE? "SCROLLBAR: LEFT" : "SCROLLBAR: RIGHT";
|
||||||
style = GuiToggle((Rectangle){ 560, 110, 200, 35 }, text, GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE));
|
style = GuiToggle((Rectangle){ 560, 110, 200, 35 }, text, GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE));
|
||||||
GuiSetStyle(LISTVIEW, SCROLLBAR_SIDE, style);
|
GuiSetStyle(LISTVIEW, SCROLLBAR_SIDE, style);
|
||||||
@ -136,12 +136,12 @@ static void DrawStyleEditControls(void)
|
|||||||
// ScrollBar style controls
|
// ScrollBar style controls
|
||||||
//----------------------------------------------------------
|
//----------------------------------------------------------
|
||||||
GuiGroupBox((Rectangle){ 550, 20, 220, 135 }, "SCROLLPANEL STYLE");
|
GuiGroupBox((Rectangle){ 550, 20, 220, 135 }, "SCROLLPANEL STYLE");
|
||||||
|
|
||||||
style = GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH);
|
style = GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH);
|
||||||
GuiLabel((Rectangle){ 555, 35, 110, 10 }, "SCROLLBAR_WIDTH");
|
GuiLabel((Rectangle){ 555, 35, 110, 10 }, "SCROLLBAR_WIDTH");
|
||||||
GuiSpinner((Rectangle){ 670, 30, 90, 20 }, NULL, &style, 6, 30, false);
|
GuiSpinner((Rectangle){ 670, 30, 90, 20 }, NULL, &style, 6, 30, false);
|
||||||
GuiSetStyle(LISTVIEW, SCROLLBAR_WIDTH, style);
|
GuiSetStyle(LISTVIEW, SCROLLBAR_WIDTH, style);
|
||||||
|
|
||||||
style = GuiGetStyle(DEFAULT, BORDER_WIDTH);
|
style = GuiGetStyle(DEFAULT, BORDER_WIDTH);
|
||||||
GuiLabel((Rectangle){ 555, 60, 110, 10 }, "BORDER_WIDTH");
|
GuiLabel((Rectangle){ 555, 60, 110, 10 }, "BORDER_WIDTH");
|
||||||
GuiSpinner((Rectangle){ 670, 55, 90, 20 }, NULL, &style, 0, 20, false);
|
GuiSpinner((Rectangle){ 670, 55, 90, 20 }, NULL, &style, 0, 20, false);
|
||||||
@ -94,7 +94,7 @@ static bool IsKeyPressed(int key)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// USED IN: GuiTextBox(), GuiTextBoxMulti(), GuiValueBox()
|
// USED IN: GuiTextBox(), GuiValueBox()
|
||||||
static int GetKeyPressed(void)
|
static int GetKeyPressed(void)
|
||||||
{
|
{
|
||||||
// TODO: Return last key pressed (up->down) in the frame
|
// TODO: Return last key pressed (up->down) in the frame
|
||||||
@ -122,18 +122,6 @@ static void DrawTriangle(Vector2 v1, Vector2 v2, Vector2 v3, Color color)
|
|||||||
// TODO: Draw triangle on the screen, required for arrows
|
// TODO: Draw triangle on the screen, required for arrows
|
||||||
}
|
}
|
||||||
|
|
||||||
// USED IN: GuiImageButtonEx()
|
|
||||||
static void DrawTextureRec(Texture2D texture, Rectangle sourceRec, Vector2 position, Color tint)
|
|
||||||
{
|
|
||||||
// TODO: Draw texture (piece defined by source rectangle) on screen
|
|
||||||
}
|
|
||||||
|
|
||||||
// USED IN: GuiTextBoxMulti()
|
|
||||||
static void DrawTextRec(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint)
|
|
||||||
{
|
|
||||||
// TODO: Draw text limited by a rectangle. This advance function wraps the text inside the rectangle
|
|
||||||
}
|
|
||||||
|
|
||||||
//-------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------
|
||||||
// Text required functions
|
// Text required functions
|
||||||
//-------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------
|
||||||
@ -147,7 +135,7 @@ static Font GetFontDefault(void)
|
|||||||
return font;
|
return font;
|
||||||
}
|
}
|
||||||
|
|
||||||
// USED IN: GetTextWidth(), GuiTextBoxMulti()
|
// USED IN: GetTextWidth()
|
||||||
static Vector2 MeasureTextEx(Font font, const char *text, float fontSize, float spacing)
|
static Vector2 MeasureTextEx(Font font, const char *text, float fontSize, float spacing)
|
||||||
{
|
{
|
||||||
Vector2 size = { 0 };
|
Vector2 size = { 0 };
|
||||||
@ -166,7 +154,7 @@ static void DrawTextEx(Font font, const char *text, Vector2 position, float font
|
|||||||
//-------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------
|
||||||
// GuiLoadStyle() required functions
|
// GuiLoadStyle() required functions
|
||||||
//-------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------
|
||||||
static Font LoadFontEx(const char *fileName, int fontSize, int *fontChars, int charsCount)
|
static Font LoadFontEx(const char *fileName, int fontSize, int *fontChars, int glyphCount)
|
||||||
{
|
{
|
||||||
Font font = { 0 };
|
Font font = { 0 };
|
||||||
|
|
||||||
136
examples/style_selector/style_selector.c
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
/*******************************************************************************************
|
||||||
|
*
|
||||||
|
* raygui - style selector
|
||||||
|
*
|
||||||
|
* DEPENDENCIES:
|
||||||
|
* raylib 4.5 - Windowing/input management and drawing
|
||||||
|
* raygui 3.5 - Immediate-mode GUI controls with custom styling and icons
|
||||||
|
*
|
||||||
|
* COMPILATION (Windows - MinGW):
|
||||||
|
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
||||||
|
*
|
||||||
|
* LICENSE: zlib/libpng
|
||||||
|
*
|
||||||
|
* Copyright (c) 2016-2023 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 <string.h> // 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);
|
||||||
|
|
||||||
|
// Custom GUI font loading
|
||||||
|
//Font font = LoadFontEx("fonts/custom_font.ttf", 12, 0, 0);
|
||||||
|
//GuiSetFont(font);
|
||||||
|
|
||||||
|
bool exitWindow = false;
|
||||||
|
bool showMessageBox = false;
|
||||||
|
|
||||||
|
char textInput[256] = { 0 };
|
||||||
|
bool showTextInputBox = false;
|
||||||
|
|
||||||
|
char textInputFileName[256] = { 0 };
|
||||||
|
|
||||||
|
// Load default style
|
||||||
|
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())
|
||||||
|
{
|
||||||
|
FilePathList droppedFiles = LoadDroppedFiles();
|
||||||
|
|
||||||
|
if ((droppedFiles.count > 0) && IsFileExtension(droppedFiles.paths[0], ".rgs")) GuiLoadStyle(droppedFiles.paths[0]);
|
||||||
|
|
||||||
|
UnloadDroppedFiles(droppedFiles); // 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);
|
||||||
|
|
||||||
|
GuiSetIconScale(2);
|
||||||
|
GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_RIGHT);
|
||||||
|
GuiButton((Rectangle){ 25, 255, 300, 30 }, GuiIconText(ICON_FILE_SAVE, "Save File"));
|
||||||
|
GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
EndDrawing();
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
}
|
||||||
|
|
||||||
|
// De-Initialization
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
|
CloseWindow(); // Close window and OpenGL context
|
||||||
|
//--------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
354
examples/style_selector/styles/style_bluish.h
Normal file
@ -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-2023 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);
|
||||||
|
}
|
||||||
340
examples/style_selector/styles/style_cyber.h
Normal file
@ -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-2023 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);
|
||||||
|
}
|
||||||
347
examples/style_selector/styles/style_dark.h
Normal file
@ -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-2023 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
|
||||||
|
}
|
||||||
337
examples/style_selector/styles/style_jungle.h
Normal file
@ -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-2023 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);
|
||||||
|
}
|
||||||
349
examples/style_selector/styles/style_lavanda.h
Normal file
@ -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-2023 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);
|
||||||
|
}
|
||||||
333
examples/style_selector/styles/style_terminal.h
Normal file
@ -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-2023 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);
|
||||||
|
}
|
||||||
@ -1,301 +0,0 @@
|
|||||||
/*******************************************************************************************
|
|
||||||
*
|
|
||||||
* raygui - Controls test
|
|
||||||
*
|
|
||||||
* TEST CONTROLS:
|
|
||||||
* - GuiScrollPanel()
|
|
||||||
*
|
|
||||||
* DEPENDENCIES:
|
|
||||||
* raylib 2.5 - Windowing/input management and drawing.
|
|
||||||
* raygui 2.0 - Immediate-mode GUI controls.
|
|
||||||
*
|
|
||||||
* COMPILATION (Windows - MinGW):
|
|
||||||
* gcc -o $(NAME_PART).exe $(FILE_NAME) -I../../src -lraylib -lopengl32 -lgdi32 -std=c99
|
|
||||||
*
|
|
||||||
* COMPILATION (Linux - gcc):
|
|
||||||
* gcc -o $(NAME_PART) $(FILE_NAME) -I../../src -lraylib -std=c99
|
|
||||||
*
|
|
||||||
* LICENSE: zlib/libpng
|
|
||||||
*
|
|
||||||
* Copyright (c) 2019 Vlad Adrian (@Demizdor) and Ramon Santamaria (@raysan5)
|
|
||||||
*
|
|
||||||
**********************************************************************************************/
|
|
||||||
|
|
||||||
#include "raylib.h"
|
|
||||||
|
|
||||||
#define RAYGUI_IMPLEMENTATION
|
|
||||||
#define RAYGUI_SUPPORT_RICONS
|
|
||||||
#include "../../src/raygui.h"
|
|
||||||
|
|
||||||
#undef RAYGUI_IMPLEMENTATION // Avoid including raygui implementation again
|
|
||||||
|
|
||||||
#define GUI_TEXTBOX_EXTENDED_IMPLEMENTATION
|
|
||||||
#include "../../src/gui_textbox_extended.h"
|
|
||||||
|
|
||||||
#include <limits.h>
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
// Defines and Macros
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
#define SIZEOF(A) (sizeof(A)/sizeof(A[0])) // Get number of elements in array `A`. Total size of `A` should be known at compile time.
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
// Global Variables Definition
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
static char text01[92] = "Lorem ipsum dolor sit amet, \xE7\x8C\xBF\xE3\x82\x82\xE6\x9C\xA8\xE3\x81\x8B\xE3\x82\x89\xE8\x90\xBD\xE3\x81\xA1\xE3\x82\x8B consectetur adipiscing elit"; // including some hiragana/kanji
|
|
||||||
static char text02[128] = "Here's another, much bigger textboxBounds." "\xf4\xa1\xa1\xff" " TIP: try COPY/PASTE ;)"; // including some invalid UTF8
|
|
||||||
|
|
||||||
static int textboxActive = 0; // Keeps traks of the active textboxBounds
|
|
||||||
|
|
||||||
static Rectangle textboxBounds[4] = {
|
|
||||||
{ 20, 60, 160, 25 },
|
|
||||||
{ 220, 60, 300, 25 },
|
|
||||||
{ 565, 60, 95, 25 },
|
|
||||||
{ 680, 60, 100, 25 },
|
|
||||||
};
|
|
||||||
|
|
||||||
static Texture2D checked = { 0 };
|
|
||||||
|
|
||||||
// Draw a color button, if clicked return true
|
|
||||||
bool ColorButton(Rectangle bounds, Color color)
|
|
||||||
{
|
|
||||||
Rectangle body = {bounds.x + 2, bounds.y + 2, bounds.width - 4, bounds.height - 4};
|
|
||||||
bool pressed = false;
|
|
||||||
|
|
||||||
// Update control
|
|
||||||
Vector2 mouse = GetMousePosition();
|
|
||||||
if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) && CheckCollisionPointRec(mouse, bounds)) pressed = true;
|
|
||||||
|
|
||||||
// Draw control
|
|
||||||
DrawTexture(checked, body.x, body.y, WHITE);
|
|
||||||
DrawRectangleRec(body, color);
|
|
||||||
DrawRectangleLinesEx(bounds, 1, BLACK);
|
|
||||||
|
|
||||||
return pressed;
|
|
||||||
}
|
|
||||||
|
|
||||||
//------------------------------------------------------------------------------------
|
|
||||||
// Program main entry point
|
|
||||||
//------------------------------------------------------------------------------------
|
|
||||||
int main(int argc, char **argv)
|
|
||||||
{
|
|
||||||
// Initialization
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
const int screenWidth = 800;
|
|
||||||
const int screenHeight = 450;
|
|
||||||
|
|
||||||
InitWindow(screenWidth, screenHeight, "raygui - gui textboxBounds extended demo");
|
|
||||||
|
|
||||||
// Generate a checked checked used by the color buttons
|
|
||||||
Image img = GenImageChecked(26, 26, 5, 5, RAYWHITE, DARKGRAY);
|
|
||||||
checked = LoadTextureFromImage(img);
|
|
||||||
UnloadImage(img);
|
|
||||||
|
|
||||||
Font font = { 0 };
|
|
||||||
int fontSize = GuiGetStyle(DEFAULT, TEXT_SIZE);
|
|
||||||
int fontSpacing = GuiGetStyle(DEFAULT, TEXT_SPACING);
|
|
||||||
int padding = GuiGetStyle(TEXTBOX, TEXT_INNER_PADDING);
|
|
||||||
int border = GuiGetStyle(TEXTBOX, BORDER_WIDTH);
|
|
||||||
Color colorFG = GetColor(GuiGetStyle(TEXTBOX, COLOR_SELECTED_FG));
|
|
||||||
Color colorBG = GetColor(GuiGetStyle(TEXTBOX, COLOR_SELECTED_BG));
|
|
||||||
Color *colorSelected = &colorFG;
|
|
||||||
|
|
||||||
bool showMenu = false;
|
|
||||||
Rectangle menuRect = { 0 };
|
|
||||||
|
|
||||||
int spinnerValue = 0;
|
|
||||||
int valueBoxValue = 0;
|
|
||||||
|
|
||||||
bool textBox01EditMode = false;
|
|
||||||
bool textBox02EditMode = false;
|
|
||||||
bool spinnerEditMode = false;
|
|
||||||
bool valueBoxEditMode = false;
|
|
||||||
|
|
||||||
SetTargetFPS(60);
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
// Main game loop
|
|
||||||
while (!WindowShouldClose()) // Detect window close button or ESC key
|
|
||||||
{
|
|
||||||
// Update
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
Vector2 mouse = GetMousePosition();
|
|
||||||
|
|
||||||
// Check all textboxes to get the active textboxBounds
|
|
||||||
if (textBox01EditMode) textboxActive = 0;
|
|
||||||
else if (textBox02EditMode) textboxActive = 1;
|
|
||||||
else if (spinnerEditMode) textboxActive = 2;
|
|
||||||
else if (valueBoxEditMode) textboxActive = 3;
|
|
||||||
|
|
||||||
// Show/Hide the textboxBounds menu
|
|
||||||
/*
|
|
||||||
if ((textboxActive < 2) && !showMenu && CheckCollisionPointRec(mouse, textboxBounds[textboxActive]) && IsMouseButtonPressed(MOUSE_RIGHT_BUTTON))
|
|
||||||
{
|
|
||||||
showMenu = true;
|
|
||||||
menuRect = (Rectangle){mouse.x, mouse.y, 80, 110};
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Menu hidding logic
|
|
||||||
if (showMenu && IsMouseButtonPressed(MOUSE_LEFT_BUTTON) && !CheckCollisionPointRec(mouse, menuRect)) showMenu = false;
|
|
||||||
|
|
||||||
// Fonts drag & drop logic
|
|
||||||
if (IsFileDropped())
|
|
||||||
{
|
|
||||||
int count = 0;
|
|
||||||
char **files = GetDroppedFiles(&count);
|
|
||||||
|
|
||||||
if (IsFileExtension(files[0], ".ttf") ||
|
|
||||||
IsFileExtension(files[0], ".otf") ||
|
|
||||||
IsFileExtension(files[0], ".fnt"))
|
|
||||||
{
|
|
||||||
Font fnt = LoadFont(files[0]);
|
|
||||||
|
|
||||||
if (fnt.texture.id != 0)
|
|
||||||
{
|
|
||||||
// Font was loaded, only change font on success
|
|
||||||
GuiSetFont(fnt);
|
|
||||||
fontSize = fnt.baseSize;
|
|
||||||
|
|
||||||
// Remove old font
|
|
||||||
if (font.texture.id != 0) UnloadFont(font);
|
|
||||||
font = fnt;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ClearDroppedFiles();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Convert text to hex representation and draw it on screen
|
|
||||||
char hex[(((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]);
|
|
||||||
|
|
||||||
int startIdx = 0, endIdx = 0;
|
|
||||||
if (textboxActive < 2)
|
|
||||||
{
|
|
||||||
Vector2 sel = GuiTextBoxGetSelection();
|
|
||||||
startIdx = GuiTextBoxGetByteIndex(text, 0, 0, sel.x);
|
|
||||||
endIdx = GuiTextBoxGetByteIndex(text, 0, 0, sel.x + sel.y);
|
|
||||||
}
|
|
||||||
|
|
||||||
int len = endIdx - startIdx;
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
// Draw
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
BeginDrawing();
|
|
||||||
|
|
||||||
ClearBackground(RAYWHITE);
|
|
||||||
|
|
||||||
// Draw textboxes extended
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
// Set custom style
|
|
||||||
GuiSetStyle(DEFAULT, TEXT_SIZE, fontSize);
|
|
||||||
GuiSetStyle(DEFAULT, TEXT_SPACING, fontSpacing);
|
|
||||||
GuiSetStyle(TEXTBOX, TEXT_INNER_PADDING, padding);
|
|
||||||
GuiSetStyle(TEXTBOX, BORDER_WIDTH, border);
|
|
||||||
GuiSetStyle(TEXTBOX, COLOR_SELECTED_BG, ColorToInt(colorBG));
|
|
||||||
GuiSetStyle(TEXTBOX, COLOR_SELECTED_FG, ColorToInt(colorFG));
|
|
||||||
|
|
||||||
// TODO: GuiTextBoxEx() is not following editMode logic like GuiTextBox()
|
|
||||||
if (GuiTextBoxEx(textboxBounds[0], text01, SIZEOF(text01) - 1, textBox01EditMode)) textBox01EditMode = !textBox01EditMode;
|
|
||||||
if (GuiTextBoxEx(textboxBounds[1], text02, SIZEOF(text02) - 1, textBox02EditMode)) textBox02EditMode = !textBox02EditMode;
|
|
||||||
|
|
||||||
if (GuiSpinner(textboxBounds[2], NULL, &spinnerValue, INT_MIN, INT_MAX, spinnerEditMode)) spinnerEditMode = !spinnerEditMode;
|
|
||||||
if (GuiValueBox(textboxBounds[3], NULL, &valueBoxValue, INT_MIN, INT_MAX, valueBoxEditMode)) valueBoxEditMode = !valueBoxEditMode;
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
// Reset style to default
|
|
||||||
GuiLoadStyleDefault();
|
|
||||||
GuiSetFont(GetFontDefault());
|
|
||||||
GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_CENTER);
|
|
||||||
|
|
||||||
// Draw hexadecimal values viewer
|
|
||||||
DrawTextRecEx(guiFont, hex, (Rectangle){ 20, 95, 760, 205 }, 20, 1, true, BLACK, startIdx*3, len*3, colorFG, colorBG);
|
|
||||||
|
|
||||||
// Draw right-mouse-button-click menu and logic
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
if (showMenu)
|
|
||||||
{
|
|
||||||
GuiSetStyle(LISTVIEW, LIST_ITEMS_HEIGHT, 24); // make items look a little bigger
|
|
||||||
const char *menuItems[] = { "#17# Cut", "#16# Copy", "#18# Paste", "#101# SelectAll" };
|
|
||||||
//int enabledItems[] = { textboxActive < 2 ? 1 : 0, textboxActive < 2 ? 1 : 0, GetClipboardText() != NULL, 1 };
|
|
||||||
int active = -1, focus = 0, scroll = 0;
|
|
||||||
|
|
||||||
GuiSetStyle(DEFAULT, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_LEFT); // Fixes visual glitch with other alignments
|
|
||||||
active = GuiListViewEx(menuRect, menuItems, SIZEOF(menuItems), &focus, &scroll, active);
|
|
||||||
|
|
||||||
if (active != -1)
|
|
||||||
{
|
|
||||||
showMenu = false;
|
|
||||||
char *text = (textboxActive == 1) ? text02 : text01;
|
|
||||||
switch(active)
|
|
||||||
{
|
|
||||||
case 0: GuiTextBoxCut(text); break;
|
|
||||||
case 1: GuiTextBoxCopy(text); break;
|
|
||||||
case 2: GuiTextBoxPaste(text, (textboxActive == 1) ? SIZEOF(text02) : SIZEOF(text01)); break;
|
|
||||||
case 3: GuiTextBoxSelectAll(text); break;
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
// Draw GUI to change textboxes parameters
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
/*
|
|
||||||
// UI for changing the font size and spacing of all textboxes
|
|
||||||
GuiLine((Rectangle){25,280,750,10}, NULL);
|
|
||||||
GuiGroupBox((Rectangle){20,320,190,100}, GuiIconText(RICON_GEAR, "FONT"));
|
|
||||||
GuiLabel((Rectangle){30,340,60,20}, "Size");
|
|
||||||
GuiSpinner((Rectangle){95,340,100,20}, NULL, &fontSize, 10, 40, true);
|
|
||||||
GuiLabel((Rectangle){30,380,60,20}, "Spacing");
|
|
||||||
GuiSpinner((Rectangle){95,380,100,20}, NULL, &fontSpacing, 1, 10, true);
|
|
||||||
|
|
||||||
// UI for changing the style of all textboxes
|
|
||||||
GuiGroupBox((Rectangle){225,320,190,100}, GuiIconText(RICON_COLOR_BUCKET, "STYLE"));
|
|
||||||
GuiLabel((Rectangle){240,340,60,20}, "Padding");
|
|
||||||
GuiSpinner((Rectangle){305,340,100,20}, NULL, &padding, 2, 30, true);
|
|
||||||
GuiLabel((Rectangle){240,380,60,20}, "Border");
|
|
||||||
GuiSpinner((Rectangle){305,380,100,20}, NULL, &border, 0, 8, true);
|
|
||||||
|
|
||||||
// UI for changing the width/height of the active textboxBounds
|
|
||||||
bool changed = false;
|
|
||||||
int width = textboxBounds[textboxActive].width, height = textboxBounds[textboxActive].height;
|
|
||||||
GuiGroupBox((Rectangle){430,320,175,100}, GuiIconText(RICON_CURSOR_SCALE, "SCALE"));
|
|
||||||
GuiLabel((Rectangle){435,340,55,20}, "Width");
|
|
||||||
if (GuiSpinner((Rectangle){495,340,100,20}, NULL, &width, 30, 300, true)) changed = true;
|
|
||||||
GuiLabel((Rectangle){435,380,55,20}, "Height");
|
|
||||||
if (GuiSpinner((Rectangle){495,380,100,20}, NULL, &height, 12, 60, true)) changed = true;
|
|
||||||
GuiSetStyle(LABEL, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_CENTER);
|
|
||||||
GuiLabel((Rectangle){30,290,740,10}, GuiIconText(RICON_TEXT_T, " DRAG A FONT FILE (*.TTF, *.FNT) ANYWHERE TO CHANGE THE DEFAULT FONT!"));
|
|
||||||
GuiSetStyle(LABEL, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_LEFT);
|
|
||||||
textboxBounds[textboxActive].y = 85 - height;
|
|
||||||
textboxBounds[textboxActive].height = height;
|
|
||||||
textboxBounds[textboxActive].width = width;
|
|
||||||
if (changed) GuiTextBoxSetActive(textboxBounds[textboxActive]);
|
|
||||||
|
|
||||||
// UI for selecting the selected text background and foreground color
|
|
||||||
if (ColorButton((Rectangle){625,320,30,30}, colorFG)) colorSelected = &colorFG;
|
|
||||||
if (ColorButton((Rectangle){625,389,30,30}, colorBG)) colorSelected = &colorBG;
|
|
||||||
*colorSelected = GuiColorPicker((Rectangle){660,320,90,85}, *colorSelected);
|
|
||||||
|
|
||||||
float alpha = colorSelected->a;
|
|
||||||
GuiSetStyle(SLIDER, TEXT_ALIGNMENT, GUI_TEXT_ALIGN_LEFT); // Slider for the selected color alpha value
|
|
||||||
colorSelected->a = GuiSlider((Rectangle){664,420,100,20}, GuiIconText(RICON_CROP_ALPHA, "Alpha"), NULL, alpha, 0.0f, 255.0f);
|
|
||||||
*/
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
EndDrawing();
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
}
|
|
||||||
|
|
||||||
// De-Initialization
|
|
||||||
//--------------------------------------------------------------------------------------
|
|
||||||
CloseWindow(); // Close window and OpenGL context
|
|
||||||
//--------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
@ -1,297 +0,0 @@
|
|||||||
/*******************************************************************************************
|
|
||||||
*
|
|
||||||
* raygui - Controls test
|
|
||||||
*
|
|
||||||
* TEST CONTROLS:
|
|
||||||
* - GuiTextEditor()
|
|
||||||
*
|
|
||||||
* DEPENDENCIES:
|
|
||||||
* raylib 3.0 - Windowing/input management and drawing.
|
|
||||||
* raygui 2.7 - 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) 2020 Ramon Santamaria (@raysan5)
|
|
||||||
*
|
|
||||||
**********************************************************************************************/
|
|
||||||
|
|
||||||
#include "raylib.h"
|
|
||||||
|
|
||||||
#define RAYGUI_IMPLEMENTATION
|
|
||||||
#define RAYGUI_SUPPORT_ICONS
|
|
||||||
#include "../../src/raygui.h"
|
|
||||||
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
// Defines and Macros
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
// ...
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
// Global Variables Definition
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
static char text01[128] = "Lorem ipsum dolor sit amet, \xE7\x8C\xBF\xE3\x82\x82\xE6\x9C\xA8\xE3\x81\x8B\xE3\x82\x89\xE8\x90\xBD\xE3\x81\xA1\xE3\x82\x8B consectetur adipiscing elit...\0"; // including some hiragana/kanji
|
|
||||||
static char text02[128] = "Here's another, much bigger textbox extended.\xf4\xa1\xa1\xff TIP: try COPY/PASTE ;)\0"; // Including some invalid UTF8
|
|
||||||
|
|
||||||
bool GuiTextEditor(Rectangle bounds, char *text, int textLen, bool editMode);
|
|
||||||
|
|
||||||
//------------------------------------------------------------------------------------
|
|
||||||
// Program main entry point
|
|
||||||
//------------------------------------------------------------------------------------
|
|
||||||
int main(int argc, char **argv)
|
|
||||||
{
|
|
||||||
// Initialization
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
const int screenWidth = 800;
|
|
||||||
const int screenHeight = 450;
|
|
||||||
|
|
||||||
InitWindow(screenWidth, screenHeight, "raygui - gui text editor test");
|
|
||||||
|
|
||||||
Font font = { 0 };
|
|
||||||
|
|
||||||
bool textEditor01EditMode = false;
|
|
||||||
bool textEditor02EditMode = false;
|
|
||||||
|
|
||||||
SetTargetFPS(60);
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
// Main game loop
|
|
||||||
while (!WindowShouldClose()) // Detect window close button or ESC key
|
|
||||||
{
|
|
||||||
// Update
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
Vector2 mouse = GetMousePosition();
|
|
||||||
|
|
||||||
// Fonts drag & drop logic
|
|
||||||
if (IsFileDropped())
|
|
||||||
{
|
|
||||||
int count = 0;
|
|
||||||
char **files = GetDroppedFiles(&count);
|
|
||||||
|
|
||||||
if (IsFileExtension(files[0], ".ttf") ||
|
|
||||||
IsFileExtension(files[0], ".otf") ||
|
|
||||||
IsFileExtension(files[0], ".fnt"))
|
|
||||||
{
|
|
||||||
Font fnt = LoadFont(files[0]);
|
|
||||||
|
|
||||||
if (fnt.texture.id != 0)
|
|
||||||
{
|
|
||||||
// Font was loaded, only change font on success
|
|
||||||
GuiSetFont(fnt);
|
|
||||||
|
|
||||||
// Remove old font
|
|
||||||
if (font.texture.id != 0) UnloadFont(font);
|
|
||||||
font = fnt;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ClearDroppedFiles();
|
|
||||||
}
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
// Draw
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
BeginDrawing();
|
|
||||||
|
|
||||||
ClearBackground(RAYWHITE);
|
|
||||||
|
|
||||||
// Draw textboxes extended
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
if (GuiTextEditor((Rectangle){ 20, 20, 380, 410 }, text01, strlen(text01), textEditor01EditMode)) textEditor01EditMode = !textEditor01EditMode;
|
|
||||||
if (GuiTextEditor((Rectangle){ 420, 20, 360, 410 }, text02, strlen(text02), textEditor02EditMode)) textEditor02EditMode = !textEditor02EditMode;
|
|
||||||
//---------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
EndDrawing();
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
}
|
|
||||||
|
|
||||||
// De-Initialization
|
|
||||||
//--------------------------------------------------------------------------------------
|
|
||||||
CloseWindow(); // Close window and OpenGL context
|
|
||||||
//--------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Text editor control (Advanced text box)
|
|
||||||
bool GuiTextEditor(Rectangle bounds, char *text, int textSize, bool editMode)
|
|
||||||
{
|
|
||||||
static Rectangle cursor = { 0 }; // Cursor position and size
|
|
||||||
static int framesCounter = 0; // Blinking cursor frames counter
|
|
||||||
static int cursorCodepoint = -1;
|
|
||||||
static int selectStartCp = -1;
|
|
||||||
static int selectLengthCp = 0;
|
|
||||||
|
|
||||||
GuiControlState 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 }
|
|
||||||
|
|
||||||
// WARNING: First string full traversal
|
|
||||||
int codepointCount = GetCodepointsCount(text);
|
|
||||||
|
|
||||||
int textLen = strlen(text); // Text length in bytes
|
|
||||||
|
|
||||||
// Update control
|
|
||||||
//--------------------------------------------------------------------
|
|
||||||
if ((state != GUI_STATE_DISABLED) && !guiLocked)
|
|
||||||
{
|
|
||||||
Vector2 mousePoint = GetMousePosition();
|
|
||||||
|
|
||||||
if (editMode)
|
|
||||||
{
|
|
||||||
state = GUI_STATE_PRESSED;
|
|
||||||
framesCounter++;
|
|
||||||
|
|
||||||
// TODO: Cursor position logic (mouse and keys)
|
|
||||||
|
|
||||||
// Characters selection logic
|
|
||||||
if (selectStartCp != -1)
|
|
||||||
{
|
|
||||||
if (IsKeyDown(KEY_LEFT_SHIFT) && IsKeyPressed(KEY_RIGHT))
|
|
||||||
{
|
|
||||||
selectLengthCp++;
|
|
||||||
if (selectLengthCp >= (codepointCount - selectStartCp)) selectLengthCp = codepointCount - selectStartCp;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (IsKeyDown(KEY_LEFT_SHIFT) && IsKeyPressed(KEY_LEFT))
|
|
||||||
{
|
|
||||||
selectLengthCp--;
|
|
||||||
if (selectLengthCp < 0) selectLengthCp = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int key = GetCharPressed();
|
|
||||||
|
|
||||||
// TODO: On key pressed, place new character in cursor position
|
|
||||||
|
|
||||||
// Exit edit mode logic
|
|
||||||
if (IsKeyPressed(KEY_ENTER) || (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(0))) pressed = true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (CheckCollisionPointRec(mousePoint, bounds))
|
|
||||||
{
|
|
||||||
state = GUI_STATE_FOCUSED;
|
|
||||||
if (IsMouseButtonPressed(0)) pressed = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pressed)
|
|
||||||
{
|
|
||||||
// Exiting edit mode, reset temp variables
|
|
||||||
framesCounter = 0;
|
|
||||||
cursor = (Rectangle){ 0 };
|
|
||||||
|
|
||||||
cursorCodepoint = -1;
|
|
||||||
selectStartCp = -1;
|
|
||||||
selectLengthCp = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//--------------------------------------------------------------------
|
|
||||||
|
|
||||||
// Draw control
|
|
||||||
//--------------------------------------------------------------------
|
|
||||||
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));
|
|
||||||
|
|
||||||
Font font = GetFontDefault();
|
|
||||||
|
|
||||||
int textOffsetY = 0; // Offset between lines (on line break '\n')
|
|
||||||
float textOffsetX = 0.0f; // Offset X to next character to draw
|
|
||||||
|
|
||||||
float scaleFactor = GuiGetStyle(DEFAULT, TEXT_SIZE)*2/font.baseSize; // Character quad scaling factor
|
|
||||||
|
|
||||||
for (int i = 0, cp = 0; i < textLen; i++)
|
|
||||||
{
|
|
||||||
// Get next codepoint from byte string and glyph index in font
|
|
||||||
int codepointByteCount = 0;
|
|
||||||
int codepoint = GetNextCodepoint(&text[i], &codepointByteCount);
|
|
||||||
int index = GetGlyphIndex(font, codepoint);
|
|
||||||
|
|
||||||
Rectangle rec = { bounds.x + textOffsetX + font.chars[index].offsetX*scaleFactor,
|
|
||||||
bounds.y + textOffsetY + font.chars[index].offsetY*scaleFactor,
|
|
||||||
font.recs[index].width*scaleFactor, font.recs[index].height*scaleFactor };
|
|
||||||
|
|
||||||
// Automatic line break to wrap text inside box
|
|
||||||
if (textWrap && ((rec.x + rec.width) >= (bounds.x + bounds.width)))
|
|
||||||
{
|
|
||||||
textOffsetY += (int)((font.baseSize + font.baseSize/2)*scaleFactor);
|
|
||||||
textOffsetX = 0.0f;
|
|
||||||
|
|
||||||
// Recalculate drawing rectangle position
|
|
||||||
rec = (Rectangle){ bounds.x + textOffsetX + font.chars[index].offsetX*scaleFactor,
|
|
||||||
bounds.y + textOffsetY + font.chars[index].offsetY*scaleFactor,
|
|
||||||
font.recs[index].width*scaleFactor, font.recs[index].height*scaleFactor };
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check selected codepoint
|
|
||||||
if (editMode)
|
|
||||||
{
|
|
||||||
if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) && CheckCollisionPointRec(GetMousePosition(), rec))
|
|
||||||
{
|
|
||||||
cursor = rec;
|
|
||||||
cursorCodepoint = cp;
|
|
||||||
selectStartCp = cursorCodepoint;
|
|
||||||
selectLengthCp = 0;
|
|
||||||
|
|
||||||
// TODO: Place cursor at the end if pressed out of text
|
|
||||||
}
|
|
||||||
|
|
||||||
// On mouse left button down allow text selection
|
|
||||||
if ((selectStartCp != -1) && IsMouseButtonDown(MOUSE_LEFT_BUTTON) && CheckCollisionPointRec(GetMousePosition(), rec))
|
|
||||||
{
|
|
||||||
if (cp >= selectStartCp) selectLengthCp = cp - selectStartCp;
|
|
||||||
else if (cp < selectStartCp)
|
|
||||||
{
|
|
||||||
//int temp = selectStartCp;
|
|
||||||
//selectStartCp = cp;
|
|
||||||
//selectLengthCp = temp - selectStartCp;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (codepoint == '\n') // Line break character
|
|
||||||
{
|
|
||||||
// NOTE: Fixed line spacing of 1.5 line-height
|
|
||||||
// TODO: Support custom line spacing defined by user
|
|
||||||
textOffsetY += (int)((font.baseSize + font.baseSize/2)*scaleFactor);
|
|
||||||
textOffsetX = 0.0f;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// Draw codepoint glyph
|
|
||||||
if ((codepoint != ' ') && (codepoint != '\t') && ((rec.x + rec.width) < (bounds.x + bounds.width)))
|
|
||||||
{
|
|
||||||
DrawTexturePro(font.texture, font.recs[index], rec, (Vector2){ 0, 0 }, 0.0f, GetColor(GuiGetStyle(DEFAULT, TEXT_COLOR_NORMAL)));
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: On text overflow do something... move text to the left?
|
|
||||||
}
|
|
||||||
|
|
||||||
// Draw codepoints selection from selectStartCp to selectLengthCp
|
|
||||||
// TODO: Consider spacing when drawing selected characters background
|
|
||||||
if (editMode && (selectStartCp != -1) && ((cp >= selectStartCp) && (cp <= (selectStartCp + selectLengthCp)))) DrawRectangleRec(rec, MAROON);
|
|
||||||
|
|
||||||
if (font.chars[index].advanceX == 0) textOffsetX += ((float)font.recs[index].width*scaleFactor + GuiGetStyle(DEFAULT, TEXT_SPACING));
|
|
||||||
else textOffsetX += ((float)font.chars[index].advanceX*scaleFactor + GuiGetStyle(DEFAULT, TEXT_SPACING));
|
|
||||||
|
|
||||||
i += (codepointByteCount - 1); // Move text bytes counter to next codepoint
|
|
||||||
cp++;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Draw blinking cursor
|
|
||||||
if (editMode && ((framesCounter/20)%2 == 0)) DrawRectangleRec(cursor, Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER_COLOR_PRESSED)), guiAlpha));
|
|
||||||
|
|
||||||
//GuiDrawText(text, GetTextBounds(TEXTBOX, bounds), GuiGetStyle(TEXTBOX, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(TEXTBOX, TEXT + (state*3))), guiAlpha));
|
|
||||||
//--------------------------------------------------------------------
|
|
||||||
|
|
||||||
return pressed;
|
|
||||||
}
|
|
||||||
547
icons/raygui_icons.h
Normal file
@ -0,0 +1,547 @@
|
|||||||
|
//////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// //
|
||||||
|
// raygui Icons exporter v1.1 - Icons data exported as a values array //
|
||||||
|
// //
|
||||||
|
// more info and bugs-report: github.com/raysan5/raygui //
|
||||||
|
// feedback and support: ray[at]raylibtech.com //
|
||||||
|
// //
|
||||||
|
// Copyright (c) 2019-2022 raylib technologies (@raylibtech) //
|
||||||
|
// //
|
||||||
|
//////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// Defines and Macros
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
#define RAYGUI_ICON_SIZE 16 // Size of icons (squared)
|
||||||
|
#define RAYGUI_ICON_MAX_ICONS 256 // Maximum number of icons
|
||||||
|
#define RAYGUI_ICON_MAX_NAME_LENGTH 32 // Maximum length of icon name id
|
||||||
|
|
||||||
|
// Icons data is defined by bit array (every bit represents one pixel)
|
||||||
|
// Those arrays are stored as unsigned int data arrays, so every array
|
||||||
|
// element defines 32 pixels (bits) of information
|
||||||
|
// Number of elemens depend on RAYGUI_ICON_SIZE (by default 16x16 pixels)
|
||||||
|
#define RAYGUI_ICON_DATA_ELEMENTS (RAYGUI_ICON_SIZE*RAYGUI_ICON_SIZE/32)
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// Icons enumeration
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
typedef enum {
|
||||||
|
ICON_NONE = 0,
|
||||||
|
ICON_FOLDER_FILE_OPEN = 1,
|
||||||
|
ICON_FILE_SAVE_CLASSIC = 2,
|
||||||
|
ICON_FOLDER_OPEN = 3,
|
||||||
|
ICON_FOLDER_SAVE = 4,
|
||||||
|
ICON_FILE_OPEN = 5,
|
||||||
|
ICON_FILE_SAVE = 6,
|
||||||
|
ICON_FILE_EXPORT = 7,
|
||||||
|
ICON_FILE_ADD = 8,
|
||||||
|
ICON_FILE_DELETE = 9,
|
||||||
|
ICON_FILETYPE_TEXT = 10,
|
||||||
|
ICON_FILETYPE_AUDIO = 11,
|
||||||
|
ICON_FILETYPE_IMAGE = 12,
|
||||||
|
ICON_FILETYPE_PLAY = 13,
|
||||||
|
ICON_FILETYPE_VIDEO = 14,
|
||||||
|
ICON_FILETYPE_INFO = 15,
|
||||||
|
ICON_FILE_COPY = 16,
|
||||||
|
ICON_FILE_CUT = 17,
|
||||||
|
ICON_FILE_PASTE = 18,
|
||||||
|
ICON_CURSOR_HAND = 19,
|
||||||
|
ICON_CURSOR_POINTER = 20,
|
||||||
|
ICON_CURSOR_CLASSIC = 21,
|
||||||
|
ICON_PENCIL = 22,
|
||||||
|
ICON_PENCIL_BIG = 23,
|
||||||
|
ICON_BRUSH_CLASSIC = 24,
|
||||||
|
ICON_BRUSH_PAINTER = 25,
|
||||||
|
ICON_WATER_DROP = 26,
|
||||||
|
ICON_COLOR_PICKER = 27,
|
||||||
|
ICON_RUBBER = 28,
|
||||||
|
ICON_COLOR_BUCKET = 29,
|
||||||
|
ICON_TEXT_T = 30,
|
||||||
|
ICON_TEXT_A = 31,
|
||||||
|
ICON_SCALE = 32,
|
||||||
|
ICON_RESIZE = 33,
|
||||||
|
ICON_FILTER_POINT = 34,
|
||||||
|
ICON_FILTER_BILINEAR = 35,
|
||||||
|
ICON_CROP = 36,
|
||||||
|
ICON_CROP_ALPHA = 37,
|
||||||
|
ICON_SQUARE_TOGGLE = 38,
|
||||||
|
ICON_SYMMETRY = 39,
|
||||||
|
ICON_SYMMETRY_HORIZONTAL = 40,
|
||||||
|
ICON_SYMMETRY_VERTICAL = 41,
|
||||||
|
ICON_LENS = 42,
|
||||||
|
ICON_LENS_BIG = 43,
|
||||||
|
ICON_EYE_ON = 44,
|
||||||
|
ICON_EYE_OFF = 45,
|
||||||
|
ICON_FILTER_TOP = 46,
|
||||||
|
ICON_FILTER = 47,
|
||||||
|
ICON_TARGET_POINT = 48,
|
||||||
|
ICON_TARGET_SMALL = 49,
|
||||||
|
ICON_TARGET_BIG = 50,
|
||||||
|
ICON_TARGET_MOVE = 51,
|
||||||
|
ICON_CURSOR_MOVE = 52,
|
||||||
|
ICON_CURSOR_SCALE = 53,
|
||||||
|
ICON_CURSOR_SCALE_RIGHT = 54,
|
||||||
|
ICON_CURSOR_SCALE_LEFT = 55,
|
||||||
|
ICON_UNDO = 56,
|
||||||
|
ICON_REDO = 57,
|
||||||
|
ICON_REREDO = 58,
|
||||||
|
ICON_MUTATE = 59,
|
||||||
|
ICON_ROTATE = 60,
|
||||||
|
ICON_REPEAT = 61,
|
||||||
|
ICON_SHUFFLE = 62,
|
||||||
|
ICON_EMPTYBOX = 63,
|
||||||
|
ICON_TARGET = 64,
|
||||||
|
ICON_TARGET_SMALL_FILL = 65,
|
||||||
|
ICON_TARGET_BIG_FILL = 66,
|
||||||
|
ICON_TARGET_MOVE_FILL = 67,
|
||||||
|
ICON_CURSOR_MOVE_FILL = 68,
|
||||||
|
ICON_CURSOR_SCALE_FILL = 69,
|
||||||
|
ICON_CURSOR_SCALE_RIGHT_FILL = 70,
|
||||||
|
ICON_CURSOR_SCALE_LEFT_FILL = 71,
|
||||||
|
ICON_UNDO_FILL = 72,
|
||||||
|
ICON_REDO_FILL = 73,
|
||||||
|
ICON_REREDO_FILL = 74,
|
||||||
|
ICON_MUTATE_FILL = 75,
|
||||||
|
ICON_ROTATE_FILL = 76,
|
||||||
|
ICON_REPEAT_FILL = 77,
|
||||||
|
ICON_SHUFFLE_FILL = 78,
|
||||||
|
ICON_EMPTYBOX_SMALL = 79,
|
||||||
|
ICON_BOX = 80,
|
||||||
|
ICON_BOX_TOP = 81,
|
||||||
|
ICON_BOX_TOP_RIGHT = 82,
|
||||||
|
ICON_BOX_RIGHT = 83,
|
||||||
|
ICON_BOX_BOTTOM_RIGHT = 84,
|
||||||
|
ICON_BOX_BOTTOM = 85,
|
||||||
|
ICON_BOX_BOTTOM_LEFT = 86,
|
||||||
|
ICON_BOX_LEFT = 87,
|
||||||
|
ICON_BOX_TOP_LEFT = 88,
|
||||||
|
ICON_BOX_CENTER = 89,
|
||||||
|
ICON_BOX_CIRCLE_MASK = 90,
|
||||||
|
ICON_POT = 91,
|
||||||
|
ICON_ALPHA_MULTIPLY = 92,
|
||||||
|
ICON_ALPHA_CLEAR = 93,
|
||||||
|
ICON_DITHERING = 94,
|
||||||
|
ICON_MIPMAPS = 95,
|
||||||
|
ICON_BOX_GRID = 96,
|
||||||
|
ICON_GRID = 97,
|
||||||
|
ICON_BOX_CORNERS_SMALL = 98,
|
||||||
|
ICON_BOX_CORNERS_BIG = 99,
|
||||||
|
ICON_FOUR_BOXES = 100,
|
||||||
|
ICON_GRID_FILL = 101,
|
||||||
|
ICON_BOX_MULTISIZE = 102,
|
||||||
|
ICON_ZOOM_SMALL = 103,
|
||||||
|
ICON_ZOOM_MEDIUM = 104,
|
||||||
|
ICON_ZOOM_BIG = 105,
|
||||||
|
ICON_ZOOM_ALL = 106,
|
||||||
|
ICON_ZOOM_CENTER = 107,
|
||||||
|
ICON_BOX_DOTS_SMALL = 108,
|
||||||
|
ICON_BOX_DOTS_BIG = 109,
|
||||||
|
ICON_BOX_CONCENTRIC = 110,
|
||||||
|
ICON_BOX_GRID_BIG = 111,
|
||||||
|
ICON_OK_TICK = 112,
|
||||||
|
ICON_CROSS = 113,
|
||||||
|
ICON_ARROW_LEFT = 114,
|
||||||
|
ICON_ARROW_RIGHT = 115,
|
||||||
|
ICON_ARROW_DOWN = 116,
|
||||||
|
ICON_ARROW_UP = 117,
|
||||||
|
ICON_ARROW_LEFT_FILL = 118,
|
||||||
|
ICON_ARROW_RIGHT_FILL = 119,
|
||||||
|
ICON_ARROW_DOWN_FILL = 120,
|
||||||
|
ICON_ARROW_UP_FILL = 121,
|
||||||
|
ICON_AUDIO = 122,
|
||||||
|
ICON_FX = 123,
|
||||||
|
ICON_WAVE = 124,
|
||||||
|
ICON_WAVE_SINUS = 125,
|
||||||
|
ICON_WAVE_SQUARE = 126,
|
||||||
|
ICON_WAVE_TRIANGULAR = 127,
|
||||||
|
ICON_CROSS_SMALL = 128,
|
||||||
|
ICON_PLAYER_PREVIOUS = 129,
|
||||||
|
ICON_PLAYER_PLAY_BACK = 130,
|
||||||
|
ICON_PLAYER_PLAY = 131,
|
||||||
|
ICON_PLAYER_PAUSE = 132,
|
||||||
|
ICON_PLAYER_STOP = 133,
|
||||||
|
ICON_PLAYER_NEXT = 134,
|
||||||
|
ICON_PLAYER_RECORD = 135,
|
||||||
|
ICON_MAGNET = 136,
|
||||||
|
ICON_LOCK_CLOSE = 137,
|
||||||
|
ICON_LOCK_OPEN = 138,
|
||||||
|
ICON_CLOCK = 139,
|
||||||
|
ICON_TOOLS = 140,
|
||||||
|
ICON_GEAR = 141,
|
||||||
|
ICON_GEAR_BIG = 142,
|
||||||
|
ICON_BIN = 143,
|
||||||
|
ICON_HAND_POINTER = 144,
|
||||||
|
ICON_LASER = 145,
|
||||||
|
ICON_COIN = 146,
|
||||||
|
ICON_EXPLOSION = 147,
|
||||||
|
ICON_1UP = 148,
|
||||||
|
ICON_PLAYER = 149,
|
||||||
|
ICON_PLAYER_JUMP = 150,
|
||||||
|
ICON_KEY = 151,
|
||||||
|
ICON_DEMON = 152,
|
||||||
|
ICON_TEXT_POPUP = 153,
|
||||||
|
ICON_GEAR_EX = 154,
|
||||||
|
ICON_CRACK = 155,
|
||||||
|
ICON_CRACK_POINTS = 156,
|
||||||
|
ICON_STAR = 157,
|
||||||
|
ICON_DOOR = 158,
|
||||||
|
ICON_EXIT = 159,
|
||||||
|
ICON_MODE_2D = 160,
|
||||||
|
ICON_MODE_3D = 161,
|
||||||
|
ICON_CUBE = 162,
|
||||||
|
ICON_CUBE_FACE_TOP = 163,
|
||||||
|
ICON_CUBE_FACE_LEFT = 164,
|
||||||
|
ICON_CUBE_FACE_FRONT = 165,
|
||||||
|
ICON_CUBE_FACE_BOTTOM = 166,
|
||||||
|
ICON_CUBE_FACE_RIGHT = 167,
|
||||||
|
ICON_CUBE_FACE_BACK = 168,
|
||||||
|
ICON_CAMERA = 169,
|
||||||
|
ICON_SPECIAL = 170,
|
||||||
|
ICON_LINK_NET = 171,
|
||||||
|
ICON_LINK_BOXES = 172,
|
||||||
|
ICON_LINK_MULTI = 173,
|
||||||
|
ICON_LINK = 174,
|
||||||
|
ICON_LINK_BROKE = 175,
|
||||||
|
ICON_TEXT_NOTES = 176,
|
||||||
|
ICON_NOTEBOOK = 177,
|
||||||
|
ICON_SUITCASE = 178,
|
||||||
|
ICON_SUITCASE_ZIP = 179,
|
||||||
|
ICON_MAILBOX = 180,
|
||||||
|
ICON_MONITOR = 181,
|
||||||
|
ICON_PRINTER = 182,
|
||||||
|
ICON_PHOTO_CAMERA = 183,
|
||||||
|
ICON_PHOTO_CAMERA_FLASH = 184,
|
||||||
|
ICON_HOUSE = 185,
|
||||||
|
ICON_HEART = 186,
|
||||||
|
ICON_CORNER = 187,
|
||||||
|
ICON_VERTICAL_BARS = 188,
|
||||||
|
ICON_VERTICAL_BARS_FILL = 189,
|
||||||
|
ICON_LIFE_BARS = 190,
|
||||||
|
ICON_INFO = 191,
|
||||||
|
ICON_CROSSLINE = 192,
|
||||||
|
ICON_HELP = 193,
|
||||||
|
ICON_FILETYPE_ALPHA = 194,
|
||||||
|
ICON_FILETYPE_HOME = 195,
|
||||||
|
ICON_LAYERS_VISIBLE = 196,
|
||||||
|
ICON_LAYERS = 197,
|
||||||
|
ICON_WINDOW = 198,
|
||||||
|
ICON_HIDPI = 199,
|
||||||
|
ICON_FILETYPE_BINARY = 200,
|
||||||
|
ICON_HEX = 201,
|
||||||
|
ICON_SHIELD = 202,
|
||||||
|
ICON_FILE_NEW = 203,
|
||||||
|
ICON_FOLDER_ADD = 204,
|
||||||
|
ICON_ALARM = 205,
|
||||||
|
ICON_CPU = 206,
|
||||||
|
ICON_ROM = 207,
|
||||||
|
ICON_STEP_OVER = 208,
|
||||||
|
ICON_STEP_INTO = 209,
|
||||||
|
ICON_STEP_OUT = 210,
|
||||||
|
ICON_RESTART = 211,
|
||||||
|
ICON_BREAKPOINT_ON = 212,
|
||||||
|
ICON_BREAKPOINT_OFF = 213,
|
||||||
|
ICON_BURGER_MENU = 214,
|
||||||
|
ICON_CASE_SENSITIVE = 215,
|
||||||
|
ICON_REG_EXP = 216,
|
||||||
|
ICON_217 = 217,
|
||||||
|
ICON_218 = 218,
|
||||||
|
ICON_219 = 219,
|
||||||
|
ICON_220 = 220,
|
||||||
|
ICON_221 = 221,
|
||||||
|
ICON_222 = 222,
|
||||||
|
ICON_223 = 223,
|
||||||
|
ICON_224 = 224,
|
||||||
|
ICON_225 = 225,
|
||||||
|
ICON_226 = 226,
|
||||||
|
ICON_227 = 227,
|
||||||
|
ICON_228 = 228,
|
||||||
|
ICON_229 = 229,
|
||||||
|
ICON_230 = 230,
|
||||||
|
ICON_231 = 231,
|
||||||
|
ICON_232 = 232,
|
||||||
|
ICON_233 = 233,
|
||||||
|
ICON_234 = 234,
|
||||||
|
ICON_235 = 235,
|
||||||
|
ICON_236 = 236,
|
||||||
|
ICON_237 = 237,
|
||||||
|
ICON_238 = 238,
|
||||||
|
ICON_239 = 239,
|
||||||
|
ICON_240 = 240,
|
||||||
|
ICON_241 = 241,
|
||||||
|
ICON_242 = 242,
|
||||||
|
ICON_243 = 243,
|
||||||
|
ICON_244 = 244,
|
||||||
|
ICON_245 = 245,
|
||||||
|
ICON_246 = 246,
|
||||||
|
ICON_247 = 247,
|
||||||
|
ICON_248 = 248,
|
||||||
|
ICON_249 = 249,
|
||||||
|
ICON_250 = 250,
|
||||||
|
ICON_251 = 251,
|
||||||
|
ICON_252 = 252,
|
||||||
|
ICON_253 = 253,
|
||||||
|
ICON_254 = 254,
|
||||||
|
ICON_255 = 255,
|
||||||
|
} guiIconName;
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
// Icons data
|
||||||
|
//----------------------------------------------------------------------------------
|
||||||
|
static unsigned int guiIcons[RAYGUI_ICON_MAX_ICONS*RAYGUI_ICON_DATA_ELEMENTS] = {
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_NONE
|
||||||
|
0x3ff80000, 0x2f082008, 0x2042207e, 0x40027fc2, 0x40024002, 0x40024002, 0x40024002, 0x00007ffe, // ICON_FOLDER_FILE_OPEN
|
||||||
|
0x3ffe0000, 0x44226422, 0x400247e2, 0x5ffa4002, 0x57ea500a, 0x500a500a, 0x40025ffa, 0x00007ffe, // ICON_FILE_SAVE_CLASSIC
|
||||||
|
0x00000000, 0x0042007e, 0x40027fc2, 0x40024002, 0x41024002, 0x44424282, 0x793e4102, 0x00000100, // ICON_FOLDER_OPEN
|
||||||
|
0x00000000, 0x0042007e, 0x40027fc2, 0x40024002, 0x41024102, 0x44424102, 0x793e4282, 0x00000000, // ICON_FOLDER_SAVE
|
||||||
|
0x3ff00000, 0x201c2010, 0x20042004, 0x21042004, 0x24442284, 0x21042104, 0x20042104, 0x00003ffc, // ICON_FILE_OPEN
|
||||||
|
0x3ff00000, 0x201c2010, 0x20042004, 0x21042004, 0x21042104, 0x22842444, 0x20042104, 0x00003ffc, // ICON_FILE_SAVE
|
||||||
|
0x3ff00000, 0x201c2010, 0x00042004, 0x20041004, 0x20844784, 0x00841384, 0x20042784, 0x00003ffc, // ICON_FILE_EXPORT
|
||||||
|
0x3ff00000, 0x201c2010, 0x20042004, 0x20042004, 0x22042204, 0x22042f84, 0x20042204, 0x00003ffc, // ICON_FILE_ADD
|
||||||
|
0x3ff00000, 0x201c2010, 0x20042004, 0x20042004, 0x25042884, 0x25042204, 0x20042884, 0x00003ffc, // ICON_FILE_DELETE
|
||||||
|
0x3ff00000, 0x201c2010, 0x20042004, 0x20042ff4, 0x20042ff4, 0x20042ff4, 0x20042004, 0x00003ffc, // ICON_FILETYPE_TEXT
|
||||||
|
0x3ff00000, 0x201c2010, 0x27042004, 0x244424c4, 0x26442444, 0x20642664, 0x20042004, 0x00003ffc, // ICON_FILETYPE_AUDIO
|
||||||
|
0x3ff00000, 0x201c2010, 0x26042604, 0x20042004, 0x35442884, 0x2414222c, 0x20042004, 0x00003ffc, // ICON_FILETYPE_IMAGE
|
||||||
|
0x3ff00000, 0x201c2010, 0x20c42004, 0x22442144, 0x22442444, 0x20c42144, 0x20042004, 0x00003ffc, // ICON_FILETYPE_PLAY
|
||||||
|
0x3ff00000, 0x3ffc2ff0, 0x3f3c2ff4, 0x3dbc2eb4, 0x3dbc2bb4, 0x3f3c2eb4, 0x3ffc2ff4, 0x00002ff4, // ICON_FILETYPE_VIDEO
|
||||||
|
0x3ff00000, 0x201c2010, 0x21842184, 0x21842004, 0x21842184, 0x21842184, 0x20042184, 0x00003ffc, // ICON_FILETYPE_INFO
|
||||||
|
0x0ff00000, 0x381c0810, 0x28042804, 0x28042804, 0x28042804, 0x28042804, 0x20102ffc, 0x00003ff0, // ICON_FILE_COPY
|
||||||
|
0x00000000, 0x701c0000, 0x079c1e14, 0x55a000f0, 0x079c00f0, 0x701c1e14, 0x00000000, 0x00000000, // ICON_FILE_CUT
|
||||||
|
0x01c00000, 0x13e41bec, 0x3f841004, 0x204420c4, 0x20442044, 0x20442044, 0x207c2044, 0x00003fc0, // ICON_FILE_PASTE
|
||||||
|
0x00000000, 0x3aa00fe0, 0x2abc2aa0, 0x2aa42aa4, 0x20042aa4, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_CURSOR_HAND
|
||||||
|
0x00000000, 0x003c000c, 0x030800c8, 0x30100c10, 0x10202020, 0x04400840, 0x01800280, 0x00000000, // ICON_CURSOR_POINTER
|
||||||
|
0x00000000, 0x00180000, 0x01f00078, 0x03e007f0, 0x07c003e0, 0x04000e40, 0x00000000, 0x00000000, // ICON_CURSOR_CLASSIC
|
||||||
|
0x00000000, 0x04000000, 0x11000a00, 0x04400a80, 0x01100220, 0x00580088, 0x00000038, 0x00000000, // ICON_PENCIL
|
||||||
|
0x04000000, 0x15000a00, 0x50402880, 0x14102820, 0x05040a08, 0x015c028c, 0x007c00bc, 0x00000000, // ICON_PENCIL_BIG
|
||||||
|
0x01c00000, 0x01400140, 0x01400140, 0x0ff80140, 0x0ff80808, 0x0aa80808, 0x0aa80aa8, 0x00000ff8, // ICON_BRUSH_CLASSIC
|
||||||
|
0x1ffc0000, 0x5ffc7ffe, 0x40004000, 0x00807f80, 0x01c001c0, 0x01c001c0, 0x01c001c0, 0x00000080, // ICON_BRUSH_PAINTER
|
||||||
|
0x00000000, 0x00800000, 0x01c00080, 0x03e001c0, 0x07f003e0, 0x036006f0, 0x000001c0, 0x00000000, // ICON_WATER_DROP
|
||||||
|
0x00000000, 0x3e003800, 0x1f803f80, 0x0c201e40, 0x02080c10, 0x00840104, 0x00380044, 0x00000000, // ICON_COLOR_PICKER
|
||||||
|
0x00000000, 0x07800300, 0x1fe00fc0, 0x3f883fd0, 0x0e021f04, 0x02040402, 0x00f00108, 0x00000000, // ICON_RUBBER
|
||||||
|
0x00c00000, 0x02800140, 0x08200440, 0x20081010, 0x2ffe3004, 0x03f807fc, 0x00e001f0, 0x00000040, // ICON_COLOR_BUCKET
|
||||||
|
0x00000000, 0x21843ffc, 0x01800180, 0x01800180, 0x01800180, 0x01800180, 0x03c00180, 0x00000000, // ICON_TEXT_T
|
||||||
|
0x00800000, 0x01400180, 0x06200340, 0x0c100620, 0x1ff80c10, 0x380c1808, 0x70067004, 0x0000f80f, // ICON_TEXT_A
|
||||||
|
0x78000000, 0x50004000, 0x00004800, 0x03c003c0, 0x03c003c0, 0x00100000, 0x0002000a, 0x0000000e, // ICON_SCALE
|
||||||
|
0x75560000, 0x5e004002, 0x54001002, 0x41001202, 0x408200fe, 0x40820082, 0x40820082, 0x00006afe, // ICON_RESIZE
|
||||||
|
0x00000000, 0x3f003f00, 0x3f003f00, 0x3f003f00, 0x00400080, 0x001c0020, 0x001c001c, 0x00000000, // ICON_FILTER_POINT
|
||||||
|
0x6d800000, 0x00004080, 0x40804080, 0x40800000, 0x00406d80, 0x001c0020, 0x001c001c, 0x00000000, // ICON_FILTER_BILINEAR
|
||||||
|
0x40080000, 0x1ffe2008, 0x14081008, 0x11081208, 0x10481088, 0x10081028, 0x10047ff8, 0x00001002, // ICON_CROP
|
||||||
|
0x00100000, 0x3ffc0010, 0x2ab03550, 0x22b02550, 0x20b02150, 0x20302050, 0x2000fff0, 0x00002000, // ICON_CROP_ALPHA
|
||||||
|
0x40000000, 0x1ff82000, 0x04082808, 0x01082208, 0x00482088, 0x00182028, 0x35542008, 0x00000002, // ICON_SQUARE_TOGGLE
|
||||||
|
0x00000000, 0x02800280, 0x06c006c0, 0x0ea00ee0, 0x1e901eb0, 0x3e883e98, 0x7efc7e8c, 0x00000000, // ICON_SYMMETRY
|
||||||
|
0x01000000, 0x05600100, 0x1d480d50, 0x7d423d44, 0x3d447d42, 0x0d501d48, 0x01000560, 0x00000100, // ICON_SYMMETRY_HORIZONTAL
|
||||||
|
0x01800000, 0x04200240, 0x10080810, 0x00001ff8, 0x00007ffe, 0x0ff01ff8, 0x03c007e0, 0x00000180, // ICON_SYMMETRY_VERTICAL
|
||||||
|
0x00000000, 0x010800f0, 0x02040204, 0x02040204, 0x07f00308, 0x1c000e00, 0x30003800, 0x00000000, // ICON_LENS
|
||||||
|
0x00000000, 0x061803f0, 0x08240c0c, 0x08040814, 0x0c0c0804, 0x23f01618, 0x18002400, 0x00000000, // ICON_LENS_BIG
|
||||||
|
0x00000000, 0x00000000, 0x1c7007c0, 0x638e3398, 0x1c703398, 0x000007c0, 0x00000000, 0x00000000, // ICON_EYE_ON
|
||||||
|
0x00000000, 0x10002000, 0x04700fc0, 0x610e3218, 0x1c703098, 0x001007a0, 0x00000008, 0x00000000, // ICON_EYE_OFF
|
||||||
|
0x00000000, 0x00007ffc, 0x40047ffc, 0x10102008, 0x04400820, 0x02800280, 0x02800280, 0x00000100, // ICON_FILTER_TOP
|
||||||
|
0x00000000, 0x40027ffe, 0x10082004, 0x04200810, 0x02400240, 0x02400240, 0x01400240, 0x000000c0, // ICON_FILTER
|
||||||
|
0x00800000, 0x00800080, 0x00000080, 0x3c9e0000, 0x00000000, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_POINT
|
||||||
|
0x00800000, 0x00800080, 0x00800080, 0x3f7e01c0, 0x008001c0, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_SMALL
|
||||||
|
0x00800000, 0x00800080, 0x03e00080, 0x3e3e0220, 0x03e00220, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_BIG
|
||||||
|
0x01000000, 0x04400280, 0x01000100, 0x43842008, 0x43849ab2, 0x01002008, 0x04400100, 0x01000280, // ICON_TARGET_MOVE
|
||||||
|
0x01000000, 0x04400280, 0x01000100, 0x41042108, 0x41049ff2, 0x01002108, 0x04400100, 0x01000280, // ICON_CURSOR_MOVE
|
||||||
|
0x781e0000, 0x500a4002, 0x04204812, 0x00000240, 0x02400000, 0x48120420, 0x4002500a, 0x0000781e, // ICON_CURSOR_SCALE
|
||||||
|
0x00000000, 0x20003c00, 0x24002800, 0x01000200, 0x00400080, 0x00140024, 0x003c0004, 0x00000000, // ICON_CURSOR_SCALE_RIGHT
|
||||||
|
0x00000000, 0x0004003c, 0x00240014, 0x00800040, 0x02000100, 0x28002400, 0x3c002000, 0x00000000, // ICON_CURSOR_SCALE_LEFT
|
||||||
|
0x00000000, 0x00100020, 0x10101fc8, 0x10001020, 0x10001000, 0x10001000, 0x00001fc0, 0x00000000, // ICON_UNDO
|
||||||
|
0x00000000, 0x08000400, 0x080813f8, 0x00080408, 0x00080008, 0x00080008, 0x000003f8, 0x00000000, // ICON_REDO
|
||||||
|
0x00000000, 0x3ffc0000, 0x20042004, 0x20002000, 0x20402000, 0x3f902020, 0x00400020, 0x00000000, // ICON_REREDO
|
||||||
|
0x00000000, 0x3ffc0000, 0x20042004, 0x27fc2004, 0x20202000, 0x3fc82010, 0x00200010, 0x00000000, // ICON_MUTATE
|
||||||
|
0x00000000, 0x0ff00000, 0x10081818, 0x11801008, 0x10001180, 0x18101020, 0x00100fc8, 0x00000020, // ICON_ROTATE
|
||||||
|
0x00000000, 0x04000200, 0x240429fc, 0x20042204, 0x20442004, 0x3f942024, 0x00400020, 0x00000000, // ICON_REPEAT
|
||||||
|
0x00000000, 0x20001000, 0x22104c0e, 0x00801120, 0x11200040, 0x4c0e2210, 0x10002000, 0x00000000, // ICON_SHUFFLE
|
||||||
|
0x7ffe0000, 0x50024002, 0x44024802, 0x41024202, 0x40424082, 0x40124022, 0x4002400a, 0x00007ffe, // ICON_EMPTYBOX
|
||||||
|
0x00800000, 0x03e00080, 0x08080490, 0x3c9e0808, 0x08080808, 0x03e00490, 0x00800080, 0x00000000, // ICON_TARGET
|
||||||
|
0x00800000, 0x00800080, 0x00800080, 0x3ffe01c0, 0x008001c0, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_SMALL_FILL
|
||||||
|
0x00800000, 0x00800080, 0x03e00080, 0x3ffe03e0, 0x03e003e0, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_BIG_FILL
|
||||||
|
0x01000000, 0x07c00380, 0x01000100, 0x638c2008, 0x638cfbbe, 0x01002008, 0x07c00100, 0x01000380, // ICON_TARGET_MOVE_FILL
|
||||||
|
0x01000000, 0x07c00380, 0x01000100, 0x610c2108, 0x610cfffe, 0x01002108, 0x07c00100, 0x01000380, // ICON_CURSOR_MOVE_FILL
|
||||||
|
0x781e0000, 0x6006700e, 0x04204812, 0x00000240, 0x02400000, 0x48120420, 0x700e6006, 0x0000781e, // ICON_CURSOR_SCALE_FILL
|
||||||
|
0x00000000, 0x38003c00, 0x24003000, 0x01000200, 0x00400080, 0x000c0024, 0x003c001c, 0x00000000, // ICON_CURSOR_SCALE_RIGHT_FILL
|
||||||
|
0x00000000, 0x001c003c, 0x0024000c, 0x00800040, 0x02000100, 0x30002400, 0x3c003800, 0x00000000, // ICON_CURSOR_SCALE_LEFT_FILL
|
||||||
|
0x00000000, 0x00300020, 0x10301ff8, 0x10001020, 0x10001000, 0x10001000, 0x00001fc0, 0x00000000, // ICON_UNDO_FILL
|
||||||
|
0x00000000, 0x0c000400, 0x0c081ff8, 0x00080408, 0x00080008, 0x00080008, 0x000003f8, 0x00000000, // ICON_REDO_FILL
|
||||||
|
0x00000000, 0x3ffc0000, 0x20042004, 0x20002000, 0x20402000, 0x3ff02060, 0x00400060, 0x00000000, // ICON_REREDO_FILL
|
||||||
|
0x00000000, 0x3ffc0000, 0x20042004, 0x27fc2004, 0x20202000, 0x3ff82030, 0x00200030, 0x00000000, // ICON_MUTATE_FILL
|
||||||
|
0x00000000, 0x0ff00000, 0x10081818, 0x11801008, 0x10001180, 0x18301020, 0x00300ff8, 0x00000020, // ICON_ROTATE_FILL
|
||||||
|
0x00000000, 0x06000200, 0x26042ffc, 0x20042204, 0x20442004, 0x3ff42064, 0x00400060, 0x00000000, // ICON_REPEAT_FILL
|
||||||
|
0x00000000, 0x30001000, 0x32107c0e, 0x00801120, 0x11200040, 0x7c0e3210, 0x10003000, 0x00000000, // ICON_SHUFFLE_FILL
|
||||||
|
0x00000000, 0x30043ffc, 0x24042804, 0x21042204, 0x20442084, 0x20142024, 0x3ffc200c, 0x00000000, // ICON_EMPTYBOX_SMALL
|
||||||
|
0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX
|
||||||
|
0x00000000, 0x23c43ffc, 0x23c423c4, 0x200423c4, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_TOP
|
||||||
|
0x00000000, 0x3e043ffc, 0x3e043e04, 0x20043e04, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_TOP_RIGHT
|
||||||
|
0x00000000, 0x20043ffc, 0x20042004, 0x3e043e04, 0x3e043e04, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_RIGHT
|
||||||
|
0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x3e042004, 0x3e043e04, 0x3ffc3e04, 0x00000000, // ICON_BOX_BOTTOM_RIGHT
|
||||||
|
0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x23c42004, 0x23c423c4, 0x3ffc23c4, 0x00000000, // ICON_BOX_BOTTOM
|
||||||
|
0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x207c2004, 0x207c207c, 0x3ffc207c, 0x00000000, // ICON_BOX_BOTTOM_LEFT
|
||||||
|
0x00000000, 0x20043ffc, 0x20042004, 0x207c207c, 0x207c207c, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_LEFT
|
||||||
|
0x00000000, 0x207c3ffc, 0x207c207c, 0x2004207c, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_TOP_LEFT
|
||||||
|
0x00000000, 0x20043ffc, 0x20042004, 0x23c423c4, 0x23c423c4, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_CENTER
|
||||||
|
0x7ffe0000, 0x40024002, 0x47e24182, 0x4ff247e2, 0x47e24ff2, 0x418247e2, 0x40024002, 0x00007ffe, // ICON_BOX_CIRCLE_MASK
|
||||||
|
0x7fff0000, 0x40014001, 0x40014001, 0x49555ddd, 0x4945495d, 0x400149c5, 0x40014001, 0x00007fff, // ICON_POT
|
||||||
|
0x7ffe0000, 0x53327332, 0x44ce4cce, 0x41324332, 0x404e40ce, 0x48125432, 0x4006540e, 0x00007ffe, // ICON_ALPHA_MULTIPLY
|
||||||
|
0x7ffe0000, 0x53327332, 0x44ce4cce, 0x41324332, 0x5c4e40ce, 0x44124432, 0x40065c0e, 0x00007ffe, // ICON_ALPHA_CLEAR
|
||||||
|
0x7ffe0000, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x00007ffe, // ICON_DITHERING
|
||||||
|
0x07fe0000, 0x1ffa0002, 0x7fea000a, 0x402a402a, 0x5b2a512a, 0x5128552a, 0x40205128, 0x00007fe0, // ICON_MIPMAPS
|
||||||
|
0x00000000, 0x1ff80000, 0x12481248, 0x12481ff8, 0x1ff81248, 0x12481248, 0x00001ff8, 0x00000000, // ICON_BOX_GRID
|
||||||
|
0x12480000, 0x7ffe1248, 0x12481248, 0x12487ffe, 0x7ffe1248, 0x12481248, 0x12487ffe, 0x00001248, // ICON_GRID
|
||||||
|
0x00000000, 0x1c380000, 0x1c3817e8, 0x08100810, 0x08100810, 0x17e81c38, 0x00001c38, 0x00000000, // ICON_BOX_CORNERS_SMALL
|
||||||
|
0x700e0000, 0x700e5ffa, 0x20042004, 0x20042004, 0x20042004, 0x20042004, 0x5ffa700e, 0x0000700e, // ICON_BOX_CORNERS_BIG
|
||||||
|
0x3f7e0000, 0x21422142, 0x21422142, 0x00003f7e, 0x21423f7e, 0x21422142, 0x3f7e2142, 0x00000000, // ICON_FOUR_BOXES
|
||||||
|
0x00000000, 0x3bb80000, 0x3bb83bb8, 0x3bb80000, 0x3bb83bb8, 0x3bb80000, 0x3bb83bb8, 0x00000000, // ICON_GRID_FILL
|
||||||
|
0x7ffe0000, 0x7ffe7ffe, 0x77fe7000, 0x77fe77fe, 0x777e7700, 0x777e777e, 0x777e777e, 0x0000777e, // ICON_BOX_MULTISIZE
|
||||||
|
0x781e0000, 0x40024002, 0x00004002, 0x01800000, 0x00000180, 0x40020000, 0x40024002, 0x0000781e, // ICON_ZOOM_SMALL
|
||||||
|
0x781e0000, 0x40024002, 0x00004002, 0x03c003c0, 0x03c003c0, 0x40020000, 0x40024002, 0x0000781e, // ICON_ZOOM_MEDIUM
|
||||||
|
0x781e0000, 0x40024002, 0x07e04002, 0x07e007e0, 0x07e007e0, 0x400207e0, 0x40024002, 0x0000781e, // ICON_ZOOM_BIG
|
||||||
|
0x781e0000, 0x5ffa4002, 0x1ff85ffa, 0x1ff81ff8, 0x1ff81ff8, 0x5ffa1ff8, 0x40025ffa, 0x0000781e, // ICON_ZOOM_ALL
|
||||||
|
0x00000000, 0x2004381c, 0x00002004, 0x00000000, 0x00000000, 0x20040000, 0x381c2004, 0x00000000, // ICON_ZOOM_CENTER
|
||||||
|
0x00000000, 0x1db80000, 0x10081008, 0x10080000, 0x00001008, 0x10081008, 0x00001db8, 0x00000000, // ICON_BOX_DOTS_SMALL
|
||||||
|
0x35560000, 0x00002002, 0x00002002, 0x00002002, 0x00002002, 0x00002002, 0x35562002, 0x00000000, // ICON_BOX_DOTS_BIG
|
||||||
|
0x7ffe0000, 0x40024002, 0x48124ff2, 0x49924812, 0x48124992, 0x4ff24812, 0x40024002, 0x00007ffe, // ICON_BOX_CONCENTRIC
|
||||||
|
0x00000000, 0x10841ffc, 0x10841084, 0x1ffc1084, 0x10841084, 0x10841084, 0x00001ffc, 0x00000000, // ICON_BOX_GRID_BIG
|
||||||
|
0x00000000, 0x00000000, 0x10000000, 0x04000800, 0x01040200, 0x00500088, 0x00000020, 0x00000000, // ICON_OK_TICK
|
||||||
|
0x00000000, 0x10080000, 0x04200810, 0x01800240, 0x02400180, 0x08100420, 0x00001008, 0x00000000, // ICON_CROSS
|
||||||
|
0x00000000, 0x02000000, 0x00800100, 0x00200040, 0x00200010, 0x00800040, 0x02000100, 0x00000000, // ICON_ARROW_LEFT
|
||||||
|
0x00000000, 0x00400000, 0x01000080, 0x04000200, 0x04000800, 0x01000200, 0x00400080, 0x00000000, // ICON_ARROW_RIGHT
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x08081004, 0x02200410, 0x00800140, 0x00000000, 0x00000000, // ICON_ARROW_DOWN
|
||||||
|
0x00000000, 0x00000000, 0x01400080, 0x04100220, 0x10040808, 0x00000000, 0x00000000, 0x00000000, // ICON_ARROW_UP
|
||||||
|
0x00000000, 0x02000000, 0x03800300, 0x03e003c0, 0x03e003f0, 0x038003c0, 0x02000300, 0x00000000, // ICON_ARROW_LEFT_FILL
|
||||||
|
0x00000000, 0x00400000, 0x01c000c0, 0x07c003c0, 0x07c00fc0, 0x01c003c0, 0x004000c0, 0x00000000, // ICON_ARROW_RIGHT_FILL
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x0ff81ffc, 0x03e007f0, 0x008001c0, 0x00000000, 0x00000000, // ICON_ARROW_DOWN_FILL
|
||||||
|
0x00000000, 0x00000000, 0x01c00080, 0x07f003e0, 0x1ffc0ff8, 0x00000000, 0x00000000, 0x00000000, // ICON_ARROW_UP_FILL
|
||||||
|
0x00000000, 0x18a008c0, 0x32881290, 0x24822686, 0x26862482, 0x12903288, 0x08c018a0, 0x00000000, // ICON_AUDIO
|
||||||
|
0x00000000, 0x04800780, 0x004000c0, 0x662000f0, 0x08103c30, 0x130a0e18, 0x0000318e, 0x00000000, // ICON_FX
|
||||||
|
0x00000000, 0x00800000, 0x08880888, 0x2aaa0a8a, 0x0a8a2aaa, 0x08880888, 0x00000080, 0x00000000, // ICON_WAVE
|
||||||
|
0x00000000, 0x00600000, 0x01080090, 0x02040108, 0x42044204, 0x24022402, 0x00001800, 0x00000000, // ICON_WAVE_SINUS
|
||||||
|
0x00000000, 0x07f80000, 0x04080408, 0x04080408, 0x04080408, 0x7c0e0408, 0x00000000, 0x00000000, // ICON_WAVE_SQUARE
|
||||||
|
0x00000000, 0x00000000, 0x00a00040, 0x22084110, 0x08021404, 0x00000000, 0x00000000, 0x00000000, // ICON_WAVE_TRIANGULAR
|
||||||
|
0x00000000, 0x00000000, 0x04200000, 0x01800240, 0x02400180, 0x00000420, 0x00000000, 0x00000000, // ICON_CROSS_SMALL
|
||||||
|
0x00000000, 0x18380000, 0x12281428, 0x10a81128, 0x112810a8, 0x14281228, 0x00001838, 0x00000000, // ICON_PLAYER_PREVIOUS
|
||||||
|
0x00000000, 0x18000000, 0x11801600, 0x10181060, 0x10601018, 0x16001180, 0x00001800, 0x00000000, // ICON_PLAYER_PLAY_BACK
|
||||||
|
0x00000000, 0x00180000, 0x01880068, 0x18080608, 0x06081808, 0x00680188, 0x00000018, 0x00000000, // ICON_PLAYER_PLAY
|
||||||
|
0x00000000, 0x1e780000, 0x12481248, 0x12481248, 0x12481248, 0x12481248, 0x00001e78, 0x00000000, // ICON_PLAYER_PAUSE
|
||||||
|
0x00000000, 0x1ff80000, 0x10081008, 0x10081008, 0x10081008, 0x10081008, 0x00001ff8, 0x00000000, // ICON_PLAYER_STOP
|
||||||
|
0x00000000, 0x1c180000, 0x14481428, 0x15081488, 0x14881508, 0x14281448, 0x00001c18, 0x00000000, // ICON_PLAYER_NEXT
|
||||||
|
0x00000000, 0x03c00000, 0x08100420, 0x10081008, 0x10081008, 0x04200810, 0x000003c0, 0x00000000, // ICON_PLAYER_RECORD
|
||||||
|
0x00000000, 0x0c3007e0, 0x13c81818, 0x14281668, 0x14281428, 0x1c381c38, 0x08102244, 0x00000000, // ICON_MAGNET
|
||||||
|
0x07c00000, 0x08200820, 0x3ff80820, 0x23882008, 0x21082388, 0x20082108, 0x1ff02008, 0x00000000, // ICON_LOCK_CLOSE
|
||||||
|
0x07c00000, 0x08000800, 0x3ff80800, 0x23882008, 0x21082388, 0x20082108, 0x1ff02008, 0x00000000, // ICON_LOCK_OPEN
|
||||||
|
0x01c00000, 0x0c180770, 0x3086188c, 0x60832082, 0x60034781, 0x30062002, 0x0c18180c, 0x01c00770, // ICON_CLOCK
|
||||||
|
0x0a200000, 0x1b201b20, 0x04200e20, 0x04200420, 0x04700420, 0x0e700e70, 0x0e700e70, 0x04200e70, // ICON_TOOLS
|
||||||
|
0x01800000, 0x3bdc318c, 0x0ff01ff8, 0x7c3e1e78, 0x1e787c3e, 0x1ff80ff0, 0x318c3bdc, 0x00000180, // ICON_GEAR
|
||||||
|
0x01800000, 0x3ffc318c, 0x1c381ff8, 0x781e1818, 0x1818781e, 0x1ff81c38, 0x318c3ffc, 0x00000180, // ICON_GEAR_BIG
|
||||||
|
0x00000000, 0x08080ff8, 0x08081ffc, 0x0aa80aa8, 0x0aa80aa8, 0x0aa80aa8, 0x08080aa8, 0x00000ff8, // ICON_BIN
|
||||||
|
0x00000000, 0x00000000, 0x20043ffc, 0x08043f84, 0x04040f84, 0x04040784, 0x000007fc, 0x00000000, // ICON_HAND_POINTER
|
||||||
|
0x00000000, 0x24400400, 0x00001480, 0x6efe0e00, 0x00000e00, 0x24401480, 0x00000400, 0x00000000, // ICON_LASER
|
||||||
|
0x00000000, 0x03c00000, 0x08300460, 0x11181118, 0x11181118, 0x04600830, 0x000003c0, 0x00000000, // ICON_COIN
|
||||||
|
0x00000000, 0x10880080, 0x06c00810, 0x366c07e0, 0x07e00240, 0x00001768, 0x04200240, 0x00000000, // ICON_EXPLOSION
|
||||||
|
0x00000000, 0x3d280000, 0x2528252c, 0x3d282528, 0x05280528, 0x05e80528, 0x00000000, 0x00000000, // ICON_1UP
|
||||||
|
0x01800000, 0x03c003c0, 0x018003c0, 0x0ff007e0, 0x0bd00bd0, 0x0a500bd0, 0x02400240, 0x02400240, // ICON_PLAYER
|
||||||
|
0x01800000, 0x03c003c0, 0x118013c0, 0x03c81ff8, 0x07c003c8, 0x04400440, 0x0c080478, 0x00000000, // ICON_PLAYER_JUMP
|
||||||
|
0x3ff80000, 0x30183ff8, 0x30183018, 0x3ff83ff8, 0x03000300, 0x03c003c0, 0x03e00300, 0x000003e0, // ICON_KEY
|
||||||
|
0x3ff80000, 0x3ff83ff8, 0x33983ff8, 0x3ff83398, 0x3ff83ff8, 0x00000540, 0x0fe00aa0, 0x00000fe0, // ICON_DEMON
|
||||||
|
0x00000000, 0x0ff00000, 0x20041008, 0x25442004, 0x10082004, 0x06000bf0, 0x00000300, 0x00000000, // ICON_TEXT_POPUP
|
||||||
|
0x00000000, 0x11440000, 0x07f00be8, 0x1c1c0e38, 0x1c1c0c18, 0x07f00e38, 0x11440be8, 0x00000000, // ICON_GEAR_EX
|
||||||
|
0x00000000, 0x20080000, 0x0c601010, 0x07c00fe0, 0x07c007c0, 0x0c600fe0, 0x20081010, 0x00000000, // ICON_CRACK
|
||||||
|
0x00000000, 0x20080000, 0x0c601010, 0x04400fe0, 0x04405554, 0x0c600fe0, 0x20081010, 0x00000000, // ICON_CRACK_POINTS
|
||||||
|
0x00000000, 0x00800080, 0x01c001c0, 0x1ffc3ffe, 0x03e007f0, 0x07f003e0, 0x0c180770, 0x00000808, // ICON_STAR
|
||||||
|
0x0ff00000, 0x08180810, 0x08100818, 0x0a100810, 0x08180810, 0x08100818, 0x08100810, 0x00001ff8, // ICON_DOOR
|
||||||
|
0x0ff00000, 0x08100810, 0x08100810, 0x10100010, 0x4f902010, 0x10102010, 0x08100010, 0x00000ff0, // ICON_EXIT
|
||||||
|
0x00040000, 0x001f000e, 0x0ef40004, 0x12f41284, 0x0ef41214, 0x10040004, 0x7ffc3004, 0x10003000, // ICON_MODE_2D
|
||||||
|
0x78040000, 0x501f600e, 0x0ef44004, 0x12f41284, 0x0ef41284, 0x10140004, 0x7ffc300c, 0x10003000, // ICON_MODE_3D
|
||||||
|
0x7fe00000, 0x50286030, 0x47fe4804, 0x44224402, 0x44224422, 0x241275e2, 0x0c06140a, 0x000007fe, // ICON_CUBE
|
||||||
|
0x7fe00000, 0x5ff87ff0, 0x47fe4ffc, 0x44224402, 0x44224422, 0x241275e2, 0x0c06140a, 0x000007fe, // ICON_CUBE_FACE_TOP
|
||||||
|
0x7fe00000, 0x50386030, 0x47fe483c, 0x443e443e, 0x443e443e, 0x241e75fe, 0x0c06140e, 0x000007fe, // ICON_CUBE_FACE_LEFT
|
||||||
|
0x7fe00000, 0x50286030, 0x47fe4804, 0x47fe47fe, 0x47fe47fe, 0x27fe77fe, 0x0ffe17fe, 0x000007fe, // ICON_CUBE_FACE_FRONT
|
||||||
|
0x7fe00000, 0x50286030, 0x47fe4804, 0x44224402, 0x44224422, 0x3ff27fe2, 0x0ffe1ffa, 0x000007fe, // ICON_CUBE_FACE_BOTTOM
|
||||||
|
0x7fe00000, 0x70286030, 0x7ffe7804, 0x7c227c02, 0x7c227c22, 0x3c127de2, 0x0c061c0a, 0x000007fe, // ICON_CUBE_FACE_RIGHT
|
||||||
|
0x7fe00000, 0x7fe87ff0, 0x7ffe7fe4, 0x7fe27fe2, 0x7fe27fe2, 0x24127fe2, 0x0c06140a, 0x000007fe, // ICON_CUBE_FACE_BACK
|
||||||
|
0x00000000, 0x2a0233fe, 0x22022602, 0x22022202, 0x2a022602, 0x00a033fe, 0x02080110, 0x00000000, // ICON_CAMERA
|
||||||
|
0x00000000, 0x200c3ffc, 0x000c000c, 0x3ffc000c, 0x30003000, 0x30003000, 0x3ffc3004, 0x00000000, // ICON_SPECIAL
|
||||||
|
0x00000000, 0x0022003e, 0x012201e2, 0x0100013e, 0x01000100, 0x79000100, 0x4f004900, 0x00007800, // ICON_LINK_NET
|
||||||
|
0x00000000, 0x44007c00, 0x45004600, 0x00627cbe, 0x00620022, 0x45007cbe, 0x44004600, 0x00007c00, // ICON_LINK_BOXES
|
||||||
|
0x00000000, 0x0044007c, 0x0010007c, 0x3f100010, 0x3f1021f0, 0x3f100010, 0x3f0021f0, 0x00000000, // ICON_LINK_MULTI
|
||||||
|
0x00000000, 0x0044007c, 0x00440044, 0x0010007c, 0x00100010, 0x44107c10, 0x440047f0, 0x00007c00, // ICON_LINK
|
||||||
|
0x00000000, 0x0044007c, 0x00440044, 0x0000007c, 0x00000010, 0x44007c10, 0x44004550, 0x00007c00, // ICON_LINK_BROKE
|
||||||
|
0x02a00000, 0x22a43ffc, 0x20042004, 0x20042ff4, 0x20042ff4, 0x20042ff4, 0x20042004, 0x00003ffc, // ICON_TEXT_NOTES
|
||||||
|
0x3ffc0000, 0x20042004, 0x245e27c4, 0x27c42444, 0x2004201e, 0x201e2004, 0x20042004, 0x00003ffc, // ICON_NOTEBOOK
|
||||||
|
0x00000000, 0x07e00000, 0x04200420, 0x24243ffc, 0x24242424, 0x24242424, 0x3ffc2424, 0x00000000, // ICON_SUITCASE
|
||||||
|
0x00000000, 0x0fe00000, 0x08200820, 0x40047ffc, 0x7ffc5554, 0x40045554, 0x7ffc4004, 0x00000000, // ICON_SUITCASE_ZIP
|
||||||
|
0x00000000, 0x20043ffc, 0x3ffc2004, 0x13c81008, 0x100813c8, 0x10081008, 0x1ff81008, 0x00000000, // ICON_MAILBOX
|
||||||
|
0x00000000, 0x40027ffe, 0x5ffa5ffa, 0x5ffa5ffa, 0x40025ffa, 0x03c07ffe, 0x1ff81ff8, 0x00000000, // ICON_MONITOR
|
||||||
|
0x0ff00000, 0x6bfe7ffe, 0x7ffe7ffe, 0x68167ffe, 0x08106816, 0x08100810, 0x0ff00810, 0x00000000, // ICON_PRINTER
|
||||||
|
0x3ff80000, 0xfffe2008, 0x870a8002, 0x904a888a, 0x904a904a, 0x870a888a, 0xfffe8002, 0x00000000, // ICON_PHOTO_CAMERA
|
||||||
|
0x0fc00000, 0xfcfe0cd8, 0x8002fffe, 0x84428382, 0x84428442, 0x80028382, 0xfffe8002, 0x00000000, // ICON_PHOTO_CAMERA_FLASH
|
||||||
|
0x00000000, 0x02400180, 0x08100420, 0x20041008, 0x23c42004, 0x22442244, 0x3ffc2244, 0x00000000, // ICON_HOUSE
|
||||||
|
0x00000000, 0x1c700000, 0x3ff83ef8, 0x3ff83ff8, 0x0fe01ff0, 0x038007c0, 0x00000100, 0x00000000, // ICON_HEART
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0xe000c000, // ICON_CORNER
|
||||||
|
0x00000000, 0x14001c00, 0x15c01400, 0x15401540, 0x155c1540, 0x15541554, 0x1ddc1554, 0x00000000, // ICON_VERTICAL_BARS
|
||||||
|
0x00000000, 0x03000300, 0x1b001b00, 0x1b601b60, 0x1b6c1b60, 0x1b6c1b6c, 0x1b6c1b6c, 0x00000000, // ICON_VERTICAL_BARS_FILL
|
||||||
|
0x00000000, 0x00000000, 0x403e7ffe, 0x7ffe403e, 0x7ffe0000, 0x43fe43fe, 0x00007ffe, 0x00000000, // ICON_LIFE_BARS
|
||||||
|
0x7ffc0000, 0x43844004, 0x43844284, 0x43844004, 0x42844284, 0x42844284, 0x40044384, 0x00007ffc, // ICON_INFO
|
||||||
|
0x40008000, 0x10002000, 0x04000800, 0x01000200, 0x00400080, 0x00100020, 0x00040008, 0x00010002, // ICON_CROSSLINE
|
||||||
|
0x00000000, 0x1ff01ff0, 0x18301830, 0x1f001830, 0x03001f00, 0x00000300, 0x03000300, 0x00000000, // ICON_HELP
|
||||||
|
0x3ff00000, 0x2abc3550, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x00003ffc, // ICON_FILETYPE_ALPHA
|
||||||
|
0x3ff00000, 0x201c2010, 0x22442184, 0x28142424, 0x29942814, 0x2ff42994, 0x20042004, 0x00003ffc, // ICON_FILETYPE_HOME
|
||||||
|
0x07fe0000, 0x04020402, 0x7fe20402, 0x44224422, 0x44224422, 0x402047fe, 0x40204020, 0x00007fe0, // ICON_LAYERS_VISIBLE
|
||||||
|
0x07fe0000, 0x04020402, 0x7c020402, 0x44024402, 0x44024402, 0x402047fe, 0x40204020, 0x00007fe0, // ICON_LAYERS
|
||||||
|
0x00000000, 0x40027ffe, 0x7ffe4002, 0x40024002, 0x40024002, 0x40024002, 0x7ffe4002, 0x00000000, // ICON_WINDOW
|
||||||
|
0x09100000, 0x09f00910, 0x09100910, 0x00000910, 0x24a2779e, 0x27a224a2, 0x709e20a2, 0x00000000, // ICON_HIDPI
|
||||||
|
0x3ff00000, 0x201c2010, 0x2a842e84, 0x2e842a84, 0x2ba42004, 0x2aa42aa4, 0x20042ba4, 0x00003ffc, // ICON_FILETYPE_BINARY
|
||||||
|
0x00000000, 0x00000000, 0x00120012, 0x4a5e4bd2, 0x485233d2, 0x00004bd2, 0x00000000, 0x00000000, // ICON_HEX
|
||||||
|
0x01800000, 0x381c0660, 0x23c42004, 0x23c42044, 0x13c82204, 0x08101008, 0x02400420, 0x00000180, // ICON_SHIELD
|
||||||
|
0x007e0000, 0x20023fc2, 0x40227fe2, 0x400a403a, 0x400a400a, 0x400a400a, 0x4008400e, 0x00007ff8, // ICON_FILE_NEW
|
||||||
|
0x00000000, 0x0042007e, 0x40027fc2, 0x44024002, 0x5f024402, 0x44024402, 0x7ffe4002, 0x00000000, // ICON_FOLDER_ADD
|
||||||
|
0x44220000, 0x12482244, 0xf3cf0000, 0x14280420, 0x48122424, 0x08100810, 0x1ff81008, 0x03c00420, // ICON_ALARM
|
||||||
|
0x0aa00000, 0x1ff80aa0, 0x1068700e, 0x1008706e, 0x1008700e, 0x1008700e, 0x0aa01ff8, 0x00000aa0, // ICON_CPU
|
||||||
|
0x07e00000, 0x04201db8, 0x04a01c38, 0x04a01d38, 0x04a01d38, 0x04a01d38, 0x04201d38, 0x000007e0, // ICON_ROM
|
||||||
|
0x00000000, 0x03c00000, 0x3c382ff0, 0x3c04380c, 0x01800000, 0x03c003c0, 0x00000180, 0x00000000, // ICON_STEP_OVER
|
||||||
|
0x01800000, 0x01800180, 0x01800180, 0x03c007e0, 0x00000180, 0x01800000, 0x03c003c0, 0x00000180, // ICON_STEP_INTO
|
||||||
|
0x01800000, 0x07e003c0, 0x01800180, 0x01800180, 0x00000180, 0x01800000, 0x03c003c0, 0x00000180, // ICON_STEP_OUT
|
||||||
|
0x00000000, 0x0ff003c0, 0x181c1c34, 0x303c301c, 0x30003000, 0x1c301800, 0x03c00ff0, 0x00000000, // ICON_RESTART
|
||||||
|
0x00000000, 0x00000000, 0x07e003c0, 0x0ff00ff0, 0x0ff00ff0, 0x03c007e0, 0x00000000, 0x00000000, // ICON_BREAKPOINT_ON
|
||||||
|
0x00000000, 0x00000000, 0x042003c0, 0x08100810, 0x08100810, 0x03c00420, 0x00000000, 0x00000000, // ICON_BREAKPOINT_OFF
|
||||||
|
0x00000000, 0x00000000, 0x1ff81ff8, 0x1ff80000, 0x00001ff8, 0x1ff81ff8, 0x00000000, 0x00000000, // ICON_BURGER_MENU
|
||||||
|
0x00000000, 0x00000000, 0x00880070, 0x0c880088, 0x1e8810f8, 0x3e881288, 0x00000000, 0x00000000, // ICON_CASE_SENSITIVE
|
||||||
|
0x00000000, 0x02000000, 0x07000a80, 0x07001fc0, 0x02000a80, 0x00300030, 0x00000000, 0x00000000, // ICON_REG_EXP
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_217
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_218
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_219
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_220
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_221
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_222
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_223
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_224
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_225
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_226
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_227
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_228
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_229
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_230
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_231
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_232
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_233
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_234
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_235
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_236
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_237
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_238
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_239
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_240
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_241
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_242
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_243
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_244
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_245
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_246
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_247
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_248
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_249
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_250
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_251
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_252
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_253
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_254
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_255
|
||||||
|
};
|
||||||
BIN
icons/raygui_icons.png
Normal file
|
After Width: | Height: | Size: 9.5 KiB |
BIN
icons/raygui_icons.rgi
Normal file
BIN
images/rguiicons_v100.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
images/rguilayout_v220.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 466 B After Width: | Height: | Size: 401 B |
|
Before Width: | Height: | Size: 189 B After Width: | Height: | Size: 124 B |
|
Before Width: | Height: | Size: 206 B After Width: | Height: | Size: 141 B |
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 966 B |
|
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 170 B |
|
Before Width: | Height: | Size: 256 B After Width: | Height: | Size: 191 B |
|
Before Width: | Height: | Size: 293 B After Width: | Height: | Size: 228 B |
|
Before Width: | Height: | Size: 365 B After Width: | Height: | Size: 300 B |
@ -4,7 +4,12 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
|||||||
project(raygui C)
|
project(raygui C)
|
||||||
|
|
||||||
# Config options
|
# Config options
|
||||||
option(BUILD_RAYGUI_EXAMPLES "Build the examples." ON)
|
option(BUILD_RAYGUI_EXAMPLES "Build the examples." OFF)
|
||||||
|
|
||||||
|
# Force building examples if building in the root as standalone.
|
||||||
|
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
||||||
|
set(BUILD_RAYGUI_EXAMPLES TRUE)
|
||||||
|
endif()
|
||||||
|
|
||||||
# Directory Variables
|
# Directory Variables
|
||||||
set(RAYGUI_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/../..)
|
set(RAYGUI_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/../..)
|
||||||
@ -26,15 +31,15 @@ if(${BUILD_RAYGUI_EXAMPLES})
|
|||||||
|
|
||||||
# Get the sources together
|
# Get the sources together
|
||||||
set(example_dirs
|
set(example_dirs
|
||||||
custom_file_dialog
|
|
||||||
image_raw_importer
|
|
||||||
portable_window
|
|
||||||
scroll_panel
|
|
||||||
text_box_selection
|
|
||||||
controls_test_suite
|
controls_test_suite
|
||||||
|
custom_file_dialog
|
||||||
|
custom_sliders
|
||||||
image_exporter
|
image_exporter
|
||||||
|
image_importer_raw
|
||||||
|
portable_window
|
||||||
property_list
|
property_list
|
||||||
text_editor
|
scroll_panel
|
||||||
|
style_selector
|
||||||
)
|
)
|
||||||
|
|
||||||
set(example_sources)
|
set(example_sources)
|
||||||
|
|||||||
@ -1,10 +1,10 @@
|
|||||||
find_package(raylib 3.0.0 QUIET CONFIG)
|
find_package(raylib 4.5.0 QUIET CONFIG)
|
||||||
if (NOT raylib_FOUND)
|
if (NOT raylib_FOUND)
|
||||||
include(FetchContent)
|
include(FetchContent)
|
||||||
FetchContent_Declare(
|
FetchContent_Declare(
|
||||||
raylib
|
raylib
|
||||||
GIT_REPOSITORY https://github.com/raysan5/raylib.git
|
GIT_REPOSITORY https://github.com/raysan5/raylib.git
|
||||||
GIT_TAG df5c522049ddd82fba048a6bd069338999729d6a
|
GIT_TAG 4.5.0
|
||||||
)
|
)
|
||||||
FetchContent_GetProperties(raylib)
|
FetchContent_GetProperties(raylib)
|
||||||
if (NOT raylib_POPULATED) # Have we downloaded raylib yet?
|
if (NOT raylib_POPULATED) # Have we downloaded raylib yet?
|
||||||
|
|||||||
@ -1,182 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
|
||||||
<ProjectConfiguration Include="Debug.DLL|Win32">
|
|
||||||
<Configuration>Debug.DLL</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release.DLL|Win32">
|
|
||||||
<Configuration>Release.DLL</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{0981CA98-E4A5-4DF1-987F-A41D09131EFC}</ProjectGuid>
|
|
||||||
<Keyword>Win32Proj</Keyword>
|
|
||||||
<RootNamespace>controls_test_suite</RootNamespace>
|
|
||||||
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
|
|
||||||
<ProjectName>controls_test_suite</ProjectName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
|
||||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
<CharacterSet>Unicode</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
|
||||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
<CharacterSet>Unicode</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
|
||||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
<CharacterSet>Unicode</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
|
||||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
<CharacterSet>Unicode</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ImportGroup Label="ExtensionSettings">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="Shared">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<PropertyGroup Label="UserMacros" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<LinkIncremental>true</LinkIncremental>
|
|
||||||
<OutDir>$(ProjectDir)$(ProjectName)\$(Configuration)\</OutDir>
|
|
||||||
<IntDir>$(ProjectDir)$(ProjectName)\$(Configuration)\temp</IntDir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
|
||||||
<LinkIncremental>true</LinkIncremental>
|
|
||||||
<OutDir>$(ProjectDir)$(ProjectName)\$(Configuration)\</OutDir>
|
|
||||||
<IntDir>$(ProjectDir)$(ProjectName)\$(Configuration)\temp</IntDir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<LinkIncremental>false</LinkIncremental>
|
|
||||||
<OutDir>$(ProjectDir)$(ProjectName)\$(Configuration)\</OutDir>
|
|
||||||
<IntDir>$(ProjectDir)$(ProjectName)\$(Configuration)\temp</IntDir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
|
||||||
<LinkIncremental>false</LinkIncremental>
|
|
||||||
<OutDir>$(ProjectDir)$(ProjectName)\$(Configuration)\</OutDir>
|
|
||||||
<IntDir>$(ProjectDir)$(ProjectName)\$(Configuration)\temp</IntDir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<CompileAs>CompileAsC</CompileAs>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\..\..\raylib\src;$(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<SubSystem>Console</SubSystem>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
<AdditionalDependencies>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)</AdditionalDependencies>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<CompileAs>CompileAsC</CompileAs>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<SubSystem>Console</SubSystem>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
<AdditionalDependencies>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)</AdditionalDependencies>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<Optimization>MaxSpeed</Optimization>
|
|
||||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
|
||||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP</PreprocessorDefinitions>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<CompileAs>CompileAsC</CompileAs>
|
|
||||||
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<SubSystem>Console</SubSystem>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<AdditionalDependencies>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)</AdditionalDependencies>
|
|
||||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<Optimization>MaxSpeed</Optimization>
|
|
||||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
|
||||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP</PreprocessorDefinitions>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<CompileAs>CompileAsC</CompileAs>
|
|
||||||
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<SubSystem>Console</SubSystem>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<AdditionalDependencies>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)</AdditionalDependencies>
|
|
||||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\..\..\examples\controls_test_suite\controls_test_suite.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
|
||||||
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
|
||||||
</ProjectReference>
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
<ImportGroup Label="ExtensionTargets">
|
|
||||||
</ImportGroup>
|
|
||||||
</Project>
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
|
||||||
# Visual Studio 15
|
|
||||||
VisualStudioVersion = 15.0.27130.2024
|
|
||||||
MinimumVisualStudioVersion = 10.0.40219.1
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "controls_test_suite", "examples\controls_test_suite.vcxproj", "{0981CA98-E4A5-4DF1-987F-A41D09131EFC}"
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "raylib", "raylib\raylib.vcxproj", "{E89D61AC-55DE-4482-AFD4-DF7242EBC859}"
|
|
||||||
EndProject
|
|
||||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "examples", "examples", "{8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug.DLL|x86 = Debug.DLL|x86
|
|
||||||
Debug|x86 = Debug|x86
|
|
||||||
Release.DLL|x86 = Release.DLL|x86
|
|
||||||
Release|x86 = Release|x86
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
|
|
||||||
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
|
|
||||||
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.ActiveCfg = Debug|Win32
|
|
||||||
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.Build.0 = Debug|Win32
|
|
||||||
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
|
|
||||||
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
|
|
||||||
{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|x86.ActiveCfg = Debug.DLL|Win32
|
|
||||||
{E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
|
|
||||||
{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|x86.ActiveCfg = Release.DLL|Win32
|
|
||||||
{E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x86.Build.0 = Release.DLL|Win32
|
|
||||||
{E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x86.ActiveCfg = Release|Win32
|
|
||||||
{E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x86.Build.0 = Release|Win32
|
|
||||||
{B655E850-3322-42F7-941D-6AC18FD66CA1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
|
|
||||||
{B655E850-3322-42F7-941D-6AC18FD66CA1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
|
|
||||||
{B655E850-3322-42F7-941D-6AC18FD66CA1}.Debug|x86.ActiveCfg = Debug|Win32
|
|
||||||
{B655E850-3322-42F7-941D-6AC18FD66CA1}.Debug|x86.Build.0 = Debug|Win32
|
|
||||||
{B655E850-3322-42F7-941D-6AC18FD66CA1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
|
|
||||||
{B655E850-3322-42F7-941D-6AC18FD66CA1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
|
|
||||||
{B655E850-3322-42F7-941D-6AC18FD66CA1}.Release|x86.ActiveCfg = Release|Win32
|
|
||||||
{B655E850-3322-42F7-941D-6AC18FD66CA1}.Release|x86.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(NestedProjects) = preSolution
|
|
||||||
{0981CA98-E4A5-4DF1-987F-A41D09131EFC} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
|
|
||||||
{B655E850-3322-42F7-941D-6AC18FD66CA1} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
|
||||||
SolutionGuid = {E926C768-6307-4423-A1EC-57E95B1FAB29}
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
||||||
@ -1,192 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
|
||||||
<ProjectConfiguration Include="Debug.DLL|Win32">
|
|
||||||
<Configuration>Debug.DLL</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release.DLL|Win32">
|
|
||||||
<Configuration>Release.DLL</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{E89D61AC-55DE-4482-AFD4-DF7242EBC859}</ProjectGuid>
|
|
||||||
<Keyword>Win32Proj</Keyword>
|
|
||||||
<RootNamespace>raylib</RootNamespace>
|
|
||||||
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
|
||||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
<CharacterSet>Unicode</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
|
||||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
<CharacterSet>Unicode</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
|
||||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
<CharacterSet>Unicode</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
|
||||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
<CharacterSet>Unicode</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ImportGroup Label="ExtensionSettings">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="Shared">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<PropertyGroup Label="UserMacros" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<OutDir>$(SolutionDir)$(ProjectName)\$(Configuration)\</OutDir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
|
||||||
<OutDir>$(SolutionDir)$(ProjectName)\$(Configuration)\</OutDir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<OutDir>$(SolutionDir)$(ProjectName)\$(Configuration)\</OutDir>
|
|
||||||
<IntDir>$(SolutionDir)$(ProjectName)\$(Configuration)\temp</IntDir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
|
||||||
<OutDir>$(SolutionDir)$(ProjectName)\$(Configuration)\</OutDir>
|
|
||||||
<IntDir>$(SolutionDir)$(ProjectName)\$(Configuration)\temp</IntDir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP</PreprocessorDefinitions>
|
|
||||||
<CompileAs>CompileAsC</CompileAs>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\..\..\raylib\release\include;$(SolutionDir)..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
</Link>
|
|
||||||
<Lib>
|
|
||||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
</Lib>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP;BUILD_LIBTYPE_SHARED</PreprocessorDefinitions>
|
|
||||||
<CompileAs>CompileAsC</CompileAs>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\..\..\..\raylib\release\include;$(SolutionDir)..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
</Link>
|
|
||||||
<Lib>
|
|
||||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
</Lib>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<Optimization>MaxSpeed</Optimization>
|
|
||||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
|
||||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP</PreprocessorDefinitions>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\..\..\raylib\release\include;$(SolutionDir)..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
|
||||||
<CompileAs>CompileAsC</CompileAs>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<Optimization>MaxSpeed</Optimization>
|
|
||||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
|
||||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP;BUILD_LIBTYPE_SHARED</PreprocessorDefinitions>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\..\..\raylib\release\include;$(SolutionDir)..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
|
||||||
<CompileAs>CompileAsC</CompileAs>
|
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Text Include="ReadMe.txt" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\..\..\..\raylib\src\raudio.c" />
|
|
||||||
<ClCompile Include="..\..\..\..\raylib\src\core.c" />
|
|
||||||
<ClCompile Include="..\..\..\..\raylib\src\models.c" />
|
|
||||||
<ClCompile Include="..\..\..\..\raylib\src\rglfw.c" />
|
|
||||||
<ClCompile Include="..\..\..\..\raylib\src\shapes.c" />
|
|
||||||
<ClCompile Include="..\..\..\..\raylib\src\text.c" />
|
|
||||||
<ClCompile Include="..\..\..\..\raylib\src\textures.c" />
|
|
||||||
<ClCompile Include="..\..\..\..\raylib\src\utils.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\camera.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\external\glad.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\external\jar_mod.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\external\jar_xm.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\external\miniaudio.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\external\stb_image.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\external\stb_image_resize.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\external\stb_image_write.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\external\stb_rect_pack.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\external\stb_truetype.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\external\stb_vorbis.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\\src\gestures.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\raylib.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\raymath.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\rlgl.h" />
|
|
||||||
<ClInclude Include="..\..\..\..\raylib\src\utils.h" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
<ImportGroup Label="ExtensionTargets">
|
|
||||||
</ImportGroup>
|
|
||||||
</Project>
|
|
||||||
357
projects/VS2022/examples/controls_test_suite.vcxproj
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{0981CA98-E4A5-4DF1-987F-A41D09131EFC}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>controls_test_suite</RootNamespace>
|
||||||
|
<ProjectName>controls_test_suite</ProjectName>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
||||||
|
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\examples\controls_test_suite\controls_test_suite.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
357
projects/VS2022/examples/custom_file_dialog.vcxproj
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{E1CF5310-BCF6-4063-861D-EDFF65D9FE2A}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>custom_file_dialog</RootNamespace>
|
||||||
|
<ProjectName>custom_file_dialog</ProjectName>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
||||||
|
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\examples\custom_file_dialog\custom_file_dialog.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
357
projects/VS2022/examples/image_exporter.vcxproj
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{67B2B88C-EA52-403F-A596-5107008C71F2}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>image_exporter</RootNamespace>
|
||||||
|
<ProjectName>image_exporter</ProjectName>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
||||||
|
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\examples\image_exporter\image_exporter.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
357
projects/VS2022/examples/image_importer_raw.vcxproj
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{6628D753-270D-418D-A87F-6E2E63B9E3D0}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>image_importer_raw</RootNamespace>
|
||||||
|
<ProjectName>image_importer_raw</ProjectName>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
||||||
|
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\examples\image_importer_raw\image_importer_raw.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
357
projects/VS2022/examples/portable_window.vcxproj
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{FFDA97F5-4BAF-410A-AE87-0C8E3CB8C0D8}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>portable_window</RootNamespace>
|
||||||
|
<ProjectName>portable_window</ProjectName>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
||||||
|
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\examples\portable_window\portable_window.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
357
projects/VS2022/examples/property_list.vcxproj
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{D28301C9-C293-4F41-9F58-F2609F33134E}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>property_list</RootNamespace>
|
||||||
|
<ProjectName>property_list</ProjectName>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
||||||
|
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\examples\property_list\property_list.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
357
projects/VS2022/examples/scroll_panel.vcxproj
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{56EE93DF-A3AF-4856-A4EC-E27358C6DA87}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>scroll_panel</RootNamespace>
|
||||||
|
<ProjectName>scroll_panel</ProjectName>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
||||||
|
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\examples\scroll_panel\scroll_panel.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
357
projects/VS2022/examples/style_selector.vcxproj
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{BCF5E746-FDBF-4CAC-9B95-44FE9A498430}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>style_selector</RootNamespace>
|
||||||
|
<ProjectName>style_selector</ProjectName>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
||||||
|
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\examples\style_selector\style_selector.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
27
projects/VS2022/examples/test.props
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#
|
||||||
|
# Property types:
|
||||||
|
# b <name> <flags> <value> // Bool
|
||||||
|
# i <name> <flags> <value> <min> <max> <step> // Int
|
||||||
|
# f <name> <flags> <value> <min> <max> <step> <precision> // Float
|
||||||
|
# t <name> <flags> <value> <edit_length> // Text
|
||||||
|
# l <name> <flags> <value> <active> // Select
|
||||||
|
# g <name> <flags> <value> // Section (Group)
|
||||||
|
# v2 <name> <flags> <x> <y> // Vector 2D
|
||||||
|
# v3 <name> <flags> <x> <y> <z> // Vector 3D
|
||||||
|
# v4 <name> <flags> <x> <y> <z> <w> // Vector 4D
|
||||||
|
# r <name> <flags> <x> <y> <width> <height> // Rectangle
|
||||||
|
# c <name> <flags> <r> <g> <b> <a> // 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 0 12.000000 13.000000 14.000000 15.000000
|
||||||
|
c Color 0 0 255 0 255
|
||||||
357
projects/VS2022/examples/text_editor.vcxproj
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{AB6D26C4-F5F4-420D-B15B-CE52619A5D36}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>text_editor</RootNamespace>
|
||||||
|
<ProjectName>text_editor</ProjectName>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
||||||
|
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\examples\text_editor\text_editor.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
357
projects/VS2022/examples/textbox_selection.vcxproj
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{B740AD57-ABF2-4421-96C0-FE220130A873}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>textbox_selection</RootNamespace>
|
||||||
|
<ProjectName>textbox_selection</ProjectName>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
<Message>Copy Debug DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Command>xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"</Command>
|
||||||
|
</PostBuildEvent>
|
||||||
|
<PostBuildEvent>
|
||||||
|
<Message>Copy Release DLL to output directory</Message>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\raylib\raylib.vcxproj">
|
||||||
|
<Project>{e89d61ac-55de-4482-afd4-df7242ebc859}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\examples\textbox_selection\textbox_selection.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
237
projects/VS2022/raygui.sln
Normal file
@ -0,0 +1,237 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio Version 17
|
||||||
|
VisualStudioVersion = 17.0.31912.275
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "controls_test_suite", "examples\controls_test_suite.vcxproj", "{0981CA98-E4A5-4DF1-987F-A41D09131EFC}"
|
||||||
|
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
|
||||||
|
Debug.DLL|x64 = Debug.DLL|x64
|
||||||
|
Debug.DLL|x86 = Debug.DLL|x86
|
||||||
|
Debug|x64 = Debug|x64
|
||||||
|
Debug|x86 = Debug|x86
|
||||||
|
Release.DLL|x64 = Release.DLL|x64
|
||||||
|
Release.DLL|x86 = Release.DLL|x86
|
||||||
|
Release|x64 = Release|x64
|
||||||
|
Release|x86 = Release|x86
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{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
|
||||||
|
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
|
||||||
|
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.ActiveCfg = Debug|Win32
|
||||||
|
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.Build.0 = Debug|Win32
|
||||||
|
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
|
||||||
|
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x64.Build.0 = Release.DLL|x64
|
||||||
|
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
|
||||||
|
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
|
||||||
|
{0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{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
|
||||||
|
EndGlobal
|
||||||
342
projects/VS2022/raylib/raylib.vcxproj
Normal file
@ -0,0 +1,342 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|Win32">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug.DLL|x64">
|
||||||
|
<Configuration>Debug.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|Win32">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release.DLL|x64">
|
||||||
|
<Configuration>Release.DLL</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{E89D61AC-55DE-4482-AFD4-DF7242EBC859}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>raylib</RootNamespace>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<IntDir>$(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<OutDir>$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
</Link>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
</Link>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP;BUILD_LIBTYPE_SHARED</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP;BUILD_LIBTYPE_SHARED</PreprocessorDefinitions>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<DebugInformationFormat />
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP;BUILD_LIBTYPE_SHARED</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release.DLL|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);GRAPHICS_API_OPENGL_33;PLATFORM_DESKTOP;BUILD_LIBTYPE_SHARED</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\raylib\src\external\glfw\include</AdditionalIncludeDirectories>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<DebugInformationFormat />
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<AdditionalDependencies>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)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="$(ProjectDir)..\..\..\..\raylib\src\raudio.c" />
|
||||||
|
<ClCompile Include="$(ProjectDir)..\..\..\..\raylib\src\rcore.c" />
|
||||||
|
<ClCompile Include="$(ProjectDir)..\..\..\..\raylib\src\rmodels.c" />
|
||||||
|
<ClCompile Include="$(ProjectDir)..\..\..\..\raylib\src\rglfw.c" />
|
||||||
|
<ClCompile Include="$(ProjectDir)..\..\..\..\raylib\src\rshapes.c" />
|
||||||
|
<ClCompile Include="$(ProjectDir)..\..\..\..\raylib\src\rtext.c" />
|
||||||
|
<ClCompile Include="$(ProjectDir)..\..\..\..\raylib\src\rtextures.c" />
|
||||||
|
<ClCompile Include="$(ProjectDir)..\..\..\..\raylib\src\utils.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\cgltf.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\rcamera.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\config.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\glad.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\jar_mod.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\jar_xm.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\miniaudio.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\stb_image.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\stb_image_resize.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\stb_image_write.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\stb_rect_pack.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\stb_truetype.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\external\stb_vorbis.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\rgestures.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\raylib.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\raymath.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\rlgl.h" />
|
||||||
|
<ClInclude Include="$(ProjectDir)..\..\..\..\raylib\src\utils.h" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ResourceCompile Include="..\..\..\..\raylib\src\raylib.dll.rc" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
3817
src/raygui.h
556
src/ricons.h
@ -1,556 +0,0 @@
|
|||||||
/**********************************************************************************************
|
|
||||||
*
|
|
||||||
* rIcons - Icons pack intended for tools development with raygui
|
|
||||||
*
|
|
||||||
* LICENSE: zlib/libpng
|
|
||||||
*
|
|
||||||
* Copyright (c) 2019-2020 Ramon Santamaria (@raysan5)
|
|
||||||
*
|
|
||||||
**********************************************************************************************/
|
|
||||||
|
|
||||||
#ifndef RICONS_H
|
|
||||||
#define RICONS_H
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
// Defines and Macros
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
#define RICON_MAX_ICONS 256 // Maximum number of icons
|
|
||||||
#define RICON_SIZE 16 // Size of icons (squared)
|
|
||||||
|
|
||||||
#define RICON_MAX_NAME_LENGTH 32 // Maximum length of icon name id
|
|
||||||
|
|
||||||
// Icons data is defined by bit array (every bit represents one pixel)
|
|
||||||
// Those arrays are stored as unsigned int data arrays, so every array
|
|
||||||
// element defines 32 pixels (bits) of information
|
|
||||||
// Number of elemens depend on RICON_SIZE (by default 16x16 pixels)
|
|
||||||
#define RICON_DATA_ELEMENTS (RICON_SIZE*RICON_SIZE/32)
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
// Icons enumeration
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
typedef enum {
|
|
||||||
RICON_NONE = 0,
|
|
||||||
RICON_FOLDER_FILE_OPEN = 1,
|
|
||||||
RICON_FILE_SAVE_CLASSIC = 2,
|
|
||||||
RICON_FOLDER_OPEN = 3,
|
|
||||||
RICON_FOLDER_SAVE = 4,
|
|
||||||
RICON_FILE_OPEN = 5,
|
|
||||||
RICON_FILE_SAVE = 6,
|
|
||||||
RICON_FILE_EXPORT = 7,
|
|
||||||
RICON_FILE_NEW = 8,
|
|
||||||
RICON_FILE_DELETE = 9,
|
|
||||||
RICON_FILETYPE_TEXT = 10,
|
|
||||||
RICON_FILETYPE_AUDIO = 11,
|
|
||||||
RICON_FILETYPE_IMAGE = 12,
|
|
||||||
RICON_FILETYPE_PLAY = 13,
|
|
||||||
RICON_FILETYPE_VIDEO = 14,
|
|
||||||
RICON_FILETYPE_INFO = 15,
|
|
||||||
RICON_FILE_COPY = 16,
|
|
||||||
RICON_FILE_CUT = 17,
|
|
||||||
RICON_FILE_PASTE = 18,
|
|
||||||
RICON_CURSOR_HAND = 19,
|
|
||||||
RICON_CURSOR_POINTER = 20,
|
|
||||||
RICON_CURSOR_CLASSIC = 21,
|
|
||||||
RICON_PENCIL = 22,
|
|
||||||
RICON_PENCIL_BIG = 23,
|
|
||||||
RICON_BRUSH_CLASSIC = 24,
|
|
||||||
RICON_BRUSH_PAINTER = 25,
|
|
||||||
RICON_WATER_DROP = 26,
|
|
||||||
RICON_COLOR_PICKER = 27,
|
|
||||||
RICON_RUBBER = 28,
|
|
||||||
RICON_COLOR_BUCKET = 29,
|
|
||||||
RICON_TEXT_T = 30,
|
|
||||||
RICON_TEXT_A = 31,
|
|
||||||
RICON_SCALE = 32,
|
|
||||||
RICON_RESIZE = 33,
|
|
||||||
RICON_FILTER_POINT = 34,
|
|
||||||
RICON_FILTER_BILINEAR = 35,
|
|
||||||
RICON_CROP = 36,
|
|
||||||
RICON_CROP_ALPHA = 37,
|
|
||||||
RICON_SQUARE_TOGGLE = 38,
|
|
||||||
RICON_SYMMETRY = 39,
|
|
||||||
RICON_SYMMETRY_HORIZONTAL = 40,
|
|
||||||
RICON_SYMMETRY_VERTICAL = 41,
|
|
||||||
RICON_LENS = 42,
|
|
||||||
RICON_LENS_BIG = 43,
|
|
||||||
RICON_EYE_ON = 44,
|
|
||||||
RICON_EYE_OFF = 45,
|
|
||||||
RICON_FILTER_TOP = 46,
|
|
||||||
RICON_FILTER = 47,
|
|
||||||
RICON_TARGET_POINT = 48,
|
|
||||||
RICON_TARGET_SMALL = 49,
|
|
||||||
RICON_TARGET_BIG = 50,
|
|
||||||
RICON_TARGET_MOVE = 51,
|
|
||||||
RICON_CURSOR_MOVE = 52,
|
|
||||||
RICON_CURSOR_SCALE = 53,
|
|
||||||
RICON_CURSOR_SCALE_RIGHT = 54,
|
|
||||||
RICON_CURSOR_SCALE_LEFT = 55,
|
|
||||||
RICON_UNDO = 56,
|
|
||||||
RICON_REDO = 57,
|
|
||||||
RICON_REREDO = 58,
|
|
||||||
RICON_MUTATE = 59,
|
|
||||||
RICON_ROTATE = 60,
|
|
||||||
RICON_REPEAT = 61,
|
|
||||||
RICON_SHUFFLE = 62,
|
|
||||||
RICON_EMPTYBOX = 63,
|
|
||||||
RICON_TARGET = 64,
|
|
||||||
RICON_TARGET_SMALL_FILL = 65,
|
|
||||||
RICON_TARGET_BIG_FILL = 66,
|
|
||||||
RICON_TARGET_MOVE_FILL = 67,
|
|
||||||
RICON_CURSOR_MOVE_FILL = 68,
|
|
||||||
RICON_CURSOR_SCALE_FILL = 69,
|
|
||||||
RICON_CURSOR_SCALE_RIGHT_FILL = 70,
|
|
||||||
RICON_CURSOR_SCALE_LEFT_FILL = 71,
|
|
||||||
RICON_UNDO_FILL = 72,
|
|
||||||
RICON_REDO_FILL = 73,
|
|
||||||
RICON_REREDO_FILL = 74,
|
|
||||||
RICON_MUTATE_FILL = 75,
|
|
||||||
RICON_ROTATE_FILL = 76,
|
|
||||||
RICON_REPEAT_FILL = 77,
|
|
||||||
RICON_SHUFFLE_FILL = 78,
|
|
||||||
RICON_EMPTYBOX_SMALL = 79,
|
|
||||||
RICON_BOX = 80,
|
|
||||||
RICON_BOX_TOP = 81,
|
|
||||||
RICON_BOX_TOP_RIGHT = 82,
|
|
||||||
RICON_BOX_RIGHT = 83,
|
|
||||||
RICON_BOX_BOTTOM_RIGHT = 84,
|
|
||||||
RICON_BOX_BOTTOM = 85,
|
|
||||||
RICON_BOX_BOTTOM_LEFT = 86,
|
|
||||||
RICON_BOX_LEFT = 87,
|
|
||||||
RICON_BOX_TOP_LEFT = 88,
|
|
||||||
RICON_BOX_CENTER = 89,
|
|
||||||
RICON_BOX_CIRCLE_MASK = 90,
|
|
||||||
RICON_POT = 91,
|
|
||||||
RICON_ALPHA_MULTIPLY = 92,
|
|
||||||
RICON_ALPHA_CLEAR = 93,
|
|
||||||
RICON_DITHERING = 94,
|
|
||||||
RICON_MIPMAPS = 95,
|
|
||||||
RICON_BOX_GRID = 96,
|
|
||||||
RICON_GRID = 97,
|
|
||||||
RICON_BOX_CORNERS_SMALL = 98,
|
|
||||||
RICON_BOX_CORNERS_BIG = 99,
|
|
||||||
RICON_FOUR_BOXES = 100,
|
|
||||||
RICON_GRID_FILL = 101,
|
|
||||||
RICON_BOX_MULTISIZE = 102,
|
|
||||||
RICON_ZOOM_SMALL = 103,
|
|
||||||
RICON_ZOOM_MEDIUM = 104,
|
|
||||||
RICON_ZOOM_BIG = 105,
|
|
||||||
RICON_ZOOM_ALL = 106,
|
|
||||||
RICON_ZOOM_CENTER = 107,
|
|
||||||
RICON_BOX_DOTS_SMALL = 108,
|
|
||||||
RICON_BOX_DOTS_BIG = 109,
|
|
||||||
RICON_BOX_CONCENTRIC = 110,
|
|
||||||
RICON_BOX_GRID_BIG = 111,
|
|
||||||
RICON_OK_TICK = 112,
|
|
||||||
RICON_CROSS = 113,
|
|
||||||
RICON_ARROW_LEFT = 114,
|
|
||||||
RICON_ARROW_RIGHT = 115,
|
|
||||||
RICON_ARROW_BOTTOM = 116,
|
|
||||||
RICON_ARROW_TOP = 117,
|
|
||||||
RICON_ARROW_LEFT_FILL = 118,
|
|
||||||
RICON_ARROW_RIGHT_FILL = 119,
|
|
||||||
RICON_ARROW_BOTTOM_FILL = 120,
|
|
||||||
RICON_ARROW_TOP_FILL = 121,
|
|
||||||
RICON_AUDIO = 122,
|
|
||||||
RICON_FX = 123,
|
|
||||||
RICON_WAVE = 124,
|
|
||||||
RICON_WAVE_SINUS = 125,
|
|
||||||
RICON_WAVE_SQUARE = 126,
|
|
||||||
RICON_WAVE_TRIANGULAR = 127,
|
|
||||||
RICON_CROSS_SMALL = 128,
|
|
||||||
RICON_PLAYER_PREVIOUS = 129,
|
|
||||||
RICON_PLAYER_PLAY_BACK = 130,
|
|
||||||
RICON_PLAYER_PLAY = 131,
|
|
||||||
RICON_PLAYER_PAUSE = 132,
|
|
||||||
RICON_PLAYER_STOP = 133,
|
|
||||||
RICON_PLAYER_NEXT = 134,
|
|
||||||
RICON_PLAYER_RECORD = 135,
|
|
||||||
RICON_MAGNET = 136,
|
|
||||||
RICON_LOCK_CLOSE = 137,
|
|
||||||
RICON_LOCK_OPEN = 138,
|
|
||||||
RICON_CLOCK = 139,
|
|
||||||
RICON_TOOLS = 140,
|
|
||||||
RICON_GEAR = 141,
|
|
||||||
RICON_GEAR_BIG = 142,
|
|
||||||
RICON_BIN = 143,
|
|
||||||
RICON_HAND_POINTER = 144,
|
|
||||||
RICON_LASER = 145,
|
|
||||||
RICON_COIN = 146,
|
|
||||||
RICON_EXPLOSION = 147,
|
|
||||||
RICON_1UP = 148,
|
|
||||||
RICON_PLAYER = 149,
|
|
||||||
RICON_PLAYER_JUMP = 150,
|
|
||||||
RICON_KEY = 151,
|
|
||||||
RICON_DEMON = 152,
|
|
||||||
RICON_TEXT_POPUP = 153,
|
|
||||||
RICON_GEAR_EX = 154,
|
|
||||||
RICON_CRACK = 155,
|
|
||||||
RICON_CRACK_POINTS = 156,
|
|
||||||
RICON_STAR = 157,
|
|
||||||
RICON_DOOR = 158,
|
|
||||||
RICON_EXIT = 159,
|
|
||||||
RICON_MODE_2D = 160,
|
|
||||||
RICON_MODE_3D = 161,
|
|
||||||
RICON_CUBE = 162,
|
|
||||||
RICON_CUBE_FACE_TOP = 163,
|
|
||||||
RICON_CUBE_FACE_LEFT = 164,
|
|
||||||
RICON_CUBE_FACE_FRONT = 165,
|
|
||||||
RICON_CUBE_FACE_BOTTOM = 166,
|
|
||||||
RICON_CUBE_FACE_RIGHT = 167,
|
|
||||||
RICON_CUBE_FACE_BACK = 168,
|
|
||||||
RICON_CAMERA = 169,
|
|
||||||
RICON_SPECIAL = 170,
|
|
||||||
RICON_LINK_NET = 171,
|
|
||||||
RICON_LINK_BOXES = 172,
|
|
||||||
RICON_LINK_MULTI = 173,
|
|
||||||
RICON_LINK = 174,
|
|
||||||
RICON_LINK_BROKE = 175,
|
|
||||||
RICON_TEXT_NOTES = 176,
|
|
||||||
RICON_NOTEBOOK = 177,
|
|
||||||
RICON_SUITCASE = 178,
|
|
||||||
RICON_SUITCASE_ZIP = 179,
|
|
||||||
RICON_MAILBOX = 180,
|
|
||||||
RICON_MONITOR = 181,
|
|
||||||
RICON_PRINTER = 182,
|
|
||||||
RICON_PHOTO_CAMERA = 183,
|
|
||||||
RICON_PHOTO_CAMERA_FLASH = 184,
|
|
||||||
RICON_HOUSE = 185,
|
|
||||||
RICON_HEART = 186,
|
|
||||||
RICON_CORNER = 187,
|
|
||||||
RICON_VERTICAL_BARS = 188,
|
|
||||||
RICON_VERTICAL_BARS_FILL = 189,
|
|
||||||
RICON_LIFE_BARS = 190,
|
|
||||||
RICON_INFO = 191,
|
|
||||||
RICON_CROSSLINE = 192,
|
|
||||||
RICON_HELP = 193,
|
|
||||||
RICON_FILETYPE_ALPHA = 194,
|
|
||||||
RICON_FILETYPE_HOME = 195,
|
|
||||||
RICON_LAYERS_VISIBLE = 196,
|
|
||||||
RICON_LAYERS = 197,
|
|
||||||
RICON_WINDOW = 198,
|
|
||||||
RICON_HIDPI = 199,
|
|
||||||
RICON_200 = 200,
|
|
||||||
RICON_201 = 201,
|
|
||||||
RICON_202 = 202,
|
|
||||||
RICON_203 = 203,
|
|
||||||
RICON_204 = 204,
|
|
||||||
RICON_205 = 205,
|
|
||||||
RICON_206 = 206,
|
|
||||||
RICON_207 = 207,
|
|
||||||
RICON_208 = 208,
|
|
||||||
RICON_209 = 209,
|
|
||||||
RICON_210 = 210,
|
|
||||||
RICON_211 = 211,
|
|
||||||
RICON_212 = 212,
|
|
||||||
RICON_213 = 213,
|
|
||||||
RICON_214 = 214,
|
|
||||||
RICON_215 = 215,
|
|
||||||
RICON_216 = 216,
|
|
||||||
RICON_217 = 217,
|
|
||||||
RICON_218 = 218,
|
|
||||||
RICON_219 = 219,
|
|
||||||
RICON_220 = 220,
|
|
||||||
RICON_221 = 221,
|
|
||||||
RICON_222 = 222,
|
|
||||||
RICON_223 = 223,
|
|
||||||
RICON_224 = 224,
|
|
||||||
RICON_225 = 225,
|
|
||||||
RICON_226 = 226,
|
|
||||||
RICON_227 = 227,
|
|
||||||
RICON_228 = 228,
|
|
||||||
RICON_229 = 229,
|
|
||||||
RICON_230 = 230,
|
|
||||||
RICON_231 = 231,
|
|
||||||
RICON_232 = 232,
|
|
||||||
RICON_233 = 233,
|
|
||||||
RICON_234 = 234,
|
|
||||||
RICON_235 = 235,
|
|
||||||
RICON_236 = 236,
|
|
||||||
RICON_237 = 237,
|
|
||||||
RICON_238 = 238,
|
|
||||||
RICON_239 = 239,
|
|
||||||
RICON_240 = 240,
|
|
||||||
RICON_241 = 241,
|
|
||||||
RICON_242 = 242,
|
|
||||||
RICON_243 = 243,
|
|
||||||
RICON_244 = 244,
|
|
||||||
RICON_245 = 245,
|
|
||||||
RICON_246 = 246,
|
|
||||||
RICON_247 = 247,
|
|
||||||
RICON_248 = 248,
|
|
||||||
RICON_249 = 249,
|
|
||||||
RICON_250 = 250,
|
|
||||||
RICON_251 = 251,
|
|
||||||
RICON_252 = 252,
|
|
||||||
RICON_253 = 253,
|
|
||||||
RICON_254 = 254,
|
|
||||||
RICON_255 = 255,
|
|
||||||
} guiIconName;
|
|
||||||
|
|
||||||
#endif // RICONS_H
|
|
||||||
|
|
||||||
#if defined(RICONS_IMPLEMENTATION)
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
// Icons data (allocated on memory data section by default)
|
|
||||||
// NOTE: A new icon set could be loaded over this array using GuiLoadIcons(),
|
|
||||||
// just note that loaded icons set must be same RICON_SIZE
|
|
||||||
//----------------------------------------------------------------------------------
|
|
||||||
static unsigned int guiIcons[RICON_MAX_ICONS*RICON_DATA_ELEMENTS] = {
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_NONE
|
|
||||||
0x3ff80000, 0x2f082008, 0x2042207e, 0x40027fc2, 0x40024002, 0x40024002, 0x40024002, 0x00007ffe, // RICON_FOLDER_FILE_OPEN
|
|
||||||
0x3ffe0000, 0x44226422, 0x400247e2, 0x5ffa4002, 0x57ea500a, 0x500a500a, 0x40025ffa, 0x00007ffe, // RICON_FILE_SAVE_CLASSIC
|
|
||||||
0x00000000, 0x0042007e, 0x40027fc2, 0x40024002, 0x41024002, 0x44424282, 0x793e4102, 0x00000100, // RICON_FOLDER_OPEN
|
|
||||||
0x00000000, 0x0042007e, 0x40027fc2, 0x40024002, 0x41024102, 0x44424102, 0x793e4282, 0x00000000, // RICON_FOLDER_SAVE
|
|
||||||
0x3ff00000, 0x201c2010, 0x20042004, 0x21042004, 0x24442284, 0x21042104, 0x20042104, 0x00003ffc, // RICON_FILE_OPEN
|
|
||||||
0x3ff00000, 0x201c2010, 0x20042004, 0x21042004, 0x21042104, 0x22842444, 0x20042104, 0x00003ffc, // RICON_FILE_SAVE
|
|
||||||
0x3ff00000, 0x201c2010, 0x00042004, 0x20041004, 0x20844784, 0x00841384, 0x20042784, 0x00003ffc, // RICON_FILE_EXPORT
|
|
||||||
0x3ff00000, 0x201c2010, 0x20042004, 0x20042004, 0x22042204, 0x22042f84, 0x20042204, 0x00003ffc, // RICON_FILE_NEW
|
|
||||||
0x3ff00000, 0x201c2010, 0x20042004, 0x20042004, 0x25042884, 0x25042204, 0x20042884, 0x00003ffc, // RICON_FILE_DELETE
|
|
||||||
0x3ff00000, 0x201c2010, 0x20042004, 0x20042ff4, 0x20042ff4, 0x20042ff4, 0x20042004, 0x00003ffc, // RICON_FILETYPE_TEXT
|
|
||||||
0x3ff00000, 0x201c2010, 0x27042004, 0x244424c4, 0x26442444, 0x20642664, 0x20042004, 0x00003ffc, // RICON_FILETYPE_AUDIO
|
|
||||||
0x3ff00000, 0x201c2010, 0x26042604, 0x20042004, 0x35442884, 0x2414222c, 0x20042004, 0x00003ffc, // RICON_FILETYPE_IMAGE
|
|
||||||
0x3ff00000, 0x201c2010, 0x20c42004, 0x22442144, 0x22442444, 0x20c42144, 0x20042004, 0x00003ffc, // RICON_FILETYPE_PLAY
|
|
||||||
0x3ff00000, 0x3ffc2ff0, 0x3f3c2ff4, 0x3dbc2eb4, 0x3dbc2bb4, 0x3f3c2eb4, 0x3ffc2ff4, 0x00002ff4, // RICON_FILETYPE_VIDEO
|
|
||||||
0x3ff00000, 0x201c2010, 0x21842184, 0x21842004, 0x21842184, 0x21842184, 0x20042184, 0x00003ffc, // RICON_FILETYPE_INFO
|
|
||||||
0x0ff00000, 0x381c0810, 0x28042804, 0x28042804, 0x28042804, 0x28042804, 0x20102ffc, 0x00003ff0, // RICON_FILE_COPY
|
|
||||||
0x00000000, 0x701c0000, 0x079c1e14, 0x55a000f0, 0x079c00f0, 0x701c1e14, 0x00000000, 0x00000000, // RICON_FILE_CUT
|
|
||||||
0x01c00000, 0x13e41bec, 0x3f841004, 0x204420c4, 0x20442044, 0x20442044, 0x207c2044, 0x00003fc0, // RICON_FILE_PASTE
|
|
||||||
0x00000000, 0x3aa00fe0, 0x2abc2aa0, 0x2aa42aa4, 0x20042aa4, 0x20042004, 0x3ffc2004, 0x00000000, // RICON_CURSOR_HAND
|
|
||||||
0x00000000, 0x003c000c, 0x030800c8, 0x30100c10, 0x10202020, 0x04400840, 0x01800280, 0x00000000, // RICON_CURSOR_POINTER
|
|
||||||
0x00000000, 0x00180000, 0x01f00078, 0x03e007f0, 0x07c003e0, 0x04000e40, 0x00000000, 0x00000000, // RICON_CURSOR_CLASSIC
|
|
||||||
0x00000000, 0x04000000, 0x11000a00, 0x04400a80, 0x01100220, 0x00580088, 0x00000038, 0x00000000, // RICON_PENCIL
|
|
||||||
0x04000000, 0x15000a00, 0x50402880, 0x14102820, 0x05040a08, 0x015c028c, 0x007c00bc, 0x00000000, // RICON_PENCIL_BIG
|
|
||||||
0x01c00000, 0x01400140, 0x01400140, 0x0ff80140, 0x0ff80808, 0x0aa80808, 0x0aa80aa8, 0x00000ff8, // RICON_BRUSH_CLASSIC
|
|
||||||
0x1ffc0000, 0x5ffc7ffe, 0x40004000, 0x00807f80, 0x01c001c0, 0x01c001c0, 0x01c001c0, 0x00000080, // RICON_BRUSH_PAINTER
|
|
||||||
0x00000000, 0x00800000, 0x01c00080, 0x03e001c0, 0x07f003e0, 0x036006f0, 0x000001c0, 0x00000000, // RICON_WATER_DROP
|
|
||||||
0x00000000, 0x3e003800, 0x1f803f80, 0x0c201e40, 0x02080c10, 0x00840104, 0x00380044, 0x00000000, // RICON_COLOR_PICKER
|
|
||||||
0x00000000, 0x07800300, 0x1fe00fc0, 0x3f883fd0, 0x0e021f04, 0x02040402, 0x00f00108, 0x00000000, // RICON_RUBBER
|
|
||||||
0x00c00000, 0x02800140, 0x08200440, 0x20081010, 0x2ffe3004, 0x03f807fc, 0x00e001f0, 0x00000040, // RICON_COLOR_BUCKET
|
|
||||||
0x00000000, 0x21843ffc, 0x01800180, 0x01800180, 0x01800180, 0x01800180, 0x03c00180, 0x00000000, // RICON_TEXT_T
|
|
||||||
0x00800000, 0x01400180, 0x06200340, 0x0c100620, 0x1ff80c10, 0x380c1808, 0x70067004, 0x0000f80f, // RICON_TEXT_A
|
|
||||||
0x78000000, 0x50004000, 0x00004800, 0x03c003c0, 0x03c003c0, 0x00100000, 0x0002000a, 0x0000000e, // RICON_SCALE
|
|
||||||
0x75560000, 0x5e004002, 0x54001002, 0x41001202, 0x408200fe, 0x40820082, 0x40820082, 0x00006afe, // RICON_RESIZE
|
|
||||||
0x00000000, 0x3f003f00, 0x3f003f00, 0x3f003f00, 0x00400080, 0x001c0020, 0x001c001c, 0x00000000, // RICON_FILTER_POINT
|
|
||||||
0x6d800000, 0x00004080, 0x40804080, 0x40800000, 0x00406d80, 0x001c0020, 0x001c001c, 0x00000000, // RICON_FILTER_BILINEAR
|
|
||||||
0x40080000, 0x1ffe2008, 0x14081008, 0x11081208, 0x10481088, 0x10081028, 0x10047ff8, 0x00001002, // RICON_CROP
|
|
||||||
0x00100000, 0x3ffc0010, 0x2ab03550, 0x22b02550, 0x20b02150, 0x20302050, 0x2000fff0, 0x00002000, // RICON_CROP_ALPHA
|
|
||||||
0x40000000, 0x1ff82000, 0x04082808, 0x01082208, 0x00482088, 0x00182028, 0x35542008, 0x00000002, // RICON_SQUARE_TOGGLE
|
|
||||||
0x00000000, 0x02800280, 0x06c006c0, 0x0ea00ee0, 0x1e901eb0, 0x3e883e98, 0x7efc7e8c, 0x00000000, // RICON_SIMMETRY
|
|
||||||
0x01000000, 0x05600100, 0x1d480d50, 0x7d423d44, 0x3d447d42, 0x0d501d48, 0x01000560, 0x00000100, // RICON_SIMMETRY_HORIZONTAL
|
|
||||||
0x01800000, 0x04200240, 0x10080810, 0x00001ff8, 0x00007ffe, 0x0ff01ff8, 0x03c007e0, 0x00000180, // RICON_SIMMETRY_VERTICAL
|
|
||||||
0x00000000, 0x010800f0, 0x02040204, 0x02040204, 0x07f00308, 0x1c000e00, 0x30003800, 0x00000000, // RICON_LENS
|
|
||||||
0x00000000, 0x061803f0, 0x08240c0c, 0x08040814, 0x0c0c0804, 0x23f01618, 0x18002400, 0x00000000, // RICON_LENS_BIG
|
|
||||||
0x00000000, 0x00000000, 0x1c7007c0, 0x638e3398, 0x1c703398, 0x000007c0, 0x00000000, 0x00000000, // RICON_EYE_ON
|
|
||||||
0x00000000, 0x10002000, 0x04700fc0, 0x610e3218, 0x1c703098, 0x001007a0, 0x00000008, 0x00000000, // RICON_EYE_OFF
|
|
||||||
0x00000000, 0x00007ffc, 0x40047ffc, 0x10102008, 0x04400820, 0x02800280, 0x02800280, 0x00000100, // RICON_FILTER_TOP
|
|
||||||
0x00000000, 0x40027ffe, 0x10082004, 0x04200810, 0x02400240, 0x02400240, 0x01400240, 0x000000c0, // RICON_FILTER
|
|
||||||
0x00800000, 0x00800080, 0x00000080, 0x3c9e0000, 0x00000000, 0x00800080, 0x00800080, 0x00000000, // RICON_TARGET_POINT
|
|
||||||
0x00800000, 0x00800080, 0x00800080, 0x3f7e01c0, 0x008001c0, 0x00800080, 0x00800080, 0x00000000, // RICON_TARGET_SMALL
|
|
||||||
0x00800000, 0x00800080, 0x03e00080, 0x3e3e0220, 0x03e00220, 0x00800080, 0x00800080, 0x00000000, // RICON_TARGET_BIG
|
|
||||||
0x01000000, 0x04400280, 0x01000100, 0x43842008, 0x43849ab2, 0x01002008, 0x04400100, 0x01000280, // RICON_TARGET_MOVE
|
|
||||||
0x01000000, 0x04400280, 0x01000100, 0x41042108, 0x41049ff2, 0x01002108, 0x04400100, 0x01000280, // RICON_CURSOR_MOVE
|
|
||||||
0x781e0000, 0x500a4002, 0x04204812, 0x00000240, 0x02400000, 0x48120420, 0x4002500a, 0x0000781e, // RICON_CURSOR_SCALE
|
|
||||||
0x00000000, 0x20003c00, 0x24002800, 0x01000200, 0x00400080, 0x00140024, 0x003c0004, 0x00000000, // RICON_CURSOR_SCALE_RIGHT
|
|
||||||
0x00000000, 0x0004003c, 0x00240014, 0x00800040, 0x02000100, 0x28002400, 0x3c002000, 0x00000000, // RICON_CURSOR_SCALE_LEFT
|
|
||||||
0x00000000, 0x00100020, 0x10101fc8, 0x10001020, 0x10001000, 0x10001000, 0x00001fc0, 0x00000000, // RICON_UNDO
|
|
||||||
0x00000000, 0x08000400, 0x080813f8, 0x00080408, 0x00080008, 0x00080008, 0x000003f8, 0x00000000, // RICON_REDO
|
|
||||||
0x00000000, 0x3ffc0000, 0x20042004, 0x20002000, 0x20402000, 0x3f902020, 0x00400020, 0x00000000, // RICON_REREDO
|
|
||||||
0x00000000, 0x3ffc0000, 0x20042004, 0x27fc2004, 0x20202000, 0x3fc82010, 0x00200010, 0x00000000, // RICON_MUTATE
|
|
||||||
0x00000000, 0x0ff00000, 0x10081818, 0x11801008, 0x10001180, 0x18101020, 0x00100fc8, 0x00000020, // RICON_ROTATE
|
|
||||||
0x00000000, 0x04000200, 0x240429fc, 0x20042204, 0x20442004, 0x3f942024, 0x00400020, 0x00000000, // RICON_REPEAT
|
|
||||||
0x00000000, 0x20001000, 0x22104c0e, 0x00801120, 0x11200040, 0x4c0e2210, 0x10002000, 0x00000000, // RICON_SHUFFLE
|
|
||||||
0x7ffe0000, 0x50024002, 0x44024802, 0x41024202, 0x40424082, 0x40124022, 0x4002400a, 0x00007ffe, // RICON_EMPTYBOX
|
|
||||||
0x00800000, 0x03e00080, 0x08080490, 0x3c9e0808, 0x08080808, 0x03e00490, 0x00800080, 0x00000000, // RICON_TARGET
|
|
||||||
0x00800000, 0x00800080, 0x00800080, 0x3ffe01c0, 0x008001c0, 0x00800080, 0x00800080, 0x00000000, // RICON_TARGET_SMALL_FILL
|
|
||||||
0x00800000, 0x00800080, 0x03e00080, 0x3ffe03e0, 0x03e003e0, 0x00800080, 0x00800080, 0x00000000, // RICON_TARGET_BIG_FILL
|
|
||||||
0x01000000, 0x07c00380, 0x01000100, 0x638c2008, 0x638cfbbe, 0x01002008, 0x07c00100, 0x01000380, // RICON_TARGET_MOVE_FILL
|
|
||||||
0x01000000, 0x07c00380, 0x01000100, 0x610c2108, 0x610cfffe, 0x01002108, 0x07c00100, 0x01000380, // RICON_CURSOR_MOVE_FILL
|
|
||||||
0x781e0000, 0x6006700e, 0x04204812, 0x00000240, 0x02400000, 0x48120420, 0x700e6006, 0x0000781e, // RICON_CURSOR_SCALE_FILL
|
|
||||||
0x00000000, 0x38003c00, 0x24003000, 0x01000200, 0x00400080, 0x000c0024, 0x003c001c, 0x00000000, // RICON_CURSOR_SCALE_RIGHT
|
|
||||||
0x00000000, 0x001c003c, 0x0024000c, 0x00800040, 0x02000100, 0x30002400, 0x3c003800, 0x00000000, // RICON_CURSOR_SCALE_LEFT
|
|
||||||
0x00000000, 0x00300020, 0x10301ff8, 0x10001020, 0x10001000, 0x10001000, 0x00001fc0, 0x00000000, // RICON_UNDO_FILL
|
|
||||||
0x00000000, 0x0c000400, 0x0c081ff8, 0x00080408, 0x00080008, 0x00080008, 0x000003f8, 0x00000000, // RICON_REDO_FILL
|
|
||||||
0x00000000, 0x3ffc0000, 0x20042004, 0x20002000, 0x20402000, 0x3ff02060, 0x00400060, 0x00000000, // RICON_REREDO_FILL
|
|
||||||
0x00000000, 0x3ffc0000, 0x20042004, 0x27fc2004, 0x20202000, 0x3ff82030, 0x00200030, 0x00000000, // RICON_MUTATE_FILL
|
|
||||||
0x00000000, 0x0ff00000, 0x10081818, 0x11801008, 0x10001180, 0x18301020, 0x00300ff8, 0x00000020, // RICON_ROTATE_FILL
|
|
||||||
0x00000000, 0x06000200, 0x26042ffc, 0x20042204, 0x20442004, 0x3ff42064, 0x00400060, 0x00000000, // RICON_REPEAT_FILL
|
|
||||||
0x00000000, 0x30001000, 0x32107c0e, 0x00801120, 0x11200040, 0x7c0e3210, 0x10003000, 0x00000000, // RICON_SHUFFLE_FILL
|
|
||||||
0x00000000, 0x30043ffc, 0x24042804, 0x21042204, 0x20442084, 0x20142024, 0x3ffc200c, 0x00000000, // RICON_EMPTYBOX_SMALL
|
|
||||||
0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // RICON_BOX
|
|
||||||
0x00000000, 0x23c43ffc, 0x23c423c4, 0x200423c4, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // RICON_BOX_TOP
|
|
||||||
0x00000000, 0x3e043ffc, 0x3e043e04, 0x20043e04, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // RICON_BOX_TOP_RIGHT
|
|
||||||
0x00000000, 0x20043ffc, 0x20042004, 0x3e043e04, 0x3e043e04, 0x20042004, 0x3ffc2004, 0x00000000, // RICON_BOX_RIGHT
|
|
||||||
0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x3e042004, 0x3e043e04, 0x3ffc3e04, 0x00000000, // RICON_BOX_BOTTOM_RIGHT
|
|
||||||
0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x23c42004, 0x23c423c4, 0x3ffc23c4, 0x00000000, // RICON_BOX_BOTTOM
|
|
||||||
0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x207c2004, 0x207c207c, 0x3ffc207c, 0x00000000, // RICON_BOX_BOTTOM_LEFT
|
|
||||||
0x00000000, 0x20043ffc, 0x20042004, 0x207c207c, 0x207c207c, 0x20042004, 0x3ffc2004, 0x00000000, // RICON_BOX_LEFT
|
|
||||||
0x00000000, 0x207c3ffc, 0x207c207c, 0x2004207c, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // RICON_BOX_TOP_LEFT
|
|
||||||
0x00000000, 0x20043ffc, 0x20042004, 0x23c423c4, 0x23c423c4, 0x20042004, 0x3ffc2004, 0x00000000, // RICON_BOX_CIRCLE_MASK
|
|
||||||
0x7ffe0000, 0x40024002, 0x47e24182, 0x4ff247e2, 0x47e24ff2, 0x418247e2, 0x40024002, 0x00007ffe, // RICON_BOX_CENTER
|
|
||||||
0x7fff0000, 0x40014001, 0x40014001, 0x49555ddd, 0x4945495d, 0x400149c5, 0x40014001, 0x00007fff, // RICON_POT
|
|
||||||
0x7ffe0000, 0x53327332, 0x44ce4cce, 0x41324332, 0x404e40ce, 0x48125432, 0x4006540e, 0x00007ffe, // RICON_ALPHA_MULTIPLY
|
|
||||||
0x7ffe0000, 0x53327332, 0x44ce4cce, 0x41324332, 0x5c4e40ce, 0x44124432, 0x40065c0e, 0x00007ffe, // RICON_ALPHA_CLEAR
|
|
||||||
0x7ffe0000, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x00007ffe, // RICON_DITHERING
|
|
||||||
0x07fe0000, 0x1ffa0002, 0x7fea000a, 0x402a402a, 0x5b2a512a, 0x5128552a, 0x40205128, 0x00007fe0, // RICON_MIPMAPS
|
|
||||||
0x00000000, 0x1ff80000, 0x12481248, 0x12481ff8, 0x1ff81248, 0x12481248, 0x00001ff8, 0x00000000, // RICON_BOX_GRID
|
|
||||||
0x12480000, 0x7ffe1248, 0x12481248, 0x12487ffe, 0x7ffe1248, 0x12481248, 0x12487ffe, 0x00001248, // RICON_GRID
|
|
||||||
0x00000000, 0x1c380000, 0x1c3817e8, 0x08100810, 0x08100810, 0x17e81c38, 0x00001c38, 0x00000000, // RICON_BOX_CORNERS_SMALL
|
|
||||||
0x700e0000, 0x700e5ffa, 0x20042004, 0x20042004, 0x20042004, 0x20042004, 0x5ffa700e, 0x0000700e, // RICON_BOX_CORNERS_BIG
|
|
||||||
0x3f7e0000, 0x21422142, 0x21422142, 0x00003f7e, 0x21423f7e, 0x21422142, 0x3f7e2142, 0x00000000, // RICON_FOUR_BOXES
|
|
||||||
0x00000000, 0x3bb80000, 0x3bb83bb8, 0x3bb80000, 0x3bb83bb8, 0x3bb80000, 0x3bb83bb8, 0x00000000, // RICON_GRID_FILL
|
|
||||||
0x7ffe0000, 0x7ffe7ffe, 0x77fe7000, 0x77fe77fe, 0x777e7700, 0x777e777e, 0x777e777e, 0x0000777e, // RICON_BOX_MULTISIZE
|
|
||||||
0x781e0000, 0x40024002, 0x00004002, 0x01800000, 0x00000180, 0x40020000, 0x40024002, 0x0000781e, // RICON_ZOOM_SMALL
|
|
||||||
0x781e0000, 0x40024002, 0x00004002, 0x03c003c0, 0x03c003c0, 0x40020000, 0x40024002, 0x0000781e, // RICON_ZOOM_MEDIUM
|
|
||||||
0x781e0000, 0x40024002, 0x07e04002, 0x07e007e0, 0x07e007e0, 0x400207e0, 0x40024002, 0x0000781e, // RICON_ZOOM_BIG
|
|
||||||
0x781e0000, 0x5ffa4002, 0x1ff85ffa, 0x1ff81ff8, 0x1ff81ff8, 0x5ffa1ff8, 0x40025ffa, 0x0000781e, // RICON_ZOOM_ALL
|
|
||||||
0x00000000, 0x2004381c, 0x00002004, 0x00000000, 0x00000000, 0x20040000, 0x381c2004, 0x00000000, // RICON_ZOOM_CENTER
|
|
||||||
0x00000000, 0x1db80000, 0x10081008, 0x10080000, 0x00001008, 0x10081008, 0x00001db8, 0x00000000, // RICON_BOX_DOTS_SMALL
|
|
||||||
0x35560000, 0x00002002, 0x00002002, 0x00002002, 0x00002002, 0x00002002, 0x35562002, 0x00000000, // RICON_BOX_DOTS_BIG
|
|
||||||
0x7ffe0000, 0x40024002, 0x48124ff2, 0x49924812, 0x48124992, 0x4ff24812, 0x40024002, 0x00007ffe, // RICON_BOX_CONCENTRIC
|
|
||||||
0x00000000, 0x10841ffc, 0x10841084, 0x1ffc1084, 0x10841084, 0x10841084, 0x00001ffc, 0x00000000, // RICON_BOX_GRID_BIG
|
|
||||||
0x00000000, 0x00000000, 0x10000000, 0x04000800, 0x01040200, 0x00500088, 0x00000020, 0x00000000, // RICON_OK_TICK
|
|
||||||
0x00000000, 0x10080000, 0x04200810, 0x01800240, 0x02400180, 0x08100420, 0x00001008, 0x00000000, // RICON_CROSS
|
|
||||||
0x00000000, 0x02000000, 0x00800100, 0x00200040, 0x00200010, 0x00800040, 0x02000100, 0x00000000, // RICON_ARROW_LEFT
|
|
||||||
0x00000000, 0x00400000, 0x01000080, 0x04000200, 0x04000800, 0x01000200, 0x00400080, 0x00000000, // RICON_ARROW_RIGHT
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x08081004, 0x02200410, 0x00800140, 0x00000000, 0x00000000, // RICON_ARROW_BOTTOM
|
|
||||||
0x00000000, 0x00000000, 0x01400080, 0x04100220, 0x10040808, 0x00000000, 0x00000000, 0x00000000, // RICON_ARROW_TOP
|
|
||||||
0x00000000, 0x02000000, 0x03800300, 0x03e003c0, 0x03e003f0, 0x038003c0, 0x02000300, 0x00000000, // RICON_ARROW_LEFT_FILL
|
|
||||||
0x00000000, 0x00400000, 0x01c000c0, 0x07c003c0, 0x07c00fc0, 0x01c003c0, 0x004000c0, 0x00000000, // RICON_ARROW_RIGHT_FILL
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x0ff81ffc, 0x03e007f0, 0x008001c0, 0x00000000, 0x00000000, // RICON_ARROW_BOTTOM_FILL
|
|
||||||
0x00000000, 0x00000000, 0x01c00080, 0x07f003e0, 0x1ffc0ff8, 0x00000000, 0x00000000, 0x00000000, // RICON_ARROW_TOP_FILL
|
|
||||||
0x00000000, 0x18a008c0, 0x32881290, 0x24822686, 0x26862482, 0x12903288, 0x08c018a0, 0x00000000, // RICON_AUDIO
|
|
||||||
0x00000000, 0x04800780, 0x004000c0, 0x662000f0, 0x08103c30, 0x130a0e18, 0x0000318e, 0x00000000, // RICON_FX
|
|
||||||
0x00000000, 0x00800000, 0x08880888, 0x2aaa0a8a, 0x0a8a2aaa, 0x08880888, 0x00000080, 0x00000000, // RICON_WAVE
|
|
||||||
0x00000000, 0x00600000, 0x01080090, 0x02040108, 0x42044204, 0x24022402, 0x00001800, 0x00000000, // RICON_WAVE_SINUS
|
|
||||||
0x00000000, 0x07f80000, 0x04080408, 0x04080408, 0x04080408, 0x7c0e0408, 0x00000000, 0x00000000, // RICON_WAVE_SQUARE
|
|
||||||
0x00000000, 0x00000000, 0x00a00040, 0x22084110, 0x08021404, 0x00000000, 0x00000000, 0x00000000, // RICON_WAVE_TRIANGULAR
|
|
||||||
0x00000000, 0x00000000, 0x04200000, 0x01800240, 0x02400180, 0x00000420, 0x00000000, 0x00000000, // RICON_CROSS_SMALL
|
|
||||||
0x00000000, 0x18380000, 0x12281428, 0x10a81128, 0x112810a8, 0x14281228, 0x00001838, 0x00000000, // RICON_PLAYER_PREVIOUS
|
|
||||||
0x00000000, 0x18000000, 0x11801600, 0x10181060, 0x10601018, 0x16001180, 0x00001800, 0x00000000, // RICON_PLAYER_PLAY_BACK
|
|
||||||
0x00000000, 0x00180000, 0x01880068, 0x18080608, 0x06081808, 0x00680188, 0x00000018, 0x00000000, // RICON_PLAYER_PLAY
|
|
||||||
0x00000000, 0x1e780000, 0x12481248, 0x12481248, 0x12481248, 0x12481248, 0x00001e78, 0x00000000, // RICON_PLAYER_PAUSE
|
|
||||||
0x00000000, 0x1ff80000, 0x10081008, 0x10081008, 0x10081008, 0x10081008, 0x00001ff8, 0x00000000, // RICON_PLAYER_STOP
|
|
||||||
0x00000000, 0x1c180000, 0x14481428, 0x15081488, 0x14881508, 0x14281448, 0x00001c18, 0x00000000, // RICON_PLAYER_NEXT
|
|
||||||
0x00000000, 0x03c00000, 0x08100420, 0x10081008, 0x10081008, 0x04200810, 0x000003c0, 0x00000000, // RICON_PLAYER_RECORD
|
|
||||||
0x00000000, 0x0c3007e0, 0x13c81818, 0x14281668, 0x14281428, 0x1c381c38, 0x08102244, 0x00000000, // RICON_MAGNET
|
|
||||||
0x07c00000, 0x08200820, 0x3ff80820, 0x23882008, 0x21082388, 0x20082108, 0x1ff02008, 0x00000000, // RICON_LOCK_CLOSE
|
|
||||||
0x07c00000, 0x08000800, 0x3ff80800, 0x23882008, 0x21082388, 0x20082108, 0x1ff02008, 0x00000000, // RICON_LOCK_OPEN
|
|
||||||
0x01c00000, 0x0c180770, 0x3086188c, 0x60832082, 0x60034781, 0x30062002, 0x0c18180c, 0x01c00770, // RICON_CLOCK
|
|
||||||
0x0a200000, 0x1b201b20, 0x04200e20, 0x04200420, 0x04700420, 0x0e700e70, 0x0e700e70, 0x04200e70, // RICON_TOOLS
|
|
||||||
0x01800000, 0x3bdc318c, 0x0ff01ff8, 0x7c3e1e78, 0x1e787c3e, 0x1ff80ff0, 0x318c3bdc, 0x00000180, // RICON_GEAR
|
|
||||||
0x01800000, 0x3ffc318c, 0x1c381ff8, 0x781e1818, 0x1818781e, 0x1ff81c38, 0x318c3ffc, 0x00000180, // RICON_GEAR_BIG
|
|
||||||
0x00000000, 0x08080ff8, 0x08081ffc, 0x0aa80aa8, 0x0aa80aa8, 0x0aa80aa8, 0x08080aa8, 0x00000ff8, // RICON_BIN
|
|
||||||
0x00000000, 0x00000000, 0x20043ffc, 0x08043f84, 0x04040f84, 0x04040784, 0x000007fc, 0x00000000, // RICON_HAND_POINTER
|
|
||||||
0x00000000, 0x24400400, 0x00001480, 0x6efe0e00, 0x00000e00, 0x24401480, 0x00000400, 0x00000000, // RICON_LASER
|
|
||||||
0x00000000, 0x03c00000, 0x08300460, 0x11181118, 0x11181118, 0x04600830, 0x000003c0, 0x00000000, // RICON_COIN
|
|
||||||
0x00000000, 0x10880080, 0x06c00810, 0x366c07e0, 0x07e00240, 0x00001768, 0x04200240, 0x00000000, // RICON_EXPLOSION
|
|
||||||
0x00000000, 0x3d280000, 0x2528252c, 0x3d282528, 0x05280528, 0x05e80528, 0x00000000, 0x00000000, // RICON_1UP
|
|
||||||
0x01800000, 0x03c003c0, 0x018003c0, 0x0ff007e0, 0x0bd00bd0, 0x0a500bd0, 0x02400240, 0x02400240, // RICON_PLAYER
|
|
||||||
0x01800000, 0x03c003c0, 0x118013c0, 0x03c81ff8, 0x07c003c8, 0x04400440, 0x0c080478, 0x00000000, // RICON_PLAYER_JUMP
|
|
||||||
0x3ff80000, 0x30183ff8, 0x30183018, 0x3ff83ff8, 0x03000300, 0x03c003c0, 0x03e00300, 0x000003e0, // RICON_KEY
|
|
||||||
0x3ff80000, 0x3ff83ff8, 0x33983ff8, 0x3ff83398, 0x3ff83ff8, 0x00000540, 0x0fe00aa0, 0x00000fe0, // RICON_DEMON
|
|
||||||
0x00000000, 0x0ff00000, 0x20041008, 0x25442004, 0x10082004, 0x06000bf0, 0x00000300, 0x00000000, // RICON_TEXT_POPUP
|
|
||||||
0x00000000, 0x11440000, 0x07f00be8, 0x1c1c0e38, 0x1c1c0c18, 0x07f00e38, 0x11440be8, 0x00000000, // RICON_GEAR_EX
|
|
||||||
0x00000000, 0x20080000, 0x0c601010, 0x07c00fe0, 0x07c007c0, 0x0c600fe0, 0x20081010, 0x00000000, // RICON_CRACK
|
|
||||||
0x00000000, 0x20080000, 0x0c601010, 0x04400fe0, 0x04405554, 0x0c600fe0, 0x20081010, 0x00000000, // RICON_CRACK_POINTS
|
|
||||||
0x00000000, 0x00800080, 0x01c001c0, 0x1ffc3ffe, 0x03e007f0, 0x07f003e0, 0x0c180770, 0x00000808, // RICON_STAR
|
|
||||||
0x0ff00000, 0x08180810, 0x08100818, 0x0a100810, 0x08180810, 0x08100818, 0x08100810, 0x00001ff8, // RICON_DOOR
|
|
||||||
0x0ff00000, 0x08100810, 0x08100810, 0x10100010, 0x4f902010, 0x10102010, 0x08100010, 0x00000ff0, // RICON_EXIT
|
|
||||||
0x00040000, 0x001f000e, 0x0ef40004, 0x12f41284, 0x0ef41214, 0x10040004, 0x7ffc3004, 0x10003000, // RICON_MODE_2D
|
|
||||||
0x78040000, 0x501f600e, 0x0ef44004, 0x12f41284, 0x0ef41284, 0x10140004, 0x7ffc300c, 0x10003000, // RICON_MODE_3D
|
|
||||||
0x7fe00000, 0x50286030, 0x47fe4804, 0x44224402, 0x44224422, 0x241275e2, 0x0c06140a, 0x000007fe, // RICON_CUBE
|
|
||||||
0x7fe00000, 0x5ff87ff0, 0x47fe4ffc, 0x44224402, 0x44224422, 0x241275e2, 0x0c06140a, 0x000007fe, // RICON_CUBE_FACE_TOP
|
|
||||||
0x7fe00000, 0x50386030, 0x47fe483c, 0x443e443e, 0x443e443e, 0x241e75fe, 0x0c06140e, 0x000007fe, // RICON_CUBE_FACE_LEFT
|
|
||||||
0x7fe00000, 0x50286030, 0x47fe4804, 0x47fe47fe, 0x47fe47fe, 0x27fe77fe, 0x0ffe17fe, 0x000007fe, // RICON_CUBE_FACE_FRONT
|
|
||||||
0x7fe00000, 0x50286030, 0x47fe4804, 0x44224402, 0x44224422, 0x3ff27fe2, 0x0ffe1ffa, 0x000007fe, // RICON_CUBE_FACE_BOTTOM
|
|
||||||
0x7fe00000, 0x70286030, 0x7ffe7804, 0x7c227c02, 0x7c227c22, 0x3c127de2, 0x0c061c0a, 0x000007fe, // RICON_CUBE_FACE_RIGHT
|
|
||||||
0x7fe00000, 0x7fe87ff0, 0x7ffe7fe4, 0x7fe27fe2, 0x7fe27fe2, 0x24127fe2, 0x0c06140a, 0x000007fe, // RICON_CUBE_FACE_BACK
|
|
||||||
0x00000000, 0x2a0233fe, 0x22022602, 0x22022202, 0x2a022602, 0x00a033fe, 0x02080110, 0x00000000, // RICON_CAMERA
|
|
||||||
0x00000000, 0x200c3ffc, 0x000c000c, 0x3ffc000c, 0x30003000, 0x30003000, 0x3ffc3004, 0x00000000, // RICON_SPECIAL
|
|
||||||
0x00000000, 0x0022003e, 0x012201e2, 0x0100013e, 0x01000100, 0x79000100, 0x4f004900, 0x00007800, // RICON_LINK_NET
|
|
||||||
0x00000000, 0x44007c00, 0x45004600, 0x00627cbe, 0x00620022, 0x45007cbe, 0x44004600, 0x00007c00, // RICON_LINK_BOXES
|
|
||||||
0x00000000, 0x0044007c, 0x0010007c, 0x3f100010, 0x3f1021f0, 0x3f100010, 0x3f0021f0, 0x00000000, // RICON_LINK_MULTI
|
|
||||||
0x00000000, 0x0044007c, 0x00440044, 0x0010007c, 0x00100010, 0x44107c10, 0x440047f0, 0x00007c00, // RICON_LINK
|
|
||||||
0x00000000, 0x0044007c, 0x00440044, 0x0000007c, 0x00000010, 0x44007c10, 0x44004550, 0x00007c00, // RICON_LINK_BROKE
|
|
||||||
0x02a00000, 0x22a43ffc, 0x20042004, 0x20042ff4, 0x20042ff4, 0x20042ff4, 0x20042004, 0x00003ffc, // RICON_TEXT_NOTES
|
|
||||||
0x3ffc0000, 0x20042004, 0x245e27c4, 0x27c42444, 0x2004201e, 0x201e2004, 0x20042004, 0x00003ffc, // RICON_NOTEBOOK
|
|
||||||
0x00000000, 0x07e00000, 0x04200420, 0x24243ffc, 0x24242424, 0x24242424, 0x3ffc2424, 0x00000000, // RICON_SUITCASE
|
|
||||||
0x00000000, 0x0fe00000, 0x08200820, 0x40047ffc, 0x7ffc5554, 0x40045554, 0x7ffc4004, 0x00000000, // RICON_SUITCASE_ZIP
|
|
||||||
0x00000000, 0x20043ffc, 0x3ffc2004, 0x13c81008, 0x100813c8, 0x10081008, 0x1ff81008, 0x00000000, // RICON_MAILBOX
|
|
||||||
0x00000000, 0x40027ffe, 0x5ffa5ffa, 0x5ffa5ffa, 0x40025ffa, 0x03c07ffe, 0x1ff81ff8, 0x00000000, // RICON_MONITOR
|
|
||||||
0x0ff00000, 0x6bfe7ffe, 0x7ffe7ffe, 0x68167ffe, 0x08106816, 0x08100810, 0x0ff00810, 0x00000000, // RICON_PRINTER
|
|
||||||
0x3ff80000, 0xfffe2008, 0x870a8002, 0x904a888a, 0x904a904a, 0x870a888a, 0xfffe8002, 0x00000000, // RICON_PHOTO_CAMERA
|
|
||||||
0x0fc00000, 0xfcfe0cd8, 0x8002fffe, 0x84428382, 0x84428442, 0x80028382, 0xfffe8002, 0x00000000, // RICON_PHOTO_CAMERA_FLASH
|
|
||||||
0x00000000, 0x02400180, 0x08100420, 0x20041008, 0x23c42004, 0x22442244, 0x3ffc2244, 0x00000000, // RICON_HOUSE
|
|
||||||
0x00000000, 0x1c700000, 0x3ff83ef8, 0x3ff83ff8, 0x0fe01ff0, 0x038007c0, 0x00000100, 0x00000000, // RICON_HEART
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0xe000c000, // RICON_CORNER
|
|
||||||
0x00000000, 0x14001c00, 0x15c01400, 0x15401540, 0x155c1540, 0x15541554, 0x1ddc1554, 0x00000000, // RICON_VERTICAL_BARS
|
|
||||||
0x00000000, 0x03000300, 0x1b001b00, 0x1b601b60, 0x1b6c1b60, 0x1b6c1b6c, 0x1b6c1b6c, 0x00000000, // RICON_VERTICAL_BARS_FILL
|
|
||||||
0x00000000, 0x00000000, 0x403e7ffe, 0x7ffe403e, 0x7ffe0000, 0x43fe43fe, 0x00007ffe, 0x00000000, // RICON_LIFE_BARS
|
|
||||||
0x7ffc0000, 0x43844004, 0x43844284, 0x43844004, 0x42844284, 0x42844284, 0x40044384, 0x00007ffc, // RICON_INFO
|
|
||||||
0x40008000, 0x10002000, 0x04000800, 0x01000200, 0x00400080, 0x00100020, 0x00040008, 0x00010002, // RICON_CROSSLINE
|
|
||||||
0x00000000, 0x1ff01ff0, 0x18301830, 0x1f001830, 0x03001f00, 0x00000300, 0x03000300, 0x00000000, // RICON_HELP
|
|
||||||
0x3ff00000, 0x2abc3550, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x00003ffc, // RICON_FILETYPE_ALPHA
|
|
||||||
0x3ff00000, 0x201c2010, 0x22442184, 0x28142424, 0x29942814, 0x2ff42994, 0x20042004, 0x00003ffc, // RICON_FILETYPE_HOME
|
|
||||||
0x07fe0000, 0x04020402, 0x7fe20402, 0x44224422, 0x44224422, 0x402047fe, 0x40204020, 0x00007fe0, // RICON_LAYERS_VISIBLE
|
|
||||||
0x07fe0000, 0x04020402, 0x7c020402, 0x44024402, 0x44024402, 0x402047fe, 0x40204020, 0x00007fe0, // RICON_LAYERS
|
|
||||||
0x00000000, 0x40027ffe, 0x7ffe4002, 0x40024002, 0x40024002, 0x40024002, 0x7ffe4002, 0x00000000, // RICON_WINDOW
|
|
||||||
0x09100000, 0x09f00910, 0x09100910, 0x00000910, 0x24a2779e, 0x27a224a2, 0x709e20a2, 0x00000000, // RICON_HIDPI
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_200
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_201
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_202
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_203
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_204
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_205
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_206
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_207
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_208
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_209
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_210
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_211
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_212
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_213
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_214
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_215
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_216
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_217
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_218
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_219
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_220
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_221
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_222
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_223
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_224
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_225
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_226
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_227
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_228
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_229
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_230
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_231
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_232
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_233
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_234
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_235
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_236
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_237
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_238
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_239
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_240
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_241
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_242
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_243
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_244
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_245
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_246
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_247
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_248
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_249
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_250
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_251
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_252
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_253
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_254
|
|
||||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // RICON_255
|
|
||||||
};
|
|
||||||
#endif // RICONS_IMPLEMENTATION
|
|
||||||
@ -1,36 +1,50 @@
|
|||||||
## raygui styles
|
# raygui styles
|
||||||
|
|
||||||
`raygui` comes with **8 custom styles** carefully designed for the best visual experience. Those styles have been created using [rGuiStyler](https://raylibtech.itch.io/rguistyler) tool and they complement internal [default style](default), always available by `raygui`.
|
`raygui` comes with **12 custom styles** carefully designed for the best visual experience. Those styles have been created using [rGuiStyler](https://raylibtech.itch.io/rguistyler) tool and they complement internal [default style](default), always available by `raygui`.
|
||||||
|
|
||||||
To use those styles with your `raygui` development, just need to call `GuiLoadStyle()` function at initialization, passing the `.rgs` file to load. Note that most of those styles depend on custom fonts that must be available together with the `.rgs` file.
|
## styles usage
|
||||||
|
|
||||||
|
To use those styles with your `raygui` development, you need to call `GuiLoadStyle()` function at initialization, passing the `.rgs` file to load. Note that `.rgs` is by default a binary file containing the style required font data (glyphs data + glyph atlas image data).
|
||||||
|
|
||||||
|
Styles can also be embedded in the code if desired, `.h` files are provided with every style containing all the required style data, including the font data. To embed those fonts just add the `.h` to your project and call the required function as specified in the header info.
|
||||||
|
|
||||||
Here it is a quick overview of those styles, you can navigate to each directory for additional information.
|
Here it is a quick overview of those styles, you can navigate to each directory for additional information.
|
||||||
|
|
||||||
#### style: [default](default)
|
#### 1. style: [default](default)
|
||||||

|

|
||||||
|
|
||||||
#### style: [ashes](ashes)
|
#### 2. style: [dark](dark)
|
||||||

|

|
||||||
|
|
||||||
#### style: [bluish](bluish)
|
#### 3. style: [bluish](bluish)
|
||||||

|

|
||||||
|
|
||||||
#### style: [candy](candy)
|
#### 4. style: [candy](candy)
|
||||||

|

|
||||||
|
|
||||||
#### style: [cherry](cherry)
|
#### 5. style: [cherry](cherry)
|
||||||

|

|
||||||
|
|
||||||
#### style: [cyber](cyber)
|
#### 6. style: [cyber](cyber)
|
||||||

|

|
||||||
|
|
||||||
#### style: [jungle](jungle)
|
#### 7. style: [jungle](jungle)
|
||||||

|

|
||||||
|
|
||||||
#### style: [lavanda](lavanda)
|
#### 8. style: [lavanda](lavanda)
|
||||||

|

|
||||||
|
|
||||||
#### style: [terminal](terminal)
|
#### 9. style: [terminal](terminal)
|
||||||

|

|
||||||
|
|
||||||
*NOTE: Those styles require latest raylib 2.6-dev and latest raygui 2.6-dev.*
|
#### 10. style: [sunny](sunny)
|
||||||
|

|
||||||
|
|
||||||
|
#### 11. style: [ashes](ashes)
|
||||||
|

|
||||||
|
|
||||||
|
#### 12. enefete: [enefete](enefete)
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
*NOTE: Those styles require raylib 4.0 and raygui 3.1.*
|
||||||
|
|||||||
338
styles/ashes/ashes.h
Normal file
@ -0,0 +1,338 @@
|
|||||||
|
//////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// //
|
||||||
|
// StyleAsCode exporter v1.2 - Style data exported as a values array //
|
||||||
|
// //
|
||||||
|
// USAGE: On init call: GuiLoadStyleAshes(); //
|
||||||
|
// //
|
||||||
|
// more info and bugs-report: github.com/raysan5/raygui //
|
||||||
|
// feedback and support: ray[at]raylibtech.com //
|
||||||
|
// //
|
||||||
|
// Copyright (c) 2020-2023 raylib technologies (@raylibtech) //
|
||||||
|
// //
|
||||||
|
//////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#define ASHES_STYLE_PROPS_COUNT 15
|
||||||
|
|
||||||
|
// Custom style name: ashes
|
||||||
|
static const GuiStyleProp ashesStyleProps[ASHES_STYLE_PROPS_COUNT] = {
|
||||||
|
{ 0, 0, 0xf0f0f0ff }, // DEFAULT_BORDER_COLOR_NORMAL
|
||||||
|
{ 0, 1, 0x868686ff }, // DEFAULT_BASE_COLOR_NORMAL
|
||||||
|
{ 0, 2, 0xe6e6e6ff }, // DEFAULT_TEXT_COLOR_NORMAL
|
||||||
|
{ 0, 3, 0x929999ff }, // DEFAULT_BORDER_COLOR_FOCUSED
|
||||||
|
{ 0, 4, 0xeaeaeaff }, // DEFAULT_BASE_COLOR_FOCUSED
|
||||||
|
{ 0, 5, 0x98a1a8ff }, // DEFAULT_TEXT_COLOR_FOCUSED
|
||||||
|
{ 0, 6, 0x3f3f3fff }, // DEFAULT_BORDER_COLOR_PRESSED
|
||||||
|
{ 0, 7, 0xf6f6f6ff }, // DEFAULT_BASE_COLOR_PRESSED
|
||||||
|
{ 0, 8, 0x414141ff }, // DEFAULT_TEXT_COLOR_PRESSED
|
||||||
|
{ 0, 9, 0x8b8b8bff }, // DEFAULT_BORDER_COLOR_DISABLED
|
||||||
|
{ 0, 10, 0x777777ff }, // DEFAULT_BASE_COLOR_DISABLED
|
||||||
|
{ 0, 11, 0x959595ff }, // DEFAULT_TEXT_COLOR_DISABLED
|
||||||
|
{ 0, 16, 0x00000010 }, // DEFAULT_TEXT_SIZE
|
||||||
|
{ 0, 18, 0x9dadb1ff }, // DEFAULT_LINE_COLOR
|
||||||
|
{ 0, 19, 0x6b6b6bff }, // DEFAULT_BACKGROUND_COLOR
|
||||||
|
};
|
||||||
|
|
||||||
|
// WARNING: This style uses a custom font: (size: 16, spacing: 1)
|
||||||
|
|
||||||
|
#define ASHES_COMPRESSED_DATA_SIZE 999
|
||||||
|
|
||||||
|
// Font image pixels data compressed (DEFLATE)
|
||||||
|
// NOTE: Original pixel data simplified to GRAYSCALE
|
||||||
|
static unsigned char ashesFontData[ASHES_COMPRESSED_DATA_SIZE] = { 0xed,
|
||||||
|
0xdd, 0x4b, 0x96, 0x9b, 0x30, 0x10, 0x05, 0x50, 0xed, 0x7f, 0xd3, 0x95, 0x51, 0x4e, 0x3e, 0xa7, 0x31, 0x54, 0xa9, 0x64,
|
||||||
|
0x7e, 0x37, 0x77, 0xd6, 0xed, 0x60, 0x9a, 0x87, 0xc0, 0x36, 0x0f, 0x39, 0x06, 0x00, 0xc0, 0x7f, 0xe2, 0xc7, 0x9f, 0xc4,
|
||||||
|
0xe6, 0x23, 0xe3, 0xf0, 0x72, 0xfe, 0xfd, 0x79, 0x6c, 0xfc, 0x36, 0xb7, 0xbc, 0x38, 0xfc, 0xbc, 0x95, 0xdf, 0xc4, 0x8f,
|
||||||
|
0xeb, 0x17, 0xd3, 0xcf, 0x1a, 0x87, 0xff, 0x9a, 0x4f, 0x8f, 0xfd, 0xf4, 0x9c, 0x71, 0xd1, 0xfc, 0xe3, 0xc3, 0xf2, 0x3e,
|
||||||
|
0x2f, 0x31, 0x26, 0xf6, 0x89, 0x63, 0xcf, 0x7b, 0x3c, 0xd3, 0xf9, 0xed, 0xb9, 0xb5, 0x6f, 0x1d, 0x7f, 0xec, 0xfe, 0x36,
|
||||||
|
0x5e, 0x9b, 0xff, 0xdf, 0xff, 0xc6, 0xc6, 0x6f, 0x6b, 0x19, 0xaf, 0x19, 0xe9, 0x9f, 0xd7, 0x34, 0x9a, 0xd2, 0x3e, 0xbe,
|
||||||
|
0xd7, 0xc6, 0xd4, 0x71, 0xa8, 0xb2, 0xf4, 0xfa, 0x1a, 0x8f, 0x64, 0x5a, 0xb1, 0xb3, 0x17, 0x46, 0x7a, 0x89, 0xb3, 0xc7,
|
||||||
|
0xf3, 0xca, 0xf8, 0xbf, 0x4a, 0xfe, 0xb5, 0xbd, 0x39, 0x2e, 0x90, 0x7f, 0x25, 0xb9, 0x68, 0x58, 0xd3, 0x68, 0x3a, 0xff,
|
||||||
|
0xaf, 0x48, 0x3f, 0x9b, 0x7f, 0x34, 0x6e, 0x81, 0xce, 0xfc, 0xab, 0xc7, 0xff, 0xca, 0xf1, 0x6f, 0x5c, 0x24, 0xcf, 0xef,
|
||||||
|
0xe7, 0x1f, 0x5f, 0xdf, 0x02, 0x1d, 0xe3, 0x7f, 0xec, 0x1e, 0x6d, 0x63, 0xe7, 0x55, 0x4d, 0x3c, 0x20, 0xff, 0x8e, 0xfd,
|
||||||
|
0xbf, 0x7a, 0xa6, 0xbc, 0xee, 0xf9, 0x3f, 0x0e, 0x1c, 0xeb, 0xe2, 0x11, 0xe3, 0x3f, 0x7f, 0x96, 0x3b, 0xfe, 0x7e, 0x73,
|
||||||
|
0xef, 0x4c, 0x19, 0xa7, 0xff, 0xed, 0xb5, 0x57, 0x20, 0xbf, 0xff, 0xdf, 0xfd, 0xc7, 0xff, 0x55, 0xce, 0x41, 0x67, 0xad,
|
||||||
|
0x77, 0x9c, 0x3a, 0xbe, 0xe4, 0xff, 0x86, 0xbf, 0x3f, 0x6c, 0x79, 0x7b, 0x99, 0xf4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x4a, 0xcd, 0x82, 0x7c, 0x13, 0x21, 0xa6, 0x3b, 0x6e, 0x3d, 0xfd, 0xfb, 0x48, 0x6f, 0x81, 0x4a, 0xef, 0x7e, 0x6b, 0xbd,
|
||||||
|
0x72, 0x8f, 0x1f, 0xe9, 0x4e, 0x5d, 0xb5, 0xef, 0x1b, 0xe5, 0x56, 0xd7, 0x7c, 0x43, 0x7d, 0xc5, 0x15, 0xe4, 0x7a, 0xd7,
|
||||||
|
0x2e, 0xd3, 0xd1, 0x8d, 0xa6, 0x9e, 0x56, 0x34, 0xdf, 0xa3, 0xd2, 0x9d, 0xff, 0x38, 0x3d, 0xff, 0x58, 0xda, 0x07, 0x89,
|
||||||
|
0x9d, 0xbe, 0xd9, 0x1b, 0xf2, 0xaf, 0x36, 0x77, 0x33, 0xc7, 0xf9, 0x68, 0xef, 0x4e, 0xe6, 0xd7, 0x6f, 0xff, 0x7e, 0x80,
|
||||||
|
0x37, 0xe6, 0x3f, 0xd2, 0xe3, 0x36, 0x7f, 0x84, 0x3d, 0x7a, 0xa6, 0x8e, 0x13, 0xc7, 0xff, 0xa7, 0xf3, 0x76, 0x24, 0x46,
|
||||||
|
0x4d, 0x36, 0xff, 0xdc, 0xf3, 0xfe, 0x59, 0xd7, 0xdc, 0x88, 0x38, 0x33, 0xff, 0x31, 0xd9, 0xe3, 0x8c, 0xb6, 0x23, 0x46,
|
||||||
|
0xf5, 0x3c, 0x77, 0xbd, 0xf1, 0xdf, 0xfd, 0xfa, 0x6f, 0x5d, 0xfe, 0xd1, 0xd0, 0xc6, 0x8a, 0xa5, 0x5d, 0xd0, 0xca, 0x3d,
|
||||||
|
0x2a, 0xcf, 0xc9, 0xbf, 0xf2, 0x0e, 0xa7, 0x67, 0x39, 0x77, 0xe8, 0xa1, 0xbe, 0x21, 0x7f, 0xe4, 0xaf, 0x87, 0x5e, 0x79,
|
||||||
|
0xdd, 0xb6, 0xee, 0xf3, 0x9f, 0x48, 0x1f, 0xaf, 0xe5, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x4b, 0xbf, 0x77,
|
||||||
|
0xbb, 0xa1, 0x99, 0x9f, 0x17, 0xbc, 0xe3, 0xf1, 0xd5, 0x67, 0x88, 0xb6, 0x0e, 0x68, 0x5f, 0xa3, 0x74, 0xfb, 0x8a, 0x72,
|
||||||
|
0xc7, 0x35, 0xee, 0x75, 0xf9, 0x8f, 0xf6, 0x5e, 0x6d, 0xbe, 0xa5, 0x96, 0x9f, 0x31, 0x7f, 0x5c, 0x2c, 0xff, 0x91, 0xd8,
|
||||||
|
0xee, 0xf2, 0x7f, 0x77, 0xfe, 0x7d, 0x6d, 0xe9, 0xa7, 0xe7, 0x3f, 0x6e, 0x95, 0xff, 0xdc, 0x77, 0x04, 0x74, 0xe5, 0x5f,
|
||||||
|
0x6f, 0xbc, 0x77, 0x9d, 0x05, 0xe7, 0xef, 0x3a, 0x18, 0xe5, 0xef, 0x16, 0xea, 0xca, 0x7f, 0x14, 0xee, 0x04, 0x5c, 0xd7,
|
||||||
|
0x96, 0xbf, 0xd7, 0xf8, 0x1f, 0x0d, 0xe3, 0x7f, 0x5c, 0xf4, 0xf8, 0x3f, 0x9a, 0x1a, 0xa2, 0xf2, 0x7f, 0x77, 0xfe, 0x9d,
|
||||||
|
0xf7, 0xcb, 0x3e, 0x31, 0xff, 0xab, 0xbe, 0xfe, 0x93, 0xff, 0x1d, 0xf3, 0x8f, 0xb6, 0xbf, 0xbc, 0x2f, 0xff, 0xdc, 0x1e,
|
||||||
|
0x10, 0xd3, 0xfd, 0xf2, 0xfd, 0x4f, 0x4d, 0x22, 0xb9, 0xb4, 0xd1, 0x30, 0xaf, 0x43, 0xfe, 0xf5, 0x57, 0xf6, 0xce, 0xa6,
|
||||||
|
0xbd, 0x39, 0x23, 0xb2, 0xf3, 0x34, 0xe4, 0xe6, 0x81, 0xb8, 0xf2, 0xb7, 0x7e, 0x9c, 0x31, 0x87, 0x89, 0xcf, 0x6d, 0xb1,
|
||||||
|
0xcf, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x67, 0x79, 0x8c, 0xe4, 0xf5, 0xc8, 0xae, 0xab, 0xb9, 0xa3, 0xe5, 0x1b,
|
||||||
|
0x07, 0xa2, 0xe1, 0x0a, 0xfb, 0xdc, 0xff, 0x8f, 0xbf, 0xae, 0x0d, 0x77, 0xdd, 0xe5, 0x30, 0x7b, 0x75, 0x68, 0x7b, 0x96,
|
||||||
|
0xe1, 0x9e, 0x2b, 0x92, 0xab, 0x3a, 0x0d, 0x51, 0x68, 0x46, 0xc7, 0x82, 0x2b, 0xa9, 0x91, 0xdc, 0xae, 0x67, 0xb6, 0xa2,
|
||||||
|
0x73, 0xf9, 0x44, 0xcb, 0xd1, 0xa5, 0xa3, 0x4b, 0x1c, 0xd3, 0x5d, 0xe1, 0x7c, 0x53, 0x78, 0x45, 0x33, 0xea, 0x1e, 0xf9,
|
||||||
|
0xf7, 0x76, 0x14, 0x56, 0x8d, 0xdc, 0xde, 0xf1, 0x1f, 0x5f, 0x69, 0xc6, 0xcb, 0xbf, 0x33, 0xff, 0xdc, 0x2b, 0x91, 0x75,
|
||||||
|
0xf9, 0x1b, 0xff, 0xe7, 0x8d, 0xff, 0xd9, 0x16, 0x9f, 0xfc, 0xdf, 0x91, 0x7f, 0x34, 0xcd, 0xcd, 0x2d, 0xff, 0xf9, 0x77,
|
||||||
|
0x97, 0xb9, 0x0e, 0x6c, 0x57, 0x57, 0xf8, 0x3a, 0xe3, 0x7f, 0xb4, 0xb5, 0xa2, 0xf3, 0x77, 0xbf, 0x5f, 0xa1, 0x49, 0x5a,
|
||||||
|
0xd9, 0x3f, 0xa3, 0xe5, 0x8e, 0x86, 0xb3, 0xcf, 0xff, 0xdf, 0xec, 0x00, 0x5f, 0x37, 0xff, 0x6c, 0x7b, 0x35, 0x26, 0xef,
|
||||||
|
0x68, 0x38, 0x27, 0xff, 0xf5, 0x5b, 0xf6, 0xbe, 0xf9, 0xdf, 0xb7, 0x31, 0x7d, 0xa5, 0xad, 0xd5, 0x91, 0xbf, 0x1e, 0xb9,
|
||||||
|
0xfb, 0x2e, 0x70, 0xcf, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0xef, 0xf8, 0x54, 0x3b, 0xdf, 0x89, 0xcd, 0xf4, 0x88, 0x63,
|
||||||
|
0xe2, 0x8a, 0xfa, 0xf1, 0x26, 0xe0, 0x38, 0x3c, 0x4f, 0x7e, 0x24, 0xbb, 0xc7, 0x4f, 0xbf, 0x9e, 0xd5, 0xdb, 0xd0, 0x3a,
|
||||||
|
0x6b, 0x8e, 0xf4, 0xca, 0x3c, 0x8f, 0xf3, 0xf7, 0x41, 0x3c, 0x27, 0xff, 0xf9, 0x26, 0x7e, 0x2d, 0xff, 0x7c, 0x6f, 0x6c,
|
||||||
|
0xdd, 0x4f, 0xdf, 0x7a, 0x3d, 0xfb, 0x1b, 0xc7, 0xff, 0xd5, 0x73, 0xe4, 0xcb, 0x7f, 0xae, 0xcf, 0x70, 0x9f, 0xe3, 0x7f,
|
||||||
|
0xdf, 0x3c, 0xdf, 0xf2, 0xef, 0xbe, 0xb7, 0x66, 0x7d, 0x0f, 0xba, 0xeb, 0x3b, 0x12, 0xde, 0xb8, 0x07, 0x3c, 0x21, 0xff,
|
||||||
|
0xae, 0x9c, 0xe5, 0xdf, 0xdd, 0xad, 0x1f, 0x07, 0xe6, 0xc8, 0x1e, 0xd3, 0xf7, 0x6a, 0x46, 0xcb, 0x77, 0xa7, 0xe8, 0x76,
|
||||||
|
0xdd, 0xa3, 0xfd, 0x18, 0x8b, 0xde, 0xdd, 0xc8, 0xff, 0x1e, 0x1d, 0x48, 0xf9, 0xdb, 0xfb, 0xbe, 0xb7, 0xaf, 0xf0, 0x86,
|
||||||
|
0x3d, 0x46, 0xb3, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x5b, 0xfa, 0x05 };
|
||||||
|
|
||||||
|
// Font characters rectangles data
|
||||||
|
static const Rectangle ashesFontRecs[95] = {
|
||||||
|
{ 4, 4, 4 , 16 },
|
||||||
|
{ 16, 4, 1 , 10 },
|
||||||
|
{ 25, 4, 3 , 3 },
|
||||||
|
{ 36, 4, 6 , 8 },
|
||||||
|
{ 50, 4, 5 , 11 },
|
||||||
|
{ 63, 4, 7 , 8 },
|
||||||
|
{ 78, 4, 6 , 9 },
|
||||||
|
{ 92, 4, 1 , 3 },
|
||||||
|
{ 101, 4, 3 , 12 },
|
||||||
|
{ 112, 4, 3 , 12 },
|
||||||
|
{ 123, 4, 5 , 5 },
|
||||||
|
{ 136, 4, 5 , 5 },
|
||||||
|
{ 149, 4, 2 , 2 },
|
||||||
|
{ 159, 4, 4 , 1 },
|
||||||
|
{ 171, 4, 1 , 1 },
|
||||||
|
{ 180, 4, 5 , 10 },
|
||||||
|
{ 193, 4, 4 , 8 },
|
||||||
|
{ 205, 4, 2 , 8 },
|
||||||
|
{ 215, 4, 4 , 8 },
|
||||||
|
{ 227, 4, 4 , 8 },
|
||||||
|
{ 239, 4, 6 , 8 },
|
||||||
|
{ 4, 28, 4 , 8 },
|
||||||
|
{ 16, 28, 4 , 8 },
|
||||||
|
{ 28, 28, 4 , 8 },
|
||||||
|
{ 40, 28, 4 , 8 },
|
||||||
|
{ 52, 28, 4 , 8 },
|
||||||
|
{ 64, 28, 1 , 5 },
|
||||||
|
{ 73, 28, 2 , 6 },
|
||||||
|
{ 83, 28, 4 , 7 },
|
||||||
|
{ 95, 28, 4 , 4 },
|
||||||
|
{ 107, 28, 4 , 7 },
|
||||||
|
{ 119, 28, 4 , 10 },
|
||||||
|
{ 131, 28, 8 , 7 },
|
||||||
|
{ 147, 28, 4 , 10 },
|
||||||
|
{ 159, 28, 4 , 10 },
|
||||||
|
{ 171, 28, 4 , 10 },
|
||||||
|
{ 183, 28, 4 , 10 },
|
||||||
|
{ 195, 28, 4 , 10 },
|
||||||
|
{ 207, 28, 5 , 10 },
|
||||||
|
{ 220, 28, 4 , 10 },
|
||||||
|
{ 232, 28, 4 , 10 },
|
||||||
|
{ 4, 52, 1 , 10 },
|
||||||
|
{ 13, 52, 3 , 10 },
|
||||||
|
{ 24, 52, 4 , 10 },
|
||||||
|
{ 36, 52, 4 , 10 },
|
||||||
|
{ 48, 52, 7 , 10 },
|
||||||
|
{ 63, 52, 4 , 10 },
|
||||||
|
{ 75, 52, 4 , 10 },
|
||||||
|
{ 87, 52, 4 , 10 },
|
||||||
|
{ 99, 52, 5 , 11 },
|
||||||
|
{ 112, 52, 4 , 10 },
|
||||||
|
{ 124, 52, 4 , 10 },
|
||||||
|
{ 136, 52, 5 , 10 },
|
||||||
|
{ 149, 52, 4 , 10 },
|
||||||
|
{ 161, 52, 4 , 10 },
|
||||||
|
{ 173, 52, 7 , 10 },
|
||||||
|
{ 188, 52, 4 , 10 },
|
||||||
|
{ 200, 52, 4 , 10 },
|
||||||
|
{ 212, 52, 4 , 10 },
|
||||||
|
{ 224, 52, 2 , 12 },
|
||||||
|
{ 234, 52, 5 , 10 },
|
||||||
|
{ 4, 76, 2 , 12 },
|
||||||
|
{ 14, 76, 5 , 3 },
|
||||||
|
{ 27, 76, 5 , 1 },
|
||||||
|
{ 40, 76, 2 , 2 },
|
||||||
|
{ 50, 76, 4 , 8 },
|
||||||
|
{ 62, 76, 4 , 10 },
|
||||||
|
{ 74, 76, 3 , 8 },
|
||||||
|
{ 85, 76, 4 , 10 },
|
||||||
|
{ 97, 76, 4 , 8 },
|
||||||
|
{ 109, 76, 3 , 10 },
|
||||||
|
{ 120, 76, 5 , 11 },
|
||||||
|
{ 133, 76, 4 , 10 },
|
||||||
|
{ 145, 76, 1 , 10 },
|
||||||
|
{ 154, 76, 3 , 13 },
|
||||||
|
{ 165, 76, 4 , 10 },
|
||||||
|
{ 177, 76, 2 , 10 },
|
||||||
|
{ 187, 76, 7 , 8 },
|
||||||
|
{ 202, 76, 4 , 8 },
|
||||||
|
{ 214, 76, 4 , 8 },
|
||||||
|
{ 226, 76, 4 , 11 },
|
||||||
|
{ 238, 76, 4 , 11 },
|
||||||
|
{ 4, 100, 3 , 8 },
|
||||||
|
{ 15, 100, 4 , 8 },
|
||||||
|
{ 27, 100, 3 , 10 },
|
||||||
|
{ 38, 100, 4 , 8 },
|
||||||
|
{ 50, 100, 5 , 8 },
|
||||||
|
{ 63, 100, 7 , 8 },
|
||||||
|
{ 78, 100, 4 , 8 },
|
||||||
|
{ 90, 100, 4 , 11 },
|
||||||
|
{ 102, 100, 4 , 8 },
|
||||||
|
{ 114, 100, 4 , 12 },
|
||||||
|
{ 126, 100, 1 , 10 },
|
||||||
|
{ 135, 100, 4 , 12 },
|
||||||
|
{ 147, 100, 4 , 2 },
|
||||||
|
};
|
||||||
|
|
||||||
|
// Font characters info data
|
||||||
|
// NOTE: No chars.image data provided
|
||||||
|
static const GlyphInfo ashesFontChars[95] = {
|
||||||
|
{ 32, 0, 13, 4, { 0 }},
|
||||||
|
{ 33, 0, 3, 4, { 0 }},
|
||||||
|
{ 34, 0, 1, 5, { 0 }},
|
||||||
|
{ 35, 0, 4, 8, { 0 }},
|
||||||
|
{ 36, 0, 2, 7, { 0 }},
|
||||||
|
{ 37, 0, 5, 9, { 0 }},
|
||||||
|
{ 38, 0, 4, 8, { 0 }},
|
||||||
|
{ 39, 0, 1, 3, { 0 }},
|
||||||
|
{ 40, 0, 2, 5, { 0 }},
|
||||||
|
{ 41, 0, 2, 5, { 0 }},
|
||||||
|
{ 42, 0, 3, 7, { 0 }},
|
||||||
|
{ 43, 0, 6, 7, { 0 }},
|
||||||
|
{ 44, 0, 12, 4, { 0 }},
|
||||||
|
{ 45, 0, 9, 5, { 0 }},
|
||||||
|
{ 46, 0, 12, 3, { 0 }},
|
||||||
|
{ 47, 0, 3, 7, { 0 }},
|
||||||
|
{ 48, 0, 5, 6, { 0 }},
|
||||||
|
{ 49, 0, 5, 4, { 0 }},
|
||||||
|
{ 50, 0, 5, 6, { 0 }},
|
||||||
|
{ 51, 0, 5, 6, { 0 }},
|
||||||
|
{ 52, 0, 5, 8, { 0 }},
|
||||||
|
{ 53, 0, 5, 6, { 0 }},
|
||||||
|
{ 54, 0, 5, 6, { 0 }},
|
||||||
|
{ 55, 0, 5, 6, { 0 }},
|
||||||
|
{ 56, 0, 5, 6, { 0 }},
|
||||||
|
{ 57, 0, 5, 6, { 0 }},
|
||||||
|
{ 58, 0, 8, 3, { 0 }},
|
||||||
|
{ 59, 0, 8, 4, { 0 }},
|
||||||
|
{ 60, 0, 5, 6, { 0 }},
|
||||||
|
{ 61, 0, 7, 7, { 0 }},
|
||||||
|
{ 62, 0, 5, 6, { 0 }},
|
||||||
|
{ 63, 1, 3, 7, { 0 }},
|
||||||
|
{ 64, 0, 5, 10, { 0 }},
|
||||||
|
{ 65, 0, 3, 6, { 0 }},
|
||||||
|
{ 66, 0, 3, 6, { 0 }},
|
||||||
|
{ 67, 0, 3, 6, { 0 }},
|
||||||
|
{ 68, 0, 3, 6, { 0 }},
|
||||||
|
{ 69, 0, 3, 6, { 0 }},
|
||||||
|
{ 70, 0, 3, 6, { 0 }},
|
||||||
|
{ 71, 0, 3, 6, { 0 }},
|
||||||
|
{ 72, 0, 3, 6, { 0 }},
|
||||||
|
{ 73, 0, 3, 3, { 0 }},
|
||||||
|
{ 74, 0, 3, 5, { 0 }},
|
||||||
|
{ 75, 0, 3, 6, { 0 }},
|
||||||
|
{ 76, 0, 3, 6, { 0 }},
|
||||||
|
{ 77, 0, 3, 9, { 0 }},
|
||||||
|
{ 78, 0, 3, 6, { 0 }},
|
||||||
|
{ 79, 0, 3, 6, { 0 }},
|
||||||
|
{ 80, 0, 3, 6, { 0 }},
|
||||||
|
{ 81, 0, 3, 7, { 0 }},
|
||||||
|
{ 82, 0, 3, 6, { 0 }},
|
||||||
|
{ 83, 0, 3, 6, { 0 }},
|
||||||
|
{ 84, 0, 3, 6, { 0 }},
|
||||||
|
{ 85, 0, 3, 6, { 0 }},
|
||||||
|
{ 86, 0, 3, 6, { 0 }},
|
||||||
|
{ 87, 0, 3, 9, { 0 }},
|
||||||
|
{ 88, 0, 3, 6, { 0 }},
|
||||||
|
{ 89, 0, 3, 6, { 0 }},
|
||||||
|
{ 90, 0, 3, 6, { 0 }},
|
||||||
|
{ 91, 0, 2, 4, { 0 }},
|
||||||
|
{ 92, 0, 3, 7, { 0 }},
|
||||||
|
{ 93, 0, 2, 4, { 0 }},
|
||||||
|
{ 94, 0, 3, 7, { 0 }},
|
||||||
|
{ 95, 0, 12, 7, { 0 }},
|
||||||
|
{ 96, 0, 1, 4, { 0 }},
|
||||||
|
{ 97, 0, 5, 6, { 0 }},
|
||||||
|
{ 98, 0, 3, 6, { 0 }},
|
||||||
|
{ 99, 0, 5, 5, { 0 }},
|
||||||
|
{ 100, 0, 3, 6, { 0 }},
|
||||||
|
{ 101, 0, 5, 6, { 0 }},
|
||||||
|
{ 102, 0, 3, 5, { 0 }},
|
||||||
|
{ 103, 0, 5, 6, { 0 }},
|
||||||
|
{ 104, 0, 3, 6, { 0 }},
|
||||||
|
{ 105, 0, 3, 3, { 0 }},
|
||||||
|
{ 106, 0, 3, 5, { 0 }},
|
||||||
|
{ 107, 0, 3, 6, { 0 }},
|
||||||
|
{ 108, 0, 3, 4, { 0 }},
|
||||||
|
{ 109, 0, 5, 9, { 0 }},
|
||||||
|
{ 110, 0, 5, 6, { 0 }},
|
||||||
|
{ 111, 0, 5, 6, { 0 }},
|
||||||
|
{ 112, 0, 5, 6, { 0 }},
|
||||||
|
{ 113, 0, 5, 6, { 0 }},
|
||||||
|
{ 114, 0, 5, 5, { 0 }},
|
||||||
|
{ 115, 0, 5, 6, { 0 }},
|
||||||
|
{ 116, 0, 3, 5, { 0 }},
|
||||||
|
{ 117, 0, 5, 6, { 0 }},
|
||||||
|
{ 118, 0, 5, 7, { 0 }},
|
||||||
|
{ 119, 0, 5, 9, { 0 }},
|
||||||
|
{ 120, 0, 5, 6, { 0 }},
|
||||||
|
{ 121, 0, 5, 6, { 0 }},
|
||||||
|
{ 122, 0, 5, 6, { 0 }},
|
||||||
|
{ 123, 0, 2, 6, { 0 }},
|
||||||
|
{ 124, 0, 3, 3, { 0 }},
|
||||||
|
{ 125, 0, 2, 6, { 0 }},
|
||||||
|
{ 126, 0, 1, 6, { 0 }},
|
||||||
|
};
|
||||||
|
|
||||||
|
// Style loading function: ashes
|
||||||
|
static void GuiLoadStyleAshes(void)
|
||||||
|
{
|
||||||
|
// Load style properties provided
|
||||||
|
// NOTE: Default properties are propagated
|
||||||
|
for (int i = 0; i < ASHES_STYLE_PROPS_COUNT; i++)
|
||||||
|
{
|
||||||
|
GuiSetStyle(ashesStyleProps[i].controlId, ashesStyleProps[i].propertyId, ashesStyleProps[i].propertyValue);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Custom font loading
|
||||||
|
// NOTE: Compressed font image data (DEFLATE), it requires DecompressData() function
|
||||||
|
int ashesFontDataSize = 0;
|
||||||
|
unsigned char *data = DecompressData(ashesFontData, ASHES_COMPRESSED_DATA_SIZE, &ashesFontDataSize);
|
||||||
|
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, ashesFontRecs, 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, ashesFontChars, 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 = { 37, 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
|
||||||
|
}
|
||||||
24
styles/ashes/ashes.txt.rgs
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#
|
||||||
|
# rgs style text file (v3.1) - raygui style file generated using rGuiStyler
|
||||||
|
#
|
||||||
|
# Style properties:
|
||||||
|
# f <gen_font_size> <charmap_file> <font_file>
|
||||||
|
# p <control_id> <property_id> <property_value> <property_name>
|
||||||
|
#
|
||||||
|
f 16 0 v5loxical.ttf
|
||||||
|
p 00 00 0xf0f0f0ff DEFAULT_BORDER_COLOR_NORMAL
|
||||||
|
p 00 01 0x868686ff DEFAULT_BASE_COLOR_NORMAL
|
||||||
|
p 00 02 0xe6e6e6ff DEFAULT_TEXT_COLOR_NORMAL
|
||||||
|
p 00 03 0x929999ff DEFAULT_BORDER_COLOR_FOCUSED
|
||||||
|
p 00 04 0xeaeaeaff DEFAULT_BASE_COLOR_FOCUSED
|
||||||
|
p 00 05 0x98a1a8ff DEFAULT_TEXT_COLOR_FOCUSED
|
||||||
|
p 00 06 0x3f3f3fff DEFAULT_BORDER_COLOR_PRESSED
|
||||||
|
p 00 07 0xf6f6f6ff DEFAULT_BASE_COLOR_PRESSED
|
||||||
|
p 00 08 0x414141ff DEFAULT_TEXT_COLOR_PRESSED
|
||||||
|
p 00 09 0x8b8b8bff DEFAULT_BORDER_COLOR_DISABLED
|
||||||
|
p 00 10 0x777777ff DEFAULT_BASE_COLOR_DISABLED
|
||||||
|
p 00 11 0x959595ff DEFAULT_TEXT_COLOR_DISABLED
|
||||||
|
p 00 16 0x00000010 TEXT_SIZE
|
||||||
|
p 00 17 0x00000001 TEXT_SPACING
|
||||||
|
p 00 18 0x9dadb1ff DEFAULT_LINE_COLOR
|
||||||
|
p 00 19 0x6b6b6bff DEFAULT_BACKGROUND_COLOR
|
||||||
359
styles/bluish/bluish.h
Normal file
@ -0,0 +1,359 @@
|
|||||||
|
//////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// //
|
||||||
|
// 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-2023 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);
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------
|
||||||
|
|
||||||
|
// TODO: Custom user style setup: Set specific properties here (if required)
|
||||||
|
// i.e. Controls specific BORDER_WIDTH, TEXT_PADDING, TEXT_ALIGNMENT
|
||||||
|
}
|
||||||
24
styles/bluish/bluish.txt.rgs
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#
|
||||||
|
# rgs style text file (v3.1) - raygui style file generated using rGuiStyler
|
||||||
|
#
|
||||||
|
# Style properties:
|
||||||
|
# f <gen_font_size> <charmap_file> <font_file>
|
||||||
|
# p <control_id> <property_id> <property_value> <property_name>
|
||||||
|
#
|
||||||
|
f 10 0 homespun.ttf
|
||||||
|
p 00 00 0x5ca6a6ff DEFAULT_BORDER_COLOR_NORMAL
|
||||||
|
p 00 01 0xb4e8f3ff DEFAULT_BASE_COLOR_NORMAL
|
||||||
|
p 00 02 0x447e77ff DEFAULT_TEXT_COLOR_NORMAL
|
||||||
|
p 00 03 0x5f8792ff DEFAULT_BORDER_COLOR_FOCUSED
|
||||||
|
p 00 04 0xcdeff7ff DEFAULT_BASE_COLOR_FOCUSED
|
||||||
|
p 00 05 0x4c6c74ff DEFAULT_TEXT_COLOR_FOCUSED
|
||||||
|
p 00 06 0x3b5b5fff DEFAULT_BORDER_COLOR_PRESSED
|
||||||
|
p 00 07 0xeaffffff DEFAULT_BASE_COLOR_PRESSED
|
||||||
|
p 00 08 0x275057ff DEFAULT_TEXT_COLOR_PRESSED
|
||||||
|
p 00 09 0x96aaacff DEFAULT_BORDER_COLOR_DISABLED
|
||||||
|
p 00 10 0xc8d7d9ff DEFAULT_BASE_COLOR_DISABLED
|
||||||
|
p 00 11 0x8c9c9eff DEFAULT_TEXT_COLOR_DISABLED
|
||||||
|
p 00 16 0x0000000a TEXT_SIZE
|
||||||
|
p 00 17 0x00000001 TEXT_SPACING
|
||||||
|
p 00 18 0x84adb7ff DEFAULT_LINE_COLOR
|
||||||
|
p 00 19 0xe8eef1ff DEFAULT_BACKGROUND_COLOR
|
||||||
346
styles/candy/candy.h
Normal file
@ -0,0 +1,346 @@
|
|||||||
|
//////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// //
|
||||||
|
// StyleAsCode exporter v1.2 - Style data exported as a values array //
|
||||||
|
// //
|
||||||
|
// USAGE: On init call: GuiLoadStyleCandy(); //
|
||||||
|
// //
|
||||||
|
// more info and bugs-report: github.com/raysan5/raygui //
|
||||||
|
// feedback and support: ray[at]raylibtech.com //
|
||||||
|
// //
|
||||||
|
// Copyright (c) 2020-2023 raylib technologies (@raylibtech) //
|
||||||
|
// //
|
||||||
|
//////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#define CANDY_STYLE_PROPS_COUNT 16
|
||||||
|
|
||||||
|
// Custom style name: candy
|
||||||
|
static const GuiStyleProp candyStyleProps[CANDY_STYLE_PROPS_COUNT] = {
|
||||||
|
{ 0, 0, 0xe58b68ff }, // DEFAULT_BORDER_COLOR_NORMAL
|
||||||
|
{ 0, 1, 0xfeda96ff }, // DEFAULT_BASE_COLOR_NORMAL
|
||||||
|
{ 0, 2, 0xe59b5fff }, // DEFAULT_TEXT_COLOR_NORMAL
|
||||||
|
{ 0, 3, 0xee813fff }, // DEFAULT_BORDER_COLOR_FOCUSED
|
||||||
|
{ 0, 4, 0xfcd85bff }, // DEFAULT_BASE_COLOR_FOCUSED
|
||||||
|
{ 0, 5, 0xfc6955ff }, // DEFAULT_TEXT_COLOR_FOCUSED
|
||||||
|
{ 0, 6, 0xb34848ff }, // DEFAULT_BORDER_COLOR_PRESSED
|
||||||
|
{ 0, 7, 0xeb7272ff }, // DEFAULT_BASE_COLOR_PRESSED
|
||||||
|
{ 0, 8, 0xbd4a4aff }, // DEFAULT_TEXT_COLOR_PRESSED
|
||||||
|
{ 0, 9, 0x94795dff }, // DEFAULT_BORDER_COLOR_DISABLED
|
||||||
|
{ 0, 10, 0xc2a37aff }, // DEFAULT_BASE_COLOR_DISABLED
|
||||||
|
{ 0, 11, 0x9c8369ff }, // DEFAULT_TEXT_COLOR_DISABLED
|
||||||
|
{ 0, 16, 0x0000000f }, // DEFAULT_TEXT_SIZE
|
||||||
|
{ 0, 17, 0x00000000 }, // DEFAULT_TEXT_SPACING
|
||||||
|
{ 0, 18, 0xd77575ff }, // DEFAULT_LINE_COLOR
|
||||||
|
{ 0, 19, 0xfff5e1ff }, // DEFAULT_BACKGROUND_COLOR
|
||||||
|
};
|
||||||
|
|
||||||
|
// WARNING: This style uses a custom font: (size: 15, spacing: 0)
|
||||||
|
|
||||||
|
#define CANDY_COMPRESSED_DATA_SIZE 1129
|
||||||
|
|
||||||
|
// Font image pixels data compressed (DEFLATE)
|
||||||
|
// NOTE: Original pixel data simplified to GRAYSCALE
|
||||||
|
static unsigned char candyFontData[CANDY_COMPRESSED_DATA_SIZE] = { 0xed,
|
||||||
|
0xdd, 0xe1, 0x6e, 0xab, 0x38, 0x10, 0x06, 0x50, 0xbf, 0xff, 0x4b, 0x7b, 0xb5, 0xd2, 0x4a, 0x55, 0xef, 0xde, 0x80, 0x3d,
|
||||||
|
0x9e, 0x31, 0x4e, 0x72, 0x7a, 0xfe, 0x95, 0x36, 0x09, 0x0c, 0x36, 0x10, 0x3e, 0x9b, 0xde, 0x00, 0x00, 0x7e, 0xf9, 0xf7,
|
||||||
|
0xe7, 0xff, 0xbf, 0x6b, 0x7f, 0xf9, 0xed, 0xcf, 0xdf, 0xf6, 0xbf, 0x2e, 0xbd, 0x5a, 0x12, 0xff, 0xcf, 0xeb, 0x4f, 0x32,
|
||||||
|
0xf6, 0x0a, 0xed, 0x62, 0xc9, 0xfd, 0x67, 0xfe, 0xf3, 0x77, 0x3d, 0xe5, 0xdd, 0x5f, 0xbd, 0xce, 0xdd, 0x27, 0xea, 0x97,
|
||||||
|
0xeb, 0x52, 0x59, 0xff, 0x3f, 0x7f, 0x32, 0xeb, 0x7f, 0xfd, 0x9a, 0x2b, 0x15, 0xfb, 0x59, 0x9b, 0x9e, 0x50, 0xff, 0xf9,
|
||||||
|
0xbd, 0xe8, 0x7a, 0x0d, 0x5e, 0xef, 0x63, 0x91, 0x36, 0x94, 0x55, 0xff, 0xbb, 0xbf, 0x9d, 0xaf, 0x62, 0xff, 0xaf, 0x02,
|
||||||
|
0xd1, 0xde, 0x61, 0xb4, 0x35, 0x5f, 0x7d, 0xae, 0xab, 0x4f, 0xfc, 0x7a, 0xcf, 0xc9, 0xd8, 0xc2, 0xb3, 0x6b, 0x7c, 0xbd,
|
||||||
|
0x2f, 0x9d, 0x5a, 0xff, 0xf5, 0xa3, 0xc3, 0xca, 0x16, 0xbd, 0x6a, 0x69, 0xb1, 0x3e, 0x2b, 0x6f, 0x0b, 0x67, 0xd5, 0x7f,
|
||||||
|
0x57, 0xff, 0xbf, 0x56, 0xff, 0x68, 0x0f, 0x39, 0xbe, 0x76, 0x79, 0xed, 0xbf, 0xbe, 0xfe, 0x57, 0xfb, 0x5c, 0x9f, 0xda,
|
||||||
|
0x92, 0xbd, 0xe4, 0x93, 0xee, 0xe9, 0xff, 0xc7, 0xfa, 0x85, 0x9a, 0xfe, 0xff, 0xee, 0xf8, 0xdf, 0xb6, 0xb7, 0xfe, 0x9f,
|
||||||
|
0x5a, 0xce, 0xd6, 0xff, 0x8c, 0x6b, 0x85, 0x1e, 0x38, 0x9f, 0xbe, 0x3b, 0xe3, 0xa9, 0x3c, 0xfe, 0xb7, 0xc7, 0xb6, 0x5c,
|
||||||
|
0x4f, 0xec, 0x49, 0x9f, 0x3e, 0xff, 0xbb, 0x3b, 0xff, 0x5f, 0x39, 0x3b, 0x98, 0x3b, 0xb2, 0xc5, 0xae, 0xf3, 0xd4, 0xff,
|
||||||
|
0xc9, 0xfe, 0x7f, 0xe4, 0x7f, 0xdb, 0x87, 0xd5, 0xbf, 0x0f, 0xb4, 0xa6, 0xf1, 0x25, 0x77, 0xe7, 0xb1, 0xa7, 0x7e, 0x9b,
|
||||||
|
0xb4, 0xef, 0x5d, 0x4e, 0xdb, 0x32, 0xe7, 0xd6, 0xe9, 0xbd, 0xeb, 0x3f, 0xff, 0xfd, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0xc0, 0xe7, 0xde, 0x9d, 0x89, 0x66, 0x37, 0xe6, 0xef, 0x57, 0xc6, 0xff, 0xef, 0x3e, 0x49, 0x5a, 0x91, 0xe0, 0x8e, 0xa5,
|
||||||
|
0x13, 0x46, 0xd2, 0x85, 0xb9, 0xcb, 0xa2, 0x77, 0x81, 0xc7, 0xf2, 0x99, 0x99, 0xd9, 0x9d, 0xca, 0x65, 0x15, 0x79, 0xa9,
|
||||||
|
0xc8, 0xda, 0xaf, 0xe5, 0xbc, 0xb3, 0x97, 0xad, 0xde, 0x3d, 0x8f, 0xe5, 0x91, 0x57, 0xee, 0xd6, 0x56, 0xac, 0xe1, 0xc8,
|
||||||
|
0x5a, 0xf6, 0x94, 0xb1, 0x0b, 0xbf, 0x53, 0x9c, 0xef, 0x50, 0xff, 0x7e, 0x9b, 0x48, 0x9d, 0xeb, 0x71, 0xae, 0x93, 0xfd,
|
||||||
|
0x77, 0xad, 0xaa, 0x2e, 0xe9, 0x94, 0xd5, 0xfa, 0x47, 0xea, 0x7f, 0x3d, 0x66, 0xa6, 0x5d, 0xee, 0x6f, 0xf5, 0x69, 0xc9,
|
||||||
|
0xd5, 0xd6, 0x38, 0x72, 0x3c, 0x8d, 0xa6, 0xfe, 0xe7, 0x8f, 0x71, 0xfb, 0xfb, 0xff, 0xfb, 0xb1, 0x45, 0xbd, 0xec, 0xc8,
|
||||||
|
0xd9, 0x0a, 0x5a, 0x47, 0x0f, 0x8d, 0x92, 0x88, 0xef, 0x39, 0xf1, 0x36, 0xbe, 0x56, 0xff, 0x8a, 0x3e, 0x60, 0x36, 0xe1,
|
||||||
|
0x75, 0x52, 0xff, 0x1f, 0xdd, 0xe2, 0x6b, 0x9f, 0x26, 0xd6, 0xab, 0xf6, 0xe9, 0x6c, 0xf2, 0xd3, 0xd7, 0x54, 0x67, 0x9c,
|
||||||
|
0x39, 0x7f, 0x6b, 0xfd, 0x4f, 0xcd, 0x35, 0x9e, 0x75, 0xfe, 0x17, 0xbd, 0xfe, 0x8f, 0x5f, 0xc5, 0xde, 0x5f, 0x6d, 0xee,
|
||||||
|
0x1b, 0xe9, 0x76, 0x62, 0xfd, 0x77, 0x5e, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdf, 0x92, 0xff, 0x5e, 0x4b,
|
||||||
|
0x63, 0xcf, 0x65, 0x98, 0x7a, 0x49, 0x1e, 0x2a, 0x76, 0xbf, 0x7c, 0x6f, 0x76, 0x3b, 0x9a, 0x96, 0xcf, 0xc8, 0x03, 0x9c,
|
||||||
|
0x90, 0xd4, 0x5e, 0x4d, 0x04, 0x5f, 0xef, 0x4d, 0x7d, 0x3a, 0xa1, 0x78, 0x52, 0xb2, 0xbd, 0x3a, 0x2d, 0xf3, 0x1e, 0xf5,
|
||||||
|
0x8f, 0x26, 0xd0, 0xef, 0x6a, 0xdc, 0x8f, 0x1d, 0xbd, 0xf0, 0x2e, 0xf5, 0x6f, 0xc1, 0x3e, 0x6b, 0x36, 0x83, 0xda, 0x4a,
|
||||||
|
0xea, 0xbf, 0x7b, 0x59, 0x6e, 0x5a, 0x2a, 0x27, 0x0f, 0x16, 0x49, 0x69, 0xad, 0xb7, 0x9f, 0x33, 0xda, 0xff, 0x29, 0xf5,
|
||||||
|
0x6f, 0xc7, 0xf6, 0xff, 0xd9, 0xef, 0xfd, 0xc4, 0xf6, 0xce, 0x7e, 0xdd, 0x9d, 0xb9, 0xde, 0x13, 0xfa, 0x7f, 0xf5, 0x9f,
|
||||||
|
0xef, 0x73, 0x9e, 0xae, 0x7f, 0x7b, 0x39, 0xfa, 0x4c, 0xfd, 0xeb, 0xeb, 0xff, 0x7c, 0xfb, 0x1f, 0x4f, 0x4b, 0xc7, 0x46,
|
||||||
|
0x78, 0xe6, 0x5e, 0xff, 0xf7, 0xe0, 0xf3, 0x8d, 0xc6, 0x46, 0x20, 0x66, 0x5e, 0xff, 0x8f, 0x1c, 0xc1, 0x73, 0xbf, 0x6f,
|
||||||
|
0x88, 0xa6, 0xe5, 0xcd, 0x7d, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdf, 0x98, 0xfe, 0xae, 0xcd, 0xc9, 0xf4, 0xe1,
|
||||||
|
0xa4, 0x77, 0x9b, 0x4a, 0x86, 0xb7, 0xa1, 0x59, 0x44, 0xfb, 0xf4, 0xff, 0xe4, 0xdd, 0x07, 0x8f, 0xde, 0xf3, 0x6e, 0x0b,
|
||||||
|
0x29, 0xf2, 0x93, 0xea, 0xdf, 0x86, 0xe6, 0xc7, 0xbe, 0xaf, 0xff, 0xab, 0xa5, 0xd1, 0x19, 0xcf, 0x76, 0xcf, 0xbb, 0x9a,
|
||||||
|
0x97, 0x15, 0x8c, 0x3c, 0x21, 0x7e, 0xad, 0xfe, 0xf1, 0x6c, 0xc6, 0x5d, 0x32, 0x69, 0x6e, 0x0f, 0xd8, 0x33, 0x1f, 0x64,
|
||||||
|
0x3f, 0xa8, 0xfe, 0xb1, 0xc4, 0x4f, 0x7e, 0xfd, 0x5b, 0xfa, 0xd3, 0xfb, 0xcf, 0xac, 0xff, 0xc8, 0x58, 0x81, 0xbc, 0x3c,
|
||||||
|
0x50, 0x2c, 0xd5, 0x33, 0x52, 0xff, 0xb9, 0xed, 0x51, 0xd7, 0xfe, 0x7b, 0xa0, 0xce, 0x91, 0x25, 0x99, 0xe7, 0x41, 0xe7,
|
||||||
|
0x3e, 0xcd, 0x62, 0x66, 0x8b, 0xcf, 0xec, 0x01, 0xd5, 0x39, 0xb9, 0xd9, 0x33, 0x3d, 0xf5, 0x1f, 0x1b, 0x5b, 0xd3, 0x8e,
|
||||||
|
0xa8, 0x7f, 0xfc, 0xf9, 0x08, 0xb3, 0x75, 0xee, 0x0f, 0x8e, 0x83, 0xad, 0x68, 0x03, 0xf1, 0xeb, 0x8d, 0xa6, 0xfe, 0x8f,
|
||||||
|
0x5c, 0x23, 0xd7, 0xcc, 0xad, 0x1e, 0x1b, 0x91, 0x95, 0xf9, 0x84, 0x94, 0xb5, 0xd7, 0x8c, 0x3d, 0xc7, 0xa3, 0x4d, 0xef,
|
||||||
|
0x01, 0xea, 0xff, 0x7b, 0xc9, 0x7b, 0xcc, 0x90, 0xdf, 0x92, 0xae, 0xf4, 0xdb, 0xc3, 0x6b, 0xb4, 0xf2, 0x4d, 0x43, 0xfe,
|
||||||
|
0x13, 0x67, 0x7a, 0xe1, 0x13, 0x92, 0xf6, 0x6d, 0xcd, 0xba, 0xbf, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0xff, 0x8e,
|
||||||
|
0xfd, 0xee, 0x3e, 0xe5, 0x79, 0x9d, 0x2b, 0x6b, 0xc1, 0x19, 0xb1, 0xdb, 0x40, 0x72, 0xba, 0x07, 0xdf, 0x6f, 0x66, 0xc6,
|
||||||
|
0xb2, 0x76, 0xe4, 0xbc, 0x94, 0xfd, 0x98, 0xfa, 0x9f, 0x38, 0x03, 0x6b, 0x56, 0x1a, 0xeb, 0xd4, 0x79, 0x09, 0xab, 0xee,
|
||||||
|
0x94, 0x7e, 0x47, 0xfd, 0x67, 0xd7, 0x2e, 0xbf, 0xfe, 0x15, 0x79, 0xfb, 0xbc, 0xf6, 0x3f, 0x93, 0x57, 0x3b, 0xb5, 0xfe,
|
||||||
|
0x91, 0xf4, 0x5f, 0xdf, 0x58, 0xff, 0xb5, 0xf9, 0x3e, 0x5b, 0x71, 0xfd, 0xdf, 0xbf, 0xfd, 0x67, 0x6c, 0x8d, 0xf3, 0xda,
|
||||||
|
0x7f, 0xb4, 0xdf, 0x9f, 0xa9, 0x7f, 0xff, 0xd8, 0xf6, 0x9f, 0x7b, 0xfc, 0xaf, 0x9a, 0x97, 0xb6, 0xe2, 0xf8, 0x3f, 0x57,
|
||||||
|
0xff, 0xf9, 0x2d, 0x54, 0x35, 0xb2, 0xe0, 0xba, 0x8f, 0x8c, 0x3f, 0xb1, 0x62, 0x36, 0xe1, 0xda, 0xa6, 0xc7, 0x62, 0xfe,
|
||||||
|
0xde, 0x2e, 0xb1, 0xad, 0xf2, 0xdc, 0xf9, 0x7f, 0x66, 0xdf, 0x93, 0x7f, 0x26, 0x5a, 0xf1, 0x89, 0xce, 0xcb, 0x1e, 0x56,
|
||||||
|
0xaf, 0x9d, 0xfa, 0x9f, 0x59, 0xff, 0xaa, 0x11, 0xaf, 0xab, 0xf5, 0xdf, 0xbb, 0x8d, 0x76, 0xd7, 0xff, 0xb4, 0x3d, 0xa0,
|
||||||
|
0x6f, 0x1b, 0x0b, 0xc7, 0xb7, 0x7e, 0x27, 0x6c, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x67, 0x66, 0xc0, 0xc7, 0x73,
|
||||||
|
0x10, 0xee, 0x19, 0x7d, 0x5a, 0xf5, 0xdb, 0x74, 0x12, 0xc6, 0x7d, 0xa3, 0xcf, 0xba, 0xdb, 0x77, 0xe2, 0x2c, 0x6c, 0xa8,
|
||||||
|
0x3f, 0xea, 0x4f, 0x7d, 0xd6, 0xe3, 0xc4, 0x79, 0x78, 0xd1, 0xfe, 0x51, 0x7f, 0xd4, 0x9f, 0x73, 0xae, 0xff, 0xf9, 0xe6,
|
||||||
|
0xef, 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, 0x80, 0x37, 0xf7, 0x0f };
|
||||||
|
|
||||||
|
// Font characters rectangles data
|
||||||
|
static const Rectangle candyFontRecs[95] = {
|
||||||
|
{ 4, 4, 3 , 15 },
|
||||||
|
{ 15, 4, 2 , 9 },
|
||||||
|
{ 25, 4, 3 , 2 },
|
||||||
|
{ 36, 4, 8 , 9 },
|
||||||
|
{ 52, 4, 6 , 11 },
|
||||||
|
{ 66, 4, 7 , 9 },
|
||||||
|
{ 81, 4, 7 , 9 },
|
||||||
|
{ 96, 4, 1 , 2 },
|
||||||
|
{ 105, 4, 3 , 11 },
|
||||||
|
{ 116, 4, 3 , 11 },
|
||||||
|
{ 127, 4, 7 , 7 },
|
||||||
|
{ 142, 4, 6 , 5 },
|
||||||
|
{ 156, 4, 2 , 3 },
|
||||||
|
{ 166, 4, 5 , 1 },
|
||||||
|
{ 179, 4, 2 , 2 },
|
||||||
|
{ 189, 4, 5 , 10 },
|
||||||
|
{ 202, 4, 6 , 9 },
|
||||||
|
{ 216, 4, 4 , 9 },
|
||||||
|
{ 228, 4, 6 , 9 },
|
||||||
|
{ 4, 27, 6 , 9 },
|
||||||
|
{ 18, 27, 7 , 9 },
|
||||||
|
{ 33, 27, 6 , 9 },
|
||||||
|
{ 47, 27, 6 , 9 },
|
||||||
|
{ 61, 27, 6 , 9 },
|
||||||
|
{ 75, 27, 6 , 9 },
|
||||||
|
{ 89, 27, 6 , 9 },
|
||||||
|
{ 103, 27, 2 , 6 },
|
||||||
|
{ 113, 27, 2 , 7 },
|
||||||
|
{ 123, 27, 4 , 6 },
|
||||||
|
{ 135, 27, 5 , 3 },
|
||||||
|
{ 148, 27, 4 , 6 },
|
||||||
|
{ 160, 27, 6 , 9 },
|
||||||
|
{ 174, 27, 8 , 7 },
|
||||||
|
{ 190, 27, 6 , 9 },
|
||||||
|
{ 204, 27, 6 , 9 },
|
||||||
|
{ 218, 27, 6 , 9 },
|
||||||
|
{ 232, 27, 6 , 9 },
|
||||||
|
{ 4, 50, 6 , 9 },
|
||||||
|
{ 18, 50, 6 , 9 },
|
||||||
|
{ 32, 50, 6 , 9 },
|
||||||
|
{ 46, 50, 6 , 9 },
|
||||||
|
{ 60, 50, 2 , 9 },
|
||||||
|
{ 70, 50, 6 , 9 },
|
||||||
|
{ 84, 50, 6 , 9 },
|
||||||
|
{ 98, 50, 6 , 9 },
|
||||||
|
{ 112, 50, 8 , 9 },
|
||||||
|
{ 128, 50, 6 , 9 },
|
||||||
|
{ 142, 50, 6 , 9 },
|
||||||
|
{ 156, 50, 6 , 9 },
|
||||||
|
{ 170, 50, 6 , 9 },
|
||||||
|
{ 184, 50, 6 , 9 },
|
||||||
|
{ 198, 50, 6 , 9 },
|
||||||
|
{ 212, 50, 6 , 9 },
|
||||||
|
{ 226, 50, 6 , 9 },
|
||||||
|
{ 240, 50, 6 , 9 },
|
||||||
|
{ 4, 73, 8 , 9 },
|
||||||
|
{ 20, 73, 6 , 9 },
|
||||||
|
{ 34, 73, 6 , 9 },
|
||||||
|
{ 48, 73, 6 , 9 },
|
||||||
|
{ 62, 73, 3 , 11 },
|
||||||
|
{ 73, 73, 5 , 10 },
|
||||||
|
{ 86, 73, 3 , 11 },
|
||||||
|
{ 97, 73, 6 , 4 },
|
||||||
|
{ 111, 73, 6 , 1 },
|
||||||
|
{ 125, 73, 3 , 2 },
|
||||||
|
{ 136, 73, 6 , 7 },
|
||||||
|
{ 150, 73, 6 , 10 },
|
||||||
|
{ 164, 73, 6 , 7 },
|
||||||
|
{ 178, 73, 6 , 10 },
|
||||||
|
{ 192, 73, 6 , 7 },
|
||||||
|
{ 206, 73, 5 , 10 },
|
||||||
|
{ 219, 73, 7 , 10 },
|
||||||
|
{ 234, 73, 6 , 10 },
|
||||||
|
{ 4, 96, 2 , 10 },
|
||||||
|
{ 14, 96, 2 , 12 },
|
||||||
|
{ 24, 96, 6 , 10 },
|
||||||
|
{ 38, 96, 3 , 10 },
|
||||||
|
{ 49, 96, 8 , 7 },
|
||||||
|
{ 65, 96, 6 , 7 },
|
||||||
|
{ 79, 96, 6 , 7 },
|
||||||
|
{ 93, 96, 6 , 10 },
|
||||||
|
{ 107, 96, 6 , 10 },
|
||||||
|
{ 121, 96, 6 , 7 },
|
||||||
|
{ 135, 96, 6 , 7 },
|
||||||
|
{ 149, 96, 3 , 10 },
|
||||||
|
{ 160, 96, 6 , 7 },
|
||||||
|
{ 174, 96, 6 , 7 },
|
||||||
|
{ 188, 96, 8 , 7 },
|
||||||
|
{ 204, 96, 6 , 7 },
|
||||||
|
{ 218, 96, 6 , 10 },
|
||||||
|
{ 232, 96, 6 , 7 },
|
||||||
|
{ 4, 119, 4 , 11 },
|
||||||
|
{ 16, 119, 1 , 11 },
|
||||||
|
{ 25, 119, 4 , 11 },
|
||||||
|
{ 37, 119, 6 , 2 },
|
||||||
|
};
|
||||||
|
|
||||||
|
// Font characters info data
|
||||||
|
// NOTE: No chars.image data provided
|
||||||
|
static const GlyphInfo candyFontChars[95] = {
|
||||||
|
{ 32, 0, 12, 3, { 0 }},
|
||||||
|
{ 33, 0, 3, 3, { 0 }},
|
||||||
|
{ 34, 0, 2, 4, { 0 }},
|
||||||
|
{ 35, 0, 3, 9, { 0 }},
|
||||||
|
{ 36, 0, 2, 7, { 0 }},
|
||||||
|
{ 37, 0, 3, 8, { 0 }},
|
||||||
|
{ 38, 0, 3, 8, { 0 }},
|
||||||
|
{ 39, 0, 2, 2, { 0 }},
|
||||||
|
{ 40, 1, 2, 5, { 0 }},
|
||||||
|
{ 41, 1, 2, 5, { 0 }},
|
||||||
|
{ 42, 0, 4, 8, { 0 }},
|
||||||
|
{ 43, 0, 6, 7, { 0 }},
|
||||||
|
{ 44, 0, 10, 3, { 0 }},
|
||||||
|
{ 45, 0, 7, 6, { 0 }},
|
||||||
|
{ 46, 0, 10, 3, { 0 }},
|
||||||
|
{ 47, 1, 3, 7, { 0 }},
|
||||||
|
{ 48, 0, 3, 7, { 0 }},
|
||||||
|
{ 49, 0, 3, 5, { 0 }},
|
||||||
|
{ 50, 0, 3, 7, { 0 }},
|
||||||
|
{ 51, 0, 3, 7, { 0 }},
|
||||||
|
{ 52, 0, 3, 8, { 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, 6, 3, { 0 }},
|
||||||
|
{ 59, 0, 6, 3, { 0 }},
|
||||||
|
{ 60, 1, 5, 6, { 0 }},
|
||||||
|
{ 61, 1, 7, 7, { 0 }},
|
||||||
|
{ 62, 1, 5, 6, { 0 }},
|
||||||
|
{ 63, 0, 3, 7, { 0 }},
|
||||||
|
{ 64, 0, 4, 9, { 0 }},
|
||||||
|
{ 65, 0, 3, 7, { 0 }},
|
||||||
|
{ 66, 0, 3, 7, { 0 }},
|
||||||
|
{ 67, 0, 3, 7, { 0 }},
|
||||||
|
{ 68, 0, 3, 7, { 0 }},
|
||||||
|
{ 69, 0, 3, 7, { 0 }},
|
||||||
|
{ 70, 0, 3, 7, { 0 }},
|
||||||
|
{ 71, 0, 3, 7, { 0 }},
|
||||||
|
{ 72, 0, 3, 7, { 0 }},
|
||||||
|
{ 73, 0, 3, 3, { 0 }},
|
||||||
|
{ 74, 0, 3, 7, { 0 }},
|
||||||
|
{ 75, 0, 3, 7, { 0 }},
|
||||||
|
{ 76, 0, 3, 7, { 0 }},
|
||||||
|
{ 77, 0, 3, 9, { 0 }},
|
||||||
|
{ 78, 0, 3, 7, { 0 }},
|
||||||
|
{ 79, 0, 3, 7, { 0 }},
|
||||||
|
{ 80, 0, 3, 7, { 0 }},
|
||||||
|
{ 81, 0, 3, 7, { 0 }},
|
||||||
|
{ 82, 0, 3, 7, { 0 }},
|
||||||
|
{ 83, 0, 3, 7, { 0 }},
|
||||||
|
{ 84, 0, 3, 7, { 0 }},
|
||||||
|
{ 85, 0, 3, 7, { 0 }},
|
||||||
|
{ 86, 0, 3, 7, { 0 }},
|
||||||
|
{ 87, 0, 3, 9, { 0 }},
|
||||||
|
{ 88, 0, 3, 7, { 0 }},
|
||||||
|
{ 89, 0, 3, 7, { 0 }},
|
||||||
|
{ 90, 0, 3, 7, { 0 }},
|
||||||
|
{ 91, 1, 2, 5, { 0 }},
|
||||||
|
{ 92, 1, 3, 7, { 0 }},
|
||||||
|
{ 93, 1, 2, 5, { 0 }},
|
||||||
|
{ 94, 0, 3, 7, { 0 }},
|
||||||
|
{ 95, 0, 11, 7, { 0 }},
|
||||||
|
{ 96, 0, 0, 4, { 0 }},
|
||||||
|
{ 97, 0, 5, 7, { 0 }},
|
||||||
|
{ 98, 0, 2, 7, { 0 }},
|
||||||
|
{ 99, 0, 5, 7, { 0 }},
|
||||||
|
{ 100, 0, 2, 7, { 0 }},
|
||||||
|
{ 101, 0, 5, 7, { 0 }},
|
||||||
|
{ 102, 0, 2, 6, { 0 }},
|
||||||
|
{ 103, 0, 5, 7, { 0 }},
|
||||||
|
{ 104, 0, 2, 7, { 0 }},
|
||||||
|
{ 105, 0, 2, 3, { 0 }},
|
||||||
|
{ 106, 0, 2, 3, { 0 }},
|
||||||
|
{ 107, 0, 2, 7, { 0 }},
|
||||||
|
{ 108, 0, 2, 4, { 0 }},
|
||||||
|
{ 109, 0, 5, 9, { 0 }},
|
||||||
|
{ 110, 0, 5, 7, { 0 }},
|
||||||
|
{ 111, 0, 5, 7, { 0 }},
|
||||||
|
{ 112, 0, 5, 7, { 0 }},
|
||||||
|
{ 113, 0, 5, 7, { 0 }},
|
||||||
|
{ 114, 0, 5, 7, { 0 }},
|
||||||
|
{ 115, 0, 5, 7, { 0 }},
|
||||||
|
{ 116, 0, 2, 4, { 0 }},
|
||||||
|
{ 117, 0, 5, 7, { 0 }},
|
||||||
|
{ 118, 0, 5, 7, { 0 }},
|
||||||
|
{ 119, 0, 5, 9, { 0 }},
|
||||||
|
{ 120, 0, 5, 7, { 0 }},
|
||||||
|
{ 121, 0, 5, 7, { 0 }},
|
||||||
|
{ 122, 0, 5, 7, { 0 }},
|
||||||
|
{ 123, 1, 2, 6, { 0 }},
|
||||||
|
{ 124, 1, 2, 3, { 0 }},
|
||||||
|
{ 125, 1, 2, 6, { 0 }},
|
||||||
|
{ 126, 0, 0, 7, { 0 }},
|
||||||
|
};
|
||||||
|
|
||||||
|
// Style loading function: candy
|
||||||
|
static void GuiLoadStyleCandy(void)
|
||||||
|
{
|
||||||
|
// Load style properties provided
|
||||||
|
// NOTE: Default properties are propagated
|
||||||
|
for (int i = 0; i < CANDY_STYLE_PROPS_COUNT; i++)
|
||||||
|
{
|
||||||
|
GuiSetStyle(candyStyleProps[i].controlId, candyStyleProps[i].propertyId, candyStyleProps[i].propertyValue);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Custom font loading
|
||||||
|
// NOTE: Compressed font image data (DEFLATE), it requires DecompressData() function
|
||||||
|
int candyFontDataSize = 0;
|
||||||
|
unsigned char *data = DecompressData(candyFontData, CANDY_COMPRESSED_DATA_SIZE, &candyFontDataSize);
|
||||||
|
Image imFont = { data, 256, 256, 1, 2 };
|
||||||
|
|
||||||
|
Font font = { 0 };
|
||||||
|
font.baseSize = 15;
|
||||||
|
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, candyFontRecs, 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, candyFontChars, 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 = { 129, 6, 3, 3 };
|
||||||
|
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
|
||||||
|
}
|
||||||
24
styles/candy/candy.txt.rgs
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#
|
||||||
|
# rgs style text file (v3.1) - raygui style file generated using rGuiStyler
|
||||||
|
#
|
||||||
|
# Style properties:
|
||||||
|
# f <gen_font_size> <charmap_file> <font_file>
|
||||||
|
# p <control_id> <property_id> <property_value> <property_name>
|
||||||
|
#
|
||||||
|
f 15 0 v5easter.ttf
|
||||||
|
p 00 00 0xe58b68ff DEFAULT_BORDER_COLOR_NORMAL
|
||||||
|
p 00 01 0xfeda96ff DEFAULT_BASE_COLOR_NORMAL
|
||||||
|
p 00 02 0xe59b5fff DEFAULT_TEXT_COLOR_NORMAL
|
||||||
|
p 00 03 0xee813fff DEFAULT_BORDER_COLOR_FOCUSED
|
||||||
|
p 00 04 0xfcd85bff DEFAULT_BASE_COLOR_FOCUSED
|
||||||
|
p 00 05 0xfc6955ff DEFAULT_TEXT_COLOR_FOCUSED
|
||||||
|
p 00 06 0xb34848ff DEFAULT_BORDER_COLOR_PRESSED
|
||||||
|
p 00 07 0xeb7272ff DEFAULT_BASE_COLOR_PRESSED
|
||||||
|
p 00 08 0xbd4a4aff DEFAULT_TEXT_COLOR_PRESSED
|
||||||
|
p 00 09 0x94795dff DEFAULT_BORDER_COLOR_DISABLED
|
||||||
|
p 00 10 0xc2a37aff DEFAULT_BASE_COLOR_DISABLED
|
||||||
|
p 00 11 0x9c8369ff DEFAULT_TEXT_COLOR_DISABLED
|
||||||
|
p 00 16 0x0000000f TEXT_SIZE
|
||||||
|
p 00 17 0x00000000 TEXT_SPACING
|
||||||
|
p 00 18 0xd77575ff DEFAULT_LINE_COLOR
|
||||||
|
p 00 19 0xfff5e1ff DEFAULT_BACKGROUND_COLOR
|
||||||
360
styles/cherry/cherry.h
Normal file
@ -0,0 +1,360 @@
|
|||||||
|
//////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// //
|
||||||
|
// StyleAsCode exporter v1.2 - Style data exported as a values array //
|
||||||
|
// //
|
||||||
|
// USAGE: On init call: GuiLoadStyleCherry(); //
|
||||||
|
// //
|
||||||
|
// more info and bugs-report: github.com/raysan5/raygui //
|
||||||
|
// feedback and support: ray[at]raylibtech.com //
|
||||||
|
// //
|
||||||
|
// Copyright (c) 2020-2023 raylib technologies (@raylibtech) //
|
||||||
|
// //
|
||||||
|
//////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#define CHERRY_STYLE_PROPS_COUNT 16
|
||||||
|
|
||||||
|
// Custom style name: cherry
|
||||||
|
static const GuiStyleProp cherryStyleProps[CHERRY_STYLE_PROPS_COUNT] = {
|
||||||
|
{ 0, 0, 0xda5757ff }, // DEFAULT_BORDER_COLOR_NORMAL
|
||||||
|
{ 0, 1, 0x753233ff }, // DEFAULT_BASE_COLOR_NORMAL
|
||||||
|
{ 0, 2, 0xe17373ff }, // DEFAULT_TEXT_COLOR_NORMAL
|
||||||
|
{ 0, 3, 0xfaaa97ff }, // DEFAULT_BORDER_COLOR_FOCUSED
|
||||||
|
{ 0, 4, 0xe06262ff }, // DEFAULT_BASE_COLOR_FOCUSED
|
||||||
|
{ 0, 5, 0xfdb4aaff }, // DEFAULT_TEXT_COLOR_FOCUSED
|
||||||
|
{ 0, 6, 0xe03c46ff }, // DEFAULT_BORDER_COLOR_PRESSED
|
||||||
|
{ 0, 7, 0x5b1e20ff }, // DEFAULT_BASE_COLOR_PRESSED
|
||||||
|
{ 0, 8, 0xc2474fff }, // DEFAULT_TEXT_COLOR_PRESSED
|
||||||
|
{ 0, 9, 0xa19292ff }, // DEFAULT_BORDER_COLOR_DISABLED
|
||||||
|
{ 0, 10, 0x706060ff }, // DEFAULT_BASE_COLOR_DISABLED
|
||||||
|
{ 0, 11, 0x9e8585ff }, // DEFAULT_TEXT_COLOR_DISABLED
|
||||||
|
{ 0, 16, 0x0000000f }, // DEFAULT_TEXT_SIZE
|
||||||
|
{ 0, 17, 0x00000000 }, // DEFAULT_TEXT_SPACING
|
||||||
|
{ 0, 18, 0xfb8170ff }, // DEFAULT_LINE_COLOR
|
||||||
|
{ 0, 19, 0x3a1720ff }, // DEFAULT_BACKGROUND_COLOR
|
||||||
|
};
|
||||||
|
|
||||||
|
// WARNING: This style uses a custom font: (size: 15, spacing: 0)
|
||||||
|
|
||||||
|
#define CHERRY_COMPRESSED_DATA_SIZE 1406
|
||||||
|
|
||||||
|
// Font image pixels data compressed (DEFLATE)
|
||||||
|
// NOTE: Original pixel data simplified to GRAYSCALE
|
||||||
|
static unsigned char cherryFontData[CHERRY_COMPRESSED_DATA_SIZE] = { 0xed,
|
||||||
|
0xdd, 0x4b, 0x76, 0xe3, 0x36, 0x10, 0x05, 0x50, 0xed, 0x7f, 0xd3, 0x2f, 0x27, 0x93, 0xa4, 0x4f, 0x3a, 0x26, 0x50, 0x85,
|
||||||
|
0xa2, 0xc4, 0xb6, 0xaf, 0xef, 0xcc, 0xb2, 0x28, 0x0a, 0x45, 0x82, 0xbf, 0x07, 0x38, 0x2f, 0x00, 0x80, 0xdf, 0xfc, 0xfd,
|
||||||
|
0xf3, 0xd5, 0x6f, 0xff, 0xff, 0xb5, 0x5f, 0xdf, 0x95, 0xcb, 0x25, 0xf7, 0x3f, 0x3b, 0xc5, 0xa5, 0xa6, 0xf0, 0x77, 0xf9,
|
||||||
|
0x72, 0x5d, 0xb2, 0xfd, 0x99, 0xf5, 0xef, 0x5d, 0xff, 0xae, 0x57, 0x6d, 0x9f, 0xd1, 0x2d, 0xe0, 0xeb, 0xdf, 0xae, 0xea,
|
||||||
|
0xf0, 0x55, 0x7b, 0xfe, 0xfb, 0x73, 0xf5, 0x89, 0x29, 0xbe, 0xb6, 0x7a, 0x4f, 0xff, 0xb7, 0xab, 0xf6, 0xfe, 0xfa, 0xfb,
|
||||||
|
0xe5, 0xa0, 0x9d, 0xaf, 0xdb, 0xa1, 0xde, 0x76, 0x93, 0xf5, 0xbf, 0xde, 0x6b, 0x73, 0xd9, 0x02, 0xb9, 0xdc, 0x82, 0xf2,
|
||||||
|
0x4f, 0xef, 0x32, 0xf5, 0xfd, 0x52, 0xda, 0x52, 0xaa, 0xeb, 0x3b, 0xd3, 0x7a, 0xb5, 0x6d, 0x3d, 0xcb, 0x7e, 0xe4, 0x73,
|
||||||
|
0xf5, 0x5f, 0xb7, 0xd5, 0xaa, 0x3d, 0xb3, 0xec, 0x27, 0x33, 0xb2, 0xfe, 0x69, 0x6d, 0xd1, 0x77, 0x1d, 0x67, 0xab, 0xdb,
|
||||||
|
0x7a, 0x5a, 0x6d, 0xff, 0x8c, 0xfa, 0xaf, 0x6b, 0x98, 0xe2, 0x59, 0xc1, 0xbd, 0xf5, 0xbf, 0xa3, 0x5d, 0xef, 0xaa, 0xff,
|
||||||
|
0xf4, 0x5a, 0xa6, 0x75, 0x04, 0x58, 0xad, 0x5f, 0x5a, 0xe7, 0x71, 0xff, 0xad, 0x45, 0xde, 0x52, 0xff, 0xd7, 0xad, 0x95,
|
||||||
|
0x7f, 0x35, 0x8f, 0x75, 0xf9, 0xc8, 0x9a, 0x9e, 0x1f, 0xfd, 0xf7, 0x7a, 0xf9, 0xbd, 0x7d, 0xe2, 0x7d, 0xf5, 0xbf, 0xb3,
|
||||||
|
0xef, 0xef, 0x1d, 0xcb, 0xf3, 0xa6, 0xea, 0xd7, 0xf7, 0x92, 0xfd, 0x6b, 0x83, 0xeb, 0xeb, 0xb0, 0x5c, 0x5e, 0x59, 0xe5,
|
||||||
|
0xe8, 0xdc, 0xea, 0xb3, 0x7b, 0xc9, 0xe9, 0xb5, 0xdc, 0xd5, 0xb9, 0xf5, 0xec, 0x79, 0x4a, 0x9a, 0xc7, 0xdb, 0x6c, 0x1e,
|
||||||
|
0x1f, 0x52, 0xbe, 0xfe, 0xcb, 0xc8, 0xb9, 0xf5, 0x93, 0xea, 0xff, 0xa4, 0x2d, 0x71, 0xe2, 0xfa, 0x6f, 0xbd, 0x77, 0x5e,
|
||||||
|
0x6d, 0xa5, 0x59, 0x9e, 0x19, 0x66, 0x71, 0x8d, 0x78, 0x7a, 0x87, 0xe6, 0x19, 0xf7, 0xd8, 0xbe, 0xff, 0x9d, 0x45, 0x77,
|
||||||
|
0x57, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xee, 0xce, 0x6d, 0xd4, 0xd2, 0x49, 0x59, 0x3c, 0x9f, 0x9e, 0x79, 0xcf, 0x6b,
|
||||||
|
0x23, 0x29, 0x5c, 0x79, 0xb2, 0x94, 0xc1, 0x24, 0x55, 0x16, 0x19, 0xf8, 0xb4, 0x96, 0xbd, 0x7a, 0x86, 0x9f, 0x65, 0xfb,
|
||||||
|
0x76, 0x9f, 0xc5, 0xd5, 0xb2, 0xe9, 0xbd, 0xa5, 0x55, 0xb3, 0xce, 0x57, 0xaf, 0x64, 0xfb, 0xb7, 0xeb, 0x77, 0x74, 0x96,
|
||||||
|
0xb6, 0x93, 0x39, 0xcf, 0x32, 0x29, 0x33, 0xb9, 0xe4, 0xb3, 0x94, 0x62, 0x0a, 0xeb, 0x99, 0x52, 0x22, 0x7e, 0xa7, 0x37,
|
||||||
|
0xe9, 0xa4, 0xe0, 0x4f, 0x47, 0x58, 0x9c, 0x8f, 0x82, 0xf9, 0x3a, 0x9f, 0x9d, 0x66, 0xc6, 0xe5, 0xba, 0xc6, 0x39, 0xc8,
|
||||||
|
0x8c, 0xd6, 0x7b, 0xb2, 0x2c, 0xc7, 0x70, 0xd4, 0x7a, 0xa1, 0x7a, 0x6e, 0x69, 0x26, 0xd1, 0x9e, 0xcd, 0xcc, 0xe2, 0xab,
|
||||||
|
0x99, 0x48, 0xbd, 0xaa, 0x51, 0x1a, 0xd9, 0xbe, 0x34, 0x93, 0x2b, 0x67, 0xe3, 0x3f, 0x32, 0x92, 0xd4, 0x3d, 0x19, 0xa3,
|
||||||
|
0x33, 0x79, 0x54, 0xbb, 0x7b, 0xff, 0xdf, 0xc9, 0x2f, 0x76, 0x47, 0x40, 0x5d, 0xed, 0x5d, 0xf3, 0xf5, 0xcf, 0x41, 0xa6,
|
||||||
|
0x34, 0x23, 0xb9, 0xe5, 0xbc, 0x25, 0xd5, 0xdc, 0x49, 0x33, 0xa6, 0x35, 0x9a, 0xef, 0xd7, 0x9e, 0xf3, 0xae, 0xfe, 0x7f,
|
||||||
|
0xb2, 0xfe, 0x69, 0xec, 0xb1, 0x57, 0x23, 0xb8, 0xba, 0x47, 0xe7, 0xdc, 0x3e, 0xa2, 0xed, 0x1d, 0xa9, 0xff, 0x1c, 0x8d,
|
||||||
|
0x71, 0x7c, 0xd2, 0xf1, 0x7f, 0x7d, 0x35, 0xf7, 0xba, 0x7d, 0xdc, 0x6a, 0xf5, 0xfa, 0xef, 0xf3, 0x29, 0xc6, 0x75, 0x2f,
|
||||||
|
0x93, 0x76, 0xf2, 0x3f, 0x1b, 0xf9, 0xe8, 0x9f, 0x91, 0xad, 0xec, 0x26, 0x88, 0xdf, 0x71, 0xd7, 0x24, 0x1b, 0x67, 0x34,
|
||||||
|
0xaf, 0x66, 0x86, 0x7f, 0xfe, 0xfa, 0xff, 0xbb, 0x65, 0x88, 0xf3, 0x80, 0x14, 0xf3, 0x4f, 0xab, 0x85, 0x6c, 0x39, 0xaa,
|
||||||
|
0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x7b, 0x92, 0x9a, 0x46, 0x3e, 0xf6, 0xb5, 0x91, 0xe8, 0x9e, 0xcd, 0xe9, 0x76,
|
||||||
|
0x96, 0xf7, 0xfb, 0xab, 0xab, 0x65, 0x74, 0xbf, 0x6d, 0x27, 0x0d, 0x9e, 0xad, 0x75, 0x4f, 0xb3, 0x6e, 0x7b, 0xb9, 0xa7,
|
||||||
|
0x6e, 0xaa, 0x24, 0x97, 0xf3, 0x7d, 0x4d, 0xcf, 0x60, 0x9a, 0xa3, 0xdc, 0x7f, 0x36, 0x32, 0x02, 0xb9, 0x25, 0x7b, 0x9d,
|
||||||
|
0xad, 0xef, 0xd5, 0xcd, 0x02, 0xe5, 0x20, 0x85, 0xde, 0x1d, 0x33, 0x31, 0x91, 0x46, 0xeb, 0xd6, 0x3f, 0xed, 0x75, 0xc9,
|
||||||
|
0x32, 0x7b, 0x9f, 0x83, 0xf6, 0x4c, 0x33, 0xb3, 0x35, 0x31, 0x92, 0xa0, 0xb3, 0x57, 0xcf, 0x7e, 0xb3, 0x77, 0xd5, 0xff,
|
||||||
|
0x64, 0x5b, 0xfc, 0x33, 0xeb, 0x9f, 0x83, 0x0c, 0xca, 0x7e, 0xfd, 0xb3, 0x75, 0x9c, 0xb9, 0x4e, 0x3a, 0x57, 0x53, 0xce,
|
||||||
|
0xb3, 0xb9, 0xba, 0x9d, 0x6d, 0x31, 0xdb, 0x33, 0x0f, 0x77, 0xea, 0x9f, 0xe5, 0x18, 0x9a, 0xce, 0xac, 0xf6, 0xdd, 0xb9,
|
||||||
|
0xb2, 0xdf, 0xb5, 0xff, 0x9f, 0x8f, 0x72, 0x79, 0xd7, 0xfe, 0x7f, 0x7f, 0xfd, 0x3b, 0x4b, 0xdd, 0xcd, 0xa5, 0xbf, 0xa7,
|
||||||
|
0xff, 0x9f, 0xfc, 0x84, 0x7a, 0xfd, 0x73, 0xeb, 0xf1, 0xbf, 0xf2, 0x09, 0xfd, 0xfe, 0xff, 0xea, 0xb3, 0x67, 0xcf, 0xff,
|
||||||
|
0x66, 0xfb, 0xff, 0xde, 0x37, 0x9b, 0x3d, 0xff, 0xdf, 0x1b, 0x3b, 0x90, 0x81, 0x6d, 0x31, 0x8d, 0x4a, 0x9d, 0xb6, 0xd2,
|
||||||
|
0xd9, 0xf1, 0x3f, 0xad, 0x0c, 0xea, 0xfe, 0x38, 0xe6, 0x1c, 0x5c, 0x59, 0xcf, 0x5d, 0xff, 0xaf, 0xc7, 0x01, 0xac, 0xef,
|
||||||
|
0x52, 0xac, 0xef, 0x1d, 0xdc, 0x75, 0xfd, 0xbf, 0x6e, 0xa5, 0xea, 0x7d, 0x8d, 0xbd, 0x3b, 0x0b, 0x52, 0xc8, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0xc0, 0xef, 0xcf, 0x10, 0xf7, 0x9e, 0xd6, 0x9e, 0x24, 0xb4, 0x4f, 0x9e, 0xdf, 0xee, 0xe5, 0xc1,
|
||||||
|
0x2a, 0x73, 0x67, 0x56, 0x52, 0xc3, 0xfb, 0xcf, 0xa8, 0x5f, 0x07, 0x49, 0xef, 0xce, 0x13, 0xe0, 0xd3, 0x67, 0xbf, 0xd9,
|
||||||
|
0xce, 0xde, 0x4e, 0x24, 0x34, 0x52, 0x5e, 0x83, 0x89, 0x04, 0x59, 0x16, 0x33, 0xdc, 0x76, 0xe7, 0x39, 0x9f, 0x4c, 0xe3,
|
||||||
|
0xcc, 0xa5, 0xce, 0x6b, 0x33, 0x41, 0xa6, 0x9c, 0xbd, 0xef, 0xd5, 0x3f, 0xcd, 0xb4, 0x59, 0x06, 0x92, 0xe9, 0x73, 0x33,
|
||||||
|
0x23, 0xf6, 0x52, 0xad, 0x29, 0xd6, 0xe1, 0x2c, 0x75, 0x54, 0x9d, 0x09, 0x74, 0x9d, 0x32, 0xca, 0xe6, 0xdf, 0xad, 0xda,
|
||||||
|
0xa0, 0x93, 0x35, 0xcc, 0xf0, 0xc8, 0x84, 0xb3, 0xea, 0x9f, 0xee, 0xff, 0xf5, 0xfa, 0xd7, 0xb7, 0xb7, 0xe9, 0xfa, 0xaf,
|
||||||
|
0x47, 0x9b, 0xec, 0xf6, 0xca, 0x19, 0xcc, 0xb8, 0x7e, 0xa6, 0xfe, 0xab, 0x2c, 0x77, 0x9a, 0x33, 0xb7, 0xd6, 0x67, 0xfc,
|
||||||
|
0x5e, 0x7f, 0xda, 0x6c, 0xfd, 0x73, 0xbc, 0x87, 0x67, 0x78, 0x9c, 0xd1, 0x27, 0xe6, 0x00, 0xdd, 0x39, 0x5f, 0xe8, 0xd5,
|
||||||
|
0x38, 0xa3, 0xc7, 0x9b, 0x5a, 0xf6, 0x2f, 0x9b, 0xfb, 0x6e, 0x8e, 0x7a, 0x9d, 0xbc, 0x69, 0xcb, 0xc8, 0xc7, 0xae, 0xa5,
|
||||||
|
0x3a, 0x9f, 0xdf, 0x9f, 0xe5, 0x3c, 0x87, 0xaf, 0x57, 0xea, 0x7f, 0x9d, 0x53, 0x3d, 0xab, 0x7f, 0x16, 0x23, 0x1d, 0xf3,
|
||||||
|
0xc7, 0xd4, 0x3f, 0xad, 0xfa, 0x67, 0xb8, 0xfe, 0x9d, 0x2d, 0x2a, 0x03, 0xe7, 0x88, 0x69, 0xcf, 0xe5, 0x7e, 0xfa, 0x7f,
|
||||||
|
0x98, 0xaa, 0xe3, 0x69, 0xde, 0x7d, 0x64, 0xb8, 0xe3, 0x9d, 0xfd, 0x64, 0xf8, 0x77, 0xba, 0x77, 0xe5, 0x0e, 0x1e, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0x3f, 0x29, 0x9c, 0x79, 0xf2, 0x9a, 0xf6, 0x7f, 0xcb, 0xde, 0xf9, 0xab, 0xee, 0x1c,
|
||||||
|
0xa4, 0xb9, 0xcc, 0x96, 0xd7, 0xf2, 0xdf, 0xeb, 0xff, 0x07, 0x3d, 0x31, 0x53, 0x5a, 0x27, 0x5d, 0xff, 0x1a, 0x4b, 0x89,
|
||||||
|
0x9c, 0x2c, 0x29, 0xcb, 0x67, 0xdf, 0xfd, 0x39, 0xd4, 0xd7, 0x09, 0xd9, 0x34, 0xd3, 0xca, 0xb3, 0x39, 0xa5, 0x7e, 0x6e,
|
||||||
|
0xfe, 0x2c, 0x7b, 0x7f, 0x52, 0xb5, 0x94, 0x93, 0xda, 0x39, 0xca, 0x2a, 0x4f, 0xd6, 0xf8, 0xa4, 0xfe, 0xf5, 0xfe, 0xf2,
|
||||||
|
0xae, 0xfa, 0x4f, 0x64, 0xaf, 0xfb, 0xfb, 0x7f, 0xa7, 0xfe, 0xaf, 0x07, 0xd5, 0x3f, 0x8b, 0x54, 0x59, 0x86, 0x92, 0x75,
|
||||||
|
0xdd, 0x1e, 0xea, 0xb5, 0x39, 0xb7, 0x71, 0x96, 0x7f, 0x95, 0x76, 0xfd, 0x33, 0x94, 0xb1, 0xeb, 0x2d, 0x27, 0x87, 0xa3,
|
||||||
|
0x47, 0x56, 0xaf, 0x65, 0x30, 0x59, 0x9b, 0xad, 0x19, 0xe2, 0xab, 0x09, 0xbf, 0x1c, 0x67, 0xaf, 0x27, 0xfa, 0xff, 0x8c,
|
||||||
|
0xd4, 0xbf, 0x3a, 0xb6, 0xa3, 0x32, 0x37, 0x6b, 0xe7, 0xdc, 0xab, 0x3f, 0xea, 0x62, 0xae, 0xff, 0x7f, 0x6d, 0x9c, 0xdf,
|
||||||
|
0xdc, 0x9b, 0xbd, 0x3c, 0xa9, 0x7f, 0x6d, 0x06, 0xef, 0x67, 0x65, 0x72, 0xf3, 0x90, 0xb3, 0xdf, 0x3f, 0x21, 0x45, 0x99,
|
||||||
|
0xe3, 0xdc, 0xe5, 0xc9, 0x11, 0xf5, 0x13, 0xd7, 0xb6, 0xb3, 0x39, 0xd9, 0x0c, 0x8e, 0x32, 0x7c, 0x7f, 0x1b, 0x9d, 0xb7,
|
||||||
|
0x44, 0x2e, 0xae, 0x9b, 0x7f, 0xc6, 0x5c, 0xd4, 0xe6, 0xdb, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9e, 0xfb, 0xfc,
|
||||||
|
0x37, 0x5b, 0x19, 0xea, 0x99, 0x6c, 0xb8, 0x67, 0xa7, 0xaf, 0x8f, 0x66, 0x64, 0xe6, 0xfe, 0x27, 0x7f, 0x0a, 0xc9, 0x90,
|
||||||
|
0xdd, 0x99, 0x65, 0xf9, 0x44, 0xfd, 0xeb, 0x19, 0xc0, 0x6e, 0x66, 0xd0, 0xde, 0xff, 0xd4, 0xfc, 0xd7, 0xfd, 0xdb, 0x05,
|
||||||
|
0x4f, 0x38, 0x07, 0xa8, 0x26, 0xaf, 0xa7, 0xe7, 0xf9, 0xe5, 0x19, 0xc7, 0x81, 0xfd, 0xf3, 0x3f, 0xfb, 0xff, 0xcf, 0x38,
|
||||||
|
0xfe, 0xeb, 0xff, 0xe5, 0x56, 0x2b, 0x89, 0xe7, 0x94, 0x92, 0xe1, 0x7c, 0xb7, 0x2d, 0xe7, 0x49, 0xb3, 0x72, 0x03, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x5f, 0xfa, 0x0b };
|
||||||
|
|
||||||
|
// Font characters rectangles data
|
||||||
|
static const Rectangle cherryFontRecs[95] = {
|
||||||
|
{ 4, 4, 5 , 15 },
|
||||||
|
{ 17, 4, 3 , 10 },
|
||||||
|
{ 28, 4, 5 , 2 },
|
||||||
|
{ 41, 4, 10 , 10 },
|
||||||
|
{ 59, 4, 7 , 11 },
|
||||||
|
{ 74, 4, 7 , 10 },
|
||||||
|
{ 89, 4, 8 , 10 },
|
||||||
|
{ 105, 4, 1 , 2 },
|
||||||
|
{ 114, 4, 3 , 10 },
|
||||||
|
{ 125, 4, 3 , 10 },
|
||||||
|
{ 136, 4, 3 , 3 },
|
||||||
|
{ 147, 4, 7 , 7 },
|
||||||
|
{ 162, 4, 2 , 2 },
|
||||||
|
{ 172, 4, 6 , 3 },
|
||||||
|
{ 186, 4, 1 , 1 },
|
||||||
|
{ 195, 4, 4 , 10 },
|
||||||
|
{ 207, 4, 5 , 8 },
|
||||||
|
{ 220, 4, 5 , 8 },
|
||||||
|
{ 233, 4, 5 , 8 },
|
||||||
|
{ 4, 27, 5 , 8 },
|
||||||
|
{ 17, 27, 5 , 8 },
|
||||||
|
{ 30, 27, 5 , 8 },
|
||||||
|
{ 43, 27, 5 , 8 },
|
||||||
|
{ 56, 27, 5 , 8 },
|
||||||
|
{ 69, 27, 5 , 8 },
|
||||||
|
{ 82, 27, 5 , 8 },
|
||||||
|
{ 95, 27, 3 , 10 },
|
||||||
|
{ 106, 27, 3 , 12 },
|
||||||
|
{ 117, 27, 6 , 7 },
|
||||||
|
{ 131, 27, 6 , 4 },
|
||||||
|
{ 145, 27, 6 , 7 },
|
||||||
|
{ 159, 27, 5 , 10 },
|
||||||
|
{ 172, 27, 8 , 10 },
|
||||||
|
{ 188, 27, 7 , 9 },
|
||||||
|
{ 203, 27, 7 , 9 },
|
||||||
|
{ 218, 27, 6 , 9 },
|
||||||
|
{ 232, 27, 6 , 9 },
|
||||||
|
{ 4, 50, 7 , 9 },
|
||||||
|
{ 19, 50, 6 , 9 },
|
||||||
|
{ 33, 50, 6 , 9 },
|
||||||
|
{ 47, 50, 7 , 9 },
|
||||||
|
{ 62, 50, 3 , 9 },
|
||||||
|
{ 73, 50, 6 , 9 },
|
||||||
|
{ 87, 50, 7 , 9 },
|
||||||
|
{ 102, 50, 7 , 9 },
|
||||||
|
{ 117, 50, 11 , 9 },
|
||||||
|
{ 136, 50, 8 , 9 },
|
||||||
|
{ 152, 50, 6 , 9 },
|
||||||
|
{ 166, 50, 6 , 9 },
|
||||||
|
{ 180, 50, 7 , 9 },
|
||||||
|
{ 195, 50, 7 , 9 },
|
||||||
|
{ 210, 50, 6 , 9 },
|
||||||
|
{ 224, 50, 7 , 9 },
|
||||||
|
{ 239, 50, 8 , 9 },
|
||||||
|
{ 4, 73, 9 , 9 },
|
||||||
|
{ 21, 73, 11 , 9 },
|
||||||
|
{ 40, 73, 7 , 9 },
|
||||||
|
{ 55, 73, 7 , 9 },
|
||||||
|
{ 70, 73, 7 , 9 },
|
||||||
|
{ 85, 73, 3 , 9 },
|
||||||
|
{ 96, 73, 4 , 10 },
|
||||||
|
{ 108, 73, 3 , 9 },
|
||||||
|
{ 119, 73, 3 , 3 },
|
||||||
|
{ 130, 73, 7 , 2 },
|
||||||
|
{ 145, 73, 2 , 2 },
|
||||||
|
{ 155, 73, 6 , 6 },
|
||||||
|
{ 169, 73, 6 , 9 },
|
||||||
|
{ 183, 73, 6 , 6 },
|
||||||
|
{ 197, 73, 6 , 9 },
|
||||||
|
{ 211, 73, 6 , 6 },
|
||||||
|
{ 225, 73, 5 , 9 },
|
||||||
|
{ 238, 73, 5 , 9 },
|
||||||
|
{ 4, 96, 7 , 9 },
|
||||||
|
{ 19, 96, 3 , 7 },
|
||||||
|
{ 30, 96, 3 , 8 },
|
||||||
|
{ 41, 96, 6 , 9 },
|
||||||
|
{ 55, 96, 4 , 9 },
|
||||||
|
{ 67, 96, 11 , 6 },
|
||||||
|
{ 86, 96, 7 , 6 },
|
||||||
|
{ 101, 96, 5 , 6 },
|
||||||
|
{ 114, 96, 6 , 8 },
|
||||||
|
{ 128, 96, 6 , 8 },
|
||||||
|
{ 142, 96, 5 , 6 },
|
||||||
|
{ 155, 96, 5 , 6 },
|
||||||
|
{ 168, 96, 5 , 9 },
|
||||||
|
{ 181, 96, 7 , 6 },
|
||||||
|
{ 196, 96, 7 , 6 },
|
||||||
|
{ 211, 96, 11 , 6 },
|
||||||
|
{ 230, 96, 7 , 6 },
|
||||||
|
{ 4, 119, 7 , 8 },
|
||||||
|
{ 19, 119, 6 , 6 },
|
||||||
|
{ 33, 119, 5 , 9 },
|
||||||
|
{ 46, 119, 1 , 9 },
|
||||||
|
{ 55, 119, 5 , 9 },
|
||||||
|
{ 68, 119, 7 , 3 },
|
||||||
|
};
|
||||||
|
|
||||||
|
// Font characters info data
|
||||||
|
// NOTE: No chars.image data provided
|
||||||
|
static const GlyphInfo cherryFontChars[95] = {
|
||||||
|
{ 32, 0, 12, 5, { 0 }},
|
||||||
|
{ 33, 0, 2, 4, { 0 }},
|
||||||
|
{ 34, 0, 2, 6, { 0 }},
|
||||||
|
{ 35, 0, 2, 11, { 0 }},
|
||||||
|
{ 36, 0, 2, 8, { 0 }},
|
||||||
|
{ 37, 0, 2, 8, { 0 }},
|
||||||
|
{ 38, 0, 2, 9, { 0 }},
|
||||||
|
{ 39, 0, 2, 2, { 0 }},
|
||||||
|
{ 40, 0, 2, 4, { 0 }},
|
||||||
|
{ 41, 0, 2, 4, { 0 }},
|
||||||
|
{ 42, 0, 2, 4, { 0 }},
|
||||||
|
{ 43, 0, 4, 8, { 0 }},
|
||||||
|
{ 44, 0, 11, 3, { 0 }},
|
||||||
|
{ 45, 0, 6, 7, { 0 }},
|
||||||
|
{ 46, 0, 11, 2, { 0 }},
|
||||||
|
{ 47, 0, 2, 5, { 0 }},
|
||||||
|
{ 48, 0, 4, 6, { 0 }},
|
||||||
|
{ 49, 0, 4, 6, { 0 }},
|
||||||
|
{ 50, 0, 4, 6, { 0 }},
|
||||||
|
{ 51, 0, 4, 6, { 0 }},
|
||||||
|
{ 52, 0, 4, 6, { 0 }},
|
||||||
|
{ 53, 0, 4, 6, { 0 }},
|
||||||
|
{ 54, 0, 4, 6, { 0 }},
|
||||||
|
{ 55, 0, 4, 6, { 0 }},
|
||||||
|
{ 56, 0, 4, 6, { 0 }},
|
||||||
|
{ 57, 0, 4, 6, { 0 }},
|
||||||
|
{ 58, 0, 2, 4, { 0 }},
|
||||||
|
{ 59, 0, 2, 4, { 0 }},
|
||||||
|
{ 60, 0, 4, 7, { 0 }},
|
||||||
|
{ 61, 0, 5, 7, { 0 }},
|
||||||
|
{ 62, 0, 4, 7, { 0 }},
|
||||||
|
{ 63, 0, 2, 6, { 0 }},
|
||||||
|
{ 64, 0, 2, 9, { 0 }},
|
||||||
|
{ 65, 0, 3, 8, { 0 }},
|
||||||
|
{ 66, 0, 3, 8, { 0 }},
|
||||||
|
{ 67, 0, 3, 7, { 0 }},
|
||||||
|
{ 68, 0, 3, 7, { 0 }},
|
||||||
|
{ 69, 0, 3, 8, { 0 }},
|
||||||
|
{ 70, 0, 3, 7, { 0 }},
|
||||||
|
{ 71, 0, 3, 7, { 0 }},
|
||||||
|
{ 72, 0, 3, 8, { 0 }},
|
||||||
|
{ 73, 0, 3, 4, { 0 }},
|
||||||
|
{ 74, 0, 3, 7, { 0 }},
|
||||||
|
{ 75, 0, 3, 8, { 0 }},
|
||||||
|
{ 76, 0, 3, 8, { 0 }},
|
||||||
|
{ 77, 0, 3, 12, { 0 }},
|
||||||
|
{ 78, 0, 3, 9, { 0 }},
|
||||||
|
{ 79, 0, 3, 7, { 0 }},
|
||||||
|
{ 80, 0, 3, 7, { 0 }},
|
||||||
|
{ 81, 0, 3, 8, { 0 }},
|
||||||
|
{ 82, 0, 3, 8, { 0 }},
|
||||||
|
{ 83, 0, 3, 7, { 0 }},
|
||||||
|
{ 84, 0, 3, 8, { 0 }},
|
||||||
|
{ 85, 0, 3, 9, { 0 }},
|
||||||
|
{ 86, 0, 3, 10, { 0 }},
|
||||||
|
{ 87, 0, 3, 12, { 0 }},
|
||||||
|
{ 88, 0, 3, 8, { 0 }},
|
||||||
|
{ 89, 0, 3, 8, { 0 }},
|
||||||
|
{ 90, 0, 3, 8, { 0 }},
|
||||||
|
{ 91, 0, 3, 4, { 0 }},
|
||||||
|
{ 92, 0, 2, 5, { 0 }},
|
||||||
|
{ 93, 0, 3, 4, { 0 }},
|
||||||
|
{ 94, 0, 3, 4, { 0 }},
|
||||||
|
{ 95, 0, 10, 8, { 0 }},
|
||||||
|
{ 96, 0, 2, 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, 6, { 0 }},
|
||||||
|
{ 103, 0, 5, 6, { 0 }},
|
||||||
|
{ 104, 0, 3, 8, { 0 }},
|
||||||
|
{ 105, 0, 5, 4, { 0 }},
|
||||||
|
{ 106, 0, 5, 4, { 0 }},
|
||||||
|
{ 107, 0, 3, 7, { 0 }},
|
||||||
|
{ 108, 0, 3, 5, { 0 }},
|
||||||
|
{ 109, 0, 6, 12, { 0 }},
|
||||||
|
{ 110, 0, 6, 8, { 0 }},
|
||||||
|
{ 111, 0, 6, 6, { 0 }},
|
||||||
|
{ 112, 0, 6, 7, { 0 }},
|
||||||
|
{ 113, 0, 6, 7, { 0 }},
|
||||||
|
{ 114, 0, 6, 6, { 0 }},
|
||||||
|
{ 115, 0, 6, 6, { 0 }},
|
||||||
|
{ 116, 0, 3, 6, { 0 }},
|
||||||
|
{ 117, 0, 6, 8, { 0 }},
|
||||||
|
{ 118, 0, 6, 8, { 0 }},
|
||||||
|
{ 119, 0, 6, 12, { 0 }},
|
||||||
|
{ 120, 0, 6, 8, { 0 }},
|
||||||
|
{ 121, 0, 6, 8, { 0 }},
|
||||||
|
{ 122, 0, 6, 7, { 0 }},
|
||||||
|
{ 123, 0, 3, 6, { 0 }},
|
||||||
|
{ 124, 0, 3, 2, { 0 }},
|
||||||
|
{ 125, 0, 3, 6, { 0 }},
|
||||||
|
{ 126, 0, 6, 8, { 0 }},
|
||||||
|
};
|
||||||
|
|
||||||
|
// Style loading function: cherry
|
||||||
|
static void GuiLoadStyleCherry(void)
|
||||||
|
{
|
||||||
|
// Load style properties provided
|
||||||
|
// NOTE: Default properties are propagated
|
||||||
|
for (int i = 0; i < CHERRY_STYLE_PROPS_COUNT; i++)
|
||||||
|
{
|
||||||
|
GuiSetStyle(cherryStyleProps[i].controlId, cherryStyleProps[i].propertyId, cherryStyleProps[i].propertyValue);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Custom font loading
|
||||||
|
// NOTE: Compressed font image data (DEFLATE), it requires DecompressData() function
|
||||||
|
int cherryFontDataSize = 0;
|
||||||
|
unsigned char *data = DecompressData(cherryFontData, CHERRY_COMPRESSED_DATA_SIZE, &cherryFontDataSize);
|
||||||
|
Image imFont = { data, 256, 256, 1, 2 };
|
||||||
|
|
||||||
|
Font font = { 0 };
|
||||||
|
font.baseSize = 15;
|
||||||
|
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, cherryFontRecs, 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, cherryFontChars, 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 = { 17, 30, 2, 2 };
|
||||||
|
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
|
||||||
|
}
|
||||||
24
styles/cherry/cherry.txt.rgs
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#
|
||||||
|
# rgs style text file (v3.1) - raygui style file generated using rGuiStyler
|
||||||
|
#
|
||||||
|
# Style properties:
|
||||||
|
# f <gen_font_size> <charmap_file> <font_file>
|
||||||
|
# p <control_id> <property_id> <property_value> <property_name>
|
||||||
|
#
|
||||||
|
f 15 0 Westington.ttf
|
||||||
|
p 00 00 0xda5757ff DEFAULT_BORDER_COLOR_NORMAL
|
||||||
|
p 00 01 0x753233ff DEFAULT_BASE_COLOR_NORMAL
|
||||||
|
p 00 02 0xe17373ff DEFAULT_TEXT_COLOR_NORMAL
|
||||||
|
p 00 03 0xfaaa97ff DEFAULT_BORDER_COLOR_FOCUSED
|
||||||
|
p 00 04 0xe06262ff DEFAULT_BASE_COLOR_FOCUSED
|
||||||
|
p 00 05 0xfdb4aaff DEFAULT_TEXT_COLOR_FOCUSED
|
||||||
|
p 00 06 0xe03c46ff DEFAULT_BORDER_COLOR_PRESSED
|
||||||
|
p 00 07 0x5b1e20ff DEFAULT_BASE_COLOR_PRESSED
|
||||||
|
p 00 08 0xc2474fff DEFAULT_TEXT_COLOR_PRESSED
|
||||||
|
p 00 09 0xa19292ff DEFAULT_BORDER_COLOR_DISABLED
|
||||||
|
p 00 10 0x706060ff DEFAULT_BASE_COLOR_DISABLED
|
||||||
|
p 00 11 0x9e8585ff DEFAULT_TEXT_COLOR_DISABLED
|
||||||
|
p 00 16 0x0000000f TEXT_SIZE
|
||||||
|
p 00 17 0x00000000 TEXT_SPACING
|
||||||
|
p 00 18 0xfb8170ff DEFAULT_LINE_COLOR
|
||||||
|
p 00 19 0x3a1720ff DEFAULT_BACKGROUND_COLOR
|
||||||
345
styles/cyber/cyber.h
Normal file
@ -0,0 +1,345 @@
|
|||||||
|
//////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// //
|
||||||
|
// 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-2023 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);
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------
|
||||||
|
|
||||||
|
// TODO: Custom user style setup: Set specific properties here (if required)
|
||||||
|
// i.e. Controls specific BORDER_WIDTH, TEXT_PADDING, TEXT_ALIGNMENT
|
||||||
|
}
|
||||||
24
styles/cyber/cyber.txt.rgs
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#
|
||||||
|
# rgs style text file (v3.1) - raygui style file generated using rGuiStyler
|
||||||
|
#
|
||||||
|
# Style properties:
|
||||||
|
# f <gen_font_size> <charmap_file> <font_file>
|
||||||
|
# p <control_id> <property_id> <property_value> <property_name>
|
||||||
|
#
|
||||||
|
f 14 0 Kyrou 7 Wide.ttf
|
||||||
|
p 00 00 0x2f7486ff DEFAULT_BORDER_COLOR_NORMAL
|
||||||
|
p 00 01 0x024658ff DEFAULT_BASE_COLOR_NORMAL
|
||||||
|
p 00 02 0x51bfd3ff DEFAULT_TEXT_COLOR_NORMAL
|
||||||
|
p 00 03 0x82cde0ff DEFAULT_BORDER_COLOR_FOCUSED
|
||||||
|
p 00 04 0x3299b4ff DEFAULT_BASE_COLOR_FOCUSED
|
||||||
|
p 00 05 0xb6e1eaff DEFAULT_TEXT_COLOR_FOCUSED
|
||||||
|
p 00 06 0xeb7630ff DEFAULT_BORDER_COLOR_PRESSED
|
||||||
|
p 00 07 0xffbc51ff DEFAULT_BASE_COLOR_PRESSED
|
||||||
|
p 00 08 0xd86f36ff DEFAULT_TEXT_COLOR_PRESSED
|
||||||
|
p 00 09 0x134b5aff DEFAULT_BORDER_COLOR_DISABLED
|
||||||
|
p 00 10 0x02313dff DEFAULT_BASE_COLOR_DISABLED
|
||||||
|
p 00 11 0x17505fff DEFAULT_TEXT_COLOR_DISABLED
|
||||||
|
p 00 16 0x0000000e DEFAULT_TEXT_SIZE
|
||||||
|
p 00 17 0x00000000 DEFAULT_TEXT_SPACING
|
||||||
|
p 00 18 0x81c0d0ff DEFAULT_LINE_COLOR
|
||||||
|
p 00 19 0x00222bff DEFAULT_BACKGROUND_COLOR
|
||||||
BIN
styles/dark/PixelOperator.ttf
Normal file
16
styles/dark/README.md
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
style: dark
|
||||||
|
--------------
|
||||||
|
Classical dark style with an extra high-def colour touch! Elegant and professional, perfect for the expensive tools!
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
screenshot
|
||||||
|
-----------
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
about font
|
||||||
|
-----------
|
||||||
|
"Pixel Operator" font by de Jayvee Enaguas.
|
||||||
|
|
||||||
|
CC0 1.0 Universal, downloaded from dafont.com: [pixel-operator](https://www.dafont.com/pixel-operator.font)
|
||||||
347
styles/dark/dark.h
Normal file
@ -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-2023 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
|
||||||
|
}
|
||||||
BIN
styles/dark/dark.rgs
Normal file
121
styles/dark/font_LICENSE.txt
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
Creative Commons Legal Code
|
||||||
|
|
||||||
|
CC0 1.0 Universal
|
||||||
|
|
||||||
|
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
|
||||||
|
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
|
||||||
|
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
|
||||||
|
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
|
||||||
|
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
|
||||||
|
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
|
||||||
|
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
|
||||||
|
HEREUNDER.
|
||||||
|
|
||||||
|
Statement of Purpose
|
||||||
|
|
||||||
|
The laws of most jurisdictions throughout the world automatically confer
|
||||||
|
exclusive Copyright and Related Rights (defined below) upon the creator
|
||||||
|
and subsequent owner(s) (each and all, an "owner") of an original work of
|
||||||
|
authorship and/or a database (each, a "Work").
|
||||||
|
|
||||||
|
Certain owners wish to permanently relinquish those rights to a Work for
|
||||||
|
the purpose of contributing to a commons of creative, cultural and
|
||||||
|
scientific works ("Commons") that the public can reliably and without fear
|
||||||
|
of later claims of infringement build upon, modify, incorporate in other
|
||||||
|
works, reuse and redistribute as freely as possible in any form whatsoever
|
||||||
|
and for any purposes, including without limitation commercial purposes.
|
||||||
|
These owners may contribute to the Commons to promote the ideal of a free
|
||||||
|
culture and the further production of creative, cultural and scientific
|
||||||
|
works, or to gain reputation or greater distribution for their Work in
|
||||||
|
part through the use and efforts of others.
|
||||||
|
|
||||||
|
For these and/or other purposes and motivations, and without any
|
||||||
|
expectation of additional consideration or compensation, the person
|
||||||
|
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
|
||||||
|
is an owner of Copyright and Related Rights in the Work, voluntarily
|
||||||
|
elects to apply CC0 to the Work and publicly distribute the Work under its
|
||||||
|
terms, with knowledge of his or her Copyright and Related Rights in the
|
||||||
|
Work and the meaning and intended legal effect of CC0 on those rights.
|
||||||
|
|
||||||
|
1. Copyright and Related Rights. A Work made available under CC0 may be
|
||||||
|
protected by copyright and related or neighboring rights ("Copyright and
|
||||||
|
Related Rights"). Copyright and Related Rights include, but are not
|
||||||
|
limited to, the following:
|
||||||
|
|
||||||
|
i. the right to reproduce, adapt, distribute, perform, display,
|
||||||
|
communicate, and translate a Work;
|
||||||
|
ii. moral rights retained by the original author(s) and/or performer(s);
|
||||||
|
iii. publicity and privacy rights pertaining to a person's image or
|
||||||
|
likeness depicted in a Work;
|
||||||
|
iv. rights protecting against unfair competition in regards to a Work,
|
||||||
|
subject to the limitations in paragraph 4(a), below;
|
||||||
|
v. rights protecting the extraction, dissemination, use and reuse of data
|
||||||
|
in a Work;
|
||||||
|
vi. database rights (such as those arising under Directive 96/9/EC of the
|
||||||
|
European Parliament and of the Council of 11 March 1996 on the legal
|
||||||
|
protection of databases, and under any national implementation
|
||||||
|
thereof, including any amended or successor version of such
|
||||||
|
directive); and
|
||||||
|
vii. other similar, equivalent or corresponding rights throughout the
|
||||||
|
world based on applicable law or treaty, and any national
|
||||||
|
implementations thereof.
|
||||||
|
|
||||||
|
2. Waiver. To the greatest extent permitted by, but not in contravention
|
||||||
|
of, applicable law, Affirmer hereby overtly, fully, permanently,
|
||||||
|
irrevocably and unconditionally waives, abandons, and surrenders all of
|
||||||
|
Affirmer's Copyright and Related Rights and associated claims and causes
|
||||||
|
of action, whether now known or unknown (including existing as well as
|
||||||
|
future claims and causes of action), in the Work (i) in all territories
|
||||||
|
worldwide, (ii) for the maximum duration provided by applicable law or
|
||||||
|
treaty (including future time extensions), (iii) in any current or future
|
||||||
|
medium and for any number of copies, and (iv) for any purpose whatsoever,
|
||||||
|
including without limitation commercial, advertising or promotional
|
||||||
|
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
|
||||||
|
member of the public at large and to the detriment of Affirmer's heirs and
|
||||||
|
successors, fully intending that such Waiver shall not be subject to
|
||||||
|
revocation, rescission, cancellation, termination, or any other legal or
|
||||||
|
equitable action to disrupt the quiet enjoyment of the Work by the public
|
||||||
|
as contemplated by Affirmer's express Statement of Purpose.
|
||||||
|
|
||||||
|
3. Public License Fallback. Should any part of the Waiver for any reason
|
||||||
|
be judged legally invalid or ineffective under applicable law, then the
|
||||||
|
Waiver shall be preserved to the maximum extent permitted taking into
|
||||||
|
account Affirmer's express Statement of Purpose. In addition, to the
|
||||||
|
extent the Waiver is so judged Affirmer hereby grants to each affected
|
||||||
|
person a royalty-free, non transferable, non sublicensable, non exclusive,
|
||||||
|
irrevocable and unconditional license to exercise Affirmer's Copyright and
|
||||||
|
Related Rights in the Work (i) in all territories worldwide, (ii) for the
|
||||||
|
maximum duration provided by applicable law or treaty (including future
|
||||||
|
time extensions), (iii) in any current or future medium and for any number
|
||||||
|
of copies, and (iv) for any purpose whatsoever, including without
|
||||||
|
limitation commercial, advertising or promotional purposes (the
|
||||||
|
"License"). The License shall be deemed effective as of the date CC0 was
|
||||||
|
applied by Affirmer to the Work. Should any part of the License for any
|
||||||
|
reason be judged legally invalid or ineffective under applicable law, such
|
||||||
|
partial invalidity or ineffectiveness shall not invalidate the remainder
|
||||||
|
of the License, and in such case Affirmer hereby affirms that he or she
|
||||||
|
will not (i) exercise any of his or her remaining Copyright and Related
|
||||||
|
Rights in the Work or (ii) assert any associated claims and causes of
|
||||||
|
action with respect to the Work, in either case contrary to Affirmer's
|
||||||
|
express Statement of Purpose.
|
||||||
|
|
||||||
|
4. Limitations and Disclaimers.
|
||||||
|
|
||||||
|
a. No trademark or patent rights held by Affirmer are waived, abandoned,
|
||||||
|
surrendered, licensed or otherwise affected by this document.
|
||||||
|
b. Affirmer offers the Work as-is and makes no representations or
|
||||||
|
warranties of any kind concerning the Work, express, implied,
|
||||||
|
statutory or otherwise, including without limitation warranties of
|
||||||
|
title, merchantability, fitness for a particular purpose, non
|
||||||
|
infringement, or the absence of latent or other defects, accuracy, or
|
||||||
|
the present or absence of errors, whether or not discoverable, all to
|
||||||
|
the greatest extent permissible under applicable law.
|
||||||
|
c. Affirmer disclaims responsibility for clearing rights of other persons
|
||||||
|
that may apply to the Work or any use thereof, including without
|
||||||
|
limitation any person's Copyright and Related Rights in the Work.
|
||||||
|
Further, Affirmer disclaims responsibility for obtaining any necessary
|
||||||
|
consents, permissions or other rights required for any use of the
|
||||||
|
Work.
|
||||||
|
d. Affirmer understands and acknowledges that Creative Commons is not a
|
||||||
|
party to this document and has no duty or obligation with respect to
|
||||||
|
this CC0 or use of the Work.
|
||||||
BIN
styles/dark/screenshot.png
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
styles/dark/style_table.png
Normal file
|
After Width: | Height: | Size: 28 KiB |