diff --git a/SConstruct b/SConstruct index 5e821751f3..0f9b046e2b 100644 --- a/SConstruct +++ b/SConstruct @@ -63,14 +63,9 @@ elif (os.name=="nt"): if (os.getenv("VSINSTALLDIR")==None or platform_arg=="android"): custom_tools=['mingw'] -env_base=Environment( - tools=custom_tools, - ENV={ - 'PATH' : os.getenv('PATH'), - 'PKG_CONFIG_PATH' : os.getenv('PKG_CONFIG_PATH') -}); - -#env_base=Environment(tools=custom_tools); +env_base=Environment(tools=custom_tools); +env_base.AppendENVPath('PATH', os.getenv('PATH')) +env_base.AppendENVPath('PKG_CONFIG_PATH', os.getenv('PKG_CONFIG_PATH')) env_base.global_defaults=global_defaults env_base.android_maven_repos=[] env_base.android_dependencies=[] diff --git a/core/io/LICENSE-InfoZip.txt b/core/io/LICENSE-InfoZip.txt new file mode 100644 index 0000000000..bcfe47e978 --- /dev/null +++ b/core/io/LICENSE-InfoZip.txt @@ -0,0 +1,60 @@ +This is version 2007-Mar-4 of the Info-ZIP license. +The definitive version of this document should be available at +ftp://ftp.info-zip.org/pub/infozip/license.html indefinitely and +a copy at http://www.info-zip.org/pub/infozip/license.html. + + +Copyright (c) 1990-2007 Info-ZIP. All rights reserved. + +For the purposes of this copyright and license, "Info-ZIP" is defined as +the following set of individuals: + + Mark Adler, John Bush, Karl Davis, Harald Denker, Jean-Michel Dubois, + Jean-loup Gailly, Hunter Goatley, Ed Gordon, Ian Gorman, Chris Herborth, + Dirk Haase, Greg Hartwig, Robert Heath, Jonathan Hudson, Paul Kienitz, + David Kirschbaum, Johnny Lee, Onno van der Linden, Igor Mandrichenko, + Steve P. Miller, Sergio Monesi, Keith Owens, George Petrov, Greg Roelofs, + Kai Uwe Rommel, Steve Salisbury, Dave Smith, Steven M. Schweda, + Christian Spieler, Cosmin Truta, Antoine Verheijen, Paul von Behren, + Rich Wales, Mike White. + +This software is provided "as is," without warranty of any kind, express +or implied. In no event shall Info-ZIP or its contributors be held liable +for any direct, indirect, incidental, special or consequential damages +arising out of the use of or inability to use this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the above disclaimer and the following restrictions: + + 1. Redistributions of source code (in whole or in part) must retain + the above copyright notice, definition, disclaimer, and this list + of conditions. + + 2. Redistributions in binary form (compiled executables and libraries) + must reproduce the above copyright notice, definition, disclaimer, + and this list of conditions in documentation and/or other materials + provided with the distribution. The sole exception to this condition + is redistribution of a standard UnZipSFX binary (including SFXWiz) as + part of a self-extracting archive; that is permitted without inclusion + of this license, as long as the normal SFX banner has not been removed + from the binary or disabled. + + 3. Altered versions--including, but not limited to, ports to new operating + systems, existing ports with new graphical interfaces, versions with + modified or added functionality, and dynamic, shared, or static library + versions not from Info-ZIP--must be plainly marked as such and must not + be misrepresented as being the original source or, if binaries, + compiled from the original source. Such altered versions also must not + be misrepresented as being Info-ZIP releases--including, but not + limited to, labeling of the altered versions with the names "Info-ZIP" + (or any variation thereof, including, but not limited to, different + capitalizations), "Pocket UnZip," "WiZ" or "MacZip" without the + explicit permission of Info-ZIP. Such altered versions are further + prohibited from misrepresentative use of the Zip-Bugs or Info-ZIP + e-mail addresses or the Info-ZIP URL(s), such as to imply Info-ZIP + will provide support for the altered versions. + + 4. Info-ZIP retains the right to use the names "Info-ZIP," "Zip," "UnZip," + "UnZipSFX," "WiZ," "Pocket UnZip," "Pocket Zip," and "MacZip" for its + own source and binary releases. diff --git a/core/io/LICENSE-MiniZip.txt b/core/io/LICENSE-MiniZip.txt new file mode 100644 index 0000000000..0e8950f86f --- /dev/null +++ b/core/io/LICENSE-MiniZip.txt @@ -0,0 +1,32 @@ +Credits + + Gilles Vollant - Original MiniZip author + Even Rouault - ZIP64 unzip Support + Daniel Borca - BZip Compression method support in unzip + Mathias Svensson - ZIP64 zip support + Mathias Svensson - BZip Compression method support in zip + + This version has been modified for Godot Engine + + +License +---------------------------------------------------------------------------- + Condition of use and distribution are the same than zlib : + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + +---------------------------------------------------------------------------- diff --git a/core/io/ioapi.c b/core/io/ioapi.c index 8818199f0b..d6063a5fe6 100644 --- a/core/io/ioapi.c +++ b/core/io/ioapi.c @@ -6,7 +6,7 @@ Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) - For more info read MiniZip_info.txt + For more info read LICENSE-MiniZip.txt */ diff --git a/core/io/ioapi.h b/core/io/ioapi.h index 24bf612617..cb6cb7e766 100644 --- a/core/io/ioapi.h +++ b/core/io/ioapi.h @@ -5,7 +5,7 @@ Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) - For more info read MiniZip_info.txt + For more info read LICENSE-MiniZip.txt Changes diff --git a/core/io/unzip.c b/core/io/unzip.c index b438021ad7..78672677f9 100644 --- a/core/io/unzip.c +++ b/core/io/unzip.c @@ -10,7 +10,7 @@ Modifications for Zip64 support on both zip and unzip Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) - For more info read MiniZip_info.txt + For more info read LICENSE-MiniZip.txt ------------------------------------------------------------------------------------ diff --git a/core/io/unzip.h b/core/io/unzip.h index cb3d239eac..f67c3b2fa8 100644 --- a/core/io/unzip.h +++ b/core/io/unzip.h @@ -10,7 +10,7 @@ Modifications for Zip64 support on both zip and unzip Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) - For more info read MiniZip_info.txt + For more info read LICENSE-MiniZip.txt --------------------------------------------------------------------------------- diff --git a/core/io/zip.c b/core/io/zip.c index c4ab93ab81..44c79195d9 100644 --- a/core/io/zip.c +++ b/core/io/zip.c @@ -7,7 +7,7 @@ Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) - For more info read MiniZip_info.txt + For more info read LICENSE-MiniZip.txt Changes Oct-2009 - Mathias Svensson - Remove old C style function prototypes diff --git a/core/io/zip.h b/core/io/zip.h index 85f93568c9..37478b34c0 100644 --- a/core/io/zip.h +++ b/core/io/zip.h @@ -6,7 +6,7 @@ Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) - For more info read MiniZip_info.txt + For more info read LICENSE-MiniZip.txt --------------------------------------------------------------------------- diff --git a/drivers/ogg/COPYING b/drivers/ogg/COPYING new file mode 100644 index 0000000000..6111c6c5a6 --- /dev/null +++ b/drivers/ogg/COPYING @@ -0,0 +1,28 @@ +Copyright (c) 2002, Xiph.org Foundation + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of the Xiph.org Foundation nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/drivers/opus/COPYING b/drivers/opus/COPYING new file mode 100644 index 0000000000..7b53d665df --- /dev/null +++ b/drivers/opus/COPYING @@ -0,0 +1,28 @@ +Copyright (c) 1994-2013 Xiph.Org Foundation and contributors + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of the Xiph.Org Foundation nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/drivers/theora/COPYING b/drivers/theora/COPYING new file mode 100644 index 0000000000..c8ccce4ffb --- /dev/null +++ b/drivers/theora/COPYING @@ -0,0 +1,28 @@ +Copyright (C) 2002-2009 Xiph.org Foundation + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of the Xiph.org Foundation nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/drivers/theora/LICENSE b/drivers/theora/LICENSE new file mode 100644 index 0000000000..5e5ec08469 --- /dev/null +++ b/drivers/theora/LICENSE @@ -0,0 +1,18 @@ +Please see the file COPYING for the copyright license for this software. + +In addition to and irrespective of the copyright license associated +with this software, On2 Technologies, Inc. makes the following statement +regarding technology used in this software: + + On2 represents and warrants that it shall not assert any rights + relating to infringement of On2's registered patents, nor initiate + any litigation asserting such rights, against any person who, or + entity which utilizes the On2 VP3 Codec Software, including any + use, distribution, and sale of said Software; which make changes, + modifications, and improvements in said Software; and to use, + distribute, and sell said changes as well as applications for other + fields of use. + +This reference implementation is originally derived from the On2 VP3 +Codec Software, and the Theora video format is essentially compatible +with the VP3 video format, consisting of a backward-compatible superset. diff --git a/drivers/vorbis/COPYING b/drivers/vorbis/COPYING new file mode 100644 index 0000000000..28de72a970 --- /dev/null +++ b/drivers/vorbis/COPYING @@ -0,0 +1,28 @@ +Copyright (c) 2002-2008 Xiph.org Foundation + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of the Xiph.org Foundation nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/drivers/webp/AUTHORS b/drivers/webp/AUTHORS new file mode 100644 index 0000000000..70423cb4dd --- /dev/null +++ b/drivers/webp/AUTHORS @@ -0,0 +1,26 @@ +Contributors: +- Charles Munger (clm at google dot com) +- Christian Duvivier (cduvivier at google dot com) +- Djordje Pesut (djordje dot pesut at imgtec dot com) +- James Zern (jzern at google dot com) +- Jan Engelhardt (jengelh at medozas dot de) +- Johann (johann dot koenig at duck dot com) +- Jovan Zelincevic (jovan dot zelincevic at imgtec dot com) +- Jyrki Alakuijala (jyrki at google dot com) +- levytamar82 (tamar dot levy at intel dot com) +- Lou Quillio (louquillio at google dot com) +- Mans Rullgard (mans at mansr dot com) +- Martin Olsson (mnemo at minimum dot se) +- Mikołaj Zalewski (mikolajz at google dot com) +- Noel Chromium (noel at chromium dot org) +- Pascal Massimino (pascal dot massimino at gmail dot com) +- Paweł Hajdan, Jr (phajdan dot jr at chromium dot org) +- Pierre Joye (pierre dot php at gmail dot com) +- Sam Clegg (sbc at chromium dot org) +- Scott LaVarnway (slavarnway at google dot com) +- Scott Talbot (s at chikachow dot org) +- Slobodan Prijic (slobodan dot prijic at imgtec dot com) +- Somnath Banerjee (somnath dot banerjee at gmail dot com) +- Timothy Gu (timothygu99 at gmail dot com) +- Urvang Joshi (urvang at google dot com) +- Vikas Arora (vikasa at google dot com) diff --git a/drivers/webp/COPYING b/drivers/webp/COPYING new file mode 100644 index 0000000000..7a6f99547d --- /dev/null +++ b/drivers/webp/COPYING @@ -0,0 +1,30 @@ +Copyright (c) 2010, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + * Neither the name of Google nor the names of its contributors may + be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + diff --git a/drivers/webp/PATENTS b/drivers/webp/PATENTS new file mode 100644 index 0000000000..caedf607e9 --- /dev/null +++ b/drivers/webp/PATENTS @@ -0,0 +1,23 @@ +Additional IP Rights Grant (Patents) +------------------------------------ + +"These implementations" means the copyrightable works that implement the WebM +codecs distributed by Google as part of the WebM Project. + +Google hereby grants to you a perpetual, worldwide, non-exclusive, no-charge, +royalty-free, irrevocable (except as stated in this section) patent license to +make, have made, use, offer to sell, sell, import, transfer, and otherwise +run, modify and propagate the contents of these implementations of WebM, where +such license applies only to those patent claims, both currently owned by +Google and acquired in the future, licensable by Google that are necessarily +infringed by these implementations of WebM. This grant does not include claims +that would be infringed only as a consequence of further modification of these +implementations. If you or your agent or exclusive licensee institute or order +or agree to the institution of patent litigation or any other patent +enforcement activity against any entity (including a cross-claim or +counterclaim in a lawsuit) alleging that any of these implementations of WebM +or any code incorporated within any of these implementations of WebM +constitute direct or contributory patent infringement, or inducement of +patent infringement, then any patent rights granted to you under this License +for these implementations of WebM shall terminate as of the date such +litigation is filed. diff --git a/drivers/windows/dir_access_windows.cpp b/drivers/windows/dir_access_windows.cpp index b9476b870b..913ba1eb2b 100644 --- a/drivers/windows/dir_access_windows.cpp +++ b/drivers/windows/dir_access_windows.cpp @@ -69,7 +69,7 @@ bool DirAccessWindows::list_dir_begin() { _cisdir=false; _cishidden=false; - + list_dir_end(); p->h = FindFirstFileExW((current_dir+"\\*").c_str(), FindExInfoStandard, &p->fu, FindExSearchNameMatch, NULL, 0); @@ -83,7 +83,7 @@ String DirAccessWindows::get_next() { if (p->h==INVALID_HANDLE_VALUE) return ""; - + _cisdir=(p->fu.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY); _cishidden=(p->fu.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN); @@ -192,7 +192,7 @@ Error DirAccessWindows::make_dir(String p_dir) { #else p_dir=fix_path(p_dir); - + //p_dir.replace("/","\\"); bool success; @@ -249,7 +249,7 @@ bool DirAccessWindows::file_exists(String p_file) { p_file=get_current_dir().plus_file(p_file); p_file=fix_path(p_file); - + //p_file.replace("/","\\"); //WIN32_FILE_ATTRIBUTE_DATA fileInfo; @@ -359,8 +359,12 @@ FileType DirAccessWindows::get_file_type(const String& p_file) const { */ size_t DirAccessWindows::get_space_left() { - return -1; -}; + uint64_t bytes = 0; + GetDiskFreeSpaceEx(NULL,(PULARGE_INTEGER)&bytes,NULL,NULL); + + //this is either 0 or a value in bytes. + return (size_t)bytes; +} DirAccessWindows::DirAccessWindows() { diff --git a/platform/osx/dir_access_osx.mm b/platform/osx/dir_access_osx.mm index 20dc1df8f4..d123c5c648 100644 --- a/platform/osx/dir_access_osx.mm +++ b/platform/osx/dir_access_osx.mm @@ -319,10 +319,10 @@ size_t DirAccessOSX::get_space_left() { struct statvfs vfs; if (statvfs(current_dir.utf8().get_data(), &vfs) != 0) { - return -1; + return 0; }; - return vfs.f_bfree * vfs.f_bsize; + return (size_t) (vfs.f_bavail * vfs.f_bsize); #else #warning THIS IS BROKEN return 0; diff --git a/platform/x11/context_gl_x11.cpp b/platform/x11/context_gl_x11.cpp index 4e00dbf0a8..cd325dfc99 100644 --- a/platform/x11/context_gl_x11.cpp +++ b/platform/x11/context_gl_x11.cpp @@ -179,14 +179,38 @@ int ContextGL_X11::get_window_height() { } void ContextGL_X11::set_use_vsync(bool p_use) { - GLXDrawable drawable = glXGetCurrentDrawable(); - //GLXSwapIntervalEXT(x11_display, drawable, p_use?1:0); - use_vsync=p_use; + static bool setup = false; + static PFNGLXSWAPINTERVALEXTPROC glXSwapIntervalEXT = NULL; + static PFNGLXSWAPINTERVALSGIPROC glXSwapIntervalMESA = NULL; + static PFNGLXSWAPINTERVALSGIPROC glXSwapIntervalSGI = NULL; + + if (!setup) { + setup = true; + String extensions = glXQueryExtensionsString(x11_display, DefaultScreen(x11_display)); + if (extensions.find("GLX_EXT_swap_control") != -1) + glXSwapIntervalEXT = (PFNGLXSWAPINTERVALEXTPROC) glXGetProcAddressARB((const GLubyte*)"glXSwapIntervalEXT"); + if (extensions.find("GLX_MESA_swap_control") != -1) + glXSwapIntervalMESA = (PFNGLXSWAPINTERVALSGIPROC) glXGetProcAddressARB((const GLubyte*)"glXSwapIntervalMESA"); + if (extensions.find("GLX_SGI_swap_control") != -1) + glXSwapIntervalSGI = (PFNGLXSWAPINTERVALSGIPROC) glXGetProcAddressARB((const GLubyte*)"glXSwapIntervalSGI"); + } + int val = p_use ? 1:0; + if (glXSwapIntervalMESA) { + glXSwapIntervalMESA(val); + } + else if (glXSwapIntervalSGI) { + glXSwapIntervalSGI(val); + } + else if (glXSwapIntervalEXT) { + GLXDrawable drawable = glXGetCurrentDrawable(); + glXSwapIntervalEXT(x11_display, drawable, val); + } + else return; + use_vsync = p_use; } bool ContextGL_X11::is_using_vsync() const { - return false; - //return use_vsync; + return use_vsync; } diff --git a/scene/gui/tab_container.cpp b/scene/gui/tab_container.cpp index c8bd1cb5a1..d19e5f0d60 100644 --- a/scene/gui/tab_container.cpp +++ b/scene/gui/tab_container.cpp @@ -411,7 +411,6 @@ void TabContainer::_notification(int p_what) { panel->draw(ci, Rect2( 0, top_size.height, size.width, size.height-top_size.height)); } break; - case NOTIFICATION_READY: case NOTIFICATION_THEME_CHANGED: { call_deferred("set_current_tab",get_current_tab()); //wait until all changed theme diff --git a/tools/editor/icons/2x/icon_control_align_bottom_left.png b/tools/editor/icons/2x/icon_control_align_bottom_left.png index 56ace004a7..03520ca327 100644 Binary files a/tools/editor/icons/2x/icon_control_align_bottom_left.png and b/tools/editor/icons/2x/icon_control_align_bottom_left.png differ diff --git a/tools/editor/icons/2x/icon_control_align_bottom_right.png b/tools/editor/icons/2x/icon_control_align_bottom_right.png index 03520ca327..56ace004a7 100644 Binary files a/tools/editor/icons/2x/icon_control_align_bottom_right.png and b/tools/editor/icons/2x/icon_control_align_bottom_right.png differ diff --git a/tools/editor/icons/2x/icon_file.png b/tools/editor/icons/2x/icon_file.png index a7e135b600..a495efee09 100644 Binary files a/tools/editor/icons/2x/icon_file.png and b/tools/editor/icons/2x/icon_file.png differ diff --git a/tools/editor/icons/2x/icon_file_big.png b/tools/editor/icons/2x/icon_file_big.png index 806814d559..c5b347f71f 100644 Binary files a/tools/editor/icons/2x/icon_file_big.png and b/tools/editor/icons/2x/icon_file_big.png differ diff --git a/tools/editor/icons/2x/icon_folder_big.png b/tools/editor/icons/2x/icon_folder_big.png index bd048a7c5f..f960bb7e57 100644 Binary files a/tools/editor/icons/2x/icon_folder_big.png and b/tools/editor/icons/2x/icon_folder_big.png differ diff --git a/tools/editor/icons/2x/icon_multi_line.png b/tools/editor/icons/2x/icon_multi_line.png new file mode 100644 index 0000000000..0760b233cf Binary files /dev/null and b/tools/editor/icons/2x/icon_multi_line.png differ diff --git a/tools/editor/icons/2x/icon_new.png b/tools/editor/icons/2x/icon_new.png index a7e135b600..a495efee09 100644 Binary files a/tools/editor/icons/2x/icon_new.png and b/tools/editor/icons/2x/icon_new.png differ diff --git a/tools/editor/icons/2x/icon_plane.png b/tools/editor/icons/2x/icon_plane.png new file mode 100644 index 0000000000..33f54d5e70 Binary files /dev/null and b/tools/editor/icons/2x/icon_plane.png differ diff --git a/tools/editor/icons/2x/icon_quat.png b/tools/editor/icons/2x/icon_quat.png new file mode 100644 index 0000000000..97bad80684 Binary files /dev/null and b/tools/editor/icons/2x/icon_quat.png differ diff --git a/tools/editor/icons/2x/icon_reload_small.png b/tools/editor/icons/2x/icon_reload_small.png new file mode 100644 index 0000000000..3396df7069 Binary files /dev/null and b/tools/editor/icons/2x/icon_reload_small.png differ diff --git a/tools/editor/icons/2x/icon_save.png b/tools/editor/icons/2x/icon_save.png index 183515d055..9fdc4c568c 100644 Binary files a/tools/editor/icons/2x/icon_save.png and b/tools/editor/icons/2x/icon_save.png differ diff --git a/tools/editor/icons/2x/icon_string.png b/tools/editor/icons/2x/icon_string.png new file mode 100644 index 0000000000..b0bf611c51 Binary files /dev/null and b/tools/editor/icons/2x/icon_string.png differ diff --git a/tools/editor/icons/icon_control_align_bottom_left.png b/tools/editor/icons/icon_control_align_bottom_left.png index e098493415..d0b4bed896 100644 Binary files a/tools/editor/icons/icon_control_align_bottom_left.png and b/tools/editor/icons/icon_control_align_bottom_left.png differ diff --git a/tools/editor/icons/icon_control_align_bottom_right.png b/tools/editor/icons/icon_control_align_bottom_right.png index d0b4bed896..e098493415 100644 Binary files a/tools/editor/icons/icon_control_align_bottom_right.png and b/tools/editor/icons/icon_control_align_bottom_right.png differ diff --git a/tools/editor/icons/icon_file.png b/tools/editor/icons/icon_file.png index 5433736869..5407b500cc 100644 Binary files a/tools/editor/icons/icon_file.png and b/tools/editor/icons/icon_file.png differ diff --git a/tools/editor/icons/icon_file_big.png b/tools/editor/icons/icon_file_big.png index e7027b59f1..9680f601fe 100644 Binary files a/tools/editor/icons/icon_file_big.png and b/tools/editor/icons/icon_file_big.png differ diff --git a/tools/editor/icons/icon_folder_big.png b/tools/editor/icons/icon_folder_big.png index 096d9c0dd0..8c39a99bd4 100644 Binary files a/tools/editor/icons/icon_folder_big.png and b/tools/editor/icons/icon_folder_big.png differ diff --git a/tools/editor/icons/icon_multi_line.png b/tools/editor/icons/icon_multi_line.png index c3e77f0fbe..dfb67f522b 100644 Binary files a/tools/editor/icons/icon_multi_line.png and b/tools/editor/icons/icon_multi_line.png differ diff --git a/tools/editor/icons/icon_new.png b/tools/editor/icons/icon_new.png index 5433736869..5407b500cc 100644 Binary files a/tools/editor/icons/icon_new.png and b/tools/editor/icons/icon_new.png differ diff --git a/tools/editor/icons/icon_plane.png b/tools/editor/icons/icon_plane.png index fbdc247e5a..e7506922f7 100644 Binary files a/tools/editor/icons/icon_plane.png and b/tools/editor/icons/icon_plane.png differ diff --git a/tools/editor/icons/icon_quat.png b/tools/editor/icons/icon_quat.png index f09d2fcaba..44a9eada98 100644 Binary files a/tools/editor/icons/icon_quat.png and b/tools/editor/icons/icon_quat.png differ diff --git a/tools/editor/icons/icon_reload_small.png b/tools/editor/icons/icon_reload_small.png index 957cdfcf4f..6809c4feab 100644 Binary files a/tools/editor/icons/icon_reload_small.png and b/tools/editor/icons/icon_reload_small.png differ diff --git a/tools/editor/icons/icon_save.png b/tools/editor/icons/icon_save.png index 1a1cae8741..77c0cccc94 100644 Binary files a/tools/editor/icons/icon_save.png and b/tools/editor/icons/icon_save.png differ diff --git a/tools/editor/icons/icon_string.png b/tools/editor/icons/icon_string.png index 4a747f7c62..8cf133c7ef 100644 Binary files a/tools/editor/icons/icon_string.png and b/tools/editor/icons/icon_string.png differ diff --git a/tools/editor/icons/source/icon_control_align_bottom_left.svg b/tools/editor/icons/source/icon_control_align_bottom_left.svg index a4ba9a552a..e718208f37 100644 --- a/tools/editor/icons/source/icon_control_align_bottom_left.svg +++ b/tools/editor/icons/source/icon_control_align_bottom_left.svg @@ -88,7 +88,7 @@ id="rect4171" width="4" height="4.0000172" - x="10" + x="2" y="1046.3622" /> diff --git a/tools/editor/icons/source/icon_control_align_bottom_right.svg b/tools/editor/icons/source/icon_control_align_bottom_right.svg index 7a234b10ad..e4c5d884eb 100644 --- a/tools/editor/icons/source/icon_control_align_bottom_right.svg +++ b/tools/editor/icons/source/icon_control_align_bottom_right.svg @@ -88,7 +88,7 @@ id="rect4171" width="4" height="4.0000172" - x="2" + x="10" y="1046.3622" /> diff --git a/tools/editor/icons/source/icon_file_big.svg b/tools/editor/icons/source/icon_file_big.svg index 2031535b19..38ad9b707a 100644 --- a/tools/editor/icons/source/icon_file_big.svg +++ b/tools/editor/icons/source/icon_file_big.svg @@ -28,9 +28,9 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="5.656854" - inkscape:cx="19.467688" - inkscape:cy="47.67564" + inkscape:zoom="11.313708" + inkscape:cx="32.899003" + inkscape:cy="32.88081" inkscape:document-units="px" inkscape:current-layer="layer1-8" showgrid="true" @@ -62,7 +62,7 @@ image/svg+xml - + @@ -77,9 +77,11 @@ transform="translate(0,-1.6949463e-5)"> + id="rect4158" + inkscape:connector-curvature="0" + sodipodi:nodetypes="ccccccccccc" /> diff --git a/tools/editor/icons/source/icon_folder_big.svg b/tools/editor/icons/source/icon_folder_big.svg index 71d3940d6b..818eaa2ba3 100644 --- a/tools/editor/icons/source/icon_folder_big.svg +++ b/tools/editor/icons/source/icon_folder_big.svg @@ -15,7 +15,7 @@ id="svg2" version="1.1" inkscape:version="0.91 r13725" - inkscape:export-filename="/home/djrm/Projects/godot/tools/editor/icons/icon_folder.png" + inkscape:export-filename="/home/djrm/Projects/godot/tools/editor/icons/icon_folder_big.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90" sodipodi:docname="icon_folder_big.svg"> @@ -29,8 +29,8 @@ inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="8" - inkscape:cx="35.45774" - inkscape:cy="34.995782" + inkscape:cx="27.662311" + inkscape:cy="41.159533" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="true" @@ -64,7 +64,7 @@ image/svg+xml - + @@ -87,7 +87,7 @@ style="opacity:1;fill:#e0e0e0;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> @@ -119,9 +119,9 @@ x="8" y="1008.3622" /> @@ -129,7 +129,7 @@ style="opacity:1;fill:#e0e0e0;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="circle4151" cx="31" - cy="1001.3622" + cy="1005.3622" r="5.0039101" /> + y="1000.3622" /> + inkscape:export-filename="/home/djrm/Projects/godot/tools/editor/icons/icon_key_invalid.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90" + sodipodi:docname="icon_key_invalid.svg"> image/svg+xml - + diff --git a/tools/editor/icons/source/icon_multi_line.svg b/tools/editor/icons/source/icon_multi_line.svg new file mode 100644 index 0000000000..542e311286 --- /dev/null +++ b/tools/editor/icons/source/icon_multi_line.svg @@ -0,0 +1,115 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/tools/editor/icons/source/icon_new.svg b/tools/editor/icons/source/icon_new.svg index 208ee9a6f4..a37ba1be3f 100644 --- a/tools/editor/icons/source/icon_new.svg +++ b/tools/editor/icons/source/icon_new.svg @@ -28,9 +28,9 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="31.999999" - inkscape:cx="7.9365607" - inkscape:cy="9.3818162" + inkscape:zoom="16" + inkscape:cx="0.22745062" + inkscape:cy="11.330333" inkscape:document-units="px" inkscape:current-layer="layer1-8" showgrid="true" @@ -46,7 +46,10 @@ inkscape:window-height="1016" inkscape:window-x="0" inkscape:window-y="27" - inkscape:window-maximized="1"> + inkscape:window-maximized="1" + inkscape:snap-smooth-nodes="true" + inkscape:object-nodes="true" + showguides="false"> @@ -76,7 +79,7 @@ sodipodi:nodetypes="ccccccccccc" inkscape:connector-curvature="0" id="rect4158" - d="m 2,1037.3622 0,14 12,0 0,-10 -4,0 0,-4 z m 9,0 0,3 3,0 z" + d="m 2,1037.3622 0,14 12,0 0,-9 -5,0 0,-5 z m 8,0 0,4 4,0 z" style="opacity:1;fill:#e0e0e0;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> diff --git a/tools/editor/icons/source/icon_plane.svg b/tools/editor/icons/source/icon_plane.svg new file mode 100644 index 0000000000..de5b5efc82 --- /dev/null +++ b/tools/editor/icons/source/icon_plane.svg @@ -0,0 +1,82 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/tools/editor/icons/source/icon_quat.svg b/tools/editor/icons/source/icon_quat.svg new file mode 100644 index 0000000000..36560d9d8f --- /dev/null +++ b/tools/editor/icons/source/icon_quat.svg @@ -0,0 +1,82 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + diff --git a/tools/editor/icons/source/icon_reload_small.svg b/tools/editor/icons/source/icon_reload_small.svg new file mode 100644 index 0000000000..2d891c2238 --- /dev/null +++ b/tools/editor/icons/source/icon_reload_small.svg @@ -0,0 +1,95 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + diff --git a/tools/editor/icons/source/icon_save.svg b/tools/editor/icons/source/icon_save.svg index 9e8ac03ad9..9307537d4b 100644 --- a/tools/editor/icons/source/icon_save.svg +++ b/tools/editor/icons/source/icon_save.svg @@ -28,9 +28,9 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="11.313708" - inkscape:cx="2.0254101" - inkscape:cy="14.320474" + inkscape:zoom="31.999999" + inkscape:cx="12.546235" + inkscape:cy="8.6646398" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="true" @@ -46,7 +46,9 @@ inkscape:window-height="1016" inkscape:window-x="0" inkscape:window-y="27" - inkscape:window-maximized="1"> + inkscape:window-maximized="1" + inkscape:snap-smooth-nodes="true" + inkscape:object-nodes="true"> @@ -59,7 +61,7 @@ image/svg+xml - + @@ -70,8 +72,23 @@ transform="translate(0,-1036.3622)"> + id="rect4135" + inkscape:connector-curvature="0" + sodipodi:nodetypes="ssssssccscccccsssss" /> + + diff --git a/tools/editor/icons/source/icon_string.svg b/tools/editor/icons/source/icon_string.svg new file mode 100644 index 0000000000..f32e82256f --- /dev/null +++ b/tools/editor/icons/source/icon_string.svg @@ -0,0 +1,77 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/tools/editor/icons/svgs_2_pngs.py b/tools/editor/icons/svgs_2_pngs.py index de47555522..fd1e9017b6 100644 --- a/tools/editor/icons/svgs_2_pngs.py +++ b/tools/editor/icons/svgs_2_pngs.py @@ -62,7 +62,7 @@ special_icons = { 'icon_animation_tree_player': dict( output_names=['icon_animation_tree'] ), 'icon_tool_rotate': dict( output_names=['icon_reload'] ), 'icon_multi_edit': dict( output_names=['icon_multi_node_edit'] ), - 'icon_folder': dict( output_names=['icon_load'] ), + 'icon_folder': dict( output_names=['icon_load', 'icon_open'] ), 'icon_file_list': dict( output_names=['icon_enum'] ), 'icon_collision_2d': dict( output_names=['icon_collision_polygon_2d', 'icon_polygon_2d'] ), 'icon_class_list': dict( output_names=['icon_filesystem'] ),