summaryrefslogtreecommitdiff
path: root/editor/project_settings_editor.cpp
AgeCommit message (Collapse)Author
2022-05-19Use range iterators for RBSet in most casesAaron Record
2022-05-16Replace most uses of Map by HashMapreduz
* 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-12Add a new HashMap implementationreduz
Adds a new, cleaned up, HashMap implementation. * Uses Robin Hood Hashing (https://en.wikipedia.org/wiki/Hash_table#Robin_Hood_hashing). * Keeps elements in a double linked list for simpler, ordered, iteration. * Allows keeping iterators for later use in removal (Unlike Map<>, it does not do much for performance vs keeping the key, but helps replace old code). * Uses a more modern C++ iterator API, deprecates the old one. * Supports custom allocator (in case there is a wish to use a paged one). This class aims to unify all the associative template usage and replace it by this one: * Map<> (whereas key order does not matter, which is 99% of cases) * HashMap<> * OrderedHashMap<> * OAHashMap<>
2022-05-05Disallow Callable, Signal and RID in export arrayskobewi
2022-04-06Fix some issues found by cppcheck.bruvzg
2022-04-05[Input] Add extra `shortcut_input` input processing step to process Unicode ↵bruvzg
character input with Alt / Ctrl modifiers, after processing of shortcuts.
2022-03-17Make `TabBar/Container` default their alignments to the left instead of centerMichael Alexsander
2022-03-18Improve inspector filteringHaoyu Qiu
2022-03-09Fix Autoload capitalization inconsistencyHaoyu Qiu
2022-03-04Replace some bits of code left to work with the new `TabContainer`Michael Alexsander
2022-03-03Make `TabContainer` use `TabBar` internallyMichael Alexsander
2022-02-16Convert _notification methods to switch - Chunk CJakob Bouchard
2022-02-08Revert "Add missing SNAME macro optimization to all theme methods call"Rémi Verschelde
This reverts commit a988fad9a092053434545c32afae91ccbdfbe792. As discussed in #57725 and clarified in #57788, `SNAME` is not meant to be used everywhere but only in critical code paths. For theme methods specifically, it was by design that only getters use `SNAME` and not setters.
2022-02-06Add missing SNAME macro optimization to all theme methods calljmb462
2022-02-03Merge pull request #57562 from AnilBK/string-add-containsRémi Verschelde
String: Add contains().
2022-02-03Merge pull request #57175 from fire-forge/add-type-iconsRémi Verschelde
Add type icons to Project Settings, Array, and Dictionary editors
2022-02-04String: Add contains().Anilforextra
2022-02-03Add type icons to Project Settings, Array, and Dictionary editorsfire540
2022-02-01Minor fixes/refactoring of project and editor setting dialogsHendrik Brucker
2022-01-16Merge pull request #56832 from Chaosus/fix_themingYuri Roubinsky
2022-01-16Fix theming update in several editor classesYuri Roubinsky
2022-01-14Remove support for PVRTC texture encoding and decodingHugo Locurcio
On the only platform where PVRTC is supported (iOS), ETC2 generally supersedes PVRTC in every possible way. The increased memory usage is not really a problem thanks to modern iOS' devices processing power being higher than its Android counterparts.
2022-01-12Check if action name exists before adding it or renaming an action to itMarcel Admiraal
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-09Replace String comparisons with "", String() to is_empty()Nathan Franke
Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
2021-12-09align to horizontal_alignment, valign to vertical_alignment, relatedNathan Franke
2021-08-31Make platform feature tag names lowercaseHugo Locurcio
Feature tag names are still case-sensitive, but this makes built-in feature tags more consistent. - `Windows` -> `windows` - `OSX` -> `osx` - `LinuxBSD` -> `linuxbsd` - `Android` -> `android` - `iOS` -> `ios` - `HTML5` -> `html5` - `JavaScript` -> `javascript` - `UWP` -> `uwp`
2021-07-25Use const references where possible for List range iteratorsRémi Verschelde
2021-07-23Use C++ iterators for Lists in many situationsAaron Franke
2021-07-18Optimize StringName usagereduz
* Added a new macro SNAME() that constructs and caches a local stringname. * Subsequent usages use the cached version. * Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time. * Replaced all theme usages by this new macro. * Replace all signal emission usages by this new macro. * Replace all call_deferred usages by this new macro. This is part of ongoing work to optimize GUI and the editor.
2021-05-14Improve Project Settings EditorDanil Alexeev
Closes godotengine/godot-proposals#1545. Closes godotengine/godot-proposals#2452.
2021-05-05Improve ActionMapEditorDanil Alexeev
- CheckBox replaced with CheckButton. - Removed unnecessary code.
2021-04-20ProjectSettingsEditor: Make "Type" OptionButton item ids match corresponding ↵kleonc
Variant::Type enum values.
2021-02-26Save ProjectSettings on editor restartkobewi
2021-02-24Fix capitalization of checkbox in Input Map EditorMichael Alexsander
2021-02-23Added Import Defaults Editor in Project Settingsreduz
-Change importer defaults in project settings. -Ability to change them or reset them.
2021-02-19New ActionMapEditor to replace InputMapEditor. Used in ProjectSettings.Eric M
Renamed to ActionMapEditor as it is more generic and can be used for more than just the InputMapEditor if required. This also includes a new Event Configuration dialog (previously "Press A key...") which can be used to create and edit InputEvents for any use - like the Project Settings input map, or the Editor Settings shortcuts.
2021-02-18Reorganize Project Settingsreduz
-Advanced Settings toggle also hides advanced properties when disabled -Simplified Advanced Bar (errors were just plain redundant) -Reorganized rendering quality settings. -Reorganized miscelaneous settings for clean up.
2021-02-13Fix editor always redrawingreduz
-Only update rendering settings when project settings change -Fixes the update spinner (and editor rendering) updating all the time. -Added a "project_settings_changed" signal to EditorNode and EditorPlugin
2021-01-10Don't allow adding Objects to the project settingsHugo Locurcio
Godot doesn't support serializing objects. This closes #33667.
2021-01-01Update copyright statements to 2021Rémi Verschelde
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 🎆
2020-12-28Rename empty() to is_empty()Marcel Admiraal
2020-12-14Rename AcceptDialog get_ok() to get_ok_button()Marcel Admiraal
Also renames: - AcceptDialog add_cancel() to add_cancel_button() - ConfirmationDiaglog get_cancel() to get_cancel_button()
2020-11-09Refactored variant constructor logicreduz
2020-11-07Reorganized core/ directory, it was too fatty alreadyreduz
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
2020-08-28Add placeholders to the searchbars in the Project/Editor settingsMichael Alexsander
2020-08-18Fixed issues with adding custom project settings and added confirmation ↵Eric M
dialog when deleting settings.
2020-08-14Fix and tweak the new header in "Project Settings"Michael Alexsander
2020-08-10Rewrite ProjectSettings editor advanced optionsStijn Hinlopen
- New layout: advanced options hidden by default, error labels added. - Disallow adding invalid new settings, or overwriting built-in settings.
2020-07-14Refactor Project Settings:Stijn Hinlopen
- Moved Localization and InputMap editor code to separate files. - Removed empty method _item_checked from project_settings_editor. - Reordered some code for better readability.