Commit Graph

68 Commits

Author SHA1 Message Date
bc06a3fee8 implement font deletion 2026-03-26 21:01:43 +01:00
d2ab60c824 Fix font bugs 2026-03-25 22:24:54 +01:00
a8fe58ef0f Add debug getters (and somehow text is not rendering :/) 2026-03-25 20:27:23 +01:00
eea0e9844f Fix Vertex Alloc usage at Index Alloc 2026-03-24 22:20:41 +01:00
4777c85f9a Readd font support (not workign yet) 2026-03-22 21:50:53 +01:00
d8efcd41b1 Add a PositionTranslate func and add Errors for TextureSize mismatch 2026-03-21 16:39:55 +01:00
4dab1987d1 Add PD::Image and add a setter for logfilter 2026-03-21 15:52:09 +01:00
baad2ce15c Add Os Bridge into test framework 2026-03-21 14:43:16 +01:00
a86c13b9a3 Refactor PD::Li Pools system, Upgrade PD::Pool and add better logging
- Add ResetFast to Pool using c++20 concept
- Add Put function to Pool
- Use Pool Index instead of pointers in Command
- Add accessor to Li Pools to prevent wrong command usage
- Add Command Formatter
- Use ResetFast for all Pools
- Add Reset func to Li::Vertex (for ResetFast)
- Add Pool Expandor and Put funcs to Lithium pools
- Add getters for GfxDriverBase to PD::Li Pools
2026-03-21 13:35:16 +01:00
afe30a5dbd Add Drawlist
- Add Pool iterator support
- Add Pool Expandability
- Add Pool::Push
- Add Lithium Maths API
- Remove InitPools
- update spirv-helper
2026-03-19 22:06:58 +01:00
186fce803e Add missing sources 2026-03-18 11:37:44 +01:00
e04046720b Work at 3ds support and backend upgrades
- Track textures (not sure if this is done tbh)
- Add lithium formatters and move TextureID, TextureFormat and TextureFilter to lithium
- Only include gl-helper if any glDriver is included
- Add Li::Rect for UV stuff
- Add Li::Texture as Info holder (still thinking of making them to ptrs
- Add Check if textures are still loaded on exit
2026-03-18 09:31:47 +01:00
d4c59e5b61 Add backends
- Renamed GfxOpenGL to GfxOPenGL2
- Added GfxOpenGL3 backend for OpenGL 3.3+
- Added WIP DirectX9 backend
- Added structure for Citro3D
- Added linear Allocator
2026-03-17 16:47:19 +01:00
fe9194b907 More work to drivers
- Add gfx_test
- add texture loading to GfxOpenGL
- add full submit code
- add debug logging
- add construct and destroy functionality to Pool
- add command functionality
- add vertex and index pools to lithium (static and not threadsafe yet)
- Update GfxDriver Matrix with SetViewPort
- Add glfw (only dependency of gfx_test) maybe later required for input driver
2026-03-16 17:33:46 +01:00
4924d86bc0 # Work at gfx driver system
- Update pool to use template allocator directly instead of std::vector
- Add a GfxDriver config Template to be able to modify settings like allocators / Types for specific Drivers
- Add glad
2026-03-16 15:19:12 +01:00
41b612ec0a 0.7.0 rewrite dev
- remove everyting
- keep core
-rename bit_utils to bits
- add formatter for  color
- add float getters to color
- start with new drivers api
2026-03-16 06:37:51 +01:00
1b47ed843f [pd-drivers]: Ad more debug values
[pd-3ds]: Use new debug values
[pd-lithium]: Add functionality to DrawList::Optimize
[pd-ui7]: Add setters for Menu pos ans size
2026-03-12 20:18:27 +01:00
02d2200edd Fix Render discard issue [pd-3ds]
- Clip Rects do now not discard when they move out of screen (cause the maths ends in < 0 which is not working with u32)
- Fixing ui7 crash wehn im input was nullptr
2026-03-10 18:57:29 +01:00
97efca5173 Merge branch 'stable' of https://github.com/tobid7/palladium into stable 2026-03-09 20:47:53 +01:00
68cc809555 Fix Drawlist::Clear / Add HashID / FNV Type traits 2026-03-09 20:46:41 +01:00
da0f7320c8 Add stuff for cmake find_package
- Add build* to gitignore
- Fix year in license file
- other changes are result of clang-format
2026-03-01 21:41:53 +01:00
8ee7006d2c Export OS correctly 2026-01-30 20:19:13 +01:00
683c226ce0 Fix MSVC dll building 2026-01-29 20:17:04 +01:00
21b45f5855 WIP: Add CLipRects to UI7 Layouts
- Added Scissor Support to Font Rendering
2026-01-28 07:11:56 +01:00
090656b30c Fix close sym input logic 2026-01-27 08:06:52 +01:00
e8072a064c WIP Backend System Redesign Step 1
- Created 1 Context for Backend Management and Sharing
- Made every class that used a static Backend require the Context or specific Backend
- Bring Back 3ds support
2026-01-26 20:46:27 +01:00
892f8ce0c4 Update License Header Text 2026-01-25 21:12:16 +01:00
c373b15bab remove drivers pd_p_api header 2026-01-25 21:00:50 +01:00
fb46f4d36a Let's just use 1 PD_API header 2026-01-25 20:57:14 +01:00
337c016824 Unfiy all sub projects back into 1 libpalladium 2026-01-25 20:44:52 +01:00
57634cbf4b # Rewrite 5
- Move Libraries Source into pd directory and give them all their own CMakeLists.txt
- Partial rewrite core (color, autogenerated vec), lithium (now uses UNIQUE PTR for Commands), UI7
- Use MenuV2 as new standart in UI7
- Implementz ViewPort Pre alpha to UI7
- Add Line Drawing to DrawList (not Working)
- Implement a Complete new drievrs API (static Drivers)
- NO SUPPORT FOR SHARED LIBRARY BUILDS IN VERSION 5 YET
- Add Tools to Autogenerate Headers and Stuff
2025-06-22 21:05:09 +02:00
963fa72e41 # Changes
- Fix PD Image
- Add some beta RLE Compress Decompress variants
2025-06-16 20:50:56 +02:00
271defffca # Fix Color Code
- Fix extreme stupid bug in color.hpp (returing m_r for all...)
- Fix Collor::Hex  with int cast to make sure to have valid hex output (u8 gets interpreted as char)
2025-06-01 18:07:14 +02:00
f75f7067ff # Fixes
- Fix LinearAlloc bug not using *sizeof(T)
- Add WaitForRead to net backend
- Add a Get func to Tween
- Skip \r in Text Rendering
- Add Citro3D Max Texsize check
2025-05-02 15:09:21 +02:00
13c2869ba8 Initial Cross Platform Work 2025-04-24 16:39:24 +02:00
dbffb7f316 # 0.3.2
Implement Path render API into drawlist
Add some new drawing functions (need to make Rectangle -> RectFilled
Add Menu Border
ReSetup the Menu Input and Rendering API to fix flickering when moving
2025-03-21 16:23:17 +01:00
6738fda55c # 0.3.1-1
- Add Deltatime usage for Overscroll as well as a config value for ids multiplier
- Add Function to Layout to remove all ID Objects
- Add step and precision to DragData as well as setting min and max to their type limits
- Use the Address for now for the id of the DragData (cause with tree nodes opened backwars all DragData will share the same data reference)
- Add a fix to MaxPosition in Layout to be actually the max Position on X axis
2025-03-16 20:03:08 +01:00
35272687f6 # Changes 0.3.1
- Add Layout API and let Menu use it
- Add DragData (for float, double, int, etc)
- Add IO Delta calculation to not require a users delta value
- Add Config Var for SLider drag min size
- Remove Hid::Ref input of Containers as IO DragApi is used
- Containers that accept input will require an ID to function
2025-03-14 15:14:45 +01:00
ba77dc9b42 # 0.3.0
- Fix minor issues
- Add Custom UV Support to Drawlist and Menu Image
- Add DoubleClick to IO Input API
- Add Flashbang Theme (Not completly done)
- Fix Menu glitch when scrolling was possible when not allowed
2025-03-12 21:09:45 +01:00
b94dfc0c53 # 0.2.9-1 HotFix
- Fix Bug where Input is locked for ever when removing a Menu by Changing its name / Not Process it anymore
2025-03-09 20:40:02 +01:00
edf5f387ae # Changes 0.2.9
- Litium Chenge Static Object to set instead of add layer
- Add UI7 Color Selector (Not done)
- Add NoClose flag as well as a is_shown address to set to close menus completly
- Add u32 input for nameless ui7 ids
- Add Debug Vertex/Index counters to DrawLists and IO
- Add an Anywhere Released bool to Input API to decide if object should always react or only if curser is inside its box
- Add Focused Menu System to Drag API to make sure to not care about the menu input process order
- Let Menus only have 1 Drawlist instead of 3
Put Close, Resize, Move, Collapse and Scroll into their own handlers
 - Add a DeadHeader color to make a visual diffrence between Menus and Focused Menu
 - Add a GetRef to Theme for Color edit
 - Fix DrawList Line not rendering if going out of screen
 - Clear All CLipRects after process DrawList
 - Fix SeparatorText glitch
 - Fix Typos
 - Add IO Input Support to Containers
2025-03-09 20:00:47 +01:00
09b1937a8d # Changes 0.2.8
- Fix Flickering problem in StaticText api
- Fix Lagacy and Container HandleScrolling InBox checks
- Add IO Flags define for future
- Implement Single Object Dragging API by IO Context
- Add TreeNodes
- Use ioMenuPadding and ItemSpace
- Add StyleEditorMenu
- Rework ContainerApi to take functions from IO and add an Update function template for Updating internal values if required
- Use new DragApi for MenuCollabse, MenuDragging, MenuResize, SliderDragging and TreeNodes Open/Close
- Add Helper Defines for Metrics Menu [INTERNAL]
- Add TimeTrace as Tree to Metrics as well as other new Data
- Add GetRawObject to StaticText for custom rendering like ui7
- Add DrawlistRegestry to correctly render Menus in their own layer ranges
2025-03-08 13:52:11 +01:00
e282d0ec7e # 0.2.7-2
- Start dev on UI7 IO
- Add NoRezize flag and rezising
- Fix Bug in DebugLabels
- Use view Area for Menu Pos and Size
- Only set Viewarea once in BeginMenu
2025-03-07 14:05:43 +01:00
85e12c45c0 # 0.2.7-1 **HOTFIX**
- Fix nullptr->value access issue in UI7::Context
- Add UI7MenuFlags_NoMove to disable window movement
- Fix testapp to support the new DebugLabels standard
2025-03-06 20:22:13 +01:00
e45598f9f6 # Changes 0.2.7
- Add UI7 32Bit Version Num
- Fix ClipRect Bug with Separators
- Fix Triangle/Rect Render order Bug (UI7 - Bug of Lithium)
- Add Position to Menus and Movement by dragging the Title bar
- Add Menu Collabse (+ Flag to disable)
- Add About and Metrics Menus to Context
2025-03-06 18:14:39 +01:00
5375d0f3a9 # 0.2.6-2
- Add Scissor (CLIP RECT) to lithium commands and UI7 Drawlist API
- Enable ClipRect to UI7::Menu (probably create a enable/disable flag)
2025-03-05 20:18:00 +01:00
229d54f088 # 0.2.6-1
- Fix TTF FOnt loader to support any size between 8 and 64
- Fix UI7 Image Custom SIze support
- Add new Syste mfor Image buffer modification to image lib
2025-03-05 12:06:40 +01:00
c9e14ad08f # 0.2.5
Add DrawLine to DrawList
Fix Text Separator Alignment
2025-03-04 10:22:28 +01:00
7d3f619169 # Changes 0.2.4-1
- Add GIT_BRANCH (for development and stable)
- Write  Documentation of
  - pd-core (exept of vec.hpp)
  - pd-app
  - pd-drivers
  - pd-lib3ds
  - pd-image
  - pd-image
  - pd-ui7
2025-03-02 21:11:58 +01:00
af3d3e0b5b # split pd-maths into pd-core and pd-image (0.2.3) 2025-02-28 21:14:20 +01:00