Commit graph

160 commits

Author SHA1 Message Date
Rémi Verschelde
90019676b0 Code quality: Fix header guards consistency
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 11:17:40 +02:00
kobewi
a08d930740 Rework scene creation dialog 2022-06-21 15:42:56 +02:00
trollodel
307427af89 Add the button pressed to some signals in Tree 2022-05-21 17:16:52 +02:00
reduz
45af29da80 Add a new HashSet template
* Intended to replace RBSet in most cases.
* Optimized for iteration speed
2022-05-20 22:40:38 +02:00
reduz
746dddc067 Replace most uses of Map by HashMap
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
  (order matters) but use is discouraged.

There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
Aleksey Smirnov
81520be31d Cleanups after changes in ItemList signals 2022-05-10 13:26:16 +03:00
Vitika9
aef3b5681d Changed signals of ItemList 2022-05-06 13:09:04 +05:30
kobewi
7f183d0361 Add Copy UID option to filesystem dock 2022-05-02 11:51:23 +02:00
Rémi Verschelde
f8ab79e68a Zero initialize all pointer class and struct members
This prevents the pitfall of UB when checking if they have been
assigned something valid by comparing to nullptr.
2022-04-04 19:49:50 +02:00
Aaron Franke
918b09cabc
Initialize bools in the headers in editor 2022-03-12 13:34:06 -06:00
Yuri Roubinsky
073abe4b9c Add "Add Script" option to project autoload settings 2022-03-12 12:57:05 +03:00
Igor Kordiukiewicz
2ed334f95f Added visual feedback when drag and dropping from scene tree to file system 2022-03-06 21:36:15 +01:00
Rémi Verschelde
11572c6e30
Editor: Cleanup some includes dependencies
Removes some unnecessary includes from `editor_node.h`, and instead add
those where they're used.

Removes unnecessary `editor_node.h` includes in various editor classes.

Renames `dynamicfont` to `dynamic_font` in a couple files.

Misc cleanup while jumping through that rabbit hole.
2022-02-15 14:54:15 +01:00
trollodel
05b56f316d Remove most EditorNode constructor parameters and fields 2022-02-14 14:16:24 +01:00
Hendrik Brucker
b396fd4eef Improve compilation speed (forward declarations/includes cleanup) 2022-02-12 02:46:22 +01:00
trollodel
aa1102fc53 Store panels and docks singletons in their own classes 2022-01-20 20:13:26 +01:00
Rémi Verschelde
fe52458154
Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Yuri Roubinsky
771491d358 Add New Shader option to the FileSystemDock popup menu. 2021-12-03 19:42:58 +03:00
Marcel Admiraal
87a4ba492e Remove unimplemented methods 2021-10-21 18:44:25 +01:00
Paulb23
6596c7bdc2 Add TextFile support across the editor 2021-09-30 13:29:29 +01:00
Rémi Verschelde
661d7c01b8
Merge pull request #49295 from foxydevloper/fix-focus-filter
Fix "Filter Files" shortcut by merging duplicate functions
2021-06-29 17:23:45 +02:00
Rémi Verschelde
9e328bb5b7
Core: Move DirAccess and FileAccess to core/io
File handling APIs are typically considered part of I/O, and we did have most
`FileAccess` implementations in `core/io` already.
2021-06-11 14:52:39 +02:00
fox
50d14ae975 Fix "Filter Files" shortcut by merging duplicate functions 2021-06-03 19:22:50 -04:00
fox
22e2e4334e Make shortcut for focusing searchbar in filesystem dock 2021-05-13 20:13:17 -04:00
Rémi Verschelde
b5334d14f7
Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
Rémi Verschelde
7dc41ff310
FileSystemDock: List conflicting files on move
Fixes #24167.
2020-12-10 12:53:56 +01:00
Rafał Mikrut
e1811b689b Initialize class/struct variables with default values in platform/ and editor/ 2020-12-02 16:09:11 +01:00
Gilles Roudière
6f696a5927 Improve file sorting 2020-10-26 09:22:35 +01:00
Gilles Roudière
f7a8cd882a Allow sorting files by type 2020-10-19 23:22:08 +02:00
geekrelief
ec33280809 Modified FileSystemDock so folders can be selected for reimport. 2020-08-14 00:04:37 -07:00
Hugo Locurcio
31b7f02a29
Remove ToolButton in favor of Button
ToolButton has no redeeming differences with Button;
it's just a Button with the Flat property enabled by default.
Removing it avoids some confusion when creating GUIs.

Existing ToolButtons will be converted to Buttons, but the Flat
property won't be enabled automatically.

This closes https://github.com/godotengine/godot-proposals/issues/1081.
2020-06-19 20:49:49 +02:00
Rémi Verschelde
1f6f364a56 Port member initialization from constructor to declaration (C++11)
Using `clang-tidy`'s `modernize-use-default-member-init` check and
manual review of the changes, and some extra manual changes that
`clang-tidy` failed to do.

Also went manually through all of `core` to find occurrences that
`clang-tidy` couldn't handle, especially all initializations done
in a constructor without using initializer lists.
2020-05-14 10:01:56 +02:00
Ignacio Etcheverry
fe0b783e70 Expose FileSystemDock to the scripting API and fixed signals
Fixed FileSystemDock's `file_removed` and `folder_removed` signals not being
emitted because the emitted was using the wrong signal name.
2020-03-18 15:06:07 +01:00
Rémi Verschelde
48ed841dd0 Signals: Fix some regressions from #36426
- Fix `callable_mp` bindings to methods which used to have default
  arguments passed to `bind_method`. We now have to re-specify them
  manually when connecting.
- Re-add `GroupsEditor::update_tree` binding.
- Misc code quality changes along the way.
2020-03-03 11:44:06 +01:00
Rémi Verschelde
65429f11a6 Signals: Make callbacks non-const, callable_mp can't handle it 2020-02-23 23:48:44 +01:00
Juan Linietsky
3f335ce3d4 Texture refactor
-Texture renamed to Texture2D
-TextureLayered as base now inherits 2Darray, cubemap and cubemap array
-Removed all references to flags in textures (they will go in the shader)
-Texture3D gone for now (will come back later done properly)
-Create base rasterizer for RenderDevice, RasterizerRD
2020-02-11 11:53:26 +01:00
Rémi Verschelde
a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
Haoyu Qiu
79a06e17bb Fixes variable naming in FileSystemDock 2019-12-24 14:51:33 +08:00
Tomasz Chabora
01d77842ee Unfold directories when showing in file system 2019-11-21 15:40:11 +01:00
volzhs
bee6b94b77 Add "Set as main scene" on context menu in FileSystem panel 2019-10-30 03:31:33 +09:00
Michael Alexsander Silva Dias
c5b45c9f09 Cleanup and minor changes in FileSystem Dock 2019-08-22 10:24:51 -03:00
iwek7
2b8d65761c Improvements and fixes of filesystem dock 2019-08-21 11:13:50 +02:00
Tomasz Chabora
cedee8281b Allow to create scene from FileSystem dock 2019-08-15 19:47:21 +02:00
qarmin
01cc7a996b Use reference to constant in functions 2019-07-10 11:54:12 +02:00
qarmin
4e5310cc60 Some code changed with Clang-Tidy 2019-06-26 15:08:25 +02:00
Hein-Pieter van Braam-Stewart
0ac7715a27 Fix moving and renaming files
This commit fixes several issues related to moving scenes and resources
in an open project.

* Don't try to reload scenes while not all scenes are updated yet.
* Don't use the UndoRedo system to update non-user initiated editor
state.
* Resave scenes after moving files and updating resource path(s).
2019-06-04 16:24:32 +02:00
Rémi Verschelde
8384582828
Merge pull request #27836 from turtletooth/right-click
Allow Right Click in Empty Space on FileSystemDock
2019-05-28 12:07:06 +02:00
Michael Alexsander Silva Dias
dcf27c71b7 Make possible to create inherited scenes via the RMB menu in the FileSystem dock 2019-05-11 05:13:29 -03:00
Jeremy Bullock
36bdf78927 Allow Right Click in Empty Space on FileSystemDock 2019-04-09 11:22:14 -06:00
Rémi Verschelde
3da2894d82 FS dock: Allow deselecting items by clicking empty space
Fixes #27546.
2019-04-09 14:54:41 +02:00
Juan Linietsky
a20235aeb0 Add ability to edit editor feature profiles
Allows enabling/disabling parts of the editor and storing/loading profiles for that.
2019-04-08 19:18:51 -03:00
Michael Alexsander Silva Dias
a292d1fefb Fix general issues with filesystem-related UI components in the editor 2019-03-05 10:12:06 -03:00
Gilles Roudiere
04fb1069cd Fixes layout loading 2019-02-27 21:36:12 +01:00
Gilles Roudiere
de95493de2 Move the FileSystem dock layout properties to the per-project layout file 2019-02-25 23:39:49 +01:00
groud
d4de7cf186 Fixes crash in the Filesystem dock 2019-01-17 20:48:46 +01:00
Rémi Verschelde
b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
groud
c6329b4569 Add signals for files move/delete/rename to FileSystemDock 2018-12-06 21:35:21 +01:00
groud
a821de2275 Hide some RMB options in the filesystem dock when files are searched 2018-11-03 18:37:57 +01:00
Juan Linietsky
03563c8ddf
Merge pull request #23061 from groud/remove_thumbnail_view
Remove the thumnail-only view from the filesystem dock
2018-11-02 13:09:09 -03:00
Chaosus
3af11ff3d8 Update filesystem dock when theme changed 2018-10-23 12:37:00 +03:00
groud
8f3becafeb Remove the thumnail-only view from the filesystem dock 2018-10-16 22:08:00 +02:00
groud
0829fdafb0 Adds the display of the favorites into the file list 2018-09-30 15:32:57 +02:00
groud
7d59e05ae8 Add thumbnails to the FileSystem file list 2018-09-28 13:26:36 +02:00
groud
76b2ae8dc6 Fixes favorites not updating and rename favorite_dirs to favorites 2018-09-18 14:02:59 +02:00
groud
59536b98b9 Bugfixes on the filesystem dock 2018-09-14 13:59:19 +02:00
groud
028813fb9c Add a display mode toggle button 2018-09-14 10:22:13 +02:00
groud
4ef4df54d0 Store tree collapse when searching 2018-09-14 10:22:13 +02:00
groud
a5fba2aa79 Allow dragging files into the favorites section 2018-09-14 10:22:13 +02:00
groud
4731745deb Adds a filter in the tree view 2018-09-14 10:22:13 +02:00
groud
d7b638ed32 Replace the -show in filesystem- button by a RMB entry 2018-09-14 10:22:13 +02:00
groud
bc5dfdde78 Replace the favorite button by a RMB menu entry 2018-09-14 10:22:13 +02:00
groud
796418aa11 Merge the disable_split and show_files_in_tree settings 2018-09-14 10:22:07 +02:00
groud
b2633a97b9 Add thumnails to the tree view 2018-09-14 10:14:33 +02:00
groud
5f3bbbdc81 Add support for files in the tree view 2018-09-14 10:14:33 +02:00
Rémi Verschelde
277b24dfb7 Make core/ includes absolute, remove subfolders from include path
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
2018-09-12 09:52:22 +02:00
groud
b3f02d0840 Add a way to disable the split view
Also add a parameter as the max height before split
2018-08-14 10:17:51 +02:00
steincodes
a1dee44e21 Ability to add Resource from FileSystem Dock 2018-07-22 21:23:40 +05:30
Max Hilbrunner
c41d322e11
Merge pull request #19183 from Nallebeorn/rename-main-scene
Update resource file project settings after renaming/moving the files
2018-07-05 00:44:23 +02:00
Max Hilbrunner
4f39d330cf
Merge pull request #19245 from swarnimarun/overwrite_fix
Fix overwrite of file/folder of same name without warning
2018-07-05 00:30:06 +02:00
Benjamin
4cd69e91fc Update resource file project settings on rename 2018-07-03 18:08:41 +02:00
volzhs
a9acb95ef4 Show current scene file in FileSystem dock 2018-07-01 11:47:34 +09:00
steincodes
8ae652bd59 Fix for overwriting files and folders on move 2018-06-12 21:54:43 +05:30
Eoin O'Neill
af1e2c7b21 Basic 'new script' feature added to File System browser 2018-04-27 22:55:48 -07:00
Jason0214
bfae02c4ce update favorite_dirs list after move or rename a dir 2018-02-28 15:14:12 -08:00
Rémi Verschelde
eb2b04c6eb
Merge pull request #15379 from ianb96/delete_key_fix
Filesystem and Visual Script Members delete key fix
2018-02-14 17:06:31 +01:00
volzhs
127d1241bd Expand project root directory on editor start
close #16232
Option for expanding all directories on start up is a bit tricky and buggy.
2018-02-01 11:24:40 +09:00
Ian
bce2d2c297 Filesystem and Visual Script Members keyboard shortcuts fix 2018-01-06 15:46:32 -05:00
Rémi Verschelde
e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Rémi Verschelde
b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Juan Linietsky
57061413eb Properly rename scenes and resources after renaming or moving files, should fix #13976
It's not tested, so please test.
2017-12-26 16:32:12 -03:00
Rémi Verschelde
5b54690323
Merge pull request #13446 from gad-o/duplicate_file
Add  duplicate option to filesystem dock
2017-12-09 16:34:35 +01:00
Rémi Verschelde
13c2ff9320 Style: Apply new clang-format 5.0 style to all files 2017-12-07 08:02:00 +01:00
Orkun
3e50748972 Add duplice option to filesystem dock
Add duplice option to filesystem dock based move option
2017-12-01 14:13:50 +03:00
Dmitry Koteroff
d67b602f2f Add "New Folder.." to right mouse button click on project fileslist panel _WHEN_ no any file/folder is under mouse cursor. 2017-11-20 21:25:13 +03:00
Rémi Verschelde
b44cb4e3b9
Merge pull request #12583 from volzhs/select-multiple-files
Not to be slow when select multiple files
2017-11-17 00:37:01 +01:00
MillionOstrich
9c65924b3d Don't try to move if dragging a folder into itself
If a folder would be moved to an invalid location disallow the drag
Don't treat dragging a file/folder to its current location as invalid
Allow dragging onto empty space / files in the files list
Fix dragging a folder onto "Favourites" starting an invalid move
2017-11-03 20:49:36 +00:00
volzhs
3babb19515 Not to be slow when select multiple files 2017-11-02 23:47:07 +09:00
Cradmon
2aef4ce0fe Make file system dock more user friendly.
Edited files:
editor/filesystem_dock.h
editor/filesystem_dock.cpp
2017-10-22 15:41:52 +01:00
MillionOstrich
0939c0a9ce Add right click option to create folders. 2017-10-09 15:11:44 +01:00
MillionOstrich
40d1866b05 Rework DependencyRemoveDialog for deleting folders
DependencyRemoveDialog now takes two lists (files and folders) to delete.
Sort the folders above files in DependencyRemoveDialog & use some more icons.
Stop files which will be deleted from also being listed as having broken dependencies.
Add right-click option for removing folder to filesystem folder tree.
2017-10-09 15:10:40 +01:00