From 3fb3b7c1f7609f73b6992b43316e2a52764f09db Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 6 Jun 2016 07:30:23 +0200 Subject: [PATCH 01/10] Somewhat fixed Directory::get_space_left() return values. --- drivers/windows/dir_access_windows.cpp | 16 ++++++++++------ platform/osx/dir_access_osx.mm | 4 ++-- 2 files changed, 12 insertions(+), 8 deletions(-) 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; From 04fc62c4e3ace066cfb6c1114dc0238b299e2d7c Mon Sep 17 00:00:00 2001 From: Roberto Date: Mon, 6 Jun 2016 12:32:02 +0200 Subject: [PATCH 02/10] Add missing license information (MiniZip) --- core/io/LICENSE-InfoZip.txt | 60 +++++++++++++++++++++++++++++++++++++ core/io/LICENSE-MiniZip.txt | 32 ++++++++++++++++++++ core/io/ioapi.c | 2 +- core/io/ioapi.h | 2 +- core/io/unzip.c | 2 +- core/io/unzip.h | 2 +- core/io/zip.c | 2 +- core/io/zip.h | 2 +- 8 files changed, 98 insertions(+), 6 deletions(-) create mode 100644 core/io/LICENSE-InfoZip.txt create mode 100644 core/io/LICENSE-MiniZip.txt 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 --------------------------------------------------------------------------- From f97f8971e3afd738a787b3a47f18feba3ee1f104 Mon Sep 17 00:00:00 2001 From: Roberto Date: Mon, 6 Jun 2016 12:45:30 +0200 Subject: [PATCH 03/10] Add missing license information (WebP) --- drivers/webp/AUTHORS | 26 ++++++++++++++++++++++++++ drivers/webp/COPYING | 30 ++++++++++++++++++++++++++++++ drivers/webp/PATENTS | 23 +++++++++++++++++++++++ 3 files changed, 79 insertions(+) create mode 100644 drivers/webp/AUTHORS create mode 100644 drivers/webp/COPYING create mode 100644 drivers/webp/PATENTS 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. From ad0af9d2739f17c35be1dc78fab8049e96592cc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pedro=20J=2E=20Est=C3=A9banez?= Date: Mon, 6 Jun 2016 13:45:45 +0200 Subject: [PATCH 04/10] Keep the default environment variables as set by SCons --- SConstruct | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) 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=[] From 18fc2ccbe1b6ae38153db1066b696dee3a7a176b Mon Sep 17 00:00:00 2001 From: Roberto Date: Mon, 6 Jun 2016 16:32:37 +0200 Subject: [PATCH 05/10] Add missing license information (Theora) --- drivers/theora/COPYING | 28 ++++++++++++++++++++++++++++ drivers/theora/LICENSE | 18 ++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 drivers/theora/COPYING create mode 100644 drivers/theora/LICENSE 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. From c0a8c4f6e4cd3b70d8c14d34918a25c28760170c Mon Sep 17 00:00:00 2001 From: Roberto Date: Mon, 6 Jun 2016 19:05:36 +0200 Subject: [PATCH 06/10] Add missing license information (ogg/vorbis/opus) --- drivers/ogg/COPYING | 28 ++++++++++++++++++++++++++++ drivers/opus/COPYING | 28 ++++++++++++++++++++++++++++ drivers/vorbis/COPYING | 28 ++++++++++++++++++++++++++++ 3 files changed, 84 insertions(+) create mode 100644 drivers/ogg/COPYING create mode 100644 drivers/opus/COPYING create mode 100644 drivers/vorbis/COPYING 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/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. From 3a21f98131149a534b8e89083d5ddccc660f8ae2 Mon Sep 17 00:00:00 2001 From: Saracen Date: Mon, 6 Jun 2016 18:24:34 +0100 Subject: [PATCH 07/10] Fixed bottom left and right icon order for anchor editor. --- .../icons/2x/icon_control_align_bottom_left.png | Bin 220 -> 220 bytes .../2x/icon_control_align_bottom_right.png | Bin 220 -> 220 bytes .../icons/icon_control_align_bottom_left.png | Bin 196 -> 194 bytes .../icons/icon_control_align_bottom_right.png | Bin 194 -> 196 bytes .../source/icon_control_align_bottom_left.svg | 2 +- .../source/icon_control_align_bottom_right.svg | 2 +- 6 files changed, 2 insertions(+), 2 deletions(-) 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 56ace004a7764eed70aa8a8c0830ac40da4c50fa..03520ca327b4198537e2877751d1440159b6bbc4 100644 GIT binary patch delta 107 zcmcb^c!zO9MGEHu2aeW<~Zd1tSo$iEVYgW_5ef`(Tm+@BXPOe%@v zp84~ogYoT8-*_3IAn*Hu+Xdf`*M;U*{$^ufU@-W>ThAYH(2J)vb~Zd1tSo$iEVYgW_5ef`(Tm+@BXPOe%@v zp84~ogYoT8-*_3IAn*Hu+Xdf`*M;U*{$^ufU@-W>ThAYH(2J)vb 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" /> From a0eb297cfcc59bd9cf743250ddc9b21975f4fdaf Mon Sep 17 00:00:00 2001 From: Paulb23 Date: Mon, 6 Jun 2016 19:50:54 +0100 Subject: [PATCH 08/10] Fix error tab index out of size print, issue 4997 --- scene/gui/tab_container.cpp | 1 - 1 file changed, 1 deletion(-) 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 From bf4d749f1036f332094b8ff58cbe8889a64e6ca5 Mon Sep 17 00:00:00 2001 From: "Daniel J. Ramirez" Date: Mon, 6 Jun 2016 16:40:59 -0500 Subject: [PATCH 09/10] Fixed some icons given the feedback, also added some missing icons --- tools/editor/icons/2x/icon_file.png | Bin 246 -> 252 bytes tools/editor/icons/2x/icon_file_big.png | Bin 902 -> 561 bytes tools/editor/icons/2x/icon_folder_big.png | Bin 1071 -> 1047 bytes tools/editor/icons/2x/icon_multi_line.png | Bin 0 -> 222 bytes tools/editor/icons/2x/icon_new.png | Bin 246 -> 252 bytes tools/editor/icons/2x/icon_plane.png | Bin 0 -> 362 bytes tools/editor/icons/2x/icon_quat.png | Bin 0 -> 724 bytes tools/editor/icons/2x/icon_reload_small.png | Bin 0 -> 812 bytes tools/editor/icons/2x/icon_save.png | Bin 530 -> 522 bytes tools/editor/icons/2x/icon_string.png | Bin 0 -> 273 bytes tools/editor/icons/icon_file.png | Bin 207 -> 213 bytes tools/editor/icons/icon_file_big.png | Bin 504 -> 373 bytes tools/editor/icons/icon_folder_big.png | Bin 551 -> 538 bytes tools/editor/icons/icon_multi_line.png | Bin 186 -> 196 bytes tools/editor/icons/icon_new.png | Bin 207 -> 213 bytes tools/editor/icons/icon_plane.png | Bin 368 -> 291 bytes tools/editor/icons/icon_quat.png | Bin 239 -> 397 bytes tools/editor/icons/icon_reload_small.png | Bin 447 -> 465 bytes tools/editor/icons/icon_save.png | Bin 319 -> 308 bytes tools/editor/icons/icon_string.png | Bin 136 -> 216 bytes tools/editor/icons/source/icon_file_big.svg | 14 ++- tools/editor/icons/source/icon_folder_big.svg | 18 +-- .../editor/icons/source/icon_key_invalid.svg | 14 +-- tools/editor/icons/source/icon_multi_line.svg | 115 ++++++++++++++++++ tools/editor/icons/source/icon_new.svg | 13 +- tools/editor/icons/source/icon_plane.svg | 82 +++++++++++++ tools/editor/icons/source/icon_quat.svg | 82 +++++++++++++ .../editor/icons/source/icon_reload_small.svg | 95 +++++++++++++++ tools/editor/icons/source/icon_save.svg | 31 +++-- tools/editor/icons/source/icon_string.svg | 77 ++++++++++++ tools/editor/icons/svgs_2_pngs.py | 2 +- 31 files changed, 508 insertions(+), 35 deletions(-) create mode 100644 tools/editor/icons/2x/icon_multi_line.png create mode 100644 tools/editor/icons/2x/icon_plane.png create mode 100644 tools/editor/icons/2x/icon_quat.png create mode 100644 tools/editor/icons/2x/icon_reload_small.png create mode 100644 tools/editor/icons/2x/icon_string.png create mode 100644 tools/editor/icons/source/icon_multi_line.svg create mode 100644 tools/editor/icons/source/icon_plane.svg create mode 100644 tools/editor/icons/source/icon_quat.svg create mode 100644 tools/editor/icons/source/icon_reload_small.svg create mode 100644 tools/editor/icons/source/icon_string.svg diff --git a/tools/editor/icons/2x/icon_file.png b/tools/editor/icons/2x/icon_file.png index a7e135b600acc57746de28c611c1744b6f5b1de5..a495efee09211a33b811b6a4751c1f9c392bb6a0 100644 GIT binary patch delta 150 zcmeyy_=j;qUVWvfi(^Pc>)R^_c^edXST9_&@R%9oo^ZNM*tSwpkb7alhyTi)Z%^A# zdGY??r-NtK&2v;bZ74ePIbm%+uA+Wt~$(6997mJVpQj delta 144 zcmeyv_>FNwUVX8ri(^Pc>)R^_IS(lCuwGbFG9l$u8OwGbvrPZJ9HvdZa=-ou9$%k=^K=ri)>C%gQ qvLEQq|IZxwDs7rM0}?1=p0rbLs}1kQw+svnoD80>elF{r5}E*uj5Ngn diff --git a/tools/editor/icons/2x/icon_file_big.png b/tools/editor/icons/2x/icon_file_big.png index 806814d559ed8700e9aaf0f71d2294b8808c0616..c5b347f71f0e488818e21babfd7576de1666c852 100644 GIT binary patch literal 561 zcmeAS@N?(olHy`uVBq!ia0y~yU}ykg4mJh`hQoG=rx_R+Sc;uILpV4%IBGajIv5xj zI14-?iy0WC*Ml%)oYX`a1_lPn64!{5;QX|b^2DN4hVt@qz0ADq;^f4FRK5J7^x5xh zq!<_&*Lk`)hE&XXd*`C>VFv*R$0iMxl|o(%yq61SFsj_%er~pA!d5HWyT?7h-Iiux zU|{(0E3cZr#%{iS_4$~Wb^HIn?Aez4yUs=~-u?aN?cc9*@9Dbz_S??f+uvW={_|$A z-j&3{bmQh#C4mEs>qHtE_==`-uoNuNc2Q_(_U(6IP@f^w$lzyW%EUM)BZ-B{;^r0( zmJJ7%aIkDRF@=L=!-WH|eFl7k4*D5yhf#kO+Z-o zTp~WHOvN_t_}2g7mrcrl_1xNKE7yPg_`&VLcbZ>tm&AVey0mi1@{8AB1$(`Wy}eB; zisk#Fw&HW&cdxUa{>4%H--rCQN*3>a+x>HmU@$i~SDzH;{`Pv7=)vFn-alUF#1tX> zyNv&TnAgh;4Ryzl3~8HhDtoFgEpJZ)bKMqST(~5CX?c4F2S_%^Yx1Sp&SAej18f@R ze2#m0c472fmQXi=LM9u{y*oLxdKDh+Z&=%Kwl^S|CGkDuhw`ni4h*&{G?|!Qc;eXzS zUN7DGMXgTz@3D!(81h&(4Va)S%La}cM=teWY8GUy;lFVt=;L`arH0iFzB<0%{9^nH zOG^T)guOMFp1w5uDD#Z-&*!VgPQTZ>Pfx5{f2n)$OGnRFyWTBb(l2;>UD3J8A1h-1 zb1HcHUapx`BDe9a#`7AXj~|vE_|C9<_ipz|=N5g7eKN;?_OeRpt@5ALANc3q_6zb# zpES=sKKpRY^EvljYCq?vbHp)+Cgm6KF?iVnz3h| oe?I;9@89{g_eH=-m7&4+19wvBo}xc-hjlzopr07nyM%>V!Z diff --git a/tools/editor/icons/2x/icon_folder_big.png b/tools/editor/icons/2x/icon_folder_big.png index bd048a7c5f86d4c931eaa5faec610dec13b8093c..f960bb7e5746042197a39def6f5bb7d8af1cced1 100644 GIT binary patch literal 1047 zcmeAS@N?(olHy`uVBq!ia0y~yU}ykg4mJh`hQoG=rx_R+Sc;uILpV4%IBGajIv5xj zI14-?iy0WC*Ml%)oYX`a1_lPn64!{5;QX|b^2DN4hVt@qz0ADq;^f4FRK5J7^x5xh zq!<{Or+B(JhE&XXd+WSkOsT}NkI(1&aYb8> z13K6;^{Qdiw5KuKZ|~L5yn80kJ8IIE)sK@?XDpc#S8g?TdU|^L?#U-p(o0Lfu3y$a z%j`RY+v1DunoE5>Tfdi`tux$wy!qgR$jj|MlcO0lmuCO|{X1H7ssA1`=}%7+3@UQc z>dk9Un3U{oTeYexD^0%ot?7%)7c*2m=bP4^Fxjz(X;0SiEF5-}f_Bp0_ zxB4~ns)~z?x6iU$FT=z_U&p`oSslRFr0Wv|vbz4MMBQ^xw#{^z0`3yz+7llP8|aZ7|(rfzvN zL)4iwc~9~L9CoMLcRMm16m%$H5s+bIaUW>r9CwD~cHWqC?{_lGG0IrvJSd8L&R4DKoDQ-Zu^ z|E>Gaz20$pJmdec(5tqd{wjAr-Rsj?8sc>;A}+41_VQb~1{L1+!>_x$yUT;UUQf#N zuJXT>BrE@#OWONa=q3J1W&M49^VY9jJJ+N}7%7`%G}bd*e0TKuiK>a=AYo5eKbLh* G2~7Z2N4=u} literal 1071 zcmeAS@N?(olHy`uVBq!ia0y~yU}ykg4mJh`hQoG=rx_R+Sc;uILpV4%IBGajIv5xj zI14-?iy0WC*Ml%)oYX`a1_lPn64!{5;QX|b^2DN4hVt@qz0ADq;^f4FRK5J7^x5xh zq!<{O*Lb=(hE&XXdppoOBwOUz$8=w3<;8PPTST0>C+74Z_NO6Vid1d4hSuvxHB2XW zz1;U(SX1na?yB92nZbK+bFu85FoVsjxb$*kabd!l^0$@g=d0@E9~AcflXbnrAczWj zrB^0x(dY`>d^3h+gMyMcqYraN_{WV(UqZhYFTPk&TT!v&;`{H{pFexHZ@FF8jWf&| zr$5bFwT|J$+U?rk99`a}MSe5+s(3g>tYOu>8@FyngCZm;B*WSd;x5TF11e?(62gw>Vv)-SbNly#A@WcS_4lP6Ek zXP9HWBYjHC-@kvkH*em2KS(}ksoNWe-FM>-{iyxOsE}_qn|o#dil`C>rJ|#cCIqS| z@jT$rlg#N+36;Hl{hNL_!#|T75}ry$YF~LnH*+Lh`FAKib56W8!)%5X$0Qnxc@9{z zJ&<88=wsyBuy?QR%wKIHP(}yS*v#P!K+(ggo8Z`W>;7_nT|GD&Z;6J_q`R5F4 zS_R&%e#N;uaPxDfjEr}Gs`3(VCiT2$_*$agvLVCp2*a!Ftr}fnZ#bA&te5P5E+*m7 z+j-*Y4PLf@wcp-DTeKJQwy0@4sJX+|zw`;r(xA z>FMgfX8Y^taVqLCR%C5-bzju$mb~!t%O&;f3=KBtuQS+exUuMn1hI7&R)yr0~Hawjo@}g1B0ilpUXO@geCy9&d7fN 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 0000000000000000000000000000000000000000..0760b233cffe93d9e3aca72aeaf8a57e1931947a GIT binary patch literal 222 zcmeAS@N?(olHy`uVBq!ia0y~yU{C;I4mJh`hT^KKFANL}EX7WqAsieW95oy%9SjT% zoCO|{#S9G6>p_??PHLhI0|SF(iEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$ zQVa|X(Vi}jArY-_ry24wC~z=eo&Mo}_($Qn9z5M_rabq2Eh2Vr2|D#YL^@=vJB!Pb zbI)UCcVAcPzsJJNaNKsoq3)R^_c^edXST9_&@R%9oo^ZNM*tSwpkb7alhyTi)Z%^A# zdGY??r-NtK&2v;bZ74ePIbm%+uA+Wt~$(6997mJVpQj delta 144 zcmeyv_>FNwUVX8ri(^Pc>)R^_IS(lCuwGbFG9l$u8OwGbvrPZJ9HvdZa=-ou9$%k=^K=ri)>C%gQ qvLEQq|IZxwDs7rM0}?1=p0rbLs}1kQw+svnoD80>elF{r5}E*uj5Ngn diff --git a/tools/editor/icons/2x/icon_plane.png b/tools/editor/icons/2x/icon_plane.png new file mode 100644 index 0000000000000000000000000000000000000000..33f54d5e702e32c9f5c8f93b1613ac380f1337f7 GIT binary patch literal 362 zcmeAS@N?(olHy`uVBq!ia0y~yU{C;I4mJh`hT^KKFANL}EX7WqAsieW95oy%9SjT% zoCO|{#S9G6>p_??PHLhI0|SF(iEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$ zQVa|X&pllnLn2z=UeV`1ujXy)%JlrQSwn4dgm2mEixs5? z8-6ghCGEJrdU_QXS3)1U53+}*6dQA>>A{y&(S1j?9X7*nXzz6lxtwg zIunOk%XE(ywwQip>zfVhg()|$oc?x)xh5hl*#B*2NXdkAFU@|;6%(!|UbGefQND88R4r);a&VROYz&yURt5$J N22WQ%mvv4FO#qc6kU;p_??PHLhI0|SF(iEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$ zQVa}Cfu1goArY-_ryukd36wd$fB#L%8%vD3T=@Am&sg9TYvoenp<-M1QUAoAD;sT6 zSYk~$t*R%!kpFP)r?6@BiNW z{`=wC+2%Y2msH>SZMkN2w{Ou3UH$d34UdD^A9yfa&H7ps_c&^8*~9$|9%5^@PChoH zNapzc&rBB2_emz7x^~NRQfmyuDywy?UNcN{O_6DsFV4`g-@ZID^m^#mYxayDU90Sr zcQPgH=)G{*#Aj2^+PUgCKkPDNSn-N`(&h|1`E9p3?w;JjdLTKp_MT8eeWzTC+Eouf z(e9)B_PmUZjjd%^##nQf=WImw@mUNEXG|V+?OA*Mwer%Sm!bLj@7M2Pu(h?d4iwpY z=k{%Bwhwl>ybltE8BS(rGC#lb<-&ykYw!CD4jw!>-*eKPvnBEWiznZ^yZa^A{qK+W zOFp;!-K@~@c*nta3fg};?3QYK=;h|*%(2Znk+>>E>u#Zpe(ElJGscb+PRlZMIGRF} z&&VeG80Hsjjj~N$J6B7DYc+$L@nQBz-qR~qajVF0{cxLc1Ji@%jy0CguYCV2pD2;X zeBjx$XOhqFxZeNnJSm*v4ub*XgA(rbKQ+4MZDCSj1tVDuihLf%+nnDm-u7_!n*$52XD&%!yO;ODzK$Lyj-s}AT_>akBj3D#U$3i_ z6I!w){G>$jxzBq#RXo>qok*QD-DQcigE<4!ja&P*RIb~c|NUl8w4{W@jZ>U=FLH)F g-@kzQ!o_?(rnlWoWuD(+U|?YIboFyt=akR{013ZB(EtDd literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..3396df70693ad4c8a6afd70ac9b7eddeffa1047a GIT binary patch literal 812 zcmeAS@N?(olHy`uVBq!ia0y~yV2}Y}4mJh`h9chkQy3T+Sc;uILpV4%IBGajIv5xj zI14-?iy0WC*Ml%)oYX{+4#^VNh?3y^w370~qEv?R@^Zb*yzJuS#DY}4{G#;P?`)(P z7?@Uix;Tb-bl#nI&|f%E;Mo4k_1T^c)yhlmZePmYQ_nW*0PEL7uEI>>i<>TXs|(vm z>q|9PWk~H^)Tt5kWxv8xr)|5py1WnIE8T4@mvgf0rmk+m#rNO#Rc_vIp0Bo>`_KDD ziDtXk%~oGjx%7$*gY#*6D z`&(DAFlb)Ki>keK;s>}HrYkLUUV5d(ZvOw76-%e3u05K_@T|x1b*2G>!lDb?-d<;T z#_*@F<(O-V?nbBUrJtj+#V2NpOsqaO!#s0=%GIo`>|QIU3u^N;9hkFXLdUa<*1xQ` z zw$EVMBNJ;f`>cFA>$cl(tIo_i@nc^++lCp_OsuS`9{jE=kKCABof)v;nw8y@HEwQh zVGM8hChWg`(|SXPhWzHbl`(qdE-u^*eZQW_30`#4oBn$H^Oh~wt|v`f&9ERqBg9qZ z>ldX>K^h{fGCxj{@pUnm=47k}K7r1Xm+!HSPrZ`mQWfB)33G32m2Ziv*H`c41A&i^a^F{I1>efz*G S@je3s1B0ilpUXO@geCym(QY6B literal 0 HcmV?d00001 diff --git a/tools/editor/icons/2x/icon_save.png b/tools/editor/icons/2x/icon_save.png index 183515d05597f3589a111fe0376bc3df8c722ab9..9fdc4c568c43979571dae4496ac5cdbb5ace1917 100644 GIT binary patch delta 422 zcmbQl(#0|%ufE;W#W5tJ_3bo!|3eNE$L8;jIh`V0n(KV}k;eUlEU~?Hf`=948QC9w zKX5cun0DfTd^cVUhr<^yz8FP$HULuXNY06xbdT&Lo%u7Zr}08d1?nf zJ#lxH%;!2N{5DMTS)_nx!=X#-m=9hS3ug_qbYR&S+_2;ugHpERweIa}>+;zy?PGM! zelB@~`3X}(&tB#oVP275n%y0Gj69!@oYFa5`fSeUWsfc9cRqC2e5&2RC}?T*af`8o zi@EkQhK8!WcB~h!^)BaKP(P*0Z#H++gOw!>^38?o{$^z{U&-3Kd5fjuk;<10Jsa0e z`BYGP=lkDerB^SHU0%n;pw7S+bgHc6`LfKomc$#(3Hi()dU^kIPhWb?oJaZ9>tA)Q zy-!5D`Se|8j%O;9aEWI1hQE@ zvX~V%bG@|F^UA*8$a^4$!Q~6ngOKdli&5b-ezG{!%dJ1tUJ$lJV9`U1bJ0n^{4~F^ zEI59quXFxKK7-GZS~3g)Ys2c@8D=f3JH`<8x_!;96r-K`G6~CO3LLvHaE#$;(NBfd zYD;ajWEwhdd98f=WzYNHyU*M){A&D;iJ_XI%4=m>$+M+FFD*El_!z1M8~C665udRw z>iVWNFK(H9x0O=qe{k_iYMf#59bH2Qi8ft^#iCF4M@Q-b^fUG;`S q#)HXe@4Pgnx8?q3{qaArmg#w3_u)rTCK(J23=E#GelF{r5}E)GHp@)_ diff --git a/tools/editor/icons/2x/icon_string.png b/tools/editor/icons/2x/icon_string.png new file mode 100644 index 0000000000000000000000000000000000000000..b0bf611c5164c48a3ee1afaaad66849bbef551ed GIT binary patch literal 273 zcmeAS@N?(olHy`uVBq!ia0y~yU{C;I4mJh`hT^KKFANL}EX7WqAsieW95oy%9SjT% zoCO|{#S9G6>p_??PHLhI0|SF(iEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$ zQVa|XeV#6kArY-_r~7g-8S=Q@SHI`fIxp{?$#(6Y=NU02%8n{R8@f+MfBQZ$?IQoV zzD3;C@1M2JJHQsxAiHC)|F&yR>G6x1-?Ayv4W|Vr@f=9w;NB=DDk37Wu~S&I;|Gt*P3{*7R~ix%8ICeAG&~iL4iMRJ Rgn@y9!PC{xWt~$(6975_EcyTd delta 104 zcmcc0c%E@WUZRhui(`mIZ*sx{0fR#l{Bkxw`u!I+H8DN@`}@1Kh^VOcgrhS(HuX;2 z_~+l>-?Ayv4QB%PZ!6KiaBp@`0_P52)I0ydhGaMN)=0<vH!N#9j}7Ho^b0Np0?{z51VR?2YG@pWcyKvUaQc``VK`$~hS{`4{pu zOlc0_a_Dl`U{^S*G=*itBY{&)9)=uC8JB$Kc*?k>n8TUDpNMIKg#x9&UA z`#N7;XAcTFJhx%5WP_YTd1b@?-^wCauZcf@>fgZlg0X~c0s94zOgcjq!(8$N&RIS` caBp$Bh11h(Wt$inxEL5bUHx3vIVCg!0LJie9smFU delta 405 zcmey$^n-aqZarhEr;B4q#hkaZ9sODy1YGMS%d6OD8L!CJPk0nrV(c9$VZ7S1yYr*a zF>8^SgJYDVPElTZ-))T4z_}ax>JIFJzTOX z_V%{9-(wgG(j?ccsurwdE$HSF|1YleY00YC-r{uj8SnnAYjdgR+p3hpK4Y5gR4GB7 z{sU8=A6e=n_$}`FW|kdaW|inEZTj4maEryCb3I2lFT)R)h!Tc`x|XBt49{F6Tp1SF z9Li#1NEHkdW!T_uv0n4>(R_W6xHWmK5uFSC+yw%rPltM$VavE$9Mj4b$~<# z8*~q-F>PSI;li+uVRk*o0kH&O#v4pIN(|8rzAOpc8^C%|RUs5LB)-`=tJOY!C$lc2 z9k)wF%I>It;uceO2An86%Xh)#taQV4rMdr~S}y%E&-%unzjqCI${$2|Ir%a5SC$%*)Cg6mZ}y-ws{|1_lOCS3j3^P6NoNIqWOv{r&= zwu5xIfpH@HJ|XUB5f&~M4~ z^S^XM<|LKHe#?#5y|fE|6zVW7)m*7a%B15&>8xeV6Rhj*)W4QmG4JPXjYJo|%O-of zH)bmq@`mXD)(H8ka%~-JIwM0_^YVyWrnAp(Q+oGVYk{cE(dpY(y>q$qJk%j1HFDn3 zJJ0_JocSD+%{Y|ccZ^EDd`1N7OtE?xI2W%S_o^MuH eQd)HO8>4DqFkk(JzXc2o3=E#GelF{r5}E*!iOU=S delta 451 zcmbQmvYcf?Ui}hJ7srr_Id5lK`yCDtaDBg{c|)6puU6D1hAO-4Mm9}Rr$4Jwv^6wl zbC|3-ux%4_osjDvjRKY~fzJ&4%XQQJY){USQJ*Ahd%%F_ut86$YYqEm9cz(^$_&g5 zvrXUDvl@6$O1bm4Ox<+v^YtINCZyin+A)VkRB)%)G{yb>C&8pryy< zFJ{NqsdkzL)V^K(V2*X)*6dCxh68>D+~@Qd>KLsK>e}7x+QHor-w>9}c!O#6ndhH- zXZ)5DKVZ3CwmAMV)0EUosp9!n%2S^2>{i@#Xp7G2%}0|yUU>igzLQ>7R>S^JObKdA z$@i^K9sA4j&y)SYy5hV^&+C7-p69+L_CWjaB8_ib7n-p*6#LcoWtKA3{3-vaoXfw! zE_#b?LlPSI5y7yHL7Mx3SOUl`IXVo{4ZWC(ey~*VAX(xXQ4*Y= zR#Ki=l*&+EUaps!mtCBkSdglhUz9%kosAR&1B0Wdi(`mIZ*sx{0Rtlg0|T3i4-f41 zSh={kEUs#3Xc!m;zG`Y@XF1Fud*BcYTU)logYN1Q#nQv3JROW13Z#A*Fff>KOYoYP TPD^26U|{fc^>bP0l+XkKMwK$H delta 158 zcmX@YxQlUuNGZx^prw85kJYlDyqr82*Fcg1yTpGcYi47I;J!Gca%qgD@k* ztT_@43=Hfgp1!W^w;9ESdDUzko;foxFj#rIIEGl9PEL^c)F9Yf&*F7kVdF+d=~=rO zruVwPc*Z2H6zd`_zTh~+Hi?Z3qpc21m1ENrn-FUz?!mxNe2kyHrR7N^0|Nttr>mdK II;Vst0Lz6iy8r+H diff --git a/tools/editor/icons/icon_new.png b/tools/editor/icons/icon_new.png index 5433736869228d4e874eb7afc85a05cf4edfe0df..5407b500cc5f223da3bdc8a7f3b8d625b9b011b8 100644 GIT binary patch delta 110 zcmX@lc$INNUV4zHi(`mIZ*sx{0fR#l{Bkxw`n@MMH8DN@`}@1Kh^VOcg{Lz*wslV2 z_~+l>-?Ayv4W|Vr@f=9w;NB=DDk37Wu~S&I;|Gt*P3{*7R~ix%8ICeAG&~iL4iMRJ Rgn@y9!PC{xWt~$(6975_EcyTd delta 104 zcmcc0c%E@WUZRhui(`mIZ*sx{0fR#l{Bkxw`u!I+H8DN@`}@1Kh^VOcgrhS(HuX;2 z_~+l>-?Ayv4QBAX(xXQ4*Y= zR#Ki=l*&+EUaps!mtCBkSdglhUz9%kosAR&1H%GO7sn8b-nZusxehsquw0Nl+~%-t zdt^jV{!7Q8n_W|+BBm7)bWs@4NRq zBs;e2gq(xhrY^&I-HR&z@^C1gnXD4oeL}3^C z;kDR-sVS*z_nvJF|5o)c-)Z`HyR)BbJd4;Fl!`KDJ$p1K+udZ|mrCZxzis}XG3IS# RU|?YIboFyt=aj(M1OOxWY1jY& delta 341 zcmZ3?^nq!DNGZx^prw85kJYlDyqr7{K7C^X_^E1_sUokH}&M25w;xW@MN( zM}mQYfxX1j*OmPilOQXT!GD9aZ43+yA3R+gLo7}ooowsJY$(ubpD%Vas6k0ccaBo^ zEZw5UIf`EH^SPItNcA|+>cKDD^=I<*q{L3~_d@lWtj4WNC10NX{$``#qgfg|jM!LL z-TK$NeBPX^$$R(NWQX;u{@VOv_MXT!3^#Pb4y!m%-ksjJ;0@QiZS27l{pPHn{$?Bd zWM&Qhy&FFN+Zo|xP^-nrEc8DA;qreK%vo>h-Z;-=P^fB9)>zuR?jyI_e)iDZ(%%M3 zR)VrD^LKIXTj}RspJF7dS{BvxpylHC(+zv|XRM!oV|UYwD?I-FVdQ&MBb@0HRoo_y7O^ diff --git a/tools/editor/icons/icon_quat.png b/tools/editor/icons/icon_quat.png index f09d2fcabab8ef2c3ceb971fc78ab8c6917b99db..44a9eada988685cda62ea5a56723575bf73e96f3 100644 GIT binary patch delta 383 zcmaFQ*vmXYyk3BVje&td{`3Dt1_lO}VkgfK4h{~E8jh3>1_lPs0*}aI1_s{iAk65b zF}s3+fkCpwHKHUqKdq!Zu_%?Hyu4g5GcUV1Ik6yBFTW^#_B$IX1_nkhPZ!4!i{7)7 z*ZMIB3bgKbHhal-Gaz{LZn=Zb6TId%BzSVO1vVcGsCRVw!RaV8kD>jcq`;0Y>z7`u zPR_b}FlUxtVt0muO!@mcKhO0@{P3MQbN0;jpK{hnUt)MtdCzq7Vo_n)=au*ViU~ML zOiQ(7UKh?1H#ODLcyl0gLYlJYb_bQ0>(<`B`@WH52d5&>bae@4k6XTzQf{!F*z{(@ zs#T6}WrHs>Jo*(}ahf-Cmf5{{n~zKn-U)k(hlcK*akF{1{m$RnGRNODxCVYvdFyeD znJ?>t$a#_VwPnx0OWy!7XMH%sz7;dm_dv!^sqWJrBzvZ8A ny#M~(zU7bj-;=s)*7_UPCI8yM(cZgTe~DWM4fX49c4 delta 224 zcmeBWe$O~Tyq<@Hje&t7`?+l+0|NtRfk$L90|U1(2s1Lwnj^u$z`$PO>Fdh=fQgGi zQ6fODe=-9DL!YOMV~EE2sX>l>2NXE8(+ce`mVfxPH`)K@O6wenWjkCfGM0#4QerXW zZWLhPIK?wLt#y_4;@=mJ_&;cTUf4N*!TPQKHJdZkKKe#7uo&#A&e?QM{#xseumcnI zGFunS|74?Q$n-PVN@?TfodKoh7oEh@qQ08_k~)01>V)A9iHNH?Iz+ATW6Zo0i! cj(RCw^0G9g{#EY@1_lNOPgg&ebxsLQ0QhxQ1ONa4 diff --git a/tools/editor/icons/icon_reload_small.png b/tools/editor/icons/icon_reload_small.png index 957cdfcf4f4272ae079fc02f62ed93af10764e81..6809c4feab5d87404aa592caaa11b822c244b41e 100644 GIT binary patch delta 439 zcmdnbe35yANAX(xXQ4*Y= zR#Ki=l*&+EUaps!mtCBkSdglhUz9%kosAR&1EZg(i(`n!#JQ6Uy_p>aTJOJ+dBSDb zdbUwd(N#*cC-z^XnOPG{@J$ab-6QiS#wQ4_3F5w$QJ+-W7^^ zz3y7wfldU`)v9$uyX1w|qs;|DC7! tKXltM+El(j-)pF=`ScC{nW9?e|1TOhhsPdR!N9=4;OXk;vd$@?2>=j1xU>KO delta 421 zcmcb}yq|f3NT(QKdtSc5wSfenNBWzldV!fGD)xk9fPGwz+P-|>i;3>EN z?4A!56B?uMSQno=W1BuJFy)z!(yuc$4dNC@#lK`kIJjgmGkh=LzW-4o{Kcz32aI(d z3q_?J;@SUU#Vq*;*`oVa|KWP~NTxQtbv;)}*L1;+jo)t^maSQ}OZki7!qjI$hVvii z8=hBMv_8LsW9H8O`sWqB{D)Uu7ZhAJaVGC-(~J2wZKS<^ZJm;)?B+&TtL3nB8;rYAFx2$_+cfju5W1i@(s;euE znR2Hwcbok@tXGzGG;QjxHIJ5?PJMk=Qb*$Czil?w2hD3_*59rOKOVM4?p0anlj0bk c+JF3MyYi9_tm>^|U|?YIboFyt=akR{0CN|&VXc<=bbJIl9DxNiMi?sA0b8-FFMsUpeGeuqqA$?`rP z>^aptZnBJ!$_HtKV;}MkUOM~S!sgJd2cg%uGA-zQu{V<8!LqIY+%=Xi>WKMX5^&^= zsF2d7BNDl{xA81E$*FX<{&A!W(}tMlname0nq*a64T@jvIyddv`cJGjMot~8HZDnK QU|?YIboFyt=akR{0H)Jo+W-In delta 217 zcmdnOw4Z50Ui}_V7sn8b-lY=`3N{%Cxc)y?mRPhv=D6JjKASFc?|@$gI_lQWZyFEt zeROhT6J^@tt@d;F_Sp>DiVOl1Z5yl`-bNI1Je>5r@}~XmlGnMfj2Hwi-n0y_V^tDz zQSsqSnp^zNYEFWfOG(!x*Cvff)sBMt$)EV0!~6}@DpDfTW(3`2syHWR@cClYZ=+)s zp|(0R6*&KiugH43SAW(r#k6(HSmYWcQ>;VR&aD5gut@5M&B7Ndo&te)x8+WZvOgtl YXze_ccb>N;0|Nttr>mdKI;Vst0I;K3C;$Ke diff --git a/tools/editor/icons/icon_string.png b/tools/editor/icons/icon_string.png index 4a747f7c62b90d964e24c4113360f4057df8d46f..8cf133c7efb5692b5d926d52654c9c2a0936161f 100644 GIT binary patch delta 201 zcmeBRyumm@yk3BVje&td{`3Dt1_lO}VkgfK4h{~E8jh3>1_lPs0*}aI1_s{iAk65b zF}s3+fkCpwHKHUqKdq!Zu_%?Hyu4g5GcUV1Ik6yBFTW^#_B$IX1_p*uPZ!4!i{9jf z1p)?1!ZjZr9IV&)%)!jeEX>T@EXvHx+}zZ})K(?t#3Xhj;E`1uJHOl?_afe~11=MJ z7qj(9F|f9LV&Xb5P5i^I2mk;7Z?&hm_-Z36In{l~Ed~Y#22WQ%mvv4FO#t{h BKgs|A delta 120 zcmcb?*ugkKypV^3je&t7`?+l+0|NtRfk$L90|U1Z2s2)~Tla^7fq}im)7O>#0TUO4 zlJ=3ud)*iq7}Pyo978nDCnqd0tN8Gs@ozIb|C@_9QzTt_tkk?>ZL$t*Flcx*g@a*# YzT}I^7Vg^^7#J8lUHx3vIVCg!06(^b 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'] ), From 5cd7611a9ab71a7b72b4aaaab4a2498b3cadc972 Mon Sep 17 00:00:00 2001 From: Andreas Haas Date: Tue, 7 Jun 2016 00:19:01 +0200 Subject: [PATCH 10/10] x11: fix vsync support --- platform/x11/context_gl_x11.cpp | 34 ++++++++++++++++++++++++++++----- 1 file changed, 29 insertions(+), 5 deletions(-) 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; }