Commit Graph

150 Commits

Author SHA1 Message Date
Karroffel 6ab3213a55 fixed ClassDB inconsistencies
fixes #7960
2017-03-13 21:17:31 +01:00
Rémi Verschelde 5dbf1809c6 A Whole New World (clang-format edition)
I can show you the code
Pretty, with proper whitespace
Tell me, coder, now when did
You last write readable code?

I can open your eyes
Make you see your bad indent
Force you to respect the style
The core devs agreed upon

A whole new world
A new fantastic code format
A de facto standard
With some sugar
Enforced with clang-format

A whole new world
A dazzling style we all dreamed of
And when we read it through
It's crystal clear
That now we're in a whole new world of code
2017-03-05 16:44:50 +01:00
Rémi Verschelde 49c065d29c Refactoring: rename tools/editor/ to editor/
The other subfolders of tools/ had already been moved to either
editor/, misc/ or thirdparty/, so the hiding the editor code that
deep was no longer meaningful.
2017-03-05 14:21:25 +01:00
Thaer Razeq f50488a361 Various fixes detected using PVS-Studio static analyzer.
- Add FIXME tags comments to some unfixed potential bugs
- Remove some checks (always false: unsigned never < 0)
- Fix some if statements based on reviews.
- Bunch of missing `else` statements
2017-02-28 07:52:02 -06:00
Juan Linietsky de0045cf1b -renamed globals.h to global_config.cpp (this seems to have caused a few modified files)
-.pck and .zip exporting redone, seems to be working..
2017-02-21 00:06:30 -03:00
Hein-Pieter van Braam 411ee71b4d Rename the _MD macro to D_METHOD
This new name also makes its purpose a little clearer

This is a step towards fixing #56
2017-02-13 12:50:02 +01:00
Hein-Pieter van Braam 0f687f0ccb Remove use of _SCS from ADD_METHOD
This saves typing and is a step towards fixing #56
2017-02-13 10:37:47 +01:00
Rémi Verschelde f44ee891be Style: Fix statements ending with ';;' 2017-01-16 08:49:52 +01:00
Rémi Verschelde 93ab45b6b5 Style: Fix whole-line commented code
They do not play well with clang-format which aligns the `//` part
with the rest of the code block, thus producing badly indented commented code.
2017-01-14 14:52:23 +01:00
Juan Linietsky e53c247cb1 Created new Engine singleton, and moved engine related OS functions to it. 2017-01-13 12:51:14 -03:00
Juan Linietsky 04c749a1f0 New API for visibility in both CanvasItem and Spatial
visible (property) - access set_visible(bool) is_visible()
is_visible_in_tree() - true when visible and parents visible
show() hide() - for convenience
2017-01-13 10:45:50 -03:00
Juan Linietsky 83cb84753f Renamed most signals so they refer to:
-An action being requested to the user in present tense: (ie, draw, gui_input, etc)
-A notification that an action happened, in past tense (ie, area_entered, modal_closed, etc).
2017-01-12 00:51:08 -03:00
Juan Linietsky f698e2be4f Proper inheritance checking when requesting theem resources 2017-01-11 18:29:59 -03:00
Juan Linietsky bc26f90581 Type renames:
Matrix32 -> Transform2D
	Matrix3 -> Basis
	AABB -> Rect3
	RawArray -> PoolByteArray
	IntArray -> PoolIntArray
	FloatArray -> PoolFloatArray
	Vector2Array -> PoolVector2Array
	Vector3Array -> PoolVector3Array
	ColorArray -> PoolColorArray
2017-01-11 00:52:51 -03:00
Juan Linietsky e9bb65db81 -All types have editable script now in properties
-Changed clip to a property in Control which can be set by the user
2017-01-09 15:50:59 -03:00
Juan Linietsky 94ee7798ce -removed stop mouse and ignore mouse from control, which were confusing, replaced by mouse filter 2017-01-08 19:54:19 -03:00
Juan Linietsky 4fd464a4c5 Removed ratio anchoring (will have to fix multiple 3D views later..) 2017-01-08 19:12:24 -03:00
Juan Linietsky de73297883 Swapped expand and fill flag bits, so scenes don't save this property by default 2017-01-08 19:12:24 -03:00
Juan Linietsky 920947f297 renamed _input_event for GUI events to _gui_input, so it's more differentiated than generalized _input 2017-01-08 16:28:12 -03:00
Juan Linietsky 99ceddd11e Editor settings categories are now tidy and beautiful! 2017-01-05 19:41:36 -03:00
Juan Linietsky 3fae505128 Begin modifying properties to make them more friendly to script and doc. 2017-01-03 00:38:16 -03:00
Juan Linietsky 118eed485e ObjectTypeDB was renamed to ClassDB. Types are meant to be more generic to Variant.
All usages of "type" to refer to classes were renamed to "class"
ClassDB has been exposed to GDScript.
OBJ_TYPE() macro is now GDCLASS()
2017-01-02 23:03:46 -03:00
Rémi Verschelde c7bc44d5ad Welcome in 2017, dear changelog reader!
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer
with state-of-the-art rendering techniques tuned to work as low as middle
end handheld devices - without compromising with the possibilities given
for higher end desktop games of course. Great times ahead for the Godot
community and the gamers that will play our games!
2017-01-01 22:03:33 +01:00
Avril 958dbc1173 fixes #6464 lost icons in dock and file dialog, also #6443 , #6302
Fixes lost icons in docks, file manager, sample library, settings and
various other places.
2016-11-18 06:13:36 +01:00
Andreas Haas 8dd026e4f9
Prevent crash on focus change when no valid next control has been found.
Fixes the crash discussed in #6714.
2016-10-05 08:56:58 +02:00
Juan Linietsky b874cede20 Add argument options for the theme override functions in Control 2016-09-11 11:48:31 -03:00
Juan Linietsky 95eb7466df -Added a ColorFrame control, kind of like Texture but for color.
-Added dropping nodes to text editor for them to become a path
-Fixed issues with font not properly being set in code editor
2016-09-11 11:28:01 -03:00
Juan Linietsky 1bf684cea2 -Cleaned up find/replace bar for replace (made selection only default if selection exists), also made buttons look like buttons
-Fixed a bug related to theme propagation, may be able to solve #6443, #6302 and others. Please test.
2016-09-11 10:05:46 -03:00
Juan Linietsky fb4d6d1db0 More visual script improvements
-Added anti-aliasing on lines
-Improved draw performance enormously
-Removed sequence ports for most nodes, current visual scripts will likely be broken now. Sorry!
2016-08-30 23:46:41 -03:00
Juan Linietsky 9c6175db11 More visual script work
-Block switches to 2d/3d editor if editing visual script
-Added cast node in flow control
-Added ability to do RPC in visual script
-Comment nodes
-Fix bug with inverted cable in connecting backwards
-Copy and paste nodes, including from different scripts
2016-08-25 17:45:20 -03:00
Juan Linietsky 259418f827 VisualScript can now execute visual scripts, but there is no debugger or profiler yet. 2016-08-05 22:48:00 -03:00
Johan Manuel fc4ace3120 Fix the rotation not updating in the inspector with Controls 2016-07-21 00:26:36 +02:00
Juan Linietsky f10bd217a2 properly fixed notificaitons for theme changed, closes #5774 2016-07-18 16:41:59 -03:00
Juan Linietsky 88e28af5e3 Add a small workaround to avoid modal tabs to be closed if they are spawned in the same frame, closes #3837 2016-06-27 11:22:13 -03:00
Juan Linietsky e2d208f122 Ability to rotate controls using tool, closes #3800 2016-06-27 10:47:51 -03:00
Juan Linietsky a8f8f52b19 Fix issue saving flags (size fill expand), fixes #4176 2016-06-23 17:03:34 -03:00
Juan Linietsky 6a68ce9c93 Fix bug in GridContainer not updating minimumsize when columns changes, fixes #4677 2016-06-17 16:40:40 -03:00
Juan Linietsky 55b83157e7 Keep track of when fonts change, so theme or controls that use fonts as overrides get properly updated.
closes #4622 , probably closes many other issues too
2016-06-17 16:01:30 -03:00
Juan Linietsky 944c7e2603 fix crash when clearing dynamicfontdata, closes #4877 2016-06-13 22:24:11 -03:00
Juan Linietsky 4866713bc3 added a function CanvasItem.get_item_and_children_rect() , fixes #4738 2016-06-13 21:37:04 -03:00
Juan Linietsky 26d63b5594 propagate theme changes properly even through 2D nodes, fixes #4754 2016-06-13 21:11:24 -03:00
Juan Linietsky c1056a9bfb Fixed ancient bug that prevented proper theme editing, closes #4924 2016-06-12 15:31:38 -03:00
Juan Linietsky 736b65e566 Merge pull request #4977 from SaracenOne/scripting_expose
Expose extra methods and constants to scripts
2016-06-06 20:27:40 -03:00
Saracen b160a26abd Expose control theme element and override detection methods to scripting side. 2016-06-04 16:42:07 +01:00
Rémi Verschelde cbba9c4506 Merge pull request #4300 from leezh/control_focus_mode
Exposed Control::focus_mode to the scene editor
2016-06-04 14:41:36 +02:00
Juan Linietsky df139f57b3 Some cleanup to GDScript
separated GDFunction (VM) from GDScript in two different files
2016-05-31 22:33:43 -03:00
Zher Huei Lee 0ccf153a15 GUI Focus mode improvements
Exposed `get_focus_mode()` to the script
Added `focus_mode` to the property panels for line-edit and sliders
Added `enabled_focus_mode` to the property panels for buttons

enabled_focus_mode is used when button is enabled/disabled
2016-05-23 15:08:50 +01:00
Rémi Verschelde 7b471068cf Merge pull request #4612 from bojidar-bg/fix-anchor-builds
Fix #4588 (crash in Control::_set_anchor)
2016-05-11 17:46:29 +02:00
Bojidar Marinov 0b572b35c2 Fix #4588 (crash Control::_set_anchor)
Thanks to @vnen for testing this
2016-05-10 20:23:58 +03:00
Rémi Verschelde bc31be9812 Sync classes.xml with current sources
Also fix a typo in the binding of Control::set_drag_forwarding.
2016-05-09 22:20:35 +02:00
Rémi Verschelde 4eab767a6f Rotation APIs: Better exposure for degrees methods
Made public the various set/getters for rotations in degrees.
For consistency, renamed the exposed method names to remove the leading
underscore, and kept the old names with a deprecation warning.

Fixes #4511.
2016-05-06 23:38:08 +02:00
Juan Linietsky c7e8def446 Add ability to send drag events to another object
will be documented/tested later
2016-05-03 11:10:28 -03:00
Aren Villanueva d75856146c Adds a remove class item option in the theme editor.
I've also added a get_stylebox_types helper function to the theme class in order to figure out exactly what types are available to a theme.
2016-04-21 11:58:53 +10:00
sanikoyes 5ec7d3f264 Fix warn print when hide an control does not inside_tree 2016-04-07 15:46:38 +08:00
Rémi Verschelde 15d1fca061 Merge pull request #4102 from SaracenOne/dynamic_margin_properties
Dynamic property list for control margins
2016-03-23 09:36:18 +01:00
sanikoyes 0c6f089ce4 Fix GDScript crash when call show/hide in func _exit_tree 2016-03-22 12:46:33 +08:00
Saracen d8392dd117 Dynamic property list for control margins allowing floating point properties to be used with ratio anchors. 2016-03-20 05:59:18 +00:00
Bojidar Marinov bac875be66 Fix a crash when running a game with Controls with a tools build
Regression from #3997

TOOLS_ENABLED is defined, even when running from editor, but EDITOR_DEF SEGFAULTs
2016-03-10 21:01:49 +02:00
Bojidar Marinov 0e8a8d2cb1 Add option to keep margins when changing anchors, closes #3979
Amend: Fixed an issue for non-tool builds
Amend2: Same, just fixed doing nothing at some times
2016-03-09 21:14:17 +02:00
Hubert Jarosz 4a4f247914
remove trailing whitespace 2016-03-09 00:00:52 +01:00
Juan Linietsky 9109e41a20 Property handle rotated controls in 2D editor, fixes #3613 2016-02-08 11:29:32 -03:00
Juan Linietsky b587614653 Make sure variant parser recognizes "nil" for compatibility with old engine.cfg style cofig. Closes #3531 2016-02-01 19:01:06 -03:00
Juan Linietsky 35a28f3442 -Take in consideration canvas layers for GUI input 2016-01-24 10:57:42 -03:00
Juan Linietsky 5a1593951b -Added a "modal_close" signal for controls
-Used it to keep changes on lineedit when focused out
2016-01-23 11:45:36 -03:00
Juan Linietsky 891e31b139 -Some fixes to drag and drop and canvas offset for GUI that were introduced after rewrite 2016-01-19 20:28:20 -03:00
Rémi Verschelde c0b9634235 Merge pull request #2854 from MarianoGnu/color_picker
new ColorPicker
2016-01-18 13:52:51 +01:00
Juan Linietsky 74a48a0140 -Massive editor dialog cleanup
-Added a bottom menu list
2016-01-17 20:03:57 -03:00
Juan Linietsky 72fcb8a35b -Moved all the "root" input handling for GUI from individual Controls to Viewport.
-Should fix several reported bugs when controls don't have a common parent

This may have added new bugs, so please report if so!
2016-01-16 22:41:10 -03:00
MarianoGNU 1f3d6824c8 Move shaders to default theme and add shader_override related methods to Control class 2016-01-15 17:23:19 -03:00
Juan Linietsky 3a3ce982b0 removed this fix, which brought more problems than solutions 2016-01-10 00:26:35 -03:00
Rémi Verschelde a0c39a4b33 Merge pull request #3191 from neikeq/filedialog_hotkeys
Add keyboard shortcut to toggle "show hidden files" in FileDialog
2016-01-07 07:50:26 +01:00
Ignacio Etcheverry 3ca800226e FileDialog: keyboard shortcut to toggle "show hidden files" 2016-01-02 12:58:38 +01:00
George Marques 5be9ff7b67 Update copyright to 2016 in headers 2016-01-01 11:50:53 -02:00
reduz 2f19260fb7 -restrict gui root from being removed while performing input, fixes #2578 2015-12-29 10:01:29 -03:00
Juan Linietsky 890b462ffb added rotation and scale support to gui controls 2015-12-12 13:54:26 -03:00
Juan Linietsky ab22203791 misc cleanup 2015-10-17 10:29:54 -03:00
Juan Linietsky 95047562d7 Several performance improvements, mainly in loading and instancing scenes and resources.
A general speedup should be apparent, with even more peformance increase when compiling optimized.

WARNING: Tested and it seems to work, but if something breaks, please report.
2015-06-29 00:29:49 -03:00
Juan Linietsky 9a58960d28 some editor window changes
-ability to make dock position configurable, and it gets saved
-editor starts maximized default
2015-06-13 22:12:53 -03:00
Juan Linietsky 65c96a71bd fix crash on exit for popup, fixes #1676 2015-04-26 15:42:02 -03:00
Juan Linietsky 93ce7d92c1 -Many fixes and demo for RichTexLabel
-Proper ability to edit BBCode in RTL.
2015-04-21 16:01:58 -03:00
Juan Linietsky fdaa2920eb Updated copyright year in all headers 2015-04-18 14:38:54 -03:00
Juan Linietsky 1572238adb merging okam changes 2015-04-02 07:22:17 -03:00
Juan Linietsky 09489e3a78 lot of work on 2D lighting and isometric maps
added a new demo, isometric_light that does full isometric sorting,
lights, shadows, etc.
2015-03-09 02:34:56 -03:00
Juan Linietsky 4333aa240c Godot UI is quick and snappy again!
Changed linked listed sort to use auxiliary memory
this fixes user interface performance issues.
2015-02-15 12:38:25 -03:00
Juan Linietsky d2f86cc09b fixes to mouse warp
-can warp now from viewport and control, in their respective coordinate
systems
-warp is now local to the window on Windows and OSX.

IF YOU RUN OSX, PLEASE TEST THIS! And make sure it works!, new code is
in OS_OSX::warp_mouse_pos. I don't have OSX so i can't test!
2015-02-14 19:22:06 -03:00
Juan Linietsky 167c1027be -fixed bug on focus capture, now respets line/text edit
-when playing animations, property editor is now refreshed properly, fixes #1046
2015-01-03 15:39:01 -03:00
Juan Linietsky fa7a3ac0d3 removed deadcode 2015-01-03 00:25:21 -03:00
Juan Linietsky 0df45672e7 -ability to scale and modulate texturebutton, closes #818
-fixed bug in ordering of modal subwindows, closes #1001
2015-01-03 00:23:14 -03:00
Juan Linietsky bcf27feb98 New Code Completion
-=-=-=-=-=-=-=-=-=-

-Massive improvement to code completion
-Argument hinting for functions

If you manage to out-smart the code-completion in a situation where completion
should be possible to guess, let me know.

 Please enter the commit message for your changes. Lines starting
2014-12-16 22:31:57 -03:00
Juan Linietsky 0dbedd18fc SceneMainLoop -> SceneTree
-=-=-=-=-=-=-=-=-=-=-=-=-=-

*YOUR SOURCE MIGHT NOT WORK*
For mor information on fix:
https://github.com/okamstudio/godot/wiki/devel_scene_tree

Other stuff:
-Shower of bullets demo
-Fixes all around
2014-11-05 21:20:42 -03:00
Juan Linietsky fa004d5c0f Small Fixes
-----------

-Added Ability for centering on top left for centercontainer
-Added ability to bind more than 5 parameters (must include an extra file)
2014-09-17 11:53:29 -03:00
Juan Linietsky 01632a824e Bug Fixes
-=-=-=-=-

-Documentation now shows overridable theme values (though this needs to be documented).
-Detect when object transform is flipped and flip normals too.
-TileMap can specify bounce and friction for collision.
-Removed limit of 4 lights per object
-Added is_hovered() to buttons.
2014-06-29 22:41:02 -03:00
Juan Linietsky 0360b454a4 -Fixed viewport stretch bugs
-Fixed input in viewport stretch bugs
-Fixed tilemap pixel overlap (really?)
2014-04-18 11:43:54 -03:00
Juan Linietsky ec4ef2d2e7 -Added google play services (needed for some stuff)
-Added new screen resizing options, stretch_2d is removed, new much more flexible ones.
-Fixed bug in viewport (can create more instances in 3d-in-2d demo now)
-Can set android permissions and screen sizes manually in the export settings
-Changed export templates extension to .tpz (too many people unzipped the manually..)
-File dialog now ensures that the proper extension is used (will not allow to save without it)
-Fixed bug that made collision exceptions not work in 2D
2014-04-14 22:43:44 -03:00
Juan Linietsky 7ea3e8267a -Fixed a few bugs in Viewport
-Made a few demos using Viewport to show it's true power!
-Fixed some start-up error messages.
2014-04-10 00:18:27 -03:00
Juan Linietsky 9f33134c93 -Support for changing fonts
-Detect when free() might crash the project and throw error
-fixed 2D Bounce in physics (3d still broken)
-renamed “on_top” property to “behind_parent”, which makes more sense, old on_top remains there for compatibility but is invisible.
-large amount of fixes
2014-04-05 12:39:30 -03:00
sanikoyes 9174ac7386 Add anchor options "Center" 2014-03-31 19:02:21 +08:00
Juan Linietsky 8c1731b679 -project settings are saved when changed
-load() was in the GDScript docs but missing in the scripting-different music for platformer 2D and 3D
-fix how documentation is generated, built in doc browser should be always up to date
-copypaste, scrolling, etc in  builtin doc
-built-in scripts get saved now (though debugger may not always work on them)
-Theme can be set to controls as a property
2014-02-15 21:16:33 -03:00
Juan Linietsky 9afdb3e0ad -fixed bug in Button now exporting font property
-made GUI Theme editor usable
-editor does not allow to export or create .pck in the same path as a project
-changed .pck format (lacked support for versioning so couldn't change it), previous was causing crashes and is now incompatible, just re-export.
-will not look for .pck files recursively, was causing unexpected behaviors
-fixed execution of Godot in paths with non unicode characters in Windows, OSX and Linux.
2014-02-15 02:02:41 -03:00
Juan Linietsky 0b806ee0fc GODOT IS OPEN SOURCE 2014-02-09 22:10:30 -03:00