Commit Graph

1093 Commits

Author SHA1 Message Date
6ad8f67551 Fix warning. 2022-11-20 02:55:12 +01:00
fcdce8336c Cleaned up my original prototype render_paint_node implementation. Now it's fast. 2022-11-20 02:44:27 +01:00
240bfa8ed5 Rewrote render_paint_node now it works without leaving pixels out, but it is an extermely inefficient implementation. It will be reworked soon. 2022-11-20 02:35:02 +01:00
e5fd8cd2b5 Added the ability for PaintNode rendering to skip evaluating certain PaintNode's childrens. 2022-11-19 23:19:41 +01:00
9141997c87 Changed the prefix of the image saving related helpers from save to render. 2022-11-19 23:12:06 +01:00
fb4aa87663 Initial image rendering implementation for PaintNodes. 2022-11-19 23:06:56 +01:00
4eec1ffcb4 Implemented serialization for PaintCanvas image data. 2022-11-19 20:43:40 +01:00
4f06946cf5 Centralize LZ4 usage. 2022-11-19 19:51:29 +01:00
7328a5126a Added a new lz4 module. 2022-11-19 19:39:50 +01:00
f1bda28b11 Cleaned up PaintNode resize notifications. Also now PaintCanvas allocates and resizes it's internal images properly. 2022-11-19 19:26:19 +01:00
629ec81669 Added a new PaintProjectToolsPropertyInspector class. 2022-11-19 15:41:52 +01:00
be9493a25a Structural setup for saving images for PaintProjects. 2022-11-19 13:45:14 +01:00
cebc26f3ce Also handle NOTIFICATION_PAINT_NODE_RESIZED in PaintVisualGrid and PaintCanvasBackground. Note that they won't yet get that notification. 2022-11-19 13:21:05 +01:00
50cf64b7f1 Added a few notifications to PaintNodes. 2022-11-19 13:17:30 +01:00
9f8f6cb3b4 Now PaintCanvasBackground and PaintVisualGrid will automatically size themselves to a parent PaintNode if they can. 2022-11-19 13:16:54 +01:00
17842720a5 Added helper methods to PaintProject for creating PaintCanvasBackground and PaintVisualGrid. 2022-11-19 12:22:10 +01:00
71a455687d Cleaned up PaintVisualGrid. 2022-11-19 02:31:39 +01:00
d7ccaff144 More cleanups to PaintCanvasBackground. 2022-11-19 02:31:02 +01:00
5c38af1d1a Reworked PaintCanvasBackground. Now it draws it's pattern using canvas draw commands. 2022-11-19 02:20:52 +01:00
5a78997c83 Now PaintNodes can draw their outlines. 2022-11-19 01:23:33 +01:00
af1018bae6 Don't update the preview when the mouse is not over a PaintCanvas. 2022-11-19 00:21:15 +01:00
dc4ded8bd8 Now the undo and redo buttons in PaintToolsPropertyInspector actually work. 2022-11-18 23:50:05 +01:00
120e59baba Ported the logic to PaintCanvas from the experimental project. 2022-11-18 23:47:37 +01:00
4060eeccc7 Now _forward_canvas_gui_input() in PaintNode is a virtual, as it should have been. 2022-11-18 23:47:05 +01:00
8e766ee8ab Added undo and redo buttons to the PaintToolsPropertyInspector. It won't work for now. 2022-11-18 22:25:24 +01:00
65cf1c60d9 PaintProjectPropertyInspector now updates if the preset or the current color changes in PaintProject. 2022-11-18 12:26:36 +01:00
12193b03f4 Added a slider for the brush size property into PaintToolsPropertyInspector. 2022-11-18 01:09:25 +01:00
8c8dc051cb Added brush prefabs to PaintToolsPropertyInspector. 2022-11-18 00:33:27 +01:00
884fae4847 PaintProjectPropertyInspector now uses and manages the presets in PaintProjects. 2022-11-17 23:56:19 +01:00
2485665f89 Added more helper methods to PaintProject. 2022-11-17 23:55:36 +01:00
a3bedba43a Now PaintProject can store color presets. They also support defaults. 2022-11-17 23:32:09 +01:00
62a7fda32e Added a button for the currently selected color into PaintProjectPropertyInspector. Also logic cleanpus. 2022-11-17 23:05:27 +01:00
e53868f60f Added a new PaintProjectPropertyInspector class. 2022-11-17 17:46:03 +01:00
6ddd0c1fa3 Fix non-tools builds. 2022-11-17 12:07:02 +01:00
526800fcf9 Added a new PaintToolsPropertyInspector. 2022-11-17 11:56:03 +01:00
b49ea8c5ef PaintColorGrid now has 5 columns. 2022-11-17 11:55:39 +01:00
8fc5633933 Added TOOL_ prefix to the Tools enum's values in PaintCanvas. 2022-11-17 11:55:25 +01:00
33c70f7a86 Removed PaintSidebar and renamed PaintSidebarModules to PaintCustomPropertyInspector. 2022-11-17 10:05:05 +01:00
b9f0429f8c Renamed sidebar_modules folder to property_inspectors in the paint module. 2022-11-17 09:55:37 +01:00
01f078e016 Created icons for the new paint nodes. 2022-11-17 00:56:04 +01:00
ef3110d4d1 Disabled the paint sidebar, as I found a better way of handling this using custom property inspectors. 2022-11-16 23:48:45 +01:00
25968b2803 Fix bindings. 2022-11-16 21:55:12 +01:00
761e381d0e Store the previous tool in Paintcanvas. 2022-11-16 17:23:17 +01:00
f439b421c5 Added some signals to PaintCanvas. 2022-11-16 17:09:21 +01:00
a2f02d669c Added a current_tool property for PaintCanvas. 2022-11-16 15:52:29 +01:00
338fc04a75 Added the Tools enum from PaintWindow to PaintCanvas. 2022-11-16 15:40:40 +01:00
fff7d1f152 Added brush_prefab and brush_size properties to PaintCanvas. 2022-11-16 15:38:09 +01:00
c683e675e1 Now PaintNodes can handle input events coming from the editor plugin. 2022-11-16 15:25:27 +01:00
afa0e83f78 Added getters for the images and textures of the PaintCanvas. 2022-11-16 13:31:51 +01:00
94da7051d4 Also add null check. 2022-11-16 13:29:06 +01:00
1f2e2c1d45 Fix crash in PaintCanvas. 2022-11-16 13:28:19 +01:00
ab3e6f0014 Added methods to access PaintUtilities from PaintNodes, so no registered singletons will be required. 2022-11-16 00:26:33 +01:00
9c2d0599ea Bound the get_paint_project helper. 2022-11-15 23:58:43 +01:00
bf15088dc7 Added a configuration warning to PaintNodes if they are not a child of a PaintProject. 2022-11-15 23:57:44 +01:00
7fa6ff6433 Not the _on_paint_node_selected virtual will properly get called in PaintSidebarModule. 2022-11-15 23:44:57 +01:00
bfd80993f2 Now PaintColorGrid sets the active project's color. 2022-11-15 23:12:39 +01:00
4a93e21660 Added get_paint_project helper method to PaintNode. 2022-11-15 23:11:55 +01:00
4851144a55 Added current_color property to PaintProject. 2022-11-15 23:11:38 +01:00
d55653d916 Notes. 2022-11-15 22:46:08 +01:00
73e7d7f8ce The PaintColorGrid now contains a ScrollContainer. 2022-11-15 22:24:00 +01:00
ff701c35ad Now the paint plugin handles paint nodes. 2022-11-15 22:11:49 +01:00
e044b007f6 PaintColorGrid now inherits from PaintSidebarModule. It is also added to the new sidebar by the paint plugin. 2022-11-15 21:59:04 +01:00
abe142b090 Hide the sidebar in make_visible. 2022-11-15 18:17:15 +01:00
5baff6410f Now PaintEditorPlugin creates the paint sidebar. 2022-11-15 18:16:32 +01:00
229677acf5 Added a new PaintSidebar and PaintSidebarModule classes to the paint module. 2022-11-15 17:58:00 +01:00
0963538827 Added the new PaintEditorPlugin as an engine global. 2022-11-15 17:33:09 +01:00
14c503a41b Added a new paint editor plugin, and renamed the old temporarily. 2022-11-15 16:53:37 +01:00
94b5ac9267 Added resize method to PaintCanvas. 2022-11-15 16:41:57 +01:00
9eaa2bd56f Fix warning on gcc. 2022-11-15 14:44:50 +01:00
4155ef7ff3 Commit changes that were left out. 2022-11-15 14:41:59 +01:00
6852b3afa1 Added updated version of the methods in Action. 2022-11-15 14:34:25 +01:00
c0bbd6edf7 Added a new PaintProject class. 2022-11-15 13:17:37 +01:00
26511bb83b Added the required api to PaintCanvas. 2022-11-15 13:13:37 +01:00
71f70117a0 Also add the new classes to config.py. 2022-11-15 12:35:44 +01:00
772195a9c3 Added PaintCanvas to the build, and registered it. 2022-11-15 12:34:29 +01:00
7b5071fc73 Created updated versions for the deprecated helpers in PaintAction, and bound them. 2022-11-15 12:32:31 +01:00
1fac355760 Renamed the paint canvas getters/setters in PaintAction, and bound them. 2022-11-15 12:26:50 +01:00
9da781e8b8 Renamed 2 deprecated methods in PaintAction, and removed virtual from sym point helper methods. 2022-11-15 12:22:32 +01:00
a5c5201aa8 Added new overridable virtual api to PaintActions for commiting changes. 2022-11-15 12:15:32 +01:00
c2e8a32c90 Renamed do and undo methods in PaintAction. 2022-11-15 11:49:03 +01:00
b05babe4b2 Also added a new PaintCanvas. 2022-11-14 23:32:12 +01:00
1c0c3c4393 Added PaintNode. 2022-11-14 23:27:26 +01:00
b574d44dd7 Also register PaintCanvasBackground to the ClassDB, and fix crash on exit with it. 2022-11-14 23:08:37 +01:00
74a7615168 Added a PaintIcons header to the paint module to reduce code duplication, and to fix compile on the platforms where it failed. 2022-11-14 22:38:52 +01:00
a7afeb93e3 Register the paint module's ui helper classes. 2022-11-14 18:27:21 +01:00
1cf7b38074 Small rework for the PaintCanvasBackground. 2022-11-14 18:27:03 +01:00
334b4ae3f8 Renamed PaintCanvas to PaintCanvasOld. 2022-11-14 17:46:37 +01:00
dbeb522d8b Renamed the icons folder to paint_icons in the paint module. 2022-11-14 17:35:19 +01:00
9f2996c770 Reorganized the paint module. 2022-11-14 17:31:45 +01:00
e63a346cd3 Bound some getter / setter methods in the paint module. 2022-11-14 17:11:38 +01:00
Haoyu Qiu
eacf797faf Clarify offset parameter behavior in RegEx methods 2022-11-13 00:48:46 +01:00
smix8
fd5bb2f0fd Fix Editor crash when MeshLibrary gets replaced while used in an open GridMap scene 2022-11-13 00:23:55 +01:00
53f486237e Fix voxelman's editor setting. 2022-10-11 22:09:09 +02:00
54643bc1fc Re-extracted class docs. 2022-10-09 12:43:55 +02:00
10437e2f01 Add missing doc classes setup. 2022-10-09 12:41:45 +02:00
ee015b7a2e Added doc classes to the tile_map module. 2022-10-09 12:16:11 +02:00
0de5f4ec86 Added RTileMap and RTileSet compatibility classes. 2022-10-09 11:52:25 +02:00
5123cf9837 Also renamed the rtile_map module itself to tile_map. 2022-10-09 11:50:46 +02:00
c6f998b2a6 Also update the include guards. 2022-10-09 11:47:55 +02:00
2159409dcc Moved TileMap and TileSet's docs to their module. 2022-10-09 11:47:03 +02:00