From 7212f855d8320966f7019308aa334450b178b025 Mon Sep 17 00:00:00 2001 From: zzz Date: Tue, 9 Feb 2010 17:21:48 +0000 Subject: [PATCH] Upgrade to launch4j 3.0.1 2008-07-20. The license is BSD for launch4j and MIT for the wrapper code in head/ Changelog is in installer/lib/launch4j/web/changelog.html Hopefully this will fix installs for 64-bit JRE on 64-bit windows. The previous version was 2.0-RC3 2005-08-13. The previous license was GPLv2 for launch4j and LGPLv2.1 for the wrapper code in head/ The bin/ld.exe and bin/windres.exe files were contributed by i2p users in 2005 so the i2p installer could be built on windows. They have not been updated for 3.0.1, so pkg builds on windows will presumably still get 2.0-RC3. --- LICENSE.txt | 7 +- build.xml | 7 + installer/lib/launch4j/LICENSE.txt | 370 +----- installer/lib/launch4j/README-i2p.txt | 13 + installer/lib/launch4j/bin/COPYING | 340 ------ installer/lib/launch4j/build.xml | 164 +-- .../lib/launch4j/demo/ConsoleApp/.cvsignore | 1 - .../launch4j/demo/ConsoleApp/ConsoleApp.jar | Bin 1938 -> 2006 bytes .../lib/launch4j/demo/ConsoleApp/build.xml | 48 +- .../net/sf/launch4j/example/ConsoleApp.java | 129 ++- installer/lib/launch4j/demo/LICENSE.txt | 370 +----- .../lib/launch4j/demo/SimpleApp/SimpleApp.jar | Bin 0 -> 3123 bytes .../lib/launch4j/demo/SimpleApp/build.xml | 52 + .../launch4j/demo/SimpleApp/l4j/SimpleApp.ico | Bin 0 -> 766 bytes .../launch4j/demo/SimpleApp/l4j/SimpleApp.xml | 18 + .../launch4j/demo/SimpleApp/l4j/splash.bmp | Bin 0 -> 4514 bytes .../launch4j/demo/SimpleApp/lib/readme.txt | 8 + .../lib/launch4j/demo/SimpleApp/readme.txt | 1 + .../net/sf/launch4j/example/SimpleApp.java | 104 ++ installer/lib/launch4j/head/LICENSE.txt | 527 +-------- installer/lib/launch4j/head/consolehead.o | Bin 3361 -> 1096 bytes installer/lib/launch4j/head/guihead.o | Bin 5155 -> 4850 bytes installer/lib/launch4j/head/head.o | Bin 18306 -> 23951 bytes installer/lib/launch4j/head_src/LICENSE.txt | 527 +-------- .../head_src/consolehead/Makefile.win | 20 +- .../head_src/consolehead/consolehead.c | 77 +- .../head_src/consolehead/consolehead.dev | 8 +- .../launch4j/head_src/guihead/Makefile.win | 20 +- .../lib/launch4j/head_src/guihead/guihead.c | 114 +- .../lib/launch4j/head_src/guihead/guihead.dev | 22 +- .../lib/launch4j/head_src/guihead/guihead.h | 42 +- installer/lib/launch4j/head_src/head.c | 755 +++++++++--- installer/lib/launch4j/head_src/head.h | 92 +- installer/lib/launch4j/head_src/resource.h | 88 +- installer/lib/launch4j/launch4j.jar | Bin 85072 -> 181810 bytes .../launch4j/lib/JGoodies.Looks.LICENSE.txt | 7 +- .../lib/Nuvola.Icon.Theme.LICENSE.txt | 1008 ++++++++--------- .../lib/launch4j/lib/XStream.LICENSE.txt | 54 +- installer/lib/launch4j/lib/forms.jar | Bin 0 -> 86828 bytes installer/lib/launch4j/lib/formsrt.jar | Bin 392209 -> 328485 bytes installer/lib/launch4j/lib/looks.jar | Bin 324701 -> 409708 bytes installer/lib/launch4j/lib/xstream.jar | Bin 223457 -> 261710 bytes .../lib/launch4j/manifest/uac.exe.manifest | 12 + .../launch4j/manifest/xp-themes.exe.manifest | 14 + installer/lib/launch4j/readme.txt | 35 - .../lib/launch4j/src/images/asterix-o.gif | Bin 0 -> 51 bytes installer/lib/launch4j/src/images/asterix.gif | Bin 0 -> 53 bytes .../lib/launch4j/src/images/button_ok.png | Bin 0 -> 883 bytes .../lib/launch4j/src/images/cancel16.png | Bin 0 -> 1133 bytes installer/lib/launch4j/src/images/down16.png | Bin 0 -> 912 bytes .../lib/launch4j/src/images/edit_add16.png | Bin 0 -> 1088 bytes installer/lib/launch4j/src/images/new16.png | Bin 0 -> 805 bytes installer/lib/launch4j/src/images/ok16.png | Bin 0 -> 883 bytes installer/lib/launch4j/src/images/up16.png | Bin 0 -> 906 bytes .../lib/launch4j/src/launch4j.properties | 2 + .../launch4j/src/net/sf/launch4j/Builder.java | 396 +++---- .../src/net/sf/launch4j/BuilderException.java | 90 +- .../src/net/sf/launch4j/ExecException.java | 104 +- .../net/sf/launch4j/FileChooserFilter.java | 138 ++- .../src/net/sf/launch4j/Launcher.java | 21 - .../lib/launch4j/src/net/sf/launch4j/Log.java | 196 ++-- .../launch4j/src/net/sf/launch4j/Main.java | 161 ++- .../src/net/sf/launch4j/Messages.java | 78 ++ .../src/net/sf/launch4j/OptionParser.java | 128 ++- .../src/net/sf/launch4j/RcBuilder.java | 570 ++++++---- .../launch4j/src/net/sf/launch4j/Util.java | 349 +++--- .../src/net/sf/launch4j/ant/AntClassPath.java | 61 + .../src/net/sf/launch4j/ant/AntConfig.java | 186 ++- .../src/net/sf/launch4j/ant/AntJre.java | 69 ++ .../src/net/sf/launch4j/ant/Launch4jTask.java | 284 +++-- .../src/net/sf/launch4j/ant/Messages.java | 55 + .../net/sf/launch4j/ant/StringWrapper.java | 67 ++ .../net/sf/launch4j/ant/messages.properties | 35 + .../sf/launch4j/ant/messages_es.properties | 35 + .../src/net/sf/launch4j/binding/Binding.java | 110 +- .../sf/launch4j/binding/BindingException.java | 90 +- .../src/net/sf/launch4j/binding/Bindings.java | 564 +++++---- .../net/sf/launch4j/binding/IValidatable.java | 74 +- .../binding/InvariantViolationException.java | 120 +- .../sf/launch4j/binding/JComboBoxBinding.java | 119 ++ .../net/sf/launch4j/binding/JListBinding.java | 118 ++ .../launch4j/binding/JRadioButtonBinding.java | 273 ++--- .../sf/launch4j/binding/JTextAreaBinding.java | 123 ++ .../binding/JTextComponentBinding.java | 200 ++-- .../binding/JToggleButtonBinding.java | 202 ++-- .../src/net/sf/launch4j/binding/Messages.java | 78 ++ .../launch4j/binding/OptComponentBinding.java | 223 ++-- .../launch4j/binding/OptJTextAreaBinding.java | 141 +++ .../net/sf/launch4j/binding/Validator.java | 449 ++++---- .../sf/launch4j/binding/messages.properties | 52 + .../launch4j/binding/messages_es.properties | 51 + .../src/net/sf/launch4j/config/ClassPath.java | 87 ++ .../src/net/sf/launch4j/config/Config.java | 624 ++++++---- .../sf/launch4j/config/ConfigPersister.java | 451 ++++---- .../config/ConfigPersisterException.java | 88 +- .../src/net/sf/launch4j/config/Jre.java | 360 ++++-- .../net/sf/launch4j/config/LdDefaults.java | 62 + .../src/net/sf/launch4j/config/Messages.java | 78 ++ .../src/net/sf/launch4j/config/Msg.java | 111 ++ .../sf/launch4j/config/SingleInstance.java | 74 ++ .../src/net/sf/launch4j/config/Splash.java | 187 +-- .../net/sf/launch4j/config/VersionInfo.java | 303 ++--- .../sf/launch4j/config/messages.properties | 93 ++ .../sf/launch4j/config/messages_es.properties | 75 ++ .../src/net/sf/launch4j/form/BasicForm.java | 283 +++++ .../src/net/sf/launch4j/form/BasicForm.jfrm | Bin 0 -> 18367 bytes .../net/sf/launch4j/form/ClassPathForm.java | 193 ++++ .../net/sf/launch4j/form/ClassPathForm.jfrm | Bin 0 -> 10059 bytes .../src/net/sf/launch4j/form/Config.jfrm | Bin 44050 -> 0 bytes .../src/net/sf/launch4j/form/ConfigForm.java | 666 +++-------- .../src/net/sf/launch4j/form/ConfigForm.jfrm | Bin 0 -> 4477 bytes .../sf/launch4j/form/EnvironmentVarsForm.java | 127 +++ .../sf/launch4j/form/EnvironmentVarsForm.jfrm | Bin 0 -> 3813 bytes .../src/net/sf/launch4j/form/HeaderForm.java | 171 +++ .../src/net/sf/launch4j/form/HeaderForm.jfrm | Bin 0 -> 7298 bytes .../src/net/sf/launch4j/form/JreForm.java | 266 +++++ .../src/net/sf/launch4j/form/JreForm.jfrm | Bin 0 -> 17006 bytes .../src/net/sf/launch4j/form/Messages.java | 55 + .../net/sf/launch4j/form/MessagesForm.java | 183 +++ .../net/sf/launch4j/form/MessagesForm.jfrm | Bin 0 -> 9184 bytes .../sf/launch4j/form/SingleInstanceForm.java | 141 +++ .../sf/launch4j/form/SingleInstanceForm.jfrm | Bin 0 -> 5246 bytes .../src/net/sf/launch4j/form/SplashForm.java | 166 +++ .../src/net/sf/launch4j/form/SplashForm.jfrm | Bin 0 -> 7347 bytes .../net/sf/launch4j/form/VersionInfoForm.java | 232 ++++ .../net/sf/launch4j/form/VersionInfoForm.jfrm | Bin 0 -> 13722 bytes .../net/sf/launch4j/form/messages.properties | 146 +++ .../sf/launch4j/form/messages_es.properties | 118 ++ .../formimpl/AbstractAcceptListener.java | 75 ++ .../sf/launch4j/formimpl/BasicFormImpl.java | 101 ++ .../formimpl/BrowseActionListener.java | 79 ++ .../launch4j/formimpl/ClassPathFormImpl.java | 222 ++++ .../sf/launch4j/formimpl/ConfigFormImpl.java | 241 ++-- .../formimpl/EnvironmentVarsFormImpl.java | 50 + .../net/sf/launch4j/formimpl/FileChooser.java | 65 ++ .../sf/launch4j/formimpl/HeaderFormImpl.java | 102 ++ .../net/sf/launch4j/formimpl/JreFormImpl.java | 166 +++ .../net/sf/launch4j/formimpl/MainFrame.java | 677 +++++------ .../net/sf/launch4j/formimpl/Messages.java | 55 + .../launch4j/formimpl/MessagesFormImpl.java | 58 + .../formimpl/SingleInstanceFormImpl.java | 54 + .../sf/launch4j/formimpl/SplashFormImpl.java | 61 + .../formimpl/VersionInfoFormImpl.java | 63 ++ .../sf/launch4j/formimpl/messages.properties | 74 ++ .../launch4j/formimpl/messages_es.properties | 56 + .../src/net/sf/launch4j/messages.properties | 45 + .../net/sf/launch4j/messages_es.properties | 45 + .../lib/launch4j/w32api/MinGW.LICENSE.txt | 50 +- installer/lib/launch4j/w32api/crt2.o | Bin 2095 -> 2195 bytes installer/lib/launch4j/w32api/libadvapi32.a | Bin 410156 -> 410156 bytes installer/lib/launch4j/w32api/libkernel32.a | Bin 654388 -> 655198 bytes installer/lib/launch4j/w32api/libmingw32.a | Bin 7084 -> 6802 bytes installer/lib/launch4j/w32api/libmsvcrt.a | Bin 503692 -> 503692 bytes installer/lib/launch4j/w32api/libshell32.a | Bin 140230 -> 141600 bytes installer/lib/launch4j/w32api/libuser32.a | Bin 472422 -> 472426 bytes installer/lib/launch4j/web/bullet.gif | Bin 0 -> 151 bytes installer/lib/launch4j/web/changelog.html | 552 +++++---- installer/lib/launch4j/web/docs.html | 585 ++++++++++ installer/lib/launch4j/web/docs1.html | 345 ------ installer/lib/launch4j/web/docs2.html | 394 ------- installer/lib/launch4j/web/index.html | 280 +++-- installer/lib/launch4j/web/launch4j-use.gif | Bin 0 -> 12724 bytes installer/lib/launch4j/web/layout.css | 83 -- installer/lib/launch4j/web/links.html | 161 ++- installer/lib/launch4j/web/style.css | 182 ++- 165 files changed, 12948 insertions(+), 8379 deletions(-) create mode 100644 installer/lib/launch4j/README-i2p.txt delete mode 100644 installer/lib/launch4j/bin/COPYING delete mode 100644 installer/lib/launch4j/demo/ConsoleApp/.cvsignore create mode 100644 installer/lib/launch4j/demo/SimpleApp/SimpleApp.jar create mode 100644 installer/lib/launch4j/demo/SimpleApp/build.xml create mode 100644 installer/lib/launch4j/demo/SimpleApp/l4j/SimpleApp.ico create mode 100644 installer/lib/launch4j/demo/SimpleApp/l4j/SimpleApp.xml create mode 100644 installer/lib/launch4j/demo/SimpleApp/l4j/splash.bmp create mode 100644 installer/lib/launch4j/demo/SimpleApp/lib/readme.txt create mode 100644 installer/lib/launch4j/demo/SimpleApp/readme.txt create mode 100644 installer/lib/launch4j/demo/SimpleApp/src/net/sf/launch4j/example/SimpleApp.java create mode 100644 installer/lib/launch4j/lib/forms.jar create mode 100644 installer/lib/launch4j/manifest/uac.exe.manifest create mode 100644 installer/lib/launch4j/manifest/xp-themes.exe.manifest delete mode 100644 installer/lib/launch4j/readme.txt create mode 100644 installer/lib/launch4j/src/images/asterix-o.gif create mode 100644 installer/lib/launch4j/src/images/asterix.gif create mode 100644 installer/lib/launch4j/src/images/button_ok.png create mode 100644 installer/lib/launch4j/src/images/cancel16.png create mode 100644 installer/lib/launch4j/src/images/down16.png create mode 100644 installer/lib/launch4j/src/images/edit_add16.png create mode 100644 installer/lib/launch4j/src/images/new16.png create mode 100644 installer/lib/launch4j/src/images/ok16.png create mode 100644 installer/lib/launch4j/src/images/up16.png create mode 100644 installer/lib/launch4j/src/launch4j.properties delete mode 100644 installer/lib/launch4j/src/net/sf/launch4j/Launcher.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/Messages.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/ant/AntClassPath.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/ant/AntJre.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/ant/Messages.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/ant/StringWrapper.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/ant/messages.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/ant/messages_es.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/binding/JComboBoxBinding.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/binding/JListBinding.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/binding/JTextAreaBinding.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/binding/Messages.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/binding/OptJTextAreaBinding.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/binding/messages.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/binding/messages_es.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/config/ClassPath.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/config/LdDefaults.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/config/Messages.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/config/Msg.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/config/SingleInstance.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/config/messages.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/config/messages_es.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/BasicForm.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/BasicForm.jfrm create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/ClassPathForm.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/ClassPathForm.jfrm delete mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/Config.jfrm create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/ConfigForm.jfrm create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/EnvironmentVarsForm.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/EnvironmentVarsForm.jfrm create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/HeaderForm.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/HeaderForm.jfrm create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/JreForm.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/JreForm.jfrm create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/Messages.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/MessagesForm.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/MessagesForm.jfrm create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/SingleInstanceForm.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/SingleInstanceForm.jfrm create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/SplashForm.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/SplashForm.jfrm create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/VersionInfoForm.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/VersionInfoForm.jfrm create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/messages.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/form/messages_es.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/AbstractAcceptListener.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/BasicFormImpl.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/BrowseActionListener.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/ClassPathFormImpl.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/EnvironmentVarsFormImpl.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/FileChooser.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/HeaderFormImpl.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/JreFormImpl.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/Messages.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/MessagesFormImpl.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/SingleInstanceFormImpl.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/SplashFormImpl.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/VersionInfoFormImpl.java create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/messages.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/formimpl/messages_es.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/messages.properties create mode 100644 installer/lib/launch4j/src/net/sf/launch4j/messages_es.properties create mode 100644 installer/lib/launch4j/web/bullet.gif create mode 100644 installer/lib/launch4j/web/docs.html delete mode 100644 installer/lib/launch4j/web/docs1.html delete mode 100644 installer/lib/launch4j/web/docs2.html create mode 100644 installer/lib/launch4j/web/launch4j-use.gif delete mode 100644 installer/lib/launch4j/web/layout.css diff --git a/LICENSE.txt b/LICENSE.txt index bbc5423d4..002fc1862 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -80,9 +80,10 @@ Public domain except as listed below: Installer: - Launch4j 2.0.RC3: - Copyright (C) 2005 Grzegorz Kowal - See licenses/LICENSE-GPLv2.txt + Launch4j 3.0.1: + Copyright (c) 2004, 2008 Grzegorz Kowal + See licenses/LICENSE-Launch4j.txt (in binary packages) + See installer/lib/launch4j/LICENSE.txt (in source packages) The following projects are used by Launch4j... MinGW binutils (http://www.mingw.org/) diff --git a/build.xml b/build.xml index d9f833f9e..8d4685653 100644 --- a/build.xml +++ b/build.xml @@ -380,6 +380,13 @@ + + + diff --git a/installer/lib/launch4j/LICENSE.txt b/installer/lib/launch4j/LICENSE.txt index 3912109b5..82223322f 100644 --- a/installer/lib/launch4j/LICENSE.txt +++ b/installer/lib/launch4j/LICENSE.txt @@ -1,340 +1,30 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. +Launch4j (http://launch4j.sourceforge.net/) +Cross-platform Java application wrapper for creating Windows native executables. + +Copyright (c) 2004, 2008 Grzegorz Kowal + +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 the Launch4j 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 OWNER 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. \ No newline at end of file diff --git a/installer/lib/launch4j/README-i2p.txt b/installer/lib/launch4j/README-i2p.txt new file mode 100644 index 000000000..44b3d1908 --- /dev/null +++ b/installer/lib/launch4j/README-i2p.txt @@ -0,0 +1,13 @@ +This is launch4j 3.0.1 2008-07-20. +The license is BSD for launch4j and MIT for the wrapper code in head/ + +Changelog is in web/changelog.html +We upgraded to get support for 64-bit JRE on 64-bit windows. + +The previous version was 2.0-RC3 2005-08-13. +The license was GPLv2 for launch4j and LGPLv2.1 for the wrapper code in head/ + +The bin/ld.exe and bin/windres.exe files were contributed by +i2p users so the i2p installer could be built on windows. + +They have not been updated for 3.0.1. diff --git a/installer/lib/launch4j/bin/COPYING b/installer/lib/launch4j/bin/COPYING deleted file mode 100644 index 60549be51..000000000 --- a/installer/lib/launch4j/bin/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) 19yy - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) 19yy name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. diff --git a/installer/lib/launch4j/build.xml b/installer/lib/launch4j/build.xml index 767e7c592..a7682ce0c 100644 --- a/installer/lib/launch4j/build.xml +++ b/installer/lib/launch4j/build.xml @@ -1,102 +1,62 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/installer/lib/launch4j/demo/ConsoleApp/.cvsignore b/installer/lib/launch4j/demo/ConsoleApp/.cvsignore deleted file mode 100644 index 378eac25d..000000000 --- a/installer/lib/launch4j/demo/ConsoleApp/.cvsignore +++ /dev/null @@ -1 +0,0 @@ -build diff --git a/installer/lib/launch4j/demo/ConsoleApp/ConsoleApp.jar b/installer/lib/launch4j/demo/ConsoleApp/ConsoleApp.jar index 59b3e8b7e8c5caf8061dfdbed26320285af26d53..6d4b126e6f18ac46a55cfc07e6d4fd2f590ee98d 100644 GIT binary patch delta 1393 zcmZ9Mdo&XY0LG0BE2GV{Q5H8QM8izV!VbC-u8rL*c3hdq@rd#klh)FXW(-l9$Fy|a zDf0~TzI0N^V_rk-^zcZkv1py{b)0+eIeq_pzjMBSzQ2BX8X^s_mz&Zakit$>GNiV- zV3aEGpYFSv9+_)zO4a9rPfYtAY8m$cD?7#%SaGcL$W9i@UuBJVS5h^|Iji$Wrsl#S z$R}t+Ex!i2>ohI;aGk)1^Qy`RyFVml>a$=2L(CBfh86=8nu^bTnAM`>x^s*6o}7#r z=Z4NGYlZJ40F&{Z#j{@2jCNa|!?1H9yy{%IedI%7ke&`y$;FhP{=>y>y*)cu*#`mo zyWj{g*@cS$OYqKwDY<{zaF2olNrn9gfTj|3ecdlY?36@u)ZPoxHZ)UvEyx77J#gq@{OU^)`>x|ev=2qu@d%`9n#XZ*ZVV|9r-jDl z#dvn7(ci?5+I&-^hsj5D@MaP%Tl{%Z{Z^3I+^e~$3q1z63gbV~8$yzJtd(a)9pS!k zpuk2pS`ajCsd%#EgrMLJwbf;+A<0fM3F}{E*PL{jqx94xS|o{e=lhtBa|uU<%c;Bo z9jN$uWhhhMAZU|@6`2>v#7|Ar)m@a(nWR?YN|C%aTbJ3 z!!?Uk=74>vs)eK z-0^BA(1C75Iqw6N zzN$u^!mo7W;_|*C2^4eYI+V;$T+|yJxs#dsdz^P`$`TioWjc1Px|u$Krtf!OP=C&@ z&&1|(WnbaWxn|}ylFQ;wlC*e>+1Bn#4;u28hRd@Na>m^Tu%}nYgQIqr7`6s9IEphM z-OLIi>vN2g-Fh)jcFQ(se{MimPOr>2D&yjW5q2Bp_KJhe?DZZ1MPM_ e;|4U}g)|^~7X<%K>p-U;7384e4pap081`@YlZD>^ delta 1334 zcmcb{KZ&0&z?+$civa|9Q+bUi@~Lz10O=`xGTakwwd)_c$rgpImECpKkB`-{V5-D= zlSy$-`mDddZ=3zPnm;c6=698wHW@F)_>07wGkF^J9`V-89B#Nx zlUU)IX`8ch=S`a{!VL?ihS{Sz@s}J6$f=WM7!@H5M@B6OBcIWT4VMGXuj7 zw#n-m4eN_`wF!_({Pq;2co-U#?5ILU0n4o%+zI}fj>Xs?NHw=P!j zma2@sbe)g?%m?|32deru7Y+cJ?oYm=g!d5pF4GI#VwX6{-1C|0ys>shEseaM}O`&dQGe``Ll&AfAY zLx(Esdu(N`PmC!v}IcID6eckD*L(9^P->ae#M&8E6<;}b!Jie zL`AjYzBa>Yv*+hu&ARjaYH42BPW{g}wpi?3RG*?~$GCj=m7`Z%?{a-_d1^H&{a5L! zIXxQwuCt%!T@?0+m{X8@IQOS$-StVe{Bqx?PUew)Uf5{Woo3u~|M9lBQqlG6^25(( z-x6w-^xtuRNvW^&q?n`&s+QM3YE>+FtY~-bBgcFJv7l{t+2)%`{Av!!G@NsZOZWcs zK7&=$^c}ZeeNxxQ!{$1BabIeyd&QXv*S4^_7u+}CUAf@lHJ*dzuGcg;?$6VaIAl8O z(AT0_W~(0u2ZX1Fh=i0D>^v~>1#hCo<@%|&KSniKJx^0UQgS6=`rq8s2QO`G<~rTfY(|7wG(z}%Ff77wM(=00IT<3WE!h40* z9fNs^7WJY#SEaB_TzGx*v^{C(;@_S6_)M_WM3mFx>ZIcV&%M0XdsS?eh&gkw>#bR4 zU-A9_vwuA76KL!^Z29Z`vngwRoOqZ2t6%5Ly}Yqcx%P{xUb@h( zn*RH8{_?fW7k#S!WC@t2Z25TUnz-S%?~lIwJeu<5ZL-1TV*%3o@=AeLE}ORWKV+U` zci=?Pw%%|r?fnT&O;57;3}#t4FY&ArT7OAE=zH8Bw~5Ks5)t=~M^@Fowfy?%p><9F zN5A*{22PJHPxK!(@HDM=ONw1mx4Grsg6)z)N%OWuD5+la>=xQB_PYD^f>1)RK{V41T`@ojk>6xo} zIoc%q#`2o$&2M)JzPWtXo-x3ikx7IZQIdg+G%zt)hD{eB{cL&=#z8hi X2;&<}%7onsy&P#__hH+|3NjA>^o3%2 diff --git a/installer/lib/launch4j/demo/ConsoleApp/build.xml b/installer/lib/launch4j/demo/ConsoleApp/build.xml index b06bb133a..5f3473da6 100644 --- a/installer/lib/launch4j/demo/ConsoleApp/build.xml +++ b/installer/lib/launch4j/demo/ConsoleApp/build.xml @@ -1,59 +1,57 @@ - - - + + + - + - - + + - - + + - + - + - + - + - - + + - - - - + + + + - - - - + + + + diff --git a/installer/lib/launch4j/demo/ConsoleApp/src/net/sf/launch4j/example/ConsoleApp.java b/installer/lib/launch4j/demo/ConsoleApp/src/net/sf/launch4j/example/ConsoleApp.java index 94fc33dd6..eb1398c2c 100644 --- a/installer/lib/launch4j/demo/ConsoleApp/src/net/sf/launch4j/example/ConsoleApp.java +++ b/installer/lib/launch4j/demo/ConsoleApp/src/net/sf/launch4j/example/ConsoleApp.java @@ -1,57 +1,72 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -package net.sf.launch4j.example; - -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStreamReader; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class ConsoleApp { - public static void main(String[] args) { - StringBuffer sb = new StringBuffer("Hello World!\n\nJava version: "); - sb.append(System.getProperty("java.version")); - sb.append("\nJava home: "); - sb.append(System.getProperty("java.home")); - sb.append("\nCurrent dir: "); - sb.append(System.getProperty("user.dir")); - if (args.length > 0) { - sb.append("\nArgs: "); - for (int i = 0; i < args.length; i++) { - sb.append(args[i]); - sb.append(' '); - } - } - sb.append("\n\nEnter a line of text, Ctrl-C to stop.\n\n>"); - System.out.print(sb.toString()); - try { - BufferedReader is = new BufferedReader(new InputStreamReader(System.in)); - String line; - while ((line = is.readLine()) != null) { - System.out.print("You wrote: " + line + "\n\n>"); - } - is.close(); - } catch (IOException e) { - System.err.print(e); - } - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +package net.sf.launch4j.example; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class ConsoleApp { + public static void main(String[] args) { + StringBuffer sb = new StringBuffer("Hello World!\n\nJava version: "); + sb.append(System.getProperty("java.version")); + sb.append("\nJava home: "); + sb.append(System.getProperty("java.home")); + sb.append("\nCurrent dir: "); + sb.append(System.getProperty("user.dir")); + if (args.length > 0) { + sb.append("\nArgs: "); + for (int i = 0; i < args.length; i++) { + sb.append(args[i]); + sb.append(' '); + } + } + sb.append("\n\nEnter a line of text, Ctrl-C to stop.\n\n>"); + System.out.print(sb.toString()); + try { + BufferedReader is = new BufferedReader(new InputStreamReader(System.in)); + String line; + while ((line = is.readLine()) != null && !line.equalsIgnoreCase("quit")) { + System.out.print("You wrote: " + line + "\n\n>"); + } + is.close(); + System.exit(123); + } catch (IOException e) { + System.err.print(e); + } + } +} diff --git a/installer/lib/launch4j/demo/LICENSE.txt b/installer/lib/launch4j/demo/LICENSE.txt index 3912109b5..d6d6bb5ea 100644 --- a/installer/lib/launch4j/demo/LICENSE.txt +++ b/installer/lib/launch4j/demo/LICENSE.txt @@ -1,340 +1,30 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. +Launch4j (http://launch4j.sourceforge.net/) +Cross-platform Java application wrapper for creating Windows native executables. + +Copyright (c) 2004, 2007 Grzegorz Kowal + +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 the Launch4j 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 OWNER 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. \ No newline at end of file diff --git a/installer/lib/launch4j/demo/SimpleApp/SimpleApp.jar b/installer/lib/launch4j/demo/SimpleApp/SimpleApp.jar new file mode 100644 index 0000000000000000000000000000000000000000..f02c6133b7d38955cf3503afb1d6142265f91f67 GIT binary patch literal 3123 zcma);c{r5o8^@y`jbUsdOSX*B*q5=5ov~$^Y|)H8YaAmv=9FfXooqw2 z3>i|9(}uDZB_tsoCO;~i>uR}v_j^6h`~30!-p_kK_j6tE2ZaDKfdHGqa&}Se>*D*g z7r+ES8d&MdpD;6oez^w#puS640n8gxB6iw4YeQPPF?cq{wiKyrcEZrW(&`A(5SdX6 zir3-Xvl_peET22hrwmCfsx>*tlu(axw`slfZj8jaer%8ur4Z!m$2C%G_-WLhA+d*i z!OrrYm^83KtG%=FBf%S6Rv^7F#jjCd?CBXJSJ^RaGbJ}HXV`RVIxmWC74T!NOdACRdWJ!Ntzh}C z2=)4nh;v8ej|mTS_ksKUMlJ9YwPyq-AlTn?+r|2|EsUpB)8t(M0ChJ2ApIMcrSGO$ zH#k@VcEsHu6B?Rfjz+XA@O&w*3vHNgeXz=)S=DgISTctmW^K>!j>$xaoj; z4_v%53Z6Ggl{#fArY{fgR%ZliMMlR(?#XU90qr$ye$!r`CU_qL%kR*Pzw%Dexd&E3 z{If4M<}FJrrEIAU>+)j3P>D0v{$gdH|C|!}-f5F(iA3vSQDez)5=ML#Jm-~o(3~Ah zz)&Uf)B==`=!bPecTcAiX)<6L&76`sI5$KHDA3AH(YIoc5Mi6HSPy7wL||BkES}JC zFjn`{DgnMa3O2U=%<$8j)O{waQ+&Z54^<9`4>gbIum`I98(5!`Lv~!Q8p}Kw8JxYC zP1EB_6D8J|hBAz76d8}|P!mY`LrKFGC-NIFoh_HW6~m8xbV)E3UFzFI^0(=N>VCp9 ztN0Q6hQS{f`w9t&B|y=FRbl3h1_o>6QUZx3?SoG^E09OQ7(2={>_>90`UA4LgtGGcT2>LRl zzv{Wu0IaExh?XAfk49Whbf#72qhz9|3rxi#Tu1SOq)3k>LD7f=)lm)EyTsbF5uH;r zpWm;4T3=U>df&5N#8Sf@$~>n~%WuzZ6nxbov(b%7+p6bUs+L;G1Qmb7RG@2m|4%YDMagMEt1)Z9Tdp;ekCodJw!_I^3IIlcx0dKK2|4)F^YP68^hR17wO@^Gu}A0e{G;2_d&Gp^fB?&GE#^;iH8$r z6-F!2%OTfCY^W8^U8<1eac42Lkw)xclu;}b0d&B93>=}mcl{A9Eh3e7ZFqNJ zn;8&p2h0?28z#)3c`J*KyFTyT>OaQYs`Ek^h;Y>tDIs4qd0ud7zhpt#zOc2sG?x#m zY;kn^h5M+eet8qgL7{VH+_M+jJbQD^vb%;zZbF_eQPQIDH(p@j3Z=^xt$t(5t!5I; zf1R?W3-b+kXv?ixdNQEAzAvB}(keFhPEn*{)FB~KQkqROudHpOJ$=VU)UIM|AIg{f z=`Wzq>RD#RIUybU`lYY7vc*fKs_5(V?oSB&z7NF2^-*?>dfh3z2;p_gdhDH$Np5_h zYmX%HnyuXZ@$|&wT|Unj+w#n1) zTCYY2UHF3dxkLgT$7@g*9@j|%v8o!Pv{Hx*>%EP)2$xreXV zNf+qGt_!Xn}0tnfKRsg^PD=|x-W(*elctE zbZZ7trL}xHWl*+n3X|UH;Elnl&-PR{(mTX!GeW7Y1X;tCNY8+iaycqb zmLDkhFMot$SbEWqFZ)&xR|RRWgH$@ihlZA%tOtCG36h#C9mvYPF|8P9LFY~33q@B5AmIP)Hd12Xd92Yhwusr4*=FX*R`GsYz_DS+TZ|IiP zJn%w5j3~>z499}9T0*49d>s3@lSpT>0L@6ClfL$a$3Eua$T_D)9Lwc6G24DW)i7(O z!8S>`e*XI5cCLnTrKtB_>EJ(>33U2(UHi8o{tGoH$roC@qxMlr0 z8g3dkgN&Emn76I}0ma{KzR70aVsrDEjpa8|+uHL-n%iWxZ?Wm%*Z`+Z$5(RuwP};x zc1%h;rvH%Kuicw0x8uhA#JxjyTUmb2c3XMK`262w`GNFyPVncDv6I#lxP2bmrEPuO bcG_>qfkN!r;1mFWb>rdLV9&i@ugCuYlFi?v literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/demo/SimpleApp/build.xml b/installer/lib/launch4j/demo/SimpleApp/build.xml new file mode 100644 index 000000000..82f4b4998 --- /dev/null +++ b/installer/lib/launch4j/demo/SimpleApp/build.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/installer/lib/launch4j/demo/SimpleApp/l4j/SimpleApp.ico b/installer/lib/launch4j/demo/SimpleApp/l4j/SimpleApp.ico new file mode 100644 index 0000000000000000000000000000000000000000..cc4c540e2d1b1556444bfddf1ce9f32aa1f5e94c GIT binary patch literal 766 zcmb_aF%H5o47@@mMwpm8@(VgtDqBCpo($}KDNkW!WI*bIWbP7DAnL%trH*qs$8oFz z6-U!-AY2!~mVQTTXf3Tm%^C32=HV$)@jf}uTq1-(FTvsmGp%SG+S2rYbQ5CkiE+V= zI&(L6T?=G7m>n7Lmd)-An7G{|XSm{eb0={@ez4@{x#LU67?*U?FMcj~KNk61!3W3t zGI;;N$Q|qI>QsmHSnrGXFTLe^bKN@s(GOAfV`@l}zcxtz4Yi`g1K8hy^#xc3VCne_ U%J3s{eBjv&b10W`miLH10j28KZU6uP literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/demo/SimpleApp/l4j/SimpleApp.xml b/installer/lib/launch4j/demo/SimpleApp/l4j/SimpleApp.xml new file mode 100644 index 000000000..9a7dc940a --- /dev/null +++ b/installer/lib/launch4j/demo/SimpleApp/l4j/SimpleApp.xml @@ -0,0 +1,18 @@ + + gui + ../SimpleApp.jar + ../SimpleApp.exe + SimpleApp + . + true + SimpleApp.ico + + 1.4.0 + + + splash.bmp + true + 60 + true + + \ No newline at end of file diff --git a/installer/lib/launch4j/demo/SimpleApp/l4j/splash.bmp b/installer/lib/launch4j/demo/SimpleApp/l4j/splash.bmp new file mode 100644 index 0000000000000000000000000000000000000000..88d7bbf10fd2f2c7ba629802767be3cc4fecfcf9 GIT binary patch literal 4514 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 0) { + sb.append("\nArgs: "); + for (int i = 0; i < args.length; i++) { + sb.append(args[i]); + sb.append(' '); + } + } + JOptionPane.showMessageDialog(this, + sb.toString(), + "Info", + JOptionPane.INFORMATION_MESSAGE); + } + + public static void setLAF() { + JFrame.setDefaultLookAndFeelDecorated(true); + Toolkit.getDefaultToolkit().setDynamicLayout(true); + System.setProperty("sun.awt.noerasebackground","true"); + try { + UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); + } catch (Exception e) { + System.err.println("Failed to set LookAndFeel"); + } + } + + public static void main(String[] args) { + setLAF(); + new SimpleApp(args); + } +} diff --git a/installer/lib/launch4j/head/LICENSE.txt b/installer/lib/launch4j/head/LICENSE.txt index b1e3f5a26..536488e61 100644 --- a/installer/lib/launch4j/head/LICENSE.txt +++ b/installer/lib/launch4j/head/LICENSE.txt @@ -1,504 +1,23 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Libraries - - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms of the -ordinary General Public License). - - To apply these terms, attach the following notices to the library. It is -safest to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least the -"copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -Also add information on how to contact you by electronic and paper mail. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the library, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James Random Hacker. - - , 1 April 1990 - Ty Coon, President of Vice - -That's all there is to it! - - +Copyright (c) 2004, 2007 Grzegorz Kowal + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +Except as contained in this notice, the name(s) of the above copyright holders +shall not be used in advertising or otherwise to promote the sale, use or other +dealings in this Software without prior written authorization. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/installer/lib/launch4j/head/consolehead.o b/installer/lib/launch4j/head/consolehead.o index 89706ccc720eef29cd90186e0ac297f0d4382411..739d9767fdc43908988d4c92de7294f74a2f96f0 100644 GIT binary patch literal 1096 zcmZ`&OKTKC5U$x7#2~)M$3bBUgU3ZZNG_W7ktniAAn~NqwzKVIU>;$n1ACH{;9-yj zk6yfpKOx|#2!RzOSMlgYP!JT%F`&3s)$Hi(CMoD|zOMSJy0)vgWmrIVy#{ccnPoJz z>S*Q#Y~W{=mQn2Y-khJh~WlF@<(F!o}2W|`jvXx_{z zl6{?j_`}BTSH5g~qwpAXrzZ7GW;w6wByKqt#~-b|CapGmb4F%6>^uLGJPX(KIo{@U zNw;GF7SL~dbG7gJd&{8|j;w4Bmix?#3ePrw4F+dE zXx~ItKZf$suSVZ3;qlw$_k&)OZWYmQXpAio+Yuxt( zg^cXa0KhZcI7;I{Eh^b=xa=39^dn{f2GpSj)wf2MXc|8e>Ae3|eP?tfCJD!^`o>I* zZL6ugFM9Q+v9*v8)gH0Ktr8GI20`q~vIXi1Xu$uh1|n2ps>**6{ZgSi%3apODqLyS*sVq{RxQoeH)`gL*8@Ll!mA)K@p^VxsKT;Q) qr$MB?7s+5IN#X>A8^oz<#ojE{q!6Rq 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 literal 5155 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Ý^N z093-L6iB4p10=fq9guiqH;_nq4rmGYxC|uTpf~%{dJT}YdKK*kg%+yTyA-VwNW4Mc zP7<9r1BnLz03;f`2qa^41IZX;@O=`|U;>b|P6v|Kxr(+_p>oygSF~Cn(I5mQ8vHGg zXz(1+*Vx`SRqMY2&0tyqzHKRJib4w&DhCojKLj+Bd+Y+DXA^~566ouUP6Ele{|+QQ z3h^#m&;}rBjVRh4h28=ZO)mk7uO{IIxu97-#{` z;}44V9ZYKal2M_y3rJe`0xe`3eN*rjM#q2_FnR+>wE7H4bQyu~z)9bHAhBoykZ4t* zS_6vq0#J!a2Aaj_9U#&EU4=dX5<4y_T4BC3niuG1?mGua#=R9t#$Bn<{R$ld5>1Z) zNsrf6>m?x3U^rgO%eY=3k=FnumOlg}mVXauCTs9KkVL;5NF*Nvk{)j=^fr*>^Ls!` zxvy)ClP{BiW;3knev{|(_DOw!J%O3hZko0(3wf+=H#^?c(Onh1Ky$K|__D3Me#1UYZOdJO! zearAeG}s6vF@G4y_5qOiU=NVk_O5FEM76r`>j~0&H4w6}qTU?pK|@ zr9k4p)j*=bS|G5(8%;p-fC{yzfJEnZAQ?BQ&@qLMD|A|+kAbA`Xmq@hS!NP09Wv{muNfyA~wK$BSB^FThMG{}Lf13sC5je#OCEawWWiTywRKzIXLN*@|4SM%32*77X`3We@= z;XnQIN1E~zQ0SL%)07TS=-ZWP$}flqyO%WOIPvtOybTI{$O;-g6pVx#bkBSyGEz1;MWR~zy6P&aI!F~wiAv9>;( zNkOk*P16=32~XqZ{yfxnts0AX=yQEPir*g%Hq-|tW4bAGsaH1blaG#w=(EMfBSO^tLvl`R@ybH)GUN#KO;Seo6dl>a+=9MW8v2 z>w}E-aJaJGKy6O*YyK5_BmzTFXcw3GZq)o08})_;C`T1)amk#yntvHoU!_Mv(Qu7k zW^^Gk4+zI26YKOG8ath$45SV0r!ea3H*eJF!sl z9m!Z4*6|*FWjIs=^T7ah)&%N}Wub5deA=MjwSJRcV~}OgpscwbNl@#s6P4r1@vw1_ O{*~W1L;G)+xl$AW diff --git a/installer/lib/launch4j/head_src/LICENSE.txt b/installer/lib/launch4j/head_src/LICENSE.txt index b1e3f5a26..2805f412a 100644 --- a/installer/lib/launch4j/head_src/LICENSE.txt +++ b/installer/lib/launch4j/head_src/LICENSE.txt @@ -1,504 +1,23 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Libraries - - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms of the -ordinary General Public License). - - To apply these terms, attach the following notices to the library. It is -safest to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least the -"copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -Also add information on how to contact you by electronic and paper mail. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the library, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James Random Hacker. - - , 1 April 1990 - Ty Coon, President of Vice - -That's all there is to it! - - +Copyright (c) 2004, 2008 Grzegorz Kowal + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +Except as contained in this notice, the name(s) of the above copyright holders +shall not be used in advertising or otherwise to promote the sale, use or other +dealings in this Software without prior written authorization. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/installer/lib/launch4j/head_src/consolehead/Makefile.win b/installer/lib/launch4j/head_src/consolehead/Makefile.win index 55366347b..349e4c00f 100644 --- a/installer/lib/launch4j/head_src/consolehead/Makefile.win +++ b/installer/lib/launch4j/head_src/consolehead/Makefile.win @@ -5,11 +5,11 @@ CPP = g++.exe CC = gcc.exe WINDRES = windres.exe RES = -OBJ = consolehead.o ../head.o $(RES) -LINKOBJ = consolehead.o ../head.o $(RES) -LIBS = -L"lib" -s -INCS = -I"include" -CXXINCS = -I"lib/gcc/mingw32/3.4.2/include" -I"include/c++/3.4.2/backward" -I"include/c++/3.4.2/mingw32" -I"include/c++/3.4.2" -I"include" +OBJ = ../../head/consolehead.o ../../head/head.o $(RES) +LINKOBJ = ../../head/consolehead.o ../../head/head.o $(RES) +LIBS = -L"C:/Dev-Cpp/lib" -n -s +INCS = -I"C:/Dev-Cpp/include" +CXXINCS = -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include" BIN = consolehead.exe CXXFLAGS = $(CXXINCS) -fexpensive-optimizations -O3 CFLAGS = $(INCS) -fexpensive-optimizations -O3 @@ -24,10 +24,10 @@ clean: clean-custom ${RM} $(OBJ) $(BIN) $(BIN): $(OBJ) - $(CC) $(LINKOBJ) -o "consolehead.exe" $(LIBS) +# $(CC) $(LINKOBJ) -o "consolehead.exe" $(LIBS) -consolehead.o: consolehead.c - $(CC) -c consolehead.c -o consolehead.o $(CFLAGS) +../../head/consolehead.o: consolehead.c + $(CC) -c consolehead.c -o ../../head/consolehead.o $(CFLAGS) -../head.o: ../head.c - $(CC) -c ../head.c -o ../head.o $(CFLAGS) +../../head/head.o: ../head.c + $(CC) -c ../head.c -o ../../head/head.o $(CFLAGS) diff --git a/installer/lib/launch4j/head_src/consolehead/consolehead.c b/installer/lib/launch4j/head_src/consolehead/consolehead.c index cc0d85d76..755a7673c 100644 --- a/installer/lib/launch4j/head_src/consolehead/consolehead.c +++ b/installer/lib/launch4j/head_src/consolehead/consolehead.c @@ -1,24 +1,30 @@ /* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2004-2005 Grzegorz Kowal + Copyright (c) 2004, 2007 Grzegorz Kowal - Compiled with Mingw port of GCC, Bloodshed Dev-C++ IDE (http://www.bloodshed.net/devcpp.html) + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Except as contained in this notice, the name(s) of the above copyright holders + shall not be used in advertising or otherwise to promote the sale, use or other + dealings in this Software without prior written authorization. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. */ #include "../resource.h" @@ -27,29 +33,32 @@ int main(int argc, char* argv[]) { setConsoleFlag(); - HMODULE hLibrary = NULL; - char cmdLine[BIG_STR] = ""; - int i; // causes error: 'for' loop initial declaration used outside C99 mode. - for (i = 1; i < argc; i++) { - strcat(cmdLine, argv[i]); - if (i < argc - 1) { - strcat(cmdLine, " "); + LPTSTR cmdLine = GetCommandLine(); + if (*cmdLine == '"') { + if (*(cmdLine = strchr(cmdLine + 1, '"') + 1)) { + cmdLine++; } + } else if ((cmdLine = strchr(cmdLine, ' ')) != NULL) { + cmdLine++; + } else { + cmdLine = ""; } - if (!prepare(hLibrary, cmdLine)) { - if (hLibrary != NULL) { - FreeLibrary(hLibrary); - } - return 1; - } - FreeLibrary(hLibrary); - - int result = (int) execute(TRUE); - if (result == -1) { - char errMsg[BIG_STR] = "could not start the application: "; - strcat(errMsg, strerror(errno)); + int result = prepare(cmdLine); + if (result == ERROR_ALREADY_EXISTS) { + char errMsg[BIG_STR] = {0}; + loadString(INSTANCE_ALREADY_EXISTS_MSG, errMsg); msgBox(errMsg); + closeLogFile(); + return 2; + } + if (result != TRUE) { + signalError(); return 1; + } + + result = (int) execute(TRUE); + if (result == -1) { + signalError(); } else { return result; } diff --git a/installer/lib/launch4j/head_src/consolehead/consolehead.dev b/installer/lib/launch4j/head_src/consolehead/consolehead.dev index 4f55c0cef..a309ec94f 100644 --- a/installer/lib/launch4j/head_src/consolehead/consolehead.dev +++ b/installer/lib/launch4j/head_src/consolehead/consolehead.dev @@ -7,23 +7,23 @@ Ver=1 ObjFiles= Includes= Libs= -PrivateResource=consolehead_private.rc +PrivateResource= ResourceIncludes= MakeIncludes= Compiler= CppCompiler= -Linker= +Linker=-n_@@_ IsCpp=0 Icon= ExeOutput= -ObjectOutput= +ObjectOutput=..\..\head OverrideOutput=0 OverrideOutputName=consolehead.exe HostApplication= Folders= CommandLine= UseCustomMakefile=0 -CustomMakefile= +CustomMakefile=Makefile.win IncludeVersionInfo=0 SupportXPThemes=0 CompilerSet=0 diff --git a/installer/lib/launch4j/head_src/guihead/Makefile.win b/installer/lib/launch4j/head_src/guihead/Makefile.win index 2e3f74680..30cee5623 100644 --- a/installer/lib/launch4j/head_src/guihead/Makefile.win +++ b/installer/lib/launch4j/head_src/guihead/Makefile.win @@ -5,11 +5,11 @@ CPP = g++.exe CC = gcc.exe WINDRES = windres.exe RES = -OBJ = guihead.o ../head.o $(RES) -LINKOBJ = guihead.o ../head.o $(RES) -LIBS = -L"lib" -mwindows -INCS = -I"include" -CXXINCS = -I"lib/gcc/mingw32/3.4.2/include" -I"include/c++/3.4.2/backward" -I"include/c++/3.4.2/mingw32" -I"include/c++/3.4.2" -I"include" +OBJ = ../../head/guihead.o ../../head/head.o $(RES) +LINKOBJ = ../../head/guihead.o ../../head/head.o $(RES) +LIBS = -L"C:/Dev-Cpp/lib" -mwindows -n -s +INCS = -I"C:/Dev-Cpp/include" +CXXINCS = -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include" BIN = guihead.exe CXXFLAGS = $(CXXINCS) -fexpensive-optimizations -O3 CFLAGS = $(INCS) -fexpensive-optimizations -O3 @@ -24,10 +24,10 @@ clean: clean-custom ${RM} $(OBJ) $(BIN) $(BIN): $(OBJ) - $(CC) $(LINKOBJ) -o "guihead.exe" $(LIBS) +# $(CC) $(LINKOBJ) -o "guihead.exe" $(LIBS) -guihead.o: guihead.c - $(CC) -c guihead.c -o guihead.o $(CFLAGS) +../../head/guihead.o: guihead.c + $(CC) -c guihead.c -o ../../head/guihead.o $(CFLAGS) -../head.o: ../head.c - $(CC) -c ../head.c -o ../head.o $(CFLAGS) +../../head/head.o: ../head.c + $(CC) -c ../head.c -o ../../head/head.o $(CFLAGS) diff --git a/installer/lib/launch4j/head_src/guihead/guihead.c b/installer/lib/launch4j/head_src/guihead/guihead.c index cbc1c7616..508a5bdac 100644 --- a/installer/lib/launch4j/head_src/guihead/guihead.c +++ b/installer/lib/launch4j/head_src/guihead/guihead.c @@ -1,30 +1,38 @@ /* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2004-2005 Grzegorz Kowal + Copyright (c) 2004, 2007 Grzegorz Kowal + Sylvain Mina (single instance patch) - Compiled with Mingw port of GCC, Bloodshed Dev-C++ IDE (http://www.bloodshed.net/devcpp.html) + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Except as contained in this notice, the name(s) of the above copyright holders + shall not be used in advertising or otherwise to promote the sale, use or other + dealings in this Software without prior written authorization. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. */ #include "../resource.h" #include "../head.h" #include "guihead.h" +extern FILE* hLog; extern PROCESS_INFORMATION pi; HWND hWnd; @@ -33,39 +41,44 @@ BOOL stayAlive = FALSE; BOOL splash = FALSE; BOOL splashTimeoutErr; BOOL waitForWindow; -int splashTimeout; // tick count (s) +int splashTimeout = DEFAULT_SPLASH_TIMEOUT; int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { - HMODULE hLibrary = NULL; - if (!prepare(hLibrary, lpCmdLine)) { - if (hLibrary != NULL) { - FreeLibrary(hLibrary); - } + int result = prepare(lpCmdLine); + if (result == ERROR_ALREADY_EXISTS) { + HWND handle = getInstanceWindow(); + ShowWindow(handle, SW_SHOW); + SetForegroundWindow(handle); + closeLogFile(); + return 2; + } + if (result != TRUE) { + signalError(); return 1; } - splash = loadBoolString(hLibrary, SHOW_SPLASH); - stayAlive = loadBoolString(hLibrary, GUI_HEADER_STAYS_ALIVE); + splash = loadBool(SHOW_SPLASH) + && strstr(lpCmdLine, "--l4j-no-splash") == NULL; + stayAlive = loadBool(GUI_HEADER_STAYS_ALIVE) + && strstr(lpCmdLine, "--l4j-dont-wait") == NULL; if (splash || stayAlive) { hWnd = CreateWindowEx(WS_EX_TOOLWINDOW, "STATIC", "", WS_POPUP | SS_BITMAP, 0, 0, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL); if (splash) { - char timeout[10] = ""; - if (!loadString(hLibrary, SPLASH_TIMEOUT, timeout)) { - msgBox("Cannot load splash timeout property."); - return 1; + char timeout[10] = {0}; + if (loadString(SPLASH_TIMEOUT, timeout)) { + splashTimeout = atoi(timeout); + if (splashTimeout <= 0 || splashTimeout > MAX_SPLASH_TIMEOUT) { + splashTimeout = DEFAULT_SPLASH_TIMEOUT; + } } - splashTimeout = atoi(timeout); - if (splashTimeout <= 0 || splashTimeout > 60 * 15 /* 15 minutes */) { - msgBox("Invalid splash timeout property."); - return 1; - } - splashTimeoutErr = loadBoolString(hLibrary, SPLASH_TIMEOUT_ERR); - waitForWindow = loadBoolString(hLibrary, SPLASH_WAITS_FOR_WINDOW); + splashTimeoutErr = loadBool(SPLASH_TIMEOUT_ERR) + && strstr(lpCmdLine, "--l4j-no-splash-err") == NULL; + waitForWindow = loadBool(SPLASH_WAITS_FOR_WINDOW); HANDLE hImage = LoadImage(hInstance, // handle of the instance containing the image MAKEINTRESOURCE(SPLASH_BITMAP), // name or identifier of image IMAGE_BITMAP, // type of image @@ -73,7 +86,7 @@ int APIENTRY WinMain(HINSTANCE hInstance, 0, // desired height LR_DEFAULTSIZE); if (hImage == NULL) { - msgBox("Cannot load splash screen."); + signalError(); return 1; } SendMessage(hWnd, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM) hImage); @@ -86,29 +99,47 @@ int APIENTRY WinMain(HINSTANCE hInstance, UpdateWindow (hWnd); } if (!SetTimer (hWnd, ID_TIMER, 1000 /* 1s */, TimerProc)) { + signalError(); return 1; } } - FreeLibrary(hLibrary); if (execute(FALSE) == -1) { - char errMsg[BIG_STR] = "Error occured while starting the application...\n"; - strcat(errMsg, strerror(errno)); - msgBox(errMsg); + signalError(); return 1; } if (!(splash || stayAlive)) { + debug("Exit code:\t0\n"); closeHandles(); return 0; } + MSG msg; while (GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } + debug("Exit code:\t%d\n", dwExitCode); closeHandles(); return dwExitCode; } +HWND getInstanceWindow() { + char windowTitle[STR]; + char instWindowTitle[STR] = {0}; + if (loadString(INSTANCE_WINDOW_TITLE, instWindowTitle)) { + HWND handle = FindWindowEx(NULL, NULL, NULL, NULL); + while (handle != NULL) { + GetWindowText(handle, windowTitle, STR - 1); + if (strstr(windowTitle, instWindowTitle) != NULL) { + return handle; + } else { + handle = FindWindowEx(NULL, handle, NULL, NULL); + } + } + } + return NULL; +} + BOOL CALLBACK enumwndfn(HWND hwnd, LPARAM lParam) { DWORD processId; GetWindowThreadProcessId(hwnd, &processId); @@ -135,7 +166,7 @@ VOID CALLBACK TimerProc( ShowWindow(hWnd, SW_HIDE); if (waitForWindow && splashTimeoutErr) { KillTimer(hwnd, ID_TIMER); - msgBox("Could not start the application, operation timed out."); + signalError(); PostQuitMessage(0); } } else { @@ -149,7 +180,6 @@ VOID CALLBACK TimerProc( if (dwExitCode != STILL_ACTIVE || !(splash || stayAlive)) { KillTimer(hWnd, ID_TIMER); - PostQuitMessage(0); - return; + PostQuitMessage(0); } } diff --git a/installer/lib/launch4j/head_src/guihead/guihead.dev b/installer/lib/launch4j/head_src/guihead/guihead.dev index ec0403d27..7c30088f1 100644 --- a/installer/lib/launch4j/head_src/guihead/guihead.dev +++ b/installer/lib/launch4j/head_src/guihead/guihead.dev @@ -12,22 +12,22 @@ ResourceIncludes= MakeIncludes= Compiler= CppCompiler= -Linker=_@@_ +Linker=-n_@@_ IsCpp=0 Icon= ExeOutput= -ObjectOutput= +ObjectOutput=..\..\head OverrideOutput=0 OverrideOutputName=guihead.exe HostApplication= Folders= CommandLine= -UseCustomMakefile=0 -CustomMakefile= +UseCustomMakefile=1 +CustomMakefile=Makefile.win IncludeVersionInfo=0 SupportXPThemes=0 CompilerSet=0 -CompilerSettings=0000000001001000000000 +CompilerSettings=0000000001001000000100 [Unit1] FileName=guihead.c @@ -37,7 +37,7 @@ Compile=1 Link=1 Priority=1000 OverrideBuildCmd=0 -BuildCmd= +BuildCmd=$(CC) -c guihead.c -o ../../head/guihead.o $(CFLAGS) [Unit2] FileName=guihead.h @@ -78,16 +78,6 @@ OverrideBuildCmd=0 BuildCmd= [Unit6] -FileName=..\resource.h -Folder=guihead -Compile=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= -CompileCpp=0 - -[Unit7] FileName=..\resid.h CompileCpp=0 Folder=guihead diff --git a/installer/lib/launch4j/head_src/guihead/guihead.h b/installer/lib/launch4j/head_src/guihead/guihead.h index 26b51e0c6..2fc71e31f 100644 --- a/installer/lib/launch4j/head_src/guihead/guihead.h +++ b/installer/lib/launch4j/head_src/guihead/guihead.h @@ -1,27 +1,39 @@ /* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2004-2005 Grzegorz Kowal + Copyright (c) 2004, 2007 Grzegorz Kowal - Compiled with Mingw port of GCC, Bloodshed Dev-C++ IDE (http://www.bloodshed.net/devcpp.html) + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Except as contained in this notice, the name(s) of the above copyright holders + shall not be used in advertising or otherwise to promote the sale, use or other + dealings in this Software without prior written authorization. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. */ #define ID_TIMER 1 +#define DEFAULT_SPLASH_TIMEOUT 60 /* 60 seconds */ +#define MAX_SPLASH_TIMEOUT 60 * 15 /* 15 minutes */ + +HWND getInstanceWindow(); + +BOOL CALLBACK enumwndfn(HWND hwnd, LPARAM lParam); VOID CALLBACK TimerProc( HWND hwnd, // handle of window for timer messages diff --git a/installer/lib/launch4j/head_src/head.c b/installer/lib/launch4j/head_src/head.c index b1ce58552..fe2ff0900 100644 --- a/installer/lib/launch4j/head_src/head.c +++ b/installer/lib/launch4j/head_src/head.c @@ -1,43 +1,85 @@ /* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2004-2005 Grzegorz Kowal + Copyright (c) 2004, 2008 Grzegorz Kowal, + Ian Roberts (jdk preference patch) + Sylvain Mina (single instance patch) - Compiled with Mingw port of GCC, Bloodshed Dev-C++ IDE (http://www.bloodshed.net/devcpp.html) + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Except as contained in this notice, the name(s) of the above copyright holders + shall not be used in advertising or otherwise to promote the sale, use or other + dealings in this Software without prior written authorization. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. */ #include "resource.h" #include "head.h" +HMODULE hModule; +FILE* hLog; BOOL console = FALSE; +BOOL wow64 = FALSE; int foundJava = NO_JAVA_FOUND; struct _stat statBuf; PROCESS_INFORMATION pi; +DWORD priority; -char errTitle[STR] = "launch4j"; -char javaMinVer[STR] = ""; -char javaMaxVer[STR] = ""; -char foundJavaVer[STR] = ""; +char mutexName[STR] = {0}; -char workingDir[_MAX_PATH] = ""; -char cmd[_MAX_PATH] = ""; -char args[BIG_STR * 2] = ""; +char errUrl[256] = {0}; +char errTitle[STR] = "Launch4j"; +char errMsg[BIG_STR] = {0}; + +char javaMinVer[STR] = {0}; +char javaMaxVer[STR] = {0}; +char foundJavaVer[STR] = {0}; +char foundJavaKey[_MAX_PATH] = {0}; + +char oldPwd[_MAX_PATH] = {0}; +char workingDir[_MAX_PATH] = {0}; +char cmd[_MAX_PATH] = {0}; +char args[MAX_ARGS] = {0}; + +FILE* openLogFile(const char* exePath, const int pathLen) { + char path[_MAX_PATH] = {0}; + strncpy(path, exePath, pathLen); + strcat(path, "\\launch4j.log"); + return fopen(path, "a"); +} + +void closeLogFile() { + if (hLog != NULL) { + fclose(hLog); + } +} + +void setWow64Flag() { + LPFN_ISWOW64PROCESS fnIsWow64Process = (LPFN_ISWOW64PROCESS)GetProcAddress( + GetModuleHandle(TEXT("kernel32")), "IsWow64Process"); + + if (fnIsWow64Process != NULL) { + fnIsWow64Process(GetCurrentProcess(), &wow64); + } + debug("WOW64:\t\t%s\n", wow64 ? "yes" : "no"); +} void setConsoleFlag() { console = TRUE; @@ -51,19 +93,43 @@ void msgBox(const char* text) { } } -void showJavaWebPage() { - ShellExecute(NULL, "open", "http://java.com", NULL, NULL, SW_SHOWNORMAL); +void signalError() { + DWORD err = GetLastError(); + if (err) { + LPVOID lpMsgBuf; + FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER + | FORMAT_MESSAGE_FROM_SYSTEM + | FORMAT_MESSAGE_IGNORE_INSERTS, + NULL, + err, + MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language + (LPTSTR) &lpMsgBuf, + 0, + NULL); + debug("Error:\t\t%s\n", (LPCTSTR) lpMsgBuf); + strcat(errMsg, "\n\n"); + strcat(errMsg, (LPCTSTR) lpMsgBuf); + msgBox(errMsg); + LocalFree(lpMsgBuf); + } else { + msgBox(errMsg); + } + if (*errUrl) { + debug("Open URL:\t%s\n", errUrl); + ShellExecute(NULL, "open", errUrl, NULL, NULL, SW_SHOWNORMAL); + } + closeLogFile(); } -BOOL loadString(HMODULE hLibrary, int resID, char* buffer) { +BOOL loadString(const int resID, char* buffer) { HRSRC hResource; HGLOBAL hResourceLoaded; LPBYTE lpBuffer; - hResource = FindResourceEx(hLibrary, RT_RCDATA, MAKEINTRESOURCE(resID), + hResource = FindResourceEx(hModule, RT_RCDATA, MAKEINTRESOURCE(resID), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT)); if (NULL != hResource) { - hResourceLoaded = LoadResource(hLibrary, hResource); + hResourceLoaded = LoadResource(hModule, hResource); if (NULL != hResourceLoaded) { lpBuffer = (LPBYTE) LockResource(hResourceLoaded); if (NULL != lpBuffer) { @@ -71,24 +137,76 @@ BOOL loadString(HMODULE hLibrary, int resID, char* buffer) { do { buffer[x] = (char) lpBuffer[x]; } while (buffer[x++] != 0); + // debug("Resource %d:\t%s\n", resID, buffer); return TRUE; } } + } else { + SetLastError(0); } return FALSE; } -BOOL loadBoolString(HMODULE hLibrary, int resID) { - char boolStr[10] = ""; - loadString(hLibrary, resID, boolStr); +BOOL loadBool(const int resID) { + char boolStr[20] = {0}; + loadString(resID, boolStr); return strcmp(boolStr, TRUE_STR) == 0; } -void regSearch(HKEY hKey, char* keyName, int searchType) { +int loadInt(const int resID) { + char intStr[20] = {0}; + loadString(resID, intStr); + return atoi(intStr); +} + +BOOL regQueryValue(const char* regPath, unsigned char* buffer, + unsigned long bufferLength) { + HKEY hRootKey; + char* key; + char* value; + if (strstr(regPath, HKEY_CLASSES_ROOT_STR) == regPath) { + hRootKey = HKEY_CLASSES_ROOT; + } else if (strstr(regPath, HKEY_CURRENT_USER_STR) == regPath) { + hRootKey = HKEY_CURRENT_USER; + } else if (strstr(regPath, HKEY_LOCAL_MACHINE_STR) == regPath) { + hRootKey = HKEY_LOCAL_MACHINE; + } else if (strstr(regPath, HKEY_USERS_STR) == regPath) { + hRootKey = HKEY_USERS; + } else if (strstr(regPath, HKEY_CURRENT_CONFIG_STR) == regPath) { + hRootKey = HKEY_CURRENT_CONFIG; + } else { + return FALSE; + } + key = strchr(regPath, '\\') + 1; + value = strrchr(regPath, '\\') + 1; + *(value - 1) = 0; + + HKEY hKey; + unsigned long datatype; + BOOL result = FALSE; + if ((wow64 && RegOpenKeyEx(hRootKey, + key, + 0, + KEY_READ | KEY_WOW64_64KEY, + &hKey) == ERROR_SUCCESS) + || RegOpenKeyEx(hRootKey, + key, + 0, + KEY_READ, + &hKey) == ERROR_SUCCESS) { + result = RegQueryValueEx(hKey, value, NULL, &datatype, buffer, &bufferLength) + == ERROR_SUCCESS; + RegCloseKey(hKey); + } + *(value - 1) = '\\'; + return result; +} + +void regSearch(const HKEY hKey, const char* keyName, const int searchType) { DWORD x = 0; unsigned long size = BIG_STR; FILETIME time; - char buffer[BIG_STR] = ""; + char buffer[BIG_STR] = {0}; while (RegEnumKeyEx( hKey, // handle to key to enumerate x++, // index of subkey to enumerate @@ -98,61 +216,92 @@ void regSearch(HKEY hKey, char* keyName, int searchType) { NULL, // address of buffer for class string NULL, // address for size of class buffer &time) == ERROR_SUCCESS) { + if (strcmp(buffer, javaMinVer) >= 0 - && (javaMaxVer[0] == 0 || strcmp(buffer, javaMaxVer) <= 0) + && (!*javaMaxVer || strcmp(buffer, javaMaxVer) <= 0) && strcmp(buffer, foundJavaVer) > 0) { strcpy(foundJavaVer, buffer); + strcpy(foundJavaKey, keyName); + appendPath(foundJavaKey, buffer); foundJava = searchType; + debug("Match:\t\t%s\\%s\n", keyName, buffer); + } else { + debug("Ignore:\t\t%s\\%s\n", keyName, buffer); } size = BIG_STR; } } -BOOL findJavaHome(char* path) { +void regSearchWow(const char* keyName, const int searchType) { HKEY hKey; - char jre[] = "SOFTWARE\\JavaSoft\\Java Runtime Environment"; - char sdk[] = "SOFTWARE\\JavaSoft\\Java Development Kit"; - if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, - TEXT(jre), + debug("64-bit search:\t%s...\n", keyName); + if (wow64 && RegOpenKeyEx(HKEY_LOCAL_MACHINE, + keyName, 0, - KEY_QUERY_VALUE | KEY_ENUMERATE_SUB_KEYS, + KEY_READ | KEY_WOW64_64KEY, &hKey) == ERROR_SUCCESS) { - regSearch(hKey, jre, FOUND_JRE); + + regSearch(hKey, keyName, searchType | KEY_WOW64_64KEY); + RegCloseKey(hKey); + if ((foundJava & KEY_WOW64_64KEY) != NO_JAVA_FOUND) + { + debug("Using 64-bit runtime.\n"); + return; + } + } + debug("32-bit search:\t%s...\n", keyName); + if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, + keyName, + 0, + KEY_READ, + &hKey) == ERROR_SUCCESS) { + regSearch(hKey, keyName, searchType); RegCloseKey(hKey); } - if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, - TEXT(sdk), - 0, - KEY_QUERY_VALUE | KEY_ENUMERATE_SUB_KEYS, - &hKey) == ERROR_SUCCESS) { - regSearch(hKey, sdk, FOUND_SDK); - RegCloseKey(hKey); +} + +void regSearchJreSdk(const char* jreKeyName, const char* sdkKeyName, + const int jdkPreference) { + if (jdkPreference == JDK_ONLY || jdkPreference == PREFER_JDK) { + regSearchWow(sdkKeyName, FOUND_SDK); + if (jdkPreference != JDK_ONLY) { + regSearchWow(jreKeyName, FOUND_JRE); + } + } else { // jdkPreference == JRE_ONLY or PREFER_JRE + regSearchWow(jreKeyName, FOUND_JRE); + if (jdkPreference != JRE_ONLY) { + regSearchWow(sdkKeyName, FOUND_SDK); + } + } +} + +BOOL findJavaHome(char* path, const int jdkPreference) { + regSearchJreSdk("SOFTWARE\\JavaSoft\\Java Runtime Environment", + "SOFTWARE\\JavaSoft\\Java Development Kit", + jdkPreference); + if (foundJava == NO_JAVA_FOUND) { + regSearchJreSdk("SOFTWARE\\IBM\\Java2 Runtime Environment", + "SOFTWARE\\IBM\\Java Development Kit", + jdkPreference); } if (foundJava != NO_JAVA_FOUND) { - char keyBuffer[BIG_STR]; - unsigned long datatype; - unsigned long bufferlength = BIG_STR; - if (foundJava == FOUND_JRE) { - strcpy(keyBuffer, jre); - } else { - strcpy(keyBuffer, sdk); - } - strcat(keyBuffer, "\\"); - strcat(keyBuffer, foundJavaVer); + HKEY hKey; if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, - TEXT(keyBuffer), - 0, - KEY_QUERY_VALUE, - &hKey) == ERROR_SUCCESS) { - unsigned char buffer[BIG_STR]; - if (RegQueryValueEx(hKey, "JavaHome", NULL, &datatype, buffer, &bufferlength) - == ERROR_SUCCESS) { + foundJavaKey, + 0, + KEY_READ | (foundJava & KEY_WOW64_64KEY), + &hKey) == ERROR_SUCCESS) { + unsigned char buffer[BIG_STR] = {0}; + unsigned long bufferlength = BIG_STR; + unsigned long datatype; + if (RegQueryValueEx(hKey, "JavaHome", NULL, &datatype, buffer, + &bufferlength) == ERROR_SUCCESS) { int i = 0; do { path[i] = buffer[i]; } while (path[i++] != 0); - if (foundJava == FOUND_SDK) { - strcat(path, "\\jre"); + if (foundJava & FOUND_SDK) { + appendPath(path, "jre"); } RegCloseKey(hKey); return TRUE; @@ -164,66 +313,93 @@ BOOL findJavaHome(char* path) { } /* - * extract the executable name, returns path length. + * Extract the executable name, returns path length. */ int getExePath(char* exePath) { - HMODULE hModule = GetModuleHandle(NULL); - if (hModule == 0 - || GetModuleFileName(hModule, exePath, _MAX_PATH) == 0) { + if (GetModuleFileName(hModule, exePath, _MAX_PATH) == 0) { return -1; } return strrchr(exePath, '\\') - exePath; } +void appendPath(char* basepath, const char* path) { + if (basepath[strlen(basepath) - 1] != '\\') { + strcat(basepath, "\\"); + } + strcat(basepath, path); +} + void appendJavaw(char* jrePath) { if (console) { - strcat(jrePath, "\\bin\\java.exe"); + appendPath(jrePath, "bin\\java.exe"); } else { - strcat(jrePath, "\\bin\\javaw.exe"); + appendPath(jrePath, "bin\\javaw.exe"); } } -void appendLauncher(BOOL setProcName, char* exePath, int pathLen, char* cmd) { +void appendLauncher(const BOOL setProcName, char* exePath, + const int pathLen, char* cmd) { if (setProcName) { - char tmpspec[_MAX_PATH] = ""; - char tmpfile[_MAX_PATH] = ""; + char tmpspec[_MAX_PATH]; + char tmpfile[_MAX_PATH]; strcpy(tmpspec, cmd); strcat(tmpspec, LAUNCH4J_TMP_DIR); tmpspec[strlen(tmpspec) - 1] = 0; if (_stat(tmpspec, &statBuf) == 0) { - // remove temp launchers + // Remove temp launchers and manifests struct _finddata_t c_file; long hFile; - strcat(tmpspec, "\\*.exe"); + appendPath(tmpspec, "*.exe"); strcpy(tmpfile, cmd); strcat(tmpfile, LAUNCH4J_TMP_DIR); char* filename = tmpfile + strlen(tmpfile); if ((hFile = _findfirst(tmpspec, &c_file)) != -1L) { do { strcpy(filename, c_file.name); + debug("Unlink:\t\t%s\n", tmpfile); + _unlink(tmpfile); + strcat(tmpfile, MANIFEST); + debug("Unlink:\t\t%s\n", tmpfile); _unlink(tmpfile); } while (_findnext(hFile, &c_file) == 0); } _findclose(hFile); } else { if (_mkdir(tmpspec) != 0) { + debug("Mkdir failed:\t%s\n", tmpspec); appendJavaw(cmd); return; } } - char javaw[_MAX_PATH] = ""; + char javaw[_MAX_PATH]; strcpy(javaw, cmd); appendJavaw(javaw); strcpy(tmpfile, cmd); strcat(tmpfile, LAUNCH4J_TMP_DIR); + char* tmpfilename = tmpfile + strlen(tmpfile); char* exeFilePart = exePath + pathLen + 1; - strcat(tmpfile, exeFilePart); + + // Copy manifest + char manifest[_MAX_PATH] = {0}; + strcpy(manifest, exePath); + strcat(manifest, MANIFEST); + if (_stat(manifest, &statBuf) == 0) { + strcat(tmpfile, exeFilePart); + strcat(tmpfile, MANIFEST); + debug("Copy:\t\t%s -> %s\n", manifest, tmpfile); + CopyFile(manifest, tmpfile, FALSE); + } + + // Copy launcher + strcpy(tmpfilename, exeFilePart); + debug("Copy:\t\t%s -> %s\n", javaw, tmpfile); if (CopyFile(javaw, tmpfile, FALSE)) { strcpy(cmd, tmpfile); return; - } else { + } else if (_stat(javaw, &statBuf) == 0) { long fs = statBuf.st_size; if (_stat(tmpfile, &statBuf) == 0 && fs == statBuf.st_size) { + debug("Reusing:\t\t%s\n", tmpfile); strcpy(cmd, tmpfile); return; } @@ -232,123 +408,396 @@ void appendLauncher(BOOL setProcName, char* exePath, int pathLen, char* cmd) { appendJavaw(cmd); } -BOOL isJrePathOk(char* path) { - if (!*path) { - return FALSE; +void appendAppClasspath(char* dst, const char* src, const char* classpath) { + strcat(dst, src); + if (*classpath) { + strcat(dst, ";"); } - char javaw[_MAX_PATH]; - strcpy(javaw, path); - appendJavaw(javaw); - return _stat(javaw, &statBuf) == 0; } -BOOL prepare(HMODULE hLibrary, char *lpCmdLine) { - // open executable - char exePath[_MAX_PATH] = ""; +BOOL isJrePathOk(const char* path) { + char javaw[_MAX_PATH]; + BOOL result = FALSE; + if (*path) { + strcpy(javaw, path); + appendJavaw(javaw); + result = _stat(javaw, &statBuf) == 0; + } + debug("Check launcher:\t%s %s\n", javaw, result ? "(OK)" : "(n/a)"); + return result; +} + +/* + * Expand environment %variables% + */ +BOOL expandVars(char *dst, const char *src, const char *exePath, const int pathLen) { + char varName[STR]; + char varValue[MAX_VAR_SIZE]; + while (strlen(src) > 0) { + char *start = strchr(src, '%'); + if (start != NULL) { + char *end = strchr(start + 1, '%'); + if (end == NULL) { + return FALSE; + } + // Copy content up to %VAR% + strncat(dst, src, start - src); + // Insert value of %VAR% + *varName = 0; + strncat(varName, start + 1, end - start - 1); + // Remember value start for logging + char *varValue = dst + strlen(dst); + if (strcmp(varName, "EXEDIR") == 0) { + strncat(dst, exePath, pathLen); + } else if (strcmp(varName, "EXEFILE") == 0) { + strcat(dst, exePath); + } else if (strcmp(varName, "PWD") == 0) { + GetCurrentDirectory(_MAX_PATH, dst + strlen(dst)); + } else if (strcmp(varName, "OLDPWD") == 0) { + strcat(dst, oldPwd); + } else if (strstr(varName, HKEY_STR) == varName) { + regQueryValue(varName, dst + strlen(dst), BIG_STR); + } else if (GetEnvironmentVariable(varName, varValue, MAX_VAR_SIZE) > 0) { + strcat(dst, varValue); + } + debug("Substitute:\t%s = %s\n", varName, varValue); + src = end + 1; + } else { + // Copy remaining content + strcat(dst, src); + break; + } + } + return TRUE; +} + +void appendHeapSizes(char *dst) { + MEMORYSTATUS m; + memset(&m, 0, sizeof(m)); + GlobalMemoryStatus(&m); + + appendHeapSize(dst, INITIAL_HEAP_SIZE, INITIAL_HEAP_PERCENT, + m.dwAvailPhys, "-Xms"); + appendHeapSize(dst, MAX_HEAP_SIZE, MAX_HEAP_PERCENT, + m.dwAvailPhys, "-Xmx"); +} + +void appendHeapSize(char *dst, const int absID, const int percentID, + const DWORD freeMemory, const char *option) { + + const int mb = 1048576; // 1 MB + int abs = loadInt(absID); + int percent = loadInt(percentID); + int free = (long long) freeMemory * percent / (100 * mb); // 100% * 1 MB + int size = free > abs ? free : abs; + if (size > 0) { + debug("Heap %s:\t%d MB / %d%%, Free: %d MB, Heap size: %d MB\n", + option, abs, percent, freeMemory / mb, size); + strcat(dst, option); + _itoa(size, dst + strlen(dst), 10); // 10 -- radix + strcat(dst, "m "); + } +} + +int prepare(const char *lpCmdLine) { + char tmp[MAX_ARGS] = {0}; + hModule = GetModuleHandle(NULL); + if (hModule == NULL) { + return FALSE; + } + + // Get executable path + char exePath[_MAX_PATH] = {0}; int pathLen = getExePath(exePath); if (pathLen == -1) { - msgBox("Cannot determinate exe file name."); - return FALSE; - } - hLibrary = LoadLibrary(exePath); - if (hLibrary == NULL) { - char msg[BIG_STR] = "Cannot find file: "; - strcat(msg, exePath); - msgBox(msg); return FALSE; } - // error message box title - loadString(hLibrary, ERR_TITLE, errTitle); - - // working dir - char tmp_path[_MAX_PATH] = ""; - if (loadString(hLibrary, CHDIR, tmp_path)) { - strncpy(workingDir, exePath, pathLen); - strcat(workingDir, "/"); - strcat(workingDir, tmp_path); - _chdir(workingDir); - } - - // custom process name - const BOOL setProcName = loadBoolString(hLibrary, SET_PROC_NAME); - - // use bundled jre or find java - if (loadString(hLibrary, JRE_PATH, tmp_path)) { - strncpy(cmd, exePath, pathLen); - strcat(cmd, "/"); - strcat(cmd, tmp_path); - } - if (!isJrePathOk(cmd)) { - if (!loadString(hLibrary, JAVA_MIN_VER, javaMinVer)) { - msgBox("Cannot find bundled JRE or javaw.exe is missing."); + // Initialize logging + if (strstr(lpCmdLine, "--l4j-debug") != NULL) { + hLog = openLogFile(exePath, pathLen); + if (hLog == NULL) { return FALSE; } - loadString(hLibrary, JAVA_MAX_VER, javaMaxVer); - if (!findJavaHome(cmd)) { - char txt[BIG_STR] = "Cannot find Java "; - strcat(txt, javaMinVer); + debug("\n\nCmdLine:\t%s %s\n", exePath, lpCmdLine); + } + + setWow64Flag(); + + // Set default error message, title and optional support web site url. + loadString(SUPPORT_URL, errUrl); + loadString(ERR_TITLE, errTitle); + if (!loadString(STARTUP_ERR, errMsg)) { + return FALSE; + } + + // Single instance + loadString(MUTEX_NAME, mutexName); + if (*mutexName) { + SECURITY_ATTRIBUTES security; + security.nLength = sizeof(SECURITY_ATTRIBUTES); + security.bInheritHandle = TRUE; + security.lpSecurityDescriptor = NULL; + CreateMutexA(&security, FALSE, mutexName); + if (GetLastError() == ERROR_ALREADY_EXISTS) { + debug("Instance already exists."); + return ERROR_ALREADY_EXISTS; + } + } + + // Working dir + char tmp_path[_MAX_PATH] = {0}; + GetCurrentDirectory(_MAX_PATH, oldPwd); + if (loadString(CHDIR, tmp_path)) { + strncpy(workingDir, exePath, pathLen); + appendPath(workingDir, tmp_path); + _chdir(workingDir); + debug("Working dir:\t%s\n", workingDir); + } + + // Use bundled jre or find java + if (loadString(JRE_PATH, tmp_path)) { + char jrePath[MAX_ARGS] = {0}; + expandVars(jrePath, tmp_path, exePath, pathLen); + debug("Bundled JRE:\t%s\n", jrePath); + if (jrePath[0] == '\\' || jrePath[1] == ':') { + // Absolute + strcpy(cmd, jrePath); + } else { + // Relative + strncpy(cmd, exePath, pathLen); + appendPath(cmd, jrePath); + } + } + if (!isJrePathOk(cmd)) { + if (!loadString(JAVA_MIN_VER, javaMinVer)) { + loadString(BUNDLED_JRE_ERR, errMsg); + return FALSE; + } + loadString(JAVA_MAX_VER, javaMaxVer); + if (!findJavaHome(cmd, loadInt(JDK_PREFERENCE))) { + loadString(JRE_VERSION_ERR, errMsg); + strcat(errMsg, " "); + strcat(errMsg, javaMinVer); if (*javaMaxVer) { - strcat(txt, " - "); - strcat(txt, javaMaxVer); + strcat(errMsg, " - "); + strcat(errMsg, javaMaxVer); } - msgBox(txt); - showJavaWebPage(); + loadString(DOWNLOAD_URL, errUrl); return FALSE; } if (!isJrePathOk(cmd)) { - msgBox("Java found, but javaw.exe seems to be missing."); + loadString(LAUNCHER_ERR, errMsg); return FALSE; } } + // Append a path to the Path environment variable + char jreBinPath[_MAX_PATH]; + strcpy(jreBinPath, cmd); + strcat(jreBinPath, "\\bin"); + if (!appendToPathVar(jreBinPath)) { + return FALSE; + } + + // Set environment variables + char envVars[MAX_VAR_SIZE] = {0}; + loadString(ENV_VARIABLES, envVars); + char *var = strtok(envVars, "\t"); + while (var != NULL) { + char *varValue = strchr(var, '='); + *varValue++ = 0; + *tmp = 0; + expandVars(tmp, varValue, exePath, pathLen); + debug("Set var:\t%s = %s\n", var, tmp); + SetEnvironmentVariable(var, tmp); + var = strtok(NULL, "\t"); + } + *tmp = 0; + + // Process priority + priority = loadInt(PRIORITY_CLASS); + + // Custom process name + const BOOL setProcName = loadBool(SET_PROC_NAME) + && strstr(lpCmdLine, "--l4j-default-proc") == NULL; + const BOOL wrapper = loadBool(WRAPPER); + appendLauncher(setProcName, exePath, pathLen, cmd); - char jarArgs[BIG_STR] = ""; - loadString(hLibrary, JAR_ARGS, jarArgs); - loadString(hLibrary, JVM_ARGS, args); - if (*args) { - strcat(args, " "); - } - strcat(args, "-jar \""); - strcat(args, exePath); - strcat(args, "\""); - if (*jarArgs) { - strcat(args, " "); - strcat(args, jarArgs); - } - if (*lpCmdLine) { - strcat(args, " "); - strcat(args, lpCmdLine); + // Heap sizes + appendHeapSizes(args); + + // JVM options + if (loadString(JVM_OPTIONS, tmp)) { + strcat(tmp, " "); + } else { + *tmp = 0; + } + /* + * Load additional JVM options from .l4j.ini file + * Options are separated by spaces or CRLF + * # starts an inline comment + */ + strncpy(tmp_path, exePath, strlen(exePath) - 3); + strcat(tmp_path, "l4j.ini"); + long hFile; + if ((hFile = _open(tmp_path, _O_RDONLY)) != -1) { + const int jvmOptLen = strlen(tmp); + char* src = tmp + jvmOptLen; + char* dst = src; + const int len = _read(hFile, src, MAX_ARGS - jvmOptLen - BIG_STR); + BOOL copy = TRUE; + int i; + for (i = 0; i < len; i++, src++) { + if (*src == '#') { + copy = FALSE; + } else if (*src == 13 || *src == 10) { + copy = TRUE; + if (dst > tmp && *(dst - 1) != ' ') { + *dst++ = ' '; + } + } else if (copy) { + *dst++ = *src; + } + } + *dst = 0; + if (len > 0 && *(dst - 1) != ' ') { + strcat(tmp, " "); + } + _close(hFile); } - // msgBox(cmd); - // msgBox(args); - // msgBox(workingDir); + // Expand environment %variables% + expandVars(args, tmp, exePath, pathLen); + + // MainClass + Classpath or Jar + char mainClass[STR] = {0}; + char jar[_MAX_PATH] = {0}; + loadString(JAR, jar); + if (loadString(MAIN_CLASS, mainClass)) { + if (!loadString(CLASSPATH, tmp)) { + return FALSE; + } + char exp[MAX_ARGS] = {0}; + expandVars(exp, tmp, exePath, pathLen); + strcat(args, "-classpath \""); + if (wrapper) { + appendAppClasspath(args, exePath, exp); + } else if (*jar) { + appendAppClasspath(args, jar, exp); + } + + // Deal with wildcards or >> strcat(args, exp); << + char* cp = strtok(exp, ";"); + while(cp != NULL) { + debug("Add classpath:\t%s\n", cp); + if (strpbrk(cp, "*?") != NULL) { + int len = strrchr(cp, '\\') - cp + 1; + strncpy(tmp_path, cp, len); + char* filename = tmp_path + len; + *filename = 0; + struct _finddata_t c_file; + long hFile; + if ((hFile = _findfirst(cp, &c_file)) != -1L) { + do { + strcpy(filename, c_file.name); + strcat(args, tmp_path); + strcat(args, ";"); + debug(" \" :\t%s\n", tmp_path); + } while (_findnext(hFile, &c_file) == 0); + } + _findclose(hFile); + } else { + strcat(args, cp); + strcat(args, ";"); + } + cp = strtok(NULL, ";"); + } + *(args + strlen(args) - 1) = 0; + + strcat(args, "\" "); + strcat(args, mainClass); + } else if (wrapper) { + strcat(args, "-jar \""); + strcat(args, exePath); + strcat(args, "\""); + } else { + strcat(args, "-jar \""); + strncat(args, exePath, pathLen); + appendPath(args, jar); + strcat(args, "\""); + } + + // Constant command line args + if (loadString(CMD_LINE, tmp)) { + strcat(args, " "); + strcat(args, tmp); + } + + // Command line args + if (*lpCmdLine) { + strcpy(tmp, lpCmdLine); + char* dst; + while ((dst = strstr(tmp, "--l4j-")) != NULL) { + char* src = strchr(dst, ' '); + if (src == NULL || *(src + 1) == 0) { + *dst = 0; + } else { + strcpy(dst, src + 1); + } + } + if (*tmp) { + strcat(args, " "); + strcat(args, tmp); + } + } + + debug("Launcher:\t%s\n", cmd); + debug("Launcher args:\t%s\n", args); + debug("Args length:\t%d/32768 chars\n", strlen(args)); return TRUE; } void closeHandles() { CloseHandle(pi.hThread); CloseHandle(pi.hProcess); + closeLogFile(); } -DWORD execute(BOOL wait) { +/* + * Append a path to the Path environment variable + */ +BOOL appendToPathVar(const char* path) { + char chBuf[MAX_VAR_SIZE] = {0}; + + const int pathSize = GetEnvironmentVariable("Path", chBuf, MAX_VAR_SIZE); + if (MAX_VAR_SIZE - pathSize - 1 < strlen(path)) { + return FALSE; + } + strcat(chBuf, ";"); + strcat(chBuf, path); + return SetEnvironmentVariable("Path", chBuf); +} + +DWORD execute(const BOOL wait) { STARTUPINFO si; memset(&pi, 0, sizeof(pi)); memset(&si, 0, sizeof(si)); si.cb = sizeof(si); DWORD dwExitCode = -1; - char cmdline[_MAX_PATH + BIG_STR] = "\""; + char cmdline[MAX_ARGS]; + strcpy(cmdline, "\""); strcat(cmdline, cmd); strcat(cmdline, "\" "); strcat(cmdline, args); if (CreateProcess(NULL, cmdline, NULL, NULL, - FALSE, 0, NULL, NULL, &si, &pi)) { + TRUE, priority, NULL, NULL, &si, &pi)) { if (wait) { WaitForSingleObject(pi.hProcess, INFINITE); GetExitCodeProcess(pi.hProcess, &dwExitCode); + debug("Exit code:\t%d\n", dwExitCode); closeHandles(); } else { dwExitCode = 0; diff --git a/installer/lib/launch4j/head_src/head.h b/installer/lib/launch4j/head_src/head.h index 412092ff9..2e3bdb1d0 100644 --- a/installer/lib/launch4j/head_src/head.h +++ b/installer/lib/launch4j/head_src/head.h @@ -1,24 +1,31 @@ /* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2004-2005 Grzegorz Kowal + Copyright (c) 2004, 2008 Grzegorz Kowal, + Ian Roberts (jdk preference patch) - Compiled with Mingw port of GCC, Bloodshed Dev-C++ IDE (http://www.bloodshed.net/devcpp.html) + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Except as contained in this notice, the name(s) of the above copyright holders + shall not be used in advertising or otherwise to promote the sale, use or other + dealings in this Software without prior written authorization. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. */ #ifndef _LAUNCH4J_HEAD__INCLUDED_ @@ -36,6 +43,7 @@ #include #include #include +#include #include #include #include @@ -45,25 +53,61 @@ #define FOUND_JRE 1 #define FOUND_SDK 2 +#define JRE_ONLY 0 +#define PREFER_JRE 1 +#define PREFER_JDK 2 +#define JDK_ONLY 3 + #define LAUNCH4J_TMP_DIR "\\launch4j-tmp\\" +#define MANIFEST ".manifest" + +#define KEY_WOW64_64KEY 0x0100 + +#define HKEY_STR "HKEY" +#define HKEY_CLASSES_ROOT_STR "HKEY_CLASSES_ROOT" +#define HKEY_CURRENT_USER_STR "HKEY_CURRENT_USER" +#define HKEY_LOCAL_MACHINE_STR "HKEY_LOCAL_MACHINE" +#define HKEY_USERS_STR "HKEY_USERS" +#define HKEY_CURRENT_CONFIG_STR "HKEY_CURRENT_CONFIG" #define STR 128 #define BIG_STR 1024 +#define MAX_VAR_SIZE 32767 +#define MAX_ARGS 32768 #define TRUE_STR "true" #define FALSE_STR "false" +#define debug(args...) if (hLog != NULL) fprintf(hLog, ## args); + +typedef void (WINAPI *LPFN_ISWOW64PROCESS) (HANDLE, PBOOL); + +FILE* openLogFile(const char* exePath, const int pathLen); +void closeLogFile(); void msgBox(const char* text); -void showJavaWebPage(); -BOOL loadString(HMODULE hLibrary, int resID, char* buffer); -BOOL loadBoolString(HMODULE hLibrary, int resID); -void regSearch(HKEY hKey, char* keyName, int searchType); -BOOL findJavaHome(char* path); +void signalError(); +BOOL loadString(const int resID, char* buffer); +BOOL loadBool(const int resID); +int loadInt(const int resID); +BOOL regQueryValue(const char* regPath, unsigned char* buffer, + unsigned long bufferLength); +void regSearch(const HKEY hKey, const char* keyName, const int searchType); +void regSearchWow(const char* keyName, const int searchType); +void regSearchJreSdk(const char* jreKeyName, const char* sdkKeyName, + const int jdkPreference); +BOOL findJavaHome(char* path, const int jdkPreference); int getExePath(char* exePath); -void catJavaw(char* jrePath); -BOOL isJrePathOk(char* path); -BOOL prepare(HMODULE hLibrary, char *lpCmdLine); +void appendPath(char* basepath, const char* path); +void appendJavaw(char* jrePath); +void appendAppClasspath(char* dst, const char* src, const char* classpath); +BOOL isJrePathOk(const char* path); +BOOL expandVars(char *dst, const char *src, const char *exePath, const int pathLen); +void appendHeapSizes(char *dst); +void appendHeapSize(char *dst, const int absID, const int percentID, + const DWORD freeMemory, const char *option); +int prepare(const char *lpCmdLine); void closeHandles(); -DWORD execute(BOOL wait); +BOOL appendToPathVar(const char* path); +DWORD execute(const BOOL wait); #endif // _LAUNCH4J_HEAD__INCLUDED_ diff --git a/installer/lib/launch4j/head_src/resource.h b/installer/lib/launch4j/head_src/resource.h index d5bec6381..3c0f73cfc 100644 --- a/installer/lib/launch4j/head_src/resource.h +++ b/installer/lib/launch4j/head_src/resource.h @@ -1,43 +1,71 @@ /* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2004-2005 Grzegorz Kowal + Copyright (c) 2004, 2008 Grzegorz Kowal + Ian Roberts (jdk preference patch) - Compiled with Mingw port of GCC, Bloodshed Dev-C++ IDE (http://www.bloodshed.net/devcpp.html) + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Except as contained in this notice, the name(s) of the above copyright holders + shall not be used in advertising or otherwise to promote the sale, use or other + dealings in this Software without prior written authorization. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. */ // ICON -#define APP_ICON 1 +#define APP_ICON 1 // BITMAP -#define SPLASH_BITMAP 1 +#define SPLASH_BITMAP 1 // RCDATA -#define JRE_PATH 1 -#define JAVA_MIN_VER 2 -#define JAVA_MAX_VER 3 -#define SHOW_SPLASH 4 -#define SPLASH_WAITS_FOR_WINDOW 5 -#define SPLASH_TIMEOUT 6 -#define SPLASH_TIMEOUT_ERR 7 -#define CHDIR 8 -#define SET_PROC_NAME 9 -#define ERR_TITLE 10 -#define GUI_HEADER_STAYS_ALIVE 11 -#define JVM_ARGS 12 -#define JAR_ARGS 13 +#define JRE_PATH 1 +#define JAVA_MIN_VER 2 +#define JAVA_MAX_VER 3 +#define SHOW_SPLASH 4 +#define SPLASH_WAITS_FOR_WINDOW 5 +#define SPLASH_TIMEOUT 6 +#define SPLASH_TIMEOUT_ERR 7 +#define CHDIR 8 +#define SET_PROC_NAME 9 +#define ERR_TITLE 10 +#define GUI_HEADER_STAYS_ALIVE 11 +#define JVM_OPTIONS 12 +#define CMD_LINE 13 +#define JAR 14 +#define MAIN_CLASS 15 +#define CLASSPATH 16 +#define WRAPPER 17 +#define JDK_PREFERENCE 18 +#define ENV_VARIABLES 19 +#define PRIORITY_CLASS 20 +#define DOWNLOAD_URL 21 +#define SUPPORT_URL 22 +#define MUTEX_NAME 23 +#define INSTANCE_WINDOW_TITLE 24 +#define INITIAL_HEAP_SIZE 25 +#define INITIAL_HEAP_PERCENT 26 +#define MAX_HEAP_SIZE 27 +#define MAX_HEAP_PERCENT 28 + +#define STARTUP_ERR 101 +#define BUNDLED_JRE_ERR 102 +#define JRE_VERSION_ERR 103 +#define LAUNCHER_ERR 104 +#define INSTANCE_ALREADY_EXISTS_MSG 105 diff --git a/installer/lib/launch4j/launch4j.jar b/installer/lib/launch4j/launch4j.jar index 9e59abfb87b7667c2beefc4c3e36528977cfb830..ec68ae48dd9cf4e420882da29220433555a70a6e 100644 GIT binary patch delta 163964 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

3MVskLj2#m?23QZu_?E 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

2dby)Ldo+x;VgWTyBUh3|)d&YZy8U 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

!G`-c7;3CrGRn%G3c*psOh8}7W2)l*+rZOfOMDb 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 diff --git a/installer/lib/launch4j/lib/JGoodies.Looks.LICENSE.txt b/installer/lib/launch4j/lib/JGoodies.Looks.LICENSE.txt index 6ea98a5b3..8bbefa2eb 100644 --- a/installer/lib/launch4j/lib/JGoodies.Looks.LICENSE.txt +++ b/installer/lib/launch4j/lib/JGoodies.Looks.LICENSE.txt @@ -1,7 +1,8 @@ - The BSD License for the JGoodies Looks - ====================================== -Copyright (c) 2003 JGoodies Karsten Lentzsch. All rights reserved. + The BSD License for the JGoodies Looks + ====================================== + +Copyright (c) 2001-2007 JGoodies Karsten Lentzsch. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/installer/lib/launch4j/lib/Nuvola.Icon.Theme.LICENSE.txt b/installer/lib/launch4j/lib/Nuvola.Icon.Theme.LICENSE.txt index b1e3f5a26..cbee875ba 100644 --- a/installer/lib/launch4j/lib/Nuvola.Icon.Theme.LICENSE.txt +++ b/installer/lib/launch4j/lib/Nuvola.Icon.Theme.LICENSE.txt @@ -1,504 +1,504 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Libraries - - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms of the -ordinary General Public License). - - To apply these terms, attach the following notices to the library. It is -safest to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least the -"copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -Also add information on how to contact you by electronic and paper mail. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the library, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James Random Hacker. - - , 1 April 1990 - Ty Coon, President of Vice - -That's all there is to it! - - + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff --git a/installer/lib/launch4j/lib/XStream.LICENSE.txt b/installer/lib/launch4j/lib/XStream.LICENSE.txt index 4848b3e4e..5ccad8694 100644 --- a/installer/lib/launch4j/lib/XStream.LICENSE.txt +++ b/installer/lib/launch4j/lib/XStream.LICENSE.txt @@ -1,27 +1,27 @@ -(BSD Style License) - -Copyright (c) 2003-2004, Joe Walnes -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 XStream 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 OWNER 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. +(BSD Style License) + +Copyright (c) 2003-2004, Joe Walnes +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 XStream 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 OWNER 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/installer/lib/launch4j/lib/forms.jar b/installer/lib/launch4j/lib/forms.jar new file mode 100644 index 0000000000000000000000000000000000000000..aed060a49bf8a96bad9038291562890dd81ac92a GIT binary patch literal 86828 zcma%i1CS=cwr1Pz{@b=~o71*!bK16Tds@@BZQHi3>E5|dvG?uUyIWCFRZ(%i$f_?h zP97@AfP%pQ{o}xBE@J(+hyS=h1Azg_im3?ENy&*be2oJEDg1{h6cGAfQGHC0ikZKn z(ZE1JXn*hjB`PZ5 z4IhDLa}v-0r&CFzS#VADo&QfF!u%=hdoQ(%o_3N*KR8(kmTIJ21&wgkklC=Z^fH2J zZ)SC`B9xrsm~SLu1{>s5lf~N53W*S=+5qujsI!tb4~xuGG;tv>P>j?1l2F=?dSY*_Z+a zpYX@T-7>{LXbF+uE|~Kuk`?a3|C0b9Ao%~r71&<_jO}e1{_hg-{~=*zZf|d5Y3lqh zL{a~{sF}T!?Y{!x{LcU*S4$fcQ>TA164w6=G%+=DHUAedy#E3?xTKq4+!v9Vdy|Imt9cJY7IaUwG>%GY(MjGJdOY|KpJ|f<#u!hLBK5hH^qOMv`wLTPw75Px-@ZC8ge*JL zhS6Nz9B-ozZdhtIurU?0;AUivN1LQ%%rZk4$>Ezepbi<) zL&ZjHQbpI*g(O3pX0Jo_$8N1(;qe8OW0gZ)XNd;v_sBRpX$Rcgli+$t>hQTEB+}rt z4JvVb83x!}wL*nZ{QSe={7CO8Q2fa2U>V(0M59HsMI#4wO%h5KQwJ$5JV9~e_ry`W z_UM>#N$=d;!@wR&o!;B_09bkX5NF86YwIM^bTWY~QL&cY%md}q)9JhA&bT_%N_=LKhtr}JG z>zXy^k}>T$&1*fWuHSCO-o#Wr&9phal)yWm_s`&0E%hWOQIbl3&-NL@qAVQDRlYgL zb2E6`MM{xrKVd_Q>5_K!rhYFXyyr^^|D0+6lfq*`Q)(Rk9!Sd)k*XEUsakZ#f)$ zKCDd}8?P83reVgk)zKlD%6#&jv&JCmI ztwI3a@_@-XAtyK$GCA3&J;4YL{)a2Zlv zOVDqD%y`;ob_!uY0wZHY0<##f&QbvB$%F)R8Ph5p;JVidmv=2_Jps0e9zJW%(M#me zXLy`Hroe*Nid8izemD;7W8;JUH~{2lE##dj?qPtdGa_q&q0QTGU@8(YAXkK{WN_Jx zvqQx?Y@C9_us;k4!2K~1aKoSVhY$S&X2G{M`HxG-AIAbd{5Oz$Hn#(bki(z7Y@6=z zRtpn9!Lesnam1x_g|o`Ago6r9O9#R2hpVG}Xz)730-{BZI2YI2cp2cp>|Hx^kxdW-p&mTtc~WG^AP~aI#ep z0Ev}gn^0jnILIxYt@$o}jT-$&oe8v*|$@0h(N``9K=70#X>lZHrKP zmZ>G;G_teOxxm zxJx`Uw~K;W^C*vvXnb@**p^(2GU|+RQSe|3#z9yLporn(gN4yC;UTD+#kY;D8nohg z5lbkZIi@oss;6uwYfkje6D59=KYrmx!HCartIWqqnRTRp{eM9K)S1FO!np{p&CS6X%cfK$_Cs^oH` z1!%&Crmm(`*?N{5}oFHr45mL)* zTKa(@e%6w14!O08K>d8BbyykLh^&CV`6C13zA@7f<_#v&4S0FAC961tfRHA+Jkew` zB+(y4XCQra_?2^|JNkT$VzU$R(mJ?{;M|JP{j0K8C_^BeKu3+|rpcvy3sLr!d$$O1h-2du?K+P$+!JscUyfHxMiECllg)u<7QF;^`5BpCAs z!>AF4QBN=$BLwqxONH1N_LA_o!LS}(LLFi+-R09Z>7)jZDQ$XCh}-B2lkxZ8_awZ= zEigsiB21Y@Ae#trjN==@m{DMuuHlLdgRl8W2Ts7^s78|jBX7y@It~B1P)s2r2;VZN z=&4SOnqs#m@Q3c=qgHq`fIDubO!Cc@Lvq>;UOF9QP6mm`>ZrijHczVdz0P z8AJ7PhxL)|EL?e*d|l}vaGu%nORwvsUccFB5P=oOC&7O@4F7Js)<})mjzIze1)=}} zG5u@XRoKF9v) zp_H6pxOqZEWR`IYG(wpbTG{nd?e=1?tyU0|&mCqs-A`6S#=-x3!Z4kpz|QiF3L8M+>~X%3<>FcU0co{xiD` zoex~8o~hLJhFG%4l2Ie+m86Qq7~0ceCHBNr^`~sCi1V|}MD`R#6beZicE|4gC1qKfQU)IC zfV%)p>m0mD*v448arsfw;u2!z(gG{0M2qlqt>t7kXEnJKw1D@Zi(W3^_tgf~S>=0M*Molypj=B*hX%S|J0aBXE^AxMzvY}-lwkcp>+^C_%S>qaW z(2y#GD3@Kb=-qFDc4e7#K_+w11Kfq>3h{2{0B0I#`&$qe`^Ds=`aksZTt&2_ZH;Hx z1PLrb?LM2t6iFnZnLntdKGOGFdEDzZ?LP)%qbtZ#0PPKm@9K2Vv1$^gWbNyXg(Z_R zhx&8N;ROxJ*7dQmp-TWVs@k6e)uK-&(KS?=mTNB*Ff#oc(((NYy*O#`%wk+xjk?E; zBEh(Od^B7*7U;_JE`3rkXkk%@z zGbDK!NEk~_qJx>MoW@)1CyPmNVLb`5P}TY!y<@_X9t&I8d4EJPSyS)PZ_@2S5m!CA z;_Kb*;h=O!*h^uGs`Phpig)jb7qUp^1+!o#-r9Da5Bwzc#@I=^_4yR+r!_*^r*+6R z7Z{B5eyt0hc#R0o+h>Co7yv*ENDyr4_U$6GS?kvz_Qc=He2#~$kbPqJB-|1PeWs@D z^r}Kzx03J4>U9s1-}6?nsHIq-Sr-Pk+|e)e5ILMQAH`c~2P!ErUC&^SgH&!6pKFsT zECbq(2Bf~iJ8i@-Cpamrog!ht%Vykf(I;N37i}SURq0TppdF1Wxjpg&-KJF*5MHR9 zQ=Hl2l_o8w8LK3`TAczm%ZGl+TP3;ST@#i>rnJt((~m+cbGX}Lw9)pYW}KZx+_m)u ztZt6>9&YZ6UQQ}R_v?mo+eh$dZNmI=K|eq2HUKDAG9qhd33T0z^V`MJM5wv?i-lD$ zRrs@F;b7+$l}>MI?#@=bxkyc$pwU_0KtHPe=C2{o?jKvM z$E&2_ez}2&v#%6P^rT^HFsr0EZHwL)AIHHpJ&HwscVyw_XKq0*UPGY$851~;_nf-G zuk)p8g#(`Or#XB>ks8KhBs8?l=M@yoG4n-GOV(0GjkZ`(Ryo>2YuXGTeSNTTh`nPr zBaRm7>fJG-uUQwFxYRK1Fu5L-d7y$?S6n66R6Ct}!FD~C{4XeV^mHM~`0B-YivMvI!DfJsn)mmA9i z<7MtgeTbs~RX+PJfT@t7NGJV$qECfj1o0EV7~?y2qT15{_oJFx=^FY6ap^($=q ztvYPy0E9!YhZ{^8^mbg_zHw{@aH1iM>>yQlY-j_KJ$_692Rl$t824w6``3V}E+hff zM%Awz9tY%iW*ym6*~Omgz(uXBZ(7H;Vb_fHwj%G$;tWSy3;PUvx7jZ-?r-|L%H^j@ z^Z^%C8~4Gkun*jxa}f{L>H@B~)ENKof}0PrR}c)4d5JbxxA z(DaGmk}!|V(Z0`;zsuYgY_ToJQvJ|=V?4+-5T;#1v)gJ2?ecJ`3%Q0zl!WVLfS98! zBcSwTey#Nuo26|cFd|`U&JQ@qTZ!MZ!7x#NsI2O((@f)6_C$E+Nq2x~>sxT-$ z`O<#urTcKw!t8fqo8=ciDe&W%fat;5>GHngWL<& z#^)LmR#*5YbvmV?%qQjq&k(aXtzpx1Qg7m0o=^N6gO~6BE!O&vP$QPGmbNoE5Kt~0 z5D?4%k6obbVrXprPnJQBnzlNsI@%WkG@KNq0$O-DMUz6^>l}07~mGMfwUr|rd6~DP~I3vV**d^ozQLhl<|j3S-rH^x}?H@j&0 z10B-V^j+(uCeD)q>-75r*B=i@4?3NFLs=+h-cY-A0?=apv=Y+Nl2Qs--U)T5KfJve zQOr-XW67s}xbxd)Qprw*ocy3kg1s0Au-J!@l;+N0-c@B@l2xv*wgDu)Ph35tZ z)(H;O%puA!v5OwYO+%8ST{!KuGZV;T+QTgmZH8(o0DSU`R`0AL4f4$Hfx1a>+u<37 zOQGdvxG#{t8Jm`gOet*B5XDRXEHTEut4OMTsRT5wWx=X$@q~IYKjzpECIA- z;b}A@nWiYT!J9*!*rYb|k{meLlZB3?$OI#X1_Saau6 zpU${P5v9Rv`3ac08Arqr0jEj2h;yXWq0G+)zoUIDPSh;v=|?$ZjhWwPsYC`kgQJ*T zOiVBtO-&r7LWf?Q2p@RqS!{G2ofRfxs8dbpB{kyf!f8-y#@%slMq7tvYn<=sxv`#Y z-91b?!*H@^B>*$^oR2|OFssb`LQ=m z2-bca?D|tstIk-#c;&e``dBWxsgxrH>1KhFsA6<+ky&P;=Q%GCF?IA4#*ILPnU#0l z<&M_+DdWwRnKV=+6oQAwN=wkjg@n-)i~Q6C8OILTAl`Bo(QOP#!-fgQRFJ@Ptoc)G zdfZSU(vO3?N8eoYds5+EiEox&FZ>a6Eh0kT-cEb^zJhg$WTXffIYNk3-s^AJS z!8mMovSh;K7+39p?<(i*9)?XKMnc?lH)yLQ_c7mMu;9b_$`|kLqMV2Qy@3Rix$0QDs27zE6c8{~iz_YGmUQ z`cao{b8VNgQYrgy9ub!CH?aV&Ze=g-(gA0GY++f_3o6POFWCE0=s1k zc9^3j{DfkaN)(c+*nxhHUDry#n~9f1j7xwgnhu23HG=>Mu;oq)>%PiGwJiwyIlGK! z#iQdNN4~v?C%FawYOhj9@cm}JBu`@{xh+a(R{-2H7dTU!bo_DKcH5DLR7oip<|xW& z!N6oO;><~n$s1=Z27y{U(3Cm4q%0E;i&m`w{B&ZmU3=b`APns-6!wXteG6zlxTqIl zPtjrB1Mj5N!DVP`C4~akHKn%@?V$s=foEf}Di3#Pls+fTk$ zAi3>^`rl5vN)U3C3zE~)k-ZDCTff4FKR@<9OR8YJOQ=ts!L8gt-&6cyz#1=MT>1g! zL-41-zFnT}? zMS1boObUgbl7~6>=RW>9%DH5XLpKHM4?qE4v^P7?c5IVanS)o%@+37P54V{T9wtdcLoP@>ms(5UA&$f zYFCE#*76%x9~WLb-VawM%sA+0aRm0=8E@U+-{0GvFWvSJhkgW}U_j{o7rw1jKq#BI z{u~2zCj2P=M-JA2O$dVO{*Ab~Q#Wip@&`xeynK%qh}$7N)_2kjp0Q1_V`US5*<(BA zJfa6p=Df;K5(mVXYcgkojE^x~ctPM{i$|ag$T42gW5d6xwFhvm52%=K4QTzsi!`Yd zb&E&JjFC}Zx#LQcZt>#_lU%|F(hU3fH}VYogg17NXFO~^vEwr!UeKAuw;F=(ldu~Z zg`6M7lXAw5ev8pkj4eE=_z~CG(q#wGEI4>S%*E^Hit8A1X2d?`y)5QopoNRXhcU-7 ziw2Agb>~_4BNi1TxHAZ(Y_V}CGr6FP>7lJy&iHaNTzt`XYGklLrC4Ganq_viGbG8J zD#>^ru=@X)#GuB-AQCVij%l4&`5?&!zH3CcLA4pf-`gKaO2MIko zslG2Dmotm7Sj-M7! z$1zLL(mq;p4qa5Q*XQJamj3BAkB-fx!u`?0Z@aiEQWG0ps%$ns?q8AaW1SXhoe0Ll zi@~x4EaNJ$jQzom{~(P#Q72|1mu4Wlb|Gy{H#{?8mj?0h%6rUO>~K1Rv(uuZ*E3&|h}D&wKBG=SOJszXOT;Q! zSp=|gqX%!spnYgWBbufEvf(#&J7igN8TQ;rIiDo0S`N?2AI_}p8#OW>#*cuE9b512 zTBy}yA5_z@?Gf6A>QhTe;EvLpgnw*csOJ|_%;mp(ZSV*2$1~eMuISUe1!eXzX^vmJ z3?s0*CDHiR2g58t-VixyrBT$EF1Qy;Qk5an`WRxhqHjm? zerK!_Q}zwA^E}MY>XxDZm7|kfXu}bY(eWn3g#QQwwk4f!q3%EfG99196mCx{1*KpJ z)Ot4D&}p7;uEzYQhJV3zP0WRxOY_V1=|*F9&re-QyXmegpQ{|7t1g^j0mLC@^4tb) zJgH^nFT>KRg?ZYj!VTQXrjegV4ek}jlvpGQ<9lh^{t_``m{TV6Oa#CHlGqg2nwKvf zeuc`HHex}qG~Iny74>HsPpxK4lVng_NSrjlBKQBFztzAiDyTF zt>Y9H#HK>|OE_z-LtvRyRh+4$lZu?jS}4B|21p=)iB&ph;xFBL8n+*AL!}WbjFPMR zJhL@J9Zxpkf(m|^#SbM+@dL*Bn*+zcMR4+45_D}O7}+rz!5#=B zyf{pNPPOv{M&b&)M#9$;>`?ZROo~}*F6@~00!VYzYw_5QjDuygCUM@~EJDgDm);eq zS8QN?(5(El0sG_I4`jU(RZq@&b_l?G*Deo?Z>I`=2(>O33^4POSU34C(T?SA7zQH} zLm#Wni|j4+WU3ZskKG>h7gwMk!bur2R|O-P&+8yS5LzJY_}PI9;x-xun3Pp2SSi%^ zIeWIn;ju6;q50PFwQYG|#+B@|QFU^U+9nQAaH6w1et>U!21^%*@29eC>9qF-Tnaq*$R^uDvomQ8p%W4TLeb3Q~GZ(moe z=O-G21YJc6$3(=#7p~Y6u6aT;>d#M$w`z&cQXHit3x+e4AU5JHaI9j(6v#YU8L$El zw5#Rmqu4qEdVpmVxD0G@swIV-c;L>gj5A!wf5Z+#iY+@g{8J3Fh@Nkk<(t^v0Q7Wi z(u1gS<~v(lgw!w2qU;GImxAx&z1J4#PES!f2X&s75uD5u@aOUEhA4fvM_oFw zu@RYCn6RuknPKb3c2|}Y_Ohxl!b1i_s9FgAHZKSlPwC9dFTkicoGLH4fw#;LR4jn` z2C(V$vFSv-_;xNQK^O^mw8`675d!#IA~{ti$bY0jW<H z@0Wu-%*~4oIV&XJTWwo|a+e(1OiHU~jB!a+!b3d+=?twxPta?8j23EY=!ww~xS&;& z&$7mflXO@hMiy@MBhs+bt4-i?T)W1GvSZQ5RKbvi{wcvCr|daMhf9Nks04}Fn@535 z_OlDEGiELZAE2}!hZGCB8npkRirt7+-Yw_o%)3`^egeIH3R5$iXCl_q)vdBp+Kt95sDWL$Qi=5aKrW)%&hA&W zoG*Oklj|nUm-A%xHJ*2+m-!iW_R0N^U%cV~{J=`CW#UlTvaAw4bv)y$$#wJ5hp%gVERyv zIQou;l7{6@oA+{t4j6fYsLh2#=CA#8#tmr{_CMCfv`Pge zxf8?px1tST?FKWc1d~DB(@T~DvlwSzMZ31RBU`6Kr4h3WZTjPF-Mrh(rYRQmdATN< zcvaH~M}?o*#T$^m8Mvc+;-U@+-`zarNxdQYhQjIaXV#)Oz$h^UbDW44X)yY1Od%(g z-GnQR{A&gYD+Uegj3P<%D0~+c3O4$5K?wTI(Lyf7(A>BS6&76?XzN&Mn?Rf)y6AfA z3kxBv2&7SxEWlJt@};DVS?QmnhvD}zjjPYO7L`mYSdLy@ zQZ22O%&xL7O08wfF-EsFZN|~iQ8$F;=db^VjI+q3bn;XJPvB$g<_jF}DZ66=ML4|g z{^+vpCHI4OhVNywq37$*z64N%JLa&LBBi@P1%JMb)jvtqYj?q_#xWF<#x4s(SkDN#ltcPArj)S}QxV1PHFPX#%)Z(s_kt zYSbe^IgX(mtrE)1Ks6KO0j|notjf&lht)i|HhC9`J{Ou}BUz5|{%Km>Y?|K|rHtsE z(94&e$tZKk%s!~?qTst{ebCU9 z)2r>~u_t$f?>5Fb z*lu>H>v`Shh*njl*(6$W+zMSrE&YBF6P&ubL5(6N#4TDl3@z0vFB*6nVrvDLkM*uT zFU8qpwN$^A!N{+E2TrMI{>_u~*o!#V0?@HQ?c#8IjvySbfsJQR}6$YoNk4GUm-wC5M{^Qs`LLAy6Pj5CV9tYmGE zLTW$biC+(`FI}8V$*m~*;K@Ai=Uk)o3ErlmDmny`iHTfxyiC^`4pj0JDiQgZ^0iIG5!G92^Z_0 z_fV7I4Vmag(nS9D@z*T+qS+w^%3C7F8p>PY;^a1t`+~Yd#If+8_@DjW$43t3Kl6^B z$G2`BkAqnWeixj4X&aj-f-ILec(A@@e|!+wNxtU_c9CA(2-fbv|l!r%{u%e(97UFAK(d=;knF-pH0N1{Ms7PVHklK*z+jc2}= zDe$XF{<`k@XO*Sra}J?|Cm?G-Qb-|tg5z`XuHQQWlxdNBaS z1yrw?sT$OG3de|^ko1N9zqt`7crkf(r1xbQHMOLAm1-f~Kq{|Z>jUjpVJgb+B*K=? zX?4|VLuqJrkM?Lj_bO?9V#0p^oV|?>G{1`h>(1zH0c)3j9o1A4O@r@JYqd~Uw@B81^I@(v_(AwpZiqGAD#(u7yu4Vm?pnqu!XQQ!Yl;C@nB=C3 zv8v2U>r>NRU#vc3Eki!_h<24|MsJ}Sw9_?K-e9vhDv0@|w8c2#+2o+s;PO!X(O;$0 z0TRSRLgru;_867cII*50Y&%s;9ilv6)0NbeU za#Ce&XHSk}S6fudLvckNBC>mHb|B-_zU!NEdPgSzU;rz|ES|3XE>>;FtsH8$p5h8> zizRNkGJaIpJlM!wBjyxpaGXP35Ca}AEemqx^hh%eKA_2Odq&f2n#>8?OpBh57+{0k zBelg!VOx2u!ZzS!wV^4W%I*So-vLxi$DwQf(O)1j0CmGk&DXA4$fA^MQ@SD!jPA~d z+H8U`sf)6n+2ELaBS_j|!peSkbqhP`84sdnxvsv}c)#>*+wd)b@8p}uflDtHIUvul zrka_zqTW;?&ZcN^`rNjI8vy&0^>Lb(Qw6XGE4k`C9}%j;G9P`L+&>0$Pj?)VJloRM*roT2ihw|Ib^p#f^WK^basrkZ^g zjUT(FfEC74BkYx5fNM^H)nOWt7rV>;D$8@gRCc-Ac{X4{UHZMkcopqt1^vp?vqaB% zzEbt0UU7M0Ix`0Ws1zQBt+IF}bRI366-%CH!c!~vtI;flW9q%kOVkjqzpC_t4MzOE zJ5h>&c`f0wvqol1S=4cye(7+({@Nl`6Gv*-i@H0Gpq$c)Qtt? z*}YC;%NiIDpm(&*%t9B`e3pyVtf>81?l$3bqQz;s(&n}Rh^qKGUJiJQn)dj}R@8Je z&)e5c9?Z0QCt?^c=27exmEd+r!W^5tw#$lZ+BCaS!mQso9IjGl1dH9Naj_3#5f{js ze?)xmLfZ?HRU#OZU=%zc?3yAJ*Y}^+`9dEoY>gO|ZS)ajLEe-vBJNp^4-A5n^3t_6 zNdPTQ9zil>I<5`liei5UMQQt-l@$##m?4xCD8;0`s(3SiMvN{&Mw84kB*;H8TP^U0 zx?~IN>V~Hcg5D7XLmYpzv%|+fDVm4O=UWlHj6=HlICbRu4i#0?#Y1e%`iO1u4Q$L1 zgRG7_!I1ynw+wuUhblm88hxMvu6Htfi|-^WMlW6s?p=mm-=)c7)%f+$QCV>CH{ zS;kmflQ@A&RT5w_`ztQytSN7L6u|CNaCLd(jd(jQCE9_PjA0Nlu2c)#R8zsjk!I8OdYe4sB z=n$w0>OSZGKC(-M<0Wd`9{wF?Y&i7TetOh-17@-wG!-8apXpf=bDSo(n6u*9Lm96b z$0_WZAbYZ=6Kk_vwZQP^yRned3~C!j_~yhaLk$sKjj=)}@mNepFMnGVL1C3V{YBD* z=ixIdpBu6G%>HwPtGa>q;Ea8e#*i(l_04kxnH>?8ZxsGrhc4-|B|}|gHL7(Kq~Erq z(bQhFKImp^v5C$zTWwFk7vb$rmT=O2fU>W}DgJRE-^tM#Pyk+QfaoQkDCz;TTp0gg zAA7X8^B+a5im%hq4E)%rR|=*59ZsYI92?U4@4(Hz6G<(ob^FV#kl z7a82I@cXBg))RHkN&A4!$Y^3@ED`fVQDw!er>Jw~*Q&e^yPUX_`(QN6i3H6-;<8M3 z&TG_|1LsAbwh?c=nzw$x|CW*_;u^42{hN|L_}gmnf7!qPy^Z7_%@v~mXejx&ZTvs_ zD^heFP*u@JzFXEzvT6l!poC?#`KgPc+4D63wIFnKzo>@h?-lvS+1JQn&+N8H(aQ5! zreAkoNWvMW%k8-di(?UA?@p7ryU)uRWBE^`xw|V)Hn&Pk(5jF3{+6fZesr84&L>-9eMlRVgtFwv9gd;Mty%Km^>2&JwYbD7|4E zp{%(voi0wqWW{3~B07voWs0g>{IkAUza^R%d<`XMhU<4;gN)c&PU5*60{LzxI6JLP zjK2Uk>mbbm?B>vuo*rZ5hyCvylob6Ts1&z#V>JLtb#N$;|5F(C|Vm7NvPO%3S zQ#oV`x(NsFd(Q#`1rTj?m7-%TkfHp;7)6*q^~MpZd}tQs$vLhgIF>9D=cibgZR@gG z;Eu!M82Y3SleKEw+3__?jX2CGHS{tz)_lbQZggmyWe0|+k6Kj`)MX2ei9&cpi`8i( zoG9L5uuP1^U>KR87)SWHfjI>OMH9uqqW$Pl=2N{Q|b-}*_n#*nQ5*a&S`18tX2+~v>B!xZZ67TaXnKd$t! z8{TnQthFA0ol_!LN=$io??^5U zbo9k+bq6!_O}+HY*5)-?qUvV<=ww(ebv?bVg;lcq(i>Hj)2%Y*xuP%PVCR-*(ZgZ3 zM6Iv~Su18n@v4~-2gsc8jMA|GhK04&s z?;inG^5<7O(^Y+laA{oZQu)ySF3)zUrK*TT@DRr-N66OXLPZrXt>=1rmjbro;bZ6Dbnc>T0J zIryDk4pncNA>I0J?NEE`*H{~0b@ZL2pdEF`INEE~J5bFXih)1WZfLs;?!5sy*yCWT zSia>(X}mutZu27vA_n7BFOf$P$8KvW*DLpt;RX7NsPU6<_-YIZo_TJABPrM>`+xxg zOYyzF07z9_lvx4gyX43LgioEJ1#I;FaLV?XfFcB3Wk#a_fy1~Zs@fFwDis5Js25Ba zake)RacACDTT$-LE#Pa;tbTrbgA$JYw5BG@xatQ9fC}qdztGEjw?pfQz35igo+RV> zHBeZAYx6Q-#4iQai1OqNoRW5z8wM$)39a0HEcmd@*6Ng?aa~7q!FIe2>yyjmh$c0 zumw}v#&?k5cop%vzQ{C5gS_{-_zcL63M5)3K)@n$w9SpvQG-9iAVC_fA0erjS;3E* z4Hs?x#kyNEbf{MyoUd`Yx;jIt{@K~kW=Hrtnu~7CIq~uCC@uHq{2oftGjG&gn9nzF zHfLo>W0d3NHTumsQ5bw%kg#NYnG7YwN1S%UGN$d}@OxL+8gYb#-#9}bE)FX@bIC|V z0yLHLHagbaQMm7LFWq663y;Dv68}`gymkH;58b)+c>AZKIwh{Nhi-<*62hnO$OC6} z5n$y)gKFSGqtG~Jvfbp?ur0PpLrxr9E0bHDwPRg7jlFT@)Lm%0D?H8R6NQ22HZqpQ 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�Nf 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 z z)l1>e1onChT!VcZc=c*O%GK38lft9oixeR!#*&(oZaQ)G9N#xLBwYGZGuPCaO?!wI zx%mC8zP{BGx{zp-CZ_BaxWG(f#GKGc-)Ei3+NWLl)Yb~?brGi7N$|=O&n?l(=;1nt zDJd%}(}eGfzZI%PJlF)pg1JR1Dj_v*PsY_1#lUZI5JZ-g(ihYK8^1*SNjZ>&W{`9H zMw?~b$F{aXFv7~bsm5SvGr5Is5KN7{-4vQi>fJJrtPAyBy2qQ(%=-nG)dE#&07?-6 zG0V4V0cR`Oj}-9Jsgq^va^F4>)?~*64O6=xb@EmyrbGJ11$%{Ghk0e0|IvyAtd=+@ z52a~vPZmT6`xTH=@Z+7wNB@WtBl800I@>787LN*>%nKDZ>i5I(^<{g?014n)@6s}6pNyT(WmfdI3&SMUxxLP?&sXuTJ z?D`U(!KU>jp|05f8~>j$hfRJxBr(h|);qyJVwtCQyW&W^rs`#nh86qN3`u0B5n%;E zM$8!AZAFsqNOa}A;GEG4gn#~}6>W96*&R{tdE!Pl_iL;Y=dbtHUO}ALo@a%LMRCW(C3P6C?0WZHmv+kK9_@n!BD_ zdHF`_LskQ7?+c@E_$;w$viiygrUl^%j7oK>&S*EdNhZ6rjf~LKxMv+}ul#e- zl#OG`U`_;eHCRQSoxC*CZdTpp?GXJmf7=-;K&zLZH{Vnq-+TbI)YW z!`tKu!B#5QOg-RoGHKr(Us)=dEU=qk|APh+G;Vi_;Xf;cwMdpFK)g7ZHz{OXejGkG zihi=T`(Ie1AO`h|tl#@G`@8?o<@P`K$LYVu_@cdcbS_Vh4v0 z=Fme}y#E)?@8wFr3F;SUQ1{DTXZk-r08YgJ8_4f}Jr62cdPr*UKe@z*)+s6sD9AQ< zKsJeCz;sVQVJbnG5c+|s5#4RXP}J8TZfs$XhP5p|SD9Y`@AF`Fx*xN8xgQAc2=4^z zGaPHc;h)O5?~blBSxipfOh4&sd_QkjZU9@a3d5{X73Rb00Yy%R9(vRuAP1B)2LS<* z5ZVJ^khD~3@cSqrc$BZ=VR&r&NZK|*F%tF29Foze0r`fI3j^Mw#ag7J)T1o0k%OjT z933|F#1D<{T{+FpW}IBO?j=lHle4GjQ2l9Yj5u3{`W&Fws&03@3k-q2A;*gkC1;U` z?tL`z2QnTD45E|IMSIyRWHfI{T8q_@9cB?eWlriK0J|f@! z#lq{KKo)2>1jqO0nTSHJQ+Wituz3r2z#IP5ApPRPSG4Am|13-#%kZ80^mht1jZ4)N zIluRA%OX`)jny4#tQt%q(=l0zA^OnLbMx5qa7rRq?k#Dk1)9o7s;CL;D)}IuZn9=; z9(OE*WvQnr&i~c>^?^*=SK=aY(hQ(b0q6F9`gv%p+N66A4k7S86`G~ zGMpZz837E=u~42DgEZ^0iW%o?QGZ~p>-7gX^7t-5m`3#xmn8KRpgij`lVp`2*sf7w z3YC}>t6;i7=wrGX#j1y}G#QkJ=oot7*uht`j=I3$hW&~h`Vh>?iDbx-wWNtv2fH>? z$^8s0SvL7Ij06T{s2#m4_L#hD_Mox~YJ7XVnKuVgvGpuoF?Y;gQFkobqHi#st1B`)1p77>!oH6n#|zt5Vc9+jN&{dTn__P?B== zSKknO4a*Kiorusx!@iw@`}6w+4Q`n&pR2E`hg+ zeWZr5?FeARCAg)u2?D$Kh+5BJWstLGh!0}>{6bPBD2X=#dt-+bNy}B6qgAR!*I`ty zMk-tve&;6ymWA?tGx+0 zWY+;VouSjjmTvh?BiH%)&G}@wJX2h`1>yN(7AiT4t8IZif|87%{wtn{(_Jjv8SW7@ z2;2e>2EI2ty%}$GEI}IxrD8Cb`b_3Vq#bM2@2f0P3|a-5gup)L1HRb&f~L3lunNcE zDm1wuU4es)5kN7!WmB$zqq9PZ1NqZ9b|a7Wo?vRhm97lH<) z?Zv4-%>U6$Hzdrpu^Tx3GnR#M5Vl7w6@&v5VnvcGv&6-B&D-wZXM#m+=65xUvu&2* zBt-P)ZhT=_b});D1g*W@vd#7NtDp# zWeG?+B$d2!gs@v!2LW4a3jkbCoc!;_l}$h1AN`k-8i)V@@XPD?A0Wd2_u}!ts;TOl zAC?-*cMXjdvB!RetPUdCY>|r+UAPI^^t`D>_gJ|ihimofQ=3V=n2}c$vr!YfjHILl z1sAfWB!T?1d%XH)0M1)g_>Ws{@Q=H6_|M<;oCjz+^H=S-SCMOP-9ae=;JaXW4ZnKSlUtGyI;O6v zTa=JmM(=2lUfcn;TN&1GRJVUl7aq1gnR_T9H}u}AdtT5xX70&*EFpOGpK-q*oO=4I zBcYw3AE5aRUl|7F&{5G*F=!dIP1_3gN&&lY1-WV*f6M?sv)<4EKNH^6Fnz1{*f4#m z004Q8*;QM}vZs!!vid@B*_aMEQxfG?OKAXi)Sb=w^Ehlf(#IZ)E=sJa(9-Q2)3u4S zxsOoq<8fEUj}mhR1^hF%UvJGz_qQTm$a~c8bca8XZ`8c`?|guK%NN=g<#R$5S(6&_ zlcI|~imk~_geb5i*W@Qg5*qp^H2p5!tNhyZ@EsGQ??IhpsDOk&U|?ZIJ_>|{=5*)J zqMu!0M&;rj#nrsoGvH6%t+yhuAY-yi%Vsp!x{^`aN)rSL>`I9SCt=1H{KiV+iGY@- zX^5QNd2AzQZd2N>)JLJx9jLqrIdV$k-`lK67l_8IrhQmWC*{_h|FqP$=)TMLDVx#S zw{h@hXUQZ4Ghs*^HnuQ%*jJfct(X)Zr8P|~iZklebz~vig`=sHQo?6AHa=UdjFT+@ z8AhpQNur5@tY;Wqyy{O=`-KA==KK{9VtPhGwXi&}?ayxp&+1+aP8IyQ_?%YlYMQ?@ zj*&CoI4{X>@|vG;eYh`IN=v73wX_+{I-h{?frq`dTM184FCiN*KvC!n$UNRE{>%TQk zb3q5tKSV*sXL4kdsCX5Zt}1~e*%n-7@wApzO>nk8Be2K-DKvWEUK(R1epbg&O%!P1 zk7FeTh0{BTr~Vrw+-Y|?e^nfMa>xE%b|B=gI+*K>Oka5*5yAwG*SEkq!^k~IA2Q1P zsWGZ|tA+zhcMT7F!9H*cFc=7}1HA>!1Kka+5W*W$2o1+DgdW4dJq2%eYQ{c8-$y@o z3qA-h1QZJ5T77|BhHgxLnJyUO_RfYwMlTJZrGYdd*jab9aI@Pe z*>2XSU3Ud^q?9J{`u%wcRg^B7G;+BQ7$vxW)ttFz??$=1OS9c7y16!d`pnfu@w$36 zu(ti}r#6%*xmMR>8{)DnUZ>U#ljOKrnb6QtjWpY8RHj0R#4lpiAJT5KLSl=eb+IKz zyfE=Q=c?4NOshVfDM&MuLxPwu?^R$}C!!POh5T9tTV=EKwQN5Wc@!B>>9cOXZQplz z6a|hPSNSt+pI{hbIEgGl44IFzJzfggA#H_+e$L~pPI94#LS0zDtD=#|BiW9V9Q_r@{wQ@ zOizWu;i&nrct;k8D-_`9<(6zH@MKBtWW)__rY<-Qj0nxcG7@7dxoXOU;t1WOCy9>` z92dImK-DiuR_X%R(HW^(ANS_NKX$Z{E`MbAA>RB!vj!|EJ`ORB*^(x|je;*fCXN49 z{Zi<(pL3~aP%O%W09mUKr=1U-P(0ZR^SPS{o}PLMDZS z?Sjj6NZ+R_3R+VlmuumtlfvgOYJ`7vo#b{W@_sP=BGy@AJk4*u5asHl3TPX9Xl{aN zGKXIV-bK{CVor9ed3 zogrRdYR^SBSz|$W2yJsmH!O*5?xohNBrKuD*AbsZTSL0{T0^_<+=2oVZopS0w^3^n zyRwOIvPN}S5;8s$u9u0gz{NYrE~8mPyZ2J+*tRDUhHR)Mx)Mpk-E;&x74Q(CPSeCn zFE5`ty^K$EYa3U7IG-v`X4C1(alH^lr?H<&j|pf|i4OFk_7Kb;wHN1<=J@{&sd^G# z7o6lL=Y(uMQg6z!6=&uI8YM9b1sN&7Cn`UemK}B~Uz?RL=H@g0P*3|tOngKtuj`c< z`sPS}SRwzqx%_GszC0t(lGwe$k##wWB zWH?`2e0{wFqj)&~wzjAV#?RBzv%GHFU;eMs-a4$yr3)7(rMtVkyFt38K|;E_Tco5z zy1ToikxoHcIz*6=Miitxk9%)lKRD=ipKq?~;r9=7-!p60tf@6?d`6qk(!IXSc63~V zc2anwc1f2@GKb7Ixo3oPHMz%yH#WI<_ATm2=~#;qlVPRu!(C#fvimsm?M4NS(d7)8 zo7||1zY6t+fGke0#pn_>M?udCwlF_hY4CM}NCuOE-!Ivl4ET_e&^Kbq`Kqb2a}wTW zDoD4Md|4~*W$mQcI8V?)dM!-?hm|-dhPa-(Optnms;C)sWJ!yqJTrS=@GQ3fl*A(g zcgnnvuSJ@ha*{PIM9JjM`d?7k$g`>mx+VyhWycZ?MOdT9X?yexmdMaFTO{`>$DV6B zTILz2#9CLxBAi%BvM}`Fo0zM)G&8GdDHGA)iYo9Y%*VRs=fAX~D2jaFkVDtP!7En; zQ@lYY%M$n@ER$r$oI_Mn=`DMG@e3Fv0%}YPkwVCNG*#MO4w`QbyrY z!)r+kFEN|2#tEGaKP?QFmap=O3?^Z@Bp(uX{Eb&soYegc@?WQEiZ*Uy46A;aEY5pN zE|8@|5}Da3fF3r=-cuLZ$Rb8xV9cZK{@|^_;O8d;FNt|pxS^^PRI!$U)l~0T zsNzoWM?=oBz2LEKX2J8SiJp9Z-=9c2wV(b;blTcRXn~jMc$_^=LUT-sbU>xY&4X>2 ziD8C%Vjc4ZJPI)w2-}Bt$ie4T}B3tww^NJ|K8>OQs zPmb6zCgb$EpM!Wh;F=YGGQ9!j#1yR z%CJ7OuEtC|?$Ryk(Y?m9c4BZ{hVrUF^deyLn#-;eoJiufGZL+zlPB6k;CqN+?R&v> zUEK|;Wm!{*G_jjs4u~U zgt?#Vw8->SabUb8x^;B}S>!iUp*`mV7+b~>5hI23pS4av-@JrfS?l6!+uJ^Rr*ZvG zN$>nj@W{%=o;Go%0xErX?~qPx>!kwHgl72l2O+0GBk&C}HC?RBuw5tZRiE^$ear1b zJGFP5NK2b0(s-srPKbnO;92I-H_K4`Ykr4K?|523pmg$;LKZ4fWZDlx{hnHSeu>2E z%6z9m*uE@rBMkRV4E@=>Y32C(hx#(ZLO8b}S<^Gt z@{6y4CEuG3 zArtH_qwch@#W5Vq6V!);4gJ;H7CQo7-P;J5TB*u=Q5ai(%$LDo(#8!(YJ9j3F5}mG z!g9FJM3@?G;BHqO(yarBlk6`9)X5H4Gi1a(Beqw<7mU#I)ZsL zGA4C{$WEa|1NxqNxSa;*4+n?S!7L}I7q3G`J)A_7aMJ0+kUP6>i#mCF3PuDnEdi0xvR>UvR#)GU=O$Ic*J0<>A{e2Z<}x3^JMeI&878*YY8{ z_>&NXaydF&e{ngxEOvF&185DL`WF&Gv#~CSwKHQcYD>+eI;0s#>$uM2`~`*c#;C`! zMkX|LjM}^X@Pi=f!CE9_&A zv6FPam1n6roHCS@C^*Vl725M1yV(cKl4k8x+Y`tN-H9e!r}EV90T4~L4LHn`{jaJe zXJ=<6Y-=oGVqz_7ZeVL>B4uD}Z2enx{6Iy>AbN3Y6i5pDL8xJ{RV9m4tHOhc@|mFfhdJLZyk_tnH{L zm%A4UTc=xI$U0^MJC=y{t0C*b@J9W% zB);bH`a>}1#3pjBS3s!+fh;Br8(uN{ zMv`^KL(3UPcf!@b9#0|m;X&X9Z)Jx1%tYA&H`Jm828T^Wn!WW)1GI*3!%vYDokYl@ znwc)iaF~az%pCWEEhrOgchR+z5334j7O5xu$wP@>SS;*$5_WV$`glUbjfGJL)AfwDmYzbGNkg z6KFqG{4+95-bbqjlhH!srBvo>Q95s*tq)Z?J<7AGVcelf|H86;TJo_j3@shjc0QLYuT=XiY;+*QibzNYG)Oi^QM7-^j*~ur;9B~t@UR%xmNiPMu{?Jh7J7QM5jIQt?3F%*VwW1Eq9vwFni({(D#1r1xZp~ieM zy=b0ouYxnRF04TnM8=HO1WIAVJahZ)FGrgUdQr6spN>l*nU$;Tz7*z28ez3h$~l~z z)cj-}C!@kq8AH7jj#{%f&dCtBoGOn74%*SjA+6k??d5FfIwDdVxU9de8M{QP>Sng+ z5l~#3S7@v4R1zOU877X|=UezOx@iOl+hj$- zHhSSbtTS3rjC0Sz?@39)DjtJl(kcVipAAl4k;blx8&`z@~UIyizikx>#MhR zTUi{|N*bA74TsLId*{d@vp997E7?TB-$CsJX11$cL}cPp=3>(rSGge7UwA~`H6tHg zJ|CCMZCJ*r5<9)BB{pPDVQBR#F(ij0t*5;3L02D`6Tv`h#9DlgRYXlxI(CK*>Y=h2 z1%?>|gL&D7a`V&<2j>;|rzfM)WGs}&3YL#=tzFdeo>*jJ! z`TqTi0%6^{_{r+$sIrENo3iZDifMG>?2n$8%5S$$86&iokK*u0JE@}n=42#YOC$t7ZO&AkH4-|AShhgY*4Q5 z94bJS302+2-5E?u=?)hpYwa4`srgK%#E>A5-6Gu_v6L&3hs(14SRy=XCgp?Dlyh00 zG+)lJcBBq(sg0C> zcZcUt;-`JEj1nFGyGMwScD;zNGoIHrNWXzsvQV+-QT6-G)?)Sn7jyGQ0p^?Xk z$*2P?|I|0_E)(|v|NSPZY#T~LISvWNlqExQ=LNUNR%;C;49Nwls3XY+sQ9B3I$X6~ zpbW)RG0@>JVvmR*zx55HGeGtp7%PXD4UIbUbIECp`n7Dk7cbb;^5LR9&L-?&q;-e< zreY7nsAf+#h<@1Hif)Nir5>0KYG+nt@**Kn76l_$8C5OJ9!^^Sv(->2>`F8p#u|#Q z_@H4TIl8#&x(RDQu~Ibxmhx+wb{#9HfB@?Qk0#RW~yd7b7ea4?zj0s;1cx z^JT==)@`hDMP)gywpILXJvkk_1`2{Vo^96~{Fug*h#*k03aM~8ToyxImTrlNc-CBh zh4-A|>>?UsamiHGFVo?8p{U6Rm&N^XQ(}gxt-gk_f~v9dntTvu+Dc~RNXqd@W5ck; zlfi3k=1Gr5fNKT&2w%4_^4cyq1#&lIw5hsP!#HoEBzH+w{ZSssv zD9iIR?8_5?+KHbiO(&;#_D15m7YksM| zUgpmzc^|WYg!A*{9KY z7s!^B?{<+w9i|EUtrxzWp$(;r7ProBu!^mFOR?)pn)6AuH+Dszt&!_QQ#64Nm*`V$ zR~R~UKT`2zs(d(^_#R$lt)u0-SSaWt3`EHB5_oaZXThUy50fPkXwBOoZI{BdWNN^A z#%%&!Jy|`~wu##=PYj#iylExaE3^Ir_CWc|+OD*9kS-x-3fJi+-oS)2JAaTzK^~ndjy@_ zoTUzOZ9Z)<+JD=WOr8zvO-bxxw+-{GG2Z*;Bkbnq)*ai(m?yQ_#U^P*gK!Ex!Djfd zvmY=<4U!@~nk(#mh2CkGXrJL`;JZVi@=#Yr%6vqNuiKH$9VbWGuEOI5#tYTUN4JjxrArHH}U>HIkw1o3Xv0|M$HsmYByyDh!3+%>!YZT%fx4WpJI-@Z& zvjl1P^h1J|q9~l+Q8{Ks zBOaF`Xf#qq@8XYSEPElLCVku0qVrgK=yveoe z#AD#-igL_GY8f1~MBTjIB}Az|Y{0xtYOu~MNyKX6dxL45ZoV*7GYRj+@Rg8SG}qk2 zIF5u~-E!gF-20qmYJ$Ozm9NY3BmC_4AS7cghr-cG{H|&foh5EmFW$)@>})MuUJp_! zyZOt{?GoTro(xKS9kJ^e20WZ!o%OajQk3wTguRM54||Sqb>ANk$VkS{S$+CI$@qZ! zBTxHaDFurzMt2S1nMQ5NJ)M~s+f7+FBQHHxseUAGixK9W>tjK@kkJj{1eYjKWU!F~ zsuHyiV;W9uPv^6;8h+sFx1|l%$Tf0VQZNt3RFLl2R})%FlStJ`yi;|AipHn1X6<{lR9)P)&z zvHGi=JDbh2Ht!qpKW~%4I@ArcsAuL~+He@-J9L#SeC@Z~)8fe?;ZLN4j5IgSC{0_( zqSxfPMsSIL(dAs8Tx=jBx~EjbvA60t#Qi!HcF2viPzO!Ye!5rQ+nCfZKPp<@+h4)O zoASffbV^iGwPs2hI}1&Qt)()7UUJj(Mc#JyVO9#rr!%uh-^OK*d_UeqDu%sHZJk#l=?P?22IVThv zXO>DnM{$$83e4i@>=njmb-*9Hkn~h#L%Y_7O4fP&p66prJLWkw^eSk1%wp_ zqH__f3vLT6h{ZmWb##Q?gteQARk6)}GOT0OUvfEB{lwMc>Gp1E5k(E(x=rwP_GC%i zgj}wls#Kx$YuM1iO{AI7QGvw=vJPI43%d8chbdgI8rL-_*1EgrjUVcnR#vFnOl83k zLVMBH{{wdfWVX97&M!^80wj}{P zszg7C{u4;LB4)N5_(j$DEVAwsQR4*m)UZj}Rl!b^utdrwh-*|!(NF<7zM+nNC8Ges zP2SA&SBR&LS!5t@fA8pH~VFru`oYF zYRy%sFtQKynJC(+iCW&BLtAbw6$z%!YA2qhegz6SiEd#8XLKq~@o7c;3*q~B9_gyd zZ0?{;u@UbIc)`8EABb4ZH7+<_VVrp5R6%4??TW4TwKL=*Bup{zcJEWxDoEFg;_CJl z#~S&0BNQd@qYci2dvLy3_mhJ>(IFm#IuRjWh2H3Us0+K1=GP{NML`#AN|m8V`GSOI z442}j{_W{gXSAUlquseLZW)u6g(o$*=Ik&+B`=laXmGDB;nyoX83>^Vr@5+yh)ZI| zrcT>(LxyjVZg1|+gP|pB0lRM=fI0rf8{dCziO3rm{a+S2Az|2aQ4HNT8h>k(HZ-om z0+$iNMmk+~ot=iFfP`2Nw{@_#=0h(cB-vtEUiM?*L~UixHc-1xxOm8VOopSbSV${f zU#xeK=YoQxF;HmJ(!Ot=v2UFV;l7F3$oh7EAPMr=Z%ou4vbKjAk*E7IkU!_4B8+%9 zr$MkHX*^78AQChZG!d#GZlDZw-t5UbvbiF~bP$S*|D!oFcIZop0Q-mMf%=HuIUu4I z1=%t({4@{6Dm8;A0)kB5BD}&_uG{NTf4Prs%AWVucz+HEC$=>=eF#h3A6A;GM$5Mo zn2M?&WR{wV!hjt;gl!-}o3bKP0v16r8JoUbYMg(iu2mBMs9C@YwK0`J(u%h{MS&5H zxkRSsF{_eC4qb}s({9JWMWw2+@XtLrdFrMq?bkZh;zb>g)DL=u% zoaslW$r?LQ-FO+BkABdQGiZW6T^{s;^wT03#Jc*E zfy~;8>4Yx^YK>|YmWHMx4VJ0R74r`wHCea!@EAZDIi0C;4lQh^LhA_zEDx|<%=CQA zV!l3Gos{lKpN#BpCwrI-8)T{#8DYv5LCHAYor3UmarbO^*=udO%yW4*S&!O{NPecY z1*Z`)y1a13*-?w&InBtHi;B~!XVoNcYv6KWjjHv6_u;8w^Cfeb>EaC80?r5wa&E~r z2X>F}qq_Q_3WEJJ)@8^@i-x2WR;}9htzz{|%qH#O1()S7oX@bv-blPLE+SE_UT~G~ zFdOI0`nHwU>YXhxE%rD-n^fny6{!wY8)6;l2nuPSM>m*3jD0}0*kejD7`ni;K(%BH z{VyF)xx|wFW*_9x_(MvPddpOoNQb{eUI+{hlnfk$9ta$8&ax_6-s+WyXmb40)u%#K zo@TSu&?j~A3|}VJp6?RPvBtRwZ#SBxFrhNB^8gM)&#`Q>p$fc4)z zHzVfn3kO+}2x0~c6Ta$7bEj~92C=&`4cP>4SMy-FT(}zC&(8D4H)&B|?Sa?9lgz~} zx3i{$2W{86c&Dulm90Zgm)8eaI%fo#eDB;kHd+o(mV`SlF=i9of!E2OcDoqyyUiW? z47;rJb8Waid*1?+={0(I)9n(+uW{Pi;kfL@@78;G)9=#geo(x6ov~Z!evmwd5!7Ux zx)pSNKtB5l>5#=OwArt{>Z$2zAddbf^5Co4Z%~HZF_;KIny^#-`} zq_0Bhn25LgT@PhQMII_53n$qW;ahDVz_Mj*&+7nj1~B$udXOQll!)3qKbN*^Wa)u0 z+P^Sj8ffo+5%9FN^zdsydiU|pXB&$|iL|p~s`p!{)V;%XCEas%PJ1-UZ|4U%<-eKd zHQR^ag-(4#jW)GTN00VfSJ_%c&f;@8A`X8&iNGflWy%>-olmuKjX9Agxe7=yZpd>F)Co}9U3ugN*yX}c0IVQH5nLf!rl5*9+ z8so*KU?!GJs4~`cf3^|A|Fs3Sb}j7cv#Bf?^n5?hlPYUMf5gCvG)kKT*k*xvE%ELR zCRn2f^+y?;Opk$+$n8KTldSRes&8PoD>(q)3MvO27u5g*)a3>n>Vz z@K-U4>$jg?x$3)$>?Ds#4ZcVZAMi^6qPVv=QeD}1xOKhYD#tu@tfOqgOXd@8L~7|q z7*ME~?iOSsO+Qjty@VC^NG@o4`d8R1njR^GNM% zxtd1Ag3Vm5YJJgA7I-EVzrR8}-`N~n!$E!kS1!oGY@8i~f?#(}(c#Ge!jf^*r*HCR z$@r)5q$?<_KW=o_M7}gehUJnOj#gyqx$2M<37ng zBab(eB_0pQR2+rIGl|?}6Ye{h$oakm$@jo3Q?z#&c(VQ!RPDl(UEv}EhI-=V;N%di z^b{;f{Rz%%Dqd=Cc}IHJh8U8PGcaa9`dkyf@Dd-#$XvAiEp?<9?mAb9uae~ni9e%Q ze1S9?gL2m-mu{zscXRfM*7Odkae8$n=<1x>51&)CouFBZeqzz|kk|8&bD8>S?Vfop z+bdtuPISiisLNvmiT=YiBWrSUGCA$^MyOj3QS2{n?zm=Q4iaxZ1kTGP9{lpk%xz8m z+gwGeE-Ir5BMZa@T0c(Gj&G%gw)B7P_^DsKm)ie9E-7?8Q{0;u^o*@7t-@Cr9bHge zv{DucRq9`r5(UyigoVB5cXoDombc{Wo_#z1O6M!gUnUM-Sz_MnE0b6mYbT}EGl?5h zlm}Z`7P1x;mexce)TkC=z#jyI5!aNbFVpn|atdC5eA8OHi6-1D^9XxkGU}7%!sr`l zg96y4(Qr-ME&4T9cI+kUkfrpb&D|-xu=F)&&j34zt_f~whVvi4G_to!X)RpRNJr_= zSI&54(KA2IbrKcF_PnTy@1U><>*>^F(zemXM!vG;o7FyL*4G)x4I0jU4)kTRHu>;X z;qAqw_>`9L`=I+a%U)Kf$F$V1iyeEAGiSNjx#fmXC86W_m0ym3Ax>yLAN>N?&4my& z7igentc;bBYZZc{a#AJqj*HlVojp%nl#iGFG*_}q0D)#{)?V0?Fk4cTZUMXhQGD4U zw>db0$?0ic9@x=E+fiA**|r?{w+a1<0sI&Uh?kvQp$jQu z^n1nE}NVzE#(&g9h&#t~!>^0pT4gTQ+|WNnknVg_M~hbCJ{ z=@{Lb;%GA=tFp9BXW98Mw7QsTdfg=h*IwiAUA&6F9YOI3Q}04;kZ$bvh%fX3r@%D1 zY}m^t`R3nfl`h?2(Wp%(g()TRzAu$25J{jBjROGK2O3`Jq6Y4 z#Ik2d@=|z2X2qSo;?1|U_w`FU&*jL*Y=_SU4#?)(F13!oHxazB-w{iW6g7%!H?BcO zweTEyJdAdr0yGj#7OG(QLyE8ormr68?8T@Jm&hEz0*7Q8rWGQfTJqdqUqWBccO_j} znSvq#MPGfT;S9~oWw8>+ldQ&w?=n(siescV$l&c>Pf$6*ynN#ZVakO7Xzxa9>1M)f z3C0Rj$mDnPg?8jJ{YI=8DKT$0)N4yY0(R2Lw=`(WlpQFFR5>9-vXsb8v=KDwbkymI zlOVB`3XECfD$|Q!D`Y$9CdT44$G)z@Jdu%5qJyM~oQ=k0140*$OUFOne4pxQd4OK# z9rV0eSezE~6CMUnk+C`8^D;JeOSwpyzbsfB6QEtNJl*c@&e zzQe~Q&+K-j6h}WwJe|cLmVgmu+rKE?oJN4-GQSw{_xtkT+VN7i>9kZA4t^udQ2ne>fB5)=3Xg88HG(m|B8 z7RtJa5n)sF-V*HVH?mEwjOTBjvl&T<&baBkWt@Bfcp(%O^7(vfJX)f+N!w!=lXab% zpE<;v-kgZDJ6y{AB86svVjE_UQyF5PaD*rqW*>=6C5KW7!xp$3sM(EABAiUML`>gF z&UxPPOh_!*w~q2OFvqZtnZN7heywN?tm@gO#RSTn_H`wT7NIo z=Rvp16^g%Gj8cTJAvRM}WJm88ar*(i77({J0d@T-4CqGUQ_+FLs zWrE69h{G)B9^u9=mn08cxAE(sU7t=TFaLu^oiou)JeZbMhbN(1Umh$|>2LvSApe7C z9j-p7JmE8}%CybqE&l^M9j+dyzU)iB*;ivumjMSvI&ROm5FwU@nr#!e5FhB|B<*gx z+tP1G*)KyKp*WeP;K4p4Vn!PnL1yz3K4`mPx<142bO#mvV8*=HWmWTh%YG$5(fS>a z&QW$5BpG3a<#fOSW`xK1lz%v(m=^PaaFx*1mY&mSR`i8N7=!zAzzt^GTGvCkl~es{ zNIMT?ua8U_n903%B<~t&!-jGDkzRARXQQ3x%D>Oa>e~Y&%;$3_POPc1SlWPU(uCaL z75pOV9Y|YlSfKW;E4~AWX#fg_4h~#71rk<6-glqE|0Ng@z;6AOkU{ppzxoa$FRm)g zApJ;!>E<;E;MVdZD>MiukW~-cqjU`TrwCw$g#K5yzyIX>eP1vAFRQ%pBWVe76;(!g ziJu4{AP9HJe^7&fd?%*|FuzZq*u?R-mB9Id^H;Uk?*}qAF?2EeEeyde7+heva?diw6mZA4bNs$+ z`CZijH>H2l_o}Jg4`prOVdvufTO8~kFn`r7@_wAZ=A%DL1O1m;oM7s_wggmk4gYVa z*B?Onem(c2{1EhyI|tumyNdiR{J*ETcNr?B2W*Cb`+@$bARsJ1;DO(Kzh{6}-6Ogm z3?eSh&UUsU29Cdl#}U!eb^?x@GJ$xA->-K6NcnzA7=Hk-;%s1K^;-ha`KD_)0DPU~ zE`c_nnZGIjKYqghDj@wWD@0?UO9}uaw*}Nl^;-gI77k-Y16vd8-j;` z-C+139pE?L&yxPP@c#}?!qa1+_Wgbepg^~wX#rz*k7)kxT;C-k_Pv|^#c;pYq`XtG zGJ*jCc?6h`+t9CpD7^m;{e6evA7|vd3b_+E<@J3hWeNBI3H&eR`?-tW3;nY%i`Y2= zM&^G35bh$I8NF=q1Qvw@K-e12|KWZYwZ7ONB8%JDJA3?1bH8AmE8h;J0x}N-w1xH- z2cy)VaomsVrDC}r4+uPq=&qV0Kl(S^A01WVFQeyiKS75PF-k8`U?#xs-tMTMHU5P_ z)Xv7<&ep`%`L_f<>M;xD00BHez<*0Ju$uou@K0C0%k#sl|86^xANP@8|@`EFExs~)_g=3xDR znZ*N))%Qu$kCg8R;c_qbKjW^5or|rpiSf_KFn6^fs2&xg5I{QszT5U2&GUD_q9)eX zz-_(nSNAMzoquUm3URgj-~dHa1v)%n`u>;l{h+=63;dmMI*3t=#0_g4MG(jVC0Pb}^i$;|@a zh&Z5%nZPXN_9$eO_owjpBjbLWOUVWVvI=~+kxwdqhy1+<{cQw(B@&;op@ap%x~c+A zd0Q2iD*q5!)W8Uce{3diV<B_>bey-B#U0)`@fhhEXQK5(og5_>uDc5NiIE=EsQf zy@kJX{(`FJ2_`5TV96tZ8gcyK0e(#l%_NJv0%thXqP z8vl^ux6)$S5MZPNs=x^7s?aTb+onIox3IOaaj}syu`n}t{wCY3Em<* zY58wt8WzUR=D+1a4p}i~0=PHSv&tUw- z#oYNL-1{HJxZCybMz;S+Q@Z~rH1`YTZaB%GsNomCL%kJT@@`Ql?gW+l3A%9eJJ4TG zB<_Y``-yn*?cWf8IeoYr`s^p@A_(YjhOzI(yf+ZqT{+y1|MQc8>%qSg+}~bz;~xBk zj0N5ryl3eBYir}jj>J7)0(Z-N_p0wt0uZ!c6a4Pt?_GwwcWQq!eEqKs_ujC*%Xjyp zP)U-yf;pCBA#*?k8~%_J1S3Ul;DW6aU1QB>y%3--Gi1$GP}!vG2OY{e+#N z`8Di)PI7mV?>e*mMD}F-HS!-Q?OhL$pTL>Gn)+A0;`>I(Eq{=^<-O~3@e?+H`A=Z~ zo4VXRH~-1T!1f1h_v^^rbHJaVwVb~O{ne?UqAVn^-1>eMUIe5O3j{=u516@u{2%p4 B2Yvtm literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/lib/formsrt.jar b/installer/lib/launch4j/lib/formsrt.jar index a13f3f7cab254677afe958a73c3ca8bcc4c97739..e0de6ecf1f5a1dad8b075970b3a9087eede90196 100644 GIT binary patch delta 5266 zcmZ9Q30#fY8^^upbkcIG+oF|Lk}#IBl_*=7F*Gxl`5Q83Y=29I88X(aDUx~VkrqYv z8Y!frm~5jV#+F9n&y1ZcDNOvI^Paccy?j30_xF94^PK0Ld(L~UuXEVG(k{EeOkQB3 zT^6WW6{wN$FUbqkP_LJHQ*RmNB|_0crUm;2%#viA$$d1o;J1MJkV-Q-Oydj-`Lne- zK08A30@jgyZVu1!({hG+lP2M_CU+PgG5&`s6Jh^C)&hns#3TvkVBMeDLij@FOHL}n z0dlygQ-lk=;i7|vyLmwHA{5gV;S0%JS$j5*0;EUn?`VWxpwIm}3owbE*usDCn| zOe|%OA+~avwkh;j%mPSTD^VRCV42H{I^ zRRyTJWXmJNy)GrES&b1OQ?#r;SxG2_**t9kz#_%qRbtZG$=;6?% ztSgz-PLG^e%DR)J&N>oA9(2(Ot(?`(1X7k^NsqeY#C+roKRbxq$h2~zzkVC+{h-rw z7D;RZ_-7D2T8`s51Yt-3gsxztr2F83A97hgYj9nO>BjfxHu;m__7J-Q=Tx#1=QMSo z3hki7DqQ0D&tUv2Hj7k#j=UR~M9O0mBy-8M@U(XDYD0*?gnQLVR*9`bTI!fbc$gUN$FI@am{pdxPKOncertS z7!K|wyGOLr%R4F-Ex*rHEf%mX7W0P9;Tq~TG$*eE==PY-Jr!v--dZppn1U}z@8?pIq1#H=XqgMV;$-DZl zI}~ofxp&@(DZhJwFbD!u5u|c3;|YRRP_+?@p8AwO%kI?

p*OrX--l$!Z18f8iwH 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

)ucSy?*|pi6*E#iQipR^;F+(Dp?KPLMH7Q7UBy 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 VO1?3eB$z}Fz6`u{h8^W~{}1D_h>idN diff --git a/installer/lib/launch4j/lib/looks.jar b/installer/lib/launch4j/lib/looks.jar index b97ef7792873ed9ffc60bb5c0f60d8ee8dca014e..d2c47c743f46b994aaa84fc20a113841eb945ab6 100644 GIT binary patch literal 409708 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%0A}^ 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 z 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 Oh=AAeY*e_X1?QV6E81Q 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�qdjN`h>PN}yYi=P`WL^lz?! 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

(ZFUTrxsx=@ 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®n^(9J< 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 z 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 A2><{9 diff --git a/installer/lib/launch4j/lib/xstream.jar b/installer/lib/launch4j/lib/xstream.jar index 0245e05732107ddc70b0dc7d66b2da700c1a32f3..392e1c937398b52fcccd5ed21d52687053219a01 100644 GIT binary patch literal 261710 zcma%i1#lfruC8NdW{jDcnPP~UnVA`mV`gS%ikX?2nVFC6n3*B=%YXO2`*!zL{dcFP zr>5#iUrXwiru(#{APoi%3-Z^+5-P>^UoZdtfB^vqkrh)BrvEM{&iFA70;2HWq|hMD ze@L4bbx`&GkXrp|=zrS(kje_neHRx~R$-78zmuJukddZmm_v}JrsZnEs88=&?C&6q?d{x5om@Ho^>>SAg0PXPb!Hu!%BU}^t1oW%bNr-Px3#ow@h{a@Gtwtpu!<$u5paBwjB zmk9Iky8o>RwuTN4rcVE(0Q7%FF!#L5%g;Yuhl2hI#(yV*tf7;$g`tg&rJcF5i<6;? zsksM(v5ld#b5)$I+<*{#@J`bFY`x(aiWUqrl))OTYdmbYR4qr~_u_05l9`{qOBxO! zm%SKVpd{1*5Q1XK*TeIPxffUbT>^Zdv#av6@=OZHE2hGzPEN3l11`d}^D*Nxxw`bL zgNcjJA|snCnuPXUbb;M)ifOR6T{&8qsEOL5cHL?->D8JXtx=5Xbn)cJFk%@$o>n?* zbFLAV7-9rF%bq6M*LO+GsgLUlkZp&i6ldmQ$y$9u}=L%eRyCfNbautvth zR+x~<`OTDJReq_;^n?`j{!b*DLob{`12;_{I~inUfP|M;}nXZVAzc%)z&YjBha9cY{6*GbnwcGr<2W=whkN4 z)Wz(lmjzfGI6RRJ*2Bg5ydfRsGwRE9i4xSsT^0;VuM^X8kyNp^6Pk#RnrlHAP8)Oj z*m%qqN7|0^(Mku!eu>0Cu4hb9ox#kMj%~Wxh~KmIhF_yh`7XBQ{Sk6Gpf*;P~2r zdBN|V(J;soZW)ONgY#2>}#v0M`f2M(?{)Ei+BqzNAaXp}vx6 zinuqvpc257O%aTILTO#<781B%;82ZF?^ zh)6st1N=-gFU-i+HV73jFM0g=X2EGKVQE6w%s!B3q35Ts7_ag~<->Y3MpYIQxAV^OHQN|3R%#)cjScMwBu6U7%AEz zH;2%6ybjk((A^y6yd2$iicNKsyXUugrQr6^L$wM|g()SOismI{xe}+E=Urj!Rn2@j z9u-Pd)$hgk9<}KfSCl@|@NHA6`F61M-XWECzJn!-2`zI`mv)vk+hb-bPwZT{J+54(ZdIqL-NHySVn+x zW13S_nZE=xu4{=Czhp73=_)GHvKyq)C7;Q^Fg$@0UIOqohX6~3a8qSbk`e#agI}l<=RUlFw>AS?|}!&otvgj41VX3 z2E(6lEOZKOfdMhF<*9fLH&2WBmgHk0l-&%~II|~x>*(=

PCI~`(F?noy0sTj#|hBf)c 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�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 literal 223457 zcmbTd1yrOMtrAP@ykAV0^;ym;KYR8D|$f?W=r1nEHJDd|ltObP~bD2Zt!Q5oSor#JMP$ ze!4XophPO}z~I^I7`wJ!RYO0s3IQl<@7#>k#iXp@n)*`Q`W^bJy9_;=jDo58Whtgd zTRQgr@8T+ooNTYRq}z1n=D;yHB>81={pkye&1l2gb0~;24rP02`00B4@2_aSywJs2 z_TZ&a!J@aL_mIt3b#J}mtt>H`n~>W%v03q>MtH8h`HF6BQhCbqXZhB1YWw3k{K~(` zULcp=EQ@GU{l~OI0@-;PGj@QsS^|Rr0S$r!0g?YZoNAvCKWBrO;ZKNpahkHT-%$rX zX8dV1hx@eoeH+kJwa^Xtk>nBk;QC<_At22>DDx`)tt6KzHU}7yf|Czh2!v4xJSJU& zuSRRt(Lu#+*wQ$7?8h&(jPeOQJ6s_$5lG-T-4slODlloybE%3CtvkH~+_X%4m0?4+ zk}(66v{V^Nw@H2Lt=OC3Hue)H=$TF3;=j?kZ`u8}c6m3GTZL`3#){8AL%Uc>uzoaJ zVudqSF(Z)dKnj>WwNFf>u}Xmz|55L&#V2^sRZAAl=SnJSxv;MfJ8>PDLO|1Y?i$b> z(_q3-E45tCf~SH`?KQ4uBNm%}JLtK7X?cZDbs_`>t2;^1SiYBtO9V+hy$e6a!1i6( z6eT6UuHSNkB!hHmje}0Z*knYu9P>nEieYtcd$c>m(C)Y1bZoWQQH5hbSng^KjWNR_ zAWvUq(6WHtuv9pc#FV6XtxfDcbUp@&Q_IPSG$L^jrsA1|40f0~B?3bZp;n#lRyu?n zJ9}X64k|MOw%Gw!P(zeSLn-XI5p1~|9xI|=Z+T~jv|*vljKE~-&Sl=IX4aByr0uj{ z2KtMOW*;72BB+ZNtgFKm6ld!SY?*sY-ZpJd4~Vw(L_>CZT(`G-{Gci6t~p_3(UelQ z6b7t)e3om)H+MBXShK!M-|8)T?q%biNY5B&JOYinHNzqTZs_Rg+SNW&S2mIN9R0y* zRndZ%X;3gzTS_r2|Hr&O{-So0qoGZ9^}1+gVSAtbgl<-~EMpjnEN7Ttj9i6D+OZ>a z$_-neT?>PdSauS58U{77Z<#(b#0$~+>FG@Dk~xr!{GQNb(*B8ZZYE-_0&6mm($tg$ zSyUMYN%w<|*!fTg`5#K+%k+=nsR>G$nEkpc=Zp8Sf z8>J~-*`o-fzOyduC!dI~$bAo)l*=YHwUj6dLY0T5fy*ybI175OZ7Ut?-lMH)prGH; z+1ANo(i8n1z44ZVyRoh2X?QtRLIgzVj^`xs?L7XDk4t zzN8t==|S^Zy)a#5?jSn9(bupwG4hwkZwcmlYHZPe7^FP+?;) z{ex5OMXXE6=z8?8S!XOyYB*;;ytZrF9x)mV=z!n=*j|-}HnQ0Uj|no#cBGgOTGi=N z#hoDWU%;?dJdl3HPuwA(>LG$0=!p~*#%E1roEibZeW?t`=t*hF~jtGo%w=StWyKAqeZ5LP)>FFb_ z*RseNrJu21g}&pF9RZngHg3f9YyRr{C4PnOurl*`IVrp&e_xDJoR>SovC824K|o?E z;M!!!!lOsd%e)YSGJ3XjKHOmuACUn}IsiL*ZD(E4EGH+Rrp@4F1w_3(bw5b%oCe<# zxj;kmS(?PBQQI@~TYV3REuV)-KsPwGPt7-o`rQ`)ztK<(1(|Yk7;T@qp#8So& zHl4>2%6u!R~)2t9nLL`~#h|66NY8YmPpe>AydSG3Xf?!AC#%<8-k68I;lCo^` zuDMG27`iWE`gH)eSA^9SC@Ev#W5d*6e^rU-jWUdWEFUoH4{9>mlu0Jl)9zF|f*G2l zkEjstJM%6P?Wy*&muHD_!JZjH zjTiF>*pjZp%gL=tCz5)TI z=mG(e{s*_nKRtU+%T;%_@6OA*UHm?UZo>}|lphhvS3u@F2dL0jP)Jf>l<$ZYV@BfW ztSz=RTbJ$DmXCrgr=mSq|jZnHV{KRO64K=II5RX$dc(} zPR)=RGQ$aC#;$GF>7Z=-Tb7z_6DYpO7?{dq8xdqb=y$WpX19nov+a|_d+Bsvmeyiv zD7tp3kzF|L{P8wD>B5m-8!f!CoiA;~WM8xteqLyfqb+Q#r*`e}w@!l;TA${{L4y`r zP6s4CyI5M*lW(I21+?FqgBX|cLiHVy^s6;7Y_)Icn}jhm9jn5J&YIa}Fb0@heQ0H7 z`^2TvOG6bMY$;<4j(2mdbxk{y1gu*!362@X2ZF4n0(#B$( zY`Zr<^2R0}ZYyYO_3!RAHws{=GCqN5zsh0o>0MK5zp7!VGP#D+me2J$O8uw^#c{AD zishT?lWuPOJ*4SyrKr7H9GX$(|Eh)2aI}rl+?ZCSbNnqUlq;!K5rfNNYQ!Le_I$ce zhV)`yxP$f_aQ#DjwIKB6x5sx31jZVjqisTM?$S_EhpR$b{F%O;=EpkP^i7G5sXl90 z?2O$}#b%e}8Dobl>Vk=*ZD-yqcMwmK_e~Tp=1qXihe2n~wrhq<`p&I2_-p!1BHSZUffw7RtBelA=0s|{S!ZZ!yHTeO$6FvU zo&9q&aD~lt0C0uvb3SlI&1(a!OYDs`&L!)?2E(Sd%m&LQkIaW@Cq!zyac4*4`U|+n z=n(|C$M8`gxJUm{2kawV0Rh$}SOEdfW&C3=87~WBFLTCY!!Mr^J|_CenGa00&Lc0l zS&p~W@4hp1u*`jlyjStR`cglZJCP+==qr^x)C;pn#b%OK3inL27&cI9i4^F?51BTQjF> zY>j25d8aC~qb6TbrAR$)-p3`(8pi7O!Efg-O?yk%m>&6IKyXUTIcCR4+fIw|yZd&B zW?@YY*|{|wgsSxg^sUve4we0*V|nIB++Sgo#Pnm zC2hA<(HJAP&~JN0!}+hnxyU2964d6$P=UdK9?}nVFX=@BQ&q}*dGvaV$X+g=D>)#5 zb6+A=ylr0fGvsg3iA8d@YG&NK0VI)@kwhVP6Gu|ZL11PfqBDFC4bE(aZKiqcA1hmt zPaw7lX+w~}CQ;Kfx0FFlaZRK?rOc;xR896PzT;8Y zg5eS}-%07LJT6rK$UHM!?t}ciHf~4*s5lkT8W5J^vl5Bq$nm$U#d`;3@i1Kc-#Xl= zr}u}7f`u!RA#rJ4MTDqJxE6}ijBc&0g#m3XIBIw>;D!}ENE8(M+#_#mcy^J5WM`et zk$ECn<6mh$#>;Q5$g)PKrRoB+4J8Ffx%3g?U^fy+*sYAh5a;l>EVq(zN=`?4pE0HPrwtJyiM`#Gx^|t84To>-CJ0GyVDuNu+6OY(%X31rz$`N`IL% zHzt~b%jR*2M39ZJ;0BkXFOOi<#5qSHat5sX7C3I-5f=b67%95IqL5o%VSlcCD#CfE zhObfUsQ5fwWmZFJnAf96SmcMS92lk+U+HR5SE)4tU=19?e{&ewvVAJO!R{vfK@&in z_JsdYW{VRSEElz-gAYgcK$|l*j^OgNIrgizngRW6G}YR@%w4LuzAQFQjkQn3&VG`v zWkIORX}$S7=xmins(5 zw+y60h!&~BtimU&#K#2)!CbfMNlnFbc8Qzlh_v(L!>bMqj(2;x;xnIdf5Z0H2QAS` zJGPP|uQvB?-5SFx?3r45NqKL&$dwJm^IVmuH)`BlKw`BNXh*4M^wc(6{?bhh3-nm_ z@SAIDPVNd;PnxPIeNkpbC$%P!Hc*j>#R*)TO5Hm@pLP1#n{`@j(NZ`zET6_kzwDk; zR+hh)VyUZ6jOwfz!M{dDbQ%p9ftDZe_pUiUS2yEam99Qsq)@C;p_RiRp`AEEiXpC0 z?yEoYINSP?oPCuyl`fWInO?om%($3fB1?^^#3q>UNTx7W_H&s(zy5m|e^Mir5hRL& za&mSx@)LzJ1$t<|)S0ejRxq1MC}KW5vpjPi%Sm(dEJXzNX85c4<$(;!#sI?8v5Bhc zA!&e3Y!S`8nKU%p42Y*2daw8JjHxf!yE{qC^+|?!c%e>nCfdd>rqrlmwf+q& zFZxy&ZlvY>8U*$M&-g~$;M_i`FSLOTX*S9{$r*ZD_1$}&=QjtyDqrcvNi8u20pzt)_TI@Ooe zFRP4*6)e9c>xZoMVWQ~tEgU|gg!D>t|5^&uMUWfA&s_HG9NZX;WFbu-L<=aORI_FW zv%DVb?~TQz6W7^7n+P2bkD;yK-wXBX$>jGv08n7wL^ zU1;W!>6W#(RgL6sSGgVNrU1Gcn!lfN7Gxd@g_erxZ6=P5v9HQf@hBvBn-zRPce#+7$d;E)Nn~;WBCZ z$?=ctqQT8<$|m67F6okE^ELAP1s?c}S04QXxi%-y`J7K4%+yhCq>NWz%G->M&T1QS zxj83hK(&*SzdF^;9h(ZC1V^*d>W#*!5o1;)Oi1L;xuBh`l6sP{&@VAQwdYP1(_giO zq36jxrA8C%LXe=)$t+1DOSQ9LY2UBJ1aC-62bLaqI1j_jRQ2^OCCEojDmB;|cJYjhpjsJP!QB3(70;M1SF7Rw9Srbu2!1Fe?#&iy$pt%7=-X^~8_{^-&BTUrf&(jPm?4kc8i?f%v&E@kHRX9qke z6*ne}-9`>PAUg`)13T;6)}COaz*0QjF}NIcphaX`leQLB5jg&N9MwfDA|%nUBCADc zkTu{vW$}8s-{GEIMcJw$#IfM^Xpc?YHaAm>;pV5DG7%T%5}Y@(9M#T81yP1q>T~v1 zyBcciPqKpd)O1a-Ron}6&bpfFl~-;jpU13dRhNLdj?c^Gaq@fx;qRr~D|5E^ImlNc zTmx3uL;P^hFm^c|jy7;%!S@PNVHcIwq|EG%^k(2`mm;y%8>29snRSxP?WqJF^Qot4 zD2$bJzZGk>IYwzY6;{DPOg6$A1SH|Gq=~ya56`e<4mR- zDRLE&iZAJC;3zu}5^iYr#cX9+fHxFMZ*tp;`%yOOFetJtl`>eb{LU_F!ithHuWJ_W zk{W!m&G%CyR#x+9M&+qi@TW$NtofB`iS(_0iR1kC$Y4S(#LFp$;e6X(u^K)8MtjI| zuQJXLbaN>W@C=r^I**ShSl)vf_#7q8L_!g5v6M#$kM)8wwz{4=IMQ}MuY(wj-){cA z%Sic7#5%2`xR1#4uIFJJ%t?=syquR7a{4d(_E-1MtP>du)Y#0vj?6H4>D;7wR$(VY zOARkQp?YUL7HkpbdsF9B7rSeHmn_j^(TDScLY|l@?9SOmczJkZ8TwMM(0ptx9i6}O zrS4-!99x>yfT6r!7JixkkLqv@nF=FQB2+gtDl`4-u_c-F2=3Kq<#bG6^lt1LK& zGYl3)zs;u+>oBZl)?F2>p$cak=t3OK1=g}9XgdSIM~*iqNEKJ8C8TMnMTn$Ul?6{K zPd!%Z$HOgl?x^r;I9Kn|J3Cr~`e(V~rtrhqz*}10&aU$oZ$w#hTGIs{!J6V(7e+Hu z2xsB0)ooNi9I}nPRr5!U0p|*a^$`0w$|*N^W?j!RpJVPY0)i0~{F*qY&Cq<#=`S&TJ1It5i# zsNucN?N#UecFf>ryrD?iXxf?DwKO%P?VuHOIZEMcgx?k=U-}RqZn(i2J>}~ke$Qv< zykH%AC_32MZ8^7#WZNQqFFb6seqX8Gz3{eE8u;+^;r3F^eOXyXFUmkiv#AqH86j|O z{l?|2uE$^{@di{V^2ILw(12Z8>>xAg75Gbc0PwuPwehpyn|!uxPFax}nnEG2RURGz zV9&b)Yk5xPN5Z(w^2>)VtaxYvLll+8aMMUc+D6I1>&lM-s)nWX1nsM{BZ#bb%@dB( zaGFMJpnacBW5aAvzU*NK9(>vvI2S*u$le?SH)ebyMd%Ad>`vC-;I=tZD^-H|gsVbF zYO7&@@27EwNW-FdPqf1XCxZjJ2&YcFJ8>7byA5)lB}5%?4xY|=uUD@Km*ma@8t1*W ztKz0ju`_lBxqC9wBWVcM!joDbKoB23%yNsYXb(>N<@oDY~b zmCV>JT0QcUu>-8j8+kj~2o%EuhIU{|>{(ATV zj@p&t!X%$x9Nw@gOJOL}pdh_JE0x-KeuzqT>f3!C665UNC1y(v{vMcfq4*3O=7T`8 zFjbt_7hjaIH4*$`$vB|k3Al46+#PD>6fe3wJQ~>amBr_(@A! zfvJ0&F?IN{v#D-zL!E#xaP^wkXAgEK7t2%HDS=?6BZtrtw@O;<7J*M`HPjA0#0I$1 z7W_Gu6UVHf-k1Ejp=cElW7|}0!bDq(g&~nhLhJ|;JeeEB6%R>GjP&G(r?U>xGyKv; z?2mf(^(=QV?)soGbkCKx|wn2Bit_n?+m*GxZlpiy-*IVE3T22x!UL%SPJ{(1hl73$mzOmMv3T> z5Kt(=v44r^Q78%nnT@hA#I>f{anZyY z&>Yq^gSd~8QjyFsT+$2@1kTGVb;VZzJS}?AmGoET&hzMkM#RQo6spwkDrnjj(KO8_ zXqkx{g_QAaRC{*uy;YM!Qm=595ZoJSN92>x7gZ75tIH;+i1Zqe-dj>vcmR=Jc)vXZ zpfRN4!4#c<#`wW7loaMDNsEIE0eaX-GryAvPh>WLUmkjZwdfVmaVtTL;#KdvEsEI! zLlG=WTh~}rQ8FPPvg^2z?z`Ine5peAwFskKjB0+d0I+iynnnWLUy7M<1p;IVf(R;6 z{Zw19rFNx3H5TD%B#u6{@AW%twE|$fR~PZ6Xbho<^I3&rce&p2elvI_%8RR@>!RF; zQiC1dirm*^S6ZP7l>{V7YPo^$V9Vs>+Wd}59K^n0W11<+`TAiK&&GMj z!ZI&j>3hItn z7e-JMtyWk-lem@!cm<17hJS^mR$E|zY!fs)qxC8OZS#{ z>hx{tjLYDD+`uVt^q#clC!>4faK4k@kHT-V%qaa^)Jgs|TXLx&0B*$b{w5o|abI^^ zUhYVUF40Dy&@0{45Exr1+U&Fr^hly(h0>lCTZ(t^#I2J?t*`T;SB(Or{oqq!;n^rD zy&R1ST9GBaKNqQgbfRA|l+Oq3V3*-8m^r#M)?>4o0COvFK}AlN_vX}bU16S?-kMwM zoB!ag--GMXUB_=^u%@g(80(5?HEg6n+uNgQ;5NqpP+PoiBB1bs;u=AzjCFKrnBI~p z>Pb_d7vP&~5B%khW)lf|KBRZ3^}-8&uG;w%xsfjP%>E1l(?t##L2UCEwc=_XNN~WadX-~wp zs06RFf22m$g#M7v0EOCfUH&0i(0jP>N5UZ)%`-)IM*X32kmr1M2GO%K`kQ<9hwhXY z@v|)Y8}}5Q+HFSgd#G@S*sUb`n`-ul(G(rZn{%kA|Dh_)GfVadV5&mX*QIB;Lwr#a z{jJ`=O@D8r?)szl`a=Ebq3jhxb~>55smWbyB8wf#PN|!J-93oU%FV< zlsM{TDy;D~g$+YGwCdK84NN*P*QJyT;)D;`m4yrN#4oSSCI@fMjO=%q${_fD_i5Y4 z5cn>Lsi}r&_|}u7B%Iux)2dx5ncSR{CI{WNxQL>L$t?#mJaK|7-@_V*SC3%$H0vq( z8x&3j&xi$RPTr8UOK=7xYgAQFz=Z9^cj|dweK2?07}NDaP!(@0GztlvL2H#E`_&hm9O()lfM z?Fsc^rgK74F+>^FuXD7o97_Pf zEC=eDirZWA7{CL$rxhZ`-~nG)EEP(-=O2{>1Ez#8D5Cu7gV3+gbnNsoSzw|x@B zuJRmT-miET#RJjjj`-^t^L)9y!g^r7u7Tl~9G>_alY=H`2wOQ$q_q#Y9l zo8*2mIa`XIy@6GQC%4T{zVSRCS0Y-i<5R0m45K569UaAUTCkCBc(>^JbPGSR&5W8T;Hy`6lZHsd(4KFBNZh`ug-I=^Y zl8}`UXU{F9d9+ScRgRI^{B$~4&0&w|*A4OYB~NnQAN|6YnoeHr$JW?w7PU;6FAAGt zkKXa>i*g_p4?ADH;YH$_p#-e{U9&+_LRb&Y3a+Aj6G|e~;lN()>+wQjY$MuF7cq(C ziLm-I^(U>gr8~WvmQYFVQuPC`W{dE;Aq9QYCvArq(?bZ$pTcyzcl_^f)zay$ z-I{j5P^Y!T0h(O|NX;)04pnN2L(fWYYQhs z!9U6#gn!N3^~o)6>B7em$;bQM4Wm_myJe7&AQAOX76@eU{fJvF!K z6)swK@dNh8xx=CdFyMSs&OTWg5+wPKb*TFZbdq}DMdL0_n`qSh+~eH zjJ8BLW3hY*a4B2(9uAo0?-#*aj{|+BDl#hDEy0Q|w|Qd#)LdbXOf!L2QD+<5C)j(T zK|wJNvn6<8Z%YBujEc!Tc#T@$A1&q$X-hBvRqYB1^heEyNgoT{A62HApR`&21KNK8 zmIm0^7}^obI9gczi8x-aN~VV%mAl~+ac15nh#2f-7CKW<9x}25IY?m(N@;&zFx3jM z=O2g>Hggase*HqSI9gw8n;E(uI9TEG#)4P4Wss;$)a^#hC=q#r33$I6iXlu+aUY@| zRwlx*)E09mgO(mAX3LwD1Sn7P8SPT-nNVw#VO5vpM?01K+sCZVv@)|i#G9(ddokX3 zT^S#gp|W6TKn=9))-77(@<78G!yc8HT2jy{n-F|JkIrw)8wAmdRZet%s7o7Wd7Dp_ zK1x?5MOL)bm~4s-wWgh`q7_{qH6jrIRgpm0Xk;3XzN=* ziForlUcdZ9{C^T%Dnwdf{iK=sS+`67eB zA!6&axX-d(s)4RvmP2t_yHF{gzl*e-*J4F{0AVckaV#w)l#EWNT+8%QCd0|UyPK-{KkTD1BYEtU3ukl0<+_r3j@gbS|`-Y|%GX zh2mRr%j{GIGz*fD)rPZnU)(gXVq+7-XfKHWo`XMXxM3GHNDDvNAAdIP|9uXG42=Me z77l{e78Zv3e?$%`Yin~yn?L8nQMwA==R4|&AgH4qi!IBP|B4nSgA_5mM^`WzE^g`; z{M`!fD-ho>WGrbvy!1@|*^Q$Y5G4KG)=Ls1dQ&Br?RHvqw2Fj*$}wqz03K9{qrx?e zaR?hnC@LH2ss~4rrD1HKpL%f%D@v7;Pvxt+WNmq~Jv}Paiqyg=dh-a3`<$iW;@G0f zWwI?v6ToZP@9DtBi~MDj2oV?dYa+c57kQYw(`Fm+KNBE6B&zQI967?L5;^~O0^*i7 z7N+{9e?jocbPq!<9)9jqM2q=>VVLBE=exTxuDzEVZ2`fP zNPOeZM!!?ITTd*0*>MAz6yy;?&F+_z%_X2JT3`YY3zp2Jo%hPy&`kT$d6Z8ZbWUc@ z_DbHwm$s>nNQx-l1mc)&;R2?*@vqe);`7Da^%%?a_5xMRvD^)3qE~N!pbGNU2fUQ= z5Nmo>KdoQY+%%yEz?Avzc&R_1*xR=+N6Q=Ol5Z;WM-zTW`byJQ7Z!yZ0DbqRSoWXE zkO-3+U4Ie*`t(np|375@41a%*d=b*0&WaeY0c?QAa%FYf%TITk41-8t6C!-n*dc=XL4LXvF`X)qM5^$ zVf{1Ajjr>d)K7>LpN;N+hbaTFH2f<*!*CvCA9_ro2gR=vIR!Skgb>=gL(HipbL#Eg3n(kkxG>QDTvx|f#$bMC( zTSXjb?6ZDFG_v{a>c_#Yn|r}d`|G5u{T~DUpD7LTzZzveYD%J4?2 zU_d~WF#n70{&EGuzg^7!Ga~(KQlp}7Kcj;BzPp$p7dNI3nMVSyK<|XykOeCCm70*5 zLOj!t6ilLMo4h{QvMB~v;KBbK$2zT^=_fftYduq+)UZ^6EcfliEkT^8D*8G-tfH~Q z#az>Y$3cs6)9}W}`xTit;i}wJBnMW3@}rFriqp0sn6dKs4fJ@C3m6O~`c<*d4JGYn z_N0rng^pSONh9?R9K(s8nwiL#5k^?FGX`f>Tg+=`yuW5128h2C>e7%`m5rHU@K9R+RHM_+TS~#mvWqmPW>c8M9SDV5%J?B1K7)_>QS2+^oej=v}sKH&`TseoCS1-AiEIoFxBN4KVk}2uM zrmTi%x!=8lzRAveH*PNCxDvnR=WdBD&J9*ZL-bWr&u|)Q<>a-uQUe}#^p%CXGiGYS zzT0y)=xL~H(`VYuHTJvQ3f(K^nI{)4;LT+7#orpit<1+VpM@~*66ZZh-Kg*NKu6se z^wU&JyNlIYh7r`lwnPCy-3SDD#~B&@A_U-3@}`%xdN#F&87o3s6^gQDMRvtRfvrD)?JG#)7D*^os(sir~l`)bUem^iDX#rI539(~AJY1C4&n^cjc#nk~^!{#BZD$ultd z{UUZFs5ojy5!$0%Ev_F}nnWm(4&i67hqr>=HLsITLPXau2N*QHt|)t_L=hk!FG$j_ zAn?Na&R>Nux}D$QldXCPS|C`kp?gCh;a3H9n28ZkvrwyoeN4pmBx}^*Rs-&F&VFL< zHijN{vVu^Gr z{Y>RLc2!AjX!e$$a2<7=R%E2)I=W1SJjCEW+`+HK-UFmSZ76gpt)&s-Q~mHSNVrl; zEbiPXlk2}}(kPqS!0LyqeZIt4_N37VUlW8^-KtBt(x}?l8915l;X2DJ?CZl>{O*o| zenJuPJ;#)!oW^hvJkY|AEJZfdONx1{1~-U9mQ3T^%0~>PHZ@w@o1qYD~+i);lln zHOhp*BW)Ps7UCk3ROftUxN@1@POt;OL|Cq7Le4V;r1HDm$ z?bV-(6GMUT9_;9eI)GXH)+iJP0M}1VK+$?KZHsgnP)m5L40f9yTacy;g7(Y~q+o-Y zaTywsSRIk@R-Zbyx2>nd_+>{c!!sxx&!Dek-8wnx(m$8{hVYM=|L02dAvnYR;xpFo zf96n3|6$DkGh%;+|G(!4QPL71e?^gq4T;e$ehbmh9Vmspwb+?%sn z$c!oq?6!cp;}*rm`AGJmakW$an!<7r=wk^J6OOXrQZ!yC z?-#50rdO**l6v-K1s6%i3#A!U04CJL8Pd|hTj^m^dmi@1G$u^E$$uT=pZO{L0^02T zsvbk#zt?bHd5&bUT?IFdOWAP3)gA5RPen zv|5QnWsm4-K0P*{5x&M{Yr9^}4SBcE6)gz|HHKDUSo|{r={fDf&uco{dIV1gc}81=jUSqctb{K&0a)29SS6vfigL=ryQsNT^8=;p+5@c68aq3 zKcj)2N;PTwMDq0$4fB79MhM^l5VN*0_=mPEBP5}_zrzN6nAGu3#fx569pQGC1^H|W z*znEE5zIxK9`BgZa(f3Niz0zqqC*ku@V@_%mm_AL=N#vV42n|wIXPEPiI(ZLMb0`@ zZOJ{ieZ==56!manxdiCST-JMtLzbNnBn)$^=mSdn)DB8UrOX8J%k@c_!8L9NdnN0; zLPPKy5EPy6`Cl8|&7UP`MuW{ynblTPuUiKbmy=^z8 zhA8l7nH=O?SNbr78|gcF)5Bz-0)DpS@C4uRk@5keV!Z!6?<7r^XqBIX1p1u!f4eaK z%Rv8fzV|b_I2gJ({25!qBRQbI@S_Tyw1mS11-pPr=QE)Y$@hL|Kpb7UVhZJ1o4nB; zH`@FRE9^eeq~OX**TsbcH%<_U*(jM>_0aGz-X3|PcC zP9(i;SB2W*)3&E^I~x7<)AxH}TyX+jkw{_IyNpTP5B|%4nexF{Lr%C)3Z0*g_Y=tf z=keyhkWjX={O_~Q|I9*uM55 z=E2qx#G}EW@wo3iBc?4-Z{?3kW zihX4F>GK-G0>f&=DBVNP-Z>f+NRs&Lu<4Lx?%FAS70^dYvINQ$Qt@1RS=C}xBQQ7~ z@=yoCw1O!ooFiviDdK3fl;&!2TMrzIN?WA7Sr6_c0+$4Jl7POt1d0^WUz0ZVd+l4U zpa?6pgv?uXJMd14RsKAIUr)I+tJ+9&iWfI|%%7)z4}BbA9xuh(C{4E6)6Jym}=dzh1r)9aSEbZV?8N zE{HrL$Dx1fcQI4u+?6GYUP>}4Qwplf0zxhw`{O3Wr65Q88mLehQ*Ha{-s#fD(**~| z)78z2Gf=1+#n;FayF%2=91S73yKnndUmHR>rSRAsRt*MuY<{x24MvqIX~Jp{EjnO| zq?BK@9zIZuwr(egCMYmfHZ5#-$G`Lz3gfXEsF^SGPlR#ucdP~1gIp0ZJ9mq*w;C`1 z>eve!M9MO~nyeceKu@#b(ui&8e?OuW+-ie#!-=+eW9`w(TiVlHy=~lJ)!#9@i#p1i zb37GWuWrha!yFE@X5q#UD4BDHeIggzBaJ%V$Rfx2H5VT#16B0U2+6go|Cl83;!L^P z>2b{I1JkmjK*<(&7jCn66B*xmV5=30Ivq=799XM3WCxhUU{xk+DAR=<=?Ts(SYk*7 z7^(@wl0Cok2kB#4EB-yvpeiCd=T0eE?i zrzV3nR!s>pN0!CKi*&c7iF_BBhE&CDx2VQbuRdS zQnrApv5=v@sU^VTUuCVREsMgB$}^KdtE~c!hA59z`7Lh|tRtQdY`1700v4)OIx$Q8 z^nCjqbqnKZ8^r935b{svD^aWq3k*|eaFheU`DmK`M5_D2_=Jv52Qay=%m7}P>7Xg* z0+QelQCt*GPFpsAN%GpB*&&(Zq;4L#2S*28fgTVz1T64UYy_WE^o=d`z!5X2u5xOq z5hs`Mtd_!8qwp3qd-<(=ECnj}@=|D1P1qrxOX6K?KXGntrVauTt(($=nTkaj*!X+J0x+i;?S%^8~vu;*OZb<s3a8KSP8ySDe$lxYxqRK&(TO|q)3oD1OD3PDQ3g!1@^tj#%^{-^>I8q? zM9XR>b6%%K!#m7bG6Avydm~&^h85}}d46Z826>v8^!%D;$|qoU22+b5 z7IOgfJb>Om9#vI=gvL-jS0|_YWxgl>yfESxMNl}W<6riMjejW- zM*aWQyZC1YVr*#lZ}g7-SG^;k#r5X?UGRXG#s7oge+)>6nGc#KP5w>rv7F5|RQ@uk z%Yb8p0tcy``T#CYPWqy)@&I>OUzK+UjoR4M@oKIZ_k~Dcw9VLgV>WrwQsU~3f}VXf{!pvH__zg{fFSWJSFU{q_yi? zgq@FZ+Eq0Z+IN;=_5Tn&>E8s8`u}kDRZ(%S*|rdZOVB_;aCdiiclY4#?p`>--Q5Z9 z7Ti6!dvFb&TgmReea`MX?l^s3>*0T>vF2Pd=UU%C10L?LfFI;E9s&it40BY|?||Q1 zSii&MPF{+S0R=oIYRBpCfafeXgfROP@aH)0{wTohn=k-SjsO(!yqGwMu@_!l0io{3 z1VKZVZJ!CEZK*0i<~k_K%rFLqC=^6yC{spE1DO!Uj12Sh?v0e~N(ivy}%V# z#X{}!Z@D(^zTt~1(n~^JsDeE zHl&u>_|#5BG|JM26Fs#DLnpfBkm!6Kg-h)Qn&Don)HA(Q$*)ui>sup(*$*r(tK_sa zj`yq7c!XW)o8miQHk-o5?@2MABgaXK_#;m8*n?;sh|7sz`xR!E?EYB-{Z+a=@LFuG zfC4@NMDPOt8Nu7xS(_Nx{w>P6>BRt_LJFKDK1S5%4 zo&Ew22x79OfFUd+K#&zg1Lk85%0f2Vb4P$SD28-HzI)xZ)NBQSg)$P2mqsxHJ^)st z;?LXGsh`p}bZ4uCekR(awAeDTm_U}oDoBUtDguwzfcqG&X4nXEjB`w#4nTW-!vI04 zW$Da3LMtsEb;`q5=9)w4;QqR%yp)g5L+H<7i5>aJOi?C??Uf#)?Mf7$7dD4g6;t0#i5CYnK#)sr_MaF`~+k3xkZenL@79?bA;T!s=&&llM%n16oowINl4)He+8t z5%oH`4lue8qMuoo(ehE68%I^Rzn`7{&WX)DgO`Ez5TKUkiEU`kMLw2 z0oh4i#VN2Y)4vhWugb~MM>6J9`H9NaWhKlN0D%3C)EtcwaOM9|tfkfP*W5 ze9r9)D$kLsJa{r01al)B)ZY7RjM{wsB)uy6B2qUG|v^|2(}l#HtD8FCuul z1j}qI77a{VCr>|-A4TL~4oAei86x0~7c9Z(cH-sT0P2A$o6~lrA}3otNPD{Tege=Q zGx+9Vl+PUX4}ck35tzJs+2Prbg_lF=pUQIz8b{IgkoDT>HHDzLf~=X*iSu_L7+o;U z*iqJdIdi%V+JOyMFcvSdEONZZ*Uy5)l4gM{n2E?Io6xJ1zM}39pD}0gesn#{pkm-X zMQ*`7@*dsIU{#~B2jVf`K1QJaJyD>&Kz|(v;l>e!oByv=X7taZ-iiLN)qfl?dvcs@<;pTSWPmHHwpBqZ%i5`^7nUpjld*Gph?&Jmvz+ z>1TO230$WPUrH0UMG0A5*R1Ofd)oHlX{XJ{tMU#VQ1V#+4dMMg7pPYgYL*`e$p%V+fn`Eqgq7|Hvr(nq}Z`G_Yn zKJS%*V9Qsi|!$9F0Zk~B%8C+1^X$xloO-A1E0Q0$rSln2b zWX^3@6*+H(^>xTgBmh{vVw)GUWk)48QXz@xDcNLrL&#+Yub0SnvWT#_+rTU85QDCq za4f1*@})Vv%R?%TUg*YSSU*_p)|91bMy@1nMrW}-@`zk3*gjye^uwTioLCjMzjVv# zoNn&|!6U{iXifV3;u*mN`VN0uuwv;03)wtx=9r(LHN2wG(J61@@JFKUFRa+AMs+Ys1&#LG7SdwTH`sSF|oor+5b zUAgD-v%@Zvtf$xc^cdQp5R>@8DFzFnROMl?ATA{vDh6as z*wmTSYrC;4Y;YF%!aTh5*@d4^OCF7Sk}`Wyh&i-vvd94D*_hV-Ja0YRcAMfoB>VOD z^BEs(ur|F%)w^;F4N@64_|oE?!5-StP$P#Y1FadeLr3_OVM})I6)@2ouMZOzodK=S z8esrwt)KSsp$@_+RsCx$!RqR@iDLP>;$>1GDWn_V$t9uP)-r^DhcZDsNu_HPx7zEQ z0f%1fP9?h8jgn0~A>Xh5>+)~R&cGv#KBkTegl%WjIKuemu|Psi1{%f6MX7I^Tcimj zTD{*}TZeIlyP&^?sk7<;r6Jd=O*+eUYg9Uinr@~is#~*(-DxXUzY}jGhiA|_EKb*> z(st95BnMAcZDr+=cYa}WQU`j}NzEi;yRA{N1ALdN-0B;Mob9d`5P(^owlJaGo(s9W z(?5*(-}QwQ#Lf8Li7^1f3k+v9 z7pqKHd}Z)aP2?`G1rwaTxF@q&8YiN5+j+fB-+cm(iIW>1HT)>%-1mr4Ecc=<5qFSK zXJXTe*zUZ2+n346hO64gl53_zx3L?n*4{s6)vfdd+B~KomYyEIuB0)(Y^= z)~I?1!2*?QoJJU03X~drimVJ<^Y%EJ3U;*Dlo`XGuNez>z@b#^6ID7wz=5_Fd~_2- z8JM9Fk*NxKyLjNg?m7dR8uMf_PsK{;&|xsfN=r+3y50#7z~Mnvzgxmp4`NWACkcYg z*xo_0g9lcBw=~4!4y)Iti>EyW$cp+h!rp`ukkj5N>Mw=N-KyZgxnojdmz6k>G588}j}u~xi~EMu1uQWm%+S1j zh}YVIh;tG7#^2n3bZ>Oa`tqJ}@3ivEc&r#%Sd-Wc5lgWcTdrjm zj{7cUn^sy3hEb zT3GU$kQ>ZEZTAd!vCAXR59wQ)5cZj89XYY4X>mV9HhUo{ ztymy3d8iKwfG7;NPzQ}N^ygK;mqcQa1dLna>>UOljGn-bAW5Rc$N^>Z0J(JYO*%M* z0wqoskQgqDq$l0{vqBOG6zQIky?c5Xh#d-qC5q(BSu7-!I% zc!$(1Z{fghN==g#nq&^X5;$)#cVIEK#l^;&v}3?lpvnY%kBVE6;&hv=yGf^Jz+9~I z?$>RUqOLec8}r>0Vf(bm*5EDD40i%N!)`*8w2CPcPgax6mbBC)wm697G*WYlmddmU zK$2aI&aWtPQcWYioat-E=v1Dvh+%FiuCfXuT^vWOOO7AZL>;jRNs@@79d00P1#OHX zF3v-~W1k2-7K8NeBOZJAmYPIZ)6}BLfLi3e@-+pk#vi-cnYOudnXFqq#Mf(5UXhe2L`Fh;lNhtP}1~_9vil#5+gvicS zz^jU0F>I7e&ErOO0Dd8o3O1enHtXk~s~ZgtnxAv^;=Udgrog3XjmzSosl*nl*0~r> z-md(T+8pEr2D3tbK}Lh=q$?Eol_&Y_I?6QKdSJMTR$CCs1Cp3v?p*e%wV}nGG68mC zN`C)FIfgkKffvKPro^MNR&3oi*JDMa(%}GB@7ue2J0m>KdOKF{UqoZJW#4V;8`m9_|F=se^*SxWIhnxs2{ye(rgijFb_cAF)=Op<56J}(*^_(njt&Aui+lbDf zs0pIs4F*=64n4OhMt4fvO*9OJ8Lb|%$=T4NT9L{0xAW{IWV?@ED86|?ub1Iw$|X67 zoh=V)DrK*W*#Ug$JDmj^6n2zFnD@XrXeN;@=#(OXk~m~%6mfXPo3I~FRRb9Xp3#e8 z*(C>Sji6NwRpzPjk|_8pm0CsFtc%=Le8qpUP1-DA9B9cJBnFwoJ#LWs z#PWv~R?xO#`-0bEYzEMas=S)8bl(y=ET_j%dioPh?!=I*GKxzm@~+%|NC`E6`!8qi zev6IU{^2YQpsq#_)Yb6+N7DciI~POizY}Jb3P{0FKz@_UU}F)}qT14>Q?sUI+ro{6 zL3b}70AQJ3j<6Kke3fOu49>~_)76;y&j5U!2l4k?$YHhMkzzbJ+7DNGH_w;X6E67q ze83fYI)XEXBZkAVl8^=UgwTyp+Z?C`O+~+PkfCx!uIjcB$8}Jnc+2jIfNN&+ay5>%@b!T zO*Wa%oyPLE&ip5y(*C0=MOa2OKeJr*!m}zTe6&ewEpD%0$&` z;?bVNMAWO=h-t^V1B$SXCBmf$Z=k+r@Ze|&$KK`t)SFI~e=N@viK_7|1W(Z>) zt1hM8cxgN5Tfh~sy3sOqBEPG@C}gV!x*<&$gc4R(@@hZyp&}q4hP;g`XUIWobI5sP z570IqA4@mRnK8hq^&|5x*?Jx#=yt%8c=hlHu>3%;>TFP!V2ZDuf#}~%Ko!KVa=@3# z%~9jD@A1&NJf_=Ga({q)r6(d8y2d9sFF2uvl92WmW}?O28D9}6aYZ2ywzeaHYe&w% z;4&Qcje7GZkLqn4^BsLxy=94I6HoFpV*dl-h0Ao|in(F8xnTdoGMe=?I6}P=|H#xnX4XZ{@R2_srOjp!v{Whr0i&AL`!< zBU~v&sd+%YaW92@_N3r)JUxrb+(a~39$EI8Y)$qU2tqb zR`@4qCRPaZT9SXfiz8~(;)As8urI`IgaA(79_?z zs*FLJ7!D+*^?@YR5_Mg87(PepjG-RDt6w(6edFEwS+ujTi=CXcR{3GgD*l3W%W?sW zB8OwZpX2trdTjl%g;SQMKQ(!ExO;IrU@cr;ABlwXT{O%Iq845BT(pM+6;Tr?>~1XA zHR!VVnS851JslS{%|V!%qahNkf?p*J7tqbDh;m2M5aR&&L~bEC37zM#?|QL3%~f&0 zTY|^<)-iMt>ADN~BaoNl#>I!B&AmePt_?R)N17}$s@yTf@&h7OyUYZwarmwS>iTXP}W3h^ug0vxzJcb1e_foV66Fn zL2loTgBJ>mbUn(TuEV{G8YaGguU*fOD1o~9^7)VYGh2UC1Civ6>03Z(&;X&~e`?YA z3k@J? zm~tRIT!Zk?0vZv|Sb#>v0N|y)XOiIP>PaS{9s{i&s5xKLoRL-)iicdCuBd1;if{pw z(i?CFkii3W=Q<*E>D4=$n{HMXTy>_lJ!P4#tunar+;pl6+l%w!zP>PuDWMBD2eJwe zT~gK_rx1;ve}q(K`_$fa%2}*xie>F;g%*9{iH z^Q{HlX44|TjwSQckgE!hken#$oFT}YTpIxZ!9kHRk`n|6i6DXzxOnSne5$AE8bdq} zVE8X;qQ28^{7mYZ7+d!n!vzr(yAiOU4g+q{PO=|*2OG@iZJue7A0=~CMOtgTgr(bT%3*|z3?I8QtJS0mXK)Ehb&w!gJz-AgH)a^brmE`xw~6 zp5}8s2oVbZ@fcXf&erVTA@SSr@sIR?aXC2=k!T39fgHI8$Fs15fWZ70*{$?1MKY^d0a8#OF3hNX%u zBqoSu1P2nw#a7b;9c23LQGRmS>k~c;5I*EZi8GM_+M?6X+sbHt#N`*9E8?k^)I#zq z2#{q7wDjEfuna4_lGXRKEf_>fWXEnzvAz)>yFgLe**OB;dmG$q73m$!Wa$@RBtKdU z*HoRvP<{uc2USpdpu%$1y(xDs04=}#Ne?c(p(idAU#oD>-Par%fKVbMzvqoi-80iMZ`uKRAnrty&fuVGm|$r==_+aqu8v5>N?$C9>~t&;Wj; zK@JXcCF?Vmkk+N{{jQaZrN`zjF+eObwqHWB4qu^4MH&y;0Wa!0@()F{1>qX=bQ4A zDdytr9gww_d11}_Qv@kCC8di4jp{8wquQ(Ww)2H&&DM>lG%;K7_EtqQrUbQC-Mji@ z&F#=Fq2Ai^7T4ISbE8EtN4Y(#deuh}%A8h2gGUWwv(3pnt$|32-gUajIU>w$gxKvC zMR6v^#0BDEzPXYxyewiq3_v~Xg<=ShV?*8zV==Ig{`dn55qI(<%p)@H#k73=l3Rbm zC?lPch=}<}EqCp|DiZqfY;M5mseSGV&R*CF*I-?191e zUej#VX?O6KOZc=05zk1`DyDOdEUph}2&zlvDvzwY56Z2C@9Eh9;zGAII#N-^vx^9# zi5n|KU)FKrjL&*-)b>UL6W{>YTWW(pMxJ=Rw!6N|cDxThmB;p4&#cs!-N9V;2?#w$ zolm(opL13_UEpgjb|PhiSD#uSh(KYKmp+7T=}}p+v`%T3W8hHt0pVl_94DxScLHk$ zOoTDTL7V?>|H@6+WFC`uBpK6L6;h2+m>(H#db6KIK8qluAWJwqE~m^F;#mqF;>Nh1 ztHqyZ*;~n9xdFP$hNd`_eHdrY$%@|~E$6c-pF9CNix6d*6v}+Le?A#sbP@Uq;zH`) znbypb_@ICdK3Si>B>Zr!F4-BWR?bY%!rm~HoZrS2nkE{D0Ig z|03!X$16HaYNZH7cgTo8eQg@k_*R0&Qd2KmFNx>_&r1K zg8QAC^3)gqp>0PTGszqxv=@6|wCh#7+gTqbRh+eewC!||w$1iO+g1c=+czdAUldUb zKumoK@D!69k?lhEaBZf@QgS@i>II40;|yz`R=}7?$jpmcK!poxuw=xvA5}VEmm&*r z^)MD!ovwkomto#Bwz<=!-PVTY49k1$kGM_V3;DZnSw-A^Ivs{HVMyYKXfU?{RS* z_F*u;^Ak3OQV=@df2?bOrhMrl4gGO=WOezTGuUk+g=U+}_Wg44a73xZ511dm@UmuT zvU}{Z??F1cy1!}kw?Dq^ z-e7`>j#spVWCnHw!eXGHtB5d`n2s{l2XjYVpWRG)xd@gmOQM`KKmK*H8GGY^;TG$>*3?+r3`*@Wq1HH`hq zXR^JqRB6c+&FL819Xm--9P`?3 zrREMM?024s@Q9f9YlAHbMwD?_AT%Fr}2q zf-NUdgR#gojTwVNiVpGv3r{~q->}C#LSMJ=XcPXej7ku}P%SRvmrD&{Z23L=ID@bC zbp#NIl(#^0#ry&O8I-6$!Zjx_iKaaH|8_B*F!)x$!pPfOfrZzO2L0D*1qUpnRg)eiF22bS>9{(~(SGM{6`XkmItb?%$>1sMlvNp^8+-6!JyFSD2~_FVE{0E&c+Tds!U^ti-rdK?0$$h!JI#aI}akMM4pqxgM@n;Bxs*J7o_of7;7S2_PZ z+9zk7l72rGh60NA|7@!HSG51VFj1COMiWH#NvH{NVI+i7QF)J$>TlY6fhB^zkG=~Y zN!4MKOsFa2YVQ_!8QI}3P=zX0aciE$KU!y2Z*JN9%@Jvi*{*G~<2)N=%f3+uBc%bk zR87C@A`V~_!6D#ieog#k6QvVux%|`CK#-nX*Q?qv{u!+Oj@H~ zB5pr5_cCaxrj{`{Nj|DzJ*m6uF7M6O0+eoIPKF_Y?s+XB=PD|wVbyif(K~54S@SYj z&<-}P_|~LVk$hO{14Cv!cLktQ)ozeoM$Zyc?n2q1-dwvX8meltfOpIAiudZ$Z1x^v zYi~ev%-&Lj2F>XydLbMMT z!i{kdw5UtjcZ8pk4wIRE8C{)l2s_oon}~?8)0JKaB}Y6Ft0+i{q4EQc!5(0QO$Bvu zCD0cb5K6(E_^Uk}A@UdAbEzD8GA(|E?gvq>c)p+}!jAL>H6J_s$EfG71qBlt^egh;tV{DDy6FZAOhR5;6~Z^G;(TX%vGFlEsk@Pks=$nt&%2j}g;cu|PEyr}U{m z-c_=apK+e@kywr_CGYIPgjsNOp%Hei1>BGh`?j!sp0JkV(mqUg5oeuo3;bFUH@Ax; z+C#f_Lm8Cm;aH1?11wmQAgA^~>L9d^87HYb9-zsciJCj|vW#r9Na}nukEQ3u;W|l5 z&Ef-Ft?(7}j)p;dmhgp7MMcMWj_gM-;)@9fo7jPKAg&}7=2KvK{2QZ}Q(FoWf#Q1{ zWVDd_j~HFW9Q3A}v9f`wiLwRg)Pc!w;Zw}c(Z=8(yEIj5+RDo6=x=hUjs$ojptX^0 zcZ&cWnTqdfDk7qEY$7ZlMQ!eoUE>QzBoFpPO6LG(T6cN$KF1I9C0!5YS?`!lw9I}4 zF~5R-`cV3MFV_N-$DDP{P}w-8W#zZ2WmVI;{iWOQ5wQn_gYdy25B8a{ayNgTSSd=1 zk!-*{Y)1)Z;z6Yv)sdADR}wd+$V7=qXU0KQTxzHhS<4|0B}bAM;~SDrN(Bz#X@5gh zN7=3#n(gilGS^i|3^#U^%nYrD-l&rec|{(p!<6Ueft%!nXmy(smWHL6vt>2kI*sv? z(@>!xwrT_I-gN!?_fk5ROHLJVTj3t`eAXU@BE4vZ%X!CZ5Mz_t%pSJp6e?J^bi4a$ zUPQD(K_#U71XoXN5BDbi`TCzhc-H?S(I^e%5TJ9!=sov87V&a43OW zpHaux#8XyI*S!@{8fP3(sog0a2&0uRG&_02i!+CM61c)c`f7tC-rw_l#5x^~2SJ8} z#X&JZ&S60i^8o>2r!rvoVYr9z)AwmLdR_=&CSRyz;JF{Yj_{#Y&qBoRGGy)Ka@Upj zq&gE|+mfRdX*_dm`LWJyQnN!^?)x5CT5_602!oA0y38tLXC}iwD-*N~gvB^E@-Wu0 z)J$k5xc0$HtJ?VB;BkxD7T+~fN3OxcFDzHNN$l;yPa`f#&(HI!iL4H6l}eHv_1O8^ z@~6dQBO?=Vc0!3`YRN`3-_?JvqneOZrY|Daa9> zSTLoc;#)}(%Y#}boigjGDoxc3GHsWHG4WO4Uc+8d+^im=WhXaw z&r>hr$Dk*9!f7A9Hn#Z%t^AX}v>vP~o&~dsWsL7>KA62PCig92+8{u^A5q>3eWOmt z{QLm@^M?3=*cF&|?Mn8rRKx4{Odj2ZkDQc&IdlDTraxkGnyDv7E$^mowMyhV^l?V6 zF^pGw=~?RA7_T_mwncdljYWP<4lxUISeNNU9J_h)`*8c#R@dyATK!^kBUpX9y5R6ooy3weZ76kzSjL%}981ca`=qNiNZ zl3n3eZ+R7}(0{2XCR<_5Jur=OFB#rC%>HPIt9)};`Te+LywdV!#I1!*U)~Z8U;DV6 z>c0Baq6$1trO^zx?rG5Y*5!0TTIlGLx<`N~>|DE+F*!ZDebxrfbq>yHpDfZHEt!`# z=~^`uZ^U&!s~xN^y_#g;sE;@}_QEuF?x5ai>CLad zwVGy(=r|joYNHRt#{b!nTvbWt@1=%{EJ#2_=dGbd43@Bf4=aVyh<(Sl1)WRq4stD# zi+EIKy=Yr8&?ZnaVjr{BA%F`aYW!&S_dL)?(qB%{;B?1l?Tga|FQ-qpuirBgK@cX> zpuN73SRfT~umiwAW;kqD5Ps$AE8vUq3jSDXe`2r&pei-?QskR5z$P`0fqEMtEJSY= zld$sLwJ~vIeLh2-6X-6twoqr9JYRV^#n4cBmUjNp4Ka(5%PJMfJ%o%WSHmn)_Z`YC zY#$-vup)`5S>I}aNfVV*dU5n5-6qWIb5x5qu#X{Yt}5b(t>(gP@^f$9Ca2|ugH5%n z$~u!<>zU)KVr06}5fy6^Z>=JAU3FS-R-Vy=PW^Fn{^$l0MgqG{Mcu&)P}2~r{KH)| z^D)=l*bdvGE>#aj{gfLr`Hyn7jfPXW&0M}@E3Qok#IeG!40qH(9%w0q#|9<@J*AuA z4F#J(gWQ?8<~588OWS#M#DzhNYSs$N6Yl}!sKJxR5f~U)C%9~*u)!9DxV)bTJf;7`{M4W@(^Hrv$!_M~ILZMdk)jRewenMy-QO{`%>G=YWUx?kz(CSXM#N zi$9$gJSQ_V1=qLt3pU)~?MFDg=(TxUJB6(aaxIi6fFzxvMm6|eYE5@PrXZ;$*5ZjM z%UO@)!;^F)dwD#`z@~a*-CQi1xtc^*`-X3E>MhsPF=^ObeeX0)7v32zayLxYQNpZe zmMzs;)O~RrsQ;WJ47SxO$iBk1oi2X>KkAkJaQ@L2dc?!iSE%7EKZo^ zae+ug;E29JBs|{>>%J1U5Ech~5rG&Fyx?CWntxx${Qn*YGy12f>O^n!f6r3=*OM~8 zkGJ8?!3Z>g)-lIHuMjK#59^`-`n7*9X8!B&)!(4mss5;r1}cll-b2Ng2?(G!Mnu3F zfG#acSw#y{VGsr8m+AsX;G@WxotaP?yc#RkG21U9ZT#w*0_UB6*xhBmDe`t+Odz9% zA#?Kbavn}-pSN$irMPX5ZT@-zotRO3+372Aml@n;%D(J{SO_ITc>W5j1^9uoi?}Ph zCO!dk5uGe_7&PabDfsOR3BpFI_gpHz{I?x=N`C7?52xf0L$9eloEzLzC^_+04N+#s zJSTnF=0)x?emRHI^p_ive3gTc08En(l3f!(jRb{cxslO${Pc7|+DI&~WwE%}nZq1c z0-S82b!6E{EHUa2j2t9bU)sE4rOxxg18zGNw6=6OQPU!e`kI7jO&MjIj|pFu%;8p> ziawOse8)8cRt>pSvrRi`@m2s)%NbFzb6t#r+3YZ{@7`s`24Y9Vv!{(D^;X1DrXBUR1cquQ6 z{;?Md&geBh%efs`dEsJ@wr9??V2aj6pr6df6h%k(*;Vhww|Ee4fS)TUq3?4SeAp}p zd&R2hNW07Iw*$I~Rw7ClL9*B{Rh67SNKdt>7`cSL8FQ_1CyOZwQAQiaOws+iFvz?} z=?J)6IUGEiPS$vLaUSjBA+^-$T+Z{^Vl3a0%0SaLE=eIT4k=^eBP49b^?ZkSlVpRB z@OPo+xH{GHWh(W0KOrNdjyXp0Fnh6i5sf(wswCRIFSRY{a!cZ$LOBO~kkZof(@Fxp z$X1*J`i15j+Q%DE#-Ofc8WiL38Rn7)+nn{3PCimZSLqZ)sbh2ijY!(C{DT|oi4>J# zT-mXab49Z3LOK6(1#!;SHR^@a|pq9%1(#Nakt8d*bx1%+dK(FuYV^<;Icu`TLUe(IG~X_GxwBs%*Wl%NCiP;u zo@X;4H&A!JXLTZEeN=>a;7BuWda6EE+9=K_hw!Tn<$iiK2VAj<_<*vwso3~&Qv3j& zuc~mDQ>T#yCPIz#q-Uy-2RgmUFxEOCcYussZP316m)sM+fiw-d7Gbi z+If)9%X{UFle9TSwP9~K6)NI$7sW=vxHWlt`~u`+w%upoIZ&f!0%W?%hb452^i-REckz`PF_lk6&zu;!_c%OaaTL z8~Vw*D@JL9`Z?)_g=eTQ|-SE^k zx_OEi{{rCJ6&N1+Ca=2$haLU5>N+cy>)Gb+W40Boz=TWPpkHjG5Tl47rxebMx`Gh% zoW?;f%P6mTnplX4s9yoHZMw+*sg~0m%R6SGdSG>k%o$$5s=)ABSZ;zZbS-}9)z{CT zoHdLQE{6Ex<3(x`_IUCaMQ24xJiylJeoUP64Mwl}Y%i z7?(HDJ{9IC+&6<2T*70ih-<=8WcuUFRg3aXA4KNm3VF8 ztisAI>|b3`Pt2QQ_!2ZWnL-eoKWdYI^i3>ySJB^$h@*?64qJjad+MNtO9Ui0zat4b zNc`%A!&uqRRp;sd&>Xpe5?A8`h9*fSK4k%Nd_|ItA%v))Ci|9HOpUxTsVN%D?2J&z7l zrZysgQtG&l)Ky0l$MOYQyAoeQ-w)Uy{u+?njXSyOhT=JCt+oP{jwK9qx0Z&d_6Rl&wK9{fK?9IdL z{K^uCFiW#sw1GQ$0K;wRKmvG394$0a7N*?i^(GRf=X(YKk#hcC_@@sd*@Rc`79vK4 z>kcG-6kuAR>w99fjyaTkq!u>wh9JfmeAq%P+j~WYZL?b?2vXe3*56|5D~PtDH^Y>i zxH_Esy0#}e>+jVXC|Z`G{M{;>6w%%Lw{#(n&mCY0%nU%K)2 zdRdll{lQcf!)kWn+&Iket@T7HXF-V-apH6H{c5 z*cRVuAoc^KiCol%#sW;p=U6L@FDQq&F>A$A4Xl4=0=_YAs~p(iESb>gBRXgfHw+xA zbkS>Es~j!qtPkx`q49=|6i@Y-k#W>PIg(u?li3>eihwt`aDB(6KsXkq(_*n73XZM} zC;BMMVUL(7vle3ZEv1j8Dk>tJba}1M2kpaUYdG`6x1JQTu6Swu9V@iWEp3p0#Z`|{ zXN6H9dC-GSV!;MyTB{kI*T!=!r;-XMVr)0h%LhnqD;;cX(_td`K5gaT+|r&8L5US; zj?^a*G~?WdyPO}vRyFEvW;PjlV(%vI&*LNkX(@kZ`ZJ*e@?5?>TLOcI`vNvps`^N+ zKe3&py{@S|&-Z6{4m9HI0tLPo`y%d0@6F?3;WMzKfTFE}l#9VlI*O%$mYMoInO1(U zrnI7rm~Uyz(XzmUvRT6sx6P>njdjzLKxNeYL=?9+(e=fj`aCY%cTxA?m)GXM3 z@Ff+_n)IFQbCsiZ4AuOiH!_A8v?YT2drTuwoE!fVG*hZs`n4CPO=c8~+tS$==JJ`mdlUPKJy zV^z={Ows=Z9}8JHE1UdXtS(a1RK^iUeuKiL?qB&F7zPP4n3C@#W-V>`8x4I9au9Ik z5Ft1ug0e7J9%!dVI*b{4g?FETr}warr|QY08qqGlj@^tqeDUYtEx-t?cqgLDUC+Ee z_v*9GTlKn|lj8?I9bwlev6UV845#;@04B)bfdO5N78t1*6o(vdkS;zji32x?9u=Br z$PtCwK?!W`zqVoQAO^ZgU*fS4VyQ7G2BMP*ZyAU%kOCX9m<*0mKXNg{Awbr{$pA+a z^El;R8`x?V%yidFFJ{*X&zUlRV0t+SGtXVw=FN>L@H7~=0nUF=0=HP#=hsgVx-^92 zdpB)l9f7mH>wDp+r|+9X8)1W7N1v+_O-Wd_F|F+8E=-+6w@v*<)1%t~)ESd4@X5Tp z{g}9m2P@V*CTTZouB~U&6$Y1y723sUQ+X$o@UY4pMQI!9c|=XnE`2Tb%`D=2NtzR` zOzFLsr3x1t{VZu0JXn#o0~beY-%nM<$mxU~-R8eT`U^8+4L`CvGs`OIb{)A!q%vk@ z^T8DvnVcm?E#Rq;=*DJat;B@Jx|cZ00jlvZ>3UNy;rbvbBL<{H6HQBs-w)40qQgL? z9mS(6@**9YezD~?4pvl)s6S8>N;VQFVIOWB=>z(aT$qW!yN`4cU?+bhnyD>%EErk~ z8klzQHlFQFV5N{5sAlbxea-V%(nbEMV;p)TDi0XqR4`jKX zha5zD`LbMVfEJQbLyyRDwTeP$YTaoto3tiENh@~`uDEn$;vn|Dw3l%=YJu;^y$^Ni z+owvGbSX!DfGG7NhvNS(IAn49k`ayzjqeo zGfy!)yZEW`gWMQIJW=53UQlMg$5U}BWS^#|(9YAe4)hiLG|oCDHvKe}95Y&b^a;$H z0KKSt_F(QB%@90GIVWWQv;ea(ae7A|>{B9Terx%$I7N3s15ZQ1PHj$ZC6NTT6^vi^ zn4ySP<#^ULO+>RPY%J((OsZqkFS0D;iIL(>h1u=RV6LVZG+c0f?dip0k;GCzMDlK7 zt9g7v@gnNd==bXOOxP4wdcw;TgqO{b1>l4{tZkKF7fSrt#38IG`~uA)zE0eV?m&yc z>SIVL%4SX}Ok2We(i(6^rob+{7k#Ris$EDd>!ixRO62qj*9t^1fA&z|O99g`*nk#Vv^#S02Ms zl?n2nXb&ADb;AfcLnawkuL!tk=aLE`OjYu|R_tGW?4`0O20f-cBCx0!n-RW(@s2J` zhunjim)#r}8L2s}VOMo6QDjB3U7Cy}#y0SRSeo_yGaCwQIGIe{w?GQJH88KWZrDwY zIqa7cm=~(EhY{f!a7dIwku|{_b$7Qb?1|P0lcN-Cs5i)eRmH!(LMX()cwa#STwZ7} zFp2*K3;*6+7W{uy#znukVg9mr!o*oo5^Y?~DiP=*#}P#cidG%L>=4LH4>$C(fJ{Rk z-}!s#F9)FSz@f4nyzfEoe{13W1BCA>yzOQ`y*J$^&zEz$yL_P;!Ym-gW0j}B1lVI) z2Lq+^F6yH60P5(&Ei1uq@i}I;!k*R#_mTu6o8D-)<2arZ8Wuk0gW@AKfsTh8#=xEwUm-PMI zg?Md1nb4(ug`n8xV`=^~`txV3YI(rEmC6W~*pH-U-}DGxZ51ngsICzdB{&J^^Q*FlG`mQQX|8;Pkx~-_*IWq|{~t)c{6RwuU+b zv}?(Xc{@mLsz<5D=C27@;lzOqJJnHMROd!ggAgF9k`M*|0yuy1qdzmOOpZ6$Vrbze z(7JcV;^i2_(U&*BNpS)SOAdO*;k8TCVLAHEbn>DO`RmaXSW1EMnNA zc^`u7;>?mT!Fw*r3*X(s3J2LiIjvQvdSR8b$JIbQYTlCIM6mA7S9cJb1B-jA){#gv zN9c|?Ad>jZfTmBKq;E)3#gYhTEMy_|khm=63lI`{2{gjkx{8-9 zSut_E$*Tg^xRgv+^s#KQ8lf~k{^-A2plfvriYpXR3^}+XYzg+c}!Cr-y$FaV!#Owxd$?uZL{U6faDZKLUOZTmc zDzG-lzBJU!RNaeV*rgy{^`r?;P(KV-<;R|JEn zV#PHbR5)Wxd2Jb6f-#C zGJj()CA?~GLGRQcZ1m@sN$I}f+>`=kCt0)GOpH=%j@j8MFsI&qIgG8!s-a|_@7rP8 zv3C0CR;){qa(6Z}q%DZ`17dHaO)&@Hq*l z-SyW>R3TRD*&xWfuX8c-s5NjP{lT)i_G5ZbeOjlBP^ zEeYml1lUNB+Z9jd=0y3K2Siloz7F7ZNgTlkENKM|UTQ5$4+|n5&(ce1D4fS;E~tSG zAB|mRaSM~2cQ(t6$08+kx0#VMj4h@WUAfRBULjamue4+qd_hs4&bs@XL5y(vssdjN z9ir3DcX38DTgK4{zchVC!RxXJVsmgE3I_F+yF8`D{_Xf?O$<>WBa53*X9-Eiu69llJt+4DIeP(StK zekMsV&7bZail(-rQ{0JeHfg-X7eY4*hpf3}amoT!uLPbAPhD(v!In0QMQ22h;mTi5 z*1gtosc6pvVVIe=_AVD4u8KN5dPUW`XX6@?6ZcZ3@5nvSE22qQKdE^k^Lu!mY62SMd%5!3tQm&$DhVEGmR;BpD3 z)V|#mZi;LH8ytk0n+a>t=qTJ}xAVcew(%w+D&sEP74t9JrJu4{i3n5oui8aRc|||w z0Qs~W{=HlN5%*y4pM6;kjkN%VXnSo3~gxa(1gSc%eNCO`|HDDt(oltb`WFhufeik0?L{O ziOYDVz!)7*J+#zhG*rE$%-s+z4$Qi`UpX~thI=@9R2?0=47wYb?8}^sxab>kRPJa3 z3zIO$S|a%kBwdTX&UQM(m~SRmhaQTx|?~MMA*-dlv8HE#jhK zVRXd{`V)}RHZ~r9@lLo4ryR~2Q{h${UdnQfnOiE8L+R5$P-$rxGhLa|VLN(GV#sih z`P!j7TAADd7%$_CdRt*XJI7Qi+@)Wbfeabz9`!36p>CYKJuu%&Ok5!sV{&Ga=zl)2 zlg$~+^{F$O1+pyQXNaKr=+5f1{G-_{jk>6N7n$3Th3Q6mM(c*6vp(Y|K5V~FYnxTlC-DMbAw}^rqa!SWrc;;vsg6#v z=QJGq<(52K?7=?Lb81I3$cCQmgiM{)U|xI6g9WKt7jqQXw?+aS141nFP3!(BlR3o1 zrYj;kc4pF6UAFL$Tn3z(**8NGo*y%_7ZyTSocO8F+_Ln#>!4BrnPH4ld_&mb% zf>aVl#P{&KPIa<;xw03DEz28=BB1P@*uN%p6nwj`kD- z5n^k1+Hz=iXg15M20V&B=xaBD4_}i?I*d3%!E9ucfuYSkNLl@He;NMDzgl{d$welt z9pTqbr)Rgi9dBI=9&ODEeY~&XeSx}dA-9ZY`^80^VBMQeZki@X8WW6v!FkcQ3Nc0T z%0Q_SOh)4fb}y3^My2!z20|uj7h7989~?_ndteZqaM0@DMh84Mu~di&Nid}cOZA16 zP-z!NUp61kD8bJtrQx^qnwHuNZWp7?_OE^}wHM4ThA^tbI~pE8U0R=^9xr%*EitVc z>({_*9lPE$hHsvAUK@9CYD*meg~Wt38r>;R+#TSXqq%;7!Kn|i+3j-HvqdC z`ENOw6A0HCv&ckl_Y2E{HhiRdjFYg};^BE_bCWuQIO7e6yre@vgD>r{Tbs7B&gr3< zkaMPO>Zo0VE_nk1*h7vNGYI7yu*?YHb}VB3*=IM_!eo}?L1`m!RJGG9s;a}2lD5)> z$oDxTIzc0LC*3jAva({7s^p!8sifhRf)XA);}Q0YwZ+#Z z-OU*rMfjbosWpxXKXd;Sk%+T;m>q}6Z$MURTV|Y^ye`x>{FYg@Q%%*we70Vh z1;%^)6mwi1CDNaW@X;ATKMv^FpQp`5TCJyctYC2bsTvY=o$iepXT9>Ih|2L$RcmfA z=q{WElg>Z=DDO`+oeo4wJ*<^N{G;$-_9OCeROA%2)N-2UjU9*Wy)}SzBbIoXte<(_ zs{WJZh73(;NJ;)L`gC1bb!{zD7TT+HR#2`DuyAUXGBDN%`=vO-A@P#0G9KGKP6{0%+c+Y|tB zv-*Y+Ivn?uRBv-{Ds*UUSao)x%O&txku*b+pxzx_)9%wc6P( zomCp9N94yKGs}NF1Fc@;!gi^XH`9U{EzrzN$9O5~-lFn^D=Q)rV9&SiWR_0FiZmr( z$Fcg6)7haEaQ8#x2gyQA46*i;MoSvzLdPkTCx(9l;QUVV*1meb+y;?=ORc=s_*F+^ zc0cxQp}kZWW}f_a8^?A7uOieWmj5&QrIdsq?AjD%OotBesiyR2-SA7$A*9YD=KSdc zS$#%Rd6#r<($bqSFrZS;C^cComAEmzb^y0;G|W4lc4Mt&%U01z?abw<<}%_h%p>#K z#&VUk(}ap4v1ZLGAD}pc(hh$7wyd+64X)IiV+huhqmG*5~PS z0qmU7dp;~U#4kaCm(wWaccGmpT2&G!X*g_Tj)JpwJ zij$Sa$fg@4cykW%EtxxRdB4s%J^#YF9f2V_xLmCw5UBT*2UPq&lf(My>?s-H`*^vs<&C z1f%o6iR&P;lVDY+&5)kuTfIO)*$M%*OAo_g!1&6B(eBd_ET;hg#YmL@NfjfxrmD3C zYPOEHzzkc1ap6WKS|a=-l-uE3$4AQy3;J~|lUc)%B{1|FxOBB-;cg3z#^G77s6+8Y zI0Zk2z3PZ`jJP!*8FCD*^TWAz++BTcB;KrM+V6~B5{4A8bB`)oXh?aS}Y&#v$?>U)v0)f^C@IoL- zH7_PA8zxnG*6s{OmHfs?o4q@VV67%=c5rY{s`{o>;~v=XK7Nu+C^#{y_yJHiEBlj^ z&z<_riK-{IcXb7Xmop+6zqsdy`6m)rJ)tHxF6dF(rYs@vHa%X8A8n zk+mO<=#i?~lwxeZCI-@Fn6{LA|Gdu%5i<$q)hwdw$oaT25dB5?K=sI#v7YComreEI zPQCU&_V@eVGMfAO_YLodqd%4;lodvn+Knu>U=~s#Ouxy+fHa%ujwp1Y$rKibJ}g;u z9W>+qBD7&Y22V7dHyH#&FpRkvH=zhRkB?SrLM2I2vAL?_-QANk1XRuFZW}(Vs%8?M zT2OIb(T+k;^=j}Dx5IKHO?CAJZfLVxv&Njm@(e*xiU^Go2D=+;a*A&!*kpf0N#?Qv z867geZ5qH&K96RWg?2|tkH>(R*E-F&L_cfh62+lFSjK*4%r;bIlJlU8@}b@5CnpqC zgC@)2QT3hqR(A8nxuWfmi-Q4ONqq{B1a;e`vkvu%4k*5aswtfLT{sBXr!!e~3CT&R zNqh~YSC~q%)}gU&PF#is<2rwwQq(Vu*b3Wcsal{BYvJI_-zv)Sus9_XFBN|aR`RJPCCjdB>>qlD@58V}H zWAZ?A)m2zOFxY)~FGaApJ2=PO&6~$WcSdwy*_?~pqV1~5>anfTJuTcwY+F#{U|u?E z4mI%#;gBxqBUH&gUlpo>6D{n+di-$mHleIYKbx)IZUgjx($6$_F0dO_I|d0vBvbR@ zs<${D{ph(m{Dw0wV3Rz#(IchnhQ}E0r z=rW2HXI$-U`L|}W{ra95;~4Feu`J>xt>?bYQFq4zLqmxlN=RgC(PT^vtLz}VCHh2# zH>MMfx85M1x7MH^Fn=c?2mygM7E)_`K?jnk>_u4=7=cIYC?gJq`? zF?gDfmDK4fSJAA?5A6VOR-vhm|IEx`quFcnkb|Iqqu}*;r)yS~4fmNG^;QToB3NBe zaB4u`6OFIYLzM{Ub!s=PlBdBJ|V%)p)8K-T_k&hF!+K;gxDuXp-j?*$Wz$AUQXb zz^i$Vlq7iaUM}a_W_d!d4O?5m8`&?u@^>su97dohF7Ker5uIy1Y#n$eCC?F&CqAGQN! zm5^7V-@QTu6IYZ_G{C;Od&M{)_Pe9RGv43~yK(Q`5)9v;+^)nHVo8nCgv)t< z9o{+iAu_D0%YIh;(d7pnH%XQwqge}@A$GYf5@yA$G|og4_%N?(YJ+tje826%&uNoR zzD$@jGVn^7J>6M}!0cO_Sh+NPNN~R;LG=qlC(kxxZ-;Zir&1A8DwKAkIDKH4ITaIv z;^z$@cS*n$C8w5QcNuj0LXjX2@RQ+K^1<4h+7V!np*Y^jmD=&TZqB`aBTPUPIa;&n zxR5DUQ*y4MtVa5|#T{bB9afGqc+QP&|AF+MODSG;R$OC{4_Jfr-v?*>zo#_ST`m3v zP5j4o-KljB8bLw-L?B=NMPGnIWE_Qp67*$u=^JDusdYYNW1ezjvq3^om1Dh&7r6Dd zt=^xSfc59~=29YiKg2X&#mCI!2cwhExp}@!g&)`$Cp?G!=4q{N*YEFF*?v}^Z^v;$ zU)lGqhzR@3LJCo1UzJ0K13FjZ;GNrs!O8Fv8D>xL>Kb9s*7bGZ9VBH^?ANiRrk&2?ugje}a z(-l>%yaaS=9f|pMoQiucDEIRpIkMubjc3s8Elc%k+qQ|;gtWo&kL=MoLdWV;kN zOlH4Gyt%63HQY$S+ZYxmhuK5{`FN~`y^uID-Wu=00hZcqr^edT1C( zzKe#FyT^t@utK)$hGVo-5Y6Nw(x=7RHN?f*g(2uqHPBUBph{f|8A&uCeB{YQxr7s_ zKx$9urhr&xtbT0CoUbS1Vu8VdVxJ4XjBry8q6(4uPHV)yk3ZrF7BZVjp*)~Y+vm6tM$3A=TdBFt)rW?~B{INJV5 z(|>rwjO~3{ zE*D|&fsP{t*J}4QxkLhbo?4Lhhb-#$4+nNQ%Yj;g=T%$sjW~iL*$GcmESc-(<I9ovGzi{9~bL{p@Bc2DaXJlw07~{ z3AV;>X2#(Eb{{_hQpVmyA)(rgQ#F2j>kb2&Bp2aaHcL#T^tnB0XIj89r`iF81 z51ej}noiUVmktNx!`aMO!;%EqI;|H3bATV4*H#N*U&1Ub@5>%)tKxQ9V~=`t>&e_L ztxJh^kf4#E5{@q?_u@peA&Hcsl6got5OMWN!{4$@v~EuUXAbTpAHG->bYH!ZoQZiC z{}s0O^p#)SS@xFM$)y6$Y>((ghq(Z*!SAP7`Q_f)9+=J-&eba{*h&5v9ZeiMLxC5C=u7LtxOmKZXhr_n2lRIGz>=uT9e5mgj`*d`Ft zmWzxvf9&ij`QmD?lf?bap_zW~1leZ?LkW-SPlF7GH4xUb_!>7-N{r2UvM*p$aGw-T zqD6)lDc}Zix3&|v2jvcK3c(DWFUSJ~ocNE3xPSGsG&2nS%t0E~|Nle7{_E7v|D$0F z()A=d!eoLym}I0-VB&g2==70!p_ntlqO)tBGEmx^=KEJrGhLMqO-_HBuUj0HgjSyL znIE&xxTa6LXFiKdy*M*(m}zI+#==IKK{nu@Kbw5dQy-7hMBl-z`=$f=0VXg~6!`c3 zp~LUgeJ( zFAZb+0%yY_|H2XhOjCeqo&WluHEb7B=znWiH~DT=h#S0}S%zr_2UQYGF{MMf?xe}j z`>&2HRTn5xDhe{O5_}=bbYizXr$ro73>-r{o7I#Wl`;7O8))-rDt7uxaWQ&{Z7y@s zis>o6$>Qp>>Vp%6*BYucj*U~Zyv8`Tu2oHrzj`^n+)EUbXYiNU0z zpUL_B{&K?Sv9OFvrQxbH`PfIm0+y_7Ixpt~2$yAFzr+f{OVW-=6g({&W$>r7U-_`E zSQt55RR%H8q*@Gu78bi1zH8yPul&4QGgn0pK_iQlgfXBnW&a_MddRRhSatO!>_Ul=kyHm1-` zH+C#_8!jShf$nDnN;tYH*YxSrOLTzAU9jXL;Zauw2eUFm;B2Yhw+DCDuJ5!%Y6YAt z33@c<;GSCq$`aW+owbJSFdV3cDYvk1APt`%Q|6$XD_s}O_GhOv$8ICp*T_np{Q+lc zjV{&@&AXuXjzN_v-p0=3IO2`|j%t{A%e&c#Uj-_tu&JNYYEzQndICPJfOH5`HHiE9QY;@*I$Jv3T<`zQ3 z04FuHRA`S1(D~WK!0b-1At4ngC?&TV{5LO>r2;QNHrRDsXsFuIF=GrHtEsg{xn0|U zdbpgsM%&xs)bK{lMuH71%Z0JA?Ec)9(vd-UJylJt+%Y}HR6D?PKgF9hCmSO)H0;sb zVb)(V3;5@6VAO;RDE2QKj(TMUJsVph#QkHby)yg zHv8RE_R?k7zjp+Ik%#|XG2n^f0cNXQX-)$cxtEl8bwaNW`CC3!5YLI-wW{8I6-J`S zq)D4kt44ODcs|u|c3+Bv6FOm+YZ%2z4XhY;!0@d$&kMrW~iv;Aw^KW{m$&7h&<7%h-07V`9r5*5I#rU#SRiOqqu5z zIE%qrgnt*Z%YO-(F_p}9JxItbK|;m}60(lRcpPas53Syx2+da zo3S;5^-g~1uLxb4)Nq(aq2FJ;UKso3=;opSCM;h!y;tNEwzK|jM@3pQXP%A5-~8UM zVD%$^1Yv~X3ig>@R+k?mCzILl1?NK_1p4%_3WwV1PoCkb{{?ob8nH2WBv_N6G4 zUF3}R?x?YYVivbUR&SfmjsoFkztBfWx7fUf>P+t!zN8oeJ7M1bgdS{h$2$yXhij*Q~bL4aHBZs&yPc zV;WUl5f=M<71;izW0`Is9W&JF=|j9T#~P#2si5BAqu%*Ly%9#eGYri}l|%(oDpDC7 z$|&1FJ9bJa%fTh{hrrzr+JlLNvB2qIBl_kL2}YJbPL zke%j0N02Jn%?Ubg3m8(s)CcJpQvf8=4oJra{*R8G{D+SH*Zn(&|7KeY1l+W6G`BGS zM^0o72AkI$D0TfC$cPj9pZ*kR4^+Md&QG52(T zm>gyWJn>jvJAL=N7W;Vl)3W{5eg6-4j^uZIaO{O!S^VFo(*3ou@!Y0B!eNz;l6?=u z=rdsNy#j$5f1F)fcp=I=Oh=F&|Hjd-0^wFEQ(6=X6*@pOGy&$54Ph>V0cprYg0V zn*QM893O?(p5xfmpDkE%q`nNXV<}^hV8?%Hs&)<9`Ganp!c+B}6`84)tm0eJVY^+LwjL&{ z7W_G|Pq6h!jlqWP>U7R?9Fw*7r4i=B{KJo!Y+5rqwH!l8ar<9*PuGR_X4_R8?;n$$tkJoz^)0Vl>H;cxFT^L;~7v^mHm0DSQ?MvMj-9EL>*`*Vv z%GqWVOl3|F(IxQ=aCFeqluwCe8l}??g{exi;fV>B6<-38TR>wL%={4S52_Y@6$cJI3eJOePA&LrYt zx5Bhj;+BZya(ry7>7RrDz%#O)a?r@B8mN2m-(AG|kGogQ!`0Qo(d?g#SjFo9o3r^l z)S^x~pOh91)4trZ*NL7~n}VhM@vB&{)B5EMV{-|Z;1!BE%mQN`SVLS*Tu2&%gJEK>@vtw+#J+JMqDWC$nKqae zsRyjyi4AUtC$rqV=~yVKb12H_t0;w4SUzlS?Pu0bGVF9*(dZ;Dyo2wo8w7 z*0#$Vqp_>&nQYR=)_6H##jDRWp1FbUE}RBEs)rv{g4$R)%x*{ib){T z%qlVPSz>(!ZT7FnWl{81D$aAfMpDS7@O%Er8c=ao>JNx!i_V1{XZA!_b^V)H>R(9k zFQnA&*CP)2y?lIB+$j=8tyCGF^4JX$NCYjG8sgt3U*pi}ZM~x@0E3_Bl&8B!U&cTf ztT)$mPk1%{_)5fZZ!HY$B!poG90Zylv{+2QV;l{}rUahy(tfI@ga?5c1_WE7@9XSm zhFXfm_~m@vu5DFWfe$rr;R9~#XaEP)sE50z5=#F8b3QuZqz08-V~A8|o}L^ky2650@P|v!UUEL;g73x!z+jfot|HF0 z^P;pgo-gYRAhMc3d)SCz!FE6qv_+_5K6YWHk}>OzA(=e{hq?4?bV(rie=es<1)2Fd zp}%~|Mf>khU;oEZ5chF3aj-E1HS)awc^s;>qQ0XqVthE(w>PX3plZV))0)71z287c z0*gR}m-)3|UWXhU-$mJ;c(HRe!ONBz*1SgBY?~|V5Vg2uyI!QB=l{#RI5=Q#tu)|+ ztLblaZ3O*{dTMW#bLxb>RR@N@Vnsjt-nzp9I9c`4LHD!M$PIbe6_{#Du3V3DF-U8*koQwWu3jRJV#h^9r|MkR17cy zS4BSNdwVt^U%3u^K&2ElGn#=ZrEUUF!LIbGv=$Ac5;3xt`!Y@cPzh;s=Jjr^6>Es0 zEL};mx+;7eeG8wUr)JE0OHHf^v28g~9;z ziQxE1hD)yp3NCIoDhl?~Zv>n}Jg;CDe0@6kx!)y938?myGjTM&q=P7zx`1W%VKoSD z-rBk7BS4b4=@0z$eOdh`Kur7mzm(rX<&qxqFb4ow$`bPc};GlyuP4$lMV&O@uNa(gg=JcLUrH-0C1V6G9x} z4p+np^Umt89CG2D9zmFb$6?yXfDuZ*W!oUxCpAoVLGAyyvi}IXqd=W?tA_&So)xo} znk3>JBlz9Av__AtxX2{koCE>F)b&@fV=G8G#!sn9&kB8rlU&Q)px8p{Vk4~L^B z#?F?M-!W}BM9h$TzxJ8&L-N}(?EACF@( zYMSyT$zpvHOfpf*WHD#bn(BFi=bCNCdi&oojb-&l{rl9KF-n)7@@I?Wq^7>o_T}53 zK5i~Ho9EG0I*4c+3?{`p5{D)y^oK1I{WjaWQ~0QD7IY;9Xf2eVs1)SSrmWOMS9e!j z+ovXtbFI|fr zm9ME%`mz(|ooU6mOrwe@NAjZ*%<-;vHx}GW#A)OnP+Z!0DKt-hDAI`@WBslp9c}v~ z;!-`XTS%eWgZL)Wh6GO(6c)HU7a`s4Pxq29tt2G$-R6Q**q=c6iDFid3sKFFFCZp- zRX9NI-0sFeOhH;VBg-8A~miTBF zEbu#pj%8Rd6{$Jd2aF4cHZ~4=Jqix_F+2;Jc?^x^hX_@b_Y-DrhqR& zV%Z_n@rS1p*EvPp2g|`C6ZWDD${3!k8+*^uRr-^Rg>3Wt@#6BXIkcH)2h#m_RC^%I zH4jo|!1X5B85Al8bwX}!sC2Mi8KFtV2w|W9k2l2lFFbdSk!_IcE|Js^q|!PuJB?+Y zUV@od{+yeRoPl?qT%#okzSq4tRNpw|x3el+$5#Z~emF;a_~^Q=^g4f)@wLe_`pa`s zWY^I$g}25THv|W4%{~^}Y{xEc$UJtJgH)U*6{W-rl_{)+b{NYq@2fk#YpUZlLYz$Y z#$zCrrt81(Q(E?^G1;_ei~+1+A-AsOh$ZbZxV!tT^H}(eu<<0GcX;GTTy&;cokK6F z`Gwz|Q6eI$#W)RX;@afJbMEEmrg1A?VwdxXxn`2&3rJUiSl(Gwk~zgHQ%5j&%#xM+ z`vWC$mPm<5LNtvmsa9@?xqYROnQrWIDE5L%_OU2_BK%>%nIWGAQW1DRnYyk30m#>o|DXCA5{_n0AgknG_}Blh?XZ8JF#^Rb@{Sgb3d{NS{+Nj*J%tR` zhHVU=Q?{?e3Q;X0=9MX#6lPVkq-5xA-+BKC{}(f9hQdNapD`!kakZN?&G4Xq9k&Ux4_y>TcjEa#CYaBiu_JAKIM5Gf>rSY z9<8GEshf)Yu0J}~O$k2ZSVIe`|3fpZKrm(W_l`wU6yQEWGPgi`jfwV7AJ9py!k;8F)X2+RtY(7>3&N@qi#PkH!H~(D` zIx{PTQX^xrwgViR^$a%rX=ez;cPwd%F$LA)bQwhY@3K`hCZOPIGBA&bSedUB5(Hof zWF;2S7;rZI=`-^_IRlax(K)#b1Zr1wVUek920{56r(89@fMkyP(Rwl+n^BeFS-J7a z2y^$!dMsj*pk=IDWZo6nk%z~f%t)kss6;!x=|i=8*$wH@+_ zL9WFEmzpM}vva2<>;hIbtpgXT9s6NYzLl2TTzZ(V=8SqG&TyCk9~*`n#M_b+3LAZ; z-`iLoN)BmGS6UrwF(#LLI-G z)?LQ)vh&9ofcY)2g|J`rG=P0uTJ>V*56h;lv3B0Ey-{9Z4(r4{a?ucjSyl%vgBWy_ z?tyHO9WewVncg@TgMPXbG;3Yc5ihy9qFpFY8}1N6j9lv%b<+S!CBb1VT-6uVK`q>_ z6k$-SAIBr+}GuZHFuHg{1V8$|7yVlQ6_=4Sd#Nl8r1EaX@-|1j6Y=G2yxQ6Dz zjm(=rrfLO+l2+=JQ`z|DW7t}0zaebPXNf3`M{WdAtrfC}PRcaC2%Mj4$bVnHp?vh8 z^%nPn)bbqXAkD3K2)~iXXys9vKLBK1#j+-<@v!B3z^5ot+wr?M02u1C`XK$LxGksk zkkE>CV-F0cEh9)Mrf#FPJj=z}Jul#b%U;qcbEzVZ@W`wLG`~c!! zU?#QYR*aAkSwzLH=mu(tBvq0>-5KscUQ`+z6;VXGSG3=2Q5!txGZ^=iazfRbI}8l3 z#ww7D?Rlmcsk@kYqX=|uVLufvr^fDnL3~T9RZ(~M!7#Wqh_Xh;-d~`;A!9H1eFo#) zyt+8+idwm>I7(yc2B(d1BENK*>ogbfTMYJm*spaG;d|^FSf;gz+p(~PAJNoo7QWbP z_mxe)%8wASAyo5C#tg+wQfQ6H)^Ggfr(5Ld!35IHOmOb;`O-9$&avum-!Bct^>?0~ zjcRMS1|~5-;3`}^Q1mE-GxY@+oQc-o`fiQos0j^wo+9u_T+Vy9Z+8;x0_4GF{xX9T zSd{IvgK4i zIYkxpg{CmqAU|^3MD+DlifaL{dzlrPbHmF1a74ezu%GGiKK;X$X7!||8UUFrWuO~e z_rssIIUkiS{@-fMmhnU{9wiAHzR!ku`pu#d8b~VtKuR<^8ZA&~nxg6Zu(A7Hr2` z0IVU4!IQxsnuKsXZQNdR`R2v3F(0pbhJIz2w#3~3t1dI;+KQ`6OLGZj6{B<%M{?}U zo|B=)F(oMnKC#kCe{~0x1-&OR>~R1NI5EGX5vwA%JxFHcWBlEyr*S1vR}q;=1GjD~ z*u*cDEoLImiJzOV-7GPlgfLsfbzrwE@H`pIB;eR2uLt}Mq-s6R>>z8^+viZD&|FJa z<85O}a&S0`6U9Uq6PxX!r^KEj3Ngq2d9ksK=zuk!i z#1+ebgWWL_~m*%=Ao(A@ZCv-Y804!hlYjGnKe5t%%JgG5*Xq|>MT`6oNFF80) z#zYYt8e&dG^Bct03HS;gQ*DhzZ%uLMxvpT+`1k8{2-Fi)RxA)0;PdoP9NXvLKgUL2 zOkY?+o}JbD7+|i$cKW}Os2kIUc*?uU@`taJZ1jeSOh~68 z65Jl#&2=YP7nE+{D5`Po#<;DpP0BJhIkS?EPGA62;N{ifo#l9T@%Fj~G4dGzw(oY5 z4U<{PGuU8-ZTWo5*t7+kaPS{4Y%(oPYHj(0Zs{148ERT{?r1rzXtus0P3|9825;F( zj%?A26cf>VMH3skW2@}de$Dk3d?_WCph#AG>y$#B<^l(vjQE8F*f8dtZmO015L@qS zc&kDw{By&-l;#F=<*~AqY}I*qB&7RIL!D*RsgZG$lM+|8W%@ zol=8#n@BPdkC9Xq!Wv=0=-oo=@HQHHX84q_=)VfUA#A`{s7#$+G1+wak1|JIQgHs8 zihb=j*{RtJuyif#^3gljF`Q6mp~#%MP#gt?9CqNn51+)Y0B1ppGU$)*>x>Peev2P% zmK0p^>Iawy0VBU0^Ubw*r0<&2kT~)tT24uCt;kyINO2+b`ji7B`KyzPbyUm}+pPNw zjv`z&MU;9c~Dc8C~8 zvd~K4T<^4nIC1~^*)ipxJ@%3k6%cl9!9PHT^V!vS5>-XqE+owDI=Z#PU76=86V~pT!vtoQ=OmF{= z0SDjVzYjW5==O`+CDNVR9F_)tO_<%z+&le@@CIv?^35&uUD@8-4&~Qh#j05y#vyvs zqkUF67uyy*!$z!afla5>%^dydW-SgET9O<*LrHJs=7C8saEE(1!JNwhb#5pr?D)8SUY0^36!6?C_-1JDG?3hPt&g$2yLA#Mnk zUrH?tm|?SYvAa>5Yuv)jFG6>W)cUtNxcgCSfnRLhH0qPaaMkAa8eQKmjC|>fMQfDn zh7?J=s86TZ6oZOls~P=hZd8j9HQjTDL<_Jf=>4IRa6#SozcvDS?+$GGG3U? z&5dPi$tUE1Q_k{ULyz!8tWxg%GuiiW6^>=|P*%oj@CX_Cyo&Q#ZF!s)2AkHnjXq=b z9*Y-h2#!-_oc;MBE3r5g>5-2xkB)%7I*WM)H?3vtK7qFK_D*<-Nd`3dUO_v+%s6V> zXyWPwd&_Wu-)u;6`A~@L$wRgte4EXt3AU`YCgo8{wLR@6qwW(2Rr3LmQ;Usdk`)UG zilL6UrAXzzO-ZTkp2XbFue4MgZOdn~Xbf!9xW0S9U*5Rt z<8zBKUD`FLB$_Nh=t6mKaR2Jgcgzed^YF0iIX_aPU@0 zL(zX1{mtNSf6keQTffeg-P%Nst)`=?YHTnROJQ)yCns{;i*#>xC`n1S^4=Gbbk&HYGGsl4pH5~|_hg*W(Sb&&2=4|Pa>VI&Di)QgIjkALGl!fRo!UFeR2KmHJrvsT?ZPWC~=&w|C#AX$63{0n^YMZC9EbQd#&Vng#Ledm^^9<@vPhN4ULrb+u1$_rbT zi{Yt~5v%B$`UP`a=EV>c?;3A%^Zm>U{xB3{-1$wWr$smk!#o_fx5|QQ5&lp|(Zwr- zFE(SZK(F~ilT6C1Qfjv5<*~|^8xpqFk7CXKSmX`;5qem|f$Q`$4!Qf*!64+rvMf%z z)r0mNVeU1=-6<+VDNT{SOftnN2g5zg>yd5G*-MlNd_<;LNWU&-)QY50#`#@Ym=#Cld-uz|q-knp?jnVQI)6sj7rvFHmM8 ztLcaF9>b@8+5ocjB=6rV!tf@k!=M!;6>c%)qL$cNTpNY&qR||t;pEnp-;foGsNzLc z=6PLW7Iq-cj3Dp$z=aM8^&`J(ps9}i^7;VcKQ};o!tYDAiEMcZh_5!$*U%kOeS9+1+xo9Psg7cz}XSa#qWNQy^ zZnwR;T?Av4VjPHAepe20DJ{F0;ZXatG0Y?}dZ@4)OLGSVc)p!YCV_jVZX(^=#I$>tjK;bUQBo=2QY@O_x z3rgmDPiaUBZ0gWTyO!2&G8d+m~<- z^Ci2|i^}_iw-3o>3!cWMSK5p!fM|z2Iw~Tp^20Gd*WnL6z0o6?4y&f{lg1)^6+|Ig zrp8ao%kdD7u={T=jMoI8k~2sIBOfedU;FT*LLi|%5N8?1J6N# zYl8qm%QU9-*a-DdrtGM2e3*hIk^aJTT&pF?oI^BqzA|5X+9Y;dcL3~4i{onli~D}b zaD|EihnsnLv3vH01J4C&2@O~&-k}JAXoWQaCIz46CP-ikji}K|bZ1QE718srMfHJFgO`IS@bb6vT(VWoxqEAk z>sK-M99UfJorTL4x&iL^i%{R)$6{`zO1hj-U8R~NF6;q;os4A}cXkuYlh$>6=Q?h! z@(v~LqTfik%3GnIu7Vj+D&ytNk~>PJNpJ9$nk_3*e^iDaxul!+gnt0zF63(uFt}uW zBChas#o}MW#NFo2{~Z}#!dkLrD_F3__)9ewzgj%N0e{BRs1l?`J8htqed@O~rCPn` z++vlUJR_L51nS}wW#+E%!ZTKL;jogealLb{G}b!D#WfySu&LNpLRTer)#{GELhjDn z${^ZvmbiF0uXDcf`ECJjKu@*V`80Qvtomxtg3jV$hQ zp*0|X=(#>*gY7wc6CLo?;vO5C12QtZM}Zn&@YwZ4*kj;+9TNG_{&Gg4VsbXH2%KV< z5}f7|iju=JO`9wBku9vPnUU+(alopvh`|z#GE0M8kHdOq9n2BG%)cZ!i zUXNbAI6iYg_Ex$gUxY$@)@W zu!qlj8?}nK?lA{PwAJ8n%kBIn;>&0lPzJ}fF4w3Cwzc~DcOk5?yvojvw;NlQgbPGv)ASXm8ETyG+K#;XjnHk-tZ`X-0hc(2 z%!?!fnm1Dl@+bO%T}nL+n3YCJt}tX!tRAq;*7`->@P5Hm1pcBt^TgV=F|=Apvm;|U z=hN?FsLuF8@pv67v9-z(6zyxlS9o_C&wHn^EJ|!h`>x%x+8UGUE9O|npAFpkms*~F7 z=GbS-bIWi}&^aGfT!Nv9ZWOZ6F|`U{!XFpa8&9jsfEGcC8+6ut{NbbCsE$Z&+}s~! za;(`FI6U2dSP@HM(CCYfAU#1d6j_+F-8Vi)*>v&x6ENhv>B!RA{4rL(=-C2jJvfIR zTE=tBx9d%F#aAaaN>01S8!;c^#y86?Q`>eF6317kfWH@J#Y<7H(H>IE^2mQFD%6&3 zmz=JOcT50x6l%-2i%)08pT>h*3VmD?^V_6;gN}v1Gm|Er3b!@fsad|yC?lvYRB8|Z zVvjO!!fj;njemo)!9~YJ5AyhL&9%NKl@?cRmSz@hH zRu@5SQ-2o(skp)~Y6Dfk@1pAn_j4)L16d@FBB(C$c9nLieRmUPQ+zEoZQ6b);4fSQ zSz^mc5K}d$kDi=J;mKE=7o`80K7>z18~INT+Bf9?a|_*nrw_@QdYFoTHg)?~{eO|x zlNDVLBG7oM98tC9qKlzQN|MIhZFagZ69xZ+Q(&u=l!}a>5#6WbFi@z|w zTOzT>MDVKmQdYAYnHNs3L=$VB&9=bQx~#UlY`2NOzuNYF?>@i0+`aLS0lyL89C*n# z3xn`+DtjZ4^;oM-U|7OT)qbF5s?}nbSn4T;Z7O_VLAhZ-HX6`HszC}}pkT!*bk>4| zfj=ZiMy58fyP7pyDnvYFMs}uJTkx9gv0DxJ8bKKL0s-i@0Xm7SG@F5e!kN(~Mq~H` z&a$E`>#^s>K`lVN@lI7*%GS7M1ISI7t@*FeeN-Ak(rPCFJNVv1$gD&9^WFUlz@9)k zwo1@{>cTbIIs>rj*KF>C0MvUdNC4!SW;X+uv6{`PA~@(qvsl%AVeC8C&eU;l{8pc8j2srPYRj>H#nUm}YU{S(R<1K$rDeIHA=-~3iJO0@ z2MQx~8mcV`vXiV1{`5=;Nrr~o@+Kt!j*@lJq$XG^3qKpQ_hVe#x9%@1CFil&c$0HE zq^+B9=F+dIQZfm0F`agdr5jiq2+!cuy7Dg{;}j@3H~~0@yHt(9)6#p2_VW#G6oTs0 z$zQ7BaG6t5^6uUnRd5-x_2>gSXb)VBz>4;>c)0pKf)B7;wc#yngOh)AX+h2Nit(#F z1a<6|6brl6;iIkjTS%Q0n})b&o8{qm7Xg!i@J-ny5=(;tW))ut82e8qsP{7T(WVN0 zA@st1LrEu}IO&Cd;F_%wwaj1%C;g+!hf|_;pK74=6{Tw=R_;qF9C4#z*d%ZvOW22} ztKpEL`*oGPDbp%Sr+7tPr_-lx;jjnL?pv@h{OOWX*@FpsNH(2-s&r(I!tBz-mi`*# zN5$m;y<(yhMnk(Ckr_^CI#*a6Tf)!IyTZTkKCfBu-iy5Hit|E5Wk7H%k)%pf(WYO- z#gISAfKI8SKwHuAO`Y3Xc_tQ27w751+0jSV{u!qTQWgVsg5FnX!2<$I*tE1j~uh_L9NmCcqT`O>i-4*y!MlnfG zo(=;f3Asm^315ag5tf`bN(YTs)pa1UeA1KHp?N)@;S4|HpA>bYxt)|_%Gd(&!@mXN zAk~Tzz%7=ZCH@+~BOAIl&YP{%nwfw#ffZXs1Q`k&SueE*(rA&J*c~s1{KXx!fNMBH z(|Z-mC|(~ZFUy(I6HDcMgwcA{xx&2NUcu@;EjRVt{FW1haT6epd+f)FQW5$>vy3;o_jmg z*tp%C3A^Q-C>l#j!qTCk{FUi})2HsmuH~~;9(#6;LXo|--AtcTz74*+4$o}=i#+Lf{f+4u z`Cb{(Ek|C`h?-v3h;yxMplk=jR-jb@q$lSb-_wPQZ;b`~%_G_7m)(pZ`XxA=vscT@>s+n?p_S5J{ey*Z;$+Uf_fH-QJsI`R&Yr~pL zjRMcHjJ3fiQU1rKaaWGy498jzi%N|?InGRJeS4;I8m+w|g5s!+z`^fb0_tgR?2aL> z%mW8XIn?~w-+CDdT7ombb*G)D<8WG$vOrYM!)ertQ^277m*dE-;v5HF?@u-*vMY2kI~!vZ6+2FvwkT zftVVupVyi;LT8`KCfeXIHLx}I%k;4jJ*vxbx5E8gI`hlR33iDi^STQMPN zBgnQUz3XSwKu1BiQ&o%8v=Zv%9000W{S@N*kgB<*$c)QG0*DmOtW9Oso|pS1v=`gg z*&6twA~Vj1JC?ge4Sw(&DX&yZFG=D%g>%cyy8V6X!fr{KdvUM8T+@4j*M7o@Ej+hkM`=!@Zvi2+ zvZzU5vuiVrB%eNUt;L<}NytrE6;%dEGwR*$8mfRJzlw{xovmJeIk>5b*M{9|gkG){ELbJSZq zwX=4V^nW&Y!#EB0lfq7H5}>*nGb40z$Z_N*YUySOQ7yO|z;5*NpnmRc0aQxHKz94t zwZbhKLo6#pEg2_{>X2VRt?w6rypc{3OTrJ=1iYkc@bjbaH(M$SMB%%wjC;DQ=fu7X zy>R)QKKW|8H}j-n+Ni$h6NLBOA8ufuCwuV>(l|UNUS?GaE_1h~;r$t9o+X4uBw3sW z`oe6IJ0Scb9OrI=HQV^`{&aDF<(j{I4|=xOW$p6P(`v15Q;&`e*!bPT?{EG44r`P2 zT$+F+g&+27Uk>Us91HNC;iY(UtbooA{f3jnP^RtOi|0Cs#qAQ%iL`KVk6`bTVNL^n zRv+pCJipniKM~W|rqL0<=Cyvc9-O`)_qhx*V zZ)-%js78Cal1Q?CGGofGRL5dzAv9Q9hK6B<=%3~h4;R!a#0)3(kB5KZ`^-AD`Z~gm z^AZSMQ>09OE?HH%HYXgyz`~LKW%t=+y#sO1*b^`4@!8N|S0|}C8MQr(oN+2;Aa%?5 z+CI_CAD*k`S`)bka&dASsgb$h?jfer)1Ub@bc$VQc%?ko@Z^^_s1@^9T^ukbil86K z3(*;Ms|~y3Rx}@%dROm@s;g(nfP(DJHy-C02ey1eq=_usiFaZIS-w2QN{zLa*J0ru zFsiW3*P^}D>MPY-i^tY9!(CZpUeP;bRQ7)iiIjJKy-(r&=t;Cc|K6^# z`!iT{nD!?L3$s6uD_HoI$NsZ5&&l^!It8R7bn;10(r4X!K92C;K(RZuJY@V!hS#P5 zM5SKF&t?c+AJr!qs63Ia~qwkz2?(;dr z*?!XThS6dVaSHt;XD58h?(J7JE(2JwB&oC)x>B?-#JPfHi*VrjO>0_Zt4CB8r<&y( zO$Z%h+*2!Ap9#YObAo>5cOnk^S|RDYBSuk;NMOT`3e887zjuI|SqT=eu72v$BZ?Vy zf!oXovt^x9Zb`2F%D0tiU$B}{P!R0g9{a7R@1)NPP-@b_iug8emIUGFb0<+`)oXD2 zKKo~?1RreuO&zxqQQAoYBi>A%6Ddy`kcUF{%ZL9Iak&Tmj$5gt-KwbIYnn5z#WrOd zr`2^ej7s)9JL(8NlNI2_3>re4k2gCDp5#SB@p2v$jQIO8vCo$Lu$8rcKQopi(0A5DK5qxo84DHaF8oZEOwf~1~3m@9{(sCPZ0MN`W9 z+9n7d^}tig4H+@mMxw%|1=o{?@)r4`C+9pyv~729 zc=TptQv`aR)x~=8lc|KX%j3EjaR_cKnjw%n$)V`V7I)CV$;GsRzcViS(#X2WSbo34 znb^AMkA=Rlh1;wft8__6!6t`P9T+|E$=M38BY)HKVN+KZAPKE{FxAIPk%U_BhwNL_ zF%vjWpihjOd2@COiWtNV#M`t|h!~^|Jll9_`nU2&98Nh~``^>omudm#%%>{kbikfu zoolT|!T7N~N_-!DTp39mzhEq{pTd@&Qg{fGbH&ih3tQEek9icDtSEon7+bYP-dbyn zT5T$>OYbjedBOkBt>#Y-vQCOO%F5B(24C#IyS-O%GJiX#{%f15VW|E_TJcw^ABH%v z+TNF{{Ah-7li7+@<@$y?&}nc6+0n}#X{1;NFqyWTI%0I*@_20~ZKLvZmGZ+9uh_C= zU9j96&+Z??j}*ErgBlXt*3a&|H?Fd;_BVP&;8glj2-XLD=m#|wY(h=c#BtOK+RyzF z*i)5$!$v*fqH4P+s&OD0EU-rKwXLdLC5Be2Hp5^sn(h(H*n}*AiGEk+5qc{W2ZNzC+e&I(AxEgK=xVsqt=r1vBS)b;sQg4 zK=)hERI!V(JeCLf#wp&C(fP^q6z=E43j4yTU-9g`fpx`RM{*al^GmBOZRQv$HdFN~ z2Wk!yR=mT(kti8UD`F{Rrq<6hWwx1diaMHB9^=3cqu~e?ZNCl{9Bm=Wz?D87YuG=j zmk$=31bmc1ju=cH7w#xtC{-swSC%t5p!$uj%uw$p``e%*|IfW!eUOu6T*Mj?xzQDWbyP z93<@4OZroWc5BdX1;gwCx7G4)su0(;YkY+X6!=Pk6ek`tp_6Ez z!`fr>?Ga429@_)=nt>9&u}kJceToYuA5zBCPm5tQ1_^oZ*Ly!< zIAS<)XI1#JQmj6q^oae1EmPRSS>asQ9=O$(?`6c7po8en#gB4^KqJ%hxz9Xwdsz?b{WzfW`#T(*S?u z$itBdg47MkFc}}KKbj%PhzP<63{L;39zbeJSd*(WHVm4ZIAfFtQeUeE=9n>9A$3a~ z8g}C1+z}Hd_aV9JHkU*!*oP+e(W++B;1+lmmk|q1N0Zv>UaFdNy9BT+kt-O@3r>ws z(_dF%svr2I0L3>#JEzB?4*^E(%QDAd%@|oEw8DQu;;y0KJ2@9bV&a%6pLz>)|Or>reLt8tK+`{k(Prewj_=}^_tbpNip5# zI7IB-cW$I{7#MO%4L$lfP7{=Ytx>*}aZcUUnwST^*M^+5IPD!B|-hc3> zLFXsgQYYrioN*yZz-(7GaA!mbl)hIO+P@FnoPRx|m<{&1iZpdKj*4A2Rz5C$r!CZD z#!Y*#7Zq|Ph&V=oZ%Ds!W=njM0-B|Ur?zPLZOo%ca}XfOMV6k~K5u*by&_r{rEoLz z7=|4QB(p$EZ#sgNjD)HxO4Jwrkoh|{XY|Zxt*v)e=P(yy z7uKaBlZ=oA&gjV%tQ}>t81bD8obl+Ush?YK$8T9QsSOTZ!iUP(tWTEVBIFk|YKM7> zHlq`9_h>G9OTFiJhS9uB->w}Veu4e0&)a9mB_NXBDY8*w3l^I+r2|(9EO`uz@s+ap zG`ZM1t&EL73{zw~19+$`v9N#2gX2{sq&bf`Nek_p6|b;{-#-V$jqJdyT@$YL z=N*ltURKg*=@y3CWSWuvWN9%34>w$=^vCY#=68NdrimEsld zRO;A59sf6$dhV}x1ssnDks>1(pYGaGzv1vau*_V#O7Hr`p(m78IC;wsR| zR3Mt_NdiH*E~`fn$dlpE@c|0_z z?E@#_-PG@|0BgapD>cX)oIo>_Vuwe0z-HMsp18$0U7R+#^)k6}4Q}vLIzCf9rCaom zDyGwP*9~^5=kh}~#(h9Z@snnWQQ6}e(Op#ukKhJwXE9-P7mI;$Yc?}McddMWA^t5R zXl3~jQ?ig?)$s)MSn{hs)1QJxV6jMGuKs8ix!Zmj7c%T&GsBzX$l-wJ8MHYAXBsX| z?EK3sh73V~tfbzi_BEUsMqWPPbC zTkty!QUWvuwnZkH-m_4ieaLlJbqq9EaN!b!W9GJVhlxdXKSx%$R)2&B zdZVJ~Xw(*(f*1f1uX9q6q^}n&t`nTsbL3gh(63~k4me@a&!EKm?LBWrk8bj3?Y=87 z$)9AhISXR}S6^h@)@JyyXFcn*_mdYkXVQUu&Z6Vs^0akdxe?)(KV}VMto|2;nSJ|g zaub|NPU(5_x8K0%JNS9HTo4P=6Yz8-82kvVi)lp6%duc&9c25YW)H&}YX5%Cebt6< z|8N6?TqyD3!!82Wa5XmA=_}-tgsq-P^zY=4MQm0y?k>GZS1z0nz#odMb}kcf$)z@X zAGFZ~Y#vu^^1s^Tw?=J#G$vr-w?}8=^Mmn7eF{JK*h7pnm*_!Iz`R5@#4w9gBOTB& zQ8deJohm02rw_H+;`z@#{ch$1_Wzd}(6Dv*uTA~`%wB8x1i%}Sl$2zKqnm^8G;a&P z)EE^9S)DT}wm7gVeq1tpknFzy#t$3$>!5(+g?6aHc1kJW2k6TAEpzS6*T*sAEqKir zHugt(INhoyYt_f1f3w0U)V%&}#KXCICMHEy^>0=f2wtVX;{t~Oe~TUN{auF^dE#HP zvsN4JGV@s8iok&v*H00q{+}X{)@Z9$fGh^?>X?O*31%&ug;usvU54*7hU_0Tk>7Dg zPNjdOX$7ygL$niS*S$|BYRf^SiGF4XwE%nwM={J ztUmdlYT)vJ)PNgc`>h7FD?8jvuFFj?4NcpWzGW7DLvdW=cxb0$;9gAgm71pY%HO1u z0!gu$TLK?YhCALLP_gicX77I?$Tl?+C(V|Rn{>u?fsh;~=GFcD`A-d$23A7g80mGU zYa?;rd@$@Npd&r^_^2D~H*YlnEcW`R1}^@s299=7`QGftBNkTgqL5R>)|NVsW_8j=92He1=4*%+nT%;kdjxCDuLR}N= z&W1tq<_ZI^5Nh><2R<$((~LJLAK58moKjc8!_+fy6W{ydn;u-E*5MTW*F?(+Y7>Bp z&Mrx@^_TXZhvKJ@912Y#+*xTB8TMVZTBF$DK&V$U z95uS4Gn2m+zC8aq)DY@AiK6q7YWlSx4+x8xyV6#I-@cCbIauNV4|m6&1V4*$7FbO! z{ts7}Y+7vQmg^c$JM)h5KHD=D*JL;BmX%pdGT($K;7=&7z7(1?%3 zPdCIHaRjqjX(BtTCXC(B{WQQn)YZ?X6LCqZo3m`yMBv`*mLEaNrhTo!s{iH+V_yQy z5QZ1{=`ZQb;2t`O+4trOgJB8BoD0mWh%xWG8*~n-{pXpmYR&l{Lzn)k2Wb`uX3e)+ z$oYT6o>vE(n%ir*nwncmeztV5{4YACf7tWb+Hdx9lxe2?Fj7;28sDWdKFKuVH5<E;C^is2c^d7)$E;PMI_4RLpp4mcB@RoL}f|?T`ctr?5bvE4&>_8Z*;uknc@| zNHZi{@=~rAviooX_5{&;s;)uZzSA3*F+PEj*jhTv~`fB+gpxgx*L(MiSTscnU&L-4tz9G91ta$mX^MN#cgM zNc1`2mef%Od|HRTF-5jv&HR>iSjSeRdKD9c&^3L7d;kJi=~;$50WKjMVqFf-)f~u3a+`Ts=iEQ4wI@wK@68hIt7eEhifVLDM(ltn^5*fMLXW&o*|i z$xJIIE31T<+*!ugA<(9Rj$?{MakNWCE`4RYQ)hPCfb*Mk!RX@D!HdeBT}{^+c>lgC zKAB;DQKLP;hT5m)U7&C5Ktig0bXZ@mie}v^SpfGj@*JMVyaTstLM1Xt;Hh$ zDaSHKNcE=Q|3h_g@|^V&)4Q_y*eDiI{a)N6gS+eDF+S^a#*v^bSQ=UB>|}$W;D^9_ zp=&dw>57sxBZApZn_c{@7%N>)5!P$b=g!9bTRHQ@?)8s;Qf@wH$i7|nu~yn2Ujvgv zDDA}}r7j$?bV$J4v{f3~q(kRe;~Ga^MS)2l74ueZ5JyODu0&dp-EY|vNjE8EjX?tb z<@t|9iLhu}Bn#z%v|2U%FJGLAXbe7kBt9qGoV`#qVyUfo6-M47uu^2Rdr*@b5g-U+ z=A?FJ8TIr;8lq1wKXK?i3dmaCu_FoC1^FaXV1b^aPeT>1=x<5xG`R)3h=XpPU2hs9 zf9-OC$E!_AElXEk#XwKPF@G(IbVPs4a#g=?oc0QJC6OS!m=sk2W21+JhWT%8Qc7}5 zC`8UIa7uc7uLOiYGY>Gjx`=i%4PR0k6%e_9lnnjeugW8{C|6{ z{a5^!GBpP~xq363|3lWR(sEE=k;3r*<-{)5$%nC}LaQ>p2sHnwC{8v>-AUQ_n{&5_ zO4c~Y7Z|`)R1es}-&MDcFNRHHpYc6b_^MItL!$|F{&Nk`?pD6mE&sJ4_mk_uPo=g`F`NuKWL?YuxIjnbbHmVD8XlQsQuQRbY{gveT& zl(qApmYufmm2?*1PAPC>E+iN?816-X#L%~&C%_o~fEUkEon}Z1aPZS6r9ISgFxy`)ky3H}(8rlE*6T5Ya3Fx-%SjWkz= z5wvFT8*JRCx&B?|5CH#OFS+jOOWLJZnSF0)@wrgiXM?`S)yHY&eNI6Dr(8Xj3UZPnWM zpK(v8ZWI}r{JI?5vgX}khik_dbSr(}(UqRYBbfv4sn`jD%Y+dZfA0zU!XjpUz~?c% zGHsje^hGJ!T!4U=o9nuOHaP~Eepz4erR$Aff^9yFTw!E*_l2_TELv5&naD@Eu?51E zN-%f^o`}lpSRZ%^iwV`No$Rh-div-zQ``Bdm(;YX$ z2^Lb}xcnHIIN;LA{g)Kc{>d-xW;T@BUkC|cGn%(G)Ae>vv1&A~^MM3q;I1Fjsx`k# zw=xcn*)YokG#)SD9PnkCLKCXMu3Eo1jm|q*eMH%E9E*N=riS7*-4a7{3l*GZOGv^} zP1QIIl(QVl9{>7MX||}&*dG*Zw30l+715EGhu#W@_VCJTv^AnlYDarW`GC(c>QX3! zoTKJbHMqCU^|&V9FT}+=+X5a#@MQ>#yIfc~5>@mzNXTEda3nH<4sKR`5y>oBDNmw) z#^aEC^M30(gOM4njnBg>%1w$+(7kg&{6y%h zLKYQ|lYDM2{EQtK^H|tG9LImZhV_a)aYQsNc6lBQ{;nh;q zPH}{T%uq^-I9LN&DfT5;%A5jAa@U~h8%nm<-{bNi9!Ws;qFh%w|^v8k2K?al?W0S7sj@y=%Sumo><$6n|XZ z+g+jV%?(lVzYCcfHm**dre^>3y7|A33bGA{^^@F_V))*&K#mXJRtdYl+R~Ye62(KuzuJjo96HY0J55^^qjVgC{Xiz+q*r9{HpjN-jR= zz-P+qx8c2`&_dM1)-{jwqqt#x3xJKw^|`{-M>j3*ugysvONPN0X7S7VeVmq*%W(KFf6dBY6L@iM z!=ac*0L^7bAfs>50f`8uR>4VV?O`LZ8`Rj*=AYBydNHTh+1q{UvWeJosLIGC^hMiC zuD6?9=j5VUut!vl3a-#C8Sp*Y**)5$EN@A1yw~}{d4$%eMS9Tru$H|{V#fnX5$)iZ z1yX-_|995^iDj;#WL1B)?2IR_rNzsm&~@S%3DxKPSn};GiB=PO;6oUD9>7I6f5I=$Kw7-}0(*587Dfpn55dCDL$omKUa~H+tuWgi-9hy`RPh13R1*X-lbm2?C&X;SxF&`1K8{&9QwJ+fm z8+Uy1JFsHwgTHR;8gRxF2aEYbYdZ?9B*v3ozBR@Eq|DwrSlgOlWe-bR!skuyZGPcg z3e=!NlAcq8sNhWa2nD^*w#}U5ujdW%B**o}p?#s0)RqW~O{MRb89+@}ZL7m^v)zLm z-11__nc*8xI$FAEV|+BIz3G$$>A(MFl5ghku8yXkZNK~{oS|gMMkpg= ztPrTb3Y1Bo26fY3@@X;1zbywp_#?aqOpIX!nnL_7AfyAeo~}eZWLZkJR^a816(5hg zwzav9*XI|SZy-T=vhNR+>wVI$IzluSv#hZ3y{`yYlIKMX-TfR z5xt;HE1ao%9;GS~5Hwl&fz+iG=&V+r}PW9;i8?xu{tr9XD{ejU?+nK6Nk2~%+a)7O}lF&kBuzhjl+UC-s>`E#@BN^*lb zsxp?1K_in0&!~zI1t6y7vm^4TJAK7d;})>_=6jvP)t|WNeuHKr`AXL7%K{i7QtSPq zqS^tBigv|ctXeHZ-6Y`VwiY@=v!Anu^$nI@$(eWf=J8VStOw}CAwHTb=YC2IF;e}X z9HT?KN?mPcP`_KW#@C4OctnLe@Cqai-ns>VXzg_trh2vc--4tFxWS*d!XQk<%4`G9 zN4$S%qDjFW%(^z*?TOU!+jD*io<+Ip11WSj;&*>5H!mu;!x=5VcMN6dZdx6dpHwb8 zeaI&a1>vf9$2xdB(p01hBGVejo-QCcX=wj)e%SeId!HQthYMbiWL=HxJa`2OJ-9lA zCksVHGu(cK)tJ?Qzpd6eTd&}D2L+0KRBmS^tDsh}toBgoQUbE8jDk?eF+(}ql$ky! zr>FANL)3W*OU=P_2^Ju*W{3Q-bKajUIR;}OvH??k-#E|reEKUscihWho~Li>59(gQ zGqcmmyS`b`jy*kJb1u7?{B#~k+kzSYGIPv+7{V-K(PSOgCd-Lr+|2_e-J9T*cw#Ns zzL3ankOcz$Xu?BG2BzPW4;;cuMC`)$`xoCJI+k+GI$XRvo6!N>3_pe-JLShPQyq#+ z$WHqwYPqHU(SMBFbFI;OL|F*$`Iz1|DJ}>@cbm)h92A~-81)R1IMk-}k&$#R#9_FJ zB~cT(J%#5aC>gF{A1obKFvCMhg(B}=z{yS@RpgxnEO4#%GhIfK#fWV{EvMu3!bEaK z1o{V3XtsJdf)arrsY2u8#nP#t$fgAkYZpE;(NPM`9#XI^kv#3=Y^g?^T^p66f_ZmMa-woeA5Qs z(bEZPsNoQV-nO!MDc%EG=!;iqN7`3bt49qNzLMbF!N^ubX7de4 z&2m22qJZ^GCz|Sv{W(j3WpX`m*=IFclD_9hENvSX^0vuy1U>-a8W*6J=hOesvCT z{owDd3$5hC&Q$nhD(mD&_1j##_7M;DuA18AC+xQ(BpN%}PHo*(cOad#yotuOZ)&kd zZW-Nl$&5)cqa{Huasfv`Xk)bJMRs(Am;4Y_YnJAL+v0$U^rvCTjdO5zUjR2?tSa;TPw zgqhAUbJHJu-}}3pl}MXFqwci26g16M`uMqkf>+)2ovXKbM7(vW0SU2iN=b#k(an%^ zUWW斅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 _ExUELW3sLfM@`>cQmPFnS{qL`L#PSweTZ!i| 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 diff --git a/installer/lib/launch4j/manifest/uac.exe.manifest b/installer/lib/launch4j/manifest/uac.exe.manifest new file mode 100644 index 000000000..3041fbc5b --- /dev/null +++ b/installer/lib/launch4j/manifest/uac.exe.manifest @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/installer/lib/launch4j/manifest/xp-themes.exe.manifest b/installer/lib/launch4j/manifest/xp-themes.exe.manifest new file mode 100644 index 000000000..e2c7511f9 --- /dev/null +++ b/installer/lib/launch4j/manifest/xp-themes.exe.manifest @@ -0,0 +1,14 @@ + + + + + + + + \ No newline at end of file diff --git a/installer/lib/launch4j/readme.txt b/installer/lib/launch4j/readme.txt deleted file mode 100644 index c74ec4253..000000000 --- a/installer/lib/launch4j/readme.txt +++ /dev/null @@ -1,35 +0,0 @@ -Launch4j Cross-platform java application wrapper for creating windows native executables. -Copyright (C) 2005 Grzegorz Kowal - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - - -Head subproject (the code which is attached to the wrapped jars) is -licensed under the GNU Lesser General Public License. - -Launch4j may be used for wrapping closed source, commercial applications. - -The following projects are used by Launch4j... - MinGW binutils (http://www.mingw.org/) - Commons BeanUtils (http://jakarta.apache.org/commons/beanutils/) - Commons Logging (http://jakarta.apache.org/commons/logging/) - XStream (http://xstream.codehaus.org/) - JGoodies Forms (http://www.jgoodies.com/freeware/forms/) - JGoodies Looks (http://www.jgoodies.com/freeware/looks/) - Foxtrot (http://foxtrot.sourceforge.net/) - Nuvola Icon Theme (http://www.icon-king.com) - Forms were created using Abeille Forms Designer (https://abeille.dev.java.net/) - -This product includes software developed by the Apache Software Foundation (http://www.apache.org/). diff --git a/installer/lib/launch4j/src/images/asterix-o.gif b/installer/lib/launch4j/src/images/asterix-o.gif new file mode 100644 index 0000000000000000000000000000000000000000..f5cf3b3072a46cb69c107e2364b6efa9348e046b GIT binary patch literal 51 zcmZ?wbhEHbWM$xCXkcXc&%p5i|9{1wER0+Xj0`#qKmd|qVB+GDsqA{mzj%&`2!k~M DIGPKO literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/src/images/asterix.gif b/installer/lib/launch4j/src/images/asterix.gif new file mode 100644 index 0000000000000000000000000000000000000000..ba801670aa9ab92bc8af18e64f415cd7647728cc GIT binary patch literal 53 zcmZ?wbhEHbWM$xCXkcXc&%p5i|9{1wER0+Xj0`#qKmd|qVB+yfSi!zKebJmPQNauh F)&N=64FdoG literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/src/images/button_ok.png b/installer/lib/launch4j/src/images/button_ok.png new file mode 100644 index 0000000000000000000000000000000000000000..5b0f6a6174f67879d89b8c970d88734cd6f9f844 GIT binary patch literal 883 zcmV-(1C0EMP)wF51aIxG|t0o~WeTux?(*f!J?S`!vJrWM3^ z)v?u>(g^>@;xO#mkNlu=e*%b!BkO=S9U%&s|{QUTj4;ur+Qxv`b{1=&{q{_{@=tdkKKPJjPv{N-R+ z=H{q0b!wOgrI|?`QkZ(!{_7i9LV-VtRJx`%DQ2F^23wD{DqBhIRk` zF);r5{m+$GoMl&Put7+Jt2=`@4-Z4{!AlI=w!d7({+qd+0V(7F0suh(zW)OTFd63V z^!sFSNlF9<4gMd;*WzU&Dh*+FS2`3*A~OK^{__Bz$W0R(*Uum z?9l=80a*nF0_+3*1ONs71^@>82>=H93IGBCK>)u00}wAF|NZm@`|<(rTQ4UU0WcOM z00aL60Pp?k0KeVV0IsF+;Q#FbO$G-6;062!00#UB00{XE00{OE015OE00M|vNJE=} z^$*A6FQ5Ne@vDAS;$dfD`1Jo3!|5mY7`86`{^s{nmH;M>-&g)K|ATm%5g73x%=8b8 z0Ro7L;}<&v=RdZejL-PCo<9Aa;W^_ShKsN6GwfXY>&vg(Trted45#rWFn|DJV*bm{ z0Ky#q*cZJ%!~O8Y?dJ?fS26$kepw(JsCg%$6bcYP%o1uwz$j&AU}9wa&h(8#?9FW+ ziyzl{>lm2-O#9FFhv6UdZ-)OYzzhWT0wab200G2EX?6w(FaS`kAv2YZ@FM^K002ov JPDHLkV1n^7jC=q9 literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/src/images/cancel16.png b/installer/lib/launch4j/src/images/cancel16.png new file mode 100644 index 0000000000000000000000000000000000000000..a432b492c4f8f54714290b27bd978eefa714488d GIT binary patch literal 1133 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 JPDHLkV1n^7jC=q9 literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/src/images/up16.png b/installer/lib/launch4j/src/images/up16.png new file mode 100644 index 0000000000000000000000000000000000000000..184c118b63424218e82ea1a7d8acf4aa7f4741dc GIT binary patch literal 906 zcmV;519kj~P)VFvnKmaj8 zi~&-tOdykhoPR+4yE`w}r0d|mFrNMU!#S#|tZIPb(;;$Ttx(Ls01!Z67cj6h12u#6 z{$*hJ`?okP)uedh1ZRd-cbOPI{a|2dZMA3k`-dU9v+L+fpew2wI9P#}GJ>@N1P}|{ zKoI!*$KJtNxoP?o7lu{0nHc7s{m=0I>ko$S@Bc8gwOcXVx%<9s?b_=X7+Bd>Gq6Go z002(O`0<@$42yR?WAJp7W(bQ^j|Upy3epM?06_r0{{a90{{R;znA6A1=l}Ql{Qva# z`~Uy@_y3f;LcX?f=u)<^LcpoZIoKfq2*hm6EDW#S{A4I=JM-uJ@4p{8IGH(qvOydV z5I|r9-hTMuwr<5$A%VDw!}=|E4={ZD zQ^df`#Ks`R@e!mKAb=nN!Nhp~A2-{51} 0) { - os.write(buffer, 0, len); - } - _log.append("Successfully created " + outfile.getPath()); - return outfile; - } catch (IOException e) { - Util.delete(outfile); - _log.append(e.getMessage()); - throw new BuilderException(e); - } catch (ExecException e) { - Util.delete(outfile); - String msg = e.getMessage(); - if (msg != null && msg.indexOf("windres") != -1) { - _log.append("Generated resource file...\n"); - _log.append(rcb.getContent()); - } - throw new BuilderException(e); - } finally { - Util.close(is); - Util.close(os); - Util.delete(rc); - Util.delete(ro); - } - } -} - -class Cmd { - private final StringBuffer _sb = new StringBuffer(); - private final String _basedir; - private final boolean _quote; - - public Cmd(String basedir) { - _basedir = basedir; - _quote = basedir.indexOf(' ') != -1; - } - - public Cmd add(String s) { - space(); - _sb.append(s); - return this; - } - - public Cmd addAbsFile(String file) { - space(); - boolean quote = file.indexOf(' ') != -1; - if (quote) { - _sb.append('"'); - } - _sb.append(file); - if (quote) { - _sb.append('"'); - } - return this; - } - - public Cmd addFile(String file) { - space(); - if (_quote) { - _sb.append('"'); - } - _sb.append(_basedir); - _sb.append(file); - if (_quote) { - _sb.append('"'); - } - return this; - } - - public Cmd addExe(String file) { - return addFile(Util.WINDOWS_OS ? file + ".exe" : file); - } - - private void space() { - if (_sb.length() > 0) { - _sb.append(' '); - } - } - - public String toString() { - return _sb.toString(); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on 2005-04-24 + */ +package net.sf.launch4j; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.StringTokenizer; + +import net.sf.launch4j.binding.InvariantViolationException; +import net.sf.launch4j.config.Config; +import net.sf.launch4j.config.ConfigPersister; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class Builder { + private final Log _log; + private final File _basedir; + + public Builder(Log log) { + _log = log; + _basedir = Util.getJarBasedir(); + } + + public Builder(Log log, File basedir) { + _log = log; + _basedir = basedir; + } + + /** + * @return Output file path. + */ + public File build() throws BuilderException { + final Config c = ConfigPersister.getInstance().getConfig(); + try { + c.validate(); + } catch (InvariantViolationException e) { + throw new BuilderException(e.getMessage()); + } + File rc = null; + File ro = null; + File outfile = null; + FileInputStream is = null; + FileOutputStream os = null; + final RcBuilder rcb = new RcBuilder(); + try { + rc = rcb.build(c); + ro = Util.createTempFile("o"); + outfile = ConfigPersister.getInstance().getOutputFile(); + + Cmd resCmd = new Cmd(_basedir); + resCmd.addExe("windres") + .add(Util.WINDOWS_OS ? "--preprocessor=type" : "--preprocessor=cat") + .add("-J rc -O coff -F pe-i386") + .addAbsFile(rc) + .addAbsFile(ro); + _log.append(Messages.getString("Builder.compiling.resources")); + resCmd.exec(_log); + + Cmd ldCmd = new Cmd(_basedir); + ldCmd.addExe("ld") + .add("-mi386pe") + .add("--oformat pei-i386") + .add((c.getHeaderType().equals(Config.GUI_HEADER)) + ? "--subsystem windows" : "--subsystem console") + .add("-s") // strip symbols + .addFiles(c.getHeaderObjects()) + .addAbsFile(ro) + .addFiles(c.getLibs()) + .add("-o") + .addAbsFile(outfile); + _log.append(Messages.getString("Builder.linking")); + ldCmd.exec(_log); + + if (!c.isDontWrapJar()) { + _log.append(Messages.getString("Builder.wrapping")); + int len; + byte[] buffer = new byte[1024]; + is = new FileInputStream(Util.getAbsoluteFile( + ConfigPersister.getInstance().getConfigPath(), c.getJar())); + os = new FileOutputStream(outfile, true); + while ((len = is.read(buffer)) > 0) { + os.write(buffer, 0, len); + } + } + _log.append(Messages.getString("Builder.success") + outfile.getPath()); + return outfile; + } catch (IOException e) { + Util.delete(outfile); + _log.append(e.getMessage()); + throw new BuilderException(e); + } catch (ExecException e) { + Util.delete(outfile); + String msg = e.getMessage(); + if (msg != null && msg.indexOf("windres") != -1) { + if (e.getErrLine() != -1) { + _log.append(Messages.getString("Builder.line.has.errors", + String.valueOf(e.getErrLine()))); + _log.append(rcb.getLine(e.getErrLine())); + } else { + _log.append(Messages.getString("Builder.generated.resource.file")); + _log.append(rcb.getContent()); + } + } + throw new BuilderException(e); + } finally { + Util.close(is); + Util.close(os); + Util.delete(rc); + Util.delete(ro); + } + } +} + +class Cmd { + private final List _cmd = new ArrayList(); + private final File _basedir; + private final File _bindir; + + public Cmd(File basedir) { + _basedir = basedir; + String path = System.getProperty("launch4j.bindir"); + if (path == null) { + _bindir = new File(basedir, "bin"); + } else { + File bindir = new File(path); + _bindir = bindir.isAbsolute() ? bindir : new File(basedir, path); + } + } + + public Cmd add(String s) { + StringTokenizer st = new StringTokenizer(s); + while (st.hasMoreTokens()) { + _cmd.add(st.nextToken()); + } + return this; + } + + public Cmd addAbsFile(File file) { + _cmd.add(file.getPath()); + return this; + } + + public Cmd addFile(String pathname) { + _cmd.add(new File(_basedir, pathname).getPath()); + return this; + } + + public Cmd addExe(String pathname) { + if (Util.WINDOWS_OS) { + pathname += ".exe"; + } + _cmd.add(new File(_bindir, pathname).getPath()); + return this; + } + + public Cmd addFiles(List files) { + for (Iterator iter = files.iterator(); iter.hasNext();) { + addFile((String) iter.next()); + } + return this; + } + + public void exec(Log log) throws ExecException { + String[] cmd = (String[]) _cmd.toArray(new String[_cmd.size()]); + Util.exec(cmd, log); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/BuilderException.java b/installer/lib/launch4j/src/net/sf/launch4j/BuilderException.java index 2728dfb7a..a84c2e279 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/BuilderException.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/BuilderException.java @@ -1,38 +1,52 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on May 13, 2005 - */ -package net.sf.launch4j; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class BuilderException extends Exception { - public BuilderException() {} - - public BuilderException(Throwable t) { - super(t); - } - - public BuilderException(String msg) { - super(msg); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 13, 2005 + */ +package net.sf.launch4j; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class BuilderException extends Exception { + public BuilderException() {} + + public BuilderException(Throwable t) { + super(t); + } + + public BuilderException(String msg) { + super(msg); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/ExecException.java b/installer/lib/launch4j/src/net/sf/launch4j/ExecException.java index 0a46fe060..236ae780f 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/ExecException.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/ExecException.java @@ -1,38 +1,66 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on May 14, 2005 - */ -package net.sf.launch4j; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class ExecException extends Exception { - public ExecException() {} - - public ExecException(Throwable t) { - super(t); - } - - public ExecException(String msg) { - super(msg); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 14, 2005 + */ +package net.sf.launch4j; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class ExecException extends Exception { + private final int _errLine; + + public ExecException(Throwable t, int errLine) { + super(t); + _errLine = errLine; + } + + public ExecException(Throwable t) { + this(t, -1); + } + + public ExecException(String msg, int errLine) { + super(msg); + _errLine = errLine; + } + + public ExecException(String msg) { + this(msg, -1); + } + + public int getErrLine() { + return _errLine; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/FileChooserFilter.java b/installer/lib/launch4j/src/net/sf/launch4j/FileChooserFilter.java index 69d410f5e..5199a6deb 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/FileChooserFilter.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/FileChooserFilter.java @@ -1,62 +1,76 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on 2004-01-15 - */ -package net.sf.launch4j; - -import java.io.File; - -import javax.swing.filechooser.FileFilter; - -/** - * @author Copyright (C) 2004 Grzegorz Kowal - */ -public class FileChooserFilter extends FileFilter { - String _description; - String[] _extensions; - - public FileChooserFilter(String description, String extension) { - _description = description; - _extensions = new String[] {extension}; - } - - public FileChooserFilter(String description, String[] extensions) { - _description = description; - _extensions = extensions; - } - - public boolean accept(File f) { - if (f.isDirectory()) { - return true; - } - String ext = Util.getExtension(f); - for (int i = 0; i < _extensions.length; i++) { - if (ext.toLowerCase().equals(_extensions[i].toLowerCase())) { - return true; - } - } - return false; - } - - public String getDescription() { - return _description; - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on 2004-01-15 + */ +package net.sf.launch4j; + +import java.io.File; + +import javax.swing.filechooser.FileFilter; + +/** + * @author Copyright (C) 2004 Grzegorz Kowal + */ +public class FileChooserFilter extends FileFilter { + String _description; + String[] _extensions; + + public FileChooserFilter(String description, String extension) { + _description = description; + _extensions = new String[] {extension}; + } + + public FileChooserFilter(String description, String[] extensions) { + _description = description; + _extensions = extensions; + } + + public boolean accept(File f) { + if (f.isDirectory()) { + return true; + } + String ext = Util.getExtension(f); + for (int i = 0; i < _extensions.length; i++) { + if (ext.toLowerCase().equals(_extensions[i].toLowerCase())) { + return true; + } + } + return false; + } + + public String getDescription() { + return _description; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/Launcher.java b/installer/lib/launch4j/src/net/sf/launch4j/Launcher.java deleted file mode 100644 index 587b340f5..000000000 --- a/installer/lib/launch4j/src/net/sf/launch4j/Launcher.java +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Created on Jun 4, 2005 - */ -package net.sf.launch4j; - -/** - * This class allows launch4j to act as a launcher instead of a wrapper. - * It's useful on Windows because an application cannot be a GUI and console one - * at the same time. So there are two launchers that start launch4j.jar: launch4j.exe - * for GUI mode and launch4jc.exe for console operation. - * The Launcher class is packed into an executable jar that contains nothing else but - * the manifest with Class-Path attribute defined as in the application jar. The jar - * is wrapped with launch4j. - * - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class Launcher { - public static void main(String[] args) { - Main.main(args); - } -} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/Log.java b/installer/lib/launch4j/src/net/sf/launch4j/Log.java index 84eef2e1e..c4d591b0c 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/Log.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/Log.java @@ -1,91 +1,105 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on May 12, 2005 - */ -package net.sf.launch4j; - -import javax.swing.JTextArea; -import javax.swing.SwingUtilities; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public abstract class Log { - private static final Log _consoleLog = new ConsoleLog(); - private static final Log _antLog = new AntLog(); - - public abstract void clear(); - public abstract void append(String line); - - public static Log getConsoleLog() { - return _consoleLog; - } - - public static Log getAntLog() { - return _antLog; - } - - public static Log getSwingLog(JTextArea textArea) { - return new SwingLog(textArea); - } -} - -class ConsoleLog extends Log { - public void clear() { - System.out.println("\n"); - } - - public void append(String line) { - System.out.println("launch4j: " + line); - } -} - -class AntLog extends Log { - public void clear() { - System.out.println("\n"); - } - - public void append(String line) { - System.out.println(line); - } -} - -class SwingLog extends Log { - private final JTextArea _textArea; - - public SwingLog(JTextArea textArea) { - _textArea = textArea; - } - - public void clear() { - SwingUtilities.invokeLater(new Runnable() { - public void run() { - _textArea.setText(""); - }}); - } - - public void append(final String line) { - SwingUtilities.invokeLater(new Runnable() { - public void run() { - _textArea.append(line + "\n"); - }}); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 12, 2005 + */ +package net.sf.launch4j; + +import javax.swing.JTextArea; +import javax.swing.SwingUtilities; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public abstract class Log { + private static final Log _consoleLog = new ConsoleLog(); + private static final Log _antLog = new AntLog(); + + public abstract void clear(); + public abstract void append(String line); + + public static Log getConsoleLog() { + return _consoleLog; + } + + public static Log getAntLog() { + return _antLog; + } + + public static Log getSwingLog(JTextArea textArea) { + return new SwingLog(textArea); + } +} + +class ConsoleLog extends Log { + public void clear() { + System.out.println("\n"); + } + + public void append(String line) { + System.out.println("launch4j: " + line); + } +} + +class AntLog extends Log { + public void clear() { + System.out.println("\n"); + } + + public void append(String line) { + System.out.println(line); + } +} + +class SwingLog extends Log { + private final JTextArea _textArea; + + public SwingLog(JTextArea textArea) { + _textArea = textArea; + } + + public void clear() { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + _textArea.setText(""); + }}); + } + + public void append(final String line) { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + _textArea.append(line + "\n"); + }}); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/Main.java b/installer/lib/launch4j/src/net/sf/launch4j/Main.java index a49cb1ae9..45f84ad79 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/Main.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/Main.java @@ -1,62 +1,99 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 21, 2005 - */ -package net.sf.launch4j; - -import java.io.File; - -import net.sf.launch4j.config.ConfigPersister; -import net.sf.launch4j.config.ConfigPersisterException; -import net.sf.launch4j.formimpl.MainFrame; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class Main { - - public static final String PROGRAM_NAME = "launch4j 2.0.RC3"; - public static final String PROGRAM_DESCRIPTION = PROGRAM_NAME + - " :: Cross-platform Java application wrapper for creating Windows native executables\n" + - "Copyright (C) 2005 Grzegorz Kowal\n" + - "launch4j comes with ABSOLUTELY NO WARRANTY\n" + - "This is free software, licensed under the GNU General Public License.\n" + - "This product includes software developed by the Apache Software Foundation (http://www.apache.org/).\n\n"; - - public static void main(String[] args) { - try { - if (args.length == 0) { - ConfigPersister.getInstance().createBlank(); - MainFrame.createInstance(); - } else if (args.length == 1 && !args[0].startsWith("-")) { - ConfigPersister.getInstance().load(new File(args[0])); - Builder b = new Builder(Log.getConsoleLog()); - b.build(); - } else { - System.out.println(PROGRAM_DESCRIPTION + "usage: launch4j config.xml"); - } - } catch (ConfigPersisterException e) { - Log.getConsoleLog().append(e.getMessage()); - } catch (BuilderException e) { - Log.getConsoleLog().append(e.getMessage()); - } - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2008 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 21, 2005 + */ +package net.sf.launch4j; + +import java.io.File; +import java.io.InputStream; +import java.util.Properties; + +import net.sf.launch4j.config.ConfigPersister; +import net.sf.launch4j.formimpl.MainFrame; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class Main { + private static String _name; + private static String _description; + + public static void main(String[] args) { + try { + Properties props = new Properties(); + InputStream in = Main.class.getClassLoader() + .getResourceAsStream("launch4j.properties"); + props.load(in); + in.close(); + setDescription(props); + + if (args.length == 0) { + ConfigPersister.getInstance().createBlank(); + MainFrame.createInstance(); + } else if (args.length == 1 && !args[0].startsWith("-")) { + ConfigPersister.getInstance().load(new File(args[0])); + Builder b = new Builder(Log.getConsoleLog()); + b.build(); + } else { + System.out.println(_description + + Messages.getString("Main.usage") + + ": launch4j config.xml"); + } + } catch (Exception e) { + Log.getConsoleLog().append(e.getMessage()); + } + } + + public static String getName() { + return _name; + } + + public static String getDescription() { + return _description; + } + + private static void setDescription(Properties props) { + _name = "Launch4j " + props.getProperty("version"); + _description = _name + + " (http://launch4j.sourceforge.net/)\n" + + "Cross-platform Java application wrapper" + + " for creating Windows native executables.\n\n" + + "Copyright (C) 2004, 2008 Grzegorz Kowal\n\n" + + "Launch4j comes with ABSOLUTELY NO WARRANTY.\n" + + "This is free software, licensed under the BSD License.\n" + + "This product includes software developed by the Apache Software Foundation" + + " (http://www.apache.org/)."; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/Messages.java b/installer/lib/launch4j/src/net/sf/launch4j/Messages.java new file mode 100644 index 000000000..35d4c8950 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/Messages.java @@ -0,0 +1,78 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +package net.sf.launch4j; + +import java.text.MessageFormat; +import java.util.MissingResourceException; +import java.util.ResourceBundle; + +public class Messages { + private static final String BUNDLE_NAME = "net.sf.launch4j.messages"; + + private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle + .getBundle(BUNDLE_NAME); + private static final MessageFormat FORMATTER = new MessageFormat(""); + + private Messages() { + } + + public static String getString(String key) { + try { + return RESOURCE_BUNDLE.getString(key); + } catch (MissingResourceException e) { + return '!' + key + '!'; + } + } + + public static String getString(String key, String arg0) { + return getString(key, new Object[] {arg0}); + } + + public static String getString(String key, String arg0, String arg1) { + return getString(key, new Object[] {arg0, arg1}); + } + + public static String getString(String key, String arg0, String arg1, String arg2) { + return getString(key, new Object[] {arg0, arg1, arg2}); + } + + public static String getString(String key, Object[] args) { + try { + FORMATTER.applyPattern(RESOURCE_BUNDLE.getString(key)); + return FORMATTER.format(args); + } catch (MissingResourceException e) { + return '!' + key + '!'; + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/OptionParser.java b/installer/lib/launch4j/src/net/sf/launch4j/OptionParser.java index 7686c91b6..bb2432c8e 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/OptionParser.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/OptionParser.java @@ -1,57 +1,71 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on 2005-04-24 - */ -package net.sf.launch4j; - -//import net.sf.launch4j.config.Config; - -//import org.apache.commons.cli.CommandLine; -//import org.apache.commons.cli.CommandLineParser; -//import org.apache.commons.cli.HelpFormatter; -//import org.apache.commons.cli.Options; -//import org.apache.commons.cli.ParseException; -//import org.apache.commons.cli.PosixParser; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class OptionParser { - -// private final Options _options; -// -// public OptionParser() { -// _options = new Options(); -// _options.addOption("h", "header", true, "header"); -// } -// -// public Config parse(Config c, String[] args) throws ParseException { -// CommandLineParser parser = new PosixParser(); -// CommandLine cl = parser.parse(_options, args); -// c.setJar(getFile(props, Config.JAR)); -// c.setOutfile(getFile(props, Config.OUTFILE)); -// } -// -// public void printHelp() { -// HelpFormatter formatter = new HelpFormatter(); -// formatter.printHelp("launch4j", _options); -// } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on 2005-04-24 + */ +package net.sf.launch4j; + +//import net.sf.launch4j.config.Config; + +//import org.apache.commons.cli.CommandLine; +//import org.apache.commons.cli.CommandLineParser; +//import org.apache.commons.cli.HelpFormatter; +//import org.apache.commons.cli.Options; +//import org.apache.commons.cli.ParseException; +//import org.apache.commons.cli.PosixParser; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class OptionParser { + +// private final Options _options; +// +// public OptionParser() { +// _options = new Options(); +// _options.addOption("h", "header", true, "header"); +// } +// +// public Config parse(Config c, String[] args) throws ParseException { +// CommandLineParser parser = new PosixParser(); +// CommandLine cl = parser.parse(_options, args); +// c.setJar(getFile(props, Config.JAR)); +// c.setOutfile(getFile(props, Config.OUTFILE)); +// } +// +// public void printHelp() { +// HelpFormatter formatter = new HelpFormatter(); +// formatter.printHelp("launch4j", _options); +// } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/RcBuilder.java b/installer/lib/launch4j/src/net/sf/launch4j/RcBuilder.java index 57c20cb66..f8885e3e6 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/RcBuilder.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/RcBuilder.java @@ -1,230 +1,340 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on 2005-04-24 - */ -package net.sf.launch4j; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; - -import net.sf.launch4j.config.Config; -import net.sf.launch4j.config.ConfigPersister; -import net.sf.launch4j.config.Jre; -import net.sf.launch4j.config.Splash; -import net.sf.launch4j.config.VersionInfo; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class RcBuilder { - - // winnt.h - public static final int LANG_NEUTRAL = 0; - public static final int SUBLANG_NEUTRAL = 0; - public static final int SUBLANG_DEFAULT = 1; - public static final int SUBLANG_SYS_DEFAULT = 2; - - // ICON - public static final int APP_ICON = 1; - - // BITMAP - public static final int SPLASH_BITMAP = 1; - - // RCDATA - public static final int JRE_PATH = 1; - public static final int JAVA_MIN_VER = 2; - public static final int JAVA_MAX_VER = 3; - public static final int SHOW_SPLASH = 4; - public static final int SPLASH_WAITS_FOR_WINDOW = 5; - public static final int SPLASH_TIMEOUT = 6; - public static final int SPLASH_TIMEOUT_ERR = 7; - public static final int CHDIR = 8; - public static final int SET_PROC_NAME = 9; - public static final int ERR_TITLE = 10; - public static final int GUI_HEADER_STAYS_ALIVE = 11; - public static final int JVM_ARGS = 12; - public static final int JAR_ARGS = 13; - - private final StringBuffer _sb = new StringBuffer(); - - public String getContent() { - return _sb.toString(); - } - - public File build(Config c) throws IOException { - _sb.append("LANGUAGE "); - _sb.append(LANG_NEUTRAL); - _sb.append(", "); - _sb.append(SUBLANG_DEFAULT); - _sb.append('\n'); - addVersionInfo(c.getVersionInfo()); - addJre(c.getJre()); - addIcon(APP_ICON, c.getIcon()); - addText(ERR_TITLE, c.getErrTitle()); - addText(JAR_ARGS, c.getJarArgs()); - addWindowsPath(CHDIR, c.getChdir()); - addTrue(SET_PROC_NAME, c.isCustomProcName()); - addTrue(GUI_HEADER_STAYS_ALIVE, c.isStayAlive()); - addSplash(c.getSplash()); - File f = File.createTempFile("launch4j", "rc"); - BufferedWriter w = new BufferedWriter(new FileWriter(f)); - w.write(_sb.toString()); - w.close(); - return f; - } - - private void addVersionInfo(VersionInfo v) { - if (v == null) { - return; - } - _sb.append("1 VERSIONINFO\n"); - _sb.append("FILEVERSION "); - _sb.append(v.getFileVersion().replaceAll("\\.", ", ")); - _sb.append("\nPRODUCTVERSION "); - _sb.append(v.getProductVersion().replaceAll("\\.", ", ")); - _sb.append("\nFILEFLAGSMASK 0\n" + - "FILEOS 0x40000\n" + - "FILETYPE 1\n" + - "{\n" + - " BLOCK \"StringFileInfo\"\n" + - " {\n" + - " BLOCK \"040904E4\"\n" + // English - " {\n"); - addVerBlockValue("CompanyName", v.getCompanyName()); - addVerBlockValue("FileDescription", v.getFileDescription()); - addVerBlockValue("FileVersion", v.getTxtFileVersion()); - addVerBlockValue("InternalName", v.getInternalName()); - addVerBlockValue("LegalCopyright", v.getCopyright()); - addVerBlockValue("OriginalFilename", v.getOriginalFilename()); - addVerBlockValue("ProductName", v.getProductName()); - addVerBlockValue("ProductVersion", v.getTxtProductVersion()); - _sb.append(" }\n }\n}\n"); - } - - private void addJre(Jre jre) { - addWindowsPath(JRE_PATH, jre.getPath()); - addText(JAVA_MIN_VER, jre.getMinVersion()); - addText(JAVA_MAX_VER, jre.getMaxVersion()); - StringBuffer jvmArgs = new StringBuffer(); - if (jre.getInitialHeapSize() > 0) { - jvmArgs.append("-Xms"); - jvmArgs.append(jre.getInitialHeapSize()); - jvmArgs.append('m'); - } - if (jre.getMaxHeapSize() > 0) { - addSpace(jvmArgs); - jvmArgs.append("-Xmx"); - jvmArgs.append(jre.getMaxHeapSize()); - jvmArgs.append('m'); - } - if (jre.getArgs() != null && jre.getArgs().length() > 0) { - addSpace(jvmArgs); - jvmArgs.append(jre.getArgs().replaceAll("\n", " ")); - } - addText(JVM_ARGS, jvmArgs.toString()); - } - - private void addSplash(Splash splash) { - if (splash == null) { - return; - } - addTrue(SHOW_SPLASH, true); - addTrue(SPLASH_WAITS_FOR_WINDOW, splash.getWaitForWindow()); - addText(SPLASH_TIMEOUT, String.valueOf(splash.getTimeout())); - addTrue(SPLASH_TIMEOUT_ERR, splash.isTimeoutErr()); - addBitmap(SPLASH_BITMAP, splash.getFile()); - } - - private void addText(int id, String text) { - if (text == null || text.length() == 0) { - return; - } - _sb.append(id); - _sb.append(" RCDATA BEGIN \""); - _sb.append(text); - _sb.append("\\0\" END\n"); - } - - /** - * Stores path in Windows format with '\' separators. - */ - private void addWindowsPath(int id, String path) { - if (path == null || path.equals("")) { - return; - } - _sb.append(id); - _sb.append(" RCDATA BEGIN \""); - _sb.append(path.replaceAll("\\\\", "\\\\\\\\") - .replaceAll("/", "\\\\\\\\")); - _sb.append("\\0\" END\n"); - } - - private void addTrue(int id, boolean value) { - if (value) { - addText(id, "true"); - } - } - - private void addIcon(int id, File icon) { - if (icon == null || icon.getPath().equals("")) { - return; - } - _sb.append(id); - _sb.append(" ICON DISCARDABLE \""); - _sb.append(getPath(Util.getAbsoluteFile( - ConfigPersister.getInstance().getConfigPath(), icon))); - _sb.append("\"\n"); - } - - private void addBitmap(int id, File bitmap) { - if (bitmap == null) { - return; - } - _sb.append(id); - _sb.append(" BITMAP \""); - _sb.append(getPath(Util.getAbsoluteFile( - ConfigPersister.getInstance().getConfigPath(), bitmap))); - _sb.append("\"\n"); - } - - private String getPath(File f) { - return f.getPath().replaceAll("\\\\", "\\\\\\\\"); - } - - private void addSpace(StringBuffer sb) { - int len = sb.length(); - if (len-- > 0 && sb.charAt(len) != ' ') { - sb.append(' '); - } - } - - private void addVerBlockValue(String key, String value) { - _sb.append(" VALUE \""); - _sb.append(key); - _sb.append("\", \""); - if (value != null) { - _sb.append(value); - } - _sb.append("\"\n"); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on 2005-04-24 + */ +package net.sf.launch4j; + +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; +import java.util.List; + +import net.sf.launch4j.config.Config; +import net.sf.launch4j.config.ConfigPersister; +import net.sf.launch4j.config.Jre; +import net.sf.launch4j.config.Msg; +import net.sf.launch4j.config.Splash; +import net.sf.launch4j.config.VersionInfo; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class RcBuilder { + + // winnt.h + public static final int LANG_NEUTRAL = 0; + public static final int SUBLANG_NEUTRAL = 0; + public static final int SUBLANG_DEFAULT = 1; + public static final int SUBLANG_SYS_DEFAULT = 2; + + // MANIFEST + public static final int MANIFEST = 1; + + // ICON + public static final int APP_ICON = 1; + + // BITMAP + public static final int SPLASH_BITMAP = 1; + + // RCDATA + public static final int JRE_PATH = 1; + public static final int JAVA_MIN_VER = 2; + public static final int JAVA_MAX_VER = 3; + public static final int SHOW_SPLASH = 4; + public static final int SPLASH_WAITS_FOR_WINDOW = 5; + public static final int SPLASH_TIMEOUT = 6; + public static final int SPLASH_TIMEOUT_ERR = 7; + public static final int CHDIR = 8; + public static final int SET_PROC_NAME = 9; + public static final int ERR_TITLE = 10; + public static final int GUI_HEADER_STAYS_ALIVE = 11; + public static final int JVM_OPTIONS = 12; + public static final int CMD_LINE = 13; + public static final int JAR = 14; + public static final int MAIN_CLASS = 15; + public static final int CLASSPATH = 16; + public static final int WRAPPER = 17; + public static final int JDK_PREFERENCE = 18; + public static final int ENV_VARIABLES = 19; + public static final int PRIORITY_CLASS = 20; + public static final int DOWNLOAD_URL = 21; + public static final int SUPPORT_URL = 22; + public static final int MUTEX_NAME = 23; + public static final int INSTANCE_WINDOW_TITLE = 24; + public static final int INITIAL_HEAP_SIZE = 25; + public static final int INITIAL_HEAP_PERCENT = 26; + public static final int MAX_HEAP_SIZE = 27; + public static final int MAX_HEAP_PERCENT = 28; + + public static final int STARTUP_ERR = 101; + public static final int BUNDLED_JRE_ERR = 102; + public static final int JRE_VERSION_ERR = 103; + public static final int LAUNCHER_ERR = 104; + public static final int INSTANCE_ALREADY_EXISTS_MSG = 105; + + private final StringBuffer _sb = new StringBuffer(); + + public String getContent() { + return _sb.toString(); + } + + public String getLine(int line) { + return _sb.toString().split("\n")[line - 1]; + } + + public File build(Config c) throws IOException { + _sb.append("LANGUAGE "); + _sb.append(LANG_NEUTRAL); + _sb.append(", "); + _sb.append(SUBLANG_DEFAULT); + _sb.append('\n'); + addVersionInfo(c.getVersionInfo()); + addJre(c.getJre()); + addManifest(MANIFEST, c.getManifest()); + addIcon(APP_ICON, c.getIcon()); + addText(ERR_TITLE, c.getErrTitle()); + addText(DOWNLOAD_URL, c.getDownloadUrl()); + addText(SUPPORT_URL, c.getSupportUrl()); + addText(CMD_LINE, c.getCmdLine()); + addWindowsPath(CHDIR, c.getChdir()); + addText(PRIORITY_CLASS, String.valueOf(c.getPriorityClass())); + addTrue(SET_PROC_NAME, c.isCustomProcName()); + addTrue(GUI_HEADER_STAYS_ALIVE, c.isStayAlive()); + addSplash(c.getSplash()); + addMessages(c); + + if (c.getSingleInstance() != null) { + addText(MUTEX_NAME, c.getSingleInstance().getMutexName()); + addText(INSTANCE_WINDOW_TITLE, c.getSingleInstance().getWindowTitle()); + } + + if (c.getVariables() != null && !c.getVariables().isEmpty()) { + StringBuffer vars = new StringBuffer(); + append(vars, c.getVariables(), "\t"); + addText(ENV_VARIABLES, vars.toString()); + } + + // MAIN_CLASS / JAR + addTrue(WRAPPER, !c.isDontWrapJar()); + if (c.getClassPath() != null) { + addText(MAIN_CLASS, c.getClassPath().getMainClass()); + addWindowsPath(CLASSPATH, c.getClassPath().getPathsString()); + } + if (c.isDontWrapJar() && c.getJar() != null) { + addWindowsPath(JAR, c.getJar().getPath()); + } + + File f = Util.createTempFile("rc"); + BufferedWriter w = new BufferedWriter(new FileWriter(f)); + w.write(_sb.toString()); + w.close(); + return f; + } + + private void addVersionInfo(VersionInfo v) { + if (v == null) { + return; + } + _sb.append("1 VERSIONINFO\n"); + _sb.append("FILEVERSION "); + _sb.append(v.getFileVersion().replaceAll("\\.", ", ")); + _sb.append("\nPRODUCTVERSION "); + _sb.append(v.getProductVersion().replaceAll("\\.", ", ")); + _sb.append("\nFILEFLAGSMASK 0\n" + + "FILEOS 0x40000\n" + + "FILETYPE 1\n" + + "{\n" + + " BLOCK \"StringFileInfo\"\n" + + " {\n" + + " BLOCK \"040904E4\"\n" + // English + " {\n"); + addVerBlockValue("CompanyName", v.getCompanyName()); + addVerBlockValue("FileDescription", v.getFileDescription()); + addVerBlockValue("FileVersion", v.getTxtFileVersion()); + addVerBlockValue("InternalName", v.getInternalName()); + addVerBlockValue("LegalCopyright", v.getCopyright()); + addVerBlockValue("OriginalFilename", v.getOriginalFilename()); + addVerBlockValue("ProductName", v.getProductName()); + addVerBlockValue("ProductVersion", v.getTxtProductVersion()); + _sb.append(" }\n }\nBLOCK \"VarFileInfo\"\n{\nVALUE \"Translation\", 0x0409, 0x04E4\n}\n}"); + } + + private void addJre(Jre jre) { + addWindowsPath(JRE_PATH, jre.getPath()); + addText(JAVA_MIN_VER, jre.getMinVersion()); + addText(JAVA_MAX_VER, jre.getMaxVersion()); + addText(JDK_PREFERENCE, String.valueOf(jre.getJdkPreferenceIndex())); + addInteger(INITIAL_HEAP_SIZE, jre.getInitialHeapSize()); + addInteger(INITIAL_HEAP_PERCENT, jre.getInitialHeapPercent()); + addInteger(MAX_HEAP_SIZE, jre.getMaxHeapSize()); + addInteger(MAX_HEAP_PERCENT, jre.getMaxHeapPercent()); + + StringBuffer options = new StringBuffer(); + if (jre.getOptions() != null && !jre.getOptions().isEmpty()) { + addSpace(options); + append(options, jre.getOptions(), " "); + } + addText(JVM_OPTIONS, options.toString()); + } + + private void addSplash(Splash splash) { + if (splash == null) { + return; + } + addTrue(SHOW_SPLASH, true); + addTrue(SPLASH_WAITS_FOR_WINDOW, splash.getWaitForWindow()); + addText(SPLASH_TIMEOUT, String.valueOf(splash.getTimeout())); + addTrue(SPLASH_TIMEOUT_ERR, splash.isTimeoutErr()); + addBitmap(SPLASH_BITMAP, splash.getFile()); + } + + private void addMessages(Config c) { + Msg msg = c.getMessages(); + if (msg == null) { + msg = new Msg(); + } + addText(STARTUP_ERR, msg.getStartupErr()); + addText(BUNDLED_JRE_ERR, msg.getBundledJreErr()); + addText(JRE_VERSION_ERR, msg.getJreVersionErr()); + addText(LAUNCHER_ERR, msg.getLauncherErr()); + if (c.getSingleInstance() != null) { + addText(INSTANCE_ALREADY_EXISTS_MSG, msg.getInstanceAlreadyExistsMsg()); + } + } + + private void append(StringBuffer sb, List list, String separator) { + for (int i = 0; i < list.size(); i++) { + sb.append(list.get(i)); + if (i < list.size() - 1) { + sb.append(separator); + } + } + } + + private void addText(int id, String text) { + if (text == null || text.equals("")) { + return; + } + _sb.append(id); + _sb.append(" RCDATA BEGIN \""); + _sb.append(escape(text)); + _sb.append("\\0\" END\n"); + } + + private void addTrue(int id, boolean value) { + if (value) { + addText(id, "true"); + } + } + + private void addInteger(int id, Integer value) { + if (value != null) { + addText(id, value.toString()); + } + } + + /** + * Stores path in Windows format with '\' separators. + */ + private void addWindowsPath(int id, String path) { + if (path == null || path.equals("")) { + return; + } + _sb.append(id); + _sb.append(" RCDATA BEGIN \""); + _sb.append(path.replaceAll("\\\\", "\\\\\\\\") + .replaceAll("/", "\\\\\\\\")); + _sb.append("\\0\" END\n"); + } + + private void addManifest(int id, File manifest) { + if (manifest == null || manifest.getPath().equals("")) { + return; + } + _sb.append(id); + _sb.append(" 24 \""); + _sb.append(getPath(Util.getAbsoluteFile( + ConfigPersister.getInstance().getConfigPath(), manifest))); + _sb.append("\"\n"); + } + + private void addIcon(int id, File icon) { + if (icon == null || icon.getPath().equals("")) { + return; + } + _sb.append(id); + _sb.append(" ICON DISCARDABLE \""); + _sb.append(getPath(Util.getAbsoluteFile( + ConfigPersister.getInstance().getConfigPath(), icon))); + _sb.append("\"\n"); + } + + private void addBitmap(int id, File bitmap) { + if (bitmap == null) { + return; + } + _sb.append(id); + _sb.append(" BITMAP \""); + _sb.append(getPath(Util.getAbsoluteFile( + ConfigPersister.getInstance().getConfigPath(), bitmap))); + _sb.append("\"\n"); + } + + private String getPath(File f) { + return f.getPath().replaceAll("\\\\", "\\\\\\\\"); + } + + private void addSpace(StringBuffer sb) { + int len = sb.length(); + if (len-- > 0 && sb.charAt(len) != ' ') { + sb.append(' '); + } + } + + private void addVerBlockValue(String key, String value) { + _sb.append(" VALUE \""); + _sb.append(key); + _sb.append("\", \""); + if (value != null) { + _sb.append(escape(value)); + } + _sb.append("\"\n"); + } + + private String escape(String text) { + return text.replaceAll("\"", "\"\""); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/Util.java b/installer/lib/launch4j/src/net/sf/launch4j/Util.java index c05dabfa6..f3bf2456d 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/Util.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/Util.java @@ -1,152 +1,197 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/* - * Created on 2005-04-24 - */ -package net.sf.launch4j; - -import java.io.BufferedReader; -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStream; -import java.io.Reader; -import java.io.Writer; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class Util { - public static final boolean WINDOWS_OS = System.getProperty("os.name") - .toLowerCase().startsWith("windows"); - - private Util() {} - - /** - * Returns the base directory of a jar file or null if the class is a standalone file. - * @return System specific path - * - * Based on a patch submitted by Josh Elsasser - */ - public static String getJarBasedir() { - String url = Util.class.getClassLoader() - .getResource(Util.class.getName().replace('.', '/') + ".class") - .getFile() - .replaceAll("%20", " "); - if (url.startsWith("file:")) { - String jar = url.substring(5, url.lastIndexOf('!')); - int x = jar.lastIndexOf('/'); - if (x == -1) { - x = jar.lastIndexOf('\\'); - } - String basedir = jar.substring(0, x + 1); - return new File(basedir).getPath(); - } else { - return null; - } - } - - public static File getAbsoluteFile(File basepath, File f) { - return f.isAbsolute() ? f : new File(basepath, f.getPath()); - } - - public static String getExtension(File f) { - String name = f.getName(); - int x = name.lastIndexOf('.'); - if (x != -1) { - return name.substring(x); - } else { - return ""; - } - } - - public static void exec(String cmd, Log log) throws ExecException { - BufferedReader is = null; - try { - if (WINDOWS_OS) { - cmd = cmd.replaceAll("/", "\\\\"); - } - Process p = Runtime.getRuntime().exec(cmd); - is = new BufferedReader(new InputStreamReader(p.getErrorStream())); - String line; - while ((line = is.readLine()) != null) { - log.append(line); - } - is.close(); - p.waitFor(); - if (p.exitValue() != 0) { - String msg = "Exec failed (" + p.exitValue() + "): " + cmd; - log.append(msg); - throw new ExecException(msg); - } - } catch (IOException e) { - close(is); - throw new ExecException(e); - } catch (InterruptedException e) { - close(is); - throw new ExecException(e); - } - } - - public static void close(final InputStream o) { - if (o != null) { - try { - o.close(); - } catch (IOException e) { - System.err.println(e); // XXX log - } - } - } - - public static void close(final OutputStream o) { - if (o != null) { - try { - o.close(); - } catch (IOException e) { - System.err.println(e); // XXX log - } - } - } - - public static void close(final Reader o) { - if (o != null) { - try { - o.close(); - } catch (IOException e) { - System.err.println(e); // XXX log - } - } - } - - public static void close(final Writer o) { - if (o != null) { - try { - o.close(); - } catch (IOException e) { - System.err.println(e); // XXX log - } - } - } - - public static boolean delete(File f) { - return (f != null) ? f.delete() : false; - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on 2005-04-24 + */ +package net.sf.launch4j; + +import java.io.BufferedReader; +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.OutputStream; +import java.io.Reader; +import java.io.Writer; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class Util { + public static final boolean WINDOWS_OS = System.getProperty("os.name") + .toLowerCase().startsWith("windows"); + + private Util() {} + + public static File createTempFile(String suffix) throws IOException { + String tmpdir = System.getProperty("launch4j.tmpdir"); + if (tmpdir != null) { + if (tmpdir.indexOf(' ') != -1) { + throw new IOException(Messages.getString("Util.tmpdir")); + } + return File.createTempFile("launch4j", suffix, new File(tmpdir)); + } else { + return File.createTempFile("launch4j", suffix); + } + } + + /** + * Returns the base directory of a jar file or null if the class is a standalone file. + * @return System specific path + * + * Based on a patch submitted by Josh Elsasser + */ + public static File getJarBasedir() { + String url = Util.class.getClassLoader() + .getResource(Util.class.getName().replace('.', '/') + ".class") + .getFile() + .replaceAll("%20", " "); + if (url.startsWith("file:")) { + String jar = url.substring(5, url.lastIndexOf('!')); + int x = jar.lastIndexOf('/'); + if (x == -1) { + x = jar.lastIndexOf('\\'); + } + String basedir = jar.substring(0, x + 1); + return new File(basedir); + } else { + return new File("."); + } + } + + public static File getAbsoluteFile(File basepath, File f) { + return f.isAbsolute() ? f : new File(basepath, f.getPath()); + } + + public static String getExtension(File f) { + String name = f.getName(); + int x = name.lastIndexOf('.'); + if (x != -1) { + return name.substring(x); + } else { + return ""; + } + } + + public static void exec(String[] cmd, Log log) throws ExecException { + BufferedReader is = null; + try { + if (WINDOWS_OS) { + for (int i = 0; i < cmd.length; i++) { + cmd[i] = cmd[i].replaceAll("/", "\\\\"); + } + } + Process p = Runtime.getRuntime().exec(cmd); + is = new BufferedReader(new InputStreamReader(p.getErrorStream())); + String line; + int errLine = -1; + Pattern pattern = Pattern.compile(":\\d+:"); + while ((line = is.readLine()) != null) { + log.append(line); + Matcher matcher = pattern.matcher(line); + if (matcher.find()) { + errLine = Integer.valueOf( + line.substring(matcher.start() + 1, matcher.end() - 1)) + .intValue(); + if (line.matches("(?i).*unrecognized escape sequence")) { + log.append(Messages.getString("Util.use.double.backslash")); + } + break; + } + } + is.close(); + p.waitFor(); + if (errLine != -1) { + throw new ExecException(Messages.getString("Util.exec.failed") + + ": " + cmd, errLine); + } + if (p.exitValue() != 0) { + throw new ExecException(Messages.getString("Util.exec.failed") + + "(" + p.exitValue() + "): " + cmd); + } + } catch (IOException e) { + close(is); + throw new ExecException(e); + } catch (InterruptedException e) { + close(is); + throw new ExecException(e); + } + } + + public static void close(final InputStream o) { + if (o != null) { + try { + o.close(); + } catch (IOException e) { + System.err.println(e); // XXX log + } + } + } + + public static void close(final OutputStream o) { + if (o != null) { + try { + o.close(); + } catch (IOException e) { + System.err.println(e); // XXX log + } + } + } + + public static void close(final Reader o) { + if (o != null) { + try { + o.close(); + } catch (IOException e) { + System.err.println(e); // XXX log + } + } + } + + public static void close(final Writer o) { + if (o != null) { + try { + o.close(); + } catch (IOException e) { + System.err.println(e); // XXX log + } + } + } + + public static boolean delete(File f) { + return (f != null) ? f.delete() : false; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/ant/AntClassPath.java b/installer/lib/launch4j/src/net/sf/launch4j/ant/AntClassPath.java new file mode 100644 index 000000000..a67bab91f --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/ant/AntClassPath.java @@ -0,0 +1,61 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Jul 19, 2006 + */ +package net.sf.launch4j.ant; + +import java.util.ArrayList; +import java.util.List; + +import net.sf.launch4j.config.ClassPath; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class AntClassPath extends ClassPath { + private final List wrappedPaths = new ArrayList(); + + public void setCp(String cp){ + wrappedPaths.add(cp); + } + + public void addCp(StringWrapper cp) { + wrappedPaths.add(cp); + } + + public void unwrap() { + setPaths(StringWrapper.unwrap(wrappedPaths)); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/ant/AntConfig.java b/installer/lib/launch4j/src/net/sf/launch4j/ant/AntConfig.java index 6f637fe9a..4482436a9 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/ant/AntConfig.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/ant/AntConfig.java @@ -1,57 +1,129 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on May 24, 2005 - */ -package net.sf.launch4j.ant; - -import org.apache.tools.ant.BuildException; - -import net.sf.launch4j.config.Config; -import net.sf.launch4j.config.Jre; -import net.sf.launch4j.config.Splash; -import net.sf.launch4j.config.VersionInfo; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class AntConfig extends Config { - - public void addJre(Jre jre) { - checkNull(getJre(), "jre"); - setJre(jre); - } - - public void addSplash(Splash splash) { - checkNull(getSplash(), "splash"); - setSplash(splash); - } - - public void addVersionInfo(VersionInfo versionInfo) { - checkNull(getVersionInfo(), "versionInfo"); - setVersionInfo(versionInfo); - } - - private void checkNull(Object o, String name) { - if (o != null) { - throw new BuildException("Duplicate element: " + name); - } - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 24, 2005 + */ +package net.sf.launch4j.ant; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +import org.apache.tools.ant.BuildException; + +import net.sf.launch4j.config.Config; +import net.sf.launch4j.config.Msg; +import net.sf.launch4j.config.SingleInstance; +import net.sf.launch4j.config.Splash; +import net.sf.launch4j.config.VersionInfo; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class AntConfig extends Config { + private final List wrappedHeaderObjects = new ArrayList(); + private final List wrappedLibs = new ArrayList(); + private final List wrappedVariables = new ArrayList(); + + public void setJarPath(String path) { + setJar(new File(path)); + } + + public void addObj(StringWrapper obj) { + wrappedHeaderObjects.add(obj); + } + + public void addLib(StringWrapper lib) { + wrappedLibs.add(lib); + } + + public void addVar(StringWrapper var) { + wrappedVariables.add(var); + } + + // __________________________________________________________________________________ + + public void addSingleInstance(SingleInstance singleInstance) { + checkNull(getSingleInstance(), "singleInstance"); + setSingleInstance(singleInstance); + } + + public void addClassPath(AntClassPath classPath) { + checkNull(getClassPath(), "classPath"); + setClassPath(classPath); + } + + public void addJre(AntJre jre) { + checkNull(getJre(), "jre"); + setJre(jre); + } + + public void addSplash(Splash splash) { + checkNull(getSplash(), "splash"); + setSplash(splash); + } + + public void addVersionInfo(VersionInfo versionInfo) { + checkNull(getVersionInfo(), "versionInfo"); + setVersionInfo(versionInfo); + } + + public void addMessages(Msg messages) { + checkNull(getMessages(), "messages"); + setMessages(messages); + } + + // __________________________________________________________________________________ + + public void unwrap() { + setHeaderObjects(StringWrapper.unwrap(wrappedHeaderObjects)); + setLibs(StringWrapper.unwrap(wrappedLibs)); + setVariables(StringWrapper.unwrap(wrappedVariables)); + if (getClassPath() != null) { + ((AntClassPath) getClassPath()).unwrap(); + } + if (getJre() != null) { + ((AntJre) getJre()).unwrap(); + } + } + + private void checkNull(Object o, String name) { + if (o != null) { + throw new BuildException( + Messages.getString("AntConfig.duplicate.element") + + ": " + + name); + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/ant/AntJre.java b/installer/lib/launch4j/src/net/sf/launch4j/ant/AntJre.java new file mode 100644 index 000000000..b83e3ee02 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/ant/AntJre.java @@ -0,0 +1,69 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Jul 18, 2006 + */ +package net.sf.launch4j.ant; + +import java.util.ArrayList; +import java.util.List; + +import net.sf.launch4j.config.Jre; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class AntJre extends Jre { + private final List wrappedOptions = new ArrayList(); + + public void addOpt(StringWrapper opt) { + wrappedOptions.add(opt); + } + + public void unwrap() { + setOptions(StringWrapper.unwrap(wrappedOptions)); + } + + /** + * For backwards compatibility. + */ + public void setDontUsePrivateJres(boolean dontUse) { + if (dontUse) { + setJdkPreference(JDK_PREFERENCE_JRE_ONLY); + } + else { + setJdkPreference(JDK_PREFERENCE_PREFER_JRE); + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/ant/Launch4jTask.java b/installer/lib/launch4j/src/net/sf/launch4j/ant/Launch4jTask.java index bb7161f64..a28287698 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/ant/Launch4jTask.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/ant/Launch4jTask.java @@ -1,122 +1,162 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on May 24, 2005 - */ -package net.sf.launch4j.ant; - -import java.io.File; - -import net.sf.launch4j.Builder; -import net.sf.launch4j.BuilderException; -import net.sf.launch4j.Log; -import net.sf.launch4j.config.Config; -import net.sf.launch4j.config.ConfigPersister; -import net.sf.launch4j.config.ConfigPersisterException; - -import org.apache.tools.ant.BuildException; -import org.apache.tools.ant.Task; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class Launch4jTask extends Task { - private File _configFile; - private AntConfig _config; - - // Override configFile settings - private File jar; - private File outfile; - private String fileVersion; - private String txtFileVersion; - private String productVersion; - private String txtProductVersion; - - public void execute() throws BuildException { - try { - if (_configFile != null && _config != null) { - throw new BuildException("Specify configFile or config"); - } else if (_configFile != null) { - ConfigPersister.getInstance().load(_configFile); - Config c = ConfigPersister.getInstance().getConfig(); - if (jar != null) { - c.setJar(jar); - } - if (outfile != null) { - c.setOutfile(outfile); - } - if (fileVersion != null) { - c.getVersionInfo().setFileVersion(fileVersion); - } - if (txtFileVersion != null) { - c.getVersionInfo().setTxtFileVersion(txtFileVersion); - } - if (productVersion != null) { - c.getVersionInfo().setProductVersion(productVersion); - } - if (txtProductVersion != null) { - c.getVersionInfo().setTxtProductVersion(txtProductVersion); - } - } else if (_config != null) { - ConfigPersister.getInstance().setAntConfig(_config, getProject().getBaseDir()); - } else { - throw new BuildException("Specify configFile or config"); - } - final Builder b = new Builder(Log.getAntLog()); - b.build(); - } catch (ConfigPersisterException e) { - throw new BuildException(e); - } catch (BuilderException e) { - throw new BuildException(e); - } - } - - public void setConfigFile(File configFile) { - _configFile = configFile; - } - - public void addConfig(AntConfig config) { - _config = config; - } - - public void setFileVersion(String fileVersion) { - this.fileVersion = fileVersion; - } - - public void setJar(File jar) { - this.jar = jar; - } - - public void setOutfile(File outfile) { - this.outfile = outfile; - } - - public void setProductVersion(String productVersion) { - this.productVersion = productVersion; - } - - public void setTxtFileVersion(String txtFileVersion) { - this.txtFileVersion = txtFileVersion; - } - - public void setTxtProductVersion(String txtProductVersion) { - this.txtProductVersion = txtProductVersion; - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 24, 2005 + */ +package net.sf.launch4j.ant; + +import java.io.File; + +import net.sf.launch4j.Builder; +import net.sf.launch4j.BuilderException; +import net.sf.launch4j.Log; +import net.sf.launch4j.config.Config; +import net.sf.launch4j.config.ConfigPersister; +import net.sf.launch4j.config.ConfigPersisterException; + +import org.apache.tools.ant.BuildException; +import org.apache.tools.ant.Task; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class Launch4jTask extends Task { + private File _configFile; + private AntConfig _config; + + // System properties + private File tmpdir; // launch4j.tmpdir + private File bindir; // launch4j.bindir + + // Override configFile settings + private File jar; + private File outfile; + private String fileVersion; + private String txtFileVersion; + private String productVersion; + private String txtProductVersion; + + public void execute() throws BuildException { + try { + if (tmpdir != null) { + System.setProperty("launch4j.tmpdir", tmpdir.getPath()); + } + if (bindir != null) { + System.setProperty("launch4j.bindir", bindir.getPath()); + } + if (_configFile != null && _config != null) { + throw new BuildException( + Messages.getString("Launch4jTask.specify.config")); + } else if (_configFile != null) { + ConfigPersister.getInstance().load(_configFile); + Config c = ConfigPersister.getInstance().getConfig(); + if (jar != null) { + c.setJar(jar); + } + if (outfile != null) { + c.setOutfile(outfile); + } + if (fileVersion != null) { + c.getVersionInfo().setFileVersion(fileVersion); + } + if (txtFileVersion != null) { + c.getVersionInfo().setTxtFileVersion(txtFileVersion); + } + if (productVersion != null) { + c.getVersionInfo().setProductVersion(productVersion); + } + if (txtProductVersion != null) { + c.getVersionInfo().setTxtProductVersion(txtProductVersion); + } + } else if (_config != null) { + _config.unwrap(); + ConfigPersister.getInstance().setAntConfig(_config, + getProject().getBaseDir()); + } else { + throw new BuildException( + Messages.getString("Launch4jTask.specify.config")); + } + final Builder b = new Builder(Log.getAntLog()); + b.build(); + } catch (ConfigPersisterException e) { + throw new BuildException(e); + } catch (BuilderException e) { + throw new BuildException(e); + } + } + + public void setConfigFile(File configFile) { + _configFile = configFile; + } + + public void addConfig(AntConfig config) { + _config = config; + } + + public void setBindir(File bindir) { + this.bindir = bindir; + } + + public void setTmpdir(File tmpdir) { + this.tmpdir = tmpdir; + } + + public void setFileVersion(String fileVersion) { + this.fileVersion = fileVersion; + } + + public void setJar(File jar) { + this.jar = jar; + } + + public void setJarPath(String path) { + this.jar = new File(path); + } + + public void setOutfile(File outfile) { + this.outfile = outfile; + } + + public void setProductVersion(String productVersion) { + this.productVersion = productVersion; + } + + public void setTxtFileVersion(String txtFileVersion) { + this.txtFileVersion = txtFileVersion; + } + + public void setTxtProductVersion(String txtProductVersion) { + this.txtProductVersion = txtProductVersion; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/ant/Messages.java b/installer/lib/launch4j/src/net/sf/launch4j/ant/Messages.java new file mode 100644 index 000000000..0f823f7af --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/ant/Messages.java @@ -0,0 +1,55 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +package net.sf.launch4j.ant; + +import java.util.MissingResourceException; +import java.util.ResourceBundle; + +public class Messages { + private static final String BUNDLE_NAME = "net.sf.launch4j.ant.messages"; + + private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle + .getBundle(BUNDLE_NAME); + + private Messages() { + } + + public static String getString(String key) { + try { + return RESOURCE_BUNDLE.getString(key); + } catch (MissingResourceException e) { + return '!' + key + '!'; + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/ant/StringWrapper.java b/installer/lib/launch4j/src/net/sf/launch4j/ant/StringWrapper.java new file mode 100644 index 000000000..6d38af1a5 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/ant/StringWrapper.java @@ -0,0 +1,67 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Jul 18, 2006 + */ +package net.sf.launch4j.ant; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class StringWrapper { + private String text; + + public static List unwrap(List wrappers) { + if (wrappers.isEmpty()) { + return null; + } + List strings = new ArrayList(wrappers.size()); + for (Iterator iter = wrappers.iterator(); iter.hasNext();) { + strings.add(iter.next().toString()); + } + return strings; + } + + public void addText(String text) { + this.text = text; + } + + public String toString() { + return text; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/ant/messages.properties b/installer/lib/launch4j/src/net/sf/launch4j/ant/messages.properties new file mode 100644 index 000000000..9666633c2 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/ant/messages.properties @@ -0,0 +1,35 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal +# +# 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 the Launch4j 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 OWNER 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. +# + +Launch4jTask.specify.config=Specify configFile or config +AntConfig.duplicate.element=Duplicate element diff --git a/installer/lib/launch4j/src/net/sf/launch4j/ant/messages_es.properties b/installer/lib/launch4j/src/net/sf/launch4j/ant/messages_es.properties new file mode 100644 index 000000000..9211e8e03 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/ant/messages_es.properties @@ -0,0 +1,35 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal, Patricio Martínez Ros +# +# 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 the Launch4j 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 OWNER 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. +# + +Launch4jTask.specify.config=Specify configFile or config +AntConfig.duplicate.element=Duplicate element diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/Binding.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/Binding.java index 72ec61923..49c9b45ff 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/binding/Binding.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/Binding.java @@ -1,48 +1,62 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 30, 2005 - */ -package net.sf.launch4j.binding; - -import java.awt.Color; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public interface Binding { - /** Used to mark components with invalid data. */ - public final static Color INVALID_COLOR = Color.PINK; - - /** Java Bean property bound to a component */ - public String getProperty(); - /** Clear component, set it to the default value. */ - public void clear(); - /** Java Bean property -> Component */ - public void put(IValidatable bean); - /** Component -> Java Bean property */ - public void get(IValidatable bean); - /** Mark component as valid */ - public void markValid(); - /** Mark component as invalid */ - public void markInvalid(); - /** Enable or disable the component */ - public void setEnabled(boolean enabled); -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 30, 2005 + */ +package net.sf.launch4j.binding; + +import java.awt.Color; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public interface Binding { + /** Used to mark components with invalid data. */ + public final static Color INVALID_COLOR = Color.PINK; + + /** Java Bean property bound to a component */ + public String getProperty(); + /** Clear component, set it to the default value */ + public void clear(IValidatable bean); + /** Java Bean property -> Component */ + public void put(IValidatable bean); + /** Component -> Java Bean property */ + public void get(IValidatable bean); + /** Mark component as valid */ + public void markValid(); + /** Mark component as invalid */ + public void markInvalid(); + /** Enable or disable the component */ + public void setEnabled(boolean enabled); +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/BindingException.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/BindingException.java index 2a3b5b829..15dc10cc0 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/binding/BindingException.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/BindingException.java @@ -1,38 +1,52 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 30, 2005 - */ -package net.sf.launch4j.binding; - -/** - * Signals a runtime error, a missing property in a Java Bean for example. - * - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class BindingException extends RuntimeException { - public BindingException(Throwable t) { - super(t); - } - - public BindingException(String msg) { - super(msg); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 30, 2005 + */ +package net.sf.launch4j.binding; + +/** + * Signals a runtime error, a missing property in a Java Bean for example. + * + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class BindingException extends RuntimeException { + public BindingException(Throwable t) { + super(t); + } + + public BindingException(String msg) { + super(msg); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/Bindings.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/Bindings.java index 48fd22bf1..73f507e49 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/binding/Bindings.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/Bindings.java @@ -1,247 +1,317 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 30, 2005 - */ -package net.sf.launch4j.binding; - -import java.beans.PropertyChangeEvent; -import java.beans.PropertyChangeListener; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; - -import javax.swing.JComponent; -import javax.swing.JRadioButton; -import javax.swing.JToggleButton; -import javax.swing.text.JTextComponent; - -import org.apache.commons.beanutils.PropertyUtils; - -/** - * Creates and handles bindings. - * - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class Bindings implements PropertyChangeListener { - private final Map _bindings = new HashMap(); - private final Map _optComponents = new HashMap(); - private boolean _modified = false; - - /** - * Used to track component modifications. - */ - public void propertyChange(PropertyChangeEvent evt) { - if ("AccessibleValue".equals(evt.getPropertyName()) - || "AccessibleText".equals(evt.getPropertyName())) { - _modified = true; - } - } - - /** - * Any of the components modified? - */ - public boolean isModified() { - return _modified; - } - - public Binding getBinding(String property) { - return (Binding) _bindings.get(property); - } - - private void registerPropertyChangeListener(JComponent c) { - c.getAccessibleContext().addPropertyChangeListener(this); - } - - private void registerPropertyChangeListener(JComponent[] cs) { - for (int i = 0; i < cs.length; i++) { - cs[i].getAccessibleContext().addPropertyChangeListener(this); - } - } - - private boolean isPropertyNull(IValidatable bean, Binding b) { - try { - for (Iterator iter = _optComponents.keySet().iterator(); iter.hasNext();) { - String property = (String) iter.next(); - if (b.getProperty().startsWith(property)) { - return PropertyUtils.getProperty(bean, property) == null; - } - } - return false; - } catch (Exception e) { - throw new BindingException(e); - } - } - - /** - * Enables or disables all components bound to properties that begin with given prefix. - */ - public void setComponentsEnabled(String prefix, boolean enabled) { - for (Iterator iter = _bindings.values().iterator(); iter.hasNext();) { - Binding b = (Binding) iter.next(); - if (b.getProperty().startsWith(prefix)) { - b.setEnabled(enabled); - } - } - } - - /** - * Clear all components, set them to their default values. - * Clears the _modified flag. - */ - public void clear() { - for (Iterator iter = _optComponents.values().iterator(); iter.hasNext();) { - ((Binding) iter.next()).clear(); - } - for (Iterator iter = _bindings.values().iterator(); iter.hasNext();) { - ((Binding) iter.next()).clear(); - } - _modified = false; - } - - /** - * Copies data from the Java Bean to the UI components. - * Clears the _modified flag. - */ - public void put(IValidatable bean) { - for (Iterator iter = _optComponents.values().iterator(); iter.hasNext();) { - ((Binding) iter.next()).put(bean); - } - for (Iterator iter = _bindings.values().iterator(); iter.hasNext();) { - Binding b = (Binding) iter.next(); - if (isPropertyNull(bean, b)) { - b.clear(); - } else { - b.put(bean); - } - } - _modified = false; - } - - /** - * Copies data from UI components to the Java Bean and checks it's class invariants. - * Clears the _modified flag. - * @throws InvariantViolationException - * @throws BindingException - */ - public void get(IValidatable bean) { - try { - for (Iterator iter = _optComponents.values().iterator(); iter.hasNext();) { - ((Binding) iter.next()).get(bean); - } - for (Iterator iter = _bindings.values().iterator(); iter.hasNext();) { - Binding b = (Binding) iter.next(); - if (!isPropertyNull(bean, b)) { - b.get(bean); - } - } - bean.checkInvariants(); - for (Iterator iter = _optComponents.keySet().iterator(); iter.hasNext();) { - String property = (String) iter.next(); - IValidatable component = (IValidatable) PropertyUtils.getProperty(bean, property); - if (component != null) { - component.checkInvariants(); - } - } - _modified = false; // XXX - } catch (InvariantViolationException e) { - e.setBinding(getBinding(e.getProperty())); - throw e; - } catch (Exception e) { - throw new BindingException(e); - } - } - - private Bindings add(Binding b) { - if (_bindings.containsKey(b.getProperty())) { - throw new BindingException("Duplicate binding"); - } - _bindings.put(b.getProperty(), b); - return this; - } - - /** - * Add an optional (nullable) Java Bean component of type clazz. - */ - public Bindings addOptComponent(String property, Class clazz, JToggleButton c, - boolean enabledByDefault) { - Binding b = new OptComponentBinding(this, property, clazz, c, enabledByDefault); - if (_optComponents.containsKey(property)) { - throw new BindingException("Duplicate binding"); - } - _optComponents.put(property, b); - return this; - } - - /** - * Add an optional (nullable) Java Bean component of type clazz. - */ - public Bindings addOptComponent(String property, Class clazz, JToggleButton c) { - return addOptComponent(property, clazz, c, false); - } - - /** - * Handles JEditorPane, JTextArea, JTextField - */ - public Bindings add(String property, JTextComponent c, String defaultValue) { - registerPropertyChangeListener(c); - return add(new JTextComponentBinding(property, c, defaultValue)); - } - - /** - * Handles JEditorPane, JTextArea, JTextField - */ - public Bindings add(String property, JTextComponent c) { - registerPropertyChangeListener(c); - return add(new JTextComponentBinding(property, c, "")); - } - - /** - * Handles JToggleButton, JCheckBox - */ - public Bindings add(String property, JToggleButton c, boolean defaultValue) { - registerPropertyChangeListener(c); - return add(new JToggleButtonBinding(property, c, defaultValue)); - } - - /** - * Handles JToggleButton, JCheckBox - */ - public Bindings add(String property, JToggleButton c) { - registerPropertyChangeListener(c); - return add(new JToggleButtonBinding(property, c, false)); - } - - /** - * Handles JRadioButton - */ - public Bindings add(String property, JRadioButton[] cs, int defaultValue) { - registerPropertyChangeListener(cs); - return add(new JRadioButtonBinding(property, cs, defaultValue)); - } - - /** - * Handles JRadioButton - */ - public Bindings add(String property, JRadioButton[] cs) { - registerPropertyChangeListener(cs); - return add(new JRadioButtonBinding(property, cs, 0)); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 30, 2005 + */ +package net.sf.launch4j.binding; + +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; + +import javax.swing.JComboBox; +import javax.swing.JComponent; +import javax.swing.JList; +import javax.swing.JRadioButton; +import javax.swing.JTextArea; +import javax.swing.JToggleButton; +import javax.swing.text.JTextComponent; + +import org.apache.commons.beanutils.PropertyUtils; + +/** + * Creates and handles bindings. + * + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class Bindings implements PropertyChangeListener { + private final Map _bindings = new HashMap(); + private final Map _optComponents = new HashMap(); + private boolean _modified = false; + + /** + * Used to track component modifications. + */ + public void propertyChange(PropertyChangeEvent evt) { + String prop = evt.getPropertyName(); + if ("AccessibleValue".equals(prop) + || "AccessibleText".equals(prop) + || "AccessibleVisibleData".equals(prop)) { + _modified = true; + } + } + + /** + * Any of the components modified? + */ + public boolean isModified() { + return _modified; + } + + public Binding getBinding(String property) { + return (Binding) _bindings.get(property); + } + + private void registerPropertyChangeListener(JComponent c) { + c.getAccessibleContext().addPropertyChangeListener(this); + } + + private void registerPropertyChangeListener(JComponent[] cs) { + for (int i = 0; i < cs.length; i++) { + cs[i].getAccessibleContext().addPropertyChangeListener(this); + } + } + + private boolean isPropertyNull(IValidatable bean, Binding b) { + try { + for (Iterator iter = _optComponents.keySet().iterator(); iter.hasNext();) { + String property = (String) iter.next(); + if (b.getProperty().startsWith(property)) { + return PropertyUtils.getProperty(bean, property) == null; + } + } + return false; + } catch (Exception e) { + throw new BindingException(e); + } + } + + /** + * Enables or disables all components bound to properties that begin with given prefix. + */ + public void setComponentsEnabled(String prefix, boolean enabled) { + for (Iterator iter = _bindings.values().iterator(); iter.hasNext();) { + Binding b = (Binding) iter.next(); + if (b.getProperty().startsWith(prefix)) { + b.setEnabled(enabled); + } + } + } + + /** + * Clear all components, set them to their default values. + * Clears the _modified flag. + */ + public void clear(IValidatable bean) { + for (Iterator iter = _optComponents.values().iterator(); iter.hasNext();) { + ((Binding) iter.next()).clear(bean); + } + for (Iterator iter = _bindings.values().iterator(); iter.hasNext();) { + ((Binding) iter.next()).clear(bean); + } + _modified = false; + } + + /** + * Copies data from the Java Bean to the UI components. + * Clears the _modified flag. + */ + public void put(IValidatable bean) { + for (Iterator iter = _optComponents.values().iterator(); iter.hasNext();) { + ((Binding) iter.next()).put(bean); + } + for (Iterator iter = _bindings.values().iterator(); iter.hasNext();) { + Binding b = (Binding) iter.next(); + if (isPropertyNull(bean, b)) { + b.clear(null); + } else { + b.put(bean); + } + } + _modified = false; + } + + /** + * Copies data from UI components to the Java Bean and checks it's class invariants. + * Clears the _modified flag. + * @throws InvariantViolationException + * @throws BindingException + */ + public void get(IValidatable bean) { + try { + for (Iterator iter = _optComponents.values().iterator(); iter.hasNext();) { + ((Binding) iter.next()).get(bean); + } + for (Iterator iter = _bindings.values().iterator(); iter.hasNext();) { + Binding b = (Binding) iter.next(); + if (!isPropertyNull(bean, b)) { + b.get(bean); + } + } + bean.checkInvariants(); + for (Iterator iter = _optComponents.keySet().iterator(); iter.hasNext();) { + String property = (String) iter.next(); + IValidatable component = (IValidatable) PropertyUtils.getProperty(bean, + property); + if (component != null) { + component.checkInvariants(); + } + } + _modified = false; // XXX + } catch (InvariantViolationException e) { + e.setBinding(getBinding(e.getProperty())); + throw e; + } catch (Exception e) { + throw new BindingException(e); + } + } + + private Bindings add(Binding b) { + if (_bindings.containsKey(b.getProperty())) { + throw new BindingException(Messages.getString("Bindings.duplicate.binding")); + } + _bindings.put(b.getProperty(), b); + return this; + } + + /** + * Add an optional (nullable) Java Bean component of type clazz. + */ + public Bindings addOptComponent(String property, Class clazz, JToggleButton c, + boolean enabledByDefault) { + Binding b = new OptComponentBinding(this, property, clazz, c, enabledByDefault); + if (_optComponents.containsKey(property)) { + throw new BindingException(Messages.getString("Bindings.duplicate.binding")); + } + _optComponents.put(property, b); + return this; + } + + /** + * Add an optional (nullable) Java Bean component of type clazz. + */ + public Bindings addOptComponent(String property, Class clazz, JToggleButton c) { + return addOptComponent(property, clazz, c, false); + } + + /** + * Handles JEditorPane, JTextArea, JTextField + */ + public Bindings add(String property, JTextComponent c, String defaultValue) { + registerPropertyChangeListener(c); + return add(new JTextComponentBinding(property, c, defaultValue)); + } + + /** + * Handles JEditorPane, JTextArea, JTextField + */ + public Bindings add(String property, JTextComponent c) { + registerPropertyChangeListener(c); + return add(new JTextComponentBinding(property, c, "")); + } + + /** + * Handles JToggleButton, JCheckBox + */ + public Bindings add(String property, JToggleButton c, boolean defaultValue) { + registerPropertyChangeListener(c); + return add(new JToggleButtonBinding(property, c, defaultValue)); + } + + /** + * Handles JToggleButton, JCheckBox + */ + public Bindings add(String property, JToggleButton c) { + registerPropertyChangeListener(c); + return add(new JToggleButtonBinding(property, c, false)); + } + + /** + * Handles JRadioButton + */ + public Bindings add(String property, JRadioButton[] cs, int defaultValue) { + registerPropertyChangeListener(cs); + return add(new JRadioButtonBinding(property, cs, defaultValue)); + } + + /** + * Handles JRadioButton + */ + public Bindings add(String property, JRadioButton[] cs) { + registerPropertyChangeListener(cs); + return add(new JRadioButtonBinding(property, cs, 0)); + } + + /** + * Handles JTextArea + */ + public Bindings add(String property, JTextArea textArea, String defaultValue) { + registerPropertyChangeListener(textArea); + return add(new JTextComponentBinding(property, textArea, defaultValue)); + } + + /** + * Handles JTextArea lists + */ + public Bindings add(String property, JTextArea textArea) { + registerPropertyChangeListener(textArea); + return add(new JTextAreaBinding(property, textArea)); + } + + /** + * Handles Optional JTextArea lists + */ + public Bindings add(String property, String stateProperty, + JToggleButton button, JTextArea textArea) { + registerPropertyChangeListener(button); + registerPropertyChangeListener(textArea); + return add(new OptJTextAreaBinding(property, stateProperty, button, textArea)); + } + + /** + * Handles JList + */ + public Bindings add(String property, JList list) { + registerPropertyChangeListener(list); + return add(new JListBinding(property, list)); + } + + /** + * Handles JComboBox + */ + public Bindings add(String property, JComboBox combo, int defaultValue) { + registerPropertyChangeListener(combo); + return add(new JComboBoxBinding(property, combo, defaultValue)); + } + + /** + * Handles JComboBox + */ + public Bindings add(String property, JComboBox combo) { + registerPropertyChangeListener(combo); + return add(new JComboBoxBinding(property, combo, 0)); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/IValidatable.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/IValidatable.java index 91b6fa514..fe0dd4862 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/binding/IValidatable.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/IValidatable.java @@ -1,30 +1,44 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on 2004-01-30 - */ -package net.sf.launch4j.binding; - -/** - * @author Copyright (C) 2004 Grzegorz Kowal - */ -public interface IValidatable { - public void checkInvariants(); -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on 2004-01-30 + */ +package net.sf.launch4j.binding; + +/** + * @author Copyright (C) 2004 Grzegorz Kowal + */ +public interface IValidatable { + public void checkInvariants(); +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/InvariantViolationException.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/InvariantViolationException.java index 99eb569a8..2f7f88b1d 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/binding/InvariantViolationException.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/InvariantViolationException.java @@ -1,53 +1,67 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Jun 23, 2003 - */ -package net.sf.launch4j.binding; - -/** - * @author Copyright (C) 2003 Grzegorz Kowal - */ -public class InvariantViolationException extends RuntimeException { - private final String _property; - private Binding _binding; - - public InvariantViolationException(String msg) { - super(msg); - _property = null; - } - - public InvariantViolationException(String property, String msg) { - super(msg); - _property = property; - } - - public String getProperty() { - return _property; - } - - public Binding getBinding() { - return _binding; - } - - public void setBinding(Binding binding) { - _binding = binding; - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Jun 23, 2003 + */ +package net.sf.launch4j.binding; + +/** + * @author Copyright (C) 2003 Grzegorz Kowal + */ +public class InvariantViolationException extends RuntimeException { + private final String _property; + private Binding _binding; + + public InvariantViolationException(String msg) { + super(msg); + _property = null; + } + + public InvariantViolationException(String property, String msg) { + super(msg); + _property = property; + } + + public String getProperty() { + return _property; + } + + public Binding getBinding() { + return _binding; + } + + public void setBinding(Binding binding) { + _binding = binding; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/JComboBoxBinding.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/JComboBoxBinding.java new file mode 100644 index 000000000..81d6ff28e --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/JComboBoxBinding.java @@ -0,0 +1,119 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2007 Ian Roberts + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 10, 2005 + */ +package net.sf.launch4j.binding; + +import java.awt.Color; + +import javax.swing.JComboBox; + +import org.apache.commons.beanutils.PropertyUtils; + +/** + * @author Copyright (C) 2007 Ian Roberts + */ +public class JComboBoxBinding implements Binding { + private final String _property; + private final JComboBox _combo; + private final int _defaultValue; + private final Color _validColor; + + public JComboBoxBinding(String property, JComboBox combo, int defaultValue) { + if (property == null || combo == null) { + throw new NullPointerException(); + } + if (property.equals("") + || combo.getItemCount() == 0 + || defaultValue < 0 || defaultValue >= combo.getItemCount()) { + throw new IllegalArgumentException(); + } + _property = property; + _combo = combo; + _defaultValue = defaultValue; + _validColor = combo.getBackground(); + } + + public String getProperty() { + return _property; + } + + public void clear(IValidatable bean) { + select(_defaultValue); + } + + public void put(IValidatable bean) { + try { + Integer i = (Integer) PropertyUtils.getProperty(bean, _property); + if (i == null) { + throw new BindingException( + Messages.getString("JComboBoxBinding.property.null")); + } + select(i.intValue()); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void get(IValidatable bean) { + try { + PropertyUtils.setProperty(bean, _property, new Integer(_combo.getSelectedIndex())); + return; + } catch (Exception e) { + throw new BindingException(e); + } + } + + private void select(int index) { + if (index < 0 || index >= _combo.getItemCount()) { + throw new BindingException( + Messages.getString("JComboBoxBinding.index.out.of.bounds")); + } + _combo.setSelectedIndex(index); + } + + public void markValid() { + _combo.setBackground(_validColor); + _combo.requestFocusInWindow(); + } + + public void markInvalid() { + _combo.setBackground(Binding.INVALID_COLOR); + } + + public void setEnabled(boolean enabled) { + _combo.setEnabled(enabled); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/JListBinding.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/JListBinding.java new file mode 100644 index 000000000..31dec58c1 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/JListBinding.java @@ -0,0 +1,118 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 1, 2006 + */ +package net.sf.launch4j.binding; + +import java.awt.Color; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +import javax.swing.DefaultListModel; +import javax.swing.JList; + +import org.apache.commons.beanutils.PropertyUtils; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class JListBinding implements Binding { + private final String _property; + private final JList _list; + private final Color _validColor; + + public JListBinding(String property, JList list) { + if (property == null || list == null) { + throw new NullPointerException(); + } + if (property.equals("")) { + throw new IllegalArgumentException(); + } + _property = property; + _list = list; + _validColor = _list.getBackground(); + } + + public String getProperty() { + return _property; + } + + public void clear(IValidatable bean) { + _list.setModel(new DefaultListModel()); + } + + public void put(IValidatable bean) { + try { + DefaultListModel model = new DefaultListModel(); + List list = (List) PropertyUtils.getProperty(bean, _property); + if (list != null) { + for (Iterator iter = list.iterator(); iter.hasNext();) { + model.addElement(iter.next()); + } + } + _list.setModel(model); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void get(IValidatable bean) { + try { + DefaultListModel model = (DefaultListModel) _list.getModel(); + final int size = model.getSize(); + List list = new ArrayList(size); + for (int i = 0; i < size; i++) { + list.add(model.get(i)); + } + PropertyUtils.setProperty(bean, _property, list); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void markValid() { + _list.setBackground(_validColor); + _list.requestFocusInWindow(); + } + + public void markInvalid() { + _list.setBackground(Binding.INVALID_COLOR); + } + + public void setEnabled(boolean enabled) { + _list.setEnabled(enabled); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/JRadioButtonBinding.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/JRadioButtonBinding.java index 1298b529c..9d922bedf 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/binding/JRadioButtonBinding.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/JRadioButtonBinding.java @@ -1,127 +1,146 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on May 10, 2005 - */ -package net.sf.launch4j.binding; - -import java.awt.Color; - -import javax.swing.JRadioButton; - -import org.apache.commons.beanutils.PropertyUtils; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class JRadioButtonBinding implements Binding { - private final String _property; - private final JRadioButton[] _buttons; - private final int _defaultValue; - private final Color _validColor; - - public JRadioButtonBinding(String property, JRadioButton[] buttons, int defaultValue) { - if (property == null || buttons == null) { - throw new NullPointerException(); - } - for (int i = 0; i < buttons.length; i++) { - if (buttons[i] == null) { - throw new NullPointerException(); - } - } - if (property.equals("") - || buttons.length == 0 - || defaultValue < 0 || defaultValue >= buttons.length) { - throw new IllegalArgumentException(); - } - _property = property; - _buttons = buttons; - _defaultValue = defaultValue; - _validColor = buttons[0].getBackground(); - } - - public String getProperty() { - return _property; - } - - public void clear() { - select(_defaultValue); - } - - public void put(IValidatable bean) { - try { - Integer i = (Integer) PropertyUtils.getProperty(bean, _property); - if (i == null) { - throw new BindingException("Property is null"); - } - select(i.intValue()); - } catch (Exception e) { - throw new BindingException(e); - } - } - - public void get(IValidatable bean) { - try { - for (int i = 0; i < _buttons.length; i++) { - if (_buttons[i].isSelected()) { - PropertyUtils.setProperty(bean, _property, new Integer(i)); - return; - } - } - throw new BindingException("Nothing selected"); - } catch (Exception e) { - throw new BindingException(e); - } - } - - private void select(int index) { - if (index < 0 || index >= _buttons.length) { - throw new BindingException("Button index out of bounds"); - } - _buttons[index].setSelected(true); - } - - public void markValid() { - for (int i = 0; i < _buttons.length; i++) { - if (_buttons[i].isSelected()) { - _buttons[i].setBackground(_validColor); - _buttons[i].requestFocusInWindow(); - return; - } - } - throw new BindingException("Nothing selected"); - } - - public void markInvalid() { - for (int i = 0; i < _buttons.length; i++) { - if (_buttons[i].isSelected()) { - _buttons[i].setBackground(Binding.INVALID_COLOR); - return; - } - } - throw new BindingException("Nothing selected"); - } - - public void setEnabled(boolean enabled) { - for (int i = 0; i < _buttons.length; i++) { - _buttons[i].setEnabled(enabled); - } - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 10, 2005 + */ +package net.sf.launch4j.binding; + +import java.awt.Color; + +import javax.swing.JRadioButton; + +import org.apache.commons.beanutils.PropertyUtils; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class JRadioButtonBinding implements Binding { + private final String _property; + private final JRadioButton[] _buttons; + private final int _defaultValue; + private final Color _validColor; + + public JRadioButtonBinding(String property, JRadioButton[] buttons, int defaultValue) { + if (property == null || buttons == null) { + throw new NullPointerException(); + } + for (int i = 0; i < buttons.length; i++) { + if (buttons[i] == null) { + throw new NullPointerException(); + } + } + if (property.equals("") + || buttons.length == 0 + || defaultValue < 0 || defaultValue >= buttons.length) { + throw new IllegalArgumentException(); + } + _property = property; + _buttons = buttons; + _defaultValue = defaultValue; + _validColor = buttons[0].getBackground(); + } + + public String getProperty() { + return _property; + } + + public void clear(IValidatable bean) { + select(_defaultValue); + } + + public void put(IValidatable bean) { + try { + Integer i = (Integer) PropertyUtils.getProperty(bean, _property); + if (i == null) { + throw new BindingException( + Messages.getString("JRadioButtonBinding.property.null")); + } + select(i.intValue()); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void get(IValidatable bean) { + try { + for (int i = 0; i < _buttons.length; i++) { + if (_buttons[i].isSelected()) { + PropertyUtils.setProperty(bean, _property, new Integer(i)); + return; + } + } + throw new BindingException( + Messages.getString("JRadioButtonBinding.nothing.selected")); + } catch (Exception e) { + throw new BindingException(e); + } + } + + private void select(int index) { + if (index < 0 || index >= _buttons.length) { + throw new BindingException( + Messages.getString("JRadioButtonBinding.index.out.of.bounds")); + } + _buttons[index].setSelected(true); + } + + public void markValid() { + for (int i = 0; i < _buttons.length; i++) { + if (_buttons[i].isSelected()) { + _buttons[i].setBackground(_validColor); + _buttons[i].requestFocusInWindow(); + return; + } + } + throw new BindingException( + Messages.getString("JRadioButtonBinding.nothing.selected")); + } + + public void markInvalid() { + for (int i = 0; i < _buttons.length; i++) { + if (_buttons[i].isSelected()) { + _buttons[i].setBackground(Binding.INVALID_COLOR); + return; + } + } + throw new BindingException( + Messages.getString("JRadioButtonBinding.nothing.selected")); + } + + public void setEnabled(boolean enabled) { + for (int i = 0; i < _buttons.length; i++) { + _buttons[i].setEnabled(enabled); + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/JTextAreaBinding.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/JTextAreaBinding.java new file mode 100644 index 000000000..d4e8a2c65 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/JTextAreaBinding.java @@ -0,0 +1,123 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Jun 14, 2006 + */ +package net.sf.launch4j.binding; + +import java.awt.Color; +import java.util.ArrayList; +import java.util.List; + +import javax.swing.JTextArea; + +import org.apache.commons.beanutils.PropertyUtils; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class JTextAreaBinding implements Binding { + private final String _property; + private final JTextArea _textArea; + private final Color _validColor; + + public JTextAreaBinding(String property, JTextArea textArea) { + if (property == null || textArea == null) { + throw new NullPointerException(); + } + if (property.equals("")) { + throw new IllegalArgumentException(); + } + _property = property; + _textArea = textArea; + _validColor = _textArea.getBackground(); + } + + public String getProperty() { + return _property; + } + + public void clear(IValidatable bean) { + put(bean); + } + + public void put(IValidatable bean) { + try { + List list = (List) PropertyUtils.getProperty(bean, _property); + StringBuffer sb = new StringBuffer(); + if (list != null) { + for (int i = 0; i < list.size(); i++) { + sb.append(list.get(i)); + if (i < list.size() - 1) { + sb.append("\n"); + } + } + } + _textArea.setText(sb.toString()); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void get(IValidatable bean) { + try { + String text = _textArea.getText(); + if (!text.equals("")) { + String[] items = text.split("\n"); + List list = new ArrayList(); + for (int i = 0; i < items.length; i++) { + list.add(items[i]); + } + PropertyUtils.setProperty(bean, _property, list); + } else { + PropertyUtils.setProperty(bean, _property, null); + } + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void markValid() { + _textArea.setBackground(_validColor); + _textArea.requestFocusInWindow(); + } + + public void markInvalid() { + _textArea.setBackground(Binding.INVALID_COLOR); + } + + public void setEnabled(boolean enabled) { + _textArea.setEnabled(enabled); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/JTextComponentBinding.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/JTextComponentBinding.java index 26ec4d665..6b0dd1b0b 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/binding/JTextComponentBinding.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/JTextComponentBinding.java @@ -1,92 +1,108 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 30, 2005 - */ -package net.sf.launch4j.binding; - -import java.awt.Color; - -import javax.swing.text.JTextComponent; - -import org.apache.commons.beanutils.BeanUtils; - -/** - * Handles JEditorPane, JTextArea, JTextField - * - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class JTextComponentBinding implements Binding { - private final String _property; - private final JTextComponent _textComponent; - private final String _defaultValue; - private final Color _validColor; - - public JTextComponentBinding(String property, JTextComponent textComponent, String defaultValue) { - if (property == null || textComponent == null || defaultValue == null) { - throw new NullPointerException(); - } - if (property.equals("")) { - throw new IllegalArgumentException(); - } - _property = property; - _textComponent = textComponent; - _defaultValue = defaultValue; - _validColor = _textComponent.getBackground(); - } - - public String getProperty() { - return _property; - } - - public void clear() { - _textComponent.setText(_defaultValue); - } - - public void put(IValidatable bean) { - try { - String s = BeanUtils.getProperty(bean, _property); - _textComponent.setText(s != null && !s.equals("0") ? s : ""); // XXX displays zeros as blank - } catch (Exception e) { - throw new BindingException(e); - } - } - - public void get(IValidatable bean) { - try { - BeanUtils.setProperty(bean, _property, _textComponent.getText()); - } catch (Exception e) { - throw new BindingException(e); - } - } - - public void markValid() { - _textComponent.setBackground(_validColor); - _textComponent.requestFocusInWindow(); - } - - public void markInvalid() { - _textComponent.setBackground(Binding.INVALID_COLOR); - } - - public void setEnabled(boolean enabled) { - _textComponent.setEnabled(enabled); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 30, 2005 + */ +package net.sf.launch4j.binding; + +import java.awt.Color; + +import javax.swing.text.JTextComponent; + +import org.apache.commons.beanutils.BeanUtils; + +/** + * Handles JEditorPane, JTextArea, JTextField + * + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class JTextComponentBinding implements Binding { + private final String _property; + private final JTextComponent _textComponent; + private final String _defaultValue; + private final Color _validColor; + + public JTextComponentBinding(String property, JTextComponent textComponent, + String defaultValue) { + if (property == null || textComponent == null || defaultValue == null) { + throw new NullPointerException(); + } + if (property.equals("")) { + throw new IllegalArgumentException(); + } + _property = property; + _textComponent = textComponent; + _defaultValue = defaultValue; + _validColor = _textComponent.getBackground(); + } + + public String getProperty() { + return _property; + } + + public void clear(IValidatable bean) { + _textComponent.setText(_defaultValue); + } + + public void put(IValidatable bean) { + try { + String s = BeanUtils.getProperty(bean, _property); + // XXX displays zeros as blank + _textComponent.setText(s != null && !s.equals("0") ? s : ""); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void get(IValidatable bean) { + try { + BeanUtils.setProperty(bean, _property, _textComponent.getText()); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void markValid() { + _textComponent.setBackground(_validColor); + _textComponent.requestFocusInWindow(); + } + + public void markInvalid() { + _textComponent.setBackground(Binding.INVALID_COLOR); + } + + public void setEnabled(boolean enabled) { + _textComponent.setEnabled(enabled); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/JToggleButtonBinding.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/JToggleButtonBinding.java index 43fe11913..a7055cccc 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/binding/JToggleButtonBinding.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/JToggleButtonBinding.java @@ -1,94 +1,108 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 30, 2005 - */ -package net.sf.launch4j.binding; - -import java.awt.Color; - -import javax.swing.JToggleButton; - -import org.apache.commons.beanutils.PropertyUtils; - -/** - * Handles JToggleButton, JCheckBox - * - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class JToggleButtonBinding implements Binding { - private final String _property; - private final JToggleButton _button; - private final boolean _defaultValue; - private final Color _validColor; - - public JToggleButtonBinding(String property, JToggleButton button, boolean defaultValue) { - if (property == null || button == null) { - throw new NullPointerException(); - } - if (property.equals("")) { - throw new IllegalArgumentException(); - } - _property = property; - _button = button; - _defaultValue = defaultValue; - _validColor = _button.getBackground(); - } - - public String getProperty() { - return _property; - } - - public void clear() { - _button.setSelected(_defaultValue); - } - - public void put(IValidatable bean) { - try { - // String s = BeanUtils.getProperty(o, _property); - // _checkBox.setSelected("true".equals(s)); - Boolean b = (Boolean) PropertyUtils.getProperty(bean, _property); - _button.setSelected(b != null && b.booleanValue()); - } catch (Exception e) { - throw new BindingException(e); - } - } - - public void get(IValidatable bean) { - try { - PropertyUtils.setProperty(bean, _property, Boolean.valueOf(_button.isSelected())); - } catch (Exception e) { - throw new BindingException(e); - } - } - - public void markValid() { - _button.setBackground(_validColor); - _button.requestFocusInWindow(); - } - - public void markInvalid() { - _button.setBackground(Binding.INVALID_COLOR); - } - - public void setEnabled(boolean enabled) { - _button.setEnabled(enabled); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 30, 2005 + */ +package net.sf.launch4j.binding; + +import java.awt.Color; + +import javax.swing.JToggleButton; + +import org.apache.commons.beanutils.PropertyUtils; + +/** + * Handles JToggleButton, JCheckBox + * + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class JToggleButtonBinding implements Binding { + private final String _property; + private final JToggleButton _button; + private final boolean _defaultValue; + private final Color _validColor; + + public JToggleButtonBinding(String property, JToggleButton button, + boolean defaultValue) { + if (property == null || button == null) { + throw new NullPointerException(); + } + if (property.equals("")) { + throw new IllegalArgumentException(); + } + _property = property; + _button = button; + _defaultValue = defaultValue; + _validColor = _button.getBackground(); + } + + public String getProperty() { + return _property; + } + + public void clear(IValidatable bean) { + _button.setSelected(_defaultValue); + } + + public void put(IValidatable bean) { + try { + Boolean b = (Boolean) PropertyUtils.getProperty(bean, _property); + _button.setSelected(b != null && b.booleanValue()); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void get(IValidatable bean) { + try { + PropertyUtils.setProperty(bean, _property, + Boolean.valueOf(_button.isSelected())); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void markValid() { + _button.setBackground(_validColor); + _button.requestFocusInWindow(); + } + + public void markInvalid() { + _button.setBackground(Binding.INVALID_COLOR); + } + + public void setEnabled(boolean enabled) { + _button.setEnabled(enabled); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/Messages.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/Messages.java new file mode 100644 index 000000000..91ddff2b1 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/Messages.java @@ -0,0 +1,78 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +package net.sf.launch4j.binding; + +import java.text.MessageFormat; +import java.util.MissingResourceException; +import java.util.ResourceBundle; + +public class Messages { + private static final String BUNDLE_NAME = "net.sf.launch4j.binding.messages"; + + private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle + .getBundle(BUNDLE_NAME); + private static final MessageFormat FORMATTER = new MessageFormat(""); + + private Messages() { + } + + public static String getString(String key) { + try { + return RESOURCE_BUNDLE.getString(key); + } catch (MissingResourceException e) { + return '!' + key + '!'; + } + } + + public static String getString(String key, String arg0) { + return getString(key, new Object[] {arg0}); + } + + public static String getString(String key, String arg0, String arg1) { + return getString(key, new Object[] {arg0, arg1}); + } + + public static String getString(String key, String arg0, String arg1, String arg2) { + return getString(key, new Object[] {arg0, arg1, arg2}); + } + + public static String getString(String key, Object[] args) { + try { + FORMATTER.applyPattern(RESOURCE_BUNDLE.getString(key)); + return FORMATTER.format(args); + } catch (MissingResourceException e) { + return '!' + key + '!'; + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/OptComponentBinding.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/OptComponentBinding.java index 9d514ad5a..b573da628 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/binding/OptComponentBinding.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/OptComponentBinding.java @@ -1,104 +1,119 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on May 11, 2005 - */ -package net.sf.launch4j.binding; - -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.util.Arrays; - -import javax.swing.JToggleButton; - -import org.apache.commons.beanutils.PropertyUtils; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class OptComponentBinding implements Binding, ActionListener { - private final Bindings _bindings; - private final String _property; - private final Class _clazz; - private final JToggleButton _button; - private final boolean _enabledByDefault; - - public OptComponentBinding(Bindings bindings, String property, Class clazz, - JToggleButton button, boolean enabledByDefault) { - if (property == null || clazz == null || button == null) { - throw new NullPointerException(); - } - if (property.equals("")) { - throw new IllegalArgumentException(); - } - if (!Arrays.asList(clazz.getInterfaces()).contains(IValidatable.class)) { - throw new IllegalArgumentException("Optional component must implement " - + IValidatable.class); - } - _bindings = bindings; - _property = property; - _clazz = clazz; - _button = button; - _button.addActionListener(this); - _enabledByDefault = enabledByDefault; - } - - public String getProperty() { - return _property; - } - - public void clear() { - _button.setSelected(_enabledByDefault); - updateComponents(); - } - - public void put(IValidatable bean) { - try { - Object component = PropertyUtils.getProperty(bean, _property); - _button.setSelected(component != null); - updateComponents(); - } catch (Exception e) { - throw new BindingException(e); - } - } - - public void get(IValidatable bean) { - try { - PropertyUtils.setProperty(bean, _property, _button.isSelected() - ? _clazz.newInstance() : null); - } catch (Exception e) { - throw new BindingException(e); - } - } - - public void markValid() {} - - public void markInvalid() {} - - public void setEnabled(boolean enabled) {} // XXX implement? - - public void actionPerformed(ActionEvent e) { - updateComponents(); - } - - private void updateComponents() { - _bindings.setComponentsEnabled(_property, _button.isSelected()); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 11, 2005 + */ +package net.sf.launch4j.binding; + +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.util.Arrays; + +import javax.swing.JToggleButton; + +import org.apache.commons.beanutils.PropertyUtils; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class OptComponentBinding implements Binding, ActionListener { + private final Bindings _bindings; + private final String _property; + private final Class _clazz; + private final JToggleButton _button; + private final boolean _enabledByDefault; + + public OptComponentBinding(Bindings bindings, String property, Class clazz, + JToggleButton button, boolean enabledByDefault) { + if (property == null || clazz == null || button == null) { + throw new NullPointerException(); + } + if (property.equals("")) { + throw new IllegalArgumentException(); + } + if (!Arrays.asList(clazz.getInterfaces()).contains(IValidatable.class)) { + throw new IllegalArgumentException( + Messages.getString("OptComponentBinding.must.implement") + + IValidatable.class); + } + _bindings = bindings; + _property = property; + _clazz = clazz; + _button = button; + _button.addActionListener(this); + _enabledByDefault = enabledByDefault; + } + + public String getProperty() { + return _property; + } + + public void clear(IValidatable bean) { + _button.setSelected(_enabledByDefault); + updateComponents(); + } + + public void put(IValidatable bean) { + try { + Object component = PropertyUtils.getProperty(bean, _property); + _button.setSelected(component != null); + updateComponents(); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void get(IValidatable bean) { + try { + PropertyUtils.setProperty(bean, _property, _button.isSelected() + ? _clazz.newInstance() : null); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void markValid() {} + + public void markInvalid() {} + + public void setEnabled(boolean enabled) {} // XXX implement? + + public void actionPerformed(ActionEvent e) { + updateComponents(); + } + + private void updateComponents() { + _bindings.setComponentsEnabled(_property, _button.isSelected()); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/OptJTextAreaBinding.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/OptJTextAreaBinding.java new file mode 100644 index 000000000..3cea776d7 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/OptJTextAreaBinding.java @@ -0,0 +1,141 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Sep 3, 2005 + */ +package net.sf.launch4j.binding; + +import java.awt.Color; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.util.ArrayList; +import java.util.List; + +import javax.swing.JTextArea; +import javax.swing.JToggleButton; + +import org.apache.commons.beanutils.BeanUtils; +import org.apache.commons.beanutils.PropertyUtils; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class OptJTextAreaBinding implements Binding, ActionListener { + private final String _property; + private final String _stateProperty; + private final JToggleButton _button; + private final JTextArea _textArea; + private final Color _validColor; + + public OptJTextAreaBinding(String property, String stateProperty, + JToggleButton button, JTextArea textArea) { + if (property == null || button == null || textArea == null) { + throw new NullPointerException(); + } + if (property.equals("")) { + throw new IllegalArgumentException(); + } + _property = property; + _stateProperty = stateProperty; + _button = button; + _textArea = textArea; + _validColor = _textArea.getBackground(); + button.addActionListener(this); + } + + public String getProperty() { + return _property; + } + + public void clear(IValidatable bean) { + put(bean); + } + + public void put(IValidatable bean) { + try { + boolean selected = "true".equals(BeanUtils.getProperty(bean, + _stateProperty)); + _button.setSelected(selected); + _textArea.setEnabled(selected); + List list = (List) PropertyUtils.getProperty(bean, _property); + StringBuffer sb = new StringBuffer(); + if (list != null) { + for (int i = 0; i < list.size(); i++) { + sb.append(list.get(i)); + if (i < list.size() - 1) { + sb.append("\n"); + } + } + } + _textArea.setText(sb.toString()); + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void get(IValidatable bean) { + try { + String text = _textArea.getText(); + if (_button.isSelected() && !text.equals("")) { + String[] items = text.split("\n"); + List list = new ArrayList(); + for (int i = 0; i < items.length; i++) { + list.add(items[i]); + } + PropertyUtils.setProperty(bean, _property, list); + } else { + PropertyUtils.setProperty(bean, _property, null); + } + } catch (Exception e) { + throw new BindingException(e); + } + } + + public void markValid() { + _textArea.setBackground(_validColor); + _textArea.requestFocusInWindow(); + } + + public void markInvalid() { + _textArea.setBackground(Binding.INVALID_COLOR); + } + + public void setEnabled(boolean enabled) { + _textArea.setEnabled(enabled); + } + + public void actionPerformed(ActionEvent e) { + _textArea.setEnabled(_button.isSelected()); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/Validator.java b/installer/lib/launch4j/src/net/sf/launch4j/binding/Validator.java index b7f543adf..88ea67c33 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/binding/Validator.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/Validator.java @@ -1,190 +1,259 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on 2004-01-30 - */ -package net.sf.launch4j.binding; - -import java.io.File; -import java.util.Collection; -import java.util.HashSet; - -import net.sf.launch4j.Util; -import net.sf.launch4j.config.ConfigPersister; - -/** - * @author Copyright (C) 2004 Grzegorz Kowal - */ -public class Validator { - public static final String ALPHANUMERIC_PATTERN = "[\\w]*?"; - public static final String ALPHA_PATTERN = "[\\w&&\\D]*?"; - public static final String NUMERIC_PATTERN = "[\\d]*?"; - public static final String PATH_PATTERN = "[\\w|[ .,:\\-/\\\\]]*?"; - - private static final String EMPTY_FIELD = "Enter: "; - private static final String FIELD_ERROR = "Invalid data: "; - private static final String RANGE_ERROR = " must be in range ["; - private static final String MINIMUM = " must be at least "; - private static final String DUPLICATE = " already exists."; - - private Validator() {} - - public static boolean isEmpty(String s) { - return s == null || s.equals(""); - } - - public static void checkNotNull(Object o, String property, String name) { - if (o == null) { - signalViolation(property, EMPTY_FIELD + name); - } - } - - public static void checkString(String s, int maxLength, String property, String name) { - if (s == null || s.length() == 0) { - signalViolation(property, EMPTY_FIELD + name); - } - if (s.length() > maxLength) { - signalLengthViolation(property, name, maxLength); - } - } - - public static void checkString(String s, int maxLength, String pattern, - String property, String name) { - checkString(s, maxLength, property, name); - if (!s.matches(pattern)) { - signalViolation(property, FIELD_ERROR + name); - } - } - - public static void checkOptString(String s, int maxLength, String property, String name) { - if (s == null || s.length() == 0) { - return; - } - if (s.length() > maxLength) { - signalLengthViolation(property, name, maxLength); - } - } - - public static void checkOptString(String s, int maxLength, String pattern, - String property, String name) { - if (s == null || s.length() == 0) { - return; - } - if (s.length() > maxLength) { - signalLengthViolation(property, name, maxLength); - } - if (!s.matches(pattern)) { - signalViolation(property, FIELD_ERROR + name); - } - } - - public static void checkRange(int value, int min, int max, - String property, String name) { - if (value < min || value > max) { - StringBuffer sb = new StringBuffer(name); - sb.append(RANGE_ERROR); - sb.append(min); - sb.append('-'); - sb.append(max); - sb.append(']'); - signalViolation(property, sb.toString()); - } - } - - public static void checkRange(char value, char min, char max, - String property, String name) { - if (value < min || value > max) { - StringBuffer sb = new StringBuffer(name); - sb.append(RANGE_ERROR); - sb.append(min); - sb.append('-'); - sb.append(max); - sb.append(']'); - signalViolation(property, sb.toString()); - } - } - - public static void checkMin(int value, int min, String property, String name) { - if (value < min) { - StringBuffer sb = new StringBuffer(name); - sb.append(MINIMUM); - sb.append(min); - signalViolation(property, sb.toString()); - } - } - - public static void checkTrue(boolean condition, String property, String msg) { - if (!condition) { - signalViolation(property, msg); - } - } - - public static void checkFalse(boolean condition, String property, String msg) { - if (condition) { - signalViolation(property, msg); - } - } - - public static void checkElementsNotNullUnique(Collection c, String property, String msg) { - if (c.contains(null) - || new HashSet(c).size() != c.size()) { - signalViolation(property, msg + DUPLICATE); - } - } - - public static void checkElementsUnique(Collection c, String property, String msg) { - if (new HashSet(c).size() != c.size()) { - signalViolation(property, msg + DUPLICATE); - } - } - - public static void checkFile(File f, String property, String fileDescription) { - File cfgPath = ConfigPersister.getInstance().getConfigPath(); - if (f == null || (!f.exists() && !Util.getAbsoluteFile(cfgPath, f).exists())) { - signalViolation(property, fileDescription + " doesn't exist."); - } - } - - public static void checkOptFile(File f, String property, String fileDescription) { - if (f != null && f.getPath().length() > 0) { - checkFile(f, property, fileDescription); - } - } - - public static void checkRelativeWinPath(String path, String property, String msg) { - if (path.startsWith("/") - || path.startsWith("\\") - || path.indexOf(':') != -1) { - signalViolation(property, msg); - } - } - - public static void signalLengthViolation(String property, String name, int maxLength) { - final StringBuffer sb = new StringBuffer(name); - sb.append(" exceeds the maximum length of "); - sb.append(maxLength); - sb.append(" characters."); - throw new InvariantViolationException(property, sb.toString()); - } - - public static void signalViolation(String property, String msg) { - throw new InvariantViolationException(property, msg); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on 2004-01-30 + */ +package net.sf.launch4j.binding; + +import java.io.File; +import java.util.Arrays; +import java.util.Collection; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; + +import net.sf.launch4j.Util; +import net.sf.launch4j.config.ConfigPersister; + +/** + * @author Copyright (C) 2004 Grzegorz Kowal + */ +public class Validator { + public static final String ALPHANUMERIC_PATTERN = "[\\w]*?"; + public static final String ALPHA_PATTERN = "[\\w&&\\D]*?"; + public static final String NUMERIC_PATTERN = "[\\d]*?"; + public static final String PATH_PATTERN = "[\\w|[ .,:\\-/\\\\]]*?"; + + public static final int MAX_STR = 128; + public static final int MAX_PATH = 260; + public static final int MAX_BIG_STR = 8192; // or 16384; + public static final int MAX_ARGS = 32767 - 2048; + + private Validator() {} + + public static boolean isEmpty(String s) { + return s == null || s.equals(""); + } + + public static void checkNotNull(Object o, String property, String name) { + if (o == null) { + signalViolation(property, + Messages.getString("Validator.empty.field", name)); + } + } + + public static void checkString(String s, int maxLength, String property, + String name) { + if (s == null || s.length() == 0) { + signalViolation(property, + Messages.getString("Validator.empty.field", name)); + } + if (s.length() > maxLength) { + signalLengthViolation(property, name, maxLength); + } + } + + public static void checkOptStrings(List strings, int maxLength, int totalMaxLength, + String property, String name) { + if (strings == null) { + return; + } + int totalLength = 0; + for (Iterator iter = strings.iterator(); iter.hasNext();) { + String s = (String) iter.next(); + checkString(s, maxLength, property, name); + totalLength += s.length(); + if (totalLength > totalMaxLength) { + signalLengthViolation(property, name, totalMaxLength); + } + } + } + + public static void checkString(String s, int maxLength, String pattern, + String property, String name) { + checkString(s, maxLength, property, name); + if (!s.matches(pattern)) { + signalViolation(property, + Messages.getString("Validator.invalid.data", name)); + } + } + + public static void checkOptStrings(List strings, int maxLength, int totalMaxLength, + String pattern, String property, String name, String msg) { + if (strings == null) { + return; + } + int totalLength = 0; + for (Iterator iter = strings.iterator(); iter.hasNext();) { + String s = (String) iter.next(); + checkString(s, maxLength, property, name); + if (!s.matches(pattern)) { + signalViolation(property, msg != null + ? msg + : Messages.getString("Validator.invalid.data", name)); + } + totalLength += s.length(); + if (totalLength > totalMaxLength) { + signalLengthViolation(property, name, totalMaxLength); + } + } + } + + public static void checkOptString(String s, int maxLength, String property, + String name) { + if (s == null || s.length() == 0) { + return; + } + if (s.length() > maxLength) { + signalLengthViolation(property, name, maxLength); + } + } + + public static void checkOptString(String s, int maxLength, String pattern, + String property, String name) { + if (s == null || s.length() == 0) { + return; + } + if (s.length() > maxLength) { + signalLengthViolation(property, name, maxLength); + } + if (!s.matches(pattern)) { + signalViolation(property, + Messages.getString("Validator.invalid.data", name)); + } + } + + public static void checkRange(int value, int min, int max, + String property, String name) { + if (value < min || value > max) { + signalViolation(property, + Messages.getString("Validator.must.be.in.range", name, + String.valueOf(min), String.valueOf(max))); + } + } + + public static void checkRange(char value, char min, char max, + String property, String name) { + if (value < min || value > max) { + signalViolation(property, Messages.getString("Validator.must.be.in.range", + name, String.valueOf(min), String.valueOf(max))); + } + } + + public static void checkMin(int value, int min, String property, String name) { + if (value < min) { + signalViolation(property, + Messages.getString("Validator.must.be.at.least", name, + String.valueOf(min))); + } + } + + public static void checkIn(String s, String[] strings, String property, + String name) { + if (isEmpty(s)) { + signalViolation(property, + Messages.getString("Validator.empty.field", name)); + } + List list = Arrays.asList(strings); + if (!list.contains(s)) { + signalViolation(property, + Messages.getString("Validator.invalid.option", name, list.toString())); + } + } + + public static void checkTrue(boolean condition, String property, String msg) { + if (!condition) { + signalViolation(property, msg); + } + } + + public static void checkFalse(boolean condition, String property, String msg) { + if (condition) { + signalViolation(property, msg); + } + } + + public static void checkElementsNotNullUnique(Collection c, String property, + String msg) { + if (c.contains(null) + || new HashSet(c).size() != c.size()) { + signalViolation(property, + Messages.getString("Validator.already.exists", msg)); + } + } + + public static void checkElementsUnique(Collection c, String property, String msg) { + if (new HashSet(c).size() != c.size()) { + signalViolation(property, + Messages.getString("Validator.already.exists", msg)); + } + } + + public static void checkFile(File f, String property, String fileDescription) { + File cfgPath = ConfigPersister.getInstance().getConfigPath(); + if (f == null + || f.getPath().equals("") + || (!f.exists() && !Util.getAbsoluteFile(cfgPath, f).exists())) { + signalViolation(property, + Messages.getString("Validator.doesnt.exist", fileDescription)); + } + } + + public static void checkOptFile(File f, String property, String fileDescription) { + if (f != null && f.getPath().length() > 0) { + checkFile(f, property, fileDescription); + } + } + + public static void checkRelativeWinPath(String path, String property, String msg) { + if (path == null + || path.equals("") + || path.startsWith("/") + || path.startsWith("\\") + || path.indexOf(':') != -1) { + signalViolation(property, msg); + } + } + + public static void signalLengthViolation(String property, String name, + int maxLength) { + signalViolation(property, + Messages.getString("Validator.exceeds.max.length", name, + String.valueOf(maxLength))); + } + + public static void signalViolation(String property, String msg) { + throw new InvariantViolationException(property, msg); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/messages.properties b/installer/lib/launch4j/src/net/sf/launch4j/binding/messages.properties new file mode 100644 index 000000000..adb5a8886 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/messages.properties @@ -0,0 +1,52 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal +# +# 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 the Launch4j 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 OWNER 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. +# + +OptComponentBinding.must.implement=Optional component must implement + +Validator.empty.field=Enter: {0} +Validator.invalid.data=Invalid data: {0} +Validator.must.be.in.range={0} must be in range [{1}-{2}] +Validator.must.be.at.least={0} must be at least +Validator.already.exists={0} already exists. +Validator.doesnt.exist={0} doesn''t exist. +Validator.exceeds.max.length={0} exceeds the maximum length of {1} characters. +Validator.invalid.option={0} must be one of [{1}] + +Bindings.duplicate.binding=Duplicate binding + +JRadioButtonBinding.property.null=Property is null +JRadioButtonBinding.nothing.selected=Nothing selected +JRadioButtonBinding.index.out.of.bounds=Button index out of bounds + +JComboBoxBinding.property.null=Property is null +JComboBoxBinding.index.out.of.bounds=Combo box index out of bounds diff --git a/installer/lib/launch4j/src/net/sf/launch4j/binding/messages_es.properties b/installer/lib/launch4j/src/net/sf/launch4j/binding/messages_es.properties new file mode 100644 index 000000000..e2e50fcb4 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/binding/messages_es.properties @@ -0,0 +1,51 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal, Patricio Martínez Ros +# +# 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 the Launch4j 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 OWNER 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. +# + +OptComponentBinding.must.implement=El componente opcional debe ser implementado + +Validator.empty.field=Introduzca: {0} +Validator.invalid.data=Dato no válido: {0} +Validator.must.be.in.range={0} debe estar en el rango [{1}-{2}] +Validator.must.be.at.least={0} deb ser al menos +Validator.already.exists={0} ya existe. +Validator.doesnt.exist={0} no existe. +Validator.exceeds.max.length={0} excede la longitud máxima de {1} caracteres. +Validator.invalid.option={0} must be one of [{1}] + +Bindings.duplicate.binding=Binding duplicado + +JRadioButtonBinding.property.null=La propiedad es nula +JRadioButtonBinding.nothing.selected=Nada seleccionado +JRadioButtonBinding.index.out.of.bounds=Índice de botón fuera de límite +JComboBoxBinding.property.null=Property is null +JComboBoxBinding.index.out.of.bounds=Combo box index out of bounds diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/ClassPath.java b/installer/lib/launch4j/src/net/sf/launch4j/config/ClassPath.java new file mode 100644 index 000000000..da7dbd6c4 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/ClassPath.java @@ -0,0 +1,87 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 1, 2006 + */ +package net.sf.launch4j.config; + +import java.util.List; + +import net.sf.launch4j.binding.IValidatable; +import net.sf.launch4j.binding.Validator; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class ClassPath implements IValidatable { + private String mainClass; + private List paths; + + public void checkInvariants() { + Validator.checkString(mainClass, Validator.MAX_PATH, "mainClass", + Messages.getString("ClassPath.mainClass")); + Validator.checkOptStrings(paths, + Validator.MAX_PATH, + Validator.MAX_BIG_STR, + "paths", + Messages.getString("ClassPath.path")); + } + + public String getMainClass() { + return mainClass; + } + + public void setMainClass(String mainClass) { + this.mainClass = mainClass; + } + + public List getPaths() { + return paths; + } + + public void setPaths(List paths) { + this.paths = paths; + } + + public String getPathsString() { + StringBuffer sb = new StringBuffer(); + for (int i = 0; i < paths.size(); i++) { + sb.append(paths.get(i)); + if (i < paths.size() - 1) { + sb.append(';'); + } + } + return sb.toString(); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/Config.java b/installer/lib/launch4j/src/net/sf/launch4j/config/Config.java index 2176d4d79..27633bfb4 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/config/Config.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/Config.java @@ -1,228 +1,396 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 21, 2005 - */ -package net.sf.launch4j.config; - -import java.io.File; -import java.util.List; - -import net.sf.launch4j.binding.IValidatable; -import net.sf.launch4j.binding.Validator; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class Config implements IValidatable { - - public static final String HEADER = "header"; - public static final String JAR = "jar"; - public static final String OUTFILE = "outfile"; - public static final String ERR_TITLE = "errTitle"; - public static final String JAR_ARGS = "jarArgs"; - public static final String CHDIR = "chdir"; - public static final String CUSTOM_PROC_NAME = "customProcName"; - public static final String STAY_ALIVE = "stayAlive"; - public static final String ICON = "icon"; - - public static final int GUI_HEADER = 0; - public static final int CONSOLE_HEADER = 1; - public static final int CUSTOM_HEADER = 2; - - private int headerType; - private List headerObjects; - private List libs; - private File jar; - private File outfile; - - // runtime configuration - private String errTitle; - private String jarArgs; - private String chdir; - private boolean customProcName = false; - private boolean stayAlive = false; - private File icon; - private Jre jre; - private Splash splash; - private VersionInfo versionInfo; - - public void checkInvariants() { - Validator.checkTrue(outfile != null && outfile.getPath().endsWith(".exe"), - "outfile", "Specify output file with .exe extension."); - Validator.checkFile(jar, "jar", "Application jar"); - if (!Validator.isEmpty(chdir)) { - Validator.checkRelativeWinPath(chdir, - "chdir", "'chdir' must be a path relative to the executable."); - Validator.checkFalse(chdir.toLowerCase().equals("true") - || chdir.toLowerCase().equals("false"), - "chdir", "'chdir' is now a path instead of a boolean, please check the docs."); - } - Validator.checkOptFile(icon, "icon", "Icon"); - Validator.checkOptString(jarArgs, 128, "jarArgs", "Jar arguments"); - Validator.checkOptString(errTitle, 128, "errTitle", "Error title"); - Validator.checkRange(headerType, GUI_HEADER, CONSOLE_HEADER, - "headerType", "Invalid header type"); // TODO add custom header check - Validator.checkTrue(headerType != CONSOLE_HEADER || splash == null, - "headerType", "Splash screen is not implemented by console header."); - // TODO libs - jre.checkInvariants(); - } - - public void validate() { - checkInvariants(); - if (splash != null) { - splash.checkInvariants(); - } - if (versionInfo != null) { - versionInfo.checkInvariants(); - } - } - - /** Change current directory to EXE location. */ - public String getChdir() { - return chdir; - } - - public void setChdir(String chdir) { - this.chdir = chdir; - } - - /** Constant command line arguments passed to application jar. */ - public String getJarArgs() { - return jarArgs; - } - - public void setJarArgs(String jarArgs) { - this.jarArgs = jarArgs; - } - - /** Optional, error message box title. */ - public String getErrTitle() { - return errTitle; - } - - public void setErrTitle(String errTitle) { - this.errTitle = errTitle; - } - - /** launch4j header file. */ - public int getHeaderType() { - return headerType; - } - - public void setHeaderType(int headerType) { - this.headerType = headerType; - } - - public List getHeaderObjects() { -// switch (_headerType) { -// case GUI_HEADER: -// return -// case CONSOLE_HEADER: -// FIXME -// default: - return headerObjects; - } - - public void setHeaderObject(List headerObjects) { - this.headerObjects = headerObjects; - } - - public List getLibs() { - return libs; - // FIXME default libs if null or empty - } - - public void setLibs(List libs) { - this.libs = libs; - } - - /** ICO file. */ - public File getIcon() { - return icon; - } - - public void setIcon(File icon) { - this.icon = icon; - } - - /** Jar to wrap. */ - public File getJar() { - return jar; - } - - public void setJar(File jar) { - this.jar = jar; - } - - /** JRE configuration */ - public Jre getJre() { - return jre; - } - - public void setJre(Jre jre) { - this.jre = jre; - } - - /** Output EXE file. */ - public File getOutfile() { - return outfile; - } - - public void setOutfile(File outfile) { - this.outfile = outfile; - } - - /** Custom process name as the output EXE file name. */ - public boolean isCustomProcName() { - return customProcName; - } - - public void setCustomProcName(boolean customProcName) { - this.customProcName = customProcName; - } - - /** Splash screen configuration. */ - public Splash getSplash() { - return splash; - } - - public void setSplash(Splash splash) { - this.splash = splash; - } - - /** Stay alive after launching the application. */ - public boolean isStayAlive() { - return stayAlive; - } - - public void setStayAlive(boolean stayAlive) { - this.stayAlive = stayAlive; - } - - public VersionInfo getVersionInfo() { - return versionInfo; - } - - public void setVersionInfo(VersionInfo versionInfo) { - this.versionInfo = versionInfo; - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 21, 2005 + */ +package net.sf.launch4j.config; + +import java.io.File; +import java.util.Arrays; +import java.util.List; + +import net.sf.launch4j.binding.IValidatable; +import net.sf.launch4j.binding.Validator; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class Config implements IValidatable { + + // 1.x config properties_____________________________________________________________ + public static final String HEADER = "header"; + public static final String JAR = "jar"; + public static final String OUTFILE = "outfile"; + public static final String ERR_TITLE = "errTitle"; + public static final String JAR_ARGS = "jarArgs"; + public static final String CHDIR = "chdir"; + public static final String CUSTOM_PROC_NAME = "customProcName"; + public static final String STAY_ALIVE = "stayAlive"; + public static final String ICON = "icon"; + + // __________________________________________________________________________________ + public static final String DOWNLOAD_URL = "http://java.com/download"; + + public static final String GUI_HEADER = "gui"; + public static final String CONSOLE_HEADER = "console"; + + private static final String[] HEADER_TYPES = new String[] { GUI_HEADER, + CONSOLE_HEADER }; + + private static final String[] PRIORITY_CLASS_NAMES = new String[] { "normal", + "idle", + "high" }; + + private static final int[] PRIORITY_CLASSES = new int[] { 0x00000020, + 0x00000040, + 0x00000080 }; + + private boolean dontWrapJar; + private String headerType = GUI_HEADER; + private List headerObjects; + private List libs; + private File jar; + private File outfile; + + // Runtime header configuration + private String errTitle; + private String cmdLine; + private String chdir; + private String priority; + private String downloadUrl; + private String supportUrl; + private boolean customProcName; + private boolean stayAlive; + private File manifest; + private File icon; + private List variables; + private SingleInstance singleInstance; + private ClassPath classPath; + private Jre jre; + private Splash splash; + private VersionInfo versionInfo; + private Msg messages; + + public void checkInvariants() { + Validator.checkTrue(outfile != null && outfile.getPath().endsWith(".exe"), + "outfile", Messages.getString("Config.specify.output.exe")); + if (dontWrapJar) { + if (jar != null && !jar.getPath().equals("")) { + Validator.checkRelativeWinPath(jar.getPath(), "jar", + Messages.getString("Config.application.jar.path")); + } else { + Validator.checkTrue(classPath != null, "classPath", + Messages.getString("ClassPath.or.jar")); + } + } else { + Validator.checkFile(jar, "jar", + Messages.getString("Config.application.jar")); + } + if (!Validator.isEmpty(chdir)) { + Validator.checkRelativeWinPath(chdir, "chdir", + Messages.getString("Config.chdir.relative")); + Validator.checkFalse(chdir.toLowerCase().equals("true") + || chdir.toLowerCase().equals("false"), + "chdir", Messages.getString("Config.chdir.path")); + } + Validator.checkOptFile(manifest, "manifest", Messages.getString("Config.manifest")); + Validator.checkOptFile(icon, "icon", Messages.getString("Config.icon")); + Validator.checkOptString(cmdLine, Validator.MAX_BIG_STR, "jarArgs", + Messages.getString("Config.jar.arguments")); + Validator.checkOptString(errTitle, Validator.MAX_STR, "errTitle", + Messages.getString("Config.error.title")); + Validator.checkOptString(downloadUrl, 256, + "downloadUrl", Messages.getString("Config.download.url")); + Validator.checkOptString(supportUrl, 256, + "supportUrl", Messages.getString("Config.support.url")); + Validator.checkIn(getHeaderType(), HEADER_TYPES, "headerType", + Messages.getString("Config.header.type")); + Validator.checkFalse(getHeaderType().equals(CONSOLE_HEADER) && splash != null, + "headerType", + Messages.getString("Config.splash.not.impl.by.console.hdr")); + Validator.checkOptStrings(variables, + Validator.MAX_ARGS, + Validator.MAX_ARGS, + "[^=%\t]+=[^=\t]+", + "variables", + Messages.getString("Config.variables"), + Messages.getString("Config.variables.err")); + Validator.checkIn(getPriority(), PRIORITY_CLASS_NAMES, "priority", + Messages.getString("Config.priority")); + jre.checkInvariants(); + } + + public void validate() { + checkInvariants(); + if (classPath != null) { + classPath.checkInvariants(); + } + if (splash != null) { + splash.checkInvariants(); + } + if (versionInfo != null) { + versionInfo.checkInvariants(); + } + } + + /** Change current directory to EXE location. */ + public String getChdir() { + return chdir; + } + + public void setChdir(String chdir) { + this.chdir = chdir; + } + + /** Constant command line arguments passed to the application. */ + public String getCmdLine() { + return cmdLine; + } + + public void setCmdLine(String cmdLine) { + this.cmdLine = cmdLine; + } + + /** Optional, error message box title. */ + public String getErrTitle() { + return errTitle; + } + + public void setErrTitle(String errTitle) { + this.errTitle = errTitle; + } + + /** launch4j header file. */ + public String getHeaderType() { + return headerType.toLowerCase(); + } + + public void setHeaderType(String headerType) { + this.headerType = headerType; + } + + /** launch4j header file index - used by GUI. */ + public int getHeaderTypeIndex() { + int x = Arrays.asList(HEADER_TYPES).indexOf(getHeaderType()); + return x != -1 ? x : 0; + } + + public void setHeaderTypeIndex(int headerTypeIndex) { + headerType = HEADER_TYPES[headerTypeIndex]; + } + + public boolean isCustomHeaderObjects() { + return headerObjects != null && !headerObjects.isEmpty(); + } + + public List getHeaderObjects() { + return isCustomHeaderObjects() ? headerObjects + : getHeaderType().equals(GUI_HEADER) + ? LdDefaults.GUI_HEADER_OBJECTS + : LdDefaults.CONSOLE_HEADER_OBJECTS; + } + + public void setHeaderObjects(List headerObjects) { + this.headerObjects = headerObjects; + } + + public boolean isCustomLibs() { + return libs != null && !libs.isEmpty(); + } + + public List getLibs() { + return isCustomLibs() ? libs : LdDefaults.LIBS; + } + + public void setLibs(List libs) { + this.libs = libs; + } + + /** Wrapper's manifest for User Account Control. */ + public File getManifest() { + return manifest; + } + + public void setManifest(File manifest) { + this.manifest = manifest; + } + + /** ICO file. */ + public File getIcon() { + return icon; + } + + public void setIcon(File icon) { + this.icon = icon; + } + + /** Jar to wrap. */ + public File getJar() { + return jar; + } + + public void setJar(File jar) { + this.jar = jar; + } + + public List getVariables() { + return variables; + } + + public void setVariables(List variables) { + this.variables = variables; + } + + public ClassPath getClassPath() { + return classPath; + } + + public void setClassPath(ClassPath classpath) { + this.classPath = classpath; + } + + /** JRE configuration */ + public Jre getJre() { + return jre; + } + + public void setJre(Jre jre) { + this.jre = jre; + } + + /** Output EXE file. */ + public File getOutfile() { + return outfile; + } + + public void setOutfile(File outfile) { + this.outfile = outfile; + } + + /** Custom process name as the output EXE file name. */ + public boolean isCustomProcName() { + return customProcName; + } + + public void setCustomProcName(boolean customProcName) { + this.customProcName = customProcName; + } + + /** Splash screen configuration. */ + public Splash getSplash() { + return splash; + } + + public void setSplash(Splash splash) { + this.splash = splash; + } + + /** Stay alive after launching the application. */ + public boolean isStayAlive() { + return stayAlive; + } + + public void setStayAlive(boolean stayAlive) { + this.stayAlive = stayAlive; + } + + public VersionInfo getVersionInfo() { + return versionInfo; + } + + public void setVersionInfo(VersionInfo versionInfo) { + this.versionInfo = versionInfo; + } + + public boolean isDontWrapJar() { + return dontWrapJar; + } + + public void setDontWrapJar(boolean dontWrapJar) { + this.dontWrapJar = dontWrapJar; + } + + public int getPriorityIndex() { + int x = Arrays.asList(PRIORITY_CLASS_NAMES).indexOf(getPriority()); + return x != -1 ? x : 0; + } + + public void setPriorityIndex(int x) { + priority = PRIORITY_CLASS_NAMES[x]; + } + + public String getPriority() { + return Validator.isEmpty(priority) ? PRIORITY_CLASS_NAMES[0] : priority; + } + + public void setPriority(String priority) { + this.priority = priority; + } + + public int getPriorityClass() { + return PRIORITY_CLASSES[getPriorityIndex()]; + } + + public String getDownloadUrl() { + return downloadUrl == null ? DOWNLOAD_URL : downloadUrl; + } + + public void setDownloadUrl(String downloadUrl) { + this.downloadUrl = downloadUrl; + } + + public String getSupportUrl() { + return supportUrl; + } + + public void setSupportUrl(String supportUrl) { + this.supportUrl = supportUrl; + } + + public Msg getMessages() { + return messages; + } + + public void setMessages(Msg messages) { + this.messages = messages; + } + + public SingleInstance getSingleInstance() { + return singleInstance; + } + + public void setSingleInstance(SingleInstance singleInstance) { + this.singleInstance = singleInstance; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/ConfigPersister.java b/installer/lib/launch4j/src/net/sf/launch4j/config/ConfigPersister.java index b203df739..43daf8681 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/config/ConfigPersister.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/ConfigPersister.java @@ -1,202 +1,249 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 22, 2005 - */ -package net.sf.launch4j.config; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.util.Properties; - -import net.sf.launch4j.Util; - -import com.thoughtworks.xstream.XStream; -import com.thoughtworks.xstream.io.xml.DomDriver; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class ConfigPersister { - - private static final ConfigPersister _instance = new ConfigPersister(); - - private final XStream _xstream; - private Config _config; - private File _configPath; - - private ConfigPersister() { - _xstream = new XStream(new DomDriver()); - _xstream.alias("launch4jConfig", Config.class); - _xstream.alias("jre", Jre.class); - _xstream.alias("splash", Splash.class); - _xstream.alias("versionInfo", VersionInfo.class); - } - - public static ConfigPersister getInstance() { - return _instance; - } - - public Config getConfig() { - return _config; - } - - public File getConfigPath() { - return _configPath; - } - - public File getOutputPath() throws IOException { - if (_config.getOutfile().isAbsolute()) { - return _config.getOutfile().getParentFile(); - } - File parent = _config.getOutfile().getParentFile(); - return (parent != null) ? new File(_configPath, parent.getPath()) : _configPath; - } - - public File getOutputFile() throws IOException { - return _config.getOutfile().isAbsolute() - ? _config.getOutfile() - : new File(getOutputPath(), _config.getOutfile().getName()); - } - - public void createBlank() { - _config = new Config(); - _config.setJre(new Jre()); - _configPath = null; - } - - public void setAntConfig(Config c, File basedir) { - _config = c; - _configPath = basedir; - } - - public void load(File f) throws ConfigPersisterException { - try { - BufferedReader r = new BufferedReader(new FileReader(f)); - _config = (Config) _xstream.fromXML(r); - r.close(); - setConfigPath(f); - } catch (Exception e) { - throw new ConfigPersisterException(e); - } - } - - /** - * Imports launch4j 1.x.x config file. - */ - public void loadVersion1(File f) throws ConfigPersisterException { - try { - Props props = new Props(f); - _config = new Config(); - String header = props.getProperty(Config.HEADER); - _config.setHeaderType(header == null - || header.toLowerCase().equals("guihead.bin") ? 0 : 1); - _config.setJar(props.getFile(Config.JAR)); - _config.setOutfile(props.getFile(Config.OUTFILE)); - _config.setJre(new Jre()); - _config.getJre().setPath(props.getProperty(Jre.PATH)); - _config.getJre().setMinVersion(props.getProperty(Jre.MIN_VERSION)); - _config.getJre().setMaxVersion(props.getProperty(Jre.MAX_VERSION)); - _config.getJre().setArgs(props.getProperty(Jre.ARGS)); - _config.setJarArgs(props.getProperty(Config.JAR_ARGS)); - _config.setChdir("true".equals(props.getProperty(Config.CHDIR)) ? "." : null); - _config.setCustomProcName("true".equals( - props.getProperty("setProcName"))); // 1.x - _config.setStayAlive("true".equals(props.getProperty(Config.STAY_ALIVE))); - _config.setErrTitle(props.getProperty(Config.ERR_TITLE)); - _config.setIcon(props.getFile(Config.ICON)); - File splashFile = props.getFile(Splash.SPLASH_FILE); - if (splashFile != null) { - _config.setSplash(new Splash()); - _config.getSplash().setFile(splashFile); - String waitfor = props.getProperty("waitfor"); // 1.x - _config.getSplash().setWaitForWindow(waitfor != null && !waitfor.equals("")); - String splashTimeout = props.getProperty(Splash.TIMEOUT); - if (splashTimeout != null) { - _config.getSplash().setTimeout(Integer.parseInt(splashTimeout)); - } - _config.getSplash().setTimeoutErr("true".equals( - props.getProperty(Splash.TIMEOUT_ERR))); - } else { - _config.setSplash(null); - } - setConfigPath(f); - } catch (IOException e) { - throw new ConfigPersisterException(e); - } - } - - public void save(File f) throws ConfigPersisterException { - try { - BufferedWriter w = new BufferedWriter(new FileWriter(f)); - _xstream.toXML(_config, w); - w.close(); - setConfigPath(f); - } catch (Exception e) { - throw new ConfigPersisterException(e); - } - } - - private void setConfigPath(File configFile) { - _configPath = configFile.getAbsoluteFile().getParentFile(); - } - - private class Props { - final Properties _properties = new Properties(); - - public Props(File f) throws IOException { - FileInputStream is = null; - try { - is = new FileInputStream(f); - _properties.load(is); - } finally { - Util.close(is); - } - } - - /** - * Get property and remove trailing # comments. - */ - public String getProperty(String key) { - String p = _properties.getProperty(key); - if (p == null) { - return null; - } - int x = p.indexOf('#'); - if (x == -1) { - return p; - } - do { - x--; - } while (x > 0 && (p.charAt(x) == ' ' || p.charAt(x) == '\t')); - return (x == 0) ? "" : p.substring(0, x + 1); - } - - public File getFile(String key) { - String value = getProperty(key); - return value != null ? new File(value) : null; - } - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 22, 2005 + */ +package net.sf.launch4j.config; + +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import java.util.Properties; + +import net.sf.launch4j.Util; + +import com.thoughtworks.xstream.XStream; +import com.thoughtworks.xstream.io.xml.DomDriver; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class ConfigPersister { + + private static final ConfigPersister _instance = new ConfigPersister(); + + private final XStream _xstream; + private Config _config; + private File _configPath; + + private ConfigPersister() { + _xstream = new XStream(new DomDriver()); + _xstream.alias("launch4jConfig", Config.class); + _xstream.alias("classPath", ClassPath.class); + _xstream.alias("jre", Jre.class); + _xstream.alias("splash", Splash.class); + _xstream.alias("versionInfo", VersionInfo.class); + + _xstream.addImplicitCollection(Config.class, "headerObjects", "obj", + String.class); + _xstream.addImplicitCollection(Config.class, "libs", "lib", String.class); + _xstream.addImplicitCollection(Config.class, "variables", "var", String.class); + _xstream.addImplicitCollection(ClassPath.class, "paths", "cp", String.class); + _xstream.addImplicitCollection(Jre.class, "options", "opt", String.class); + } + + public static ConfigPersister getInstance() { + return _instance; + } + + public Config getConfig() { + return _config; + } + + public File getConfigPath() { + return _configPath; + } + + public File getOutputPath() throws IOException { + if (_config.getOutfile().isAbsolute()) { + return _config.getOutfile().getParentFile(); + } + File parent = _config.getOutfile().getParentFile(); + return (parent != null) ? new File(_configPath, parent.getPath()) : _configPath; + } + + public File getOutputFile() throws IOException { + return _config.getOutfile().isAbsolute() + ? _config.getOutfile() + : new File(getOutputPath(), _config.getOutfile().getName()); + } + + public void createBlank() { + _config = new Config(); + _config.setJre(new Jre()); + _configPath = null; + } + + public void setAntConfig(Config c, File basedir) { + _config = c; + _configPath = basedir; + } + + public void load(File f) throws ConfigPersisterException { + try { + FileReader r = new FileReader(f); + char[] buf = new char[(int) f.length()]; + r.read(buf); + r.close(); + // Convert 2.x config to 3.x + String s = String.valueOf(buf) + .replaceAll("0<", "gui<") + .replaceAll("1<", "console<") + .replaceAll("jarArgs>", "cmdLine>") + .replaceAll("", "") + .replaceAll("args>", "opt>") + .replaceAll("", "") + .replaceAll("false", + "" + Jre.JDK_PREFERENCE_PREFER_JRE + "") + .replaceAll("true", + "" + Jre.JDK_PREFERENCE_JRE_ONLY + "") + .replaceAll("0", "") + .replaceAll("0", ""); + _config = (Config) _xstream.fromXML(s); + setConfigPath(f); + } catch (Exception e) { + throw new ConfigPersisterException(e); + } + } + + /** + * Imports launch4j 1.x.x config file. + */ + public void loadVersion1(File f) throws ConfigPersisterException { + try { + Props props = new Props(f); + _config = new Config(); + String header = props.getProperty(Config.HEADER); + _config.setHeaderType(header == null + || header.toLowerCase().equals("guihead.bin") ? Config.GUI_HEADER + : Config.CONSOLE_HEADER); + _config.setJar(props.getFile(Config.JAR)); + _config.setOutfile(props.getFile(Config.OUTFILE)); + _config.setJre(new Jre()); + _config.getJre().setPath(props.getProperty(Jre.PATH)); + _config.getJre().setMinVersion(props.getProperty(Jre.MIN_VERSION)); + _config.getJre().setMaxVersion(props.getProperty(Jre.MAX_VERSION)); + String args = props.getProperty(Jre.ARGS); + if (args != null) { + List jreOptions = new ArrayList(); + jreOptions.add(args); + _config.getJre().setOptions(jreOptions); + } + _config.setCmdLine(props.getProperty(Config.JAR_ARGS)); + _config.setChdir("true".equals(props.getProperty(Config.CHDIR)) + ? "." : null); + _config.setCustomProcName("true".equals( + props.getProperty("setProcName"))); // 1.x + _config.setStayAlive("true".equals(props.getProperty(Config.STAY_ALIVE))); + _config.setErrTitle(props.getProperty(Config.ERR_TITLE)); + _config.setIcon(props.getFile(Config.ICON)); + File splashFile = props.getFile(Splash.SPLASH_FILE); + if (splashFile != null) { + _config.setSplash(new Splash()); + _config.getSplash().setFile(splashFile); + String waitfor = props.getProperty("waitfor"); // 1.x + _config.getSplash().setWaitForWindow(waitfor != null + && !waitfor.equals("")); + String splashTimeout = props.getProperty(Splash.TIMEOUT); + if (splashTimeout != null) { + _config.getSplash().setTimeout(Integer.parseInt(splashTimeout)); + } + _config.getSplash().setTimeoutErr("true".equals( + props.getProperty(Splash.TIMEOUT_ERR))); + } else { + _config.setSplash(null); + } + setConfigPath(f); + } catch (IOException e) { + throw new ConfigPersisterException(e); + } + } + + public void save(File f) throws ConfigPersisterException { + try { + BufferedWriter w = new BufferedWriter(new FileWriter(f)); + _xstream.toXML(_config, w); + w.close(); + setConfigPath(f); + } catch (Exception e) { + throw new ConfigPersisterException(e); + } + } + + private void setConfigPath(File configFile) { + _configPath = configFile.getAbsoluteFile().getParentFile(); + } + + private class Props { + final Properties _properties = new Properties(); + + public Props(File f) throws IOException { + FileInputStream is = null; + try { + is = new FileInputStream(f); + _properties.load(is); + } finally { + Util.close(is); + } + } + + /** + * Get property and remove trailing # comments. + */ + public String getProperty(String key) { + String p = _properties.getProperty(key); + if (p == null) { + return null; + } + int x = p.indexOf('#'); + if (x == -1) { + return p; + } + do { + x--; + } while (x > 0 && (p.charAt(x) == ' ' || p.charAt(x) == '\t')); + return (x == 0) ? "" : p.substring(0, x + 1); + } + + public File getFile(String key) { + String value = getProperty(key); + return value != null ? new File(value) : null; + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/ConfigPersisterException.java b/installer/lib/launch4j/src/net/sf/launch4j/config/ConfigPersisterException.java index 7ade4cc45..29940b945 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/config/ConfigPersisterException.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/ConfigPersisterException.java @@ -1,37 +1,51 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 22, 2005 - */ -package net.sf.launch4j.config; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class ConfigPersisterException extends Exception { - - public ConfigPersisterException(String msg, Throwable t) { - super(msg, t); - } - - public ConfigPersisterException(Throwable t) { - super(t); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 22, 2005 + */ +package net.sf.launch4j.config; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class ConfigPersisterException extends Exception { + + public ConfigPersisterException(String msg, Throwable t) { + super(msg, t); + } + + public ConfigPersisterException(Throwable t) { + super(t); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/Jre.java b/installer/lib/launch4j/src/net/sf/launch4j/config/Jre.java index ef6c36fb7..0df45bb84 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/config/Jre.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/Jre.java @@ -1,125 +1,235 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 21, 2005 - */ -package net.sf.launch4j.config; - -import net.sf.launch4j.binding.IValidatable; -import net.sf.launch4j.binding.Validator; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class Jre implements IValidatable { - public static final String VERSION_PATTERN = "(\\d\\.){2}\\d(_\\d+)?"; - public static final String PATH = "jrepath"; - public static final String MIN_VERSION = "javamin"; - public static final String MAX_VERSION = "javamax"; - public static final String ARGS = "jvmArgs"; - - private String path; - private String minVersion; - private String maxVersion; - private int initialHeapSize; - private int maxHeapSize; - private String args; - - public void checkInvariants() { - Validator.checkOptString(minVersion, 10, VERSION_PATTERN, - "jre.minVersion", "Minimum JRE version should be x.x.x[_xx]"); - Validator.checkOptString(maxVersion, 10, VERSION_PATTERN, - "jre.maxVersion", "Maximum JRE version should be x.x.x[_xx]"); - if (Validator.isEmpty(path)) { - Validator.checkFalse(Validator.isEmpty(minVersion), - "jre.path", "Specify embedded JRE path or/and minimum JRE version."); - } else { - Validator.checkRelativeWinPath(path, - "jre.path", "Embedded JRE path must be a path relative to the executable."); - } - if (!Validator.isEmpty(maxVersion)) { - Validator.checkFalse(Validator.isEmpty(minVersion), - "jre.minVersion", "Specify minimum JRE version."); - Validator.checkTrue(minVersion.compareTo(maxVersion) <= 0, - "jre.minVersion", "Minimum JRE version is greater than the maximum."); - } - Validator.checkTrue(initialHeapSize >= 0, "jre.initialHeapSize", - "Initial heap size cannot be negative," + - " specify 0 or leave the field blank to use the JVM default."); - Validator.checkTrue(maxHeapSize == 0 || initialHeapSize <= maxHeapSize, - "jre.maxHeapSize", "Maximum heap size cannot be less than the initial" + - " size, specify 0 or leave the field blank to use the JVM default."); - Validator.checkOptString(args, 512, "jre.args", "JVM arguments"); - } - - /** JVM arguments: XOptions, system properties. */ - public String getArgs() { - return args; - } - - public void setArgs(String args) { - this.args = args; - } - - /** Max Java version (x.x.x) */ - public String getMaxVersion() { - return maxVersion; - } - - public void setMaxVersion(String maxVersion) { - this.maxVersion = maxVersion; - } - - /** Min Java version (x.x.x) */ - public String getMinVersion() { - return minVersion; - } - - public void setMinVersion(String minVersion) { - this.minVersion = minVersion; - } - - /** JRE path */ - public String getPath() { - return path; - } - - public void setPath(String path) { - this.path = path; - } - - /** Initial heap size in MB */ - public int getInitialHeapSize() { - return initialHeapSize; - } - - public void setInitialHeapSize(int initialHeapSize) { - this.initialHeapSize = initialHeapSize; - } - - /** Max heap size in MB */ - public int getMaxHeapSize() { - return maxHeapSize; - } - - public void setMaxHeapSize(int maxHeapSize) { - this.maxHeapSize = maxHeapSize; - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 21, 2005 + */ +package net.sf.launch4j.config; + +import java.util.Arrays; +import java.util.List; + +import net.sf.launch4j.binding.IValidatable; +import net.sf.launch4j.binding.Validator; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class Jre implements IValidatable { + + // 1.x config properties_____________________________________________________________ + public static final String PATH = "jrepath"; + public static final String MIN_VERSION = "javamin"; + public static final String MAX_VERSION = "javamax"; + public static final String ARGS = "jvmArgs"; + + // __________________________________________________________________________________ + public static final String VERSION_PATTERN = "(\\d\\.){2}\\d(_\\d+)?"; + + public static final String JDK_PREFERENCE_JRE_ONLY = "jreOnly"; + public static final String JDK_PREFERENCE_PREFER_JRE = "preferJre"; + public static final String JDK_PREFERENCE_PREFER_JDK = "preferJdk"; + public static final String JDK_PREFERENCE_JDK_ONLY = "jdkOnly"; + + private static final String[] JDK_PREFERENCE_NAMES = new String[] { + JDK_PREFERENCE_JRE_ONLY, + JDK_PREFERENCE_PREFER_JRE, + JDK_PREFERENCE_PREFER_JDK, + JDK_PREFERENCE_JDK_ONLY }; + + public static final int DEFAULT_JDK_PREFERENCE_INDEX + = Arrays.asList(JDK_PREFERENCE_NAMES).indexOf(JDK_PREFERENCE_PREFER_JRE); + + private String path; + private String minVersion; + private String maxVersion; + private String jdkPreference; + private Integer initialHeapSize; + private Integer initialHeapPercent; + private Integer maxHeapSize; + private Integer maxHeapPercent; + private List options; + + public void checkInvariants() { + Validator.checkOptString(minVersion, 10, VERSION_PATTERN, + "jre.minVersion", Messages.getString("Jre.min.version")); + Validator.checkOptString(maxVersion, 10, VERSION_PATTERN, + "jre.maxVersion", Messages.getString("Jre.max.version")); + if (Validator.isEmpty(path)) { + Validator.checkFalse(Validator.isEmpty(minVersion), + "jre.minVersion", Messages.getString("Jre.specify.jre.min.version.or.path")); + } else { + Validator.checkString(path, Validator.MAX_PATH, + "jre.path", Messages.getString("Jre.bundled.path")); + } + if (!Validator.isEmpty(maxVersion)) { + Validator.checkFalse(Validator.isEmpty(minVersion), + "jre.minVersion", Messages.getString("Jre.specify.min.version")); + Validator.checkTrue(minVersion.compareTo(maxVersion) < 0, + "jre.maxVersion", Messages.getString("Jre.max.greater.than.min")); + } + Validator.checkTrue(initialHeapSize == null || maxHeapSize != null, + "jre.maxHeapSize", Messages.getString("Jre.initial.and.max.heap")); + Validator.checkTrue(initialHeapSize == null || initialHeapSize.intValue() > 0, + "jre.initialHeapSize", Messages.getString("Jre.initial.heap")); + Validator.checkTrue(maxHeapSize == null || (maxHeapSize.intValue() + >= ((initialHeapSize != null) ? initialHeapSize.intValue() : 1)), + "jre.maxHeapSize", Messages.getString("Jre.max.heap")); + Validator.checkTrue(initialHeapPercent == null || maxHeapPercent != null, + "jre.maxHeapPercent", Messages.getString("Jre.initial.and.max.heap")); + if (initialHeapPercent != null) { + Validator.checkRange(initialHeapPercent.intValue(), 1, 100, + "jre.initialHeapPercent", + Messages.getString("Jre.initial.heap.percent")); + } + if (maxHeapPercent != null) { + Validator.checkRange(maxHeapPercent.intValue(), + initialHeapPercent != null ? initialHeapPercent.intValue() : 1, 100, + "jre.maxHeapPercent", + Messages.getString("Jre.max.heap.percent")); + } + Validator.checkIn(getJdkPreference(), JDK_PREFERENCE_NAMES, + "jre.jdkPreference", Messages.getString("Jre.jdkPreference.invalid")); + Validator.checkOptStrings(options, + Validator.MAX_ARGS, + Validator.MAX_ARGS, + "[^\"]*|([^\"]*\"[^\"]*\"[^\"]*)*", + "jre.options", + Messages.getString("Jre.jvm.options"), + Messages.getString("Jre.jvm.options.unclosed.quotation")); + + // Quoted variable references: "[^%]*|([^%]*\"([^%]*%[^%]+%[^%]*)+\"[^%]*)*" + Validator.checkOptStrings(options, + Validator.MAX_ARGS, + Validator.MAX_ARGS, + "[^%]*|([^%]*([^%]*%[^%]+%[^%]*)+[^%]*)*", + "jre.options", + Messages.getString("Jre.jvm.options"), + Messages.getString("Jre.jvm.options.variable")); + } + + /** JVM options */ + public List getOptions() { + return options; + } + + public void setOptions(List options) { + this.options = options; + } + + /** Max Java version (x.x.x) */ + public String getMaxVersion() { + return maxVersion; + } + + public void setMaxVersion(String maxVersion) { + this.maxVersion = maxVersion; + } + + /** Min Java version (x.x.x) */ + public String getMinVersion() { + return minVersion; + } + + public void setMinVersion(String minVersion) { + this.minVersion = minVersion; + } + + /** Preference for standalone JRE or JDK-private JRE */ + public String getJdkPreference() { + return Validator.isEmpty(jdkPreference) ? JDK_PREFERENCE_PREFER_JRE + : jdkPreference; + } + + public void setJdkPreference(String jdkPreference) { + this.jdkPreference = jdkPreference; + } + + /** Preference for standalone JRE or JDK-private JRE */ + public int getJdkPreferenceIndex() { + int x = Arrays.asList(JDK_PREFERENCE_NAMES).indexOf(getJdkPreference()); + return x != -1 ? x : DEFAULT_JDK_PREFERENCE_INDEX; + } + + public void setJdkPreferenceIndex(int x) { + jdkPreference = JDK_PREFERENCE_NAMES[x]; + } + + /** JRE path */ + public String getPath() { + return path; + } + + public void setPath(String path) { + this.path = path; + } + + /** Initial heap size in MB */ + public Integer getInitialHeapSize() { + return initialHeapSize; + } + + public void setInitialHeapSize(Integer initialHeapSize) { + this.initialHeapSize = getInteger(initialHeapSize); + } + + /** Max heap size in MB */ + public Integer getMaxHeapSize() { + return maxHeapSize; + } + + public void setMaxHeapSize(Integer maxHeapSize) { + this.maxHeapSize = getInteger(maxHeapSize); + } + + public Integer getInitialHeapPercent() { + return initialHeapPercent; + } + + public void setInitialHeapPercent(Integer initialHeapPercent) { + this.initialHeapPercent = getInteger(initialHeapPercent); + } + + public Integer getMaxHeapPercent() { + return maxHeapPercent; + } + + public void setMaxHeapPercent(Integer maxHeapPercent) { + this.maxHeapPercent = getInteger(maxHeapPercent); + } + + /** Convert 0 to null */ + private Integer getInteger(Integer i) { + return i != null && i.intValue() == 0 ? null : i; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/LdDefaults.java b/installer/lib/launch4j/src/net/sf/launch4j/config/LdDefaults.java new file mode 100644 index 000000000..55f457cc3 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/LdDefaults.java @@ -0,0 +1,62 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Sep 3, 2005 + */ +package net.sf.launch4j.config; + +import java.util.Arrays; +import java.util.List; + +public class LdDefaults { + + public static final List GUI_HEADER_OBJECTS = Arrays.asList(new String[] { + "w32api/crt2.o", + "head/guihead.o", + "head/head.o" }); + + public static final List CONSOLE_HEADER_OBJECTS = Arrays.asList(new String[] { + "w32api/crt2.o", + "head/consolehead.o", + "head/head.o"}); + + public static final List LIBS = Arrays.asList(new String[] { + "w32api/libmingw32.a", + "w32api/libgcc.a", + "w32api/libmsvcrt.a", + "w32api/libkernel32.a", + "w32api/libuser32.a", + "w32api/libadvapi32.a", + "w32api/libshell32.a" }); +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/Messages.java b/installer/lib/launch4j/src/net/sf/launch4j/config/Messages.java new file mode 100644 index 000000000..a3f344e59 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/Messages.java @@ -0,0 +1,78 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +package net.sf.launch4j.config; + +import java.text.MessageFormat; +import java.util.MissingResourceException; +import java.util.ResourceBundle; + +public class Messages { + private static final String BUNDLE_NAME = "net.sf.launch4j.config.messages"; + + private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle + .getBundle(BUNDLE_NAME); + private static final MessageFormat FORMATTER = new MessageFormat(""); + + private Messages() { + } + + public static String getString(String key) { + try { + return RESOURCE_BUNDLE.getString(key); + } catch (MissingResourceException e) { + return '!' + key + '!'; + } + } + + public static String getString(String key, String arg0) { + return getString(key, new Object[] {arg0}); + } + + public static String getString(String key, String arg0, String arg1) { + return getString(key, new Object[] {arg0, arg1}); + } + + public static String getString(String key, String arg0, String arg1, String arg2) { + return getString(key, new Object[] {arg0, arg1, arg2}); + } + + public static String getString(String key, Object[] args) { + try { + FORMATTER.applyPattern(RESOURCE_BUNDLE.getString(key)); + return FORMATTER.format(args); + } catch (MissingResourceException e) { + return '!' + key + '!'; + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/Msg.java b/installer/lib/launch4j/src/net/sf/launch4j/config/Msg.java new file mode 100644 index 000000000..ea3acfa34 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/Msg.java @@ -0,0 +1,111 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Oct 8, 2006 + */ +package net.sf.launch4j.config; + +import net.sf.launch4j.binding.IValidatable; +import net.sf.launch4j.binding.Validator; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class Msg implements IValidatable { + private String startupErr; + private String bundledJreErr; + private String jreVersionErr; + private String launcherErr; + private String instanceAlreadyExistsMsg; + + public void checkInvariants() { + Validator.checkOptString(startupErr, 1024, "startupErr", + Messages.getString("Msg.startupErr")); + Validator.checkOptString(bundledJreErr, 1024, "bundledJreErr", + Messages.getString("Msg.bundledJreErr")); + Validator.checkOptString(jreVersionErr, 1024, "jreVersionErr", + Messages.getString("Msg.jreVersionErr")); + Validator.checkOptString(launcherErr, 1024, "launcherErr", + Messages.getString("Msg.launcherErr")); + Validator.checkOptString(instanceAlreadyExistsMsg, 1024, "instanceAlreadyExistsMsg", + Messages.getString("Msg.instanceAlreadyExistsMsg")); + } + + public String getStartupErr() { + return !Validator.isEmpty(startupErr) ? startupErr + : "An error occurred while starting the application."; + } + + public void setStartupErr(String startupErr) { + this.startupErr = startupErr; + } + + public String getBundledJreErr() { + return !Validator.isEmpty(bundledJreErr) ? bundledJreErr + : "This application was configured to use a bundled Java Runtime" + + " Environment but the runtime is missing or corrupted."; + } + + public void setBundledJreErr(String bundledJreErr) { + this.bundledJreErr = bundledJreErr; + } + + public String getJreVersionErr() { + return !Validator.isEmpty(jreVersionErr) ? jreVersionErr + : "This application requires a Java Runtime Environment"; + } + + public void setJreVersionErr(String jreVersionErr) { + this.jreVersionErr = jreVersionErr; + } + + public String getLauncherErr() { + return !Validator.isEmpty(launcherErr) ? launcherErr + : "The registry refers to a nonexistent Java Runtime Environment" + + " installation or the runtime is corrupted."; + } + + public void setLauncherErr(String launcherErr) { + this.launcherErr = launcherErr; + } + + public String getInstanceAlreadyExistsMsg() { + return !Validator.isEmpty(instanceAlreadyExistsMsg) ? instanceAlreadyExistsMsg + : "An application instance is already running."; + } + + public void setInstanceAlreadyExistsMsg(String instanceAlreadyExistsMsg) { + this.instanceAlreadyExistsMsg = instanceAlreadyExistsMsg; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/SingleInstance.java b/installer/lib/launch4j/src/net/sf/launch4j/config/SingleInstance.java new file mode 100644 index 000000000..0ae340cd7 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/SingleInstance.java @@ -0,0 +1,74 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/** + * Created on 2007-09-16 + */ +package net.sf.launch4j.config; + +import net.sf.launch4j.binding.IValidatable; +import net.sf.launch4j.binding.Validator; + +/** + * @author Copyright (C) 2007 Grzegorz Kowal + */ +public class SingleInstance implements IValidatable { + + private String mutexName; + private String windowTitle; + + public void checkInvariants() { + Validator.checkString(mutexName, Validator.MAX_STR, + "singleInstance.mutexName", + Messages.getString("SingleInstance.mutexName")); + Validator.checkOptString(windowTitle, Validator.MAX_STR, + "singleInstance.windowTitle", + Messages.getString("SingleInstance.windowTitle")); + } + + public String getWindowTitle() { + return windowTitle; + } + + public void setWindowTitle(String appWindowName) { + this.windowTitle = appWindowName; + } + + public String getMutexName() { + return mutexName; + } + + public void setMutexName(String mutexName) { + this.mutexName = mutexName; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/Splash.java b/installer/lib/launch4j/src/net/sf/launch4j/config/Splash.java index f7315a9d1..f736f8208 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/config/Splash.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/Splash.java @@ -1,84 +1,103 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on Apr 21, 2005 - */ -package net.sf.launch4j.config; - -import java.io.File; - -import net.sf.launch4j.binding.IValidatable; -import net.sf.launch4j.binding.Validator; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class Splash implements IValidatable { - public static final String SPLASH_FILE = "splash"; - public static final String WAIT_FOR_TITLE = "waitForTitle"; - public static final String TIMEOUT = "splashTimeout"; - public static final String TIMEOUT_ERR = "splashTimeoutErr"; - - private File file; - private boolean waitForWindow = true; - private int timeout = 60; - private boolean timeoutErr = true; - - public void checkInvariants() { - Validator.checkFile(file, "splash.file", "Splash file"); - Validator.checkRange(timeout, 1, 60 * 15, "splash.timeout", "Splash timeout"); - } - - /** Splash screen in BMP format. */ - public File getFile() { - return file; - } - - public void setFile(File file) { - this.file = file; - } - - /** Splash timeout in seconds. */ - public int getTimeout() { - return timeout; - } - - public void setTimeout(int timeout) { - this.timeout = timeout; - } - - /** Signal error on splash timeout. */ - public boolean isTimeoutErr() { - return timeoutErr; - } - - public void setTimeoutErr(boolean timeoutErr) { - this.timeoutErr = timeoutErr; - } - - /** Hide splash screen when the child process displayes the first window. */ - public boolean getWaitForWindow() { - return waitForWindow; - } - - public void setWaitForWindow(boolean waitForWindow) { - this.waitForWindow = waitForWindow; - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Apr 21, 2005 + */ +package net.sf.launch4j.config; + +import java.io.File; + +import net.sf.launch4j.binding.IValidatable; +import net.sf.launch4j.binding.Validator; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class Splash implements IValidatable { + + // 1.x config properties_____________________________________________________________ + public static final String SPLASH_FILE = "splash"; + public static final String WAIT_FOR_TITLE = "waitForTitle"; + public static final String TIMEOUT = "splashTimeout"; + public static final String TIMEOUT_ERR = "splashTimeoutErr"; + + // __________________________________________________________________________________ + private File file; + private boolean waitForWindow = true; + private int timeout = 60; + private boolean timeoutErr = true; + + public void checkInvariants() { + Validator.checkFile(file, "splash.file", + Messages.getString("Splash.splash.file")); + Validator.checkRange(timeout, 1, 60 * 15, "splash.timeout", + Messages.getString("Splash.splash.timeout")); + } + + /** Splash screen in BMP format. */ + public File getFile() { + return file; + } + + public void setFile(File file) { + this.file = file; + } + + /** Splash timeout in seconds. */ + public int getTimeout() { + return timeout; + } + + public void setTimeout(int timeout) { + this.timeout = timeout; + } + + /** Signal error on splash timeout. */ + public boolean isTimeoutErr() { + return timeoutErr; + } + + public void setTimeoutErr(boolean timeoutErr) { + this.timeoutErr = timeoutErr; + } + + /** Hide splash screen when the child process displayes the first window. */ + public boolean getWaitForWindow() { + return waitForWindow; + } + + public void setWaitForWindow(boolean waitForWindow) { + this.waitForWindow = waitForWindow; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/VersionInfo.java b/installer/lib/launch4j/src/net/sf/launch4j/config/VersionInfo.java index 359af7e17..d719460c2 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/config/VersionInfo.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/VersionInfo.java @@ -1,135 +1,168 @@ -/* - * Created on May 21, 2005 - */ -package net.sf.launch4j.config; - -import net.sf.launch4j.binding.IValidatable; -import net.sf.launch4j.binding.Validator; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class VersionInfo implements IValidatable { - public static final String VERSION_PATTERN = "(\\d+\\.){3}\\d+"; - private static final int MAX_LEN = 150; - - private String fileVersion; - private String txtFileVersion; - private String fileDescription; - private String copyright; - private String productVersion; - private String txtProductVersion; - private String productName; - private String companyName; - private String internalName; - private String originalFilename; - - public void checkInvariants() { - Validator.checkString(fileVersion, 20, VERSION_PATTERN, - "versionInfo.fileVersion", "File version, should be 'x.x.x.x'"); - Validator.checkString(txtFileVersion, 50, - "versionInfo.txtFileVersion", "Free form file version"); - Validator.checkString(fileDescription, MAX_LEN, - "versionInfo.fileDescription", "File description"); - Validator.checkString(copyright, MAX_LEN, - "versionInfo.copyright", "Copyright"); - Validator.checkString(productVersion, 20, VERSION_PATTERN, - "versionInfo.productVersion", "Product version, should be 'x.x.x.x'"); - Validator.checkString(txtProductVersion, 50, - "versionInfo.txtProductVersion", "Free from product version"); - Validator.checkString(productName, MAX_LEN, - "versionInfo.productName", "Product name"); - Validator.checkOptString(companyName, MAX_LEN, - "versionInfo.companyName", "Company name"); - Validator.checkString(internalName, 50, - "versionInfo.internalName", "Internal name"); - Validator.checkTrue(!internalName.endsWith(".exe"), - "versionInfo.internalName", - "Internal name shouldn't have the .exe extension."); - Validator.checkString(originalFilename, 50, - "versionInfo.originalFilename", "Original filename"); - Validator.checkTrue(originalFilename.endsWith(".exe"), - "versionInfo.originalFilename", - "Original filename should end with the .exe extension."); - } - - public String getCompanyName() { - return companyName; - } - - public void setCompanyName(String companyName) { - this.companyName = companyName; - } - - public String getCopyright() { - return copyright; - } - - public void setCopyright(String copyright) { - this.copyright = copyright; - } - - public String getFileDescription() { - return fileDescription; - } - - public void setFileDescription(String fileDescription) { - this.fileDescription = fileDescription; - } - - public String getFileVersion() { - return fileVersion; - } - - public void setFileVersion(String fileVersion) { - this.fileVersion = fileVersion; - } - - public String getInternalName() { - return internalName; - } - - public void setInternalName(String internalName) { - this.internalName = internalName; - } - - public String getOriginalFilename() { - return originalFilename; - } - - public void setOriginalFilename(String originalFilename) { - this.originalFilename = originalFilename; - } - - public String getProductName() { - return productName; - } - - public void setProductName(String productName) { - this.productName = productName; - } - - public String getProductVersion() { - return productVersion; - } - - public void setProductVersion(String productVersion) { - this.productVersion = productVersion; - } - - public String getTxtFileVersion() { - return txtFileVersion; - } - - public void setTxtFileVersion(String txtFileVersion) { - this.txtFileVersion = txtFileVersion; - } - - public String getTxtProductVersion() { - return txtProductVersion; - } - - public void setTxtProductVersion(String txtProductVersion) { - this.txtProductVersion = txtProductVersion; - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 21, 2005 + */ +package net.sf.launch4j.config; + +import net.sf.launch4j.binding.IValidatable; +import net.sf.launch4j.binding.Validator; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class VersionInfo implements IValidatable { + public static final String VERSION_PATTERN = "(\\d+\\.){3}\\d+"; + + private String fileVersion; + private String txtFileVersion; + private String fileDescription; + private String copyright; + private String productVersion; + private String txtProductVersion; + private String productName; + private String companyName; + private String internalName; + private String originalFilename; + + public void checkInvariants() { + Validator.checkString(fileVersion, 20, VERSION_PATTERN, + "versionInfo.fileVersion", + Messages.getString("VersionInfo.file.version")); + Validator.checkString(txtFileVersion, 50, "versionInfo.txtFileVersion", + Messages.getString("VersionInfo.txt.file.version")); + Validator.checkString(fileDescription, 150, "versionInfo.fileDescription", + Messages.getString("VersionInfo.file.description")); + Validator.checkString(copyright, 150, "versionInfo.copyright", + Messages.getString("VersionInfo.copyright")); + Validator.checkString(productVersion, 20, VERSION_PATTERN, + "versionInfo.productVersion", + Messages.getString("VersionInfo.product.version")); + Validator.checkString(txtProductVersion, 50, "versionInfo.txtProductVersion", + Messages.getString("VersionInfo.txt.product.version")); + Validator.checkString(productName, 150, "versionInfo.productName", + Messages.getString("VersionInfo.product.name")); + Validator.checkOptString(companyName, 150, "versionInfo.companyName", + Messages.getString("VersionInfo.company.name")); + Validator.checkString(internalName, 50, "versionInfo.internalName", + Messages.getString("VersionInfo.internal.name")); + Validator.checkTrue(!internalName.endsWith(".exe"), "versionInfo.internalName", + Messages.getString("VersionInfo.internal.name.not.exe")); + Validator.checkString(originalFilename, 50, "versionInfo.originalFilename", + Messages.getString("VersionInfo.original.filename")); + Validator.checkTrue(originalFilename.endsWith(".exe"), + "versionInfo.originalFilename", + Messages.getString("VersionInfo.original.filename.exe")); + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getCopyright() { + return copyright; + } + + public void setCopyright(String copyright) { + this.copyright = copyright; + } + + public String getFileDescription() { + return fileDescription; + } + + public void setFileDescription(String fileDescription) { + this.fileDescription = fileDescription; + } + + public String getFileVersion() { + return fileVersion; + } + + public void setFileVersion(String fileVersion) { + this.fileVersion = fileVersion; + } + + public String getInternalName() { + return internalName; + } + + public void setInternalName(String internalName) { + this.internalName = internalName; + } + + public String getOriginalFilename() { + return originalFilename; + } + + public void setOriginalFilename(String originalFilename) { + this.originalFilename = originalFilename; + } + + public String getProductName() { + return productName; + } + + public void setProductName(String productName) { + this.productName = productName; + } + + public String getProductVersion() { + return productVersion; + } + + public void setProductVersion(String productVersion) { + this.productVersion = productVersion; + } + + public String getTxtFileVersion() { + return txtFileVersion; + } + + public void setTxtFileVersion(String txtFileVersion) { + this.txtFileVersion = txtFileVersion; + } + + public String getTxtProductVersion() { + return txtProductVersion; + } + + public void setTxtProductVersion(String txtProductVersion) { + this.txtProductVersion = txtProductVersion; + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/messages.properties b/installer/lib/launch4j/src/net/sf/launch4j/config/messages.properties new file mode 100644 index 000000000..5753663f4 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/messages.properties @@ -0,0 +1,93 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal +# +# 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 the Launch4j 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 OWNER 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. +# + +Splash.splash.file=Splash file +Splash.splash.timeout=Splash timeout + +Config.specify.output.exe=Specify output file with .exe extension. +Config.application.jar=Application jar +Config.application.jar.path=Specify runtime path of the jar relative to the executable. +Config.chdir.relative='chdir' must be a path relative to the executable. +Config.chdir.path='chdir' is now a path instead of a boolean, please check the docs. +Config.manifest=Manifest +Config.icon=Icon +Config.jar.arguments=Jar arguments +Config.error.title=Error title +Config.download.url=Download URL +Config.support.url=Support URL +Config.header.type=Header type +Config.splash.not.impl.by.console.hdr=Splash screen is not implemented by console header. +Config.variables=Environment variables +Config.variables.err=Environment variable assignment should have the form varname=[value][%varref%]... +Config.priority=Process priority + +ClassPath.mainClass=Main class +ClassPath.or.jar=Specify runtime path of a jar or the classpath. +ClassPath.path=Classpath + +VersionInfo.file.version=File version, should be 'x.x.x.x' +VersionInfo.txt.file.version=Free form file version +VersionInfo.file.description=File description +VersionInfo.copyright=Copyright +VersionInfo.product.version=Product version, should be 'x.x.x.x' +VersionInfo.txt.product.version=Free from product version +VersionInfo.product.name=Product name +VersionInfo.company.name=Company name +VersionInfo.internal.name=Internal name +VersionInfo.internal.name.not.exe=Internal name shouldn't have the .exe extension. +VersionInfo.original.filename=Original filename +VersionInfo.original.filename.exe=Original filename should end with the .exe extension. + +Jre.min.version=Minimum JRE version should be x.x.x[_xx] +Jre.max.version=Maximum JRE version should be x.x.x[_xx] +Jre.specify.jre.min.version.or.path=Specify minimum JRE version and/or bundled JRE path. +Jre.bundled.path=Bundled JRE path +Jre.specify.min.version=Specify minimum JRE version. +Jre.max.greater.than.min=Maximum JRE version must be greater than the minimum.\nTo use a certain JRE version, you may set the min/max range to [1.4.2 - 1.4.2_10] for example. +Jre.initial.and.max.heap=If you change the initial heap size please also specify the maximum size. +Jre.initial.heap=Initial heap size must be greater than 0, leave the field blank to use the JVM default. +Jre.max.heap=Maximum heap size cannot be less than the initial size, leave the field blank to use the JVM default. +Jre.initial.heap.percent=Initial heap % +Jre.max.heap.percent=Maximum heap % +Jre.jdkPreference.invalid=Unrecognised value for JDK preference, should be between 0 and 3 inclusive. +Jre.jvm.options=JVM arguments +Jre.jvm.options.unclosed.quotation=JVM arguments contain an unclosed quotation. +Jre.jvm.options.variable=Invalid environment variable reference. + +Msg.startupErr=Startup error message +Msg.bundledJreErr=Bundled JRE error message +Msg.jreVersionErr=JRE version error message +Msg.launcherErr=Launcher error message + +SingleInstance.mutexName=Mutex name +SingleInstance.windowTitle=Window title diff --git a/installer/lib/launch4j/src/net/sf/launch4j/config/messages_es.properties b/installer/lib/launch4j/src/net/sf/launch4j/config/messages_es.properties new file mode 100644 index 000000000..5e8659b1f --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/config/messages_es.properties @@ -0,0 +1,75 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal, Patricio Martínez Ros +# +# 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 the Launch4j 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 OWNER 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. +# + +Splash.splash.file = Fichero de la pantalla de bienvenida +Splash.splash.timeout = Tiempo de espera de la pantalla de bienvenida + +Config.specify.output.exe = Especifique el fichero de salida con extensi\u00F3n .exe. +Config.application.jar = Aplicaci\u00F3n jar +Config.application.jar.path = Especifique la ruta del jar relativa al ejecutable. +Config.chdir.relative = 'Cambiar al directorio' debe ser una ruta relativa al ejecutable. +Config.chdir.path = 'Cambiar al directorio' ahora es una ruta en lugar de un booleano, por favor consulte la documentaci\u00F3n. +Config.icon = Icono +Config.jar.arguments = Argumentos del jar +Config.error.title = T\u00EDtulo de error +Config.header.type = Tipo de cabecera +Config.splash.not.impl.by.console.hdr = La pantalla de bienvenida no est\u00E1 implementada para la cabecera de tipo consola. + +VersionInfo.file.version = La versi\u00F3n del fichero, deber\u00EDa ser 'x.x.x.x' +VersionInfo.txt.file.version = Forma libre de versi\u00F3n del fichero +VersionInfo.file.description = Descripci\u00F3n del fichero +VersionInfo.copyright = Copyright +VersionInfo.product.version = Versi\u00F3n del producto, deber\u00EDa ser 'x.x.x.x' +VersionInfo.txt.product.version = Forma libre de versi\u00F3n del producto +VersionInfo.product.name = Nombre del producto +VersionInfo.company.name = Nombre de la organizaci\u00F3n +VersionInfo.internal.name = Nombre interno +VersionInfo.internal.name.not.exe = El nombre interno no deber\u00EDa tener extensi\u00F3n .exe. +VersionInfo.original.filename = Nombre original del fichero +VersionInfo.original.filename.exe = El nombre original del fichero debe acabar con extensi\u00F3n .exe. +Jre.min.version = La versi\u00F3n m\u00EDnima del JRE deber\u00EDa ser x.x.x[_xx] +Jre.max.version = La versi\u00F3n m\u00E1xima del JRE deber\u00EDa ser x.x.x[_xx] +Jre.specify.jre.min.version.or.path=Specify minimum JRE version and/or bundled JRE path. +Jre.bundled.path.rel = La ruta del JRE debe ser relativa al ejecutable. +Jre.specify.min.version = Especifique la versi\u00F3n m\u00EDnima del JRE. +Jre.max.greater.than.min = La versi\u00F3n m\u00E1xima del JRE debe ser mayor que la m\u00EDnima.\nPara usar cierta versi\u00F3n del JRE, puede esyablecer el rango m\u00EDnimo/m\u00E1ximo a [1.4.2 - 1.4.2_10], por ejemplo. +Jre.jvm.options = Argumentos de la JVM + +Msg.startupErr=Startup error message +Msg.bundledJreErr=Bundled JRE error message +Msg.jreVersionErr=JRE version error message +Msg.launcherErr=Launcher error message + +SingleInstance.mutexName=Mutex name +SingleInstance.windowTitle=Window title + diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/BasicForm.java b/installer/lib/launch4j/src/net/sf/launch4j/form/BasicForm.java new file mode 100644 index 000000000..4dadbb983 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/form/BasicForm.java @@ -0,0 +1,283 @@ +package net.sf.launch4j.form; + +import com.jeta.forms.components.separator.TitledSeparator; +import com.jgoodies.forms.layout.CellConstraints; +import com.jgoodies.forms.layout.FormLayout; +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Dimension; +import javax.swing.Box; +import javax.swing.ButtonGroup; +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JRadioButton; +import javax.swing.JTextField; + +public abstract class BasicForm extends JPanel +{ + protected final JButton _outfileButton = new JButton(); + protected final JLabel _outfileLabel = new JLabel(); + protected final JLabel _iconLabel = new JLabel(); + protected final JLabel _jarLabel = new JLabel(); + protected final JButton _jarButton = new JButton(); + protected final JButton _iconButton = new JButton(); + protected final JLabel _cmdLineLabel = new JLabel(); + protected final JLabel _optionsLabel = new JLabel(); + protected final JLabel _chdirLabel = new JLabel(); + protected final JLabel _processPriorityLabel = new JLabel(); + protected final JRadioButton _normalPriorityRadio = new JRadioButton(); + protected final ButtonGroup _buttongroup1 = new ButtonGroup(); + protected final JRadioButton _idlePriorityRadio = new JRadioButton(); + protected final JRadioButton _highPriorityRadio = new JRadioButton(); + protected final JCheckBox _customProcNameCheck = new JCheckBox(); + protected final JCheckBox _stayAliveCheck = new JCheckBox(); + protected final JTextField _cmdLineField = new JTextField(); + protected final JTextField _chdirField = new JTextField(); + protected final JTextField _iconField = new JTextField(); + protected final JCheckBox _dontWrapJarCheck = new JCheckBox(); + protected final JTextField _jarField = new JTextField(); + protected final JTextField _outfileField = new JTextField(); + protected final JLabel _errorTitleLabel = new JLabel(); + protected final JTextField _errorTitleField = new JTextField(); + protected final JLabel _downloadUrlLabel = new JLabel(); + protected final JTextField _downloadUrlField = new JTextField(); + protected final JLabel _supportUrlLabel = new JLabel(); + protected final JTextField _supportUrlField = new JTextField(); + protected final JTextField _manifestField = new JTextField(); + protected final JButton _manifestButton = new JButton(); + + /** + * Default constructor + */ + public BasicForm() + { + initializePanel(); + } + + /** + * Adds fill components to empty cells in the first row and first column of the grid. + * This ensures that the grid spacing will be the same as shown in the designer. + * @param cols an array of column indices in the first row where fill components should be added. + * @param rows an array of row indices in the first column where fill components should be added. + */ + void addFillComponents( Container panel, int[] cols, int[] rows ) + { + Dimension filler = new Dimension(10,10); + + boolean filled_cell_11 = false; + CellConstraints cc = new CellConstraints(); + if ( cols.length > 0 && rows.length > 0 ) + { + if ( cols[0] == 1 && rows[0] == 1 ) + { + /** add a rigid area */ + panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); + filled_cell_11 = true; + } + } + + for( int index = 0; index < cols.length; index++ ) + { + if ( cols[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); + } + + for( int index = 0; index < rows.length; index++ ) + { + if ( rows[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); + } + + } + + /** + * Helper method to load an image file from the CLASSPATH + * @param imageName the package and name of the file to load relative to the CLASSPATH + * @return an ImageIcon instance with the specified image file + * @throws IllegalArgumentException if the image resource cannot be loaded. + */ + public ImageIcon loadImage( String imageName ) + { + try + { + ClassLoader classloader = getClass().getClassLoader(); + java.net.URL url = classloader.getResource( imageName ); + if ( url != null ) + { + ImageIcon icon = new ImageIcon( url ); + return icon; + } + } + catch( Exception e ) + { + e.printStackTrace(); + } + throw new IllegalArgumentException( "Unable to load image: " + imageName ); + } + + public JPanel createPanel() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(65DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:DEFAULT:NONE,FILL:7DLU:NONE,FILL:DEFAULT:NONE,FILL:7DLU:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:GROW(1.0),FILL:3DLU:NONE,FILL:26PX:NONE,FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _outfileButton.setIcon(loadImage("images/open16.png")); + _outfileButton.setName("outfileButton"); + jpanel1.add(_outfileButton,cc.xy(12,2)); + + _outfileLabel.setIcon(loadImage("images/asterix.gif")); + _outfileLabel.setName("outfileLabel"); + _outfileLabel.setText(Messages.getString("outfile")); + jpanel1.add(_outfileLabel,cc.xy(2,2)); + + _iconLabel.setName("iconLabel"); + _iconLabel.setText(Messages.getString("icon")); + jpanel1.add(_iconLabel,cc.xy(2,10)); + + _jarLabel.setIcon(loadImage("images/asterix.gif")); + _jarLabel.setName("jarLabel"); + _jarLabel.setText(Messages.getString("jar")); + jpanel1.add(_jarLabel,cc.xy(2,4)); + + _jarButton.setIcon(loadImage("images/open16.png")); + _jarButton.setName("jarButton"); + jpanel1.add(_jarButton,cc.xy(12,4)); + + _iconButton.setIcon(loadImage("images/open16.png")); + _iconButton.setName("iconButton"); + jpanel1.add(_iconButton,cc.xy(12,10)); + + _cmdLineLabel.setName("cmdLineLabel"); + _cmdLineLabel.setText(Messages.getString("cmdLine")); + _cmdLineLabel.setToolTipText(""); + jpanel1.add(_cmdLineLabel,cc.xy(2,14)); + + _optionsLabel.setName("optionsLabel"); + _optionsLabel.setText(Messages.getString("options")); + jpanel1.add(_optionsLabel,cc.xy(2,18)); + + _chdirLabel.setName("chdirLabel"); + _chdirLabel.setText(Messages.getString("chdir")); + jpanel1.add(_chdirLabel,cc.xy(2,12)); + + _processPriorityLabel.setName("processPriorityLabel"); + _processPriorityLabel.setText(Messages.getString("priority")); + jpanel1.add(_processPriorityLabel,cc.xy(2,16)); + + _normalPriorityRadio.setActionCommand(Messages.getString("normalPriority")); + _normalPriorityRadio.setName("normalPriorityRadio"); + _normalPriorityRadio.setText(Messages.getString("normalPriority")); + _buttongroup1.add(_normalPriorityRadio); + jpanel1.add(_normalPriorityRadio,cc.xy(4,16)); + + _idlePriorityRadio.setActionCommand(Messages.getString("idlePriority")); + _idlePriorityRadio.setName("idlePriorityRadio"); + _idlePriorityRadio.setText(Messages.getString("idlePriority")); + _buttongroup1.add(_idlePriorityRadio); + jpanel1.add(_idlePriorityRadio,cc.xy(6,16)); + + _highPriorityRadio.setActionCommand(Messages.getString("highPriority")); + _highPriorityRadio.setName("highPriorityRadio"); + _highPriorityRadio.setText(Messages.getString("highPriority")); + _buttongroup1.add(_highPriorityRadio); + jpanel1.add(_highPriorityRadio,cc.xy(8,16)); + + _customProcNameCheck.setActionCommand("Custom process name"); + _customProcNameCheck.setName("customProcNameCheck"); + _customProcNameCheck.setText(Messages.getString("customProcName")); + jpanel1.add(_customProcNameCheck,cc.xywh(4,18,7,1)); + + _stayAliveCheck.setActionCommand("Stay alive after launching a GUI application"); + _stayAliveCheck.setName("stayAliveCheck"); + _stayAliveCheck.setText(Messages.getString("stayAlive")); + jpanel1.add(_stayAliveCheck,cc.xywh(4,20,7,1)); + + _cmdLineField.setName("cmdLineField"); + _cmdLineField.setToolTipText(Messages.getString("cmdLineTip")); + jpanel1.add(_cmdLineField,cc.xywh(4,14,7,1)); + + _chdirField.setName("chdirField"); + _chdirField.setToolTipText(Messages.getString("chdirTip")); + jpanel1.add(_chdirField,cc.xywh(4,12,7,1)); + + _iconField.setName("iconField"); + _iconField.setToolTipText(Messages.getString("iconTip")); + jpanel1.add(_iconField,cc.xywh(4,10,7,1)); + + _dontWrapJarCheck.setActionCommand("Don't wrap the jar, launch it only"); + _dontWrapJarCheck.setName("dontWrapJarCheck"); + _dontWrapJarCheck.setText(Messages.getString("dontWrapJar")); + jpanel1.add(_dontWrapJarCheck,cc.xywh(4,6,7,1)); + + _jarField.setName("jarField"); + _jarField.setToolTipText(Messages.getString("jarTip")); + jpanel1.add(_jarField,cc.xywh(4,4,7,1)); + + _outfileField.setName("outfileField"); + _outfileField.setToolTipText(Messages.getString("outfileTip")); + jpanel1.add(_outfileField,cc.xywh(4,2,7,1)); + + TitledSeparator titledseparator1 = new TitledSeparator(); + titledseparator1.setText(Messages.getString("downloadAndSupport")); + jpanel1.add(titledseparator1,cc.xywh(2,22,11,1)); + + _errorTitleLabel.setName("errorTitleLabel"); + _errorTitleLabel.setText(Messages.getString("errorTitle")); + jpanel1.add(_errorTitleLabel,cc.xy(2,24)); + + _errorTitleField.setName("errorTitleField"); + _errorTitleField.setToolTipText(Messages.getString("errorTitleTip")); + jpanel1.add(_errorTitleField,cc.xywh(4,24,7,1)); + + _downloadUrlLabel.setIcon(loadImage("images/asterix.gif")); + _downloadUrlLabel.setName("downloadUrlLabel"); + _downloadUrlLabel.setText(Messages.getString("downloadUrl")); + jpanel1.add(_downloadUrlLabel,cc.xy(2,26)); + + _downloadUrlField.setName("downloadUrlField"); + jpanel1.add(_downloadUrlField,cc.xywh(4,26,7,1)); + + _supportUrlLabel.setName("supportUrlLabel"); + _supportUrlLabel.setText(Messages.getString("supportUrl")); + jpanel1.add(_supportUrlLabel,cc.xy(2,28)); + + _supportUrlField.setName("supportUrlField"); + jpanel1.add(_supportUrlField,cc.xywh(4,28,7,1)); + + JLabel jlabel1 = new JLabel(); + jlabel1.setText(Messages.getString("manifest")); + jpanel1.add(jlabel1,cc.xy(2,8)); + + _manifestField.setName("manifestField"); + _manifestField.setToolTipText(Messages.getString("manifestTip")); + jpanel1.add(_manifestField,cc.xywh(4,8,7,1)); + + _manifestButton.setIcon(loadImage("images/open16.png")); + _manifestButton.setName("manifestButton"); + jpanel1.add(_manifestButton,cc.xy(12,8)); + + addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29 }); + return jpanel1; + } + + /** + * Initializer + */ + protected void initializePanel() + { + setLayout(new BorderLayout()); + add(createPanel(), BorderLayout.CENTER); + } + + +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/BasicForm.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/BasicForm.jfrm new file mode 100644 index 0000000000000000000000000000000000000000..1d8a9ad58d747a6d9ecf8e4e613f09fa218010d1 GIT binary patch literal 18367 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 CjW#U+ literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/ClassPathForm.java b/installer/lib/launch4j/src/net/sf/launch4j/form/ClassPathForm.java new file mode 100644 index 000000000..9f4f52471 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/form/ClassPathForm.java @@ -0,0 +1,193 @@ +package net.sf.launch4j.form; + +import com.jgoodies.forms.layout.CellConstraints; +import com.jgoodies.forms.layout.FormLayout; +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Dimension; +import javax.swing.Box; +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JLabel; +import javax.swing.JList; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextField; + +public abstract class ClassPathForm extends JPanel +{ + protected final JTextField _classpathField = new JTextField(); + protected final JLabel _classpathFieldLabel = new JLabel(); + protected final JLabel _classpathListLabel = new JLabel(); + protected final JList _classpathList = new JList(); + protected final JLabel _mainclassLabel = new JLabel(); + protected final JTextField _mainclassField = new JTextField(); + protected final JButton _acceptClasspathButton = new JButton(); + protected final JButton _removeClasspathButton = new JButton(); + protected final JButton _importClasspathButton = new JButton(); + protected final JButton _classpathUpButton = new JButton(); + protected final JButton _classpathDownButton = new JButton(); + protected final JCheckBox _classpathCheck = new JCheckBox(); + protected final JButton _newClasspathButton = new JButton(); + + /** + * Default constructor + */ + public ClassPathForm() + { + initializePanel(); + } + + /** + * Adds fill components to empty cells in the first row and first column of the grid. + * This ensures that the grid spacing will be the same as shown in the designer. + * @param cols an array of column indices in the first row where fill components should be added. + * @param rows an array of row indices in the first column where fill components should be added. + */ + void addFillComponents( Container panel, int[] cols, int[] rows ) + { + Dimension filler = new Dimension(10,10); + + boolean filled_cell_11 = false; + CellConstraints cc = new CellConstraints(); + if ( cols.length > 0 && rows.length > 0 ) + { + if ( cols[0] == 1 && rows[0] == 1 ) + { + /** add a rigid area */ + panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); + filled_cell_11 = true; + } + } + + for( int index = 0; index < cols.length; index++ ) + { + if ( cols[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); + } + + for( int index = 0; index < rows.length; index++ ) + { + if ( rows[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); + } + + } + + /** + * Helper method to load an image file from the CLASSPATH + * @param imageName the package and name of the file to load relative to the CLASSPATH + * @return an ImageIcon instance with the specified image file + * @throws IllegalArgumentException if the image resource cannot be loaded. + */ + public ImageIcon loadImage( String imageName ) + { + try + { + ClassLoader classloader = getClass().getClassLoader(); + java.net.URL url = classloader.getResource( imageName ); + if ( url != null ) + { + ImageIcon icon = new ImageIcon( url ); + return icon; + } + } + catch( Exception e ) + { + e.printStackTrace(); + } + throw new IllegalArgumentException( "Unable to load image: " + imageName ); + } + + public JPanel createPanel() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(65DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:3DLU:NONE,FILL:DEFAULT:NONE,FILL:3DLU:NONE,FILL:DEFAULT:NONE,FILL:3DLU:NONE,FILL:DEFAULT:NONE,FILL:3DLU:NONE,FILL:26PX:NONE,FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:GROW(1.0),CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _classpathField.setName("classpathField"); + jpanel1.add(_classpathField,cc.xywh(4,11,7,1)); + + _classpathFieldLabel.setIcon(loadImage("images/asterix.gif")); + _classpathFieldLabel.setName("classpathFieldLabel"); + _classpathFieldLabel.setText(Messages.getString("editClassPath")); + jpanel1.add(_classpathFieldLabel,cc.xy(2,11)); + + _classpathListLabel.setName("classpathListLabel"); + _classpathListLabel.setText(Messages.getString("classPath")); + jpanel1.add(_classpathListLabel,cc.xy(2,6)); + + _classpathList.setName("classpathList"); + JScrollPane jscrollpane1 = new JScrollPane(); + jscrollpane1.setViewportView(_classpathList); + jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane1,cc.xywh(4,6,7,4)); + + _mainclassLabel.setIcon(loadImage("images/asterix.gif")); + _mainclassLabel.setName("mainclassLabel"); + _mainclassLabel.setText(Messages.getString("mainClass")); + jpanel1.add(_mainclassLabel,cc.xy(2,4)); + + _mainclassField.setName("mainclassField"); + jpanel1.add(_mainclassField,cc.xywh(4,4,7,1)); + + _acceptClasspathButton.setActionCommand("Add"); + _acceptClasspathButton.setIcon(loadImage("images/ok16.png")); + _acceptClasspathButton.setName("acceptClasspathButton"); + _acceptClasspathButton.setText(Messages.getString("accept")); + jpanel1.add(_acceptClasspathButton,cc.xy(8,13)); + + _removeClasspathButton.setActionCommand("Remove"); + _removeClasspathButton.setIcon(loadImage("images/cancel16.png")); + _removeClasspathButton.setName("removeClasspathButton"); + _removeClasspathButton.setText(Messages.getString("remove")); + jpanel1.add(_removeClasspathButton,cc.xy(10,13)); + + _importClasspathButton.setIcon(loadImage("images/open16.png")); + _importClasspathButton.setName("importClasspathButton"); + _importClasspathButton.setToolTipText(Messages.getString("importClassPath")); + jpanel1.add(_importClasspathButton,cc.xy(12,4)); + + _classpathUpButton.setIcon(loadImage("images/up16.png")); + _classpathUpButton.setName("classpathUpButton"); + jpanel1.add(_classpathUpButton,cc.xy(12,6)); + + _classpathDownButton.setIcon(loadImage("images/down16.png")); + _classpathDownButton.setName("classpathDownButton"); + jpanel1.add(_classpathDownButton,cc.xy(12,8)); + + _classpathCheck.setActionCommand("Custom classpath"); + _classpathCheck.setName("classpathCheck"); + _classpathCheck.setText(Messages.getString("customClassPath")); + jpanel1.add(_classpathCheck,cc.xy(4,2)); + + _newClasspathButton.setActionCommand("New"); + _newClasspathButton.setIcon(loadImage("images/new16.png")); + _newClasspathButton.setName("newClasspathButton"); + _newClasspathButton.setText(Messages.getString("new")); + jpanel1.add(_newClasspathButton,cc.xy(6,13)); + + addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13,14 }); + return jpanel1; + } + + /** + * Initializer + */ + protected void initializePanel() + { + setLayout(new BorderLayout()); + add(createPanel(), BorderLayout.CENTER); + } + + +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/ClassPathForm.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/ClassPathForm.jfrm new file mode 100644 index 0000000000000000000000000000000000000000..764329d2b82b130d65c0aae7e782d5fcdebae4f4 GIT binary patch literal 10059 zcmeHNdu&@*89#R3Nt@--HY>2MjFdJsyWW~M+fr$zapKg)O+w;!g$SuP*T?ov?rZlR z$DV*PRA~>;R7Bdbm$bpgB&H%BLKJ~OLi-N^+J-04E!D6~e1(m8)W4e%lzFARP z7IXCPuf2BSvoHVR` zQYcxD*>bIZ!Qw>t|m#dLbEJMT1+{YhyP7XH%bPYDflTdva3SuTtVi3_mC}MF%w5(Z?b2Insxm~zz z$d&D#lfzS+k;{o>Dm8Y8r{Y|4>PUL**x{3VMh`&eK}VV)+ai3hF9&Z{%e&qvZtQnw zz`oJhlL0Y3odDrmIKm4|R)mzSEz?X&w%Dej`Oh3Z_0TO4>kfNtt{d>&vO@Vhe@Id~1xQ%PQ4^vp9+%ZO&C zJc6Q(e0Ys`TLdvJ;pk-gFbd4bHq^f)SVdXO2}jek#1b-9GN7(dF}s{=XHDIpCX=bl zFRvVU&+MFg>v8lyRC_FaDFxqp4}!8@ZQ0%Wuz zDg_FB+ru~K#QbC2B2$EH#3k6OftHr z9Sl!@f!n>HWybjo$1wLj{OaYdw}#K|M0?aSW?+%>$!CZVUA=T=i#>U`o&@Mlci;1o zum0}h{7ZuG2M(@5qu7ELBnG!8ToMAxt(}bma>aE;H{G>=@~6jl|0VK?G_H-#-E9M# zk@n1enuH^rT+7HnT4oA$Y$7mh@TFkSZtf9GD!eE1&4DvLXGaQA(vl#pSy3_aqU*mD ziAokDA57tt7)*)rU1EIVJSK#L3#21!<`%iT8Hp|=7GM$HLJ4DbBKi+#YZ#8|hek$5 zO2zgFe4yJ7%U&l$O>&@~u_x>lS?;hcKU-b>;aq3GYnhL_mT_>jmi1A-A$QzWSP&OIr-;!A$OpL{p(_)t~Ux8Wu`_)QGXdqFP-JOz3U(u~Z! ze2>F!@rL!nFj;~!$Ru^+Ckf+RjGz0`>p#9=9O68ND>@hl@L>Ez2qS&63Kgam6D>wf zxg_M|EF)ck7LPE_Sv*PxxlFrkYvYn@#vfWP?3ogZ=%13r23TBvV&_;1!xS z;StJcD*vkmHqc(L}TFtCx-E z`Mx;Xwf*UfCocc;2mg3<4cixtBJ>h`gvTm;htU9L_Dah-?0i*472-BbNdPs$j#{2N z;@7|yFByS|H+ic*eMHS(u>VW-kGq8>wher zHxx8zy!x!)jkf1-3CZ|~m2l6#C_rVp-p;)lpm@8Zn&Npv@hP6yQXa*V0bILLB)nRO z0#LT|fdcJO?D$%(0u66M$ohT=QS4)px_QGf3xyg!mwB0Yya4BcTBT!N;2qVDsR&{j z<%b|{8x$pp8vF>-_tSRZA~+#{li9egs&L-HNYmj=2Itg@>l>UhU0=R^R4}w05UP90 zO^62yJq;_+8y?XBm94g=Ibq_{q3yr*Ssot&H;x$emyL%&?s=h+882|`2 zzYA8K^KRAxM!y3LNz^2&xZv0nY`zBog8FZx^ zhxU5K~93+bg%kerq1oXc4cgi@K(1`%W!h?{N}8EZ`D*hj)EFx_NZ>fkAjk zl%@2tU}I!w#c`YWj(N(IGkBy|BNX{V_B9F~QsNJ71un{pe-0fu+}jFZzPS;HdkEim zwrJ@?gFS6nM9(1cd7p8dUt4>lnn4vbKr_;h8`0|3ko6H3AU*kKQ?M$3yK=rP6-^bYmDF literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/Config.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/Config.jfrm deleted file mode 100644 index 0be002848db1c866e7c4cae90349264fdc0368dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44050 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 Y39GG?w3oVEd#OG5B=v@TXteJCe}$-$SO5S3 diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/ConfigForm.java b/installer/lib/launch4j/src/net/sf/launch4j/form/ConfigForm.java index e41c83287..b3c6fffed 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/form/ConfigForm.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/form/ConfigForm.java @@ -1,534 +1,132 @@ -package net.sf.launch4j.form; - -import com.jeta.forms.components.separator.TitledSeparator; -import com.jgoodies.forms.layout.CellConstraints; -import com.jgoodies.forms.layout.FormLayout; -import java.awt.BorderLayout; -import java.awt.Container; -import java.awt.Dimension; -import javax.swing.Box; -import javax.swing.ButtonGroup; -import javax.swing.ImageIcon; -import javax.swing.JButton; -import javax.swing.JCheckBox; -import javax.swing.JLabel; -import javax.swing.JList; -import javax.swing.JPanel; -import javax.swing.JRadioButton; -import javax.swing.JScrollPane; -import javax.swing.JTabbedPane; -import javax.swing.JTextArea; -import javax.swing.JTextField; - - -public abstract class ConfigForm extends JPanel -{ - protected final JTabbedPane _tab = new JTabbedPane(); - protected final JButton _outfileButton = new JButton(); - protected final JTextField _outfileField = new JTextField(); - protected final JTextField _errorTitleField = new JTextField(); - protected final JCheckBox _customProcNameCheck = new JCheckBox(); - protected final JCheckBox _stayAliveCheck = new JCheckBox(); - protected final JTextField _iconField = new JTextField(); - protected final JTextField _jarField = new JTextField(); - protected final JButton _jarButton = new JButton(); - protected final JButton _iconButton = new JButton(); - protected final JTextField _jarArgsField = new JTextField(); - protected final JTextField _chdirField = new JTextField(); - protected final JRadioButton _guiHeaderRadio = new JRadioButton(); - protected final ButtonGroup _headerButtonGroup = new ButtonGroup(); - protected final JRadioButton _consoleHeaderRadio = new JRadioButton(); - protected final JList _objectFileList = new JList(); - protected final JList _w32apiList = new JList(); - protected final JTextField _jrePathField = new JTextField(); - protected final JTextField _jreMinField = new JTextField(); - protected final JTextField _jreMaxField = new JTextField(); - protected final JTextArea _jvmArgsTextArea = new JTextArea(); - protected final JTextField _initialHeapSizeField = new JTextField(); - protected final JTextField _maxHeapSizeField = new JTextField(); - protected final JCheckBox _timeoutErrCheck = new JCheckBox(); - protected final JTextField _splashFileField = new JTextField(); - protected final JTextField _timeoutField = new JTextField(); - protected final JButton _splashFileButton = new JButton(); - protected final JCheckBox _splashCheck = new JCheckBox(); - protected final JCheckBox _waitForWindowCheck = new JCheckBox(); - protected final JCheckBox _versionInfoCheck = new JCheckBox(); - protected final JTextField _fileVersionField = new JTextField(); - protected final JTextField _productVersionField = new JTextField(); - protected final JTextField _fileDescriptionField = new JTextField(); - protected final JTextField _copyrightField = new JTextField(); - protected final JTextField _txtFileVersionField = new JTextField(); - protected final JTextField _txtProductVersionField = new JTextField(); - protected final JTextField _productNameField = new JTextField(); - protected final JTextField _originalFilenameField = new JTextField(); - protected final JTextField _internalNameField = new JTextField(); - protected final JTextField _companyNameField = new JTextField(); - protected final JTextArea _logTextArea = new JTextArea(); - - /** - * Default constructor - */ - public ConfigForm() - { - initializePanel(); - } - - /** - * Adds fill components to empty cells in the first row and first column of the grid. - * This ensures that the grid spacing will be the same as shown in the designer. - * @param cols an array of column indices in the first row where fill components should be added. - * @param rows an array of row indices in the first column where fill components should be added. - */ - void addFillComponents( Container panel, int[] cols, int[] rows ) - { - Dimension filler = new Dimension(10,10); - - boolean filled_cell_11 = false; - CellConstraints cc = new CellConstraints(); - if ( cols.length > 0 && rows.length > 0 ) - { - if ( cols[0] == 1 && rows[0] == 1 ) - { - /** add a rigid area */ - panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); - filled_cell_11 = true; - } - } - - for( int index = 0; index < cols.length; index++ ) - { - if ( cols[index] == 1 && filled_cell_11 ) - { - continue; - } - panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); - } - - for( int index = 0; index < rows.length; index++ ) - { - if ( rows[index] == 1 && filled_cell_11 ) - { - continue; - } - panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); - } - - } - - /** - * Helper method to load an image file from the CLASSPATH - * @param imageName the package and name of the file to load relative to the CLASSPATH - * @return an ImageIcon instance with the specified image file - * @throws IllegalArgumentException if the image resource cannot be loaded. - */ - public ImageIcon loadImage( String imageName ) - { - try - { - ClassLoader classloader = getClass().getClassLoader(); - java.net.URL url = classloader.getResource( imageName ); - if ( url != null ) - { - ImageIcon icon = new ImageIcon( url ); - return icon; - } - } - catch( Exception e ) - { - e.printStackTrace(); - } - throw new IllegalArgumentException( "Unable to load image: " + imageName ); - } - - public JPanel createPanel() - { - JPanel jpanel1 = new JPanel(); - FormLayout formlayout1 = new FormLayout("FILL:3DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:3DLU:NONE","CENTER:3DLU:NONE,FILL:DEFAULT:NONE,CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:3DLU:NONE"); - CellConstraints cc = new CellConstraints(); - jpanel1.setLayout(formlayout1); - - _tab.setName("tab"); - _tab.addTab("Basic",null,createPanel1()); - _tab.addTab("Header",null,createPanel2()); - _tab.addTab("JRE",null,createPanel3()); - _tab.addTab("Splash",null,createPanel4()); - _tab.addTab("Version Info",null,createPanel5()); - jpanel1.add(_tab,cc.xy(2,2)); - - _logTextArea.setName("logTextArea"); - JScrollPane jscrollpane1 = new JScrollPane(); - jscrollpane1.setViewportView(_logTextArea); - jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); - jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); - jpanel1.add(jscrollpane1,cc.xy(2,6)); - - TitledSeparator titledseparator1 = new TitledSeparator(); - titledseparator1.setText("Log"); - jpanel1.add(titledseparator1,cc.xy(2,4)); - - addFillComponents(jpanel1,new int[]{ 1,2,3 },new int[]{ 1,2,3,4,5,6,7 }); - return jpanel1; - } - - public JPanel createPanel1() - { - JPanel jpanel1 = new JPanel(); - FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(55DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:3DLU:NONE,FILL:26PX:NONE,FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE"); - CellConstraints cc = new CellConstraints(); - jpanel1.setLayout(formlayout1); - - _outfileButton.setIcon(loadImage("images/open16.png")); - _outfileButton.setName("outfileButton"); - jpanel1.add(_outfileButton,cc.xy(6,2)); - - JLabel jlabel1 = new JLabel(); - jlabel1.setText("Output file"); - jpanel1.add(jlabel1,cc.xy(2,2)); - - JLabel jlabel2 = new JLabel(); - jlabel2.setText("Error title"); - jpanel1.add(jlabel2,cc.xy(2,12)); - - _outfileField.setName("outfileField"); - _outfileField.setToolTipText("Output executable file."); - jpanel1.add(_outfileField,cc.xy(4,2)); - - _errorTitleField.setName("errorTitleField"); - _errorTitleField.setToolTipText("Launch4j signals errors using a message box, you can set it's title to the application's name."); - jpanel1.add(_errorTitleField,cc.xy(4,12)); - - _customProcNameCheck.setActionCommand("Custom process name"); - _customProcNameCheck.setName("customProcNameCheck"); - _customProcNameCheck.setText("Custom process name"); - jpanel1.add(_customProcNameCheck,cc.xy(4,14)); - - _stayAliveCheck.setActionCommand("Stay alive after launching a GUI application"); - _stayAliveCheck.setName("stayAliveCheck"); - _stayAliveCheck.setText("Stay alive after launching a GUI application"); - jpanel1.add(_stayAliveCheck,cc.xy(4,16)); - - JLabel jlabel3 = new JLabel(); - jlabel3.setText("Icon"); - jpanel1.add(jlabel3,cc.xy(2,6)); - - _iconField.setName("iconField"); - _iconField.setToolTipText("Application icon."); - jpanel1.add(_iconField,cc.xy(4,6)); - - _jarField.setName("jarField"); - _jarField.setToolTipText("Application jar."); - jpanel1.add(_jarField,cc.xy(4,4)); - - JLabel jlabel4 = new JLabel(); - jlabel4.setText("Jar"); - jpanel1.add(jlabel4,cc.xy(2,4)); - - _jarButton.setIcon(loadImage("images/open16.png")); - _jarButton.setName("jarButton"); - jpanel1.add(_jarButton,cc.xy(6,4)); - - _iconButton.setIcon(loadImage("images/open16.png")); - _iconButton.setName("iconButton"); - jpanel1.add(_iconButton,cc.xy(6,6)); - - JLabel jlabel5 = new JLabel(); - jlabel5.setText("Jar arguments"); - jpanel1.add(jlabel5,cc.xy(2,10)); - - _jarArgsField.setName("jarArgsField"); - _jarArgsField.setToolTipText("Constant command line arguments passed to the application."); - jpanel1.add(_jarArgsField,cc.xy(4,10)); - - JLabel jlabel6 = new JLabel(); - jlabel6.setText("Options"); - jpanel1.add(jlabel6,cc.xy(2,14)); - - JLabel jlabel7 = new JLabel(); - jlabel7.setText("Change dir"); - jpanel1.add(jlabel7,cc.xy(2,8)); - - _chdirField.setName("chdirField"); - _chdirField.setToolTipText("Change current directory to a location relative to the executable. Empty field has no effect, . - changes directory to the exe location."); - jpanel1.add(_chdirField,cc.xy(4,8)); - - addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17 }); - return jpanel1; - } - - public JPanel createPanel2() - { - JPanel jpanel1 = new JPanel(); - FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(55DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:DEFAULT:NONE,FILL:7DLU:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:GROW(1.0),FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,FILL:DEFAULT:GROW(0.2),CENTER:3DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:9DLU:NONE"); - CellConstraints cc = new CellConstraints(); - jpanel1.setLayout(formlayout1); - - JLabel jlabel1 = new JLabel(); - jlabel1.setText("Header type"); - jpanel1.add(jlabel1,cc.xy(2,2)); - - _guiHeaderRadio.setActionCommand("GUI"); - _guiHeaderRadio.setName("guiHeaderRadio"); - _guiHeaderRadio.setText("GUI"); - _headerButtonGroup.add(_guiHeaderRadio); - jpanel1.add(_guiHeaderRadio,cc.xy(4,2)); - - _consoleHeaderRadio.setActionCommand("Console"); - _consoleHeaderRadio.setName("consoleHeaderRadio"); - _consoleHeaderRadio.setText("Console"); - _headerButtonGroup.add(_consoleHeaderRadio); - jpanel1.add(_consoleHeaderRadio,cc.xy(6,2)); - - JLabel jlabel2 = new JLabel(); - jlabel2.setText("Object files"); - jpanel1.add(jlabel2,new CellConstraints(2,4,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); - - _objectFileList.setName("objectFileList"); - _objectFileList.setToolTipText("Compiled header files."); - JScrollPane jscrollpane1 = new JScrollPane(); - jscrollpane1.setViewportView(_objectFileList); - jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); - jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); - jpanel1.add(jscrollpane1,cc.xywh(4,4,4,1)); - - JLabel jlabel3 = new JLabel(); - jlabel3.setText("w32api"); - jpanel1.add(jlabel3,new CellConstraints(2,6,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); - - _w32apiList.setName("w32apiList"); - _w32apiList.setToolTipText("DLLs required by header."); - JScrollPane jscrollpane2 = new JScrollPane(); - jscrollpane2.setViewportView(_w32apiList); - jscrollpane2.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); - jscrollpane2.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); - jpanel1.add(jscrollpane2,cc.xywh(4,6,4,1)); - - addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7,8 },new int[]{ 1,2,3,4,5,6,7 }); - return jpanel1; - } - - public JPanel createPanel3() - { - JPanel jpanel1 = new JPanel(); - FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(55DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:60DLU:NONE,FILL:3DLU:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:GROW(1.0),FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:9DLU:NONE"); - CellConstraints cc = new CellConstraints(); - jpanel1.setLayout(formlayout1); - - JLabel jlabel1 = new JLabel(); - jlabel1.setText("Emb. JRE path"); - jpanel1.add(jlabel1,cc.xy(2,2)); - - JLabel jlabel2 = new JLabel(); - jlabel2.setText("Min JRE version"); - jpanel1.add(jlabel2,cc.xy(2,4)); - - JLabel jlabel3 = new JLabel(); - jlabel3.setText("Max JRE version"); - jpanel1.add(jlabel3,cc.xy(2,6)); - - JLabel jlabel4 = new JLabel(); - jlabel4.setText("JVM arguments"); - jpanel1.add(jlabel4,new CellConstraints(2,12,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); - - _jrePathField.setName("jrePathField"); - _jrePathField.setToolTipText("Embedded JRE path relative to the executable."); - jpanel1.add(_jrePathField,cc.xywh(4,2,4,1)); - - _jreMinField.setName("jreMinField"); - jpanel1.add(_jreMinField,cc.xy(4,4)); - - _jreMaxField.setName("jreMaxField"); - jpanel1.add(_jreMaxField,cc.xy(4,6)); - - _jvmArgsTextArea.setName("jvmArgsTextArea"); - _jvmArgsTextArea.setToolTipText("Accepts everything you would normally pass to java/javaw launcher: assertion options, system properties and X options."); - JScrollPane jscrollpane1 = new JScrollPane(); - jscrollpane1.setViewportView(_jvmArgsTextArea); - jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); - jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); - jpanel1.add(jscrollpane1,cc.xywh(4,12,4,1)); - - JLabel jlabel5 = new JLabel(); - jlabel5.setText("Initial heap size"); - jpanel1.add(jlabel5,cc.xy(2,8)); - - JLabel jlabel6 = new JLabel(); - jlabel6.setText("Max heap size"); - jpanel1.add(jlabel6,cc.xy(2,10)); - - JLabel jlabel7 = new JLabel(); - jlabel7.setText("MB"); - jpanel1.add(jlabel7,cc.xy(6,8)); - - JLabel jlabel8 = new JLabel(); - jlabel8.setText("MB"); - jpanel1.add(jlabel8,cc.xy(6,10)); - - _initialHeapSizeField.setName("initialHeapSizeField"); - jpanel1.add(_initialHeapSizeField,cc.xy(4,8)); - - _maxHeapSizeField.setName("maxHeapSizeField"); - jpanel1.add(_maxHeapSizeField,cc.xy(4,10)); - - addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7,8 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13 }); - return jpanel1; - } - - public JPanel createPanel4() - { - JPanel jpanel1 = new JPanel(); - FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(55DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:60DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:3DLU:NONE,FILL:26PX:NONE,FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE"); - CellConstraints cc = new CellConstraints(); - jpanel1.setLayout(formlayout1); - - JLabel jlabel1 = new JLabel(); - jlabel1.setText("Splash file"); - jpanel1.add(jlabel1,cc.xy(2,4)); - - JLabel jlabel2 = new JLabel(); - jlabel2.setText("Wait for window"); - jpanel1.add(jlabel2,cc.xy(2,6)); - - JLabel jlabel3 = new JLabel(); - jlabel3.setText("Timeout [s]"); - jpanel1.add(jlabel3,cc.xy(2,8)); - - _timeoutErrCheck.setActionCommand("Signal error on timeout"); - _timeoutErrCheck.setName("timeoutErrCheck"); - _timeoutErrCheck.setText("Signal error on timeout"); - _timeoutErrCheck.setToolTipText("True signals an error on splash timeout, false closes the splash screen quietly."); - jpanel1.add(_timeoutErrCheck,cc.xywh(4,10,2,1)); - - _splashFileField.setName("splashFileField"); - _splashFileField.setToolTipText("Splash screen file in BMP format."); - jpanel1.add(_splashFileField,cc.xywh(4,4,2,1)); - - _timeoutField.setName("timeoutField"); - _timeoutField.setToolTipText("Number of seconds after which the splash screen must close. Splash timeout may cause an error depending on splashTimeoutErr property."); - jpanel1.add(_timeoutField,cc.xy(4,8)); - - _splashFileButton.setIcon(loadImage("images/open16.png")); - _splashFileButton.setName("splashFileButton"); - jpanel1.add(_splashFileButton,cc.xy(7,4)); - - _splashCheck.setActionCommand("Enable splash screen"); - _splashCheck.setName("splashCheck"); - _splashCheck.setText("Enable splash screen"); - jpanel1.add(_splashCheck,cc.xywh(4,2,2,1)); - - _waitForWindowCheck.setActionCommand("Close splash screen when an application window appears"); - _waitForWindowCheck.setName("waitForWindowCheck"); - _waitForWindowCheck.setText("Close splash screen when an application window appears"); - jpanel1.add(_waitForWindowCheck,cc.xywh(4,6,2,1)); - - addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7,8 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11 }); - return jpanel1; - } - - public JPanel createPanel5() - { - JPanel jpanel1 = new JPanel(); - FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(55DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:60DLU:NONE,FILL:7DLU:NONE,RIGHT:DEFAULT:NONE,FILL:3DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE"); - CellConstraints cc = new CellConstraints(); - jpanel1.setLayout(formlayout1); - - _versionInfoCheck.setActionCommand("Add version information"); - _versionInfoCheck.setName("versionInfoCheck"); - _versionInfoCheck.setText("Add version information"); - jpanel1.add(_versionInfoCheck,cc.xywh(4,2,5,1)); - - JLabel jlabel1 = new JLabel(); - jlabel1.setText("File version"); - jpanel1.add(jlabel1,cc.xy(2,4)); - - _fileVersionField.setName("fileVersionField"); - _fileVersionField.setToolTipText("Version number 'x.x.x.x'"); - jpanel1.add(_fileVersionField,cc.xy(4,4)); - - TitledSeparator titledseparator1 = new TitledSeparator(); - titledseparator1.setText("Additional information"); - jpanel1.add(titledseparator1,cc.xywh(2,10,7,1)); - - JLabel jlabel2 = new JLabel(); - jlabel2.setText("Product version"); - jpanel1.add(jlabel2,cc.xy(2,12)); - - _productVersionField.setName("productVersionField"); - _productVersionField.setToolTipText("Version number 'x.x.x.x'"); - jpanel1.add(_productVersionField,cc.xy(4,12)); - - JLabel jlabel3 = new JLabel(); - jlabel3.setText("File description"); - jpanel1.add(jlabel3,cc.xy(2,6)); - - _fileDescriptionField.setName("fileDescriptionField"); - _fileDescriptionField.setToolTipText("File description presented to the user."); - jpanel1.add(_fileDescriptionField,cc.xywh(4,6,5,1)); - - JLabel jlabel4 = new JLabel(); - jlabel4.setText("Copyright"); - jpanel1.add(jlabel4,cc.xy(2,8)); - - _copyrightField.setName("copyrightField"); - jpanel1.add(_copyrightField,cc.xywh(4,8,5,1)); - - JLabel jlabel5 = new JLabel(); - jlabel5.setText("Free form"); - jpanel1.add(jlabel5,cc.xy(6,4)); - - _txtFileVersionField.setName("txtFileVersionField"); - _txtFileVersionField.setToolTipText("Free form file version, for example '1.20.RC1'."); - jpanel1.add(_txtFileVersionField,cc.xy(8,4)); - - JLabel jlabel6 = new JLabel(); - jlabel6.setText("Free form"); - jpanel1.add(jlabel6,cc.xy(6,12)); - - _txtProductVersionField.setName("txtProductVersionField"); - _txtProductVersionField.setToolTipText("Free form product version, for example '1.20.RC1'."); - jpanel1.add(_txtProductVersionField,cc.xy(8,12)); - - JLabel jlabel7 = new JLabel(); - jlabel7.setText("Product name"); - jpanel1.add(jlabel7,cc.xy(2,14)); - - _productNameField.setName("productNameField"); - jpanel1.add(_productNameField,cc.xywh(4,14,5,1)); - - JLabel jlabel8 = new JLabel(); - jlabel8.setText("Original filename"); - jpanel1.add(jlabel8,cc.xy(2,20)); - - _originalFilenameField.setName("originalFilenameField"); - _originalFilenameField.setToolTipText("Original name of the file without the path. Allows to determine whether a file has been renamed by a user."); - jpanel1.add(_originalFilenameField,cc.xywh(4,20,5,1)); - - JLabel jlabel9 = new JLabel(); - jlabel9.setText("Internal name"); - jpanel1.add(jlabel9,cc.xy(2,18)); - - _internalNameField.setName("internalNameField"); - _internalNameField.setToolTipText("Internal name without extension, original filename or module name for example."); - jpanel1.add(_internalNameField,cc.xywh(4,18,5,1)); - - JLabel jlabel10 = new JLabel(); - jlabel10.setText("Company name"); - jpanel1.add(jlabel10,cc.xy(2,16)); - - _companyNameField.setName("companyNameField"); - jpanel1.add(_companyNameField,cc.xywh(4,16,5,1)); - - addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7,8,9 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21 }); - return jpanel1; - } - - /** - * Initializer - */ - protected void initializePanel() - { - setLayout(new BorderLayout()); - add(createPanel(), BorderLayout.CENTER); - } - - -} +package net.sf.launch4j.form; + +import com.jeta.forms.components.separator.TitledSeparator; +import com.jgoodies.forms.layout.CellConstraints; +import com.jgoodies.forms.layout.FormLayout; +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Dimension; +import javax.swing.Box; +import javax.swing.ImageIcon; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTabbedPane; +import javax.swing.JTextArea; + +public abstract class ConfigForm extends JPanel +{ + protected final JTextArea _logTextArea = new JTextArea(); + protected final TitledSeparator _logSeparator = new TitledSeparator(); + protected final JTabbedPane _tab = new JTabbedPane(); + + /** + * Default constructor + */ + public ConfigForm() + { + initializePanel(); + } + + /** + * Adds fill components to empty cells in the first row and first column of the grid. + * This ensures that the grid spacing will be the same as shown in the designer. + * @param cols an array of column indices in the first row where fill components should be added. + * @param rows an array of row indices in the first column where fill components should be added. + */ + void addFillComponents( Container panel, int[] cols, int[] rows ) + { + Dimension filler = new Dimension(10,10); + + boolean filled_cell_11 = false; + CellConstraints cc = new CellConstraints(); + if ( cols.length > 0 && rows.length > 0 ) + { + if ( cols[0] == 1 && rows[0] == 1 ) + { + /** add a rigid area */ + panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); + filled_cell_11 = true; + } + } + + for( int index = 0; index < cols.length; index++ ) + { + if ( cols[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); + } + + for( int index = 0; index < rows.length; index++ ) + { + if ( rows[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); + } + + } + + /** + * Helper method to load an image file from the CLASSPATH + * @param imageName the package and name of the file to load relative to the CLASSPATH + * @return an ImageIcon instance with the specified image file + * @throws IllegalArgumentException if the image resource cannot be loaded. + */ + public ImageIcon loadImage( String imageName ) + { + try + { + ClassLoader classloader = getClass().getClassLoader(); + java.net.URL url = classloader.getResource( imageName ); + if ( url != null ) + { + ImageIcon icon = new ImageIcon( url ); + return icon; + } + } + catch( Exception e ) + { + e.printStackTrace(); + } + throw new IllegalArgumentException( "Unable to load image: " + imageName ); + } + + public JPanel createPanel() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:7DLU:NONE","CENTER:3DLU:NONE,FILL:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:9DLU:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _logTextArea.setName("logTextArea"); + JScrollPane jscrollpane1 = new JScrollPane(); + jscrollpane1.setViewportView(_logTextArea); + jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane1,cc.xy(2,6)); + + _logSeparator.setName("logSeparator"); + _logSeparator.setText(Messages.getString("log")); + jpanel1.add(_logSeparator,cc.xy(2,4)); + + _tab.setName("tab"); + jpanel1.add(_tab,cc.xywh(1,2,3,1)); + + addFillComponents(jpanel1,new int[]{ 1,2,3 },new int[]{ 1,3,4,5,6,7 }); + return jpanel1; + } + + /** + * Initializer + */ + protected void initializePanel() + { + setLayout(new BorderLayout()); + add(createPanel(), BorderLayout.CENTER); + } + + +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/ConfigForm.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/ConfigForm.jfrm new file mode 100644 index 0000000000000000000000000000000000000000..2c6721e1409e994da84dc48ce1f15c201bb2b272 GIT binary patch literal 4477 zcmd^CeQXp(6ra26^@~P|6e=o+ScFR1Ls~v8DAJEBt);EB6k}t;+}+&WwtKtl>>PK* zNH8QIF$6=wL_-8cNig__#8?xfiQzw^1~8f^i6KacBx*F#7&JlOo87&S_S!3nfj_+D zZf|F2-n{pIzxSKBr++4Xi<6~cBcTj4L6xY%6P98LgEJ+;5=<9{5`?in8XloB_Upxq zgU_A+>`WCQX){$q2=T)5`l8FNLB=iB&=Vu8D$74Uw%1-?4eLG5*9TXUo|Z40ZNEm} zyk07b*)#OCvM&=QuEW)BRsflOFE>Zy-%^apXs6tah>C`PItV=r@n|(i=@Oeo| zCn*gXLKuloQlhb_=p=rw#^P}G3BydAn5NuMT9C!#+>RwxiK7HA6S+joFGw&DHxeum z<17|P8GOVtX_y5xn$*Mbrs06a!vUR%fECS-At?e7dQ^=e7nI>BPY6;sy=l8!+j|Du zw=_4lb#HC%>FsH62zGXNH@CG1H*W17utz3LaR#QIlxL@7OYgR&4=XF`8=SR|xcdpx zBxkO12l5@rF3g_=Fx5zyl0wy#ZdD&)k#5xzRrUSPbZvie5fIiX0bfzpwlJzYe7W)A zSbTWdk4KR&NC&^f#be?BvXsjoFF;%hU&$fK8k;)!TbT<#{s#(-ufPli`UTY^lt=Pu z;1%Tl0;CCno0ihmKClrT7Gw^_pH{4ts>hVB0hSgUIinD*GH!9cUi5LpWL&7st&t0> z4qRAAj(nA^HZKM;4=l~frg#&z;+v`IFZ=G(vvaqf_YrT9RB8r|1Zf!bsFPHPIA>Pe z&?0Gb!{agwRjG2gqK=daNTnJP@r+T8g4dn8U@^w;ynOtvKVR6l)=NB4P&=rWWS|+< za&tMaCz%K_zW4Nz`7;h*dI{2xmFB%7NNJp5`AK~4gQ3@9C}i*m=ou%g3+BPh#IMM- zC-q2+T;U{U=l*Xm&$!WWa3SVnvSj8M$zQyODBjUa*J|v=4aGb_G~IoVcn*Ct)_+dP z;^09X>dcfMGFU=PnN68k2(GZA=J?fWXa;v}e{|*5B|mwd7(m--bcxMtLCPaL^)SwK z&I>_m2UMXkCnt))8)*vmyh9>_!YD^PZ`barKG>M_5`U1CMyY1Tsf%AX@rEry?&-!Q z0ay}{yMRu?Ui~O)>xM{0l*d96Zb7_5!67gr@6f}5EvElKyr$`dzM-+PF`X*+zz2ry zs+{FiC?~6mCA-a*`Fy}?J{cYTU`yp}H!}~qnQ?ejDEsJNy*uwFGKlMzBY;yyl}>|V z%(uea&@>v-*Z_ya-5OL`$~3sxHnE6W3_}A!_+la7{q@nmet{x-+ASgzPPYmRGOx8z zZUKTTi{+?a?u)Zs>g*aDy!`q5zrErn$e|9#vffO=D8c3crE!5N>u|B18Jtj%yE)mz zzsnrv;r|BwSz+^hDzI_dN*93J2oxZ-U^1jOWtFKJU?|aPf(bH1Gh(h(1JW{Kv+YO< z95UF#P4AGwjMPdyQoQdH6WS#}-fps>fn+A-6jWQWYrWsSmoD6$HPb5x?wug#e%x+> ze2A)h6~Ys6{=lUU;=_lF+=pZ)-qy+6TgwdGx2Z_^;+)kv1YCmyYYP$((87mZf>c3_ znUqZpB7%qA0+xtW^9r<4A+u4aQy71AXF3J!?4ZXJ(A+ZK>Oz@C3IMM~sm=BSG!$Zy zKB_ahSq`Y%`<$a<4%EVZ|Hq@EB&uo}R9DePg+-$*EG(rDUuE5MIK23=d57Pa zd$vG%?Qs;$bQKCvfPEeq#~1rOz)G6fNGO}B;A;A0$9vJg&pr7XT6Kyv$;s>?*|#aO z`R)x3gE#A5{_?3~)mFXcbl;>biMZ}Zaf1f!zr9JD;Qsixru^3!6vPg0B+Y&%Mo(RT a=lIp8?{k8fq!chQ==LF-nUl{-r~d`(IIcth literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/EnvironmentVarsForm.java b/installer/lib/launch4j/src/net/sf/launch4j/form/EnvironmentVarsForm.java new file mode 100644 index 000000000..f2b79e6e7 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/form/EnvironmentVarsForm.java @@ -0,0 +1,127 @@ +package net.sf.launch4j.form; + +import com.jgoodies.forms.layout.CellConstraints; +import com.jgoodies.forms.layout.FormLayout; +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Dimension; +import javax.swing.Box; +import javax.swing.ImageIcon; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextArea; + +public abstract class EnvironmentVarsForm extends JPanel +{ + protected final JTextArea _envVarsTextArea = new JTextArea(); + protected final JLabel _envVarsLabel = new JLabel(); + + /** + * Default constructor + */ + public EnvironmentVarsForm() + { + initializePanel(); + } + + /** + * Adds fill components to empty cells in the first row and first column of the grid. + * This ensures that the grid spacing will be the same as shown in the designer. + * @param cols an array of column indices in the first row where fill components should be added. + * @param rows an array of row indices in the first column where fill components should be added. + */ + void addFillComponents( Container panel, int[] cols, int[] rows ) + { + Dimension filler = new Dimension(10,10); + + boolean filled_cell_11 = false; + CellConstraints cc = new CellConstraints(); + if ( cols.length > 0 && rows.length > 0 ) + { + if ( cols[0] == 1 && rows[0] == 1 ) + { + /** add a rigid area */ + panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); + filled_cell_11 = true; + } + } + + for( int index = 0; index < cols.length; index++ ) + { + if ( cols[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); + } + + for( int index = 0; index < rows.length; index++ ) + { + if ( rows[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); + } + + } + + /** + * Helper method to load an image file from the CLASSPATH + * @param imageName the package and name of the file to load relative to the CLASSPATH + * @return an ImageIcon instance with the specified image file + * @throws IllegalArgumentException if the image resource cannot be loaded. + */ + public ImageIcon loadImage( String imageName ) + { + try + { + ClassLoader classloader = getClass().getClassLoader(); + java.net.URL url = classloader.getResource( imageName ); + if ( url != null ) + { + ImageIcon icon = new ImageIcon( url ); + return icon; + } + } + catch( Exception e ) + { + e.printStackTrace(); + } + throw new IllegalArgumentException( "Unable to load image: " + imageName ); + } + + public JPanel createPanel() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(65DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:7DLU:NONE","CENTER:9DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:9DLU:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _envVarsTextArea.setName("envVarsTextArea"); + JScrollPane jscrollpane1 = new JScrollPane(); + jscrollpane1.setViewportView(_envVarsTextArea); + jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane1,cc.xy(4,2)); + + _envVarsLabel.setName("envVarsLabel"); + _envVarsLabel.setText(Messages.getString("setVariables")); + jpanel1.add(_envVarsLabel,new CellConstraints(2,2,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); + + addFillComponents(jpanel1,new int[]{ 1,2,3,4,5 },new int[]{ 1,2,3 }); + return jpanel1; + } + + /** + * Initializer + */ + protected void initializePanel() + { + setLayout(new BorderLayout()); + add(createPanel(), BorderLayout.CENTER); + } + + +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/EnvironmentVarsForm.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/EnvironmentVarsForm.jfrm new file mode 100644 index 0000000000000000000000000000000000000000..6e89ec4d19a42bedb270bc6690fa0facfe470e99 GIT binary patch literal 3813 zcmds4eQZ-z6u<4-eKBRo08#l6L0A~CNEzUUAN%SkbQ^AE5C;jb?QQ$E*Y}?H-L8)q ziG~C;hF~0+Xh^^>5)J;LG0wzjV))Of0gNU}Vh9=|i5mUG7&Jl8x$nKU>$(;G;SZN| zeZ4*B+;e`v-#Pd8?61UcGO{MFXQWZeWhtq%j47F1XH?424ArRq#%%8_K26&THbe zYt{Vfp-GIz$hui`=+ZNWu0b`9@3D7|9K727RH9Ia2euB*9)qfCm#&$d$%@8JCsO99 zl3aV{&zK#lsi-2iG7l#;37V9%Du03;Bz3US+);U4mgF3l!kS6Bd3ik8R`tW{RbJu? zlj@kxxt<9VpGuQFO#DnqrQyAb>xN|@OvQf|C#y=*PGuFrqaZF{xnRrB$v_~jXJ{bB zXeyA?*_dg_aT-wNtQJpi91WN(9?&Qcn90H#iXzaXjVlZo1Q3U1W}+yh(Im@ovhF7B zw{-RNM|%d_9_)_nYU>~9?`a8zBayc5o>0fGNVKhYaA5bE2c-4QEv0sx$ii}S-f=M8 zyDi$**Rf~KrdC*NcVaXbg$?G7XV_(GNMNT)u#@GADn%4+j3y$A$s3x7_HEz)>x)^(XJEdx z@$$?Maal{qEHRaRFDLhw(Mk-`G^Oo5(GE}0w@8CR&=8W&rSUTh~PzA7}C7YkVok>(X3-X@#rKH2cseD~?Oh5Ij55pRgptGb*B z$#ED%VN%D_jGAd(O<2Ywj|vnTa<%Y|Ju-&WDKPow$6p$#!n3lmW8o z?t8-X;y05+=cNJ<9^_%Ak@EwBK4J(o1+Y+D`9WHgSC_8p%#Hogk1wzO#j_)du`%ds zTi2Y_CJtzEv~-RMP8LNKu2KgRiQ@+m3iiBRFoN??ta#pBbg1!IFzY4$5UEbes*#pm z{vyO1H#xaGf-V7Y35Z<+!f^;^S^Eg7OR`i<(9MZ=Bs2m+#3#%!V9(Hhp4Lbe~FC(%o5Kpt89L*;r#DfjuB$K*zF5wl{`%zKzd;i{?lzGD zhgzKp$g7=j765}ADq%Dv_C;$~ItM3*uYCUgA1}E8Inu#ewi-EDC3q*m(YVwQeYna- z1`Wz;w+KCaT3fpX~KoXj7D%xf_M98}e&JnS2&$RJejhieLU&0h6d!aH8=Lsjbt%Q3Il%}8(#rG@n zR`bwlrTBPjDbLUN3bfzUbi-n9tT%m0MOC4fD$X04Owu?vrJZ;Yb=xVv>fy!5UtM^v zOgrs$Bx;Be9pa?H(Uss5l_|h>_~c}HNi*lK6}?PJ;J^^()7kdjLgI)eirFesd8p8` zMWbT@C~n#RWON|1dqu7L3bjt-6+i*~+*d-MeN8j72F`h@Pv%Uq&h);U{O9~*ub^6N zb$GIj%pVcQDs(&Cp$1~3ptANCzT9)F(QH 0 && rows.length > 0 ) + { + if ( cols[0] == 1 && rows[0] == 1 ) + { + /** add a rigid area */ + panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); + filled_cell_11 = true; + } + } + + for( int index = 0; index < cols.length; index++ ) + { + if ( cols[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); + } + + for( int index = 0; index < rows.length; index++ ) + { + if ( rows[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); + } + + } + + /** + * Helper method to load an image file from the CLASSPATH + * @param imageName the package and name of the file to load relative to the CLASSPATH + * @return an ImageIcon instance with the specified image file + * @throws IllegalArgumentException if the image resource cannot be loaded. + */ + public ImageIcon loadImage( String imageName ) + { + try + { + ClassLoader classloader = getClass().getClassLoader(); + java.net.URL url = classloader.getResource( imageName ); + if ( url != null ) + { + ImageIcon icon = new ImageIcon( url ); + return icon; + } + } + catch( Exception e ) + { + e.printStackTrace(); + } + throw new IllegalArgumentException( "Unable to load image: " + imageName ); + } + + public JPanel createPanel() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(65DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:DEFAULT:NONE,FILL:7DLU:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:GROW(1.0),FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,FILL:DEFAULT:GROW(0.2),CENTER:3DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:9DLU:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _headerTypeLabel.setName("headerTypeLabel"); + _headerTypeLabel.setText(Messages.getString("headerType")); + jpanel1.add(_headerTypeLabel,cc.xy(2,2)); + + _guiHeaderRadio.setActionCommand("GUI"); + _guiHeaderRadio.setName("guiHeaderRadio"); + _guiHeaderRadio.setText(Messages.getString("gui")); + _headerButtonGroup.add(_guiHeaderRadio); + jpanel1.add(_guiHeaderRadio,cc.xy(4,2)); + + _consoleHeaderRadio.setActionCommand("Console"); + _consoleHeaderRadio.setName("consoleHeaderRadio"); + _consoleHeaderRadio.setText(Messages.getString("console")); + _headerButtonGroup.add(_consoleHeaderRadio); + jpanel1.add(_consoleHeaderRadio,cc.xy(6,2)); + + _headerObjectsTextArea.setName("headerObjectsTextArea"); + JScrollPane jscrollpane1 = new JScrollPane(); + jscrollpane1.setViewportView(_headerObjectsTextArea); + jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane1,cc.xywh(4,6,4,1)); + + _libsTextArea.setName("libsTextArea"); + JScrollPane jscrollpane2 = new JScrollPane(); + jscrollpane2.setViewportView(_libsTextArea); + jscrollpane2.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane2.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane2,cc.xywh(4,8,4,1)); + + _headerObjectsCheck.setActionCommand("Object files"); + _headerObjectsCheck.setName("headerObjectsCheck"); + _headerObjectsCheck.setText(Messages.getString("objectFiles")); + jpanel1.add(_headerObjectsCheck,new CellConstraints(2,6,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); + + _libsCheck.setActionCommand("w32api"); + _libsCheck.setName("libsCheck"); + _libsCheck.setText(Messages.getString("libs")); + jpanel1.add(_libsCheck,new CellConstraints(2,8,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); + + _linkerOptionsSeparator.setName("linkerOptionsSeparator"); + _linkerOptionsSeparator.setText(Messages.getString("linkerOptions")); + jpanel1.add(_linkerOptionsSeparator,cc.xywh(2,4,6,1)); + + addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7,8 },new int[]{ 1,2,3,4,5,6,7,8,9 }); + return jpanel1; + } + + /** + * Initializer + */ + protected void initializePanel() + { + setLayout(new BorderLayout()); + add(createPanel(), BorderLayout.CENTER); + } + + +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/HeaderForm.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/HeaderForm.jfrm new file mode 100644 index 0000000000000000000000000000000000000000..a7cbed1445d611a5a463bc1172fbe4832e2550f7 GIT binary patch literal 7298 zcmd^EYm5_B6u#|lmt9zSKSbrBF0dP53M`=R8kAkOOR)>MTOLA8n6|g=>`rIKJGZo` z;DZDtiWnD6G$i1QDB=%|5fh`v@C%~`HJT`iA!tyH8vQ|xnxN<0nd!9M-L{|+BAc|G zxpVKi_nhxL-#v5p$WO#)GSV2;Q&KPGvJ}@@%9Kp5Gb*KMifUY!0?@Wvj`qn3`pe0a zYw!EygV*Z`$r_nzLWmcJH4lXn5^A2X$*>rW%W0M0L$;ARm}pe5yjhmy43~nMNx6Ayb8}18H_umj zNp+CaM0C#eRFG7wG|q#>$CN}8eyg}{WDN{c{$G}p8AZ!Zq!odq050dbK+DHTz@OAp z)SqB9;m_!-&otyH^{aAPizXNL`b`$~Yn1!VxZ8%L@Gqxwj56ec)Ej3hP8urfcDTJ` zWw@ie<(6fkH7zSwt?Za%H!SN2EL{@{7qnH>sX1pU5DbM{96O!etJXEnlNK~N6O`&V zUz(Temz$K6y~5&6xe2<1oy)^5T}#(DE?xwUt@d0^)}lq{A!ZSt7FjD;uG^u&0kN>c zaX^^yf-q^Ws8UGL`e-bqn7qEJ=k67o9=QQh$4|RVKQ?jGCso87Aj4H%js@f>sAZ7U@g$>WQdeVHm0is%fo7iM2PXmE^N zP^5MYZCZ=9i4k_Rw(R=y^oa9w_Dshh4He-$BZY&v6Up0u>g;%H@SJihK-ism_j#WD z;%Lta$py!Q;LJ2KKJcuX7$U@QNeDPM_$H9Iu6AA3nPdCyZ=as^qvwt=+D4;IRswKR z8{48qv8TPoaWW~aaFyCIkvQH6Q!wYqoR*6g&x@0`kKWUq_7Y!!)Wl`gNXibVA>xgi zoLn2iA%2j5znH}@2KJy1w{9eLah8Y(4shb#7}y9##2v11zNPw!OLw$gWuoyv?XDi`c!*3MK2*!Xw*``_#yKF*0uqZ1jMM}tKl*EiegcL5Q^aelQ5q&NP7h;&nsr(Kt|xh_Kzs^t1ut9K7nu zOB!n_qPr7J)qL-+##f#{K1eWwRxqLJ8DqsTZ#cyFDv(Pk1VLp|upe+z)ww2!E1W4- zILivJXedK6>@(K}4zDHrT42dRshq%W3$1B#x>#na3sMBMUkRVF-x5wn0zy`4C15Yj zvl_s*^351$$mbc}TLijrM)lxeU{q~G6j-UN6z}s`g||Tg;R+YRl2pJET~HchNp0J^ zQaLczj%md_K)pdO;P1ug&4dEI2}2FBlu=p0mq(3zL_;~T@!nBLg@br|#UaVb6f??n z6{=B{h8esqn`;%CF?7b)4XpdxbYQ%!eKegt`1$@neulblgH!hzAe?n3)CFpr%uJBy z1?6_|9x*TWcGP*>(Y2>PeB;-r22tmSjSRFBeA~tff2tuczJg>IwxFp)A+_ACn;#Tu z1^PU}+Qe2xdaiH! zbOVQQ=GSuO>=XL4soBLPr2No1=Gd><=9b`*}fR9ODI3W}aU%1tcrHWx-n zy8<=iWO`A(l{>)fWJ(Ncx*-Bx{U3&mSo>kAJ#Yf3#k4E0xcrpW){@2JpW*}i!qam6e~&o%>7l&;<=+n 0 && rows.length > 0 ) + { + if ( cols[0] == 1 && rows[0] == 1 ) + { + /** add a rigid area */ + panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); + filled_cell_11 = true; + } + } + + for( int index = 0; index < cols.length; index++ ) + { + if ( cols[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); + } + + for( int index = 0; index < rows.length; index++ ) + { + if ( rows[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); + } + + } + + /** + * Helper method to load an image file from the CLASSPATH + * @param imageName the package and name of the file to load relative to the CLASSPATH + * @return an ImageIcon instance with the specified image file + * @throws IllegalArgumentException if the image resource cannot be loaded. + */ + public ImageIcon loadImage( String imageName ) + { + try + { + ClassLoader classloader = getClass().getClassLoader(); + java.net.URL url = classloader.getResource( imageName ); + if ( url != null ) + { + ImageIcon icon = new ImageIcon( url ); + return icon; + } + } + catch( Exception e ) + { + e.printStackTrace(); + } + throw new IllegalArgumentException( "Unable to load image: " + imageName ); + } + + public JPanel createPanel() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(65DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:60DLU:NONE,FILL:3DLU:NONE,FILL:DEFAULT:NONE,FILL:7DLU:NONE,FILL:60DLU:NONE,FILL:3DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,FILL:50DLU:GROW(1.0),CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _jrePathLabel.setName("jrePathLabel"); + _jrePathLabel.setText(Messages.getString("jrePath")); + jpanel1.add(_jrePathLabel,cc.xy(2,2)); + + _jreMinLabel.setName("jreMinLabel"); + _jreMinLabel.setText(Messages.getString("jreMin")); + jpanel1.add(_jreMinLabel,cc.xy(2,4)); + + _jreMaxLabel.setName("jreMaxLabel"); + _jreMaxLabel.setText(Messages.getString("jreMax")); + jpanel1.add(_jreMaxLabel,cc.xy(2,6)); + + _jvmOptionsTextLabel.setName("jvmOptionsTextLabel"); + _jvmOptionsTextLabel.setText(Messages.getString("jvmOptions")); + jpanel1.add(_jvmOptionsTextLabel,new CellConstraints(2,12,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); + + _jrePathField.setName("jrePathField"); + _jrePathField.setToolTipText(Messages.getString("jrePathTip")); + jpanel1.add(_jrePathField,cc.xywh(4,2,7,1)); + + _jreMinField.setName("jreMinField"); + jpanel1.add(_jreMinField,cc.xy(4,4)); + + _jreMaxField.setName("jreMaxField"); + jpanel1.add(_jreMaxField,cc.xy(4,6)); + + _jvmOptionsTextArea.setName("jvmOptionsTextArea"); + _jvmOptionsTextArea.setToolTipText(Messages.getString("jvmOptionsTip")); + JScrollPane jscrollpane1 = new JScrollPane(); + jscrollpane1.setViewportView(_jvmOptionsTextArea); + jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane1,cc.xywh(4,12,7,1)); + + _initialHeapSizeLabel.setName("initialHeapSizeLabel"); + _initialHeapSizeLabel.setText(Messages.getString("initialHeapSize")); + jpanel1.add(_initialHeapSizeLabel,cc.xy(2,8)); + + _maxHeapSizeLabel.setName("maxHeapSizeLabel"); + _maxHeapSizeLabel.setText(Messages.getString("maxHeapSize")); + jpanel1.add(_maxHeapSizeLabel,cc.xy(2,10)); + + JLabel jlabel1 = new JLabel(); + jlabel1.setText("MB"); + jpanel1.add(jlabel1,cc.xy(6,8)); + + JLabel jlabel2 = new JLabel(); + jlabel2.setText("MB"); + jpanel1.add(jlabel2,cc.xy(6,10)); + + _initialHeapSizeField.setName("initialHeapSizeField"); + jpanel1.add(_initialHeapSizeField,cc.xy(4,8)); + + _maxHeapSizeField.setName("maxHeapSizeField"); + jpanel1.add(_maxHeapSizeField,cc.xy(4,10)); + + jpanel1.add(createPanel1(),cc.xywh(2,14,9,1)); + _maxHeapPercentField.setName("maxHeapPercentField"); + jpanel1.add(_maxHeapPercentField,cc.xy(8,10)); + + _initialHeapPercentField.setName("initialHeapPercentField"); + jpanel1.add(_initialHeapPercentField,cc.xy(8,8)); + + _jdkPreferenceCombo.setName("jdkPreferenceCombo"); + jpanel1.add(_jdkPreferenceCombo,cc.xywh(8,4,3,1)); + + JLabel jlabel3 = new JLabel(); + jlabel3.setText(Messages.getString("freeMemory")); + jpanel1.add(jlabel3,cc.xy(10,8)); + + JLabel jlabel4 = new JLabel(); + jlabel4.setText(Messages.getString("freeMemory")); + jpanel1.add(jlabel4,cc.xy(10,10)); + + addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7,8,9,10,11 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 }); + return jpanel1; + } + + public JPanel createPanel1() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("RIGHT:MAX(65DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:3DLU:NONE,FILL:DEFAULT:NONE,FILL:3DLU:NONE,FILL:DEFAULT:NONE","CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _varCombo.setName("varCombo"); + jpanel1.add(_varCombo,cc.xy(3,1)); + + _propertyButton.setActionCommand("Add"); + _propertyButton.setIcon(loadImage("images/edit_add16.png")); + _propertyButton.setName("propertyButton"); + _propertyButton.setText(Messages.getString("property")); + _propertyButton.setToolTipText(Messages.getString("propertyTip")); + jpanel1.add(_propertyButton,cc.xy(5,1)); + + _optionButton.setActionCommand("Add"); + _optionButton.setIcon(loadImage("images/edit_add16.png")); + _optionButton.setName("optionButton"); + _optionButton.setText(Messages.getString("option")); + _optionButton.setToolTipText(Messages.getString("optionTip")); + jpanel1.add(_optionButton,cc.xy(7,1)); + + _envPropertyButton.setActionCommand("Add"); + _envPropertyButton.setIcon(loadImage("images/edit_add16.png")); + _envPropertyButton.setName("envPropertyButton"); + _envPropertyButton.setText(Messages.getString("property")); + _envPropertyButton.setToolTipText(Messages.getString("propertyTip")); + jpanel1.add(_envPropertyButton,cc.xy(5,3)); + + JLabel jlabel1 = new JLabel(); + jlabel1.setText(Messages.getString("varsAndRegistry")); + jpanel1.add(jlabel1,cc.xy(1,1)); + + JLabel jlabel2 = new JLabel(); + jlabel2.setIcon(loadImage("images/asterix.gif")); + jlabel2.setText(Messages.getString("envVar")); + jpanel1.add(jlabel2,cc.xy(1,3)); + + _envOptionButton.setActionCommand("Add"); + _envOptionButton.setIcon(loadImage("images/edit_add16.png")); + _envOptionButton.setName("envOptionButton"); + _envOptionButton.setText(Messages.getString("option")); + _envOptionButton.setToolTipText(Messages.getString("optionTip")); + jpanel1.add(_envOptionButton,cc.xy(7,3)); + + _envVarField.setName("envVarField"); + jpanel1.add(_envVarField,cc.xy(3,3)); + + addFillComponents(jpanel1,new int[]{ 2,4,6 },new int[]{ 2 }); + return jpanel1; + } + + /** + * Initializer + */ + protected void initializePanel() + { + setLayout(new BorderLayout()); + add(createPanel(), BorderLayout.CENTER); + } + + +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/JreForm.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/JreForm.jfrm new file mode 100644 index 0000000000000000000000000000000000000000..1e61237e0f38514d3a1d4950a36b642caee3ad93 GIT binary patch literal 17006 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 0 && rows.length > 0 ) + { + if ( cols[0] == 1 && rows[0] == 1 ) + { + /** add a rigid area */ + panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); + filled_cell_11 = true; + } + } + + for( int index = 0; index < cols.length; index++ ) + { + if ( cols[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); + } + + for( int index = 0; index < rows.length; index++ ) + { + if ( rows[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); + } + + } + + /** + * Helper method to load an image file from the CLASSPATH + * @param imageName the package and name of the file to load relative to the CLASSPATH + * @return an ImageIcon instance with the specified image file + * @throws IllegalArgumentException if the image resource cannot be loaded. + */ + public ImageIcon loadImage( String imageName ) + { + try + { + ClassLoader classloader = getClass().getClassLoader(); + java.net.URL url = classloader.getResource( imageName ); + if ( url != null ) + { + ImageIcon icon = new ImageIcon( url ); + return icon; + } + } + catch( Exception e ) + { + e.printStackTrace(); + } + throw new IllegalArgumentException( "Unable to load image: " + imageName ); + } + + public JPanel createPanel() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(65DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:3DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:3DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:3DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:3DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:9DLU:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _startupErrTextArea.setName("startupErrTextArea"); + JScrollPane jscrollpane1 = new JScrollPane(); + jscrollpane1.setViewportView(_startupErrTextArea); + jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane1,cc.xy(4,4)); + + _bundledJreErrTextArea.setName("bundledJreErrTextArea"); + JScrollPane jscrollpane2 = new JScrollPane(); + jscrollpane2.setViewportView(_bundledJreErrTextArea); + jscrollpane2.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane2.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane2,cc.xy(4,6)); + + _jreVersionErrTextArea.setName("jreVersionErrTextArea"); + _jreVersionErrTextArea.setToolTipText(Messages.getString("jreVersionErrTip")); + JScrollPane jscrollpane3 = new JScrollPane(); + jscrollpane3.setViewportView(_jreVersionErrTextArea); + jscrollpane3.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane3.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane3,cc.xy(4,8)); + + _launcherErrTextArea.setName("launcherErrTextArea"); + JScrollPane jscrollpane4 = new JScrollPane(); + jscrollpane4.setViewportView(_launcherErrTextArea); + jscrollpane4.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane4.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane4,cc.xy(4,10)); + + JLabel jlabel1 = new JLabel(); + jlabel1.setText(Messages.getString("startupErr")); + jpanel1.add(jlabel1,new CellConstraints(2,4,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); + + JLabel jlabel2 = new JLabel(); + jlabel2.setText(Messages.getString("bundledJreErr")); + jpanel1.add(jlabel2,new CellConstraints(2,6,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); + + JLabel jlabel3 = new JLabel(); + jlabel3.setText(Messages.getString("jreVersionErr")); + jpanel1.add(jlabel3,new CellConstraints(2,8,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); + + JLabel jlabel4 = new JLabel(); + jlabel4.setText(Messages.getString("launcherErr")); + jpanel1.add(jlabel4,new CellConstraints(2,10,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); + + _messagesCheck.setActionCommand("Add version information"); + _messagesCheck.setName("messagesCheck"); + _messagesCheck.setText(Messages.getString("addMessages")); + jpanel1.add(_messagesCheck,cc.xy(4,2)); + + JLabel jlabel5 = new JLabel(); + jlabel5.setText(Messages.getString("instanceAlreadyExistsMsg")); + jpanel1.add(jlabel5,new CellConstraints(2,12,1,1,CellConstraints.DEFAULT,CellConstraints.TOP)); + + _instanceAlreadyExistsMsgTextArea.setName("instanceAlreadyExistsMsgTextArea"); + _instanceAlreadyExistsMsgTextArea.setToolTipText(Messages.getString("instanceAlreadyExistsMsgTip")); + JScrollPane jscrollpane5 = new JScrollPane(); + jscrollpane5.setViewportView(_instanceAlreadyExistsMsgTextArea); + jscrollpane5.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + jscrollpane5.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + jpanel1.add(jscrollpane5,cc.xy(4,12)); + + addFillComponents(jpanel1,new int[]{ 1,2,3,4,5 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13 }); + return jpanel1; + } + + /** + * Initializer + */ + protected void initializePanel() + { + setLayout(new BorderLayout()); + add(createPanel(), BorderLayout.CENTER); + } + + +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/MessagesForm.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/MessagesForm.jfrm new file mode 100644 index 0000000000000000000000000000000000000000..e8044dfd7c08649042cfd360307ebd9eac7cad5f GIT binary patch literal 9184 zcmeHNdu$X%7@xiN`k+;T@(>?Tum}}g)KVYC2z^~CUJKHr7%7Q+w{yKMd%NrG9CyS> zG$g(V!B|S7ApucIG)UAKF)^AL{__>UXrd;DpfQrD(LanqX80C1vO~qn2raHZJe(S03Abrsp9wt%n3tx0N1)>Uy_n*qkYv!EJY>=q@e1 zSc&QU0kWOc!$en%DO(j;iF3K%uqn4sZEfqQ`uh1Q52@}a zH9?beGult8bsFaV#LKkN2>e!Y(@I!qrp&(tCku1L9*t?jkHT>&&4stTob>c`jI1`J zbfk~b(Gi=4Msy`+gd)qwM8lwb#15zX5D+5+)V9IXHm|w= z@ddE7+{M~Zc71hG#c+}R=UYc3V@tlh$?z_$Z({GO5t zRD1@o=EjN?SckY`s0vfF0qfypegSv~K}=g-(;MhSfjOCp`X^*Nt{J29ngC7kPDT~b zR?cD0j%@3gX;H>Cnq18%+jpH@K_)&)#{~~6G6zPQmNxNf#f}Upmbdnc_m0iF|3nq> z_{bF9R8*f5g2>rV>Uo4wJ7Vf;!dkgXSfMdq2frBcYB{;q4lz^Lm7q=o3?i#NtkJk- zGQLq$c_cNNu7EaOrm2IDA2qXwKi&7+j~*i3N4#4VJw_82gqE5J#qf~L({FG(O4;<& z2VVH~k;iTa9ta~24?`47JN-DrLzTp7{K9 z!=FocH#@==##4rN*~~kL>={3GW(G2&TuYoa1a1q8NvyaR#H%KjKnFY$0+JTaWf_xn zo4T12@a=D&S@gYhcOY+$I(3@?jxm{=sX3V)(6~-r1!ay6F%-;sxj+S`B+(jk(FdGdD$Z_J?d^acQ{(%LNuO0nYN~;9?A>mCTh~DT-BRUEJAwv{=Y;)a+&&%=ab_X=2EQe$r z>1pn)V4Ax!rdf&ns|rp7ns73=SR7mJ1SMpjCjqI@x5*KtKmw^jm*WQ+>cy9!%1}HgP!!*Qgc^wvtlIMuf z!n@||d2ZIRp>8|_@(K&Wk)&{1eyM~3k@N3T{hlvdUuCM&fz&UkTV@pPk zFX^tqOYRaOCA)}RkOaYX;sWC`f?p7orAIvhIdL zozu!s$ubDKAGQWL5ICnRc20{1w^@o2qMbTa%hheY3Ai<|2kcQaMbYGV&~^S~O^%b; z$#_wc@8o*1F3azT(e4%3y8d}#0TyUsG$afCIDeRvYl^}Kst-srDGzlQ78Pig3lZ>e z-oMHheI+Sf^p&u%DpeIL`r?Qg1&ORA!%1^aoj!HD*T*y!FS&}OplTep!VPyRc+G?b zHqR21oZrgp{{~(J4tDr&8rS7`+PPS@V-{Xx$^!~#TH;XOYvJFI-}5XUc^!aBF-Dp; ziHjpR!^7?7+Ta)*l~+9V@xA+}+O0ZdL2);9Sqwoq7rg0(8zRg4FE$f+>6m-noqhj| m|4-4!%$PMq`S?p`Uq0~d@~<+CRb;V%3-FEPBD^?NBJnprfARJJ literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/SingleInstanceForm.java b/installer/lib/launch4j/src/net/sf/launch4j/form/SingleInstanceForm.java new file mode 100644 index 000000000..2bfe724a6 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/form/SingleInstanceForm.java @@ -0,0 +1,141 @@ +package net.sf.launch4j.form; + +import com.jgoodies.forms.layout.CellConstraints; +import com.jgoodies.forms.layout.FormLayout; +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Dimension; +import javax.swing.Box; +import javax.swing.ImageIcon; +import javax.swing.JCheckBox; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public abstract class SingleInstanceForm extends JPanel +{ + protected final JLabel _splashFileLabel = new JLabel(); + protected final JTextField _mutexNameField = new JTextField(); + protected final JCheckBox _singleInstanceCheck = new JCheckBox(); + protected final JTextField _windowTitleField = new JTextField(); + protected final JLabel _splashFileLabel1 = new JLabel(); + + /** + * Default constructor + */ + public SingleInstanceForm() + { + initializePanel(); + } + + /** + * Adds fill components to empty cells in the first row and first column of the grid. + * This ensures that the grid spacing will be the same as shown in the designer. + * @param cols an array of column indices in the first row where fill components should be added. + * @param rows an array of row indices in the first column where fill components should be added. + */ + void addFillComponents( Container panel, int[] cols, int[] rows ) + { + Dimension filler = new Dimension(10,10); + + boolean filled_cell_11 = false; + CellConstraints cc = new CellConstraints(); + if ( cols.length > 0 && rows.length > 0 ) + { + if ( cols[0] == 1 && rows[0] == 1 ) + { + /** add a rigid area */ + panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); + filled_cell_11 = true; + } + } + + for( int index = 0; index < cols.length; index++ ) + { + if ( cols[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); + } + + for( int index = 0; index < rows.length; index++ ) + { + if ( rows[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); + } + + } + + /** + * Helper method to load an image file from the CLASSPATH + * @param imageName the package and name of the file to load relative to the CLASSPATH + * @return an ImageIcon instance with the specified image file + * @throws IllegalArgumentException if the image resource cannot be loaded. + */ + public ImageIcon loadImage( String imageName ) + { + try + { + ClassLoader classloader = getClass().getClassLoader(); + java.net.URL url = classloader.getResource( imageName ); + if ( url != null ) + { + ImageIcon icon = new ImageIcon( url ); + return icon; + } + } + catch( Exception e ) + { + e.printStackTrace(); + } + throw new IllegalArgumentException( "Unable to load image: " + imageName ); + } + + public JPanel createPanel() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(65DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:60DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _splashFileLabel.setIcon(loadImage("images/asterix.gif")); + _splashFileLabel.setName("splashFileLabel"); + _splashFileLabel.setText(Messages.getString("mutexName")); + jpanel1.add(_splashFileLabel,cc.xy(2,4)); + + _mutexNameField.setName("mutexNameField"); + _mutexNameField.setToolTipText(Messages.getString("mutexNameTip")); + jpanel1.add(_mutexNameField,cc.xywh(4,4,2,1)); + + _singleInstanceCheck.setActionCommand("Enable splash screen"); + _singleInstanceCheck.setName("singleInstanceCheck"); + _singleInstanceCheck.setText(Messages.getString("enableSingleInstance")); + jpanel1.add(_singleInstanceCheck,cc.xywh(4,2,2,1)); + + _windowTitleField.setName("windowTitleField"); + _windowTitleField.setToolTipText(Messages.getString("windowTitleTip")); + jpanel1.add(_windowTitleField,cc.xywh(4,6,2,1)); + + _splashFileLabel1.setName("splashFileLabel"); + _splashFileLabel1.setText(Messages.getString("windowTitle")); + jpanel1.add(_splashFileLabel1,cc.xy(2,6)); + + addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6 },new int[]{ 1,2,3,4,5,6,7 }); + return jpanel1; + } + + /** + * Initializer + */ + protected void initializePanel() + { + setLayout(new BorderLayout()); + add(createPanel(), BorderLayout.CENTER); + } + + +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/SingleInstanceForm.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/SingleInstanceForm.jfrm new file mode 100644 index 0000000000000000000000000000000000000000..c9d7ce28daa10a9838258f330f367e01d6f6c74c GIT binary patch literal 5246 zcmd^DduUr#7(YpqzE-<#?KbBFt9EX6^>$m2vi>CpogeGSli>`w{&lI)yx>9h12fBkYP zyR?52c^TxPtLo69DY~YDH8$mhw*Iard!n-|xOGQ3QZN_z*EZ$EF|s=t3Wrd4+7s#rP(vForoM`YEaSwX7eWQIl*b~EJ}U(A zyD~qF@Et;_IFoasGziGYMI&AqPF_atohJCApr$GGc154y5QXhxCZ&#cw7DPYbSD9$nA)K^YHWWTB)$F*Zj;lTky;3P~x! z$h^D}R~>g(0jNGkvy73-1|nYKRf-v#MOh)buBS|wHU(H-fGbbF>#TacHCKU-I z8RbF4h<7+R3{3b4v1zl;ufM=r9l{y&i);=A0@+Nt2Obz%1#E#`%;pdtoz}@(==r+O z#>YP#sH}B76R`N@0%AJvqkb*UzH9Ix(rrXTu4Yx1KRhvNZQGE}E!0?~c{_zZz@-ZQ z#VMv1YFt~w`S4RbWg%%S8kO_L*%j`A3}%`Gr6hb&fe7Hcev`NS-q$35%qsKxgU`1SDY zfr8sMxnj1=K}>s|m=2`xoL0=7ki%mZKi7lYq5|YPQZzQ!u4TF7@_^gPC#C{dikdet zvZ#ToVpOJuofsMg?cDyp?+L3hVB05IWTgoYi;q5>yBBXwPzf4x=6>&=)!sfrA5 z2FAB|B9~rwIG{tV9L>Z2pCxS#l!UmJ;RgUuTa?ky$oz)9g`1eKw=kBN(un2Ux@Yuj zeo@Bp(&9X}CT7m#s(e(CgPXq9ILxIl*@QzV%Ehe}P77RYvs)0|rU;k+k11PFQ5mT( z>IZWdoo+*l4@opLL%sFcUMI7-nZZ3Dnj^VgG)!o+))a}eE;V_L-C)eHcRStPzR95r zUw-i0OHL1y*Wym-8JH#bm&qdd+@o`4Z|pI9bJO+)Mlrz-03f`7S_sXwu4@Jp`a}j7 zu@l|zCH_49=qres)n0hg2B{t94Kv(zp*PzW9fj*m+Y4XqJX&Km%FgAfER7}|2Q*8e zGlu8C9%ps1srb5Ic-O}NdAbcPtq)Q*{?_HUkNvdv`#j5L$Pn-sUwPN6J~QviX8#6} CjYs(a literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/SplashForm.java b/installer/lib/launch4j/src/net/sf/launch4j/form/SplashForm.java new file mode 100644 index 000000000..22a0ed8a3 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/form/SplashForm.java @@ -0,0 +1,166 @@ +package net.sf.launch4j.form; + +import com.jgoodies.forms.layout.CellConstraints; +import com.jgoodies.forms.layout.FormLayout; +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Dimension; +import javax.swing.Box; +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public abstract class SplashForm extends JPanel +{ + protected final JLabel _splashFileLabel = new JLabel(); + protected final JLabel _waitForWindowLabel = new JLabel(); + protected final JLabel _timeoutLabel = new JLabel(); + protected final JCheckBox _timeoutErrCheck = new JCheckBox(); + protected final JTextField _splashFileField = new JTextField(); + protected final JTextField _timeoutField = new JTextField(); + protected final JButton _splashFileButton = new JButton(); + protected final JCheckBox _splashCheck = new JCheckBox(); + protected final JCheckBox _waitForWindowCheck = new JCheckBox(); + + /** + * Default constructor + */ + public SplashForm() + { + initializePanel(); + } + + /** + * Adds fill components to empty cells in the first row and first column of the grid. + * This ensures that the grid spacing will be the same as shown in the designer. + * @param cols an array of column indices in the first row where fill components should be added. + * @param rows an array of row indices in the first column where fill components should be added. + */ + void addFillComponents( Container panel, int[] cols, int[] rows ) + { + Dimension filler = new Dimension(10,10); + + boolean filled_cell_11 = false; + CellConstraints cc = new CellConstraints(); + if ( cols.length > 0 && rows.length > 0 ) + { + if ( cols[0] == 1 && rows[0] == 1 ) + { + /** add a rigid area */ + panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); + filled_cell_11 = true; + } + } + + for( int index = 0; index < cols.length; index++ ) + { + if ( cols[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); + } + + for( int index = 0; index < rows.length; index++ ) + { + if ( rows[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); + } + + } + + /** + * Helper method to load an image file from the CLASSPATH + * @param imageName the package and name of the file to load relative to the CLASSPATH + * @return an ImageIcon instance with the specified image file + * @throws IllegalArgumentException if the image resource cannot be loaded. + */ + public ImageIcon loadImage( String imageName ) + { + try + { + ClassLoader classloader = getClass().getClassLoader(); + java.net.URL url = classloader.getResource( imageName ); + if ( url != null ) + { + ImageIcon icon = new ImageIcon( url ); + return icon; + } + } + catch( Exception e ) + { + e.printStackTrace(); + } + throw new IllegalArgumentException( "Unable to load image: " + imageName ); + } + + public JPanel createPanel() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(65DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:60DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:3DLU:NONE,FILL:26PX:NONE,FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _splashFileLabel.setIcon(loadImage("images/asterix.gif")); + _splashFileLabel.setName("splashFileLabel"); + _splashFileLabel.setText(Messages.getString("splashFile")); + jpanel1.add(_splashFileLabel,cc.xy(2,4)); + + _waitForWindowLabel.setName("waitForWindowLabel"); + _waitForWindowLabel.setText(Messages.getString("waitForWindow")); + jpanel1.add(_waitForWindowLabel,cc.xy(2,6)); + + _timeoutLabel.setIcon(loadImage("images/asterix.gif")); + _timeoutLabel.setName("timeoutLabel"); + _timeoutLabel.setText(Messages.getString("timeout")); + jpanel1.add(_timeoutLabel,cc.xy(2,8)); + + _timeoutErrCheck.setActionCommand("Signal error on timeout"); + _timeoutErrCheck.setName("timeoutErrCheck"); + _timeoutErrCheck.setText(Messages.getString("timeoutErr")); + _timeoutErrCheck.setToolTipText(Messages.getString("timeoutErrTip")); + jpanel1.add(_timeoutErrCheck,cc.xywh(4,10,2,1)); + + _splashFileField.setName("splashFileField"); + _splashFileField.setToolTipText(Messages.getString("splashFileTip")); + jpanel1.add(_splashFileField,cc.xywh(4,4,2,1)); + + _timeoutField.setName("timeoutField"); + _timeoutField.setToolTipText(Messages.getString("timeoutTip")); + jpanel1.add(_timeoutField,cc.xy(4,8)); + + _splashFileButton.setIcon(loadImage("images/open16.png")); + _splashFileButton.setName("splashFileButton"); + jpanel1.add(_splashFileButton,cc.xy(7,4)); + + _splashCheck.setActionCommand("Enable splash screen"); + _splashCheck.setName("splashCheck"); + _splashCheck.setText(Messages.getString("enableSplash")); + jpanel1.add(_splashCheck,cc.xywh(4,2,2,1)); + + _waitForWindowCheck.setActionCommand("Close splash screen when an application window appears"); + _waitForWindowCheck.setName("waitForWindowCheck"); + _waitForWindowCheck.setText(Messages.getString("waitForWindowText")); + jpanel1.add(_waitForWindowCheck,cc.xywh(4,6,2,1)); + + addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7,8 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11 }); + return jpanel1; + } + + /** + * Initializer + */ + protected void initializePanel() + { + setLayout(new BorderLayout()); + add(createPanel(), BorderLayout.CENTER); + } + + +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/SplashForm.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/SplashForm.jfrm new file mode 100644 index 0000000000000000000000000000000000000000..114f0e31de99faf3eaa4a87c11719caca96ab080 GIT binary patch literal 7347 zcmd^EYitx%6u!HCw>(-}Kzy-c5gN)YP$<$ype@}}TpqIJVTcLS-MhQf&dv;X?y^f% z5<`No5R3&Aj0yN6(clk_5u?$>@JnM1V4_hHL(nKBnrNai!~{L(&dkovcH1tPfWoHx zxOeX3ob!F>oO@4C{6Z>BM&?KLlr%)SEX8$}G9{Dij7lk*q8itw5cF-5qr-B7{(A1* z)<@5L_Rb_ivPPzy5aNgFEfY>Rw^C**x|SMVR$Kki(f!u^dYJFC-(~PkvL(r~-jZwN zmCKd<(!P_p79$JCm7zyZ8M+4A*mDoQ_2k}5YaWlediY@Lw(-}Xs@kJ#CTFsuanoKY zbwG(PIR3|=wNg`_Mvi7aPO4%wE~iz#i|i#eu+h{ZdABUd87}o}CgtY&-EAFZ-@jVs zC*}R5a!}`7PxX^>mBx8LsbESX3EyR0H?jtrDgTw_WNv}jiL@ec6u{*)7id**5(*~u z6b&XAO$0MK8#WC&N`tDL)}qO!LqU^8gBs;QGw${wDS{D0mCYn_K^ls)6erE44g0jG zcf&yM=8hF>!dp5vY~0Y>YIm&Z4Rvh^4|w|8{)2;Zf^%{()E^FaEYAtKxxa7iK*##7 z?ep80L1(9}Qj4XN80=~!n(d2nlSSJxLf__%+vYEp7PYh%o3*5U)AqbIa{>UBngo^7 zTv4U4q7BnnSTXsemdGRPc0M%+oXU1nWZn2)-c4oA=Jb{KPbP;JTzm;Rjg+kr-0_+C zyDH;w+z&Lw2q1Vam~GJ;KWp_3bC8X6!suM*JaCtLkzrBu62R_LCZ(WYkRRYAkE4S}iOyDN_yK82_p` zm{*DMWNuMa))EjGI89JC?ZUCw{(R!e`~AcRfnc|+rYXd_da=0}w;`Pxq-_6*!*|sk zI{z#{A|k}YoRo8#<($+to0i`yD&?dyNimiPAZNqo4KPlLLQG?%wWw)~oJpj97-w5( z&!J~7esIEAB@9!-R7A^}df4~;S0^K(?sVEQWIy1K|w@L{5wKBU=h(mwcD-q^fzd00H_EPS=H9omd#ZA-~}x! zhBVmmgpp+v;kL#~oLiYS1##X|RAfA@vRPnb zd0bI3$V{jcjmK$}o6;scM>uFl=dPS}=;axw9G&vmwA#kmz)dtc1&%z`^=c8@Kmg&? zjkaY`YHy^jMC;=lAJvEtF=KS3#%D9dIwIQLhV5Bm?Cox^)p6&ja8`+<@6H7nhRr#g zOli)@3WvkPHbsl+8SHJ&4Qjw6m6rN`(e2u{zx4D%lFv&J&3E<-y3%wN2TUYPBoJ_}Xo|Vju0_Tc#JxLlJ?$)hv zk>}8g0CBWKd->pRwfRuz@S&FpA9pFy$jM|l_`qcka&8Jvc95PTN0A);P0bL8& z%0p`Bx~>i=#(+4iOvzgmI&UscfZtEG^#+>>7{-s(}#-mgK4sUR8!Y(Q^5om5z9(XTL4jnw_Sxy24b%k85v5zUStqRSI z5v$9uqlXbJ8q}CjV^O;SQ>Yv)DUjMKPv+H!B2i|KcFG2OPj0>N`MbZpP^4_|wUL2d zg8x{V4)589(E0k_uy1I3DDgH9IDqZ%Eoyr+Z5TS^(t4RgIr4bl+ws3nKlCCR+bRk8 z(u_3j5CtN?V*Am0vqgmvBx+)HX(ZN907ErY#>DIY*poHDQiXMV qZxJ2;LDa|ev=O0v 0 && rows.length > 0 ) + { + if ( cols[0] == 1 && rows[0] == 1 ) + { + /** add a rigid area */ + panel.add( Box.createRigidArea( filler ), cc.xy(1,1) ); + filled_cell_11 = true; + } + } + + for( int index = 0; index < cols.length; index++ ) + { + if ( cols[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) ); + } + + for( int index = 0; index < rows.length; index++ ) + { + if ( rows[index] == 1 && filled_cell_11 ) + { + continue; + } + panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) ); + } + + } + + /** + * Helper method to load an image file from the CLASSPATH + * @param imageName the package and name of the file to load relative to the CLASSPATH + * @return an ImageIcon instance with the specified image file + * @throws IllegalArgumentException if the image resource cannot be loaded. + */ + public ImageIcon loadImage( String imageName ) + { + try + { + ClassLoader classloader = getClass().getClassLoader(); + java.net.URL url = classloader.getResource( imageName ); + if ( url != null ) + { + ImageIcon icon = new ImageIcon( url ); + return icon; + } + } + catch( Exception e ) + { + e.printStackTrace(); + } + throw new IllegalArgumentException( "Unable to load image: " + imageName ); + } + + public JPanel createPanel() + { + JPanel jpanel1 = new JPanel(); + FormLayout formlayout1 = new FormLayout("FILL:7DLU:NONE,RIGHT:MAX(65DLU;DEFAULT):NONE,FILL:3DLU:NONE,FILL:60DLU:NONE,FILL:7DLU:NONE,RIGHT:DEFAULT:NONE,FILL:3DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:7DLU:NONE","CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:3DLU:NONE,CENTER:DEFAULT:NONE,CENTER:9DLU:NONE"); + CellConstraints cc = new CellConstraints(); + jpanel1.setLayout(formlayout1); + + _versionInfoCheck.setActionCommand("Add version information"); + _versionInfoCheck.setName("versionInfoCheck"); + _versionInfoCheck.setText(Messages.getString("addVersionInfo")); + jpanel1.add(_versionInfoCheck,cc.xywh(4,2,5,1)); + + _fileVersionLabel.setIcon(loadImage("images/asterix.gif")); + _fileVersionLabel.setName("fileVersionLabel"); + _fileVersionLabel.setText(Messages.getString("fileVersion")); + jpanel1.add(_fileVersionLabel,cc.xy(2,4)); + + _fileVersionField.setName("fileVersionField"); + _fileVersionField.setToolTipText(Messages.getString("fileVersionTip")); + jpanel1.add(_fileVersionField,cc.xy(4,4)); + + _addVersionInfoSeparator.setName("addVersionInfoSeparator"); + _addVersionInfoSeparator.setText("Additional information"); + jpanel1.add(_addVersionInfoSeparator,cc.xywh(2,10,7,1)); + + _productVersionLabel.setIcon(loadImage("images/asterix.gif")); + _productVersionLabel.setName("productVersionLabel"); + _productVersionLabel.setText(Messages.getString("productVersion")); + jpanel1.add(_productVersionLabel,cc.xy(2,12)); + + _productVersionField.setName("productVersionField"); + _productVersionField.setToolTipText(Messages.getString("productVersionTip")); + jpanel1.add(_productVersionField,cc.xy(4,12)); + + _fileDescriptionLabel.setIcon(loadImage("images/asterix.gif")); + _fileDescriptionLabel.setName("fileDescriptionLabel"); + _fileDescriptionLabel.setText(Messages.getString("fileDescription")); + jpanel1.add(_fileDescriptionLabel,cc.xy(2,6)); + + _fileDescriptionField.setName("fileDescriptionField"); + _fileDescriptionField.setToolTipText(Messages.getString("fileDescriptionTip")); + jpanel1.add(_fileDescriptionField,cc.xywh(4,6,5,1)); + + _copyrightLabel.setIcon(loadImage("images/asterix.gif")); + _copyrightLabel.setName("copyrightLabel"); + _copyrightLabel.setText(Messages.getString("copyright")); + jpanel1.add(_copyrightLabel,cc.xy(2,8)); + + _copyrightField.setName("copyrightField"); + jpanel1.add(_copyrightField,cc.xywh(4,8,5,1)); + + _txtFileVersionLabel.setIcon(loadImage("images/asterix.gif")); + _txtFileVersionLabel.setName("txtFileVersionLabel"); + _txtFileVersionLabel.setText(Messages.getString("txtFileVersion")); + jpanel1.add(_txtFileVersionLabel,cc.xy(6,4)); + + _txtFileVersionField.setName("txtFileVersionField"); + _txtFileVersionField.setToolTipText(Messages.getString("txtFileVersionTip")); + jpanel1.add(_txtFileVersionField,cc.xy(8,4)); + + _txtProductVersionLabel.setIcon(loadImage("images/asterix.gif")); + _txtProductVersionLabel.setName("txtProductVersionLabel"); + _txtProductVersionLabel.setText(Messages.getString("txtProductVersion")); + jpanel1.add(_txtProductVersionLabel,cc.xy(6,12)); + + _txtProductVersionField.setName("txtProductVersionField"); + _txtProductVersionField.setToolTipText(Messages.getString("txtProductVersionTip")); + jpanel1.add(_txtProductVersionField,cc.xy(8,12)); + + _productNameLabel.setIcon(loadImage("images/asterix.gif")); + _productNameLabel.setName("productNameLabel"); + _productNameLabel.setText(Messages.getString("productName")); + jpanel1.add(_productNameLabel,cc.xy(2,14)); + + _productNameField.setName("productNameField"); + jpanel1.add(_productNameField,cc.xywh(4,14,5,1)); + + _originalFilenameLabel.setIcon(loadImage("images/asterix.gif")); + _originalFilenameLabel.setName("originalFilenameLabel"); + _originalFilenameLabel.setText(Messages.getString("originalFilename")); + jpanel1.add(_originalFilenameLabel,cc.xy(2,20)); + + _originalFilenameField.setName("originalFilenameField"); + _originalFilenameField.setToolTipText(Messages.getString("originalFilenameTip")); + jpanel1.add(_originalFilenameField,cc.xywh(4,20,5,1)); + + _internalNameLabel.setIcon(loadImage("images/asterix.gif")); + _internalNameLabel.setName("internalNameLabel"); + _internalNameLabel.setText(Messages.getString("internalName")); + jpanel1.add(_internalNameLabel,cc.xy(2,18)); + + _internalNameField.setName("internalNameField"); + _internalNameField.setToolTipText(Messages.getString("internalNameTip")); + jpanel1.add(_internalNameField,cc.xywh(4,18,5,1)); + + _companyNameLabel.setName("companyNameLabel"); + _companyNameLabel.setText(Messages.getString("companyName")); + jpanel1.add(_companyNameLabel,cc.xy(2,16)); + + _companyNameField.setName("companyNameField"); + jpanel1.add(_companyNameField,cc.xywh(4,16,5,1)); + + addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7,8,9 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21 }); + return jpanel1; + } + + /** + * Initializer + */ + protected void initializePanel() + { + setLayout(new BorderLayout()); + add(createPanel(), BorderLayout.CENTER); + } + + +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/VersionInfoForm.jfrm b/installer/lib/launch4j/src/net/sf/launch4j/form/VersionInfoForm.jfrm new file mode 100644 index 0000000000000000000000000000000000000000..32eb136c88076c850140838957cbed64e9b1351e GIT binary patch literal 13722 zcmeHOYit}>6~4QE#g3b-;}2KbGg;NS<@A($N=+Yn?w>1mPkp`>xhsos(xK3_oY(kc#`&lxRlT> z%B^ebqhl?9{%%W@v?fUViov;&OORHLrg?(2F*TEgzb)J_izbT6|5N1T-m+BCOJ)bz~BhmuQyveCv?dMnQ9)`_6B zI!>OQNhFhFA1X9J~!^6jqLE*TgixFEHqOvy+@p$}5sd3f50@|$Bfm>mA z;mjw8@0X5@91iva1nCn5$#YeclB&K&m85F%?vce$pMLbod%#pU#%G|Wy_le~?lASu zpIyza9(w&-$W$a^n_xu5!tWggm$|~G0m0hf6A^s1NsGU`{KUiWK)!O@S0djcmvu#E zN|1n2PTpIEt}8H2OFBKhbP^}bNk6W?C|Lzn&q${yvoy6fVW4%C${GhP^;u?^lyQ~1 z*6EdFPrWiuF8|K6b5UH#ozPQ{C*o7Gm7SB#wvIo(@Z!LuFSn5B4C&GgS(%Yj;0Y3> zlV=&VvWBJ<%@ZFNQs^%1fxl?M+c}6*Rd}}4sV2j$6FR3E$_`wA=6nD8{1XpENd!#U zx~%0XSnHS=T-2M-=T<0t{L1Bb@4a;G%Td%Vc$GO$S~)FpPWBJUisCaqoU~^tT126^ zyI}&ooZJBu1@{87&Vkf989b>d2iI+%b5I47#d0!MfW|8ZQ{V+7$E%9cEQwHp-b^E} zD-)uHBioHH{^9!GHxFMth$7ueAHGh4jV}->x_RwJpWXOytr;L7+;J~QzV`d8i!Vu@ zDg``;%>qKTm6$>y@Rbl)Ty=Noo7beF8O-hb7k~N2`~Mnwa0&ZHd>pc=!O0$FLr-B% z$Jv8qmsGA%Mfds^1atn5M{Nunu>lXoVu zNgSHQ#VB#na1lMy_&L&-*K_=1&*8dR@tUz?F=HqiWK}`Q7K%y9o(myZcdp+pVft z1f$cc%Q?zP%t1K%WML!VrC>#`vuf4Bs3z=J62FNq@A4W?h=O-jn2rt{qUjO+O^Mo*j*rS7RfQ~Tqgp&hm4gy>&E?b;3wJ2rOG$(s~ zPl8{<=n0Mti#d(hlEyBpG7(=mSirAwhe!DR2>v>1vvxb^VzuMmFb~v#99AFm4Kt1f zAE`QwjU|w^2I8#A51LNX6t|?a82-9)P2KykJ1>1_;6;}oj$Cof1!oeb5Z6Zmu0E{_ zm~0PMgz8ScbS?(n(y}8!dMY40Apjqp-xdN#Z(h* zGV057z&*Q^4eWNn0EeS&AI2#@v4-R&GMeKi3Rt@vB%QzaawreP5m>VKv9aP;eUxV3+(0tuj5@<-KA^;k|)K=7Q zX@69esZF*2@$?Xah-fYA-@Bq@>kW9t8IuTjIc|8jN~7Qq|L*}WudxrpHLm+IAq6ae z1R>~#lqFn3v#~cQ)ew}#;dTavI-O_aE?jS=^E@yVTthSZ&N4NHWbDrNCG|4)tEeVm ztk4VO)tYygdfO8iwKuc_z>S~|LQ;HZ*tx|N??;LUm(h$YuT)kDqGMumAAA}gBQuBS z-EPKV9!_zBHhMQot}{xGIf*C~X$Z!mLq-tn#>pUr;Mp+((syDN{wN6>;yHm&6Cvs7 z-o3c_a{?T*UcdV!HU_`jGi1PiRfU{ChRb-eiZ8slX_u3AaZ?FUGkVerRfS~k0Z>)r9qD5ZbMF{}lW59-xx1cJT+-P7tRJOTI|AN7uXhyaMR1}h_rMuRMg8yAwxE;GMWd(^iv;iO64Qb(=DeD_s5Vd(Sg|!J5 z^NAuPzfgG%;MdzNrR&#(OC$RNopZX($w5$-|34#2*L!D~sw}Itu*DSG1m%A2OaxHKnoxH0(L?2pp_e(4k6 zLKE)QHCxvz7XJ%> C_=xrZ literal 0 HcmV?d00001 diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/messages.properties b/installer/lib/launch4j/src/net/sf/launch4j/form/messages.properties new file mode 100644 index 000000000..1be6c9584 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/form/messages.properties @@ -0,0 +1,146 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal +# +# 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 the Launch4j 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 OWNER 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. +# + +log=Log + +outfile=Output file: +outfileTip=Output executable file. +customProcName=Custom process name and XP style manifest +stayAlive=Stay alive after launching a GUI application +manifest=Manifest: +manifestTip=Wrapper's manifest for User Account Control, will not enable XP styles! +icon=Icon: +iconTip=Application icon. +jar=Jar: +jarTip=Application jar. +dontWrapJar=Dont't wrap the jar, launch only +cmdLine=Command line args: +cmdLineTip=Constant command line arguments passed to the application. +options=Options: +chdir=Change dir: +chdirTip=Change current directory to a location relative to the executable. Empty field has no effect, . - changes directory to the exe location. +priority=Process priority: +normalPriority=Normal +idlePriority=Idle +highPriority=High +downloadAndSupport=Java download and support +errorTitle=Error title: +errorTitleTip=Launch4j signals errors using a message box, you can set it's title to the application's name. +downloadUrl=Java download URL: +supportUrl=Support URL: + +new=New +accept=Accept +remove=Remove +customClassPath=Custom classpath +classPath=Classpath: +mainClass=Main class: +editClassPath=Edit item: +importClassPath=Import attributes from a jar's manifest. + +headerType=Header type: +gui=GUI +console=Console +objectFiles=Object files: +libs=w32api: +linkerOptions=Custom header - linker options + +enableSingleInstance=Allow only a single instance of the application +mutexName=Mutex name +mutexNameTip=Mutex name that will uniquely identify your application. +windowTitle=Window title +windowTitleTip=Title of the GUI application window to bring up on attempt to start a next instance. + +jrePath=Bundled JRE path: +jrePathTip=Bundled JRE path relative to the executable or absolute. +jreMin=Min JRE version: +jreMax=Max JRE version: +dontUsePrivateJres=Don't use private JREs +jvmOptions=JVM options: +jvmOptionsTip=Accepts everything you would normally pass to java/javaw launcher: assertion options, system properties and X options. +initialHeapSize=Initial heap size: +maxHeapSize=Max heap size: +freeMemory=% of free memory +jdkPreference=JDK/JRE preference: +addVariables=Add variables: +addVariablesTip=Add special variable or map environment variables to system properties. +exeDirVarTip=Executable's runtime directory path. +exeFileVarTip=Executable's runtime file path (directory and filename). +varsAndRegistry=Variables / registry: +envVar=Environment var: +property=Property +propertyTip=Map a variable to a system property. +option=Option +optionTip=Pass a JVM option using a variable. + +setVariables=Set variables: + +enableSplash=Enable splash screen +splashFile=Splash file: +splashFileTip=Splash screen file in BMP format. +waitForWindow=Wait for window +waitForWindowText=Close splash screen when an application window appears +timeout=Timeout [s]: +timeoutTip=Number of seconds after which the splash screen must close. Splash timeout may cause an error depending on splashTimeoutErr property. +timeoutErr=Signal error on timeout +timeoutErrTip=True signals an error on splash timeout, false closes the splash screen quietly. + +version=Version +additionalInfo=Additional information +addVersionInfo=Add version information +fileVersion=File version: +fileVersionTip=Version number 'x.x.x.x' +productVersion=Product version: +productVersionTip=Version number 'x.x.x.x' +fileDescription=File description: +fileDescriptionTip=File description presented to the user. +copyright=Copyright: +txtFileVersion=Free form: +txtFileVersionTip=Free form file version, for example '1.20.RC1'. +txtProductVersion=Free form: +txtProductVersionTip=Free form product version, for example '1.20.RC1'. +productName=Product name: +originalFilename=Original filename: +originalFilenameTip=Original name of the file without the path. Allows to determine whether a file has been renamed by a user. +internalName=Internal name: +internalNameTip=Internal name without extension, original filename or module name for example. +companyName=Company name: + +addMessages=Add custom messages +startupErr=Startup error: +bundledJreErr=Bundled JRE error: +jreVersionErr=JRE version error: +jreVersionErrTip=Launch4j will append the required version number at the end of this message. +launcherErr=Launcher error: +instanceAlreadyExistsMsg=Inst. already exists: +instanceAlreadyExistsMsgTip=Message displayed by single instance console applications if an instance already exists. diff --git a/installer/lib/launch4j/src/net/sf/launch4j/form/messages_es.properties b/installer/lib/launch4j/src/net/sf/launch4j/form/messages_es.properties new file mode 100644 index 000000000..50e2d7587 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/form/messages_es.properties @@ -0,0 +1,118 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal, Patricio Martínez Ros +# +# 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 the Launch4j 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 OWNER 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. +# + +log = Registro + +outfile = Fichero de salida +outfileTip = Fichero ejecutable de salida. +errorTitle = T\u00EDtulo de error +errorTitleTip = Launch4j indica los errores usando una ventana de mensaje, usted puede ponerle el nombre de la aplicaci\u00F3n a esta ventana. +customProcName = Nombre personalizado del proceso +stayAlive = Mantener abierto despu\u00E9s de lanzar una aplicaci\u00F3n GUI +icon = Icono +iconTip = Icono de la aplicaci\u00F3n. +jar = Jar +jarTip = Jar de la aplicaci\u00F3n. +dontWrapJar = No empaquetar el jar, s\u00F3lo lanzar +cmdLine = Argumentos del jar +cmdLine = Argumentos de l\u00EDnea de \u00F3rdenes pasados a la aplicaci\u00F3n. +options = Opciones +chdir = Cambiar al directorio +chdirTip = Cambia el directorio actual a la localizaci\u00F3n relativa al ejecutable. Si el campo se deja vac\u00EDo, no tiene efecto, . - cambia el directorio a la localizaci\u00F3n del exe. +headerType = Tipo de cabecera +gui = GUI +console = Consola +objectFiles = Ficheros objeto +libs = w32api +linkerOptions = Cabecera personalizada - opciones del enlazador +jrePath = Ruta del JRE +jrePathTip = Ruta relativa al ejecutable del JRE. +jreMin = Versi\u00F3n m\u00EDnima del JRE +jreMax = Versi\u00F3n m\u00E1xima del JRE +jvmOptions = Argumentos de la JVM +jvmOptionsTip = Acepta cualquier argumento que normalmente se le pasar\u00EDa al lanzador java/javaw\: opciones assertion, propiedades de sistema y opciones X. +initialHeapSize = Tama\u00F1o inicial de la pila +maxHeapSize = Tama\u00F1o m\u00E1ximo de la pila +freeMemory=% of free memory +addVariables = A\u00F1adir variables +addVariablesTip = A\u00F1adir una variable especial o mapear variables de entorno a las propiedades del sistema. +exeDirVarTip = Ruta del directorio del ejecutable. +exeFileVarTip = Ruta del fichero ejecutable (directorio y nombre del fichero). +other = Otra +otherTip = Mapear una variable de entorno a una propiedad del sistema. +otherVarTip = Variable de entorno que mapear. +add = A\u00F1adir +specifyVar = Especificar variable de entorno que a\u00F1adir. +enableSplash = Activar pantalla de bienvenida +splashFile = Imagen +splashFileTip = Imagen en formato BMP para la pantalla de bienvenida. +waitForWindow = Esperar la ventana +waitForWindowText = Cerrar la pantalla de bienvenida cuando aparezca una ventana de la aplicaci\u00F3n +timeout = Tiempo de espera [s] +timeoutTip = Numero de segundos despu\u00E9s de los que la pantalla de bienvenida se debe cerrar. Esta propiedad puede causar provocar un error dependiendo de la propiedad splashTimeoutErr. +timeoutErr = Se\u00F1al de error asociada al tiempo de espera +timeoutErrTip = Marcado (true) se\u00F1ala un error despu\u00E9s del tiempo de espera de la pantalla de bienvenida, no marcado (false) cierra la pantalla de bienvenida silenciosamente +addVersionInfo = A\u00F1ade informaci\u00F3n sobre la versi\u00F3n +fileVersion = Versi\u00F3n del fichero +fileVersionTip = N\u00FAmero de versi\u00F3n 'x.x.x.x' +additionalInfo = Informaci\u00F3n adicional +productVersion = Versi\u00F3n del producto +productVersionTip = N\u00FAmero de versi\u00F3n 'x.x.x.x' +fileDescription = Descripci\u00F3n del fichero +fileDescriptionTip = Descripci\u00F3n del fichero que se le muestra al usuario. +copyright = Copyright +txtFileVersion = Forma libre +txtFileVersionTip = Forma libre de versi\u00F3n, por ejemplo '1.20.RC1'. +txtProductVersion = Forma libre +txtProductVersionTip = Forma libre del producto, por ejemplo '1.20.RC1'. +productName = Nombre del producto +originalFilename = Nombre original del fichero +originalFilenameTip = Nombre original del fichero sin la ruta. Permite determinar si un fichero ha sido renombrado por un usuario. +internalName = Nombre interno +internalNameTip = Nombre interno sin extensi\u00F3n, el nombre original del fichero o el m\u00F3dulo, por ejemplo. +companyName = Nombre de la organizaci\u00F3n + +addMessages=Add custom messages +startupErr=Startup error: +bundledJreErr=Bundled JRE error: +jreVersionErr=JRE version error: +jreVersionErrTip=Launch4j will append the required version number at the end of this message. +launcherErr=Launcher error: +instanceAlreadyExistsMsg=Inst. already exists: +instanceAlreadyExistsMsgTip=Message displayed by single instance console applications if an instance already exists. + +enableSingleInstance=Allow only a single instance of the application +mutexName=Mutex name +mutexNameTip=Mutex name that will uniquely identify your application. +windowTitle=Window title +windowTitleTip=Title of the application window to bring up on attempt to start a next instance. diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/AbstractAcceptListener.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/AbstractAcceptListener.java new file mode 100644 index 000000000..5265e6436 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/AbstractAcceptListener.java @@ -0,0 +1,75 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 1, 2006 + */ +package net.sf.launch4j.formimpl; + +import java.awt.Color; +import java.awt.event.ActionListener; + +import javax.swing.JTextField; + +import net.sf.launch4j.binding.Binding; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public abstract class AbstractAcceptListener implements ActionListener { + final JTextField _field; + + public AbstractAcceptListener(JTextField f, boolean listen) { + _field = f; + if (listen) { + _field.addActionListener(this); + } + } + + protected String getText() { + return _field.getText(); + } + + protected void clear() { + _field.setText(""); + _field.requestFocusInWindow(); + } + + protected void signalViolation(String msg) { + final Color bg = _field.getBackground(); + _field.setBackground(Binding.INVALID_COLOR); + MainFrame.getInstance().warn(msg); + _field.setBackground(bg); + _field.requestFocusInWindow(); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/BasicFormImpl.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/BasicFormImpl.java new file mode 100644 index 000000000..01ebe8adf --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/BasicFormImpl.java @@ -0,0 +1,101 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 1, 2006 + */ +package net.sf.launch4j.formimpl; + +import javax.swing.JFileChooser; +import javax.swing.JRadioButton; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; + +import net.sf.launch4j.FileChooserFilter; +import net.sf.launch4j.binding.Bindings; +import net.sf.launch4j.config.Config; +import net.sf.launch4j.form.BasicForm; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class BasicFormImpl extends BasicForm { + + public BasicFormImpl(Bindings bindings, JFileChooser fc) { + bindings.add("outfile", _outfileField) + .add("dontWrapJar", _dontWrapJarCheck) + .add("jar", _jarField) + .add("manifest", _manifestField) + .add("icon", _iconField) + .add("cmdLine", _cmdLineField) + .add("errTitle", _errorTitleField) + .add("downloadUrl", _downloadUrlField, Config.DOWNLOAD_URL) + .add("supportUrl", _supportUrlField) + .add("chdir", _chdirField) + .add("priorityIndex", new JRadioButton[] { _normalPriorityRadio, + _idlePriorityRadio, + _highPriorityRadio }) + .add("customProcName", _customProcNameCheck) + .add("stayAlive", _stayAliveCheck); + + _dontWrapJarCheck.addChangeListener(new DontWrapJarChangeListener()); + + _outfileButton.addActionListener(new BrowseActionListener(true, fc, + new FileChooserFilter("Windows executables (.exe)", ".exe"), + _outfileField)); + _jarButton.addActionListener(new BrowseActionListener(false, fc, + new FileChooserFilter("Jar files", ".jar"), _jarField)); + _manifestButton.addActionListener(new BrowseActionListener(false, fc, + new FileChooserFilter("Manifest files (.manifest)", ".manifest"), + _manifestField)); + _iconButton.addActionListener(new BrowseActionListener(false, fc, + new FileChooserFilter("Icon files (.ico)", ".ico"), _iconField)); + } + + private class DontWrapJarChangeListener implements ChangeListener { + + public void stateChanged(ChangeEvent e) { + boolean dontWrap = _dontWrapJarCheck.isSelected(); + if (dontWrap) { + _jarLabel.setIcon(loadImage("images/asterix-o.gif")); + _jarLabel.setText(Messages.getString("jarPath")); + _jarField.setToolTipText(Messages.getString("jarPathTip")); + } else { + _jarLabel.setIcon(loadImage("images/asterix.gif")); + _jarLabel.setText(Messages.getString("jar")); + _jarField.setToolTipText(Messages.getString("jarTip")); + } + _jarButton.setEnabled(!dontWrap); + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/BrowseActionListener.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/BrowseActionListener.java new file mode 100644 index 000000000..89a5017ee --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/BrowseActionListener.java @@ -0,0 +1,79 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 1, 2006 + */ +package net.sf.launch4j.formimpl; + +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.io.File; + +import javax.swing.JFileChooser; +import javax.swing.JTextField; + +import net.sf.launch4j.FileChooserFilter; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class BrowseActionListener implements ActionListener { + private final boolean _save; + private final JFileChooser _fileChooser; + private final FileChooserFilter _filter; + private final JTextField _field; + + public BrowseActionListener(boolean save, JFileChooser fileChooser, + FileChooserFilter filter, JTextField field) { + _save = save; + _fileChooser = fileChooser; + _filter = filter; + _field = field; + } + + public void actionPerformed(ActionEvent e) { + if (!_field.isEnabled()) { + return; + } + _fileChooser.setFileFilter(_filter); + _fileChooser.setSelectedFile(new File("")); + int result = _save + ? _fileChooser.showSaveDialog(MainFrame.getInstance()) + : _fileChooser.showOpenDialog(MainFrame.getInstance()); + if (result == JFileChooser.APPROVE_OPTION) { + _field.setText(_fileChooser.getSelectedFile().getPath()); + } + _fileChooser.removeChoosableFileFilter(_filter); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/ClassPathFormImpl.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/ClassPathFormImpl.java new file mode 100644 index 000000000..65d82096e --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/ClassPathFormImpl.java @@ -0,0 +1,222 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 1, 2006 + */ +package net.sf.launch4j.formimpl; + +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.io.File; +import java.io.IOException; +import java.util.jar.Attributes; +import java.util.jar.JarFile; + +import javax.swing.DefaultListModel; +import javax.swing.JFileChooser; +import javax.swing.JTextField; +import javax.swing.ListSelectionModel; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; + +import net.sf.launch4j.FileChooserFilter; +import net.sf.launch4j.binding.Bindings; +import net.sf.launch4j.binding.Validator; +import net.sf.launch4j.config.ClassPath; +import net.sf.launch4j.form.ClassPathForm; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class ClassPathFormImpl extends ClassPathForm { + private final JFileChooser _fileChooser; + private final FileChooserFilter _filter + = new FileChooserFilter("Executable jar", ".jar"); + + public ClassPathFormImpl(Bindings bindings, JFileChooser fc) { + bindings.addOptComponent("classPath", ClassPath.class, _classpathCheck) + .add("classPath.mainClass", _mainclassField) + .add("classPath.paths", _classpathList); + _fileChooser = fc; + + ClasspathCheckListener cpl = new ClasspathCheckListener(); + _classpathCheck.addChangeListener(cpl); + cpl.stateChanged(null); + + _classpathList.setModel(new DefaultListModel()); + _classpathList.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + _classpathList.addListSelectionListener(new ClasspathSelectionListener()); + + _newClasspathButton.addActionListener(new NewClasspathListener()); + _acceptClasspathButton.addActionListener( + new AcceptClasspathListener(_classpathField)); + _removeClasspathButton.addActionListener(new RemoveClasspathListener()); + _importClasspathButton.addActionListener(new ImportClasspathListener()); + _classpathUpButton.addActionListener(new MoveUpListener()); + _classpathDownButton.addActionListener(new MoveDownListener()); + } + + private class ClasspathCheckListener implements ChangeListener { + public void stateChanged(ChangeEvent e) { + boolean on = _classpathCheck.isSelected(); + _importClasspathButton.setEnabled(on); + _classpathUpButton.setEnabled(on); + _classpathDownButton.setEnabled(on); + _classpathField.setEnabled(on); + _newClasspathButton.setEnabled(on); + _acceptClasspathButton.setEnabled(on); + _removeClasspathButton.setEnabled(on); + } + } + + private class NewClasspathListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + _classpathList.clearSelection(); + _classpathField.setText(""); + _classpathField.requestFocusInWindow(); + } + } + + private class AcceptClasspathListener extends AbstractAcceptListener { + public AcceptClasspathListener(JTextField f) { + super(f, true); + } + + public void actionPerformed(ActionEvent e) { + String cp = getText(); + if (Validator.isEmpty(cp)) { + signalViolation(Messages.getString("specifyClassPath")); + return; + } + DefaultListModel model = (DefaultListModel) _classpathList.getModel(); + if (_classpathList.isSelectionEmpty()) { + model.addElement(cp); + clear(); + } else { + model.setElementAt(cp, _classpathList.getSelectedIndex()); + } + } + } + + private class ClasspathSelectionListener implements ListSelectionListener { + public void valueChanged(ListSelectionEvent e) { + if (e.getValueIsAdjusting()) { + return; + } + if (_classpathList.isSelectionEmpty()) { + _classpathField.setText(""); + } else { + _classpathField.setText((String) _classpathList.getSelectedValue()); + } + _classpathField.requestFocusInWindow(); + } + } + + private class RemoveClasspathListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + if (_classpathList.isSelectionEmpty() + || !MainFrame.getInstance().confirm( + Messages.getString("confirmClassPathRemoval"))) { + return; + } + DefaultListModel model = (DefaultListModel) _classpathList.getModel(); + while (!_classpathList.isSelectionEmpty()) { + model.remove(_classpathList.getSelectedIndex()); + } + } + } + + private class MoveUpListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + int x = _classpathList.getSelectedIndex(); + if (x < 1) { + return; + } + DefaultListModel model = (DefaultListModel) _classpathList.getModel(); + Object o = model.get(x - 1); + model.set(x - 1, model.get(x)); + model.set(x, o); + _classpathList.setSelectedIndex(x - 1); + } + } + + private class MoveDownListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + DefaultListModel model = (DefaultListModel) _classpathList.getModel(); + int x = _classpathList.getSelectedIndex(); + if (x == -1 || x >= model.getSize() - 1) { + return; + } + Object o = model.get(x + 1); + model.set(x + 1, model.get(x)); + model.set(x, o); + _classpathList.setSelectedIndex(x + 1); + } + } + + private class ImportClasspathListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + try { + _fileChooser.setFileFilter(_filter); + _fileChooser.setSelectedFile(new File("")); + if (_fileChooser.showOpenDialog(MainFrame.getInstance()) + == JFileChooser.APPROVE_OPTION) { + JarFile jar = new JarFile(_fileChooser.getSelectedFile()); + if (jar.getManifest() == null) { + jar.close(); + MainFrame.getInstance().info(Messages.getString("noManifest")); + return; + } + Attributes attr = jar.getManifest().getMainAttributes(); + String mainClass = (String) attr.getValue("Main-Class"); + String classPath = (String) attr.getValue("Class-Path"); + jar.close(); + _mainclassField.setText(mainClass != null ? mainClass : ""); + DefaultListModel model = new DefaultListModel(); + if (classPath != null) { + String[] paths = classPath.split(" "); + for (int i = 0; i < paths.length; i++) { + model.addElement(paths[i]); + } + } + _classpathList.setModel(model); + } + } catch (IOException ex) { + MainFrame.getInstance().warn(ex.getMessage()); + } + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/ConfigFormImpl.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/ConfigFormImpl.java index bf87719ad..d29720642 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/ConfigFormImpl.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/ConfigFormImpl.java @@ -1,141 +1,100 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on May 10, 2005 - */ -package net.sf.launch4j.formimpl; - -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.io.File; - -import javax.swing.JFileChooser; -import javax.swing.JRadioButton; -import javax.swing.JTextArea; -import javax.swing.JTextField; - -import net.sf.launch4j.FileChooserFilter; -import net.sf.launch4j.binding.Binding; -import net.sf.launch4j.binding.Bindings; -import net.sf.launch4j.binding.IValidatable; -import net.sf.launch4j.config.Splash; -import net.sf.launch4j.config.VersionInfo; -import net.sf.launch4j.form.ConfigForm; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class ConfigFormImpl extends ConfigForm { - private final JFileChooser _fileChooser = new JFileChooser(); - private final Bindings _bindings = new Bindings(); - - public ConfigFormImpl() { - _outfileButton.addActionListener(new BrowseActionListener( - _outfileField, new FileChooserFilter("Windows executables (.exe)", ".exe"))); - _jarButton.addActionListener(new BrowseActionListener( - _jarField, new FileChooserFilter("Jar files", ".jar"))); - _iconButton.addActionListener(new BrowseActionListener( - _iconField, new FileChooserFilter("Icon files (.ico)", ".ico"))); - _splashFileButton.addActionListener(new BrowseActionListener( - _splashFileField, new FileChooserFilter("Bitmap files (.bmp)", ".bmp"))); - - _bindings.add("outfile", _outfileField) - .add("jar", _jarField) - .add("icon", _iconField) - .add("jarArgs", _jarArgsField) - .add("errTitle", _errorTitleField) - .add("chdir", _chdirField) - .add("customProcName", _customProcNameCheck) - .add("stayAlive", _stayAliveCheck) - .add("headerType", new JRadioButton[] {_guiHeaderRadio, _consoleHeaderRadio}) - // TODO header object files - // TODO w32api - .add("jre.path", _jrePathField) - .add("jre.minVersion", _jreMinField) - .add("jre.maxVersion", _jreMaxField) - .add("jre.initialHeapSize", _initialHeapSizeField) - .add("jre.maxHeapSize", _maxHeapSizeField) - .add("jre.args", _jvmArgsTextArea) - .addOptComponent("splash", Splash.class, _splashCheck) - .add("splash.file", _splashFileField) - .add("splash.waitForWindow", _waitForWindowCheck, true) - .add("splash.timeout", _timeoutField, "60") - .add("splash.timeoutErr", _timeoutErrCheck, true) - .addOptComponent("versionInfo", VersionInfo.class, _versionInfoCheck) - .add("versionInfo.fileVersion", _fileVersionField) - .add("versionInfo.productVersion", _productVersionField) - .add("versionInfo.fileDescription", _fileDescriptionField) - .add("versionInfo.internalName", _internalNameField) - .add("versionInfo.originalFilename", _originalFilenameField) - .add("versionInfo.productName", _productNameField) - .add("versionInfo.txtFileVersion", _txtFileVersionField) - .add("versionInfo.txtProductVersion", _txtProductVersionField) - .add("versionInfo.companyName", _companyNameField) - .add("versionInfo.copyright", _copyrightField); - } - - private class BrowseActionListener implements ActionListener { - private final JTextField _field; - private final FileChooserFilter _filter; - - public BrowseActionListener(JTextField field, FileChooserFilter filter) { - _field = field; - _filter = filter; - } - - public void actionPerformed(ActionEvent e) { - if (!_field.isEnabled()) { - return; - } - _fileChooser.setFileFilter(_filter); - _fileChooser.setSelectedFile(new File("")); - int result = _field.equals(_outfileField) - ? _fileChooser.showSaveDialog(MainFrame.getInstance()) - : _fileChooser.showOpenDialog(MainFrame.getInstance()); - if (result == JFileChooser.APPROVE_OPTION) { - _field.setText(_fileChooser.getSelectedFile().getPath()); - } - } - } - - public void clear() { - _bindings.clear(); - } - - public void put(IValidatable bean) { - _bindings.put(bean); - } - - public void get(IValidatable bean) { - _bindings.get(bean); - } - - public boolean isModified() { - return _bindings.isModified(); - } - - public JTextArea getLogTextArea() { - return _logTextArea; - } - - public Binding getBinding(String property) { - return _bindings.getBinding(property); - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 10, 2005 + */ +package net.sf.launch4j.formimpl; + +import javax.swing.BorderFactory; +import javax.swing.JFileChooser; +import javax.swing.JTextArea; + +import net.sf.launch4j.binding.Binding; +import net.sf.launch4j.binding.Bindings; +import net.sf.launch4j.binding.IValidatable; +import net.sf.launch4j.form.ConfigForm; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class ConfigFormImpl extends ConfigForm { + private final Bindings _bindings = new Bindings(); + private final JFileChooser _fileChooser = new FileChooser(ConfigFormImpl.class); + + public ConfigFormImpl() { + _tab.setBorder(BorderFactory.createMatteBorder(0, -1, -1, -1, getBackground())); + _tab.addTab(Messages.getString("tab.basic"), + new BasicFormImpl(_bindings, _fileChooser)); + _tab.addTab(Messages.getString("tab.classpath"), + new ClassPathFormImpl(_bindings, _fileChooser)); + _tab.addTab(Messages.getString("tab.header"), + new HeaderFormImpl(_bindings)); + _tab.addTab(Messages.getString("tab.singleInstance"), + new SingleInstanceFormImpl(_bindings)); + _tab.addTab(Messages.getString("tab.jre"), + new JreFormImpl(_bindings, _fileChooser)); + _tab.addTab(Messages.getString("tab.envVars"), + new EnvironmentVarsFormImpl(_bindings)); + _tab.addTab(Messages.getString("tab.splash"), + new SplashFormImpl(_bindings, _fileChooser)); + _tab.addTab(Messages.getString("tab.version"), + new VersionInfoFormImpl(_bindings, _fileChooser)); + _tab.addTab(Messages.getString("tab.messages"), + new MessagesFormImpl(_bindings)); + } + + public void clear(IValidatable bean) { + _bindings.clear(bean); + } + + public void put(IValidatable bean) { + _bindings.put(bean); + } + + public void get(IValidatable bean) { + _bindings.get(bean); + } + + public boolean isModified() { + return _bindings.isModified(); + } + + public JTextArea getLogTextArea() { + return _logTextArea; + } + + public Binding getBinding(String property) { + return _bindings.getBinding(property); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/EnvironmentVarsFormImpl.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/EnvironmentVarsFormImpl.java new file mode 100644 index 000000000..2f325fe3c --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/EnvironmentVarsFormImpl.java @@ -0,0 +1,50 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Jun 10, 2006 + */ +package net.sf.launch4j.formimpl; + +import net.sf.launch4j.binding.Bindings; +import net.sf.launch4j.form.EnvironmentVarsForm; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class EnvironmentVarsFormImpl extends EnvironmentVarsForm { + + public EnvironmentVarsFormImpl(Bindings bindings) { + bindings.add("variables", _envVarsTextArea); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/FileChooser.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/FileChooser.java new file mode 100644 index 000000000..c1b984e58 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/FileChooser.java @@ -0,0 +1,65 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Jul 19, 2006 + */ +package net.sf.launch4j.formimpl; + +import java.io.File; +import java.util.prefs.Preferences; + +import javax.swing.JFileChooser; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class FileChooser extends JFileChooser { + private final Preferences _prefs; + private final String _key; + + public FileChooser(Class clazz) { + _prefs = Preferences.userNodeForPackage(clazz); + _key = "currentDir-" + + clazz.getName().substring(clazz.getName().lastIndexOf('.') + 1); + String path = _prefs.get(_key, null); + if (path != null) { + setCurrentDirectory(new File(path)); + } + } + + public void approveSelection() { + _prefs.put(_key, getCurrentDirectory().getPath()); + super.approveSelection(); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/HeaderFormImpl.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/HeaderFormImpl.java new file mode 100644 index 000000000..accfaa9de --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/HeaderFormImpl.java @@ -0,0 +1,102 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 1, 2006 + */ +package net.sf.launch4j.formimpl; + +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.JRadioButton; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; + +import net.sf.launch4j.binding.Binding; +import net.sf.launch4j.binding.Bindings; +import net.sf.launch4j.config.Config; +import net.sf.launch4j.config.ConfigPersister; +import net.sf.launch4j.form.HeaderForm; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class HeaderFormImpl extends HeaderForm { + private final Bindings _bindings; + + public HeaderFormImpl(Bindings bindings) { + _bindings = bindings; + _bindings.add("headerTypeIndex", new JRadioButton[] { _guiHeaderRadio, + _consoleHeaderRadio }) + .add("headerObjects", "customHeaderObjects", _headerObjectsCheck, + _headerObjectsTextArea) + .add("libs", "customLibs", _libsCheck, _libsTextArea); + + _guiHeaderRadio.addChangeListener(new HeaderTypeChangeListener()); + _headerObjectsCheck.addActionListener(new HeaderObjectsActionListener()); + _libsCheck.addActionListener(new LibsActionListener()); + } + + private class HeaderTypeChangeListener implements ChangeListener { + public void stateChanged(ChangeEvent e) { + Config c = ConfigPersister.getInstance().getConfig(); + c.setHeaderType(_guiHeaderRadio.isSelected() ? Config.GUI_HEADER + : Config.CONSOLE_HEADER); + if (!_headerObjectsCheck.isSelected()) { + Binding b = _bindings.getBinding("headerObjects"); + b.put(c); + } + } + } + + private class HeaderObjectsActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + if (!_headerObjectsCheck.isSelected()) { + ConfigPersister.getInstance().getConfig().setHeaderObjects(null); + Binding b = _bindings.getBinding("headerObjects"); + b.put(ConfigPersister.getInstance().getConfig()); + } + } + } + + private class LibsActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + if (!_libsCheck.isSelected()) { + ConfigPersister.getInstance().getConfig().setLibs(null); + Binding b = _bindings.getBinding("libs"); + b.put(ConfigPersister.getInstance().getConfig()); + } + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/JreFormImpl.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/JreFormImpl.java new file mode 100644 index 000000000..48a2f18e8 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/JreFormImpl.java @@ -0,0 +1,166 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 1, 2006 + */ +package net.sf.launch4j.formimpl; + +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.DefaultComboBoxModel; +import javax.swing.JFileChooser; +import javax.swing.JTextField; + +import net.sf.launch4j.binding.Bindings; +import net.sf.launch4j.binding.Validator; +import net.sf.launch4j.form.JreForm; +import net.sf.launch4j.config.Jre; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class JreFormImpl extends JreForm { + + public JreFormImpl(Bindings bindings, JFileChooser fc) { + _jdkPreferenceCombo.setModel(new DefaultComboBoxModel(new String[] { + Messages.getString("jdkPreference.jre.only"), + Messages.getString("jdkPreference.prefer.jre"), + Messages.getString("jdkPreference.prefer.jdk"), + Messages.getString("jdkPreference.jdk.only")})); + bindings.add("jre.path", _jrePathField) + .add("jre.minVersion", _jreMinField) + .add("jre.maxVersion", _jreMaxField) + .add("jre.jdkPreferenceIndex", _jdkPreferenceCombo, + Jre.DEFAULT_JDK_PREFERENCE_INDEX) + .add("jre.initialHeapSize", _initialHeapSizeField) + .add("jre.initialHeapPercent", _initialHeapPercentField) + .add("jre.maxHeapSize", _maxHeapSizeField) + .add("jre.maxHeapPercent", _maxHeapPercentField) + .add("jre.options", _jvmOptionsTextArea); + + _varCombo.setModel(new DefaultComboBoxModel(new String[] { + "EXEDIR", "EXEFILE", "PWD", "OLDPWD", + "HKEY_CLASSES_ROOT", "HKEY_CURRENT_USER", "HKEY_LOCAL_MACHINE", + "HKEY_USERS", "HKEY_CURRENT_CONFIG" })); + + _varCombo.addActionListener(new VarComboActionListener()); + _varCombo.setSelectedIndex(0); + + _propertyButton.addActionListener(new PropertyActionListener()); + _optionButton.addActionListener(new OptionActionListener()); + + _envPropertyButton.addActionListener(new EnvPropertyActionListener(_envVarField)); + _envOptionButton.addActionListener(new EnvOptionActionListener(_envVarField)); + } + + private class VarComboActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + _optionButton.setEnabled(((String) _varCombo.getSelectedItem()) + .startsWith("HKEY_")); + } + } + + private class PropertyActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + final int pos = _jvmOptionsTextArea.getCaretPosition(); + final String var = (String) _varCombo.getSelectedItem(); + if (var.startsWith("HKEY_")) { + _jvmOptionsTextArea.insert("-Dreg.key=\"%" + + var + "\\\\...%\"\n", pos); + } else { + _jvmOptionsTextArea.insert("-Dlaunch4j." + var.toLowerCase() + + "=\"%" + var + "%\"\n", pos); + } + } + } + + private class OptionActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + final int pos = _jvmOptionsTextArea.getCaretPosition(); + final String var = (String) _varCombo.getSelectedItem(); + if (var.startsWith("HKEY_")) { + _jvmOptionsTextArea.insert("%" + var + "\\\\...%\n", pos); + } else { + _jvmOptionsTextArea.insert("%" + var + "%\n", pos); + } + } + } + + private abstract class EnvActionListener extends AbstractAcceptListener { + public EnvActionListener(JTextField f, boolean listen) { + super(f, listen); + } + + public void actionPerformed(ActionEvent e) { + final int pos = _jvmOptionsTextArea.getCaretPosition(); + final String var = getText() + .replaceAll("\"", "") + .replaceAll("%", ""); + if (Validator.isEmpty(var)) { + signalViolation(Messages.getString("specifyVar")); + return; + } + add(var, pos); + clear(); + } + + protected abstract void add(String var, int pos); + } + + private class EnvPropertyActionListener extends EnvActionListener { + public EnvPropertyActionListener(JTextField f) { + super(f, true); + } + + protected void add(String var, int pos) { + final String prop = var + .replaceAll(" ", ".") + .replaceAll("_", ".") + .toLowerCase(); + _jvmOptionsTextArea.insert("-Denv." + prop + "=\"%" + var + + "%\"\n", pos); + } + } + + private class EnvOptionActionListener extends EnvActionListener { + public EnvOptionActionListener(JTextField f) { + super(f, false); + } + + protected void add(String var, int pos) { + _jvmOptionsTextArea.insert("%" + var + "%\n", pos); + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/MainFrame.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/MainFrame.java index a402e7c22..4a2cc8715 100644 --- a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/MainFrame.java +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/MainFrame.java @@ -1,319 +1,358 @@ -/* - launch4j :: Cross-platform Java application wrapper for creating Windows native executables - Copyright (C) 2005 Grzegorz Kowal - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -/* - * Created on 2005-05-09 - */ -package net.sf.launch4j.formimpl; - -import java.awt.BorderLayout; -import java.awt.Dimension; -import java.awt.Toolkit; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; -import java.io.File; - -import javax.swing.ImageIcon; -import javax.swing.JButton; -import javax.swing.JFileChooser; -import javax.swing.JFrame; -import javax.swing.JOptionPane; -import javax.swing.JToolBar; -import javax.swing.UIManager; - -import com.jgoodies.plaf.Options; -import com.jgoodies.plaf.plastic.PlasticXPLookAndFeel; - -import foxtrot.Task; -import foxtrot.Worker; - -import net.sf.launch4j.Builder; -import net.sf.launch4j.BuilderException; -import net.sf.launch4j.ExecException; -import net.sf.launch4j.FileChooserFilter; -import net.sf.launch4j.Log; -import net.sf.launch4j.Main; -import net.sf.launch4j.Util; -import net.sf.launch4j.binding.BindingException; -import net.sf.launch4j.binding.InvariantViolationException; -import net.sf.launch4j.config.Config; -import net.sf.launch4j.config.ConfigPersister; -import net.sf.launch4j.config.ConfigPersisterException; - -/** - * @author Copyright (C) 2005 Grzegorz Kowal - */ -public class MainFrame extends JFrame { - private static MainFrame _instance; - - private final JToolBar _toolBar; - private final JButton _runButton; - private final ConfigFormImpl _configForm; - private final JFileChooser _fileChooser = new JFileChooser(); - private File _outfile; - private boolean _saved = false; - - public static void createInstance() { - try { - Toolkit.getDefaultToolkit().setDynamicLayout(true); - System.setProperty("sun.awt.noerasebackground","true"); - - // JGoodies - Options.setDefaultIconSize(new Dimension(16, 16)); // menu icons - Options.setUseNarrowButtons(false); - Options.setPopupDropShadowEnabled(true); - - UIManager.setLookAndFeel(new PlasticXPLookAndFeel()); - _instance = new MainFrame(); - } catch (Exception e) { - System.err.println(e); - } - } - - public static MainFrame getInstance() { - return _instance; - } - - public MainFrame() { - showConfigName(null); - setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); - addWindowListener(new ExitWindowListener()); - setGlassPane(new GlassPane(this)); - _fileChooser.setFileFilter(new FileChooserFilter("launch4j config files (.xml, .cfg)", - new String[] {".xml", ".cfg"})); - - _toolBar = new JToolBar(); - _toolBar.setFloatable(false); - _toolBar.setRollover(true); - addButton("images/new.png", "New configuration", new NewActionListener()); - addButton("images/open.png", "Open configuration or import 1.x", new OpenActionListener()); - addButton("images/save.png", "Save configuration", new SaveActionListener()); - _toolBar.addSeparator(); - addButton("images/build.png", "Build wrapper", new BuildActionListener()); - _runButton = addButton("images/run.png", "Test wrapper", new RunActionListener()); - setRunEnabled(false); - _toolBar.addSeparator(); - addButton("images/info.png", "About launch4j", new AboutActionListener()); - - _configForm = new ConfigFormImpl(); - getContentPane().setLayout(new BorderLayout()); - getContentPane().add(_toolBar, BorderLayout.NORTH); - getContentPane().add(_configForm, BorderLayout.CENTER); - _configForm.clear(); - pack(); - Dimension scr = Toolkit.getDefaultToolkit().getScreenSize(); - Dimension fr = getSize(); - fr.height += 100; - setBounds((scr.width - fr.width) / 2, (scr.height - fr.height) / 2, fr.width, fr.height); - setVisible(true); - } - - private JButton addButton(String iconPath, String tooltip, ActionListener l) { - ImageIcon icon = new ImageIcon(MainFrame.class.getClassLoader().getResource(iconPath)); - JButton b = new JButton(icon); - b.setToolTipText(tooltip); - b.addActionListener(l); - _toolBar.add(b); - return b; - } - - public void info(String text) { - JOptionPane.showMessageDialog(this, - text, - Main.PROGRAM_NAME, - JOptionPane.INFORMATION_MESSAGE); - } - - public void warn(String text) { - JOptionPane.showMessageDialog(this, - text, - Main.PROGRAM_NAME, - JOptionPane.WARNING_MESSAGE); - } - - public void warn(InvariantViolationException e) { - e.getBinding().markInvalid(); - warn(e.getMessage()); - e.getBinding().markValid(); - } - - private boolean isModified() { - return (!_configForm.isModified()) - || JOptionPane.showConfirmDialog(MainFrame.this, - "Discard changes?", - "Confirm", - JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION; - } - - private boolean save() { - // XXX - try { - _configForm.get(ConfigPersister.getInstance().getConfig()); - if (_fileChooser.showSaveDialog(MainFrame.this) == JOptionPane.YES_OPTION) { - File f = _fileChooser.getSelectedFile(); - if (!f.getPath().endsWith(".xml")) { - f = new File(f.getPath() + ".xml"); - } - ConfigPersister.getInstance().save(f); - _saved = true; - showConfigName(f); - return true; - } - return false; - } catch (InvariantViolationException ex) { - warn(ex); - return false; - } catch (BindingException ex) { - warn(ex.getMessage()); - return false; - } catch (ConfigPersisterException ex) { - warn(ex.getMessage()); - return false; - } - } - - private void showConfigName(File config) { - setTitle(Main.PROGRAM_NAME + " - " + (config != null ? config.getName() : "untitled")); - } - - private void setRunEnabled(boolean enabled) { - if (!enabled) { - _outfile = null; - } - _runButton.setEnabled(enabled); - } - - private class ExitWindowListener extends WindowAdapter { - public void windowClosing(WindowEvent e) { - if (isModified()) { - System.exit(0); - } - } - } - - private class NewActionListener implements ActionListener { - public void actionPerformed(ActionEvent e) { - if (isModified()) { - ConfigPersister.getInstance().createBlank(); - _configForm.put(ConfigPersister.getInstance().getConfig()); - } - _saved = false; - showConfigName(null); - setRunEnabled(false); - } - } - - private class OpenActionListener implements ActionListener { - public void actionPerformed(ActionEvent e) { - try { - if (isModified() - && _fileChooser.showOpenDialog(MainFrame.this) == JOptionPane.YES_OPTION) { - final File f = _fileChooser.getSelectedFile(); - if (f.getPath().endsWith(".xml")) { - ConfigPersister.getInstance().load(f); - _saved = true; - } else { - ConfigPersister.getInstance().loadVersion1(f); - _saved = false; - } - _configForm.put(ConfigPersister.getInstance().getConfig()); - showConfigName(f); - setRunEnabled(false); - } - } catch (ConfigPersisterException ex) { - warn(ex.getMessage()); - } - } - } - - private class SaveActionListener implements ActionListener { - public void actionPerformed(ActionEvent e) { - save(); - } - } - - private class BuildActionListener implements ActionListener { - public void actionPerformed(ActionEvent e) { - final Log log = Log.getSwingLog(_configForm.getLogTextArea()); - try { - if ((!_saved || _configForm.isModified()) - && !save()) { - return; - } - log.clear(); - ConfigPersister.getInstance().getConfig().checkInvariants(); - Builder b = new Builder(log); - _outfile = b.build(); - setRunEnabled(ConfigPersister.getInstance().getConfig().getHeaderType() - == Config.GUI_HEADER); // TODO fix console app test - } catch (InvariantViolationException ex) { - setRunEnabled(false); - ex.setBinding(_configForm.getBinding(ex.getProperty())); // XXX - warn(ex); - } catch (BuilderException ex) { - setRunEnabled(false); - log.append(ex.getMessage()); - } - } - } - - private class RunActionListener implements ActionListener { - public void actionPerformed(ActionEvent e) { - try { - getGlassPane().setVisible(true); - Worker.post(new Task() { - public Object run() throws ExecException { - Log log = Log.getSwingLog(_configForm.getLogTextArea()); - log.clear(); - String path = _outfile.getPath(); - if (Util.WINDOWS_OS) { - log.append("Executing: " + path); - Util.exec(path, log); - } else { - log.append("Jar integrity test, executing: " + path); - Util.exec("java -jar " + path, log); - } - return null; - } - }); - } catch (Exception ex) { - // XXX errors logged by exec - } finally { - getGlassPane().setVisible(false); - } - }; - } - - private class AboutActionListener implements ActionListener { - public void actionPerformed(ActionEvent e) { - info(Main.PROGRAM_DESCRIPTION - + "The following projects are used by launch4j...\n\n" - + "MinGW binutils (http://www.mingw.org/)\n" - + "Commons BeanUtils (http://jakarta.apache.org/commons/beanutils/)\n" - + "Commons Logging (http://jakarta.apache.org/commons/logging/)\n" - + "XStream (http://xstream.codehaus.org/)\n" - + "JGoodies Forms (http://www.jgoodies.com/freeware/forms/)\n" - + "JGoodies Looks (http://www.jgoodies.com/freeware/looks/)\n" - + "Foxtrot (http://foxtrot.sourceforge.net/)\n" - + "Nuvola Icon Theme (http://www.icon-king.com)"); - } - } -} +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on 2005-05-09 + */ +package net.sf.launch4j.formimpl; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.Toolkit; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; +import java.io.File; + +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JFileChooser; +import javax.swing.JFrame; +import javax.swing.JOptionPane; +import javax.swing.JToolBar; +import javax.swing.UIManager; + +import com.jgoodies.looks.Options; +import com.jgoodies.looks.plastic.PlasticXPLookAndFeel; + +import foxtrot.Task; +import foxtrot.Worker; + +import net.sf.launch4j.Builder; +import net.sf.launch4j.BuilderException; +import net.sf.launch4j.ExecException; +import net.sf.launch4j.FileChooserFilter; +import net.sf.launch4j.Log; +import net.sf.launch4j.Main; +import net.sf.launch4j.Util; +import net.sf.launch4j.binding.Binding; +import net.sf.launch4j.binding.BindingException; +import net.sf.launch4j.binding.InvariantViolationException; +import net.sf.launch4j.config.Config; +import net.sf.launch4j.config.ConfigPersister; +import net.sf.launch4j.config.ConfigPersisterException; + +/** + * @author Copyright (C) 2005 Grzegorz Kowal + */ +public class MainFrame extends JFrame { + private static MainFrame _instance; + + private final JToolBar _toolBar; + private final JButton _runButton; + private final ConfigFormImpl _configForm; + private final JFileChooser _fileChooser = new FileChooser(MainFrame.class); + private File _outfile; + private boolean _saved = false; + + public static void createInstance() { + try { + Toolkit.getDefaultToolkit().setDynamicLayout(true); + System.setProperty("sun.awt.noerasebackground","true"); + + // JGoodies + Options.setDefaultIconSize(new Dimension(16, 16)); // menu icons + Options.setUseNarrowButtons(false); + Options.setPopupDropShadowEnabled(true); + + UIManager.setLookAndFeel(new PlasticXPLookAndFeel()); + _instance = new MainFrame(); + } catch (Exception e) { + System.err.println(e); + } + } + + public static MainFrame getInstance() { + return _instance; + } + + public MainFrame() { + showConfigName(null); + setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); + addWindowListener(new MainFrameListener()); + setGlassPane(new GlassPane(this)); + _fileChooser.setFileFilter(new FileChooserFilter( + Messages.getString("MainFrame.config.files"), + new String[] {".xml", ".cfg"})); + + _toolBar = new JToolBar(); + _toolBar.setFloatable(false); + _toolBar.setRollover(true); + addButton("images/new.png", Messages.getString("MainFrame.new.config"), + new NewActionListener()); + addButton("images/open.png", Messages.getString("MainFrame.open.config"), + new OpenActionListener()); + addButton("images/save.png", Messages.getString("MainFrame.save.config"), + new SaveActionListener()); + _toolBar.addSeparator(); + addButton("images/build.png", Messages.getString("MainFrame.build.wrapper"), + new BuildActionListener()); + _runButton = addButton("images/run.png", + Messages.getString("MainFrame.test.wrapper"), + new RunActionListener()); + setRunEnabled(false); + _toolBar.addSeparator(); + addButton("images/info.png", Messages.getString("MainFrame.about.launch4j"), + new AboutActionListener()); + + _configForm = new ConfigFormImpl(); + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(_toolBar, BorderLayout.NORTH); + getContentPane().add(_configForm, BorderLayout.CENTER); + pack(); + Dimension scr = Toolkit.getDefaultToolkit().getScreenSize(); + Dimension fr = getSize(); + fr.width += 25; + fr.height += 100; + setBounds((scr.width - fr.width) / 2, (scr.height - fr.height) / 2, + fr.width, fr.height); + setVisible(true); + } + + private JButton addButton(String iconPath, String tooltip, ActionListener l) { + ImageIcon icon = new ImageIcon(MainFrame.class.getClassLoader() + .getResource(iconPath)); + JButton b = new JButton(icon); + b.setToolTipText(tooltip); + b.addActionListener(l); + _toolBar.add(b); + return b; + } + + public void info(String text) { + JOptionPane.showMessageDialog(this, + text, + Main.getName(), + JOptionPane.INFORMATION_MESSAGE); + } + + public void warn(String text) { + JOptionPane.showMessageDialog(this, + text, + Main.getName(), + JOptionPane.WARNING_MESSAGE); + } + + public void warn(InvariantViolationException e) { + Binding b = e.getBinding(); + if (b != null) { + b.markInvalid(); + } + warn(e.getMessage()); + if (b != null) { + e.getBinding().markValid(); + } + } + + public boolean confirm(String text) { + return JOptionPane.showConfirmDialog(MainFrame.this, + text, + Messages.getString("MainFrame.confirm"), + JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION; + } + + private boolean isModified() { + return (!_configForm.isModified()) + || confirm(Messages.getString("MainFrame.discard.changes")); + } + + private boolean save() { + // XXX + try { + _configForm.get(ConfigPersister.getInstance().getConfig()); + if (_fileChooser.showSaveDialog(MainFrame.this) == JOptionPane.YES_OPTION) { + File f = _fileChooser.getSelectedFile(); + if (!f.getPath().endsWith(".xml")) { + f = new File(f.getPath() + ".xml"); + } + ConfigPersister.getInstance().save(f); + _saved = true; + showConfigName(f); + return true; + } + return false; + } catch (InvariantViolationException ex) { + warn(ex); + return false; + } catch (BindingException ex) { + warn(ex.getMessage()); + return false; + } catch (ConfigPersisterException ex) { + warn(ex.getMessage()); + return false; + } + } + + private void showConfigName(File config) { + setTitle(Main.getName() + " - " + (config != null ? config.getName() + : Messages.getString("MainFrame.untitled"))); + } + + private void setRunEnabled(boolean enabled) { + if (!enabled) { + _outfile = null; + } + _runButton.setEnabled(enabled); + } + + private void clearConfig() { + ConfigPersister.getInstance().createBlank(); + _configForm.clear(ConfigPersister.getInstance().getConfig()); + } + + private class MainFrameListener extends WindowAdapter { + public void windowOpened(WindowEvent e) { + clearConfig(); + } + + public void windowClosing(WindowEvent e) { + if (isModified()) { + System.exit(0); + } + } + } + + private class NewActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + if (isModified()) { + clearConfig(); + } + _saved = false; + showConfigName(null); + setRunEnabled(false); + } + } + + private class OpenActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + try { + if (isModified() && _fileChooser.showOpenDialog(MainFrame.this) + == JOptionPane.YES_OPTION) { + final File f = _fileChooser.getSelectedFile(); + if (f.getPath().endsWith(".xml")) { + ConfigPersister.getInstance().load(f); + _saved = true; + } else { + ConfigPersister.getInstance().loadVersion1(f); + _saved = false; + } + _configForm.put(ConfigPersister.getInstance().getConfig()); + showConfigName(f); + setRunEnabled(false); + } + } catch (ConfigPersisterException ex) { + warn(ex.getMessage()); + } catch (BindingException ex) { + warn(ex.getMessage()); + } + } + } + + private class SaveActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + save(); + } + } + + private class BuildActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + final Log log = Log.getSwingLog(_configForm.getLogTextArea()); + try { + if ((!_saved || _configForm.isModified()) + && !save()) { + return; + } + log.clear(); + ConfigPersister.getInstance().getConfig().checkInvariants(); + Builder b = new Builder(log); + _outfile = b.build(); + setRunEnabled(ConfigPersister.getInstance().getConfig() + .getHeaderType() == Config.GUI_HEADER // TODO fix console app test + && (Util.WINDOWS_OS || !ConfigPersister.getInstance() + .getConfig().isDontWrapJar())); + } catch (InvariantViolationException ex) { + setRunEnabled(false); + ex.setBinding(_configForm.getBinding(ex.getProperty())); + warn(ex); + } catch (BuilderException ex) { + setRunEnabled(false); + log.append(ex.getMessage()); + } + } + } + + private class RunActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + try { + getGlassPane().setVisible(true); + Worker.post(new Task() { + public Object run() throws ExecException { + Log log = Log.getSwingLog(_configForm.getLogTextArea()); + log.clear(); + String path = _outfile.getPath(); + if (Util.WINDOWS_OS) { + log.append(Messages.getString("MainFrame.executing") + path); + Util.exec(new String[] { path }, log); + } else { + log.append(Messages.getString("MainFrame.jar.integrity.test") + + path); + Util.exec(new String[] { "java", "-jar", path }, log); + } + return null; + } + }); + } catch (Exception ex) { + // XXX errors logged by exec + } finally { + getGlassPane().setVisible(false); + } + }; + } + + private class AboutActionListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + info(Main.getDescription()); + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/Messages.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/Messages.java new file mode 100644 index 000000000..5e1c64110 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/Messages.java @@ -0,0 +1,55 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +package net.sf.launch4j.formimpl; + +import java.util.MissingResourceException; +import java.util.ResourceBundle; + +public class Messages { + private static final String BUNDLE_NAME = "net.sf.launch4j.formimpl.messages"; + + private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle + .getBundle(BUNDLE_NAME); + + private Messages() { + } + + public static String getString(String key) { + try { + return RESOURCE_BUNDLE.getString(key); + } catch (MissingResourceException e) { + return '!' + key + '!'; + } + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/MessagesFormImpl.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/MessagesFormImpl.java new file mode 100644 index 000000000..c05d7f047 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/MessagesFormImpl.java @@ -0,0 +1,58 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on Oct 7, 2006 + */ +package net.sf.launch4j.formimpl; + +import net.sf.launch4j.binding.Bindings; +import net.sf.launch4j.config.Msg; +import net.sf.launch4j.form.MessagesForm; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class MessagesFormImpl extends MessagesForm { + + public MessagesFormImpl(Bindings bindings) { + Msg m = new Msg(); + bindings.addOptComponent("messages", Msg.class, _messagesCheck) + .add("messages.startupErr", _startupErrTextArea, m.getStartupErr()) + .add("messages.bundledJreErr", _bundledJreErrTextArea, m.getBundledJreErr()) + .add("messages.jreVersionErr", _jreVersionErrTextArea, m.getJreVersionErr()) + .add("messages.launcherErr", _launcherErrTextArea, m.getLauncherErr()) + .add("messages.instanceAlreadyExistsMsg", _instanceAlreadyExistsMsgTextArea, + m.getInstanceAlreadyExistsMsg()); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/SingleInstanceFormImpl.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/SingleInstanceFormImpl.java new file mode 100644 index 000000000..c916a9184 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/SingleInstanceFormImpl.java @@ -0,0 +1,54 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/** + * Created on 2007-09-22 + */ +package net.sf.launch4j.formimpl; + +import net.sf.launch4j.binding.Bindings; +import net.sf.launch4j.config.SingleInstance; +import net.sf.launch4j.form.SingleInstanceForm; + +/** + * @author Copyright (C) 2007 Grzegorz Kowal + */ +public class SingleInstanceFormImpl extends SingleInstanceForm { + + public SingleInstanceFormImpl(Bindings bindings) { + bindings.addOptComponent("singleInstance", SingleInstance.class, + _singleInstanceCheck) + .add("singleInstance.mutexName", _mutexNameField) + .add("singleInstance.windowTitle", _windowTitleField); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/SplashFormImpl.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/SplashFormImpl.java new file mode 100644 index 000000000..7413d4a21 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/SplashFormImpl.java @@ -0,0 +1,61 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 1, 2006 + */ +package net.sf.launch4j.formimpl; + +import javax.swing.JFileChooser; + +import net.sf.launch4j.FileChooserFilter; +import net.sf.launch4j.binding.Bindings; +import net.sf.launch4j.config.Splash; +import net.sf.launch4j.form.SplashForm; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class SplashFormImpl extends SplashForm { + + public SplashFormImpl(Bindings bindings, JFileChooser fc) { + bindings.addOptComponent("splash", Splash.class, _splashCheck) + .add("splash.file", _splashFileField) + .add("splash.waitForWindow", _waitForWindowCheck, true) + .add("splash.timeout", _timeoutField, "60") + .add("splash.timeoutErr", _timeoutErrCheck, true); + + _splashFileButton.addActionListener(new BrowseActionListener(false, fc, + new FileChooserFilter("Bitmap files (.bmp)", ".bmp"), _splashFileField)); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/VersionInfoFormImpl.java b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/VersionInfoFormImpl.java new file mode 100644 index 000000000..c2f60d1d3 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/VersionInfoFormImpl.java @@ -0,0 +1,63 @@ +/* + Launch4j (http://launch4j.sourceforge.net/) + Cross-platform Java application wrapper for creating Windows native executables. + + Copyright (c) 2004, 2007 Grzegorz Kowal + + 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 the Launch4j 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 OWNER 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. +*/ + +/* + * Created on May 1, 2006 + */ +package net.sf.launch4j.formimpl; + +import javax.swing.JFileChooser; + +import net.sf.launch4j.binding.Bindings; +import net.sf.launch4j.config.VersionInfo; +import net.sf.launch4j.form.VersionInfoForm; + +/** + * @author Copyright (C) 2006 Grzegorz Kowal + */ +public class VersionInfoFormImpl extends VersionInfoForm { + + public VersionInfoFormImpl(Bindings bindings, JFileChooser fc) { + bindings.addOptComponent("versionInfo", VersionInfo.class, _versionInfoCheck) + .add("versionInfo.fileVersion", _fileVersionField) + .add("versionInfo.productVersion", _productVersionField) + .add("versionInfo.fileDescription", _fileDescriptionField) + .add("versionInfo.internalName", _internalNameField) + .add("versionInfo.originalFilename", _originalFilenameField) + .add("versionInfo.productName", _productNameField) + .add("versionInfo.txtFileVersion", _txtFileVersionField) + .add("versionInfo.txtProductVersion", _txtProductVersionField) + .add("versionInfo.companyName", _companyNameField) + .add("versionInfo.copyright", _copyrightField); + } +} diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/messages.properties b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/messages.properties new file mode 100644 index 000000000..53a2442a8 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/messages.properties @@ -0,0 +1,74 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal +# +# 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 the Launch4j 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 OWNER 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. +# + +tab.basic=Basic +tab.classpath=Classpath +tab.header=Header +tab.singleInstance=Single instance +tab.jre=JRE +tab.envVars=Set env. variables +tab.splash=Splash +tab.version=Version Info +tab.messages=Messages + +# Basic +jar=Jar: +jarPath=Jar runtime path: +jarTip=Application jar. +jarPathTip=Optional runtime path of the jar relative to the executable. For example, if the executable launcher and the application jar named calc.exe and calc.jar are in the same directory, it would be: calc.jar. + +# Classpath +specifyClassPath=Specify classpath item to add. +confirmClassPathRemoval=Remove selected classpath items? +noManifest=The selected jar does not have a manifest. + +# JRE +specifyVar=Specify environment variable to add. +otherVar=Other var +jdkPreference.jre.only=Only use public JREs +jdkPreference.prefer.jre=Prefer public JRE, but use JDK runtime if newer +jdkPreference.prefer.jdk=Prefer JDK runtime, but use public JRE if newer +jdkPreference.jdk.only=Only use private JDK runtimes + +MainFrame.config.files=launch4j config files (.xml, .cfg) +MainFrame.new.config=New configuration +MainFrame.open.config=Open configuration or import 1.x +MainFrame.save.config=Save configuration +MainFrame.build.wrapper=Build wrapper +MainFrame.test.wrapper=Test wrapper +MainFrame.about.launch4j=About launch4j +MainFrame.discard.changes=Discard changes? +MainFrame.confirm=Confirm +MainFrame.untitled=untitled +MainFrame.executing=Executing: +MainFrame.jar.integrity.test=Jar integrity test, executing: diff --git a/installer/lib/launch4j/src/net/sf/launch4j/formimpl/messages_es.properties b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/messages_es.properties new file mode 100644 index 000000000..1d2fac25f --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/formimpl/messages_es.properties @@ -0,0 +1,56 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal, Patricio Martínez Ros +# +# 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 the Launch4j 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 OWNER 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. +# + +tab.basic = B\u00E1sico +tab.header = Cabecera +tab.jre = JRE +tab.splash = Pantalla de bienvenida +tab.version = Informaci\u00F3n de la versi\u00F3n + +jar = Jar +jarPath = Ruta del jar +jarTip = Jar de la aplicaci\u00F3n. +jarPathTip = Ruta del jar relativa al ejecutable. Por ejemplo, si el lanzador ejecutable y el jar de la aplicaci\u00F3n, llamados calc.exe y calc.jar respectivamente, est\u00E1n en el mismo directorio, ser\u00EDa\: calc.jar. + +MainFrame.config.files = Ficheros de configuraci\u00F3n de launch4j (.xml, .cfg) +MainFrame.new.config = Nueva configuraci\u00F3n +MainFrame.open.config = Abrir configuraci\u00F3n o importar 1.x +MainFrame.save.config = Guardar configuraci\u00F3n +MainFrame.build.wrapper = Construir el empaquetador +MainFrame.test.wrapper = Comprobar el empaquetador +MainFrame.about.launch4j = Acerca de launch4j +MainFrame.discard.changes = \u00BFDescartar cambios? +MainFrame.confirm = Confirmar +MainFrame.untitled = Sin nombre +MainFrame.executing = Ejecutando\: +MainFrame.jar.integrity.test = Prueba de integridad jar, ejecutando\: diff --git a/installer/lib/launch4j/src/net/sf/launch4j/messages.properties b/installer/lib/launch4j/src/net/sf/launch4j/messages.properties new file mode 100644 index 000000000..cf28d15af --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/messages.properties @@ -0,0 +1,45 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal +# +# 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 the Launch4j 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 OWNER 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. +# + +Main.usage=usage + +Builder.compiling.resources=Compiling resources +Builder.linking=Linking +Builder.wrapping=Wrapping +Builder.success=Successfully created +Builder.generated.resource.file=Generated resource file...\n +Builder.line.has.errors=Line {0} has errors... + +Util.exec.failed=Exec failed +Util.tmpdir=Temporary file directory path (launch4j.tmpdir) cannot contain spaces. +Util.use.double.backslash=Use \\\\ to code Windows paths in fields that don't represent files or paths! diff --git a/installer/lib/launch4j/src/net/sf/launch4j/messages_es.properties b/installer/lib/launch4j/src/net/sf/launch4j/messages_es.properties new file mode 100644 index 000000000..b179d9bd5 --- /dev/null +++ b/installer/lib/launch4j/src/net/sf/launch4j/messages_es.properties @@ -0,0 +1,45 @@ +# +# Launch4j (http://launch4j.sourceforge.net/) +# Cross-platform Java application wrapper for creating Windows native executables. +# +# Copyright (c) 2004, 2007 Grzegorz Kowal, Patricio Martínez Ros +# +# 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 the Launch4j 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 OWNER 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. +# + +Main.usage=Uso + +Builder.compiling.resources=Compilando recursos +Builder.linking=Enlazando +Builder.wrapping=Empaquetando +Builder.success=Creado con \ufffdxito +Builder.generated.resource.file=Fichero de recursos generado...\n +Builder.line.has.errors=Line {0} has errors... + +Util.exec.failed=Fallo en la ejecuci\ufffd +Util.tmpdir=Temporary file directory path (launch4j.tmpdir) cannot contain spaces. +Util.use.double.backslash=Use \\\\ to code Windows paths in fields that don't represent files or paths! \ No newline at end of file diff --git a/installer/lib/launch4j/w32api/MinGW.LICENSE.txt b/installer/lib/launch4j/w32api/MinGW.LICENSE.txt index aea85bd8d..141412dd9 100644 --- a/installer/lib/launch4j/w32api/MinGW.LICENSE.txt +++ b/installer/lib/launch4j/w32api/MinGW.LICENSE.txt @@ -1,25 +1,25 @@ -MinGW - Licensing Terms - -Various pieces distributed with MinGW come with its own copyright and license: - -Basic MinGW runtime - MinGW base runtime package is uncopyrighted and placed in the public domain. - This basically means that you can do what you want with the code. - -w32api - You are free to use, modify and copy this package. - No restrictions are imposed on programs or object files compiled with this library. - You may not restrict the the usage of this library. - You may distribute this library as part of another package or as a modified package - if and only if you do not restrict the usage of the portions consisting - of this (optionally modified) library. - If distributed as a modified package then this file must be included. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty - of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -MinGW profiling code - MinGW profiling code is distributed under the GNU General Public License. - -The development tools such as GCC, GDB, GNU Make, etc all covered by GNU General Public License. +MinGW - Licensing Terms + +Various pieces distributed with MinGW come with its own copyright and license: + +Basic MinGW runtime + MinGW base runtime package is uncopyrighted and placed in the public domain. + This basically means that you can do what you want with the code. + +w32api + You are free to use, modify and copy this package. + No restrictions are imposed on programs or object files compiled with this library. + You may not restrict the the usage of this library. + You may distribute this library as part of another package or as a modified package + if and only if you do not restrict the usage of the portions consisting + of this (optionally modified) library. + If distributed as a modified package then this file must be included. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty + of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +MinGW profiling code + MinGW profiling code is distributed under the GNU General Public License. + +The development tools such as GCC, GDB, GNU Make, etc all covered by GNU General Public License. diff --git a/installer/lib/launch4j/w32api/crt2.o b/installer/lib/launch4j/w32api/crt2.o index 462667056e82e18f461494e459ce085aa92969e3..f81f836cf0029d4af7b7db21e05a85add3ba4627 100644 GIT binary patch delta 799 zcmYk4PiPZC7{zDfZZs4VV`D4EYEmK=dhrjv6hbk0vE(3H5iv`!;Gw0chixml>>Z%s|J|92>AyuL+tI8{-nIP2=8*k@G1sasPR2_D-Z?*) z<`0(4j?*@4I$MbwLVXw?!ZQDLQ;+F5e|6un{wp<$Qg6BzZ|uE{ml57;LOFr(2Mr%5 z+0Ezo1GxpxIrY(+5l6M2SJ4kkI-e^t8o#@~_6}{Ol+Pc)seIzG! z@_&gkPr$Mj0EP2QqqsC$IoXh_O_>_ VpFR}B1g=BarVSNr=IcR5*+A`o5UT++A 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
  • bunwgjl&A7!Ll3srE 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 literal 410156 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

    ~>88nRgISv}3fI8E144os>mXqC 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 literal 654388 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

    p_)-uTF6Pwn@LjH8kk9H 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 diff --git a/installer/lib/launch4j/w32api/libmingw32.a b/installer/lib/launch4j/w32api/libmingw32.a index f342ffaf97a75239e0e0b0858bfff5b0c5564614..d1f7888d8129dbea49e96bfade7b49614dbdc81d 100644 GIT binary patch delta 742 zcmZ2uKFM@~6o;{aiK&I5ndw9&S5+ql2L1~S41#tLEUd)90Ky{Y7#PHS7#Jk>fbhni z3PzYN~U}RwE0gB84(jXu>IZ!}+a)B5t3sAsq@_r5{)@BQa67k7moMH8m z(XodO4>a4dfKhzjj|8r=MbrCS!n0m_>$1Tl7k zEa~J0F`Iw znLaa2&g1@u6mR02n|KPCp;2#a29A0`0e_U36g4rzjL9{V8%3lU6($#o2~XZ25-MVN zpz~?$;m&WccmVMybBfANmJzmN6aZPyC_cGSG;%VVhzHC%bFg)}BE7J5WegFK6pM$6 Vn3-;F5YJ$OrA^b#A0+oM0syh+nvMVf delta 1105 zcmZXTU1-x#6vt26uC!g(c3ZYphfv+R2Oru^*4BtZD-)Crm3<);&Fbv5Xy#~AoG_?R zg2b*cy*?`FiwaI~RAlpmRVK(@6?_v!7!2D-8RE-4H(9UkJaA5a_kT}vll#B97g~%g z?6viV!u^p$eUZBdPWXob+}{D3PaDY}1)$ls3D7YGu;(kyrTJN|dRIU3G;|cZOjma) zFU)bKgo>Vq`~OCGhqw6AI#;K(#{@y}88P7);>90Ip*D!sKAw%o&#&d1EZE&wQrF9lXr5Q;Nd27o zReoQ1jR=KRTF11FkzB>{n6g^RgmrjJ7uEJrE%$p{@v9|mO>r+2lpfgTA5wWRv-Qc+ zO$ql7VAp!?`UO9bpZ1VA;{KF^DdKM;)vR@n3(^3-v=HHu>nd|(1m6s1IJ8Xl2YW2ec&kqeDm)#DIG zbK8q)=Zx7<`Xa^w;XG%U-FlA@K3r=z-FkpqxT`Lm{#~vurjnmAaP15dfKS*@@6{jO*1s7zOgubuLu9DRe{4oL}#*Euxr^wcV|zZco4YEW7$Q zXZlv%t*Y+7}6?!AvVqtq?0KJnw&KOGnOp^7x7(+RHDao&V zfiaZl9wfQu+l-++|G6aB9mN>R3vVF#&4)3D@{*fKuAgNL<%SQD{LV#;p}g`QlGjui zLwW6eB(L9O4CPG)k{h9{C~t;ipu821gYtGb2FlG}A$bRs2j!hm7L?ndJSguzjpV(z zGlp{exg>Yo%^1oDt|0lVFENI4C)5+=!%!ZSk90`>4%!ptZfHxCPd=37(>F4Pa?fs( z&%TQ>l+QzZqWm+oCCV3}JyE^{ZHe-)a1NAzgSJGu56X`6O(;9ce?Zw$z5{KE^4(iW zegNf1`EMvY$QZkVr0^v+hBDb9nf^W-Lpl0dk_Q~i#!w!31Ih6ZW@9KPyn*B)yVw}Y zPu)cFuvs>Sa?*Q99&s@nLwV$9Nlv|zjiH?ORg%Z{*%->t{)lAug=`FE&oLy6*RwH{ zQ}HalwUoaW=ars6Wd4pzbJtQ6u?FC^O0jq1-5c4P`<38>lkt4CPagBl*n7*ci$`UPAIYs3Xc3R!Hvs8XH6Tmk!C7zt6@{z6xbW`FFUMC|`du z$+sTN#!$Zf8j}AyiH)Ir?=2)hJe`f9{0PbbQW#qx8NZzsP^Qi$IqEJ}K)L^=BoDZU z6;O_=kQ{#>E1*26OY)E(vI5FOuOa!F0xO_A{5q18k75OsU9Tf~)XA)X^5~mLPCtzm zPK-u#llBJ7S0c9D=fb#ffkv!pERzTTbV}&!JyeQ|ub|_Ez1j+fAu>#5k zupP?NU|W=5_zKA-4OT$86zYTW%nr#feTx-Pp7kP<(h019QhpmrZ8s~RtiFrn&>5_N z(!86bbC4BKdW>Z4Rjh!rIZJZYoveWJ9HgSCPE_p{#)N#v4g)gtDXD^g)uhUd{?AfA|fO zo3CPpTcEvA{$!KnwgM}lybJ1q^4^n4{`?MBxC6@i{+F`C2fst|*Dq!Tln?JBx$8Zw zfbw^jk^KFAtbp=~>qtI*94nyw!#hbn3w1^Lr*D(|^Xpgv<%?&MeCb|RK>1fF8_L&U zUzGc9BKam<3zYx(5XpC-jZwY}$3yu6v>nQiPGIBgYLanSMwxsa$x)}Vag?KPC3(OZ zY#il*cat37VdE$dI*Q~WZ(!pn4}A>D!`{!vQ67F7$s_J%<0!itZ2VL>2FjzaAbISU z*f`4W=aS4pIZ*bzlVs^)Hjc9V6_Uqy**MA*en_(aHEbN^tX(AMyoZgWoO?FO`5$HD zC{Km5pgiq9l8dip<0wx*mW@B7PjdOuY#ikZs7n#*hElqLq;eV?N2%RTQa_W8A9@=b zZ#|Tx18s-WgKbdOU^|q}b4jkcn~kG9XO-ldDK?JsJlF^21xqBqeg_*zc@dNq<;755 zl$Tvca>H?K9OdOVk-QSF3(BiMLGs#zY#ilv-zItECL2e&@xdfF-OR>O-U{u5@`v}3 z++1PfD7QenqWlTe8|5~r3(C80C3!EL3+2yYKa@MVB=3iPQ2y$*BzMlUag-0=N%9dW z6UxUJ$=xqv<0zlpP4ek4vT>Aqt|$52xojNe^Isyl7kESYm*Yvkd@CDA`Rc_aU;73d zNBKHjOO$VZm*m^eW8*0QbqvY(u4m&vfORN8f_#vPu_==A>)8a#)I&**x|L0!-2V)c z2i(CXjysi29RFgH2R)cgpaA<^fd2`UhuzF39)1Fwcmy09W!G+!Q{h;TK9S_Hx3LM7 z-TO&qKf@+a_N-nCa_=h17k|ViP`>;;lCSP!6DVK% zD9P6=Yy#z*_mO;ilTDy}=ldkzyP8d)`~Z%Dg1-TfN%$Rbf#1L+%G4~$Q6FWKDEDuX z9D5v_L^f1u_RBqg-xQIe-X(A z-(Zs{PrIJv;#1iq$|bk3$!8o#^30dBNt7#2Bze|r*(6G7fuwvpn?$LdOR{=5n?yNu zkfc>$lPH~6k@R-6NtCq@l5AeiCQ+_}c0hT~>qxFSjZLCF@9iWnxPVQf{Q9RzUesWd zC@+D!p}g$vBsZMRCQ)7v^+I{&4J5CDW1+nER+87B!6s4O2-gGU#;Zx*4E0BO>)S}+ zH!+EF^IatGsIW(sDDOUsnB?mZW|Ju2gtDM~`${(XojXascQKnp`2n;S%8#HtAX8(v#`B&STVDU?TD zPx6=(*wpD)llWO*jV1uRvK)p7SA+YdUNS<@v{xya4t=dEx0K zFS?CQp}Yjz0Oe&LCb?miO}+e6Z0eOyCVBN2*%ZoauO)dslpp1d?L*&U!M*Ise3_&xK`_^S?^+ z)aS8jl#6CaF1~|JqddJsa@lEY8s+jYu<2jEkWClg$);BxN>X_rn?^ZsImy8(HjUDN zbE33sB;5zIX_WqLBpYy?!_XcmS6@K#TqqC9uU$iO?MZAJ<+@Lh{Km7`G|F#&h2*7O zHjQ%q4@rLeIyQ~+isMLLbrYLL`Q2HP-+K?6MtQ^8ByajCn@0JA%ShgQADc#b+a}2$ z71;D26^g}1eWlr3FL(RJQnB7DHLI*xT&miR3~G za(n%*k;_w<+i97(n1WpJ!J8XX67oAMUGs#Lg#1>ybJ#cxC3$|c6UoOU&oA{O`Ivwy?xsfK|Da?%&oTt`f zSm^Y6FTP4=toI~6#F$R6$5zPXdM$o5ov~h%TZyBo^jhmcwZBo8t*w%LA({=TetToB z)2XV9uhX#9Xm3Q;h&0d}-9;q(?br@-`(_7zcd|fzk%I49y@9_*ewkI$y!N!*FSSI^c~i~gupQeP7~wNAs2#QX)TBrKS}V3p(x3Ne}D-|A;0Q~X=~ zPGt(d;ZIgZrtn*XE>rMr{!UdA7R=wNO2UHqJ5@=(pnn1?$rm*4DhUh5?^LGXJMuf# zX;`XuyKS>pA`NTIU$9Ezg8l`|6n-1OV3ov$Nbz|JbM-G+rtmvbC7$XrzEysSwD%q=RN@*GXs|$;Zz50PxNz)=yy=s4bWlh-_m4t;xyIj)05F-N? zqr31_v{Gcxy48)ku9Qr5tHKcSpPo#0tIhVh`a#N6w_0jIL1ax-(rheR?w0C3y*nkI z-D~Rx6p79n=%>|^;zOtTl01`0z?ZU+v<&}ayHgVLjh$gRsv~8p)80^<;UcI%gI1Yp zwkztQ&~o#Tsheb~S#84QkO!10_%<6;C1JrJU8e9`6D?Ett%;VY<_c(LRZp3MZUbhk zmeT3wit*zWiDu-I%2cD>I&e@ILnRyS19P*of+7K5Mh+`-RL$lwG6>^xyS1)&L9i*O zQK{>EzTBu(H&rh}BpM~%Pom{|Z?jTAP**Ll)Aim)e3i<8brIvG)3DU*l*$TVora~( zTB~fFNv3fP_7G*gbQ+c-#!#nW=|H#CQ5H?7VJTK4nT9px{^5>UHj&0PEzr+K2}By! zlzQcQ-B=^ixTeurEtzX5&DXTnlqJ>adN0;&B3XwHWu(zWvfhg|nMgu@w82EO-itMt zNJ2jJ)mIMpjk@ccdN0$+`aO7}CV zhosZBepUCWMWP1!uhUiqR!LZ>s&0@-)FMVorfOZ|7cUa<)$Zuwfl9)HVu6<7e@WSG zk*I+&*w951DW0oZMyBvPvMD4mFR~#dR2N$`inJ%SNI5A{1Ct@I04>)VZQUgji5grS zqm&}WbM?tF7tapgx|Ec_JhSCx67wSm!2N5DwVu*CGF6M%KAEajVdO75=CoWZH`>~` z%T&$K%Cu};N4{9y)Eb(W4Ry~KEA?8WAF0!2^M@o7<+iQ^EyI6VRK5rWEi39oq6{hn z`=n|^l`dBywj*jv%V3${2r5scR(f!RvT8n+EWw~hZcEGXU+G+0hX1NHqs!DHB^b`k z>x1wF=9yWnSTeekv<&LpY$25_8BIdV#%1D*r4^%BCKHF%35$I3@SH3_kuM%reSjig z+*rf2FDBk9&kfY8G z7#f-bP*|lhHsn}Q?xoTjFmf$PNUxMl=_OhXcl%@Hd^btUx2Gsj$AelODpNfxSdj@a!1S%`^9%tYZ{63Q4a0b zP(3$sAf6%C#m~nFH)37veE6%{=$V>TCpV0tkh*Zja0%AqkJT`ku&q*ainHO6n3ui>hKFU59|dqngEZYb0QEk<`DCBfIk&O<7KuZitqBwOqCZX3-P z^vYv4NoUYHy_YneFlt`w7>vs#g0KVHI+3(eaPfS8G6@hfC~kWC7YE7 zHT8a1yvW200qS9_{gSJdhCUMuDjFGjK;Av@(lZJIgp{)$fX zB}IlzL0`q_N)}ZT7fO|i9tZJNGAGu2xj_!><2uQFkcr-Xkn=IV!Vfpi1Joc*vSGJr4Q#l5QC!e4XjC#jOU z8^+y`MV-b$rl}=$+8lnu4#qWro?EeH^zkt$P=s`&-a~xB=b-|2G6CH<^OvuZx~E44 z(`i^TTTLZl!PE&V2@4UOpwqY{f0gPiDu>n@KU5O#{$bdytU#KK5m|bI?h9yuny5p|X*xg<0)wK38GH}sEL8o!aFp?^X3+i_x z63LFVnPYUC#ih`_Xt7QoQ1zi{jW$<0O-r#|kU`wnG>b-tSd8w(%_6Odorjx6S`*s^ z&l55KGL_VwW==wL8X4e&s~Q(aq~M2uqa`C$Ta08u0!)HYZk5J0D`n$|DvfJOo4tOe z-qzKMwxz+E&laIvlXW-18_u#;+kmBfWkOJ5kBrlrUpJi?FpI(&%drX(zw zJqne?1tThmJBTzanbQDpjYz{%q!*&oxKwW`Zzt{}(tIh>%`kIl+4w;l8Mp{=L=P%5 za9!l;s5D<=MEiMB#QFKU*vV+r!q-3$$86VDnKJk~qbs1(xC9>D=w2d&uajLP0T*sA zv&8yXX<#+a;cMd+1XG8TrD$EeiYrDPSK>7h8MJ5ol;#;@)m))D53rxv8&pYL(2*4^ z7$spL1_LEAKaPUT;OnAA(`{k)5Me_~;zBh-2PGljoE(D15@}r0(?j?Q*`o1c>DHv? zQCCp4R_w<^NjyWe4OI)Sm~lQlcRWLCb?DOQ;gLMAk;T_HSF{N?GWcS202RsNi9-++ zFhGYxiyXdowcd@b6*;grdbLFo@((say&bIUp>{M6Q!sjJ!)E4rjXc;QdSyfs@=LvH zvt(*Qodb;!YgC!WH88W%q(fySoRdaIWUMR_k&&`UG%zG-4kwHZzNqRcQ}AsDeu_HX zh;)5q3cq#dL8e46u)3*_PyIrk1CuE<6(WJIhk8p*vcL%zA{}u`hy;9<8fsuo@I~`@ zO7ueKjZ(mVMsD1(q0d?xnj_(y^>Y$D!@x_C>Yswc7&Z+~^qUpP+i-hUt zfIQB2ucf16#kx%O;78eq$w#``>ya!>;G6+IPl_mBrUr59q07w0}cp@%8$e)6P82 z*XWBwYj~Qk(U*zV@HDQ8Xd=E&=HS|hCgN*l4z7*N*r1ZCELgiDsV_mW5F#{bL$hREL^XeQ?FN9v_9U#u#0SAX$|F1 zNu_(GeqYTQhhjyOZLR=Y#_*>u5-nr!19|*cZ1k`p3xC(GdLPCjYT{BPBkCLF4p2VI z!hEA4Wped!r>(n&G6lB`bYR+)9t#*5xVYAE z7T_n$uNa3*r*SFn`HAL1s?x2mS9M>+%#q7xN%`iGf$Jca*aah5spwH#A{#U6y+aT$ z)MM9Z9;VE2rB1_AYy~ATe>HMAO7eWOu-q2`xfy<_v^AKQ9L>jb50uw6&LUCMu@7Rw z$e=}4G?g@>uW}z1psks+H$;NZ>M?-S>BxMaqDa7}{ z1$Kxuzf98nya*@on^O?Ma+DdJ5ev+#WX=4EiUiHEi;%%vhH_wXopG~5Q6 z)3U2w|JBWSel$mSd6W6zzBfpcDP!7WF|w>C7*tyoj1iPzin=amBu{OTT#t1zue3;j zTSOOCBuvjqWVzR0sh6|~tdtHn>IYU)36(cW##k(t660+>8-jkmI*oU_=^G%6DjALU z%M^@f^kmecOqFB7cbzV`JBRW17u6<42HXbF@3tF8_|MD{%gcL>UHSHr9JtwnN1Dp* zX47m0nT+Zbnc~wz&GSM}z01?()rbRICFQgR(RyN%1N698M$@1!fXr)yera@p= zM%PKDq>muU)1vdeN$G=$QsaM%kDNS`>-0)Dz;AGPzPc0Jk>8 zVUOn;X;qtO-ijGK6bYCH+o-JQ0lQAalBvX15*A`RP!eoxRo`I*vt&iG)a)IQHKB^7 zk-%FdOC?mhm^rj;PV*H97g>Bg2IY!P z!LhM>3-2p>ym(4P6?g z$7Tuk?;g-U+pJvJNKYq&QQCpEQnymA@W^MQTr7c-=Bff#oqZwPz}8#gGaqf6=S?+=7{B3$S|IZQFa&tL(}zF!J6tKSn?xvgYAl?PNx`g z4C7JF++t_5-05TY3?|7M4V#r+Z;P&65pU}6M8mPsJf4cqc8z3-M0EOVEK?@Mj97vu zmdTSqiI}ixY@;*zHj-3h3z>!M`&XH_a26w3JfY`b=_8oZFDqUZ=&<~7Re@4 zt;p9a_YNPMwP99#xhK=g7)^28RgI6^!Z({=J5sUlDs*Wj%;+RBO_K z0ubE*I7~38(N{%pqVw=5l~|W7n#WVRlco=1^xSY8?776ts`GG*65PCb2)ZTuw-wFg z+ek$8c}g-1*PBX8Z(`=sR#BD2cNAHCeRHK)UIWWiGBgox6v^jXYMp4DPG|CMk|#6I z1HhiVSbeoFaI_U|ObeTNV&( zWEJ5_DHoje)KcdcVaj0Zz|ZU2Bv;_JPpS4V;J2xt2U__Vk*yP}aQm~`%?{j)m3H*3 zRV!edq#_p-MUfGR6o2uOi_g38DVIF$g0powB6-D&FF}Q4S~?>K)}DPBv}(P4R*BCU z6(@^l!*;mACGAVw(IZ82i)U?aUO+*3{cnb`D|f@x z;ZpV{e9eBw?$`~pq_)_MU4z@z@qoJ)h!_VBwgQ z?c{oT@YHU+Re% zcz)K2|KH@zi^{VTU;)XS5mywi%Ki-U@RwtLjO`*MKP+WC*~)VNc=}jaG0l+MpWsW! z!GBCmJMp>7#~e@-*n?kdR_m{>!Tr2EhZDm7KQPQ&8Ot<2hV6`Pt3Npy=B-N%$J>pL zCv))|e|wBQg#V|11@>52NPD`R`K&qd5W1t0^xo|3-ub|8!V?fuIDxW{#YWRXP#dW&uuisc~M&V&-+gG;X&H+gzExU4-;A zV4H*K+b!X-@PqBJUu?rO#J?Y(f(zGQZ{~fvARdPSnRp$sEO^}+yB`R(EvC(-1lLJT z%uKt)^{%WnZyh|#xXjTyRpw~=WDc(zmSG$omPh`1NHDA<(T7LG5B~Bfhx8uLgdD88 z=p?A;f4~%i=(7(siA#e0d3I&n`R5fO{&x+B_8{5X=xpZw|*iK4&*lgRf^ zQHshs&%2ShG&>hYEJ`z6kZw)mutSnehg;Z6o$NW{v>@rmvyqW=Ludc<-P zW$^z6HV5DMbQJ7~DCe?~PN+w1sps6NTnv3i-qsSl?erP{o~Q)xrY}?yTfD$l{b=bk z0-HE-$wK06AQ6d(5q3l^^~Z=r@I?AWA}{bZNW_~&vPqoV7f9S`690}!toTMEFYq=< z#JhbgBrXRMcbdeHB8feCOa*+r@#x3`4@@Ff*h*rEw;&KZYMnpANrdN}z{evJslbDi z$RF@x(TO46fkthmmCDGL4OEIq&tf|@#0{O2aiEV zZlY3Ew^2Fk8gB`f8ZS*Im3hX|e}z=?2gUkisYQXU`qAdm5l_a=wA8a9-jYVx5w+AG zG{725Y@b#S=V?=(243g;6mI|=h2BD;3VRs z#=Rnu3T!3OsuSti>IoF3mwVPV-V$br4UNS2a}vov;*n0I0$WM6>cn)1j@F5;@s>d1 z&`A7CPU5O(vmx;H1o#=)I>Y|f5sPcQC6K7D11@aGI^V%bBu|}3I*|%IIEm@5MXeJZ z<1N9X!$IWNA&ta59-Y4^tgG8k{U8x*EXOBWCpz6#psFhFLp9QgE~BQ>G4`@FyC>Z1 z0@o%s=Uc^I@=$quVZA4@^qER}`i*(7%M9WxJ_WW1mf-!hvZ@kGBg4X_Vs;X3wMnMeKPp2gDcXvOZXXU>D#H<6jfO^c@9!>z_aRkQbI$2rHOHA-=an zehTc7uqa2-xPJOt5)MGY!T z9FMbP5*Xe(gl&u006*KA_kDArcevND`ZPMx1?DY~WsNgOCu08;5VbCh$62yS4EG0e z0*6839~FA)eNvw2LtS7iiJ7Alxqk|ZN+-r+D;Xq)*a`N@t zv>cDE1QL(9PJ9cI=+nDixDwySyI#cpDJoHoqxU+;R)R-IY6Se=jz{OsL}CSxS~Ew7%ji&0 z+j-ZE*xyQ`YrG|Rxe>&n=)@b5M8Dqkq6=)*iP>ImQQ;I6rI&keh_|E>mY9PxOfSyw zBZ+>!>qQrMU=p`@*UQpg$9PNdY;$0Tq7&bQB>MHP7hT|iN!;RHFH3tvjAh4l;v0!X z{-jNR#?GxWJsQ;JPqbNQzQ4^nhZxI_llTTAkw4$iClcv_jDwSy{y;|6PYf}Z9VhYi zNTOfwdeH^8T4!5~Ws7&cEbVoSv4nX!_I_fXc{#5`5=Z4-FRH3?UXHAKilJ8VmLnNaA+hKqU6J>ckLx*>MtI!%6h&4Ma%NcHTfF z_fJ7lj;WViV=rOeVj8jPzP~(kxnIpmB(I$xea0e^L_fG*)k6v73FM-6N zk@zZ3qE~MqLK3(01|qS)l|Q-2ub z0Kz}C1z8McJ~a$0n}VRyg07L2Fhb^+VHo!KdLZyXtK`*v_o~2F3bXy!w0{bSx@YJb zNeS~DhDPGc3cYH7ePs=uHNNOWRbVTL**!zCe+r69Cptz_!kZ>Jh?!P7&+NpPB8iQ5 zxzwn7LL$~ZIS)+QVePM(p+@5W#T%k^Ri*1j)jb7Etsz5Pg|}kN1|QM+H!ndhNkMwT zWlytth94P zB|Hhj#$X;#;%^qZ)r~rYRN&(Yhq}OnX+yDp3W(Y+JI7T5iNhlCML;6F76{&g;Sq_l zz=M*=_qUO_;2K>C-W&uc(=O-HiN66PHrwldkthp1D2aT3D~YbrmEg@88i_9i5=#vj zM8grivCgu~A7Guer^^i63 zM)eREoTDsZygV!huLB0_Jzu& z2dS`wGf4Z}7<7)T%q8YK^xL=fn@z9!FSuK8~J! zW7CG^w284w8}13Q6yByWwsMbE@@T_fE$I6`JQ*|V0$VxEoNbeRqlzZcHI}j*?h-&` zW5lZQNuIj|o?Ga&H{e*lP{<3bey>^DP|i-o4I}Rs$I4pl@gCm?^bBnz=85KAU1+u|aEpK^x{wNsmA6uu*)!z(rzk^h zkDVhaK^w}efZy90C;v*Jd8l9aYQC2)u$9Bio}t*^N}^*tWiib6LI8(im#-=`t4)|= zkH_;xBdP)qNFwcTCDAp85`2dU&QM4^j3kPgeEyIqrykn8HkrOdS>Y5ErSEW$b0j5L z=V6h!i6n}L{`y1Www_WfDx3nM?kBp&Q-XCKnoiu{BzpC1SR`pX&xRHITS;_|rv#li zESqAF>+?ubTJ)(Xv)etUz5%Y3oUs=xz|SZIGMiH=c~ z@U|ZgZ03k1&s@Ylkk~^My_t1`bx%I!;aF-CrsK>fi5&bYusQf&R8QCY-?y#Ya3DQCC$An#~N$sM#^nvNW3Lw5Di&CMrIvv(u zB!-#zHM4{Fm0oU~7mFk~TEu1iU@I@fHkI`45?;kt`gUrDEc!L}i*4}u^7G?UaOwK% zWg5Sm#AUVIZmnb5XEx>p`q+ z3W8b>I>uK*)X&afo)JvFQ15M4>Idr3wf4gvW8IS@7^kS8s;aQeMmoEPIOiB~3FGSF zQMn3KZU`)WrqXF#t*ffAly$diOUL+2(3ZpF@&IzV)`6SQ*WpV=;ls z;Za#bDtnz$xjGtDQdKpTGHtQpj?tMwpR37M-I;*46ucWGKDrGvG%2~(AO`vjkRF;s+(eYS{s%k2!>b8F6tYa)EP&qs* zuS6=#{llFR8G}<*HI*`L(Ul>(!*Pp^ViNO!4vGz8+o^d#c}6=$PGzg#ZH$HmFY~Gz zREo5PO6TZK80{dw!=Un6NM)&4uGdF{N~)@+Ql>3bhS<)I>&jo|R5m)Rr4gZ$SJj|W zq%Bm2*v^hqc?D6~T5FC9l~`4iN=jR(bd2pRhWilH=vDp7Joh2~5>P3^;GWDHD(V9B zK1|ju-pucsYQ!Skf_fApj*@Su7!b9#l+ zla8^OK;rO7yaY%TlPmloQ5JYm5;Lb%C=wmxF@eP4k@$;1BE@rkvDV;Ylm#A?L>a(N zxVsgJjxm@(;_yhk7)UHpV9+0(C<{C&iL`%8M^TX&;w~JqSpP5ge4af0#9!bf@?fA( zBvOF~Cov-gs7Q2-yM#Nm?K&~f%(9Ds#G;t+I0AQQ%c`oOw9ZJFYCV#6jlzU?%%o}3 zfg;mSD;#Kg_AWwQV5^4Ad>5hEKgCpQ5*?#3VMh4yG~|Va1J(XUd9^eO&k9gg6$;Ww zXY0ph*NDt=c) zeHCzNJI_7402%b>xo1>ZUVZ!pW-%zEGPq&n`Hy`66aB+3F?NzC*liv3eS)MFLrSWCEH8d1!$ z%XwlgPX-eCd~Q&Re&|H3`GC)8R#g?AL?dnSBsxc0f+x{NWgbuBIfYuk+Guz}WRVJs zmAC4~Oiv>1pQ0Moh{Z9+5@zP`i;$@q^VsOK3$%L#_qg=of}j?F zKEznoTi-4)uHDQIzV+==ofuXA)I^bL_{0j?x_AZ_^bg<996w`);hvGP_5v$Y|wYzl<3Z@4$aRaEQZ zg3y{rR2%L`2HTx#3(n`qsJW;MY~?V!Zzw8kBQeBPoJbsI-|$IDqBqY4MGE;Xvd~Uw z3$pr#ne!d^{wWA*i|iU#3G=?vSRKeBKM@%$RXoy!P*_#_ECy{B8TLc7|iw<;{GWJsxk7CYy2ei3e{D>h4>gb&y0qpLaotmcfDbd7gp6i zi^1$(A>Tg*LS>7cBPU@-173!#IC7p|;bNf%cX{~bF;oS%_6oE8G_-#Th*}#u$4>%@ z!y<8kNc75Mh$L;tV@Ug3Npy~)gz<@u#5{I+4=2$dk0DUBEsr7JKLtW%mtEs0!CQj} z4#h6da|ZpIcMTj-fvt8q+gl^{w~-j)CuxKo(fG+6C($3@HBhuI-!$;tBE{ zyp_UiZHW6@8FY@N%+Jv0%A+qBo8~3zfO$eKV7oi?Tw%iSYi0-U4!zhoFP2bfuf*M< zSEO&3d!#%C=h!cfh3Au>AD@Ct*IzHw`2E-d-jU}GgH%{v0jywFJnw;g3;I`JC&Pkx zZV2w5f}r#oE;`3hf)>Qqm5{~laUL!B7$C6T_lQ6&EdSUD%+!LsvMC7a5wdgiBxpgr z3|S23(SnaIRO;(+EKe*k6?RJoGqoV@pMs#$f{wA1@Lm9Z2{H-H^E9v1fWTUf-cjKP zg;@6ipXQ~iDy*`R&VHKLVu+)tUpy`do143Ln8!9hs!--g`axuo3aeTPORX85gk{Rf zob5&X+ccwd93}J*vF)>La~=jyEtK0BMe&6}URbO=uYDGSnf*gv*%Sm-|8T)Mf)e_N z@+#nWe2kK(e|QQq2*>b;L98);Y-5zn{vlR21wq+ATyTz@g!x_a8sK-Fz&u)TR{?yu zWpAD&M}@^oTM5jz#JsXL1|1_OVT{5rLZ&6oGe&tNFjy^hA++j?Cd9fAI7U%b6=M`5 zojpcb2vHP{Tdd!AM8_y67s}Oo!xtipR9MwY`TK`h*%Za7`-jd^ln_(K%MfFApcyug zD3nVLFj;s!U;2ouz*Y;L8B-P&wvy-?O$l?b5uBlrI8#{ZfsHQ1fY}!kb%CuUX3oKu z`=_9&Ml8-TmEgCrk(g)1^6)~b-}c8YQ(>|4RthuyHhljS1hrjujH-lpit>w)sSWcm zcoH&L_eK*^VYkI#-QG8Jj-doSC^Z3oZ^v`7-!3vnUVv>bOW!UsK3Nvq#Hy{5 z4+HjSb`52r?xgv0=>0aA%r`3FLC4wdN~vF>-FQzDa#nii1m~Y|_zyXC+-TQc%tAkl z%Hg%fh?~mc^~1BO99|PF10GBJX>^<}bL=51WwW+>oTDVcM~$s7LE4U{`)Q!9)SCBY z+(CuK%3FJUnLcXTKLtWL>e%BPCrN6$FrRgo(sX%xd=KRedeq}9;hPBXgTKJs-aur~ z+T+{f7$*s%4t^1aq6dGfQ0mp;vU=hPq{8y*55^!?Hbo7pk?$VYs7UYws;httaa)|{ zE~gWLK{*}D8xCcGt-3JN4=5{~f}*m>&ashTk&(b*^a>wRDDlZNzEDUrePr$PTjY$% zGg=$EMn#sx{4IGE@H?&z^UU9RaDnb!^MygYE08`mi<~)sE8|8xr3Ia%Az^HcS78`h z@IgReyW97sPsj_)5wsDQJvQe1+bpqjG$d$28-sbY;0cA|VUON>M}^&z!AvcP``ZX~ zj)epQhehB|0)caIFi-3-6?QuW&RGd`jf8}rpt=UQu$`XZ@j&1#9K#y|v9SDOv%?l0 zIBO$t-Z4tDG@Bd`hxc)74|Sed)IU)uZmi*5bxRALP>A>?XHiS$bi8hcb4vdTY!56H zbydYQYBM8y9`(Fy)LVyqArb4I)R4zglQ69zPZBx!Rbbc?Mh!_-)e2IkE&9w%L{Df&|;%$e;bL;5tZQ2mihp{lur^GcS}kKL^Nul< z&`;D?0hi(o=IJNi9~o?RTBW8h+7N3za6eI0RrM29+R{&SjIsp(4qln;NM9Z*k47r1 zgry&SMXY&}N=N^Wtg6OR)IG&ut2q$!jsp`oXXS-bTs+wGijBI^5=NP34`jX>26yNw1=d#pCm&yqAE_;2ds==kq zuy7e-Hao5_Ck2=2>GPRO$CwRr2~~|?${T68z=J z78cm*sm#1LTI_G_PdY|!mgeRX?^)S|%Ys(``oLr6J>!^z{$soo{vvVd@N0&#E6qE} zAuIK>pRqg4`^!@|g3N1hJL9f%+zxx=c*p$Z#(6PcY!|r$AMcp2q;Hq#PqxyxQ~gQQ z75l|Dcs}__d(X-^lGtg~`<+sM6*lyPMyyeCtRrKFI#AnC3{GsA zXUDnxf#Py>`k46UjflFm_AzH&BR=5{i8OkZpFK~+=le)yyHjn!5&iICqUjX{wnls` zcSz9wDT8o1JAF1pe9{O@_=biV@%bK-Snb1GVM<`me4!DWY4C`Ts;*X(MwX>t=^F6~ z5y>=;m8Q%y8vicm6JHfmMK_Tr+H#wG%IX??>MRSNjxnFbV9Bj~=CS1e1$=g!l{&m^ z&=WSnlFI@QYRPGTnYV{g&a0Ejl)yhs5t7iFKF=>=lWkz*Z71vxs~oIi1S(Nu#O83Q@l75o{{yJ(to8ZeW(0JlsH&n; zr7cuCMsvcb2ARyJGEZOfTS%pE{z+M2YhTjhpQQa$I+Mabxv`%h21tQZk8T_zGK-7J=b(mBv>rvHp4@5_{ck{J zy|rEygJ{o2(H0#@l}f=(=|IN_%i`iv@YQV5N8F0CuX4(o^%f4E;p3OD=0Uv7^sm59 zg9W9}>Mg32g|lVHm`UJ_S~%7_jKoZ~;_P3Ev(mx;g`Dw9**J5If&`!7)|~B^5Yndn zf7;Vfz5=`*sE$l*PE=KCKb6iN^Da9^M8dQ6hDYU>iONcOqvG`_!|^E-Kq0THiKWP} za2X;f95|`yL}VnlFDB1ShA$D9h^5zDI?nn6F0ra6mXx+o=@>x?ei^&A%;T5&7of7X z)@Y27Uq)3|v1#O3=nPSn9oLy(L^{QNb$-P6u!#nqDJ!a~xy-yJPA;z2w&Z-1~*Sj&YnYHm8PQ6~FMyTgD^l}V z`p=o9f}Qi3(j2`}&STuv>r4xyuF;|J93LyAd2Ib>O-A9UJ~Qh0W)ZaP9LK1!msu7* zo#RAFYagBtphru2e4hV^d{)T05Rv9knH4sLi-aTd0i3hXR#wQ~s{Rh<%vPo%)QVax|Xs!znZ#L9WskD&w)D z3@Ss^5;bMEuFMm){IsMJj^~FB2QLt3Nwxr%TKhb;|45G2aczO2M?Pw}A(=o?MlJWo zBSIM@hTbH$ZZ?T|toEk_iTGX@KS;!yCw=WXdXtft+91?hywhf3DIN#P7FR)49yin>1f(Ls+IMOEvahipPHfl}Efc`3Xto==3Jd7us+t zt?#p0Sc=DbGN=r_Nz@nFHat&n^5c?9IG!IiT=XUzvIPe0P2x*!GJBIt@rX_qiQ#T< zybM+!&{lWh-i-vd*6ZDNiy!NM&E4LzQZ~-wk(mt6!l;F#VdZSUbVSmo{D0bAxPK44 zmHYK()$_=<w7;yT6;>x@6vWYopcyIt<_s_Nm3OlOZ?7M)`*`w~=!yTf$M1+UP4sbujYici|8 z`frKKdb!=;o;jb%biDTl$fW9;Y|0!9ozAhB4e9P`%I>*&j-nb zsz$-&85S-bqc6c1Nor6k#_i0<{Tt$vE6vg1l2_H_Qe;@TbdAM?w-9qMv$)JN+PRZ+ z+1T*R14IQLe6)l6TShyJAzG70*b$wB``4UA>Q#+|hLj!1db3l6Pa5wYA0 zLzS{o<`|U;k!lVZ|Fz>%+>?{X^1dHwTWz*0a2$UuuPE@q`i}2!A#uSm5)()q9*KX+ zN%ZU;hUL}my~B|9w~-j4E*!C#ckqb%ZtegQOFf$6=Z8+jCQ3%C9iuL?s>-{qGqOj? z3(irOFoOcGPK;mGBg_*G{0ro=T(0(dzS!z?E*)o3h^lHVsp=`pQqBKfaE!Sug(sTf zrOBi+&kTy&$BOH{)<&mWZ}n?%OrJHT+Y`-<>Pk2xSr)D79Ek}te1^s6pL0GHo?i3m zHp2&C6xB8GR5=zpLp%ndi)+Or+Sh#FSaD6<)a5mqZZ=(3RdT7*7AjriG0RDv8Rnho zd1raNLhlt+;;+FEdtRiU5f<3$6_QWT$L$L26!;%uF)bXUdzT>|gUz;W{g{Wu_W+5l zM!S3n&g%_{vcOgnvpwaa!YKnC`P8Td$9PP5O9KZsPOKVz=Nad`n@B8GDx)$}966-w zDjjL$SS)sk<8bU^KA+tE$UJ)TU7XH(%QHPm1s+^a;{FyrxyLb%6K0s%^<*9|<)0ym z_*URmUo1A(J?TAn9MOoXY7I$MPk~bPBlkGQbQZ&iCQXkj>zzkG-Ud`QOFdMN{`4bd zfvx({GNR%8TS;_`;sg>oh?)J!JS6@pkl5(AH@qTI7I;t+`TkZC9V0h^#NmQq+|0?mMCO@bw z>H-gFwW-3^{-bMbCfuQrMy#^hNa9v^DBOYswn|NSAUOZ{_2k>^xQnP%3T86yvd1~@ z68eUS#xVMZe+;y>*E*dl+|=)fzQdXi+BcL{l~!1%Eqz1BcuVkdl{X`mjrPW< zP)SwQRLXQVmGh3Vm&Ncb`Yoy4$|C;}&WK!1(9lX7JTq)hOsMmSKviy zm|^+sXY7vMD|mOE{c{a&SH}bH+AFuj@!kTQ>|#72e8iW$H-C|G$>Lyd?uzv768`L3 z`gY1+gZ14nPbNLx95Ge8L(6lyR_8|Ilgb0a4aJ#M2g{sjhkRh6Aq>Fn|EoNII>c&*du9Y{a^ zKBtnV&Y-5jG5ZuhI`*)q`4XnhCDXrvzl?EadJ^y`kYo4^#wo|}4&Yf}8_MB*WArww z9R54Rv#K0kH!QGmPz+ zr}}c^yojA?p)ieh3%xCs^z9P*v6a4^vebF*wSNOqNw1KAa`<7bWvk&gHU?R1w`VpX ziSmsZH2>PnvC!!lM+tAg!mE<7@`}zpI`j3CPI$9~&t$qiACx#WUZP=SSh#eItpqNI z$K~sY%Mp1i8)6uFE1QvF;nFo06UN~@|z8-ANe^uz;%GbZ`V+oAq?4n~r~?7If}{x$}k<2GSF z5JH&6V4nFvHvog3M!nxD^;hwjKF4kx=L4zgDobtTSZuX(^d^jKY;@)sZ~qq3S=wl= zcdA~K={O%qR#k&3>Yk!B)jf%`&heWtvKbba*DEgl)|ifdAmUPwY*ac^TkhHC7`+KT zb7V5xmgmuyFOyV`hR>W+X!y)k+CrscBqxlw?NsI&Z@*Mh35WEfcL^gM&XW9HVyS7? zK7Komw`uqhojm&SC4$7p==3JBs*&C#Wmq(%bNnXsCWpo4 zixro?Xh^KN^!#XFP>$YYqZ7vx(iSR1^ah(et_5??1e^XL9I=#t8Tv=k;LS=~F z428-(y~!6zD&fpt^(Gtg_d8&3vXO?O>P~qpGV0H%5-d zVuu(GHv5)zZZ)SoPe1b4kxl`p&ty8raAZ|An4<1ht?3xU3GZm-_{RBFvnKP{@9Tie zMzz|(Bl^K5_$6h52esdPe;bL*u5p{Wr2i*8lSTI=^UT3`0gzbj!!u~ry1SiB5smX`oH@}wi*=$!v!xL2P^QszP zinN7F=V(q+YliW+)|z?xmCq+CSIS_){jlHoi%e=vN3S_hiB&bJq_l-f*I3S6GR7Ee zxuz1wr2C~JCAG@`r@aZ}c|>Jtv)8ZG+kTTN{Xp85pK8>;!1h6k+w!KYu1TlPvk)5M zI=n?CTs!du>0jf79&C2@_)Vv?-sDv^$P{S{l_9P(6e{zK#;=i7!kPWB=3MguOW0I8 z1}^Qp)|r+k>{t7^f68!N#&wn*<2p-oi{S~W;yU2<5PDSkh4NVNU*#n7=acY$zaKPW zttES!M#-M0@ig2}dMm-f-AMpA!@l=DUv(MYhvZQ>ol>aW0Q+dfjtS9h*+b_Ca#fe3#*RNp`|^^ zUO>>WdK{le!(NT7t`-~Z)&c0F71vrD^%kmFpEc}H2{JXW>gUdD_7uTuqS~6-lvUZ> z?sbhN%_e6h1^<)gHcu?+SCHFMx4c?yt>fkPnOE$!<45y)GG*}p1%|KuLH#PLt1;C% z7CIdxNg?J=jV?L@vPYqM0C`6FR{@>nQey>==m(j=mn<;D7Qj;Lk(MS?`bu$aft>>X z6^(rVltI3{gLltf*XU93(_{1U>ww?e8RZ`a5=*sevDWEUn{&Rpi$G_x#xy2g>htR=ianHn@t zPjf@^S*fpg;h3YsC$DZ)fr=~(pNIfMKzN_)KB%AoZw%Ds*;q2Lj+GnmIC)B^^aeVRq#hlK_XWq}9u z2+{s2%20cR93wt~#Nm&XYt&Rmn}KNh{_!OKeIz~HBN_eosG=}AMqvq z*%;R1AN2Ij!paNNw^PAe+-?E3F=tBQ0pk8~yt`sqo(wlg`EUHNK&Y&)V@xGHD^*_w zT-uH{Y;p!^>W)X+P|P(#dyvJUoQaMtRA3mNR+f3KkNew5bc~(^yNs=y=uZwbQ>Vd6 zEU)76JR*?_Jh)wk{Zl~HJw(SyNqDn7a+6JBp8LEHA&K28%%bweQ;jvpF&TcePIP;I zkgBRykD~5YE}f$%`x5tw^`VGc-OX@;=<4Iw3}aWCBR#BT+GjswcbMb9v~4i&8r;qp z6=I$o(Oznt7xT@rqTCKgv{$BY7a1X+0o!c#T&p}ImxI8ie4L&)8d4V6;8K#RN6~UV z8MbhAE+bXgN}_WNWg$Ug2d>aoB%W(r>6slQ@nYk=*e+QlUXi|Cg2Y<-cFI=g8M)Mf z#JV@nG%r$Nu@S8lX8Q|yWm6zjBNx}`$zqbh;4jp(74f&YmA`Nm*gMedz)S}E_~kFO zj7q3d7RnY~BO`$_j)qWpQgbRz=R(;5pv-Vev;Q@eQKf8@xyC;B%_i(==-EYe*?x(j z&{g=A_6(mI($;AAFa+XF&rTNDYEv!xj`p{a7@{Mb8wru<0VaBO!yIE&$BON>euw*c zeIZd5*h*sd7=!jt0a1Bj7M-IbVYG|L#)yqrURRx1ArdQiJfBG91>OdUsS^`4iLNn{ zFmoEg$s{q)XtzuxdPO0xyp_W2(Jt!4G^ey2?Jl}TM;4P$G6|#IXb*9#(e4Vc*ITd3 z!LDcH5R1*_m9pAg$H>Rx(tKhZg1)Z*sdKPQe7wP@s9IOogpR&1l zhuv0`m5{PdqtvgpyG>FZo{{ztQEL1uu*blE8O|^&mV%qoX^!!XrSNnn-qKk;Jp9GG z_VBI*>fm)ofL?92)T+R{(0u9XVH3zG2DSwDPZ@K2I#aC53e#vyq@b$%fFa_++dIZ! zL^ERSZI}^{BC+aEA5gp}Y|w}Y58I_csPtuscx=g_%M583U-Ywpy;gOz-sfjzo>}H> z51^=&g|Y?5h)1}KozRGB#7G~|)hhq;SP@|Bmuh_)b@<_X!TKjHvfEwky1LRBn>pEc zu`jqrN|u9H5U)=bou~s{>AYgB*zDD>!mgq>wpbOIw*d7OC95uTU}*moHK}@p3yzVJ zFiQ}*$tE$+EWuv_5)a|~vz8V-ArWgXxx?Qgk?1x{P*qi`NF&3dAzkApA(o66XDAx- za?WLy-{9_t?JnXEi3)7hkl8&+v44t+l;f2J=eS9*)x#q3nMk5%_qVG8TS?6JYt#NI zAZlCf7(EH^6XYr}Qzz!J)t3Q@)n>hnO3@FUh;>ieYPUBK$*L+-Evjy%(lOc+s2m=Z z&)`&+%bmj`LM5-NL8VAr`j3uLnQ%v_oyt5T>`Q^lmEKwhL(YEaO6Whz0$Z)NrT<9# zrzl9(e{_twgb}u##5`8}>72xVw^40*LL$~ZX|)|k*egA%s#1_T!=fQw<1k@_&A}Xo z5AqV?vV91S=#hr(^8yd9A#s0;hTP*As|mK6gP1w4$z!X3k&_5|!!Hu4z=M;B``bu# zjLU?vjGe?hw)$csvC|rj5jH$!46ACGYLU*i)O#FbG(kVwsm!Ave?d~|nSSiFunlyK zM)oOnw9q=10T!+LF+^oJVzItpV*c1L@2k3qNUY)<9*_ErJzn5#kO=$REVXM?CX8Ov zh*k4@^612;aT2@Lb-zfY0uN3i?r$S8L}k(l%dHdh^cgQC63eSFeDOmkViQSQtgW+S zRA!|IFUiD#OC4VC%6*n1ZRsuah{@tqc>PFZU zIoWj1JH~86RGW~K0B*;UpC{>r$!I>4=^WJtGNGzbFnNZBOXmnq@(B~cmJepj&m}J5 z*01u2aLKD`aw#$_Tsp>Z!pLWM`tm8n<*3Y(1WS%pHL;|$g-XYGPO##`qw>juO6+2e zh80hAFSqVpI!1Sbwj3Up=LjxGWD$A|@sAx;9 zYQ%_BhK0)z>)~oJ#@i8%K%OPIEWxx4pRKra1hQ3zsz$KnX$zIkv7VqUhovpgBq~=h z*yA&m?j9muRTE2*Vd2s>+B27o_H2TR!5K3U%O5k}DT_JyTv&Wl?nOck;n&O#zV+pD z329>4m}3ogmi?6=00PrubODtBRXi%)^!>w@_l zjn+!iv97W#e1^CWZ%cun#qaVNdbdUQ0jIj}r%*m#6F2sGD=-g@saGqHC zlLVdU%^MM`9(QD}Y~{(EbB_BYpVAVnx{mwgvFcBhT#i(P)rhU60ZUZY~oeChovtc zFS!K2-l%XHb7`)SkJF+r9V0;DPF${5GwpbuyUrfRxom8B_M`$TFmD0;HR-#5wBN{j zCob-9x$A7sG3FCU93F}Lh(vg%kS`u0?uW#OAi)Rw)Ps=-``bu#jPnE%@hW7GZSv^E zWlkc$dBPK0%}JyJ4^CpnEfexdYjduVo!QW9w2_!+l)aZoXn8#A@;Ut#v$zz_7h&A8Fvs`#pjVWs)ZL!pjQJSD1@ycXVna5Jk6P5UY zeNU+5mKvu?h!z;g*OM{LLXNO!o#Qe=Kg#QX-`lzCdyYutb1eMmGh&UmqaU%VrhcTf zML&k93^sY(8YgBtW2I%SrHPsgZCcs{RPZ|33i zG{NT~(IxcRAMSdeHt0@X-3Xo{$3mxbq$b=Ci+m14dp=6gxmxd*@R%b)C$DaVPLX4w zGem3X?Dg9R>)^@pgGT(lCP(MTV>W!Wx9C*L;QtG3AAEC;Rdo$bY2;aS zrDG%~5K0Z7Wy$jpx{C;{BcaWaAyih^Bvj{F2z89`g!yT9Li5bOcqAv3rhECJKe-m% z=KQp>eSX^fKF63&7?ayc%rhoGnUh%RRhuQ84CJ*ncOH|A>Kd9-l?(grLZ1 zyfJ45<3Hx>?^K3`OV{{MxSKnT-^lz7*OB?dfy>gNYNym+^;%mx&Kr_dRc2ggSh#eI z`z$UmB<2luK*?Y)A3O<}&yPM=C?fotVeCqC{tNDz_Sw(a9pUoG@=lUj(bhFQ@s!A=&x~E{N=36d1 zMsyaJlacT6v=trE$>WXuX~894Wna9JoGvV|!KEZs+h`fz!R-p{6!;&3F-<{g5?v!V z!QX?;%dZ1|Z%0Eul#^KMmREft5o;{D(;Cvv-vbQusv1m+bi!ZU(5Vo8(M+AVIVtE=p_Y5*&pjuD#R?ZK;) zttaz%dmfB*9`NPv9Pl_|VO8yElr1^cqZy0G5%*7lPlVK@6o0i zVgD2em1cB|#f15}`YIT#s(4_Y`ME#I87wvW^=1`Z;hwOFwN7eB>0#7XI&B6y7y?yY zLqi&QmeGxCq-H*8yRQZ{zE#Bf5>)l@!LOMej95R*I4_<*D`LHxzFk5~cGI_0gyNOj zFSfz+$xqr72#yzo7S~!E^;TsbxAkMZjU`P|dIDy{M^pM3%HaPC>QJm$RJC5+qgnEwQlTB=mwp^IJ<>gX{SRn=@#)l&?-?qxd0ae|+cR6-V& zc|7LF0hKjSoOnb(^d@LOSzv2VQ`&o~StO#!_qUQ5VmBPI7-0!ZKFs@OA2?P#w6a?7 z`$VED@PH)J{#Fv5V>k0*79^k(BUbe(@kwN^ead6UiU(V;y)XKZ7Z!guRtn`@Al$CN zPKN)|HpBiY2+DEyl4HzfaXAo(Z95DC9{>c-@#{om1f-Xqg!n)4X?{g2EH5M09)CA_ zY@&d>0Sh0*ewan_J8yJZFV@sU{vcGY$e7d!@M8nXwINN_aXp8CEiHZo}iUM>%9m| zjxm_vq0v{tU{#Gq@_1L%pr^>SM=@@?rbA9Z5=9%j=DfsLiZmzUFk5S8>rMB*AbA33UqPh`4Ri1@V$GA+; zpmsv@^gkygp`B8>3Wpty{wKV)7^@ovRAgoIx#$?R349KZ&vC(LXRTGnF!qS>N!5+; zDYGnmI>vMYpTpy`Ao=XpTcgA$uWpo2k!9i2G2#>W93G!zg3r-;D-Q30%2(jfqa-6) z7Cs%LL4nWV@yR5g)dQu`@qfab9k99){VB67d^$#o!VGgepU1%J{n9x~oAUo@_d@)b zaffxe0e3<8-1o#WA%67eJ?$C1q$uZOU}D-rrEAnE-1oq*fCMi-k0TG2Kay0!gtk$k z5~s77<~((Jn~G&FI>(BV_l<=osp+R;@@|K0|b9$NBuO;Iq`|td>Sce^PZLe99~fpCLN5<9z;?;=rJsB#pj>(0BwXi_l=tSqP0skTMBP&Z!H1P~8X3<6*i_5IR~B_!Sv$H#|%- z%fe?of)w~1s0W&d&wm$uj#h+oMTRpCK4q4L&v*nW@Oi}f{F>r(lp>tKXFS5GvMhYY zBS=|%hC4Z|J$K9g9JaUGm*3SUbRQ@E-r+)>8Pq5J} z^8Hh8b(2qR-{Tk|T3pzhAQ9j9bU%LDiLu@N>Lxxb!1kHhp?6W84&{>fLdHha=+59D ze3IHMtUO z36owTTw7p|g#U^#s89-C>h7RDjxnC_L~Lx^?7M^VJQ4dVz*(!a;g6QX!m8S5X*oHU z7&k1iUGQHqi2J8NsC1lT6elpqFGA)ljXVr~nKM}NiNT7l{Xh&>tPDEFX%?50vF;Ao z73}GNW=_~yye4Sx&K0%?zh-vG&Z1qs*f=koTH3{kokhENMf!FTJ9`FfGt8&5e~B~b zQE#u+!6t+cHdYpc7F!Jar>H??i|1XVF|$bq!>B`#I`WK#{{Njm@pcq<`$|{>RL6+H_vGJi@@d50=_rJ zBmF1~Y}JpJ(J<|wf}-px&O1h10*S*T@&5`EOTLka1>O#c);FlkJH}PQ8&rlz;=Qc6 zdbrc(ZY=D5p%wg}{zg4jU@M7orX;pift>>XrGcjXQ&ghvH9AL7La!0qH_JNb={5c{ zkXS8sHcE{{BhYJ9RaH>Rx?8z)jG-)r(F|fa6fVC&T(0%1zIb-9=7WxAkV{@wlS`42 z9ow6CjHrYsTH>`C4ws)NE_+q5-F{eZta*}4w}>-xiB&bRq_l-f$2d%&60gi~sQf3Q zvRQA93YAz@lS)cksC10X1S*F|<>!dX^6H^cp%SZVQb}nGm5#BRK;`hL{47yfs#HdW zO023$C8e{eoD0z#j$3SeoroYF6dT00Q(p2s*4n7ID)1nGulanCsIQJLo^G^2fjtRQ#dwt!rO}qK`HbdV<2%dy z60;pc1YAeJ^F$i|0a&f}H+pzM{TQ1AX|lll*Pk^LBipM^`&&tLj_)iaNDT9VG>LiU zq4AD9oN0i4=m`OqgyN?VfXu?1ZPQ@yj5MbA0Z1o_h;F%^B<+?qRRe z8;yw7PkJjQdD?34;_XEL3T!Vda9t{^t1Nc4ud@<(s>tJ4c}Nq|vKJ-Z-P$b>#gCqO!Ev>sRV+zsZ#27j3`s-a+{(uzj$| z?RQgF*Q8VDSqOEG?T?4WPxa^t+%UZO{s@C{Ycw@c{FVZPtw zZPDhVA@M%=pq%@M9twU#Bqd%b!YGpM~AM|6yYQ1-;)~$jQ$!AWT`=AwBT@zBB zXCc%v<`ZUfP`4^eo940de@BFtH^7bLGo8+3_X<|kB$Lt>DqZ70;R!%iy_v_i`B6?K zhtd-&`RJPpJh*Q&14S7Hnstl<1uwf@KjtCvBShjV7;mpgD#Fh_=Djb`^7eRKKV(T)AqNV#A0t{wb)8UXq?XtFp3n)5VPW|PYoBH1I81OjvW9 ze$1ZrCic(PkaPQ7V>{sq8+aKqNzCIp{}7V+|Jpn6$3~9pj;|2Mj-8$;XSqaSWGSjv z*nlG=D>_B(WS?b4I?0No2m%3++!LCCy*r-Ll-?7i_uhN&z5QQ#Z|atrhc^(!+=#P3 z0OW8N+_(F|dvD%%b_TS!UU3`=iD-GV=fl&-jj7f{D%%}c>fZU*K2y<2*(2T?KbIld zE4_ zs&S3VbO)5yGjg?@R6#es0e`6Xt3z_f|5jAu=R}h`s;7_W+|ge_7i>}$^sRlSmXl^@ zLvH*rIwW`eFCcMI^a_~RHxd%j@}_@e=8oD_;~;GV(YxjEld>3@bhIJSR59$};!&N_`7*3;uz)ALqw&hn*|-3>oj(45Fz-OjY%=RS%2W%cG@Yc9tIxEXio({x_T>L7;6`hG1jxdU(ENL&N?)&}$Xd7K!9QQ`CjFG@g)a*4g`zG2{z}H*R38`}bJ#x7?xOxa58AnWpu{-*NSFJ6|;~g$i*B1AKg(NX#{*=EJBn~FS6ERdG5*pF`X1vyU zqU}e!=J10ro-x;i>`EIEwYfS>s`QYAhE#g~#uAEyCZZ;kS?N(UmIqFhoBVv9PfCo7 zySKH{^VgQosM%!pb`*%VKyDidE}2S9XRE2ioIt{bxfOW)TOKSRPKlr83)V3nfWM!W zxlcnP`(H^e5A!+9uMe&yjyx0ZYcsOzu@g43-y;DKudVDMc!$0cplHl3hxSqhg2uLa+OmY?{Jj5-hQ5`{B+XHR3wR*Z(Yz%RO~5VTw{6v zRFVj{=BPNv&Jb*I5Q%5n><`_F&9K@2(0#H&yy}^$kY#JK^_SIF!e=s-p){^dUVIJX zTN&5(CuLIMV`HY2TkX_5mJ-fV6Tv4_FKV|tjs8#?L1g+9yw zqA}Nm>QW1lLnfUD0a;4tvS$@TV)gH2-Qmd$mTZWI%&tA*6=StBnDUcMohHR<0c@RE zGxvB%tp05zF^^|m263{&e60P4$7*pr#UNLKNi+1ByMRB`6_}77^=~1A!~V4yjHrk? zPGgM=H=8rwE*r#aE8Bv1^rO;L9i{E>M2zO@F6oIeajkv2U`UMqO-&_yVjNUzw(t^A z-cgV3#r;|tKCx3}k*tR&Wd<)>J@z*GGV9D1e?yT7?lCSB@r2(BiPUGI4yto=Zx*7 z!63BaTaWLG-e4+2{Nt}`D&hadfyh8Xj#MHMB*iV=<|tm&Ny4imqHOd%hD3k!Vx%nS^u7UR!T` zP_^J&D|-}Pu_jbC+2)Y-b|RN#Dl>^zc>^?%^{RLXt-n~Ob^Gkmx?Sq=lxf9wf>x%6 zlcGFLYe>)M7l79JTs(LfPn6duO!j<;C@+pDN#yD_d(9axX5d7YRfaAqM}u!0r&t+! zuJnJAAzx+aW%quKKKP+~Ka+2UDB3>{Bu-(%$!Ky-JXx{fMeyaCdJGWm*vdWvuO^Pe z@g##>#U`!EfEU->=fUbERy(Qf=YYM*wR}FE$i0x;cfy(s+9-;%U8WwB=8}|bXq4(X zB7W1kJ({0I-Uh|-eApWdPh#NR`2jc2PoRJ z>ln)0;A4=}XMPjdTNDR*Zy`VHoziF4Mmb!aQ2}?Ex=NZ)=dE-06Tn&T#wb5JF2sk$ z#hHIT9b=ROG?UjQMMT{5nxAUaq1QQT`^U3x|9TG|t%5C%UT@c)u*fQWxt*@mNXzbm zH(iO520K8s9*?Vtq%{cf@_Ms7RECySqkjwtENDei(dW87I9|96*R|`>ZiN+`D6JC`>aXd*PQ~O9cBkdDIa>gG-66g7(h-SPN+TK)# znK`2})#QxkcfTsU!&E~$X@*aMr7vd;q4EcS%IWOJB0ri$k~6xgWXg z;^KR=#Sjv|8%T_6l}aE{pYWOq%=!~{Edos+? zWZG1dG};D#*0{w~Wzx!jG?zHK;ezgd%U#8*Yc}NT$mPKz5+)&I#FG`9Rb(`!R;BjO zJ0gyEglS#n*-9FWxw`m+n$zZOt$bet24RBgxJFCp6DFfHQE!yTQzSAqn9g>yvXkb9 zx6j02?~&^buV&qY;SoHEVCGVcr7w-&RqY3@XVfFdtY^FrcT`&|dl-J|)=btRyLurU zpqhMgi>cA1IX~rv*P*#SUl@*t=8{@eNR69PUEi^ky5{^W@o2_BR@;colBwOK%#tQF zB(q!~p~G1;nWZ>cVZQaB+M`-B{h6gW-r*)qW|@>4b9M2DRWr+wUN_W+d&P7#I2gt4 zA$eoYw5d9R+usS#$W?06m@^l>W{#AQs^n({l{rq45{-8RmgEVq*xymdQ~r^w)Fcwu zMk36A2{%T#$CyZzC%ig|csxZSSE)%Pu8qVgkhoY3=S56DQJ?UtB+BC{64^>kQ@uWc zG!~;0)CIh2NIslIUL2YF zUL3k1UPawo!Ha=son^e|tF5^vb2Jyg0jH_^Y;yIQPP0OZYdyVJoMV$t(Oi4kI3+qC zfb%M^r-i5CqH`1W^Q?bWp>r4Z^Q?bWp>x?2tYe@OOXS^oG0~SMuBTYf>C=YyR(3DE z8rqCuByC(}rqi4eKGA0D;ph{V(FW;JZ*b-6qUatD@@w+O#YNj~@}$LUE4v@w4Q(aE zNZz>m%Vvtbc$vY`iLGAM4vD?53GTXwv!W-w+!=_ygDcA15}&5UU$@z0Yc9>$n=(V| z4MXU>qUoFu$6LU9%yjBHwykX6slLDX*2-}5mM#VXU{RP`#ZxsAd@>c6H203Y?CbEJ zd5KSX7iFK|-Qr(hwtcg&LWx%)sOO^jEJt@qEVK}GaFmkiepbAv zFt_SGRTIG{Q@!rv+{O=cs!YwVAR@W$i{rlnSb zRHkav*>3jA(}D}9%4+s<|lcRFTos#i6#q&}e7#kW@W2)wFXR5FPsJ5ZI) z1glJ4CwWzQ`F&A8gwdv+sRXRWA>ORS<3RKrY>YzgER_DxlRW#Y* zRb{i+t8VTyRiIAlOOdRGRHFKp)$SZVHRk9aP>F)*59Zbx6-@-6Ox>un)o!e)o+_m_ zLk$_7eo*2QyHYXpsh{Do+37vvdn{jC*+cMy%}zznu|X(a1ELP0uyHQ#99JHcoK_-Q&vb)x2M2 zd?${ed&a%ru0C}f(TF4HUUKheM$q9n*FCk5KDPe;3J}^K4@P2O3H&jx@l4upqE)R7 zpN}+2rZmctUaBY0HusroQkp{*udY94hdkr+El68`xLCmF#nJnLK8!wLk+tAi+cCwq z_d}5=45morszp2d4S)9re7~2CXD|DSjZ^Y>=%3IR~qb% zpYeA%y77YANBm>;;+o;*WgzijGM$fmqi!*rkMl{d$ft3yY4;&zucdOYbQxONC*U{W z*=4qIo9;gnJs+le)J~(_#l6sYy2gVpi`Cx@ckg;W$&2AcjXsVoUZ1P*c(33wAJ4k5 z8N(coQa@XZ;ZZ$d%=P3;ulDSa4al*1wFKFl6d#cA*DH8RIJgrb|Z zr+nF+={0)FuekTCWR94L9=rE5lzkWoTo!#_0?MvVj;{9RgW;e%ANB^LK6DNWG2uBJ z9~X6Z;g?Qrtqk)-F^Rm7VQ&qko?2m9}1q zcZ;j+JO`vMhQ(EwHf!7~j)!v?3LLX9Jtx1!r6<-NR4wv5_$a(V{k&$fVYSgt(8|_w z_8YWbfiCUMT1~p-uKqNtNiVwhYgCh7b?;}QKKj*V)ueBflvYbfa9mtfqz@v3YHMX5 zg`djYS>woPo-`eC1r=1fCRCvg)o-lV;#S+QLLJvfJ}c?#_GYtgabtE?qB;0NYjT;? za;x7zo@Z)0>8alJk@_hhb#~I975U_FIxFV!j2yyi(5!Uwp6accY*4LU3CgRU=PE<( zP9v75F_bp*#ER##SpEz$nop5X0e)ODToZ|>-pcNQSBsl6$^n{IAkVXvpXN*lClJb( zja_@T6!kVvaqQY@&&3+@zWg#oo4lk5%_rA}0BF?xZ>BbhUr1?g1yJ2YWR+YEC_RZw@)_bmKVkTU zfxpvv)O_lZ=hlN_4A+}}5?6T8d?L-Q5vm&rM!9-WVpLpspAQXT^y8M%-jy@Os4%zA zsA?n_<*Gu7(X}!9v|GPmqOO%uT} zp7fs~dFYdh&wM<5eL5LN%_l#`7uwtkp|;V_Xoss3ZKaARLhAFOA&fpD8J%74OEoiQ zAIh(YYIDno+BSkvrZ$wKyl|pkLPMhbGQd$Fx%tAx>{07PAbRh+$sQJXq1~*%=ze6^N z*H(rD6JbOrblIi3Wju8YK_^>JO8F;V@O9*$k4ien2WKk()aI7?v~2{TTs0}pL?}Fh zk5KF>a7TPzFogCN!*Oqh9~^TpiTV5n_)s8HnOx)4v=XFpHKomFCR)I4TQ<6>JTiUb z6h}9CM!Hu<#N(*9R~33S0vltKar8fKwf)T4y! z-cs+~_TEG4pARcK^U+X@LXJ7I^K0~n+T04Dwvk|zts|vA5_&tI2MuBLW0FxlOd@Iz z%CFIDbIXX@Hb0^5q#_}Bb@CdS=VVFd8A9kolF-4TILLd8xMMt@P;G9RP}@cj%2tt5 zoOh6H`bHsyew`w;cVmLp=f zW)!Q#xLI#{hink9<*}mD+zO!L0#F`wm#Z=*I>q&_dD@le+_H4`@k7rJoqe#pl#T+O z*y8t{yG(_t-Dy_u58+nbtn<-cR2bE0s*Jwdgg-v#-menhcVVBG-TN6j(TCt@K5E;9 zJ5frz#IAA8V|QE0yjFHU{AOq?8AkG!)FN>WH7ci(Pkt@jrBQ!6xh7JqxV<4$Eh?F7 z2(7dc9+9aQwL9C5Sv`|StXATedBg_=nO(cw0em;&@`&%Rc*Oh49ucPI_Ag(c=l0xX z>OSrBn+@91eDIbw^b5;q`>3R?KOK#F#jx9-se2a}ae4)6Jo#3Jb)S-l>z0gjgkeJ+ zQ_X32b{o_sA7`oKWPJ~4>ITDE???=6kIct?Kz&anaSt?zQ-)EzaW$E=2AjCnwd~OJ zGD4p5xgY()qQAH?K8(8m%Ul~!n`)e)Z6I_ZcqZ?unp2ikqz(I-fn0 z7}^+ZekZ8pYA(rJiaW3lZ+Wkv^31GQnJ=WNC2y%42rijAOFON1v6RbYeU*EV$4Oqm zb1dSs;_9Oi>s@H0h-`6(tC*zmx+G`VJK>IyxEpvo8W!VTJ^{^O5p~AM)SS!a8b4TV z^!vgcrf$+nF`8sFq(}2L!06#@*vH4iV^;K-JsNGQVbeAcTypi5q&AaWhKzo^3%DFi zVJ+18L@Z7fGn*JQaI?J{=U511u7R`ELeR<7R?@7P@-Fy#HX(H0iFA%eFs<-OUckr3 zOeb?}t~J-$XrN=(mn>}C5^U2Yp zQ8TI)LF+*`<(FB!wz9|I9R|+TO*W)9|3LUtrjFCuX+9tR1~`{xb7#Gz91y;3oZ{SB zxH=|o>P@fLTN%BBJ?N2pzsl$xT-W!Sdp}cGKL`Jd+f%wj^7_=UxHRqeM#HCJNy<;d z@iF^Vt?*c8%_S6;Jq53l*_zp9Y8!tdxaI0WiCehxjqkxq+_Oa=B)|(Htr#&m& z*32$*+xQc~EmJQ_V}k^?b^mR+#r$a4S6@5_CR(0~U?U`;YY&u~*Oas0`~vaV)Ri zTG=D;BUE{wyIeN8glV;zV3n)#q_ro+#rI{DA*_B-u!@jgp1wGZ-fSYCYKG`5% zTiL_#E?6y@TtcFKoh;{shpq8upB$ZO!1)qOKAH&TBZj;nLIfn(LFZL#b(QqDh zw#rl~fy;`?WngQ6Ab91fJ!wWZlGl)))%&yVOZ{2#WIif@)VOv)h5L|NgpWVGiMd}p@dN=FbEIQ`a z;&Nql2hPp%akWEjKQlDpU4SFb&2rhjpQ+4am3>cth(x&Y`W0FC;tNk}z%~XCmX{<0_T(92?iOaWUT^J`*KuKu`tDnRjmw6RWYp&+9+~W6s zTU^B`(TO0fh0ZS*bdIN!;`r>)smv|WX<7(6*=kX9zWxGY(K0g~$} zov>03uo<&bgz*A5TP<=uISyV@m|Ege{Z3HHRf&?%6n8);g=!WylQD)w^e@f2Ph9NI z=F`#i2tPDtGI-Ro*e< z;Zpm>K<(2-Z*m+Bsi0};6Bd~`e!sE|D-^idNUxtw$JSPcW0(w;@_3@ZzE#tGyd>^{ zV-?%0@4Ix%d+=XniNw`N{31mnUc)$irXmqfm?RNL7wD}zW>}C6ToOL9rs#M{Og>Ru zVqcya;uF6RNnCt(9?vKwBvG9(Nh0MF#qkal^)nJ%HSH#mIOr9Vj2a3ig zCcWju|YFXmg1Kls-2T&MQZ(p19#izjD9mhcMM>W=1=H!?yT?{JVNQggMJ z)Q`s7;PsCodh{)VM5$#&M4}R3RwmISz8Dg@+DjsFZ6v}NDu~oF2aAYAl{BtQq9Y$1dYV*(KohVT*s#OKVsnR)Xdz%vUZ`9g>>gb*X0o?hPcd%e-! zv%DBELWqbgF(RADW(_=bb?#Pm@4rt~om02&!_F#pN~@1Q_UC5epSii&#ifP4bIbEHGqZe^`G00+eqmu2 zR>9}$V;P&gfw98N7+X1kvGVsx4qVR|%E9AF>aSo7rFAOFGvCS>O7Cov^}85DIea6UAa^eHn7|KbnBYEI1 zHiq(3w~#z|mW`o2@nk$e`)i1PUrk}rIXjiLNYo8-&iXJaT|g}kHuJKRf@ zufLGwTMuAkDBpe+$$veBjiG$+O(Z`&lZ~PL2=V|DjV+Lj-^n7Bsq;yWxr;?8_r09t ze)q5l<%BZHiTAPy<>U^@1AoXOlm}f$@-q>OP#$^%$*IS%2xZr6NFH%2i%=eU3(1*h zun1-MTS?~5W)aGs50ETf!XlJq$OFn_pF#4tFR%z@f0adNLw-@tgY8hB^l_34uV4|% zMX(*pQ(#+^U-$~iWpx&zTn^~UxoajJm>i&&pVw(D8GIu$qV3KpuF&F zBrkz{q1<#T$xGkGB9xay*->5z*9qm-*O0vSK`cUf{mmpdL*7wtc|XaUuVfL*AAW=6 z)@xXF8(c4xKiMR?BVrNCJD?mW?>?2}&yTR^2;}v>FJ{sEzeDoZFJuwQhjx+N^)42n z{M{8Ke}6BFP(FSG$)`?W5z0Tjo#Zo6R+NAGHpxG~hD9h}Je%Z8Utkf+ze3(nz6SfE z+)k`vo(9OdL=NFMk)HjeV3N0B`Ey=)xip;wSR>2N%p^rjia2ii{!j_v2m31&n3C=BWxVy z$&eS6r`$_&>GfC+5Y#iltUn2Pe@P_g)Cz5>mb~cXk)k{gf_6;_U z@^!eEDBt`p$+w@w#!>$3IFj$($i{yF>rj3KdXR~+DU$IU*#yeegGi3KolT(J_bih8 z9bpqEoX#drd?Crn4`350z&;n?e*)#fx3YMQ~ zLBSkXMxFeV638 z0_APjkh~qXN4et;l6S(rLV5QWNbbCzO`!bc@g(niE1N+102~kHgK#XAzwMBG_&aO@ z<)d(Xl#iWA@`+co36xL6bwj!5JtUufBAY<@9Fz^^3#%kw{1KZ#`SNo}zPgJ|pnUBk zBwsJH36yW%OY-eaHi7b;?~{D*S~h|512_f>{surM;dj6Vegl&zQ?n$;e1uJ++_y<` z{0VFl<%HWve)1AFiE{EcNKUztO``ntEXmJ&fK8&zTt#x~x7Z}gX|N5-8M{dy1?NEd zSvU{M?C~V?x3Wo;#fwSy-peLY9`j<7$DPS0QJ(M-lC#@v66L((NuG2Yn?$+r5|WF) z!6s3jawEy5r?W|v%Wh+nPdkC+=`UrIC|8|A@{CurNtEION$E~DiBdhEWc6+~iE`*5 zNi$-TDD78}ba%5!l(qMhY+lJGQLcgOfby)@kX&~Ln?!leTS=aG5t~H$^-q$#pw1>y zUIb-BdC6NzZaSAuqP!H!h4S*7NL~fULV5M=B(FV-O`^OW?gz@v*OI&u%8&Bqw~)YZ zViM)nyGY(vW|Js?@)eRhp3Npv-gykkyI;p9QSMwKIdX(eqP*`ylD~reP(FAaoBR-b zqkQ=JBp-bUo4osal21ICO`?427Lt2r*(Azm?k4$MhfSh<;aHL{-pVFXzI+MEzuwCx zQNH#)0avniAlR!C0#8k<5nd7b2x6OMuME07nIXMKR=x;C3adG3iM&x3tXo_{9E z3+`Z3C@+F*fbxxJ_6t4RKgu_=^y!u@;C2_$#EicO*X<>hSZeQ;k;J^;u0;K$k2 z-@<+mq$1bpG zl;b``a{pB}jdJ2~Bq!aW^J8s*B*v*};Hm`xYn&Zbu$L{fean?^ZsCCR}lHjPq; zbE34WB%KGaX_Vd_BpYy?!*D%NuDyul*^nQUU%QUv`iHP-lp8)y@*B@!(8`w0;%T6G9#Vu?a<#%UEe(zmu8s&B8lDy#~Y#QYct{{2iy=)rgEt@2N z6tU?)iVB5#ZKcs&FLio_VxiV7HY%)8SgjPx<_cEW=$4AjDy*tC+69%`Xm@JOo>t4` zMyc0otf;L;YNOQMtach&Es~(`wbtr}o|0VOSn0-A@HAf&-vLrwdnmRwq`0;m(?SZg z-CoDg@)T;@O;d|0(1H)%+?bM}Z?AOB6H*fN%~JcYaTrQ+eWM-IW0LEOy_g=8ps!cV z-0&1=tGyb(O>{3*8rDFL%pE9+`dD^&3bn1ec@Zgz`dB7;3bnCIz*DG=Wt^wh`>@dI z^=|(vtyu3$dWbQdUhi8Wlk3&~qiMx@Rc#QoXeiTO-myZ+sV#?6vxKklQ!f@Vk>4>WLJ5S8H|rHS*i6lIFdq2z9VsYDvqn7?3^#0C8emMQ!;e!(h<3$g6;6l(P^Sf=nhRwSP4#;ma9{y|3VA}EXH@? zsd%BNKI>FAYPwJ|)v1VzkpJ{#s#9sS*3}PEraF~k9Wo+IqLSvtqUBDp*44XH;+fr+ zzJMapUIY8IT2y@KG+&Zu5()THH6$&=|GwQRiF#vaSdQCBnQFH-)MmH{=Fgy2rW&oX zx+%2WIAq!;nQBxTa69AyWeUE{i>Z>ZV300T_^pYSDg4$%%T!|pEVC-7OhK~&)#^&= zbYsQ%@rpzvc1vZd-fA8=sI#Gx_11y8Sy@1lfGs=6R($vc} zt>?@2a%EGsB1EEI)a@i%u5~xdwF5PE<#oE&-RNJX6tFH~0$8VEslC=L z8E2AdT!Sq{SuUN1rC4RC)39`)Q*5gmO{Zb0uS7BpYf8PtZ8L8ojcb}t@Xl)Wn>D!W1B((b+HX0p_rH@$j6?K!GnFR&9U+ zU))&3vo9^EtqcV%_N{^B##*ypYpUC0q&JKUSr7^Ms+q@^N!06OQ({B*E9u7xhmgI_ z4d@!09Z*=M6dSUyDECt74d^+TR~LLjN`Z^zqBfg+olwBKVlS3!t>Ej-0^us2=4*73 zP>)xu+pgDo?P5=H7gu3}Wuv*S+Xc8nTSXxO(#_g0Ll{=zB?AO1WT2oJ)k2JJj zUA5fAfw)4f>pvgw+=z93=fhvsM%T2gI=NwVh188Rx=XMgf2>A@3HutVjZULnQ^ug6 zlCioF)KoKW$o`Q$l}f`Jvyl&b$TTz%&HB2a(;Mx0nfj9l8g1?m*pU4Yc~+I)h#x?t zHlRNOSnI2((y%60TAAEv6c1J6a3wW0fW){`wPvH%)YVu4I+u;&L9W<_EEo!0>|aIcjp|yx9?zbk*{Jrhq0$@B0*GHBt=NcF)diK@s6r>XS=o&LaN|m~ zjrjwXo6wI~ru0oPG<^SR4ct93>wsGrTD?{OY4}F^JUkgckyLF|%Y7F>rZ*~^l~T-J zXoXm(4@s*aO>2zbE?>h<1z+mhMeY%^6S$!;6SNrLiHrna({~;+5qwSGE=IDsUhA~5 z`hr$@U!9~Cv`+6OD^KV(ueA-vWfJs8#~!`al!S#&MRi$GPf1v4_U$0jxTa>hvT!G* zp=I-@%U5y*u1oAF6tJ$o5z99vL7zC8RPc52Q`N}x0Bg!?hWU`mjS{r3RRvZ8)jTSF#CX%oaGd?njebadLsudf>QmN8at-69vuXme$F7ZN41qsMTk_YmFbOp}@tMO)wO&XxapogoVV(q=K)D zpGw#SSQG0W77PU}n)X5^alvdF>ohEZsnHF0oyO+wTDPjLkD99&PP|&AHGSvd)grCw z+Xc@PtNvvwX**3#!g3l4@WEA#nL{aYU8IHO0+t zuUu>CV#Rc@1^B4#LEfG_xMBnb@$mz6n__81p@THt0sKZ330UdI61euC=#AM3!=M`d!wsN}) zkDjRJWeUI5Nkjs^%zlYV!h&|_6lAKs)~TQi$T*5p#QSP8)vg&G;&?)K=ICa&rOUV- zbEXwkvbEN0>+H)Eerq0O3cpnzWov<blXfNVF7kh*Iy-Zq21IsMyF{hwg->!qh5y(@!XVz z1+zt=lDJ?*1#t(Fh9z?t0Im^fSc-tVcy%xR(f;i@NZI(#E*BMO#oyH~b;Kuh73cgM@jRah{ zxm1bueYt_vT*KG)7Z9pC94tla`irXv_obXSN1a5*Ku2 z1v5rTSm=X+lBn-TK`QvVc-Hi_Fk6VQAtiC45~G8Xpf?AHV75dWm-O%uzCvEn{%q;1 zNtZ|6L3OqIems=KGsLf^8Zn}MH# zPS;~iADO~$-FT2G(F&|=>f=+pkZWKtg{DFz(DhJjszDYwz(S;BP6?5KuVP(wtO>rj zj;BN`bl%7X>}P2E9UD4bM@OaJPoxg5tm^n)L8cDsND^N>sGFvI@!+gF5G|U%i<(H7 zeh$!aw!2Lo6)V(astZ5L9t=Lxm%SEKVFJetsFU*5QUhyC(y2ig4p(axCc1|kD>}{x zXO8K3${YnDHjpY@9~%up>y?VHH%CQ?^-_iFKTHMll5VuNz3RJcAia)Z_@6|Rqs)S&fB zMeB_b8*;r+!TOaXDO!c=)osCn;Cz3r;_KyYG1f~Ju9sZt)l!3N52YMl>u3vkG<}3a zYS0YdqS(}y9!~s0kga&K#SLK7=>F71qG@z~K*xW@MhhEM_`7b_de9e91D9foxNnp@KzT0< z^~Qyi$<@Q{mTnr#6g)D}hGA2>FJLHeajjd?2F6g}qS@5cXYiG=+|6r*D4k8yw&x!jj5{O)hQZ5tVCM44*94o z)8Aw$s`aih%p1-nlF;}v2JID85*uaM^^RS{m`-kCUP`e6SIPDIf{L}Ez;#BXT3p$< zQfVEX0=80E0@ij4^^D3{ltljOo-C$@N$k^G=HdxJ7hU zMZ)x)#Fo3gm0D3(f#u@idhNg}8llog(ddiyr9^*QkA|S1uTJBWZu$Ypf=b5Y{W1mp z89f-aAXBBj;JZ$jTJ6L5_=~zGh5{Y~=yh6kBm8G-#Paf9V^_X?Oal*F@JLgs)o7R( zK_=riMW*<$Q1iUdQt$9|X*K4+R!KRmL0mmC$N}1Bm9B2osAOsNK)lc@4Z|R?DWl7z z(sF==JOlZ=OJGCvO_!-s?AI<+7`m4t=99ViKPY(+m|1fyg{ve@VzkR_plrD*W_ z6*@hQWwCs4t=lV9DYgYEsPT=FxCK)~%dx;)Or;X)x|kYTHi!9&g9{a3k3qRY!>CL9 zwMKf+ybi4=)GWQgjLR~0B0poLE zfR%n42u9^71&?|c%SM0A)QIK2kYT?TqwLTHhD+C5h1yhSAwwT48*Eo7w%di6V;GNW zY76bnQoD!EGZ-XmTv(gB))Gy*0zTB=j)!C8I-ZJ;c8#e-B0l`JPbrgPL@Ytmr{qbX zL=0Fow$VzyjU?6BLaK0m?;7(F&O%JZ6MFoWJ_34(#h@(QMn}{2CR)e0NM15^75RGQ z-r?Q(m%L)AKF0O*BrYm3*7z$;@-XvJMBy z?F~)*oOOJtlzad5WlGnH{)D+1+=My|mZ(63wohG#f$|3sBye0}G(bJiV=BZty(?`? zd-Yjg@PEe5v2jhHt(UAj;!0?iz~i$f+FDU4!;@OE?v1G_fF}%wWg3rV0l|i<05hdr zbk38D?O%i;gUtg!uS=6$f!jW*(z}R1rhWlf<)_8APOQT1&uKN<@GMr^(QT_%pl*_e zTu>B8Mj%r7#mg?e;NmA;_LPgx)%l3&3YT7n2FI-F3=OP3_b^!1TIrl3A2TXW)~|-` zaD&TQm$%|aifIeyY;ImeLB6NP$9|=)LERHOP`RJahvpa+XmZ6BPzOG-RyW7q#8hx? zrB97YkWife)F+(>mk4f94{H%!lbRY>Za~*;HMUl1U@cg%*gBCu?|gXf9!3M}*rlm~ z;#{`cX>FXxJMU)eDs9a<7eMP<_heL(FQ}U=Q|DY@PS;RSNmwu@XFxqA`GRp2dcy9U z3ycW@U}H+1a{-h{KL!tandVEzQK;nSTwp!|3Y&}MITsj@NP?PD=UhM!Gm7DCD#;g& zW7Cs;=UjlD1Z?}#{ncq&>RSOx&{N^m4zjG~!-BXOo`IDQZT5Dz^ql;1HvYZK@!9z2 zW@nd{mS$!a_b%|c_;EJ=i(q0!{G2kz*!}s^WcqRF={of2@SMP?Q!$tche9eBw zj_ig}Qd?}suEXtWc)(o?a@z@5n1FnlpZ$8fMXAT_j z1=wzEScnxr`Y~e%#;WlAmE4lP&Fh4R9q&6fZe?Dh$hM7fea3Cu7}o~NJ3fa0;~#PT z_;s0tRTd*}BG+@+1}f8&X=vCI1m(x>?;dqBXkd?`u# zF`z#a)?Xwj!LOO4XJeI3#A~wvC%fD@FQ}v~j@j5{*yif=?P8>#1=}1<-);$x%|Cb@ z_KR(V3crs0_%!^w@kabFKc9-kbQqw(`-pkQ`_9;XK|B>p5p$p1&|bb~|{B}$+uZQ`OU ziNPlF>nqIOk?oN9i3pyp!C6h=b=Xzk9z}$n^+JcJbdf5hhC8)rwsmWXmL z8|j33R5kUSBbAGx&B(8{jmkXz=)Wf_!Mo`TmBbd$aHf6CXfpzvIB>~M;%p!>jj*Fy zQ-7351W%-2B=QVzgG78t#7g4azChxRllXT;V%awmd4{(^B0lY7CviEDxZ@;#1WD|| zG!^ji#-k%MJTQq^;4BhDyoH0vuP-b~pW#uhoj=S;g!xYVB9SsYIEj3M7rRXi@s^z@ z@h&8hPnhGAO%xf9_L>uWulTlIW8hcrq-4mX5fqP@~=;WdD&Sv>PKE}`_r>!>rF*_yQadgT5o9UJoXEbViR#Dsb~o5Vcz_Pe9?s;ta>wvTT0 zwkoPLkcPrmZ!hh0jmw03dw5*F3%Haf(q}H+>TOw6h2@s@_R_u(qe-Rhs74Fl8Np2N z_}UmawI5W%bn-I8gVoz||BQM&#AtS&#CH&h2%=Xc@(gE^XpPZu5^)l7drj>cqX{*2 zDzPeVou>u)XA!*om0rf`35i(t0sWDxsG_De(sn9c<28ZG;Zb=9Qb}*y9SJJci-qxp z8mj17w$e3r6Z}5eROa#f{3%c=OrwItCsLKEgA8y<;&67?Ewn4=z#=t-YiXE>8YYfnb(pJEb4RAy;k zh{~iAc2vDPwdc{U zi}0;~{@6pFSzaP6ApUlA4_i}+?=6v^h&>z@WiJ}{PeD*x!)4b9Okj|%ufR+)JrIMp zMf^2h-qgwX&M{s3{0!1N%MwjP#h`P%1z!fkKlolPdecU*gS!-i_>LA=JNU=QAZ+hT zZOk*vA^DVrs<_D;n9DIh9a=o)7U9-CBRl`YKUJN%=ltKKK&i9OUA&Lq*=JCXaRpeSu( zh^?d&mfI%giTJ%0NF155IjX3ljyBTvwql5_42Q}*_VEuRm_>NA+QF*Y7yGC(JfM9P z`)An45L?-K65oO(@)z>>M54&>z$EhhGe``vm7OQ?%|v1y&+Ly)#CNseC#w%_@4etp zFY8?|OUur&mGJzux(~1*``ZKcUfx6``t+_BZp63ot{1U?ib<6H=)LZ-mGB;EX%V(d z;v0#?G9J$-o5(Y~4V#$tu9u~~?h%$i;;=}(1xbWIzep4r9+*VjKg%Y%$5{f2!y@qy zIEh}p>ji&0+j-ZE*guOz=Xgt)1rI^w76HDt)lR$_N%ZSoFFM1SHqq|o76nd0QFyuc zhIk7Hte>#lUhX{p#NS5}{d(7n&hWq_X20uYX|HR%B}D#Gi5;l#{01b^uXnxZ3=d3V z_Pbt|_J$ZsDq%;}Ccd6Xt{0u*%-T6C#*+Q6m!-X~F_!Smb1Jc_otS4_&TEjw zQF+&kDykfpBa5C=QOkJCl54yrP&qs*e-EjwbUH2YbNf+KW7*|1RJx{in#oBORZ~et z&!W;f_7ePz980_>@Y$B1@zqGBUvD7N8P2S=vwAYwZy;J)3b7YLtBfQ> zypoehUOPY9j0Gf#GMrgEXZ5LZ{}d2a@5MRx5=a~xiLc-!di4e(Byl@$AQJm$k?0(I z2_z1U#Fujt$$#vTO{5GDZWGfT-pVFA$6f-7LnHBJQMX$vHmi6*Ur1CL9*{)ZKg%Y% z$6gk~{18Bnt(}->o}Ax_x}9RP>{(f_&G z*`=kWnVB#`ESteR{pH_|ow5h8kcg|~ zsgZArx;31L%a?W`&#Wqaert&PXIaBUM8(Qrm^BPfo9RG=k8U82kar!{wW};mSG~2Vk0q( zbKnMH7$m+V>Q;K|D{JVi@x>mh3}=#PZyAdHQ&5yPF%e0zkQm-H$w9Q*#5|)DUyLNy zTcu*X;t7dZ_T)G)Sr2P}%?w>6{$IQyS{GHiZdBP*uv8W@5m&Kr8QwoYmwXr&@f_s!D^q2A452L?)129JnU#9&t z?4WaeWjQb??*e>pYrMnrqGxtnF#O9CJ4l(u!VktE?VrJ*dt?Q=(EOv{lGX#GfbDXy z%+|L>UL*_$e$DLQ+afPF&I_lO%p~3xd3E}BxqHfaA}iNN?X})UX|*^CPuQ!XiolAI zw!V*L!9A`LEF;j(ZG%C%dWJ7g3-P%`r7xC|bA)9d&@$5g8J5vKq7r&3@-D!)w6p^; z_#9-g>rG#oGK+=JtevgB6uy57f~uF|98n2A8+8|8A;DlC@8Pc@gH$B4?be2{D>%vz z_hsxpAoR|5Oq)x)dzDRi%#VNY{NrqQ8G_(KgDit)r3gghn-}vi&I*)SSkAVFa&#hY7kjrj?r*P;_qfMU!dM%558yjNU>;le ztf(#KMf9gmRv8}97H&Bk;vV-%N@y8ok(j4tcx}{Zm8;%RNSVdLXHsbGC-ePNjG?NJ z-6JW%8p^u>-`lc=zY;YL^=e*?_tF{8rLAJRpfw;4BiIV<^FQh~V)10AJf8@i3AoM)LVXq8xgd<+ZW;4rPH;P!zty zJ?@c|P&*Hc#7!hoO#15&iQAf`SQIz~MAc4oj;Dmt*a+fKY~ltd(W|*(k)-X+4J-D~ zBGEmb5^UnINL=S6dNnsJlC+(2DED~L#D&cKEsl=)gH+jY)_JG7LqUg=28!S6UX7HnXEKYCxQAHJF5skEUEaJR- zq$P|+l=lR_6aDBs{_QSMiEpg)#x{!g37SMoM)lJw)+Yt1uqmcd^q}Y6V=SSyn8je8 zXkRC4s3+lk;ZSARu#8C#?fz}rKLteDgPwPev;?mrg4o}xRCRP75}z5>Tg?Lpd5_c+ z5_N_%Nwj(u<^CxsN}K2&X$kdm7KwT4h2&y`*xtOb6}Fm|;$wiEYE`|QX2ZjAU$+Xi*lX+HQkP}JeoTY!^Y zX`B~SlB2|PrRDVP5?;k-`gW?Fh<*)M%h(_;E2UO*9d`4?LSjynY|61sI%pzWL0jZ>2(V3_1SdZ%E8gS`{#Vk-}Id52c%(doJQz<#c zwGn$b{FfwRVN)t@*^{1gkGq8a3trt}Fn9ctgrqAdl=?3N7L?I0F51wmy8UE?bu>X*%6o*qmss&zNZwF5O6 zGwVlvjAc)@5}l%cs;Hu7HqzD>;+$*5CG@L@N98I|xgoIhnM$XAwJxf{QkFf-TDrzx zg0&nTmj{r`wKhEbHxkxT6jftMMbDzrH5L=793GWbq_W#CmMWt`B^6auDbw~k+%-BA zs2m=Z6{NDg)+~)i%Tg3oQ%Ob7vX$-;n=s=da%uDXJN?d-g*{AEsMy}eo-5h{664Jt+2PGyMg>^zlM5tYrg#;8zNuq1qB|M>>O00^z>QC<4)dNNmp1#DXYRcx6P3QS9yv$)H)$KS zW1aVm_D?a5qV2fs8jA_@p6R;)OWT_F>>^~)pLx$Hv%L8D3$!sPqcXT*Z2m{Se+q)K zc3yUlxP*41x(l$7U@%Wl`u`w<6`y9uE$9pn*iNJZXOS2pE*!A_n)ayrbS^{^shQ|e ztt>K}NuqTutt@Z~in3mIj<_s`d6|*fVYCe|;3RqzZ9$6Y=bA}jR=r%xn2&UEImB9a z-Wr}CRX4h&VzUaT_QS7O&>7C;&}t3k{u$QLIo1+dh#Xm)HO$jOd=ik@srfWo3`mq2 z&Lq+5Nfi61fT;Q^?y;8eyfmU{BQZ~`<%vKdAI}X&(GQ!5B_D8(W>r+-Ni@=SPojII zC3q6EsLbO@JTI#DD)qW2L>4HsSoloaX!Ru0{wbzW_E=nFEMa60zX?{$n5T|DH>!3k zy><(niQaIiGMvewy|pOzx0ARx#8pxWOL%drqH?y?(Rr-lIY?sVkVh0kX88w8Z}Vx} ztsyUL27~T#mEou-!8%6R@gQDx~4~H_tnby$WW1#}4fGB$`d)=cep=}66^ZQ_stwx9C zv4%e%RXZNNU5he{h0mnWZVh>1Qy>&=!@VJ{!Y^(=TSwIz?nee&?Mf3)?MJVA@tk;sP+_|i5+l4!gGUICj$%qB5&yu;oQMd5&L z*-IH_+wifR#I8^FklXJ;d&)p@>PvuSz3d!C32nnnYnaDd^BB%x$tMQIz^^PzX!q6t zgQB(w_EU4RAY)fvcRxD-|Etyaey26<*x>GRt`zJCgYvMzRyoP-e#cpGeW zah_J;VpN5vJpA$)stjk^Lc5=a_D=y(Swr{uNg#1pBrXt%UU>|Wr0sYNY5yz|-J>X> zf09LFp8m-mPNF{^L!f9|9z(u=3WTy=c8;F}Zw(?ilzMrdGw9d2Yv717oLMj1y)|P0 z3=%{9gag)3SR$r8%=pP1C($3@HBhuI-!QH#v>9{h6f~(_Rk{GJ&F=M*hr3z z#5}!}-9Tc?o9C4alvyl%CWUqnHWoIELH8(1sF&qkfbWC{JCFD9XQOJV-s*bvzMq25 za3+WLdYKBGMWTBwC0N5O67yKYGoxy81-u}>v<`V@vGAD`+N~k(pT(eiEMpCmeworbm&#-+vV;lPr*s{i(|o}{2cl5 zX}EafjZ%T%kB;z(JZ~7J%<=+Y0d4WT`|~a6U&Ky@1u<_3?w^97@ER_<$54V5#H%YH zlSB^`QGOH+5bDypcJjkI+(uf-5Y zNu@1!>o89by}4un>H zv4mLm0sAPbsG^Tzq^*6Fg%CwarR}KpQBI9Ym0H~wA`6sRewnf?qrH8Ig-tPxs(t7l zMF}xwybU(Xm?x(Eu&7k5LzRWc^QDcbGMw2)w8oT0fwM?-j;4e$*a*&0NSujQx==@# zpu_A7i8{lXBwEK{%l%VOlsy*rm`d>5WRaMs$MVpq*lYPyFH>f*@R<}^>t()w3WBO$ zc8#ipcZ%|xV6}#M7<>paSo6jbQf9ZsU@fz4=pI7}c2HUZ_}@Q={fXEpuUS}mar$<#KJo%= zb4B`gYK#r`PnN|tMzN0=%k06x9*wRcE!s{RFNfZ5bIE+80v>dn?JgI4McR$GBtf&% zMJG7_jKhD>)NrF+dr^gc7Ny~(o-{SQe0Wy14KE4i0gt8qG`JV`p%}CFJw%~0YTG^T zQIg=J#%nD=+LopJX`rpxocE>QL7BzEXSVpPK5E)O1wzs5*yA22Nm{xvo^_Y9ba`5Q z58@1Z)Z#1Rn+WiOzd*8k(qpYHVMeb5_D?}j_B!^s#z{i2gWrUq*ukHQirpIAR!=;E zlv!T%HdGna40jJX$!4>Kw01v6lIO<9vcZY zGNL$)R^bDqA|E{C3xzb&N0vT+jcge_qiSU5sK{~{za{Sid?&17p7C1`i0IihUl_!v z0_l@gBU{IBSst{LR?s~f68gq?7lvU4PX+>8ot`&sLY`TUU>1S)zA@iFqb7Ebh6F2^ z#b6#Qcv4h2?9qGgD6?BKXtjd4e+Gf>v5-LEun7D~AaD*2=1DzFncWV7b6EsBM?ykN zP~8Jq*j7vML?Ce1Cjv3E{F7A=XV}2m3`XS*Z&|FGVHJ4V8p@1>VLb}FJ!gD4ZL~CC;kA=KHlGv=*numNL5z8*Q()Er&v zUZ(P^o^Q#+c)Up^tI#N+uvCHTvcEzEGHzufw4wAeqZJ?R>`S(=+myk}(- zZVTQ4@ScvD&y1r6{m1wu{3YVn;nxgfSDR0ggDUm2AN|qB^W~`#L`ks|>B(Ytu_1eYWDs1To zjaVcZGsJ>ot{IatL+v-;#r5;(Qi2 zn(OTf-bbJLlut`*K2Iey`TvNaLEwCf;u?4=jh#;SNKY6ui5FZLNNJ6g^~}@j8Pjxn zO{Swyz1!v-8qG_kuyYw=J^bh0&s(BaAEuXxDK1CDOT;m(^mB;{JC`BWv-4d3cnq6g zXhi(3$z6NnRMftDJd;ZISWjqUX4T?(+L%9*RMtnUjfusLvq>7O&72JppPjdv|E=j9 znKot}--cRiva4R6G^PV1CPL>AH5sAM#=W1V_ZiRRaMq1ZLg`_<2uQ)ZNWZj`+#Ob2-r$dR7Isq+o^Po=7e4iGHItW zPh0X^NTqN7Ntxlywq%BXlJ-w&OpDf_G77II|wk@agdVv+SdD9A-B3Q;@}B*vET;#Ks|aQV* z#X}YG;H=keNXI7=RdKbIlouccPSv|{jmRu6Cg(v7y=dKwMmxDxFZ$nr%35>1B0ABY z^`bLuAQdVFGid`|BP@%HOTkyOMH_J|%D&1eYt)+9d4`W)zM7MHp6Or2&VU7F&uUF7 zl%2C>*O*D*jIMB2Ut}xJ{*^c@9{gX(881`@XRc9@;1k@Mv;6`>+LHfIoekwHz}tb! z$i(JEQI+*mX=|T%*)<{(=GGe?m0u<*%cYI7*S!qKStfu&UQ`oHp|EoqA}Fc6<@Uwo z8OiV^;u5j+noGw~U%(|6)x?t0b}C&XD8Vn2O7B2^nSTK)t84Z82>E4HaTS|}#!hF5 zs-#kPRBh%LkxubkogeW%yha0$lodtQTv{Iql-|N+*QiQpVW!fnY-XOC{Qn}AoeGb` z`b?!`3sV+VV=2m>(j8Y^y2e<-sKjh8^F;f;fLw~v1%7Y|qakF52aWd8{wXL5PxrEG zJY{JvIVy1zJRx`oz^0GS4a`g=TGm=U?QzBr@iocEI3 z%z5t@_PWM#Lf@P&ye*ECXUxRs3_|g!e$?rh(_|0Gam<9IQTvSyjn#hcb&mebCr3P9 z>rlsECT=Hw&FtV@_|GuT3#XQ|FDK^0UrpaG(Kqj;Z>M@eXh&S@_FLmx#7{y$=mgKtsKt0KoLdP8d`)j1**TBH2B3t%Priqt$c{bx;5p`P=Z z(j2W(&SQU7ua$O2ouflx9-mA`^VId9F&TxU`pl@~n?4iV6Ep5kVb9?!k*@u6fNK2SLrmG=OZmCZ^CUw7j( zm5!cxSyY9kR@kkjdxR)hORUaqEzUgF@*fnJe%IuV){-#P)woLAsdSAGh4Grai8&N1 zKP{;ojTwG8g~k-*Ds89IHC7a&mf2M1iCTV2QVECjqYeiz5N8Rm0oE3nYwh#Y{v+8} z$F&hdk9@r1hGYUo5w+aw91)rgtx3GT!>F}CDM-Zky7)mNmOSZe&(WHUz0?Mw&VHxO z!jgL&D6}Sr#pNdym%doYbS`tWCe2sc5SD4iQue)Pl-x!u+ZBp=)d=)WqCm4W%ajsN@n3=}k?{VUoYh0cv8}Kf^-0Mq>hr!z1zU zki_m<8)skfheVNK{#zV`M81CpiLMctK;rO7{0Juz-Y4f5iIm~NNyPm#NDNVzRKgOY zcMl3Dx6Rj`r=R>`PGYCB?iY!a;lWA7{WC~(kGcf!HZp4?F;D;HE>2>T+ZaD;XDoR# z>f-3#E_HcPb@xT4t-Y5;_n6DR#9V#h=`cOA4DZl>fh^ub@kyQA>Tik4TB%j%o;jb% zbbR&($fV+$Y)Xxt&P42Gc4h|t;6wlCW@nd{U=qnN0|D_i44e5ONheG!9K5W{$bQl#xvCL%W$Dnq@UZ7uWE+keHWEU&fUkbYQ8 zZsI7zgV)=*e@4BXh};Ac2kP16A@Ti4Vy9B{D{><;JTQrT{|pinksBL{;axS{DB5aj zByp>8W$!}*8|6BUD)a3vA{o!ZP@ys?OGIUClxO1$q-feEQJGEx73di)>V!F*} zW)xS#8B^Jjw~ZD#Na4dxYkx1bV#4Sv+;1^O9bhBLiFat3|eE@G#_ z{}_vD;TYAr4DlGeYTLJudHj>_0ur0`R_PF&*BcULhBHaDd&)(DQ#v|g)~E&7cuaUp z0|#~}{hW6aiN$hxR7Q#;hg4i;BMptc#tw0uRO)iKBlFnFcW^puP0#EkWq5EqiTm5_ zZNw6-Jjkoc!SV!hYe@QOs4 z;Xz5{`)85p8o3E14v)mQ6NyFNNaPvb28qSACZnpI-D5N%vW?`}YUey{#yIsG0kicfK0TY7r zk6$z2+T$*wP$`&+xXT{*xJzgoA{xVJ8~!oS)>><~EAUXiANCGQK4{xe7FE{5I&E(o zy2e|AmmBZQaHzZ$sjRm)Mukc$s-{w=tyIpt#$Li)^jlN8RgL^dKqJfyeod=Mb+TVI z^2u}o`2UEV0pE%T8DoKBvu-2=#BV7qRE{m(Jk66i>mCSD0&K%(w{x= z8d(Wc4v)&WAeHqx_;p8vN-C#+J`) z;g%8G1^-PB(?Wg1n=|hkQwcp3ytWCZ6@wU4*{X-~rm;fzaJSH`bZ~A)-)1$j_fS-! zQmSCdnRAq6DfzZ6{QcjDU$LaEKL7@M9lzdxr83N~ zfQ>`DS4QlgL1KuGq!JdZea`|Tu+>|K@{F9hnUjbfw^8W-0)xD$s-9M9YyWr7IXV)& z)~c3*g+v{l$3Ff(r;>)wprye+`xHMqwyyuSaXWB>H-)-7a`{61BXdGmp)Dt)vs)Ea5YmZu5f@ zhsH}Z427Lb*Vszna(G<6hPWJ&x3VFIvA41r3Okq1v6#^B&a{_#dON?zx%BI;Yyi`? z-pVHS&*<&AMrneD9G-=IH7AkUStC(%Cz_N}VYiU3k()4HYqzHp$M~p>RCYZ^mAUtse};+t+QViTsMtj*N{DWGi2WR2F+{ z-Rfv~%|%f)mP%pg(mk3J=9d^2m%l??j>xlG_!GpUnpjfWPNi!sCyeDyt?QMw%+tqt zDN*Uw6V}KU&+x!wdHMbseH`cLO?a|_qiCzQ^E}z`+eD%#9v~bs$zR?sS}o}1*P}A@ zbN=?H2KoLO47$f{!gwIO_BICdj0d_27;M*Ty>_v;ipTUhcH=l6NEKJr)P}}hSGz}V zLeD0P&OH6?-$FWz8_o50#cMJh#{tPNGv%%eTyITLXd^b(VDEc`>}+yoyris;g`DK<8xGF-M=ZR z9G%u=z28`3+D>JN-VBGzJgvzWNGgTZ@nWU{Yz@}&T4`G;t*7>zZ_%2pr=ciYlkU-* zq~|=0;nib!^N{!(Kw_(1Y2tnLre7m7oJpeny_ZzrESnf&ILJf7pOdJmhxttR^MSRZ#f)tK@;UddlaIt83Qlj#`4 zkww*Din3=}P1hJsct>k0zXOc}x&gSXS1N5hq90s>Us7gx(E6M2pF!fXbKGVw>Hi6H zvgnp%o-r8D0}?Aen1hz4_49;A{M{t$Z#nu$_iJ|HhT;=3oVX1**2PtJ(o|V%@MYHs zPKYbgCAW}*lS)e4sdSFz%q3%tp)S`{VxM%sFr;Kv`Tx{6fjoz(EN*stfTKmKc+(1VTk9>3{ywwt`D z2ALvlr!vHKhC^i@Z~AqTN;tJ2wK=zZz!F|7?Z1@uySAAbah*yJ_fP4Li@46RYg}h( zZZXV|D((Y(B}NJ5slk7hlgQ^M;q87uXhaGndzwbco~H2(+)#WX_E=cr9P8p5hSF5p zt)+9sXHT+~c^zaGtpw!V`o6g*zMj6F@?Aav zPU70id^Tsa&|O(A^j15S?rN)EhTT1}oS4%jtMctkn$>ySP<$eG9xQQI`-*J!XLgXH#VeU-)4m}-rkPS;3Mh`G~67YzZ~qEIb>JiYvD zfX-5}zJf>egG}H{W|-j>z+CIrt0q(WN^xz(PJ{o7M!tVaCtp0lyJxR+^eFi0@$&Nf z0AC3b^Yro$1Bu0IrBH2mDvdc`XvESddrp!)O=GH`-YBkOGp4iKO7}=oGQJsV^1*8I zO_NZ#?|#_JbV40Rg(w=e@ibL-KAq!8Vbl`dAgcw<)6(3Ke3onL9XRHw@X3oCH=sgg z=hHQ!v=n+mL*sMZ;1dt(GoOw219rSD*wU1LJQBc$&FEG7Ekc|1a0V6f4nQ51gE(7>V0@PHm6+CRk@DvywB#3ztAJQ6!d zV!4K08GkII%<#Y@Vu3SATyl-!gnBuf#60!#Gl9fPvFs0pm|6bG@{nh=4RQYz2u0g) z$vIN9n2dkpD4zT9yd_5%QJ&-fXLe|;#+i_>bMbP)M|{b8G&aI$7FJ%IzMTr*qDOcE zwlPOafl3}vMQZTrie+&uSd^b5asj{FV}n^#*VM47-S6HBw;4Dx3uLZoV^)@&qzO?^Th6k*5Y5yz| zUE?jG*3Bj{Pp#V|61}N)ks@9C{Jmkme+q=M)^&}kgt=1nU4W%+S;GcrkcRGfWDUhw zBdiZ>9LkaCc&#Fa@o7~vuk~>M3=&t( z-J>I+w~N=ekJwnv>uM9rL}Hol7xmCFHcQd<|A`Ue0{`jo3~z(P)PV_#MCTYu7&*;Z zv5}akw_73-y{Vbep7FwGQfTk(^8HiHq3G={I!8wqlQWrw-fp~wxK(d=1=#DZS7c|` zvwlcMoy!ZA0-3UOu91($rTIiZ1btoqQ^#PL{zUkd%HCkr3ZS^R&h z&c!F}wxXM@v`eSh+v-*P z#k;oft_JGhbw+?*b+yHXp*z=#ok@Jf(J`DC6pXAeo6ovE+L3e)(NNI_Lu z#t`wK3*E z?DiD9F0QPMO^x*__66ri$#U=t;{EBXuN9qW16}F7YOK)c)~>;(qBnK1%CON^l&tEy z*xpyB{Zq`OY!NQFMoPjcLFC3xVxCcgzXT*6!uMw_EqFpAmRxeDZKT^MK~+>~A`OMz zLORDyLM$0?&QL7mm7L28f56?3y1RfsB+786g|x?##r`QKQuJ3A+~X#pt{xVNPe&3x zd%j&|IFrPTx|$a_1w>U>yGBpK`vkd3wA#cxb@dfMVx>_lp;7e1CSuu>b+y|Yh-6V! zRV|91MWt)BB~Up$Dxb!wES1`aM}$gVRD(*9wznT$qcY)%&}=I6^sp}nDp$H|?G7B$ z4_gWCN15TwT05itNc*Q4NZEdLjk$y#b~cH5YVD_T5__FGgd+SP5zC&ewH z@(gc-MA$#0rgo0Xgx(8Bb{M^vr*INGm36;Jqzn&EBJQ6-Vu;EN$0p`!GhR$2mR6zr z;)hMdYb5JpT{}BQWmdZIl1%Kl)Zq25yhkq5_BLaP%IrLqPv%s%S32O{83`(RQ4K0Z z+D@fwR3`MVQ|VRX9`o4Bi#U}{-X0qXDtS>2Dn;5(rF(=X`NqgFZ;5^?H4l~lhp4PI zOCw?{n^;tnN=nxqm0pj1y z8ZT~)O`);UIqw>?2~llg&es3VV>2(1bi!aXpUHHNY6F>2)Hs-2Vdv64f|HzKBGl!B z)#c|Cm+MK!q;3OkpsF`Urz8J@j-5^*^yqa>jw$D*28Qrb?XYdj~^;=`lz ziGoUOVva^Fo@icf*}8O%?gVQ&JTA`@T#m?-4rnd=8kdx|TTAyyPiR{rm&54uoGYj- zHG89CEwQMvN}LpSE<>y*)e7bwm64|}evaU>2*WabuEm`rkj)YlHHIZm+o^Pq^#p4< zENgi-QMrP_9-pan_Ym=-npg^jolECv&s;Lvvk6rijv|CuzV-b>mxyW)zh-vutuI#^ z=Y>iv$)l`TA(bMA4Up)Z8?wXg11 zZO%Ma^Kp{Sk?|a@^m~qk!p>!g|LlBiewO4C+FqkloA);}xA3&jxyOHky&RUke5~XW z{CcCpWuHrPg?yZLd+8bh3Qyvu+ErDL=XnzMF`Uc#hG#PsP=1i2_z1W#C=2}%qirHhlu+jaS|l>V4Hd{5;NcDFy|WQ2_)iOu=j29*u-T{ zB7bv4k^^c|szVd>eDQ@S+++)K2JoyR`T5s7?^g&%E3EctfqBNo-P zkCe9C#}JjlE1s}>i4l`qjY-R6A7_b5>|T3iA9;ocZ$DZB*U~7#N&Gn? z5vKz5ibS5_ZIH+(1WXu3Nn(h~>^zCPi9{Gw;1`KJ!`mQ{kD{=W7@{)6Au&&z@n<=S zE4{<*iYGP^uTiqi==>ZQ71d}oN<{)o`8LH_*Qm_m;^GW_u0Hmnv1xuYSHSUcAHI}) z4vee&{>|*rb6{sezRnd+nLgjlqRbLr0iVi0Sg*5DpZO~QE)cD&o$1n6rMNamsp^b z=rdy^Y<~)8KRyk2yYWW8v-tOD;;psTZdd$i7h>j+W(MR5&FsWetQx$GPXnhm2T@&4Fq@;sjQhasI54ECB#{6*qN zw=>h91Cw!Y`KC~rwo@76KXhgLXv^If&qL)5Q3*kj(RgFd3dVoT*WW3HolEEVPk5S} z1Kh`NYJhFxVp2txa8n%aI+pHe$QrzXXvN z*6y`jc8%@?2Jzb3TatMg{29(*(I*Cry7U7vSj_O8FT2KY!nh%Q7hp-+Rb>bBv>P7` z40bD(L$##^PdLP~C;QoM^|LCfGK;e8DW*}5w_J9O=qxTLBi~`R6&=yZ@k;v^P3rBz=@ z#F8g1q?^A780JMam=tMy|HV046YL}28Y`7~?Bh=Xm7P`(hobvqA7zFIwU2!NteV<2 zS`%t&f);UT3vuFI$a|)!P|p($8IO{czYgzbRO{K=^W_IU}jb6ZM~Tc zk0b7%0-+cuxz{}!6Jpm{4Ce9noQw>X4%M0me5tFkmSj!0#oElm?sjjh`rQk8=*ImGvu%&rgnLmM~7RzOrbkS=< zU0az{RL!PL+o^Po;{-n?nFJe^c|7JP0F_lRoOnb(>?T-0nc+eGlzjh`rl#uegxF0g zVTqc2n9t4Lf2?q5WwqAxiA0s*0ZF9&vq#Alxour^0_(H^crZ2#S99Qh&@Q5Xk4i zOW4A##^L56@P0rbzH!JK0x`4vgTFt_weH*Ko=gUTb6EuT$7KS6N1wpsfWTRCFR_=3 z^wM0M{}bnvEKp{79tR|FHjBXisEnP!@GJt}1Y0efCo*{7u|mzKXAyX2wX-7l(Z+LHfI zjkO$uBsNyMy-u-);{^TaonU#AaTaLlY-Cg;l@hK^BA>kS?bz7ZLAOH zQxrD_sM6U9b&bn}_9r)>RzmYw&H0LDl4Chu2Gx7=kWL( z7kswYnk5Wlj|iVs+!&uyW#`j1rW5!a9-ooqvr}u15}&-daXy90&Zld{C-6BuKF0)~ zqw`iA-U5}cz@e!mV=6nJuF;^t=kWMslF!P4;^_E4;mrO|vtV?xx3c}~MC-w>PqkHdZbMTU(obLk@({?JIqekJm2Yv@^ex*EA{zy^@ zW5h;yHIhUn1F^Z8xDXR+R1Esl=;q~gZ-lqx%)Av(14eEyf>v$@t7 zB|fpZeSDJ2&S!`Y?L42~AwE||YjnIQuF0oT+4*#i4u$c@9OPm2kN#8eIa;HWR^(75 z?f6tGJD<*RqQK|S`24oybEHNmt+W%Pla$KNr+dUGJY9r<4#R%_hv0Lxo-SHRJY6I; zb~>FSM|0unjVwCzJiYNPLFXY+z5DE4a({YbMHDyI{8TzSq0Z5xKxk(Do`=wHDnhA( z9~nZE75pJt>Dvi)jv$5jW+tI|B1qqmgch6V0QEY8guhJu=rMGsl7jz_7*5^{Rui7k zTsefrjayLCSn1s39zO~-JYH~H`!kRI{JNsE&K;nmVn2(#xP5#Iot@ASLE=C3e)5iL z1pZz@=x9aYS7f-|@Gwc0ozDSARCYd{BS_&%4i2)d1)68f{J$ZerQYE-OupcA>(ll5A}XqGdCIh%O4qp2;y#+a zeP-tBV=o$`8Fj;x9QsL)Jo6)d6{#%tdWV5?Kd8ihx5zMWpJT4|9ALV~{*zo!|00Gn z*k~5{{wa^TiCNqCxJHN;7xpIJ8-VY7x(`3?#Mtg$WfSKL$okCe(7UM4gnaE6hOEz? z#ok3V3o9>7-!9hwS%7UWOW#htiwb9pT^8FI*Wie;%>ES!Y^{(6xBs6wLpJ74&N8P7 zlU^cR8?lGOe?=G+Ch)_3O{_0!A_)w5VHUTT~dvLfdVj@7eRFJ6_tU96rx z3%1$n?I?Nd;Fmaq9<}zGZMcN^!HZ>MFrzMp{Zq`Ktc&NJqcO8d21Bny_d4?Qh5rQ^ zto3@8PQw#hi2TVGpyp7%lSj7+XK+LDiP#=kg8En%RaecT>{(p8#$ZBkm@c<4rP9`_ z`Z-T;_=~{h(gMCW#UuMDGn{E3GkU|ce+r7Cr8w^zZ3!d}kHr5gNG$qBB4&6yBxb!q zW!^Qe65eq;JQBaa3af|PE$+s`))&@-|I^=RrZSvKq8urS*D7MC!GBpn)BY(YQMDS~ zBPgNOh}YLvJLhRN{xgtRDYiF?^+O}jYE(s4P|C7rap@XESqi-w#BwNHexA5o>sEa6 z>|n_U?ad&Uyr?FZLSc>V&AUca!i<)9Z-&F==ZMR01?p};YHlofl1sOUGjfSVHL;|$ zol4g@OrR3)%y6juC!(@ZYmN$)SX7frO53S)jm!iphezdSiOSOIp;4g{i)vCyX*-p! zv6?{T@TmL@QCTdPM}D5C6`4o0?dbQ^y9I7&peSJSskaM?-UPDO9f zN4H;W!%s~AQb$+Z16A5i8THLuv+PDbn%Az(KiRuWQO^#-!>A%?p3G#vq*H0?<^$7 z-G=c%n#4Tgfj&(ndPO0bL97;R6xzo{B86Z!6IHi}cF#FScEapc{5FWnIWg`c&)fl@ z;tX~Vcd=FJjYY)bC%u)DJY8$=;@64(MQkrDa9b*it7_~@PpcAm%E;rKYlJ6^#-J;1 z<1~C+v?b^yWbcwj7_%*YGzM(6P^TMfRi!k9EDyMIk zu$#ktzsbiqq2*3(z2Z@y8?IuC?Uc_tXhKiL4aG;!P6f786xZNWY3y{m$9a;T%is;t zeegUZ+wRtMdR?nKdejA(U`AH_|9j%HUT=3= zB?!fJ;K)9=IvqXgz^74UlhT;lYC~t8qd%byn#pROHt0u*)mryZwNn8nlFytvw?WIY zxF)1pXD8G(<`YJ9P_xQrP4m?9e@BFtHo%SKGo8+T_c9jMB$Lv1DxKp$VFsW~yP3zg z`4LVfhtd-&dGDJtJh*Suf})55&ALW`f|otpKIS3u!$jgLRNh{Z$TPeR5@CP4mwnbb z-V;V=49zCqB}l{r`cYGpO)Tb8&s{>&qE!b_`ZAgUg?bG&Cy(lc}& zG@!QfTV7%K1!s29Z@FTe7cPtJF(>?%_4Mr$e#`ar?Nkr^0dSK2VjEbLpVTpJf6GZM zbXQgjz12>oyV|N_5YiJWF{jDc&nc*ekEU{-6#Re0&Vz5xb6>HImSkd$y-n#H51OA# zj428uF||JvEr%<$A0ld7-Rl2q?>yYyIF18;f*d(^dP383iNeTaBvUf;8o>7=E22V5 zqHJ1LC`wiwMGzi<_uf%x29D&T(v;p4rT5-@?~UonU**hfKWxD)1o7kQ?R_5)!1507 z=I)1?*_qkhgU+ZoK!ct%vByvV*fg=Hc>~)wibvs<6RSlwX*FB@q*C)jc}6yV^MwkP z`daDNnCiFx15&%!t3>Do#_(dbdo|?x4mr1zXV_pU`mA(J@j$4bc}xdcOY?Abt;(HHxUw1c3VFZeMc#(QjogA-@7Jf zcJg{)NBkrn{}o9bPx_;zNE8>mZ1j-}>_AcWu<7}k zJa!CG^hF=hYMm4RiN}e}S%dK}K;q@BmNCej}IL;=7PvvE7ny@b#aNN2pZ8S*LNsczQZ( zdLCof%y*6A0eGW9<3fe>A2kQl%5w*?TP#qrIE%5)|A@Sm{eHi_H$dc4)`7BaN7tF1 z5vw$Y*!ZnZdjRDYHq8^9WHjm|XM_ zmE`&8RV()s9b^d#xaX9X=id_6Hq-C80F&rjTh_ak}x&6BD?|`((kd;a#LL-WA+iU43>VC9q4nO$eDRGs_uC@8CHaQQIBRxSvV9|3_u+(-_PC7o5wzatib7gDOeG&&0=STXs2eOI!8_+4JYS zM)3%|fxZ%;sKhl*yV2-pl%B=0(^|`PB1yhDQVgAc%IWM5#xs`N zIU00waZLj+Tl{oV^FTS?j%@nrjH%`Q6Qpy{AC2Mr(jXIkNO8eSM>*N~4n-;A?PsZ( zpH`lkDo7&wTjzulWe4(|vzGUdIf?LS_NxQz48fKLk$9zcf9M!C!>0Q~r+EY0%bBT= zWi7JSm-SY^&ZK6Ba$Ot0`Kz$#e`JyhUz;+e)M%&V(Qr78CO@Cld{ML6vid{0f=Ks= zDD}O6$hj;>duYv5t00mqK;V@(3XC0@+K>qqu-MeBPxc-0{;tM%`~${YVznCOfM4+P zz9XLRC$UA(@8mvqh{Tva_U{9UFiY}L8V9DtRa(+$@!I1SIm?shNDJ!8m~mjg$LTyO z*E{chexV ztuJ^r z*31GiJ?h^;2K(LX6R4<2LmQ&#c8(BZT)1hU@jl+b_Kjj4UQv&7QKgmEpZzwPoOj71 z#@M~~P6mQ=#uO-VlvCh|_$UvOeolBAUi-JV_ z#-wy2y9FT5)&NEFJBHy#%PYb$+5wBSplcpUZ^6RL}>eaQKCzb{G6%w$^m0}wz;pHu107+QaR zp4N?{N9%^s<1uN)c0aAu98R|KVOnE)K0gPvPN!_(VLDb`UNG}>eEw#@%CqxBB$D$s z+x83>6Hp?HB10F2qQRFFw=ptw+4#Hgr=^~=B112^kF)yVd+y_u-i*m;|16L=h6yK= z@ip;c*@id4N1?0%!UG${hhVSlIGi71keso}Yck-?_4au%I*HNFx$Tzu`DcK=(e-jV z9`RP>_U*7HgA^*j*%mb)ljoA;YzUO3?o_%Cf9cd7%}*n5z3O1v@AUeIspveE-|o#w zJF9y$uDK*lag_!%Zb67pdY&ea<-%v=BQ$0#*H0OQ;&-NDmGMe#LZuDXgx-$_img$g z`vd)LNu##VMvJ%CvPI6_iHnL+gw;EiR&V;KC2qTRbT*+@h)w)w>>>3#hbKZ8uz0E6@#P3|+}WAIt&7zTfw zF_?;VW(+a{x%55;rM<>O>wRWmFw|$>qGo6EI)?l)_!y-0nco2RX4P)lnep#>yY!i* zP!3fmvw&OFyh@%==go8WW58MG=Ahg^sMwdK#hHIT9VL_lH0jsnjEIvTD-OM=LNO*I z@}ot&d!qwGt6)o`*W1vl$%V@<{i%L@)#VSh!o5ZHmD@CP@knUGu| zvpN!g5J-ePU0VL2yx<^-0ZYx!cYrAU!A*MB!_LX&u~Rzh5u+1-07#r%t601x8J#FE zcv%wJ`5_XixsU8KhIL}hD8BDU5~t;;N~T^5Ww$fKM4wTJs(eQE*_##Kq-H}}d4^Ah zrO#)Kq4N8H%JJmptlS?Z;xoFbq^&QgL{(Ty*+bfrnjy(+4>2s6)q;0crZ}dS=6jLL zQ8gV8_9pnPY1nSOQd?un++4VpMvJTAls6zmCpE8<>BOhwk21#4`8|rx?X&ouM}|%i zcaBch;h3pH{YxA zVo3Z>ATg~~DuG0K!OKQ@*!d0+WxR2NnuEzvo-m0q{ps&O68oJg_FB@=iKYhBI*}OV z5uz$ftv-7_!VPjhCR=KTpBCnxF4bkit@LCMlDN-OFo}?elG|}^qR%KqRX(Ho?DrYz z8JJAvs;K-Hq_Q_HuY=Q=hJJi=RB}-@mGZNnN^0gMM|$wd_;qEB)&6EiWjV#~OM^=6 z$@KUI2d#FiLU{PuwZCfm1XjRmnD&%A0m;Qhsh)&h+h9O zMkn3`66IP^$>>CR!ON29Tii? zOp2iVG=w>yjZsBjEtmIXQ}=3 zj{*5hjqxmJ zNN9hOjAzL%mWi+Rr_`vLOuuKz&UdIu=~?DXjgzft&oZXh4YA=)H6HYK2We|aTK-Uq zDlNGF?AMIsOiiviQ@R1($bQjM^%b9CRF*hJN;29JSmGDFWPeATAJC8FOidR3x8T#Q)}g*p8Gh zA>2hr{D(HaT8pbZM|A@naLTyP8aZFnvLlqZ*3-N2q8)Uy=DFR8+eGKXa9!qlT5uUo zI@jPh&-zz2I=A3B&-zz2I=A7tx$Tzuc?eWuh`c?mMzTGvQLM-1Wy5Qu_%Q4hZA!2Z zZRE^M%bpQF)28F$s1p{^2JTU(clFw=YVY;R>-@o`MccjnqS?MtJOrsfmuNvojqK+@Ua#yw>^W3(p|x2`=! zlb=s&Rwmc}Af0|bV`_i)1)tF2nYM>4Ig_*oJ;rZMp)I_t_J>(`C2|c@qt#C;HEYw_ zuzTgXN=^HrF{Hvu-^OFx+$iBmr>srosz#dBhXuR%(kLE-z3@djlPIzSRo?7pm73Sd zT9w~^pVg0HwLixyf1*5AeGmIH7zMu5S4YP?fxob#h}No`8*WsC{wX={leH>)Dyty1 zS0i=3b>y@vitNy;yxFH!*LJ8`pjPfn1zC-WM0GW*?J0a~%GN)kF9p^g#GPl9HTn6Z z=8anGO>0H<94XZvDn?|ear|9_PwYyi%%>c~qrKAy+3%R|8pR{I zTH7J#n(|m5cH38B?>i==yc3l)r*WQXd+6#!$yUEMrRSZpHbqo@q{e8|SL&oDO=+w) zb#$K)(x5ga=bo}QU70p*n~d_#Q_`HqYExI|sXbiOccSK@n$0cCH{Au*g0Yi3v4ZY` zP;$4FzP4N#kkFpQ`2{-p9b#Z zYWnV@aLjf0aZ2A|bt9F;mw?3G(Re!S4BAzHIxI(>svM`irrihF-7bvW=C)|Tmqzh% z*aOclv6b3%|EIs_L(LvFbG18r76M^Qi(;H}k*)qlczQR=QCamzqWZWf(z4gb**)O9 zdbPV2%%Ld7*ow6sdIrd@P|A6A9kq9ng`}eKg&mOH#1ic%{-(wJ9H;P;xKn$|SKOXn&2z+_^2_eyYMvu{q6hBd6lEU-0vB1|7lE>Cqy1~0X|LaF zPy3zTpbMRYicNS9=ch&8Dg4oitx=$#sC1l9$N-1rOij*qvwJRZbb5i*9?Yj0j~AZl z4Es+U!ndYulWEy*`1wh34On%P-x`ziGkK->AfGX_485TFOqxyF+`f`cQ;jk*p~253 zIVY33Tp5?o!xO2-omsamj{=ucRHZR>gP%)k1}2YFV_42dIF(-+Q@wTtxnwh}mOcE| zl{JK+DU<@ItV@scAF+|uIU`#5Z}4$=XZ4v=6ixbiPH8=a1m~p{ zMS4FXD7HrN5qM{Er-chqmvcJ&1`4QTOsGa3X1_6Bi`(3BHR`B3@>xz_yEB=ztDBRf zV$DGpYLQJ+%~r29KTFN&g2FHsmjsbcv4N%sT{(4U}qoS!*7jY&0V8< z=R{Vh*6&0>tDYrihMFzQmggEu?RjFvbCE571{p2KNGN-{Y1wc|Bwl)>co6m)HzAY* zG?9TkOV9k+GaVd)DO*&#_N-y`PTa=Ywc9-xYs|=pPatoQ@}BGuK_jN!yFp(WH$9Hb zwaSSpuBKDp0tcY7X6P(A_mgvz>`D0i%a~Z^B|&I8y50vslkR^LbCdXkYPekZZDQ=BX-RNhOoDa&r zXpqquU-Y72RE}~?ITsY+i^}nj;Ika|UmK75N%Kj!@s$*}MyPJ|GTI_%iPm#O z6e0EL&=^La;EYagba^&2WgSY7h)QuyM0J~=P%AeCgM-#s7KrcH*VbAsNDE~v&y=W_ z&=@O!K@ciJ_DO3|x)&-k6g5Ek9SB71TUJgf^9gg~pR_7MR=K|4dBLYpphtyIE^dua z+2q%sRz}IkXI=v<=!M4U&#&Wrj%Pfflr*2{+2E!l_V@D!wr>^ATwD`R+2W_u z$|w2g%>F04->dLHALn!qcaN0+DaAGU)NOu3t!$Ey&^!}ikWlO?P%A#qDMCB5{;)H_ zFHX6agd+lQ(>nAtZ(#dI@hH4<9STGWk>@y7t$tFioRW{!HG9693KYwt>L#-?{lsmo zZt_&R*DB(%>g^Sw9OrbT<%weTKW=l!soLb2al?;sQp@pf+JvHagPSJwKHk9gjba^M zIiV=3$tM5or_#zId8yp7YCChyov!VS@jt(oQ@J-B_b^DGwC<$)pIls%P1)k7)5;?mlq^xD$L#GB3v zMvqq2vRI0yM(Dz-Lj z$@!!_{v&AZV>D?~k}771PnlAB<(-;4UXTA!O@2PfnWa2mU64=ICg+5rEKtXNzJn~^LiHxxm?s& zc@TLVl@*L*Vc(TjA0@Efg%rx~EpC!CCb?cW$XQIz`2pZHv!p#nV$RtV zSLwleqgNMhQu8LQY@>sW#`I{u3K-p+^t(7bJmriYu}33CRcz`8KbPeEO3pS1xs0iW zI0anx#;_LZbi@{?N|{Y!Erb$R!D+Pk>7?dX@~oH)PH)^XhR%~n=U@QS3Llmgd~M2f z5^Hm{xEfD&2ON&4T*qpYnvH2~oVDWOc`a$3jfttv{SffkomQ95f1)#au9}vk{l}AL zRAvNqTxgB|nAyHjoQGE^oSPR}k!t^kU!PL*IIT^4eE91SHd!=x){7#vf-fg-(!oCfQT4=giKDZBlFfm!Dg5J}7g`NEB$w-@#JcekJGj{CGI& zO#4#P9u;oq#5TFL{>#rTHD8o#gBZ5+`de{}{_CO$=n3F;x6?D${CykM25G?@?x?5@ z+N9=znoYYlH?J?Py;1aX7SZ+8ssJ(awMIr3B=_4?&N+jCbgKmE*8S3Y^^ zLfW35)Ns0o;#|Yr5LaoyTASCm+n{H3cC6S>CRAJ7nAqe8fzZoWa6PHAhy148hbBhO zmAHyeqs31rIj^%}>(3mS)O4aAp+!05bi6BdmuyXQNz)T8IJDnsi~tmTzkqj(J7 zLX_w76;osb(|WU?RdSXmuRXzTzR#nKVfFotRfP1)_=R!$+7vSgxM@~T^9Ht8YfoIh zVu);@T5I)_O3wFe+FJE>f>-*Yc(nL(BFE3!vwI(qdj9b6(s;CgbvSu`bfX+4Z~NuA zSWW8&la=op#S`!bG^-`HBG&Ogerm~CpPZ#+4?z3~t>`)G7^*LDFQ@j&DJ&p;u`}uo z`qQMnRbrMBxU7k60z3B~eqPDho;)L4kk^==)q9Kfi`_}}WI3pS)UtCMRv8J>ktpT^X39xvLEg51L;z?0Uav|3IjswC5B@N-Gd|7^j+6>QUE!(WDn zbf?bEB5m#*N44q>oSWri;()p1RB6IH07smg<%;__m2Jc*`?ffS6U_FvjQ7QRiuT3l zpF%$^wWz$*j(Fvb;w0=PWK1A`esP1E`Dx`^VZ6Csy%%Gbj}>jGlc^x2)Q8ni(zeUA zh^H1;a%r}Bwck29W0dJckXAzHmoYkr<56{Rbm$b~8g!}_Kb`b!kv(631-58WJ~OXc zicHt@nP1B2gq3Q5&6G1mXfJTn(IVH#anO=XRD(7X3?# z_7fM|lj(Rc-p4OZnM|5R*WyYx%@#kM5qsaF5u0;A4X4yNN9PaJmpld2q# zQm2#_ZMVgiw7UMsPc1b^)ZDRWXv>yfXWr4{kv)HgH{UtOSbPys`*hVA9l$YZ=u=4U z$O~qkI9_#8V1xoUZRzFMbZl)DSi_{K+96KPjlO@P|74ON8%R>68ZDuPxK!A zz@lq>9!C6ZzB^O(53yDRH}o*>F3$8|VO92-^9(J!GuFex#=H43B_4G0EVdvwa13u@ zaWN!FwXg^n{#Dh&VqJI*cVnIkNrLzMulq>E>H@jdYlivx4iM!y$#rT*C+kFhhkbr# zj86OlByskcDUy|rP81isv`%E_J5Us3B-W|9n@r;BNc?<8VwsqAp79G_oUR(jrk@a8M_P{6sw8 zp%NvDYxEpWj*=reKAjj-S@A9;5n_?+FzrMdIuRw8J!QNDyvKquSlo2q*%c+1qUv5W z7d=EJHFuNsBYy%uDr0&tpDU=uZ%l(q>_>}`{?hsp&kvDE&DZ4K%j!scCz7}~9QTqU zQCx74#87OJo$o+V^rP3PxtXjJS4ZMKNMiqRg5Q{qP81g$Br)VO;`t5`mCu;-El$E} zRgXBQ6|Vk++bXQ{=OBsQ@hq);i@4w*i6NcH&Uc_Fbz;u9I0<`8NqmPO5&v>JIuS@> zw+erYy!RseGrIQ@(usJ!14N}0sri;xUZ+Go2Y6%E^~Cg}A(M9gX~@WpHc}xGMVH)Z z5~=-YE~@TF%g^4*h_#%1VX)0x;I~viHYAnsr_<4o$P(TwO{L^i>&K9#X6HK;q_ouJ z+)J*}VaTq+XS|D%h`ETQNaPp1Jc*vcT$+}9c1PQL=!s*tr#pA1wLMi$ zb@l9w;K>WZ5;rR&5Eugz7Kbqw0^{e4;4Nna4gyws1c$>m;xv}AE%dk^V0izZSx077 zR(94ftfMqlFF?`FNU{#kcYSJAq2zQf6Bu<-%kjJdv4(2-qQ%d@ZP`X z;ZJWO1j7fP$-{le3BmB;B_2L{CLtL97v#tAHwSt6*cpUi_&Aga!zUJa_%zfBhR=SI zhtI*jF?_zChc7%z2!;pl%EQyHCIt-V|AL2Sev%Y0T=*&;E`~G=m!8SPZ-12( zFkAu0#PHnfco_H@DPS1>01rF%k^+XS&f(!|*apM%-@?QA94TO!+RDSVCrAOqb+6%J zc9;|}?EWqfd)`V481~KZZ~%^l;l_X9;YF}t3f8~;a{LmFgy(PhT;1^ z<>5b%lLCfEmw5QmIi!H$C!givXHeG|{tLFj@T)JgP%N$z7EZm46fvCsZ640Nn-noT zagK+r7my-`v%bv3Q*R+f4Ch^v2YnsP&$pTjoh9084GqrM=9^Y+nUeYWC0c7pDP;b@ z?gLfKH?>OZU6+mx?u2~J<@UTXrRqBHcVH~YBnbGw$cw;XVi`P{pQEJ6!DU_!MTRhaVkveGfe5#UNbDR!nV%zi2+ScJLy;j! z-!;)*ixe{y!4WVL**+Ap^yPMJdtc!yCUZh zir^eD64^c!Vfu1AwtXP-(xYX-ZNf6JSo9E>BRoflDKdoVh=Ol#mjy@PPFDcxR@EXaW@ z2nyfNll&4zNWja7QaB!F=erkPtqRY=AH&wq7$~YLLF8! zkz&MBV6PKPHEWTwY7y&C7K{0!cTkWsyn_Uhd=aAw;(ily@@qY_uidD*08@Rf-lF48 z3pLePSg(oc)fqr?pXGpcGFxl5ChV?-cUJhgPfTZ9R_uDM)x4QDc7c@>-7KD1ow>eC zowe{Z#hXr<7TZE(D!K({YX)JNb7;Hf&}rK_;51z-DU0L`RaKItLXtD!woV5~>9kw5 zHC7*k!Ua$!R%dp%sWol48q_ISjVf)?x?6VXaz|8K`b^cCid}2$vaJ^U&<0-k-M}}T zL%BgMcxpAN(-BcH%+B{)w%CIvM4ufklvZcTo#|$amR5kC+CqzhvS~FfDm=wBIbdsR z#Xd~uoTlYcXTn}yu2~IuDhU;roI|}eJSTc=&2zxkl?mY9rPGeRjLb;`oJ&%Zcf1%W9j}o3$2a#Z!mjlMS~`$f4d^hFY~X z&k^4m?`pRR+C@|n(H%&c_&%uXHm${u2nKE?i2ZzlEP4bXJ0`LGSQU5y%afI62UJ&R z{b8LbQWaZCIwiK1r&VHd?V&J{9cdRmQfXR;%hn-V<{I`FON(wHvn+4nQ!Gm*_!UX) z2(z_T3#>=sriPrMkmV^`9k*uH>C|ewWjoY~(=-tas;Jnc|gZPySc`9Ta9NSV&gCz2A= zSjzPHmip}kEjLL!hh4kPYd?Z}ER7$h=GH{r6S*jpie$xhvHF&`^J^U|5v_{ZTD#2@ zsX&`5tvUn7&vMP>jS!&~6q7?vxNKmFI83pN4FyF?B)4dm%DFwuRNA*#t+9ma%+#vu z)W8A)9RiJ^A;Aibr$BD2yNu^d!>4MgUPlWSHWmxqGb8M4x$R1Jsrc+sCdRe_l*AL3 zcgPc~Gu+|;yS~*zJ5M@IRhqvAvzsSSA-76h*Pa9OZq~M%hh@dg_n^<~?-A`f+Ub-! z`#Kcbd;(2;FY$DLOHh|!rrORLyPbtH^9^IkitXgOiftFvmd%s=r;Vg;CRB-VEY@J- z{WWs+MiZ(tHSN zl`C+qs?e7qo|YhD>AUEv8%g&?php&Bx$qHn;E+W z#6BfeiYyb+Q>A#a$<`w81`is-iUjYj*bluR&}!X7J9gKp(}7W;VWQ0<+*M*BVq!r6 z2MKL!?$Jw1jmt%IFez1#quLAYPDO$wO4#|-Do>E|CheBVg`DEWiitfzsnfBc`@-e@ zQ;K?2Wl(M_HzBlH5)$Ej175UQl!=Pc%ID5AOm^F?CUlgr8zsC+V&X}sw#e+YIlC!7 zEaUP(f_AfL-zpL$Q3?7$g|?|WO_mBZq)3oNNm-d3bHXjz>@0=KMwVd=jCR^~u~>pt zqDYvu1-k;8?NWD7LSkGjbSoqzPS}>~*sb^jTan<4;OtuywfYiG-b$IpGY+7O2p*s% zXK_VPOX{?VC0ai`)v4Fo=r9VbtC(062xX3mCo0wQh!&7v(|7P|(G(NS*Dr+@`-NG>Y(;E$ULR0Ql|%S+G+{#3HJC3V!OS!<}6az7xS9L?30e&_NDB|`>f_6XruejB-VXn2PO0? zHF{C-M%lXtSKlvF)osi`+`)cEU*>P@ci)luNj&7FAD>#`7nKRizLb}3GPXD9D~HDF z?g@V{eq7v3*%$h!;F?ZLN=J4U(@jCm4R6?H#c2XR6NwmL7k4SQ|zp$KFAmqvHzf%j_ks9`Y@~V%J zgWJKOTuaWvQpN~5zI~z7>5+{b#e7ZN;l;y#-c#V8Q{cSBWh~4$;>$7L8Oix}`1zgy z|2#pF&rgT`x=Lkea635c$o4~UM|ugr{1uGoE*z>I_643?tS8*B$IFHq$3>)GEv8h;Wb zoKEl>ZDaqz;B*!{-H6a7HnbE<0$Z`GO%AzBU9bU|gfT+?8z^SAjOVnafc1=Z8!jm* zX0^*Hj@BFBpD)E6$#dWz<-l8M9IiJ)m$BaI2Zeei2fmk{9UbEDv~WFp zIy>mgfPpjFe{t5~r3rEcr0?}O!Joe0oSqHzBG%3@9PGuyaY01HD}iy$w-fR#sq;y! zUk!O2bv}3pgD-f`k9m1~8UFt2*|fUS!JE63xK5Af%jlY{9=G-QtEWMV}| zh)b<8(~x<;PiATJkSX-LdSr5mhRhLDGV^D-g5W@Brg@fs$RiWL%(Tu-@hp#l*^|p* zQ!aPr&+@ot4Y*9BG4Dez*~^yM<`Vlha0#E~7jpqy7s*ce#bms=detkB**H|SueVK;N!JJO4%#&$r zelVc3w0Y>)6^rB)45@EzCWOIlh~X{XY{cy$TV~s`-O6wbE9Tn`|<*&0%wf^Tq{TNrFhDH;sKmIhz~B=6ifLH;LX1=PZ=i?5#I*|B%X( z{EfEN@8xX5B$As&Z~F6P3Ty@L;NR}kxmj#Z(326rIs)6<<}~&XKp3M-%;0bndZH=w|QKGxtVD$P2W++L2)rKJ&A@)Q@>D7 zCexKk8Z!-1cU`sA;R)Ia2;`d=Q~B&7Pq z6+R8a^sOw{kZS5}8jQb3hQt#$+dtRBK;nmawmGjE3L6T-o!|SmKuO)U>vpcW%I(UW8L8^J>2^wBa zJyU~m&s45o*Qa0K7~vIfge>b>hbv8NfAurJ_pE@0~-xdwi@ zY08T$d?1sxuSBVaQd3`6PARMRBx^MdrLPkx&AO$Ul2RDI7km>pq|}opQ#xeoy~^8E zT1wNjsa}hevX4hnYp&)lWnG_|wyDG-OOAk8f`(U9&sEOrhVlBE2(MY!tn1)a_O%MU z_VTn28T+mBJ^%zZ$qGoLUti65rS3%6nRJ>f6!*Is`T(k7k)=L>s9d96O?_ASxB!GI zk=8V0Szd*-?xD-}3cbE-yYNZ)Y}0BwE#A`f7L#(L}D<^ith`l{ZEEoh?*01X! zR(1-A#P;$E44Hbd^6`QjM(k}!?6uUz*4FMrhdLDcu(C|7>3Bi8$dZy(Bx$s)sV8e7 z{=PuoooupC)MlDjwBB(Edt6oDXkxc07FX&V08j&&hEQYgRs0KLIiVq; zX}njj3<+feS+cBApUMFh2))9S;7^f^!5V!6oJJhPB7AWqCf0Cj?7PY}Db{>ae?S_q zz^x&t*mbpuG^yNe#o6uIV`b{M%15mrOo@c1>9Kl+N9bnju>vCfB9HY8gRG+RWPLhl z?7zyN`#M_FJojIYv`%+hEzfzi8J_z=apmWJM6BV|*l(3{x>1}S6*H{gw z@DtvxJ!knDH1${I{i%rQhCKa$A32?{trhC99;&R52QckV6^ksZ)p&|Vvzq#>26N4- zBQ}i%a0?@Lsb(!w);+ZuEP#oixKclAM6BV|)Kis@T-h+q`adO3H_zKv0hH0Vtzrop zUQPW}Ij&qg%Vs}-Rb*t$}D*;Q{u^LOz@M`L#%IyFxuW9UnmrA^5`~4Nu7FK{{ z0;#?H|AVHUs*$+8`by{y?=_Rf3n33K_|tb1XRTHm*KX8Y7-&^rtGDQQ(<;|(3%AL#eto7_=+Li<@2>buk?etg z=ha0Q`dgJ%!_qa{*3^$R93R(u6s}q?if<6Ee&0!?ctJQW)?*UIEp@&a#VhK30max> zHl=tCD2B0|`z(jn8nd-#Yr^hY86U}FNU);VVvm8UT6nsKU{gQWa9j`P1cxIA@V!q{ zf>$}g6}w(*HE*VkUA5)RkIp_H)dVb|4&KQHY+WQ3_yrvd1WUz^;;TqZW_Q5U>opXA z12$)Oee50qcCYVJXDu`#u%kB9_5<2bxPcB91>#%HP1G~}B4!E$o( z!Vu4V@a>S`@}$waD{*p5xbG}mzUw1b91jyEx7WCs0aMS|NPGsuyxkV++%)aBE|80Z z4CWl#t~qqtb`CgAmu6n?J_~O@SVFx!#^QWcBzxf>(7URli?4ZWGH5igslP1em|cz} z4V;E!SIu$eweb2mmZmFEaols}f&o*1THb!sa-7DJ=rE3*4tRY#?N)7V6Sd#wYI3p1 z2Ezf1z^^J%qk~O-YoqZ|;I9IO)T{UGpr^F(r|%^8p4}uI7okh)J#*FhV!da#sPhF@ zF!mmed3o@7{-Wvwc7Wa8ZE8*1tp;^UR-;N=wC1u3w;FQ4CwU98A`5%8YI-`w_iFI#Lv`b=|uwuf-2voH6dhF^ac zI>t3Gt}yH@D%DVG>ZcotTN-(HpD7b#Ok7pea4y`8j?-@bveoGswC;#H2oG9l5DNmhv}Ttv|Q>; z*vrc`tC95)>V2$+M4LiQva0A(!%tZ`JV!Fg{ifc#oa7B7c{zdP5*#7REx%ubWSD1J z=)zEu?B&pqZ0gO+`{1-Bp986;)iFp%n409B0#*vtcVvFB#P*n?0*AQ&#$;<6wEx~D8c1=!jwN2~IT8sNc zyy+Y=t%>_s4fSl<0mbp6OR89tLqoEuUoR(l!$@9AAbFFt>{Oh}gDW&SG$fmP^KuWh zmgF=Z>O}>~I4s<4X8%nkLl1S7RloRBOHZFk!?dZ#E`LK*%XAu#-64-@>bgy9G25PK zvo}Q10*048SaC(CM^vog)YNB}&k(KU6g{k_y=pYz)W3Gw?vXH?A=+crFLF%F3M8}X zPBqM$dgq4YqkoQqtE$)NpZtALME%$?2E4awaAvXDh8@A>$x5?>ALq+*PcZt~aS46Q zS8)Mb7s)R81s^jg(@3!+s#cYnNN@j@rXIPRUUnUle9LM2(CR9Bq0zP(>6P9~im~0} z&7}S-b1$5V%9tmk*Sq*>yl@LDdf_axOs}CAF2<);^|C~b<~8-g4aLW&<=;pT$ET&S zb!(j6UGzw$X&o+GhwN;B4F&tXaS3gPz^Mb$;4Nn0RxGkK`azkdq1M#rmQ%~FOp?8j zhT4NMYO_7x)VipZ$Lz?|_8P6zf2FCPE$>&@Fly&x)Mnd8Fz;6obgf3!_82SKf2FBM zZ6H3+RQ_F`&^}1>y_6SoW@l@ymR)C0P(n_D-_zJ#@i)Ih=>^mq=qFTOqg z;`0WNN61syTC@%D{VIPclB?lg-k-pWE52j_>QxYGtN~MB*>K#3&HKJWM$_~jyofVe zwmNRjs?({}cFT6Clj-)?GdwIqI~M8mmm-;ie>tnsVn?V|CTsXL^^4^*QnHJYWX+}- zfAd0*U*UaCt3g*YKeLJ9e14!>#aC5X(Iedm>U0gore3q0;tiwt1!{^*cz`VTgsq?A zXisjG;+}oErhc@%ji#kIP0zxOoMLGZWR~eQZ=(rCj<(TaNy(abr>XaBBt9Eu{*G~I z|E77z_z{UyF~+$^C1gZcbxQ9Ej1JZEJWv z_C(B4A;8{hkDWiewVjo)zpD zIR>qqpyAcj!x2k^ZjM%d5zl#9+hE+H%{{`QMVsa=o~q1i zrgbY?MYx2zbvqZZb&-t2udG{>RBKN=*3_?-&&D%tL+*( zhqFDt(cBvmEq3&cc6GW&*P8m&a)LLE;OmtHXS*M4-2}(pWRDQs>nj2MJ5Bv*d0&E- z;52;+a|(jd#LaSx%)Bo_B2>?BPkMKlde-ufx?}qU^ ztKt_7hb(K}_3|6*ACvj**-N&=)Q6T^4qATG*u53t7dsvBt5~zOcAHIjvpFn>Xt71h zL7Aq}yvF{synh$bP3kpE)4%(BNUrTH*W5{`xk59oaSi)-h2l!RWHGshR8!B{Q2Yz> z`PiD!6Om?Y&2>mBxQgH_We%Gd58jx_vVDN|Juaa)Vvq~ix=3*JBX}d^B1_s;stlH* zA=cD)mJ`eBKS{TyA+{VPHscoUdWbD063bIG#G3lh^3e%eV$+PKnTZk$d(N_sH5{EF z>DWYIdudoxk6Er^H;mV7f!C>3*QvqRT;YAn4wwX)=G9QcN<|(U8VtvZD^fHX*3?6` zBR<2z>)-*|Yv#s=_YlROK0*$Pa{@2~6ss{pj*Bw|D6%loQOqaIAAmxfLtq#VW(mhd zxj3r;#xdVc$b(~oaPfZpe8XJI^IZ*zuTbY3_48c>|BU%N@rCfK`WEpt5^Hsr(T1hr zS0qaHy4|&025_bczSJv!Xw~Ao>;6(C4fq$VT3r=Ljk4YulldMs^`Yh8sA3n$N7%bx z0>0DqgiRse%WZdU53R4&TXei>p;FE?(}uI-MT;%XsjE)Zuxso^i}x@bg$vnBH{T%W zw7!$5n-_%RA{R-zxuwn*)6E+>v*To(-4dQ-mM!4*u?xc!M598!pS?s4yQUtre2zTC zD{6lPdN)m9!vwI)zYJJiqODfhrOTP-)^OZHq{x!#piI+HYw9=K8MlUyfwt?C zW^Jo^7$$atCCeK4ax4HWp+&r(3)s3yZh~L1h&ipv)gX3D80FQFZt7>t=gVQ&C~`*x zq@#{9CA}1oKIhnV+Ub-!`#RLgylreazLyg#7d=k2B3(nVsShq6r=z7f%{a5MfMS?# zgw|c#S;JQ>GOeEt$LVl_#bQe~a#FH}UsI1<&hLit`+OC@rOnB&+{TOX+q;!#>YvMd z*R=eelfsI)2Klx5weqL>#GPl^J~r&3h!$HK<*QEA=w4G_UG7`fvYW=Y{5)iLsb($G zUAEgiw3c;l&t)|uw(FELHHbx)yC;OY;0YRDO+9t_m|iWfX>{$?!0WhUAL&pS7|34+ z%6x0huvaZwY_X-LOiLzr#MB3ule=N${%)LHuyM0(C9IEJY4lly++O3)Moc|$`Fy-u za?^M*u8NbJY1`It{=5j88gT}C^-7sEv0_A={pk84_8K~DuyWYt(uZA{3q{tGna&7eZ&gzJ%pDbr~!K0sfs&EV{(7x^{Z$UsFF>J{po;l%&x%X>5jJV7b;}x_4@o z*1Imv_B@bAyQ)7sZ)_Pi*aQ0%ec z;0q{;sTz7s{bf158%FP-f?jkxWZ8CDC%xcW(9r9pCeu4?>@$mhRXCqrB(#3hSPTO( zdb2(6?z$`nAT!Zo@X|EYn)=J~ucv8sZkje*Kbdoy7IZUo;3HuZ_VRMgYRvEHT9cJZ zruFVctcJuko8nu5iA5LO5k2x~Xg2nw<#UnY#Y$?mrJ0NDxdi5RvPzxD0>Nna;}X90 zqxjZ@R9t~tgsa5oq zB^6zGA3~o+!?LM=EoXVdSbk0t%g}h+tSpP~MkKJ@^ZkfnQ@`6_+=r33;=)#3nz1-n zkaDG3TcLaHs_W3>tOvX4uGzkc%8TEEIB$<~8-W<+N%wZyH*E2WZ_xm+ci=sdd~k zd(>_MTE!xVLmlO+=rPW5*x08QpB*RHt)XsB(?fPS&|0x;4gA1_uU)fDtI=G0(ISi5 zRj!O4Uf^L(7vW~F8nqSTkbqIM&&+*J$1yE*=3#te~RR4SkH&W z729G#9dMz>1~B!S_3!NC%fT}%h11!2xX`TbH3Lq?YkK2P-$|SSXTNYthp5l`y4buF*aW{qwRv;4zYAf=rdL$aBo##(HcdTWIhz~C z<|UlXU34|uqZ7^9#G*#n3`80>P5oH?aX(i6Ob_i&v~5hE>CXl>@zX~LdzM>BXlvsV zKGXf#zED~ugRq8YIu=y~Gl*-bH1$~x#4XLdH55{r#=CkkQVH)V`h87VCKLNDa0$uu zXIVsPkz507Br_N%?Ig+OOw(rnEsxTPrDm%E`^++>hHZAFloeNO z70E&kqo!V_-1gKmnx@Tu5ikmatrnWrrf3&=MHT53MH)6ueMPI zyN% zF_MKEMom3N`4gTo8(}$MG|dzKnFKpn@N;)K;B*r_;l<*HMrcf$OzEJh? zytk$H!waiT+uB1rcGs!XfzfQw&T=8EA+Z-=(v#qiH^We3(L<9~pGCv6sh?^vJ{mgr zriMLOXE|OjFEAr|WTli#*fUTUWq1V)#mD9_v!$#11 zu7cjIx69T^Z%Iq9m#U%H)XSB(&$RTW=>t1Qq?b?S_SkQq37QqBaT^RK6jCK(r8tEne!Fh0&YZ-cF`4R*H7Yo=L6n;w_Yrrpj3Y+WSd z@GIK1Q>#g;mCKVg>wu{@EblE~b)RI%rs*wsibyKx)hzeYrtK{doeF{t(9@$ZVCn-K ziEGq+4){=`;!KdHy#;6aoR&HryWXt1wBhw{Wt-V&u{&ARu4A4Ae~M%;tbOeoDSEuG zOPN8VZ%sX8xu=0$lO%nc#?!D(%`t0(Wm)%L$ZAOBIN8%6V~TCDfl+@tcux-}WYMsk zd(Bjg#>OPx>_NN{EN@L>xs+|4{Ohm`#zQZby(}7*O}%EheW7AL7`vFpzId{lWgt1* zEU(|bP*}&ZR_<*ln|jsq_MDdEH0`-3k;!hm)vSYojP~(kzda`vHyp7L7i;vbssAjW zVNlCy8V|%1$)r)v59@nssH;tA(GeRxi4q5IKORr_c-UAs~u6~nw z?Kk$F#eEXFmp9}!OkkmA9kDtLvh4)aJ zou#a6ReYl05{^f>gbUcZNN~jMJStCK+;DP(h)knPP5ol|2rpLW8_~i#oe^59*J;~D z?b3lgZ;EHXP-MA7Aex}z)ztSj9DmE^C|tZ=vt!>Nw50n^;_TQ9!f_F_q}j1s>U^;t zffaSWpoN9cK+_i1X=KtCzC&N_F0fB*Wt!RZv65j4H7m}I?Jq@Afq&-}#TK}Y*GZ4w ztbS8pSI#cG5FWz*y|6BJPgSs6g1u*1->#G0l8#-TsL{K|{;j-^0O3tyH%%YGDP+R7 zT*q$tpW@6ow?=&ga*>6GmnuQStErzWAMb^@Ci0qQyw{e1SFmbZ6Sevh4am*1zP*su zkZ3C?#(VjAMvJZ>Se-?~vZ)trD6V^Rn>Xx5NMrLBfo1j~?+VN>yVou`i!1oTZl>)9 zBhNy-*rC~wkftHm)E}0QieWk?$!bW`Q(GVtOSFD?s#CAEX(!vhFr&8|q~Z#&inY+I zWoGOFi}xzz{j{NmO~WaXI4xybv!>=$Xp4#XCbhykOSIJ*^2`AE=-a@+Q2*%Az`*d8 z@PGfnj=sK;fgzOl_m2*PD`9wWr}qIv{5BlU(Mrf9bahnOf2S6%8pP$(F*7u)5 zM$g~2<=_>s?|b;F=GJ$A8^Fpod9`vgz_Dv$T|eg8t1|DSk# z?2-A#%jeGD`mQs`2gq~ZyzBn{dyf3qohP=vXObM>{go37KNvl}<+giHYu1)8i^nOz2gtxvE#vQfA?l`@UE9mR~91a^+=qIx1R9o&z#uywm*XX zeRw|)Eya`)%n|Gax{`^gLb`Q~dM+;;0bApL9Sop|k~2d2+2K^*f# z{56sI(cgXa=Z}2r{H?Ei6`b!i`+qtXjeqBk`@ePT7q`9dDWva1U%6}HabHJ!oRH&e zO{NQx_-T>&sgd~Uk@#mX|H#9i=!gCP8|?E1_dWhIk@%-0@lQqKpNzym5s4p<#J9fw z8->@-KDg}n$J;*Un+KZwL1iNyai6911# z{NEz+ha>TSjl{nfiGMc||4t-Mo+{VxwkU;c`a#e%Pq*>ry_MbxQi$8GVAId41s*)FI*tPy3Ng$_D|*s=xI z$~=M|MeV+&fSNSE_(J^UR{+}p_>>MM&w*H3lH@NTcDE$?48-o2BwvHraY^!hh@Frm*roB1B)JeIk4TbHyhaeh z+L(pdR!P!;Sf3=p_lo)@$z2c|lO!L4*qkIe4zYuhTL2_J@ycQ%U zB+0u#@{lC?E08=QN&X%rc-~?C{1e2sN|Hw*)+b4}K=yt~avn&=B+2Cx+5)V)jYLZu?TU<9$~1knJq{6OdMH zc$3EtO6XT=^rArTDc!pUT^oLxs%~Qj;turG9rk7Z##5{9mhIr_P2wRZ{rJ=hzo<-D z_NBaRld-*3XUZ;J-aX;(#gB`7Df>eI6j;56d*;WNg!1Ni8N%$9@;IDtbp`<3f5fYE zEO~XU1E&JaG$yen#jnsD&g9y0ImAOM;h-mE$LIMZ(f%eqA_*q!_S%eXA3h*%$S0Dg zqFk6uLduF4!x!Lr;{hm)%;qP&iyrYWtGF{@tPN*K-MQK#O*nALlj9u)jo4Xgb^Q_x zBEKx*p{q^T-{q9mT`o`Zd(9(!c^RfM9(U{`odD%I2lCFQ8DAfIfnOce4vJ-ZiGnx`0f6Kj2_|Xhuxq!;{|BC%oa_Jq literal 140230 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

    xjWe?T_b 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 E0m8m_Ru={WCf`KC)|kbadzL;o%W3qTAu& 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

    Q_^ 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 literal 472422 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 diff --git a/installer/lib/launch4j/web/bullet.gif b/installer/lib/launch4j/web/bullet.gif new file mode 100644 index 0000000000000000000000000000000000000000..f3f133bb872eeaf0d9b8eb8192710ee2ae90e927 GIT binary patch literal 151 zcmZ?wbhEHbWMkl9Xc1=EvuDr2g9nctJq84)P6Gj$ICJ{K`3pdB^~#kiS3%&`&6~Gw z0nx4d_wPS>{N%}#$Nz}~ia%KxxftXbbQpjDWG4fw$OH90-%K;NES43gR%OrL - - - - Launch4j :: Cross-platform java application wrapper for creating Windows native executables - - - - + + + + Launch4j - Cross-platform Java executable wrapper + + + + + + + +

    + + diff --git a/installer/lib/launch4j/web/docs.html b/installer/lib/launch4j/web/docs.html new file mode 100644 index 000000000..67f898eb2 --- /dev/null +++ b/installer/lib/launch4j/web/docs.html @@ -0,0 +1,585 @@ + + + + Launch4j - Cross-platform Java executable wrapper + + + + + + + +
    +
    + launch4j 3.0.1 +
    + +
    +Running launch4j
    +Configuration file
    +Importing 1.x configuration
    +Ant Task
    +Additional JVM options at runtime
    +Runtime options
    +Settings
    + +

    Running launch4j

    +Run launch4j.exe or launch4j script without command +line arguments to enter the GUI mode. + +
    launch4j.exe
    + +To wrap a jar in console mode use launch4jc.exe and +specify the configuration file. + +
    launch4jc.exe config.xml
    + +On Linux use the launch4j script. + +
    launch4j ./demo/l4j/config.xml
    + +

    Configuration file

    +Launch4j requires an xml configuration file for each output executable. +You can create and edit it conveniently using the graphic user +interface or your favorite editor. Alternatively it's possible to pass +all of the configuration parameters through the Ant task. All files +may be absolute paths or relative to the configuration file path. + +
    +<!-- Bold elements are required -->
    +<launch4jConfig>
    +  <headerType>gui|console</headerType>
    +  <outfile>file.exe</outfile>
    +  <jar>file</jar>
    +  <dontWrapJar>true|false</dontWrapJar>
    +  <errTitle>text</errTitle>
    +  <downloadUrl>http://java.com/download</downloadUrl>
    +  <supportUrl>url</supportUrl>
    +  <cmdLine>text</cmdLine>
    +  <chdir>path</chdir>
    +  <priority>normal|idle|high</priority>
    +  <customProcName>true|false</customProcName>
    +  <stayAlive>true|false</stayAlive>
    +  <icon>file</icon>
    +  <obj>header object file</obj>
    +  ...
    +  <lib>w32api lib</lib>
    +  ...
    +  <var>var=text</var>
    +  ...
    +  <classPath>
    +    <mainClass>main class</mainClass>
    +    <cp>classpath</cp>
    +    ...
    +  </classPath>
    +  <singleInstance>
    +    <mutexName>text</mutexName>
    +    <windowTitle>text</windowTitle>
    +  </singleInstance> 
    +  <jre>
    +    <!-- Specify one of the following or both -->
    +    <path>bundled JRE path</path>
    +    <minVersion>x.x.x[_xx]</minVersion>
    +    <maxVersion>x.x.x[_xx]</maxVersion>
    +    <jdkPreference>jreOnly|preferJre|preferJdk|jdkOnly</jdkPreference>
    +    <!-- Heap sizes in MB and % of free memory -->
    +    <initialHeapSize>MB</initialHeapSize>
    +    <initialHeapPercent>%</initialHeapPercent>
    +    <maxHeapSize>MB</maxHeapSize>
    +    <maxHeapPercent>%</maxHeapPercent>
    +    <opt>text</opt>
    +    ...
    +  </jre>
    +  <splash>
    +    <file>file</file>
    +    <waitForWindow>true|false</waitForWindow>
    +    <timeout>seconds [60]</timeout>
    +    <timeoutErr>true|false</timeoutErr>
    +  </splash>
    +  <versionInfo>
    +    <fileVersion>x.x.x.x</fileVersion>
    +    <txtFileVersion>text</txtFileVersion>
    +    <fileDescription>text</fileDescription>
    +    <copyright>text</copyright>
    +    <productVersion>x.x.x.x</productVersion>
    +    <txtProductVersion>text</txtProductVersion>
    +    <productName>text</productName>
    +    <companyName>text</companyName>
    +    <internalName>filename</internalName>
    +    <originalFilename>filename.exe</originalFilename>
    +  </versionInfo>
    +  <messages>
    +    <startupErr>text</startupErr>
    +    <bundledJreErr>text</bundledJreErr>
    +    <jreVersionErr>text</jreVersionErr>
    +    <launcherErr>text</launcherErr>
    +  </messages>
    +</launch4jConfig>
    +
    + +
    +
    <headerType>
    +
    + Type of the header used to wrap the application. + + + + + + + + + + + + + + + + + + + + + + + +
    Header typeLauncherSplash screenWait for the application to close
    guijavawyeswrapper waits only if stayAlive is set to true, + otherwise it terminates immediately or after closing + the splash screen. +
    consolejavanoalways waits and returns application's exit code.
    +
    +
    +
    +
    <outfile>
    +
    Output executable file.
    +
    +
    +
    <jar>
    +
    + Optional, by default specifies the jar to wrap. To launch a jar without + wrapping it enter the runtime path of the jar relative to + the executable and set <dontWrapJar> to true. + For example, if the executable launcher and the application jar named + calc.exe and calc.jar are in the same directory + then you would use <jar>calc.jar</jar> + and <dontWrapJar>true</dontWrapJar>. +
    +
    +
    +
    <dontWrapJar>
    +
    + Optional, defaults to false. Launch4j by default wraps jars in native + executables, you can prevent this by setting <dontWrapJar> to true. + The exe acts then as a launcher and starts the application specified in + <jar> or <classPath><mainClass> +
    +
    +
    +
    <errTitle>
    +
    + Optional, sets the title of the error message box that's displayed if Java cannot + be found for instance. This usually should contain the name of your + application. The console header prefixes error messages with this + property (myapp: error...) +
    +
    +
    +
    <cmdLine>
    +
    Optional, constant command line arguments.
    +
    +
    +
    <chdir>
    +
    Optional. Change current directory to an arbitrary path relative to the executable. + If you omit this property or leave it blank it will have no effect. + Setting it to . will change the current dir to the same directory + as the executable. .. will change it to the parent directory, and so on. +
    +
    +
    <chdir>.</chdir>
    +
    +
    +
    <chdir>../somedir</chdir>
    +
    +
    +
    +
    <customProcName>
    +
    Optional, defaults to false. + Set the process name as the executable filename and use Xp style manifests + (if any). + Creates a temporary file in launch4j-tmp directory inside the used JRE. + These files are deleted by any launch4j wrapped application, which sets + the process name and uses the same JRE. The removal takes place + when the application starts, + so at least one copy of this file will always be present. +
    +
    +
    +
    <stayAlive>
    +
    Optional, defaults to false in GUI header, always true in console header. + When enabled the launcher waits for the Java application + to finish and returns it's exit code. +
    +
    +
    +
    <icon>
    +
    Application icon in ICO format. May contain multiple color depths/resolutions.
    +
    +
    +
    <obj>
    +
    Optional, custom headers only. Ordered list of header object files.
    +
    +
    +
    <lib>
    +
    Optional, custom headers only. Ordered list of libraries used by header.
    +
    +
    +
    <singleInstance>
    +
    Optional, allow to run only a single instance of the application.
    +
    +
    +
    +
    <mutexName>
    +
    Unique mutex name that will identify the application.
    +
    <windowTitle>
    +
    Optional, recognized by GUI header only. Title or title part of a window + to bring up instead of running a new instance. +
    +
    +
    +
    +
    <jre>
    +
    Required element that groups JRE settings.
    +
    +
    +
    +
    <path>, <minVersion>, <maxVersion>
    +
    The <path> property is used + to specify the absolute or relative path (to the executable) of a bundled JRE, it + does not rely on the current directory or <chdir>. + Note that this path is not checked until the actual application execution. + If you'd like the wrapper to search for a JRE (public or SDK private) + use the <minVersion> property, you may also specify + the <maxVersion> to prevent it from using higher Java versions. + Launch4j will always use the highest version available (in the min/max range of course). + If a Sun's JRE is not available or does not satisfy the search criteria, + the search will be repeated on IBM runtimes. + You can also combine these properties to change the startup process... +
    +
    +
    +
    +
    <path>
    +
    Run if bundled JRE and javaw.exe are present, otherwise stop with error.
    +
    <path> + <minVersion>  [+ <maxVersion>]
    +
    Use bundled JRE first, if it cannot be located search for Java, + if that fails display error message and open the Java download page. +
    +
    <minVersion>  [+ <maxVersion>]
    +
    Search for Java, if an appropriate version cannot be found display + error message and open the Java download page. +
    +
    +
    +
    +
    +
    +
    <jdkPreference>
    +
    Optional, defaults to preferJre; Allows you to specify a preference + for a public JRE or a private JDK runtime. Valid values are: +
    +
    +
    +
    +
    jreOnly
    +
    Always use a public JRE (equivalent to the + old option dontUsePrivateJres=true)
    +
    preferJre
    +
    Prefer a public JRE, but use a JDK private + runtime if it is newer than the public + JRE (equivalent to the old option + dontUsePrivateJres=false)
    +
    preferJdk
    +
    Prefer a JDK private runtime, but use a + public JRE if it is newer than the + JDK
    +
    jdkOnly
    +
    Always use a private JDK runtime (fails + if there is no JDK installed)
    +
    +
    +
    +
    HeapSize, HeapPercent
    +
    If size and percent are specified, then the setting which yields + more memory will be chosen at runtime. In other words, setting both values + means: percent of free memory no less than size in MB. +
    +
    +
    +
    +
    <initialHeapSize>
    +
    Optional, initial heap size in MB.
    +
    +
    +
    <initialHeapPercent>
    +
    Optional, initial heap size in % of free memory.
    +
    +
    +
    <maxHeapSize>
    +
    Optional, max heap size in MB.
    +
    +
    +
    <maxHeapPercent>
    +
    Optional, max heap size in % of free memory.
    +
    +
    +
    +
    <opt>
    +
    Optional, accepts everything you would normally pass to + java/javaw launcher: assertion options, system properties and X options. + Here you can map environment and special variables EXEDIR + (exe's runtime directory), EXEFILE (exe's runtime full file path) + to system properties. All variable references must be surrounded with + percentage signs and quoted. +
    +<opt>-Dlaunch4j.exedir="%EXEDIR%"</opt>
    +<opt>-Dlaunch4j.exefile="%EXEFILE%"</opt>
    +<opt>-Denv.path="%Path%"</opt>
    +<opt>-Dsettings="%HomeDrive%%HomePath%\\settings.ini"</opt>
    +
    +
    +
    +
    + +
    +
    <splash>
    +
    Optional, groups the splash screen settings. Allowed only in GUI header.
    +
    +
    +
    +
    <file>
    +
    Splash screen image in BMP format.
    +
    +
    +
    <waitForWindow>
    +
    Optional, defaults to true. Close the splash screen when an application + window or Java error message box appears. If set to false, + the splash screen will be closed on timeout. +
    +
    +
    +
    <timeout>
    +
    Optional, defaults to 60. Number of seconds after which the splash screen + must be closed. Splash timeout may cause an error depending on + <timeoutErr>. +
    +
    +
    +
    <timeoutErr>
    +
    Optional, defaults to true. True signals an error on splash timeout, + false closes the splash screen quietly. +
    +
    +
    + +
    +
    <versionInfo>
    +
    Optional, version information to be displayed by the Windows Explorer.
    +
    +
    +
    +
    <fileVersion>
    +
    Version number 'x.x.x.x'
    +
    +
    +
    <txtFileVersion>
    +
    Free form file version, for example '1.20.RC1'.
    +
    +
    +
    <fileDescription>
    +
    File description presented to the user.
    +
    +
    +
    <copyright>
    +
    Legal copyright.
    +
    +
    +
    <productVersion>
    +
    Version number 'x.x.x.x'
    +
    +
    +
    <txtProductVersion>
    +
    Free form file version, for example '1.20.RC1'.
    +
    +
    +
    <productName>
    +
    Text.
    +
    +
    +
    <companyName>
    +
    Optional text.
    +
    +
    +
    <internalName>
    +
    Internal name without extension, original filename or module name for example.
    +
    +
    +
    <originalFilename>
    +
    Original name of the file without the path. Allows to determine + whether a file has been renamed by a user. +
    +
    +
    + +

    Importing 1.x configuration

    +It's possible to import a 1.x configuration file using the GUI +interface. Open the file, correct the paths and save it as a new xml +configuration. + +

    Ant task

    +You may set a launch4j directory property or change the task definition. + +
    <property name="launch4j.dir" location="/opt/launch4j" />
    + +Define the task in your Ant build script. + +
    +<taskdef name="launch4j"
    +    classname="net.sf.launch4j.ant.Launch4jTask"
    +    classpath="${launch4j.dir}/launch4j.jar
    +        :${launch4j.dir}/lib/xstream.jar" />
    +
    + +Execute the task! + +
    <launch4j configFile="./l4j/demo.xml" />
    + +You can set or override the following configuration properties... +

    + jar="absolute path or relative to basedir"
    + jarPath="relative path"
    + outfile
    + fileVersion
    + txtFileVersion
    + productVersion
    + txtProductVersion
    + bindir="alternate bin directory..."
    + tmpdir="alternate working directory..." +

    + +
    +<launch4j configFile="./l4j/demo.xml" outfile="mydemo.exe"
    +    fileVersion="1.0.0.0" txtFileVersion="1.0 RC2" />
    +
    + +You can also define the entire configuration in the task, but it will +not be possible to edit such a file in the GUI mode. All paths except +for <chdir>, <jre><path> and jarPath +are calculated using the basedir project attribute. + +
    +<launch4j>
    +  <config headerType="gui" outfile="demo.exe"
    +      dontWrapJar="true" jarPath="demo.jar" >
    +    <var>SETTINGS="%HomeDrive%%HomePath%\\settings.ini"</var>
    +    <classPath mainClass="org.demo.DemoApp">
    +        <cp>./lib/looks.jar</cp>
    +        <cp>%USER_LIBS%/*.jar</cp>
    +    </classPath>
    +    <jre minVersion="1.4.0">
    +        <opt>-Dlaunch4j.exedir="%EXEDIR%"</opt>
    +        <opt>-Dlaunch4j.exefile="%EXEFILE%"</opt>
    +    </jre>
    +  </config>
    +</launch4j>
    +
    + +

    Additional JVM options at runtime

    +When you create a wrapper or launcher all configuration details are compiled into the +executable and cannot be changed without recreating it or hacking with a resource editor. +Launch4j 2.1.2 introduces a new feature that allows to pass additional JVM options +at runtime from an .l4j.ini file. Now you can specify the options in the configuration file, +ini file or in both, but you cannot override them. The ini file's name must correspond +to the executable's (myapp.exe : myapp.l4j.ini). +The arguments should be separated with spaces or new lines, environment variable +expansion is supported, for example: +
    +# Launch4j runtime config
    +-Dswing.aatext=true
    +-Dsomevar="%SOMEVAR%"
    +-Xms16m
    +
    + +

    Runtime options

    +
    +
    --l4j-debug
    +
    + To make sure the output executable is configured correctly you can use the + debug launching mode to log various information to the launch4j.log file. +
    + +
    --l4j-default-proc
    +
    + Use default process name. +
    + +
    --l4j-dont-wait
    +
    + Disable the "stay alive" function. +
    + +
    --l4j-no-splash
    +
    + Disable the splash screen. +
    + +
    --l4j-no-splash-err
    +
    + Disable splash screen error on timeout, might be useful on very slow computers. +
    +
    + +

    Settings

    +
    +
    Alternate bin directory: launch4j.bindir
    +
    + It's possible to override the default bin directory location which contains windres and ld + tools using the launch4j.bindir system property. The property can have two forms: + a path relative to Launch4j's directory (altbin for example) or an absolute path. +
    + +
    Working directory: launch4j.tmpdir
    +
    Change the working directory if the default path contains spaces which windres cannot handle.
    +
    +
    + +
    + + diff --git a/installer/lib/launch4j/web/docs1.html b/installer/lib/launch4j/web/docs1.html deleted file mode 100644 index 69a7fcf49..000000000 --- a/installer/lib/launch4j/web/docs1.html +++ /dev/null @@ -1,345 +0,0 @@ - - - - - Launch4j :: Cross-platform java application wrapper for -creating Windows native executables - - - - - - - -
    -
    1.4.2,  -2.0.RC3 -
    - -
    -

    How to wrap your -application
    -

    -Launch4j wraps only -executable jars, which aren't -very -difficult -to create. Package your application in a jar file and include a -manifest with -the Main-Class -attribute -defined. In order to use external jars, you must also define the Class-Path -attribute. Create a -configuration file and run launch4j (launch4j -my_application.cfg). It's a good idea to run it inside a console -window to see the output. If the configuration file is invalid, -launch4j will provide useful information that will help you fix the -problem. If everything goes fine, the output exe will be created and -ready to run. All information provided in the config file is stored in -the executable, so you don't need it to run the application.
    -
    -

    Faster way...

    - Create -the -configuration file and let Ant do -the -rest (SimpleApp/build.xml).
    -
    -

    Configuration file (1.x)

    -Bold -elements are -required.
    -
    header headfile.bin
    jar application.jar
    outfile application.exe
    jrepath ../jre
    and/or
    javamin version
    javamax version    // optional, use only in combination with javamin.
    jvmArgs args
    jarArgs args
    chdir true|false
    setProcName true|false
    errTitle application_name
    icon icon.ico
    splash splash.bmp
    waitfor beginning_of_application_title
    splashTimeout seconds
    splashTimeoutErr true|false
    stayAlive true|false
    -
    -

    Configuration details

    - -
    -
    header
    -
    Optional, defaults to guihead.bin. -Standard headers are: guihead.bin -and consolehead.bin, -you can -also specify your own.
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    Header
    -
    App  -type
    -
    Launcher
    -
    Splash -screenWait -for the application to -close
    guihead.bin
    -
    GUI
    -
    javaw
    -
    yes
    -
    wrapper -waits only if stayAlive -is set to true, otherwise it terminates immediately or after closing -the splash screen.
    -
    consolehead.bin
    -
    console
    -
    java
    -
    no
    -
    always waits and -returns application's exit code.
    -
    -
    -
    -
    jrepath, -javamin/javamax
    -
    The jrepath -property is used -to specify the path (usually relative) of a JRE, note that this path is -not checked until the actual application execution. If you'd like the -wrapper to search for a JRE (public or SDK -private) use the javamin -property, you may also specify the javamax -to prevent it from using higher Java versions. Launch4j will always use -the highest version available (in the min/max range of course). You can -also combine these properties to change the startup process...
    -
    -
    -
    -
    jrepath
    -
    Run if bundled JRE and -javaw.exe -are present, otherwise stop with error.
    -
    jrepath -+ javamin [+ javamax]
    -
    Use bundled JRE first, -if it -cannot be located search for Java, if that fails display error message -and open the Java download page.
    -
    javamin -[+ javamax]
    -
    Search for Java, if an -appropriate version cannot be found display error message and open the -Java download page.
    -
    -
    -
    -
    jvmArgs
    -
    Optional, accepts -everything you would normally pass to -java/javaw -launcher: assertion options, system properties and X options.
    -
    -
    -
    jarArgs
    -
    Optional, constant -command line arguments.
    -
    -
    -
    chdir
    -
    Optional, defaults to -false. -Change current directory to exe location. Set this property to true, if -you have resources outside the jar or want to use a bundled JRE which -location is relative to the executable.
    -
    -
    -
    setProcName
    -
    Optional, defaults to -false. -Set the process name as the executable filename. Creates a temporary -file in launch4j-tmp directory inside the used JRE. These files are -deleted by -any launch4j wrapped application, which sets the process name and uses -the same JRE. The removal takes place when the application starts, -so at least one copy of this file will always be present.
    -
    -
    -
    errTitle
    -
    Optional, -sets the title of the error message box that's displayed if Java cannot -be found for instance. This usually should contain the name of your -application. The console header prefixes error messages with this -property (myapp: error...)
    -
    - -
    -
    icon
    -
    Accepted file format: -ICO
    -
    The first icon is used -and rescaled when needed.
    -
    -
    -
    splash
    -
    Accepted file format: -BMP
    -Ignored by consolehead.bin
    -
    -
    -
    waitfor
    -
    Optional. Specifies -the beginning of the application title, -used to -determine when the splash screen is to be closed. Don't include version -numbers or other information (My -Application v1.20, My -App -- Program setup...). If omitted, the splash screen -will -close on timeout.
    -Ignored by consolehead.bin
    -
    - -
    -
    splashTimeout
    -
    Optional, defaults to -60. -Number of seconds after which the splash screen must close. Splash -timeout may cause an error depending on splashTimeoutErr -property. Ignored by consolehead.bin
    -
    - -
    -
    splashTimeoutErr
    -
    Optional, defaults to -true. -True signals -an error on splash timeout, false -closes the splash screen quietly.
    - Ignored -by consolehead.bin
    -
    - -
    -
    stayAlive
    -
    Optional, defaults to -false -in guihead.bin -/ always true in consolehead.bin. -When enabled the -launcher waits for the Java application to finish and returns it's exit -code.
    -
    -

    Example configurations

    -
    jar paint2\paint2.jar
    outfile paint2\paint2.exe
    javamin 1.4.0
    javamax 1.4.2
    icon paint2\paint2.ico
    errTitle Paint2 Error
    splash paint2\paint2.bmp
    waitfor Paint2
    splashTimeout 45
    chdir true
    setProcName true
    - -
    header consolehead.bin
    jar dist\ConsoleApp.jar
    outfile dist\ConsoleApp.exe
    jrepath ..\jre
    javamin 1.4.2
    icon l4j\ConsoleApp.ico
    chdir true
    setProcName true
    errTitle ConsoleApp
    jvmArgs -Xloggc:gclog.txt
    -
    - -
    - - diff --git a/installer/lib/launch4j/web/docs2.html b/installer/lib/launch4j/web/docs2.html deleted file mode 100644 index 9d539c89d..000000000 --- a/installer/lib/launch4j/web/docs2.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - - Launch4j :: Cross-platform java application wrapper for creating Windows native executables - - - - - - -
    -
    1.4.2,  -2.0.RC3 -
    - -
    -Running -launch4j
    -Configuration -file
    -Importing -1.x configuration
    -Ant Task
    -
    -
    -

    Running -launch4j
    -

    -Run launch4j.exe -or launch4j -script without command -line arguments to enter the GUI mode.
    -
    launch4j.exe
    -To wrap a jar in console mode use launch4jc.exe and -specify the configuration file using an absolute path.
    -
    launch4jc.exe c:\src\demo\l4j\config.xml
    -On linux use the launch4j -script.
    -
    launch4j ~/src/demo/l4j/config.xml
    -
    -

    Configuration -file

    -Launch4j requires an xml configuration file for each output executable. -You can create and edit it conveniently using the graphic user -interface or your favorite editor. Alternatively it's possible to pass -all of the configuration parameters through the Ant task. All files -except for <jre><path> -may be absolute paths or -relative to the configuration file path.
    -
    <!-- Bold elements are required -->
    <launch4jConfig>
    <!-- Header types: 0-GUI, 1-console -->
    <headerType>0|1</headerType>
      <jar>file</jar>
    <outfile>file.exe</outfile>
    <errTitle>text</errTitle>
    <jarArgs>text</jarArgs>
    <chdir>path</chdir>
    <customProcName>true|false</customProcName>
    <stayAlive>true|false</stayAlive>
    <icon>file</icon>
    <jre>
    <!-- Specify one of the following or both -->
    <path>path</path>
    <minVersion>x.x.x[_xx]</minVersion>
    <maxVersion>x.x.x[_xx]</maxVersion>
    <!-- Heap sizes in MB, 0-use default -->
    <initialHeapSize>MB</initialHeapSize>
    <maxHeapSize>MB</maxHeapSize>
    <args>text</args>
    </jre>
    <splash>
    <file>file</file>
    <waitForWindow>true|false</waitForWindow>
    <timeout>seconds [60]</timeout>
    <timeoutErr>true|false</timeoutErr>
    </splash>
    <versionInfo>
    <fileVersion>x.x.x.x</fileVersion>
    <txtFileVersion>text</txtFileVersion>
    <fileDescription>text</fileDescription>
    <copyright>text</copyright>
    <productVersion>x.x.x.x</productVersion>
    <txtProductVersion>text</txtProductVersion>
    <productName>text</productName>
    <companyName>text</companyName>
    <internalName>filename</internalName>
    <originalFilename>filename.exe</originalFilename>
    </versionInfo>
    </launch4jConfig>
    -
    -
    <headerType>
    -
    Type of the header used to -wrap the application.
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    Header type
    -
    App -type
    -
    Launcher
    -
    Splash -screenWait -for the application to -close
    0
    -
    GUI
    -
    javaw
    -
    yes
    -
    wrapper -waits only if stayAlive -is set to true, otherwise it terminates immediately or after closing -the splash screen.
    -
    1
    -
    console
    -
    java
    -
    no
    -
    always waits and -returns application's exit code.
    -
    -
    -
    -
    <jar>
    -
    Executable jar to wrap.
    -
    -
    -
    <outfile>
    -
    Output executable file.
    -
    -
    -
    <errTitle>
    -
    Optional, -sets the title of the error message box that's displayed if Java cannot -be found for instance. This usually should contain the name of your -application. The console header prefixes error messages with this -property (myapp: error...)
    -
    -
    -
    <jarArgs>
    -
    Optional, constant -command line arguments.
    -
    -
    -
    <chdir>
    -
    Optional. Change current -directory to an arbitrary path relative to the executable.
    -If you omit this property -or leave it blank it will have no effect. Setting it to . -will change the current dir to the same directory as the executable. .. -will change it to the parent directory, and so on.
    -
    -
    <chdir>.</chdir>
    -
    -
    -
    <chdir>../somedir</chdir>
    -
    -
    -
    -
    <customProcName>
    -
    Optional, defaults to -false. -Set the process name as the executable filename. Creates a temporary -file in launch4j-tmp directory inside the used JRE. These files are -deleted by -any launch4j wrapped application, which sets the process name and uses -the same JRE. The removal takes place when the application starts, -so at least one copy of this file will always be present.
    -
    -
    -
    <stayAlive>
    -
    Optional, defaults to -false -in GUI header, -always true in console header. -When enabled the -launcher waits for the Java application to finish and returns it's exit -code.
    -
    -
    -
    <icon>
    -
    Application icon in ICO -format. May contain multiple color depths/resolutions.
    -
    -
    -
    -
    <jre>
    -
    Required element that groups -JRE settings.
    -
    -
    -
    -
    <path>, -<minVersion>, <maxVersion>
    -
    -
    The <path> -property -is used -to specify the relative path (to the executable) of an embedded JRE, it -does not rely on the current directory or <chdir>. -Note that this path is -not checked until the actual application execution. If you'd like the -wrapper to search for a JRE (public or SDK -private) use the <minVersion> -property, you may also specify the <maxVersion> -to prevent it from using higher Java versions. Launch4j will always use -the highest version available (in the min/max range of course). You can -also combine these properties to change the startup process...
    -
    -
    -
    -
    <path>
    -
    Run if bundled JRE and -javaw.exe -are present, otherwise stop with error.
    -
    <path> + -<minVersion>  [+ <maxVersion>]
    -
    Use bundled JRE first, -if it -cannot be located search for Java, if that fails display error message -and open the Java download page.
    -
    <minVersion>  -[+ <maxVersion>]
    -
    Search for Java, if an -appropriate version cannot be found display error message and open the -Java download page.
    -
    -
    -
    -
    -
    -
    <initialHeapSize>
    -
    Optional, initial heap -size in MB, 0 - use default.
    -
    -
    -
    <maxHeapSize>
    -
    Optional, max heap size in -MB, 0 - use default.
    -
    -
    -
    <args>
    -
    Optional, accepts -everything you would normally pass to -java/javaw -launcher: assertion options, system properties and X options.
    -
    -
    -
    -
    <splash>
    -
    Optional, groups the splash -screen settings. Allowed only in GUI header.
    -
    -
    -
    -
    -
    <file>
    -
    Splash screen image in BMP -format.
    -
    -
    -
    <waitForWindow>
    -
    Optional, -defaults to true. Close the splash screen when an application window or -Java error message box appears. If set to false, the splash screen will -be closed on timeout.
    -
    - -
    -
    -
    <timeout>
    -
    Optional, defaults to -60. -Number of seconds after which the splash screen must be closed. Splash -timeout may cause an error depending on <timeoutErr>.
    -
    -
    -
    <timeoutErr>
    -
    Optional, defaults to -true. -True signals -an error on splash timeout, false -closes the splash screen quietly.
    -
    -
    -
    -
    <versionInfo>
    -
    Optional, version -information to be displayed by the Windows -Explorer.
    -
    -
    -
    -
    <fileVersion>
    -
    Version number 'x.x.x.x'
    -
    -
    -
    -
    <txtFileVersion>
    -
    Free form file version, -for example '1.20.RC1'.
    -
    -
    -
    -
    <fileDescription>
    -
    File description presented -to the user.
    -
    -
    -
    -
    <copyright>
    -
    Legal copyright.
    -
    -
    -
    -
    <productVersion>
    -
    Version number 'x.x.x.x'
    -
    -
    -
    -
    <txtProductVersion>
    -
    Free form file version, -for example '1.20.RC1'.
    -
    -
    -
    -
    <productName>
    -
    Text.
    -
    -
    -
    -
    <companyName>
    -
    Optional text.
    -
    -
    -
    -
    <internalName>
    -
    Internal name without -extension, original filename or module -name for example.
    -
    -
    -
    -
    <originalFilename>
    -
    Original name of the file -without the path. Allows to determine -whether a file has been renamed by a user.
    -
    -
    -
    -
    -

    Importing -1.x -configuration

    -It's possible to import a 1.x configuration file using the GUI -interface. Open the file, correct the paths and save it as a new xml -configuration.
    -
    -

    Ant -task

    -You may set a launch4j directory property or change the task definition. -
    <property name="launch4j.dir" location="/opt/launch4j" />
    -Define the task in your Ant build script.
    -
    <taskdef name="launch4j"
    classname="net.sf.launch4j.ant.Launch4jTask"
    classpath="${launch4j.dir}/launch4j.jar
    :${launch4j.dir}/lib/xstream.jar" />
    -Execute the task!
    -
    <launch4j configFile="./l4j/demo.xml" />
    -You can set or override the following configuration properties...
    -<jar>
    -<outfile>
    -<versionInfo>
    -    <fileVersion>
    -    <txtFileVersion>
    -    <productVersion>
    -    <txtProductVersion>

    -
    -
    <launch4j configFile="./l4j/demo.xml"
    outfile="mydemo.exe"
     fileVersion="1.0.0.0" txtFileVersion="1.0 RC2" />
    -You can also define the entire configuration in the task, but it will -not be possible to edit such a file in the GUI mode. All paths except -for <chdir> and <jre><path> are -calculated using the basedir project attribute. -
    <launch4j>
    <config headerType="0" jar="demo.jar" outfile="demo.exe">
    <jre minVersion="1.4.0" />
    </config>
    </launch4j>
    -
    - -
    - \ No newline at end of file diff --git a/installer/lib/launch4j/web/index.html b/installer/lib/launch4j/web/index.html index 742124946..d1f928e6e 100644 --- a/installer/lib/launch4j/web/index.html +++ b/installer/lib/launch4j/web/index.html @@ -1,152 +1,128 @@ - - - - - Launch4j :: Cross-platform Java application wrapper for creating Windows native executables - - - - - - -
    -
    1.4.2,  -2.0.RC3 -
    - -
    -Cross-platform Java application wrapper for creating Windows native EXEs. -

    -Launch4j is a cross-platform tool for wrapping -Java applications distributed as jars in lightweight Windows -native executables. The executable can be -configured to search for a certain JRE version or -use a bundled one, and it's possible to set -runtime options, like the initial/max heap size. -The wrapper also provides better user experience -through an application icon, a native pre-JRE -splash screen, a custom process name, and a Java -download page in case the appropriate JRE cannot -be found.
    -
    -

    -Features (2.x)

    -
      -
    • Launch4j wraps jars in -Windows native executables and -allows to -run them like a regular Windows program. It's possible to wrap -applications on Linux!
      -
    • -
    • Doesn't -extract the jar from the -executable.
    • -
    • Custom application icon with -multiple resolutions and color -depths.
    • -
    • Native pre-JRE -splash screen in BMP format -shown until -the -Java -application starts.
    • -
    • Process -name as the executable -filename to -easily -identify your application.
    • -
    • Works with a bundled JRE or -searches for newest JRE / SDK -in -given range.
    • -
    • Opens Java -download page if an -appropriate Java version -cannot be found.
    • -
    • Supports GUI -and -console apps.
      -
    • -
    • Passes command line -arguments, also supports constant arguments.
    • -
    • Allows to set the initial/max heap size.
      -
    • -
    • JVM options: set system properties, tweak the garbage -collection...
    • -
    • Option -to change current directory to the executable location.
    • -
    • Custom version -information shown by Windows Explorer.
      -
    • -
    • GUI and command line -interface.
    • -
    • Build integration through an Ant -task.
      -
    • -
    • Lightweight: 21 KB!
    • -
    • It's -free and may be used for -commercial -purposes.
    • -
    • Includes a sample -application and Ant script -that -automates the -build -process from Java sources to native executable.
      -
    • -
    • The wrapped program -works on all Windows platforms (98/Me/NT/2K/Xp), launch4j works on -NT/2K/Xp, Linux (developed and tested on FC2).
      -
    • -
    -

    License

    -This program is free software licensed under the GPL -license, the head -subproject (the code which is attached to the wrapped jars) is licensed -under the LGPL -license. -Launch4j may be used for wrapping closed source, commercial -applications.
    -
    -

    Info

    Running Launch4j on other Java enabled platforms is a matter -of getting a binary version of MinGW -binutils 2.15.90 (windres -and ld -only) for your system or compiling them. If you'll -provide these, I'll be able to create a binary package -available for download.
    -
    -
    - -
    - \ No newline at end of file + + + + Launch4j - Cross-platform Java executable wrapper + + + + + + + +
    +
    + launch4j 3.0.1 +
    + +
    +

    Cross-platform Java executable wrapper

    +

    + Launch4j is a cross-platform tool for wrapping + Java applications distributed as jars in lightweight Windows + native executables. The executable can be + configured to search for a certain JRE version or + use a bundled one, and it's possible to set + runtime options, like the initial/max heap size. + The wrapper also provides better user experience + through an application icon, a native pre-JRE + splash screen, a custom process name, and a Java + download page in case the appropriate JRE cannot + be found. +

    +How to use Launch4 +

    Features

    +
      +
    • Launch4j wraps jars in Windows native executables and allows to run them + like a regular Windows program. It's possible to wrap applications + on Windows, Linux, Mac OS X and Solaris! +
    • +
    • Also creates launchers for jars and class files without wrapping.
    • +
    • + Supports executable jars and dynamic classpath resolution using + environment variables and wildcards. +
    • +
    • Doesn't extract the jar from the executable.
    • +
    • Custom application icon with multiple resolutions and color depths.
    • +
    • Native pre-JRE splash screen in BMP format shown until + the Java application starts. +
    • +
    • Process name as the executable filename to easily + identify your application, initial priority and + single aplication instance features. +
    • +
    • Works with a bundled JRE or searches for newest Sun or IBM JRE / JDK in given + version range.
    • +
    • Opens Java download page if an appropriate Java version cannot be + found or a support website in case of an error. +
    • +
    • Supports GUI and console apps.
    • +
    • Supports Vista manifests and XP visual style manifests.
    • +
    • Passes command line arguments, also supports constant arguments.
    • +
    • Allows to set the initial/max heap size also dynamically in percent of free memory.
    • +
    • JVM options: set system properties, tweak the garbage collection...
    • +
    • Runtime JVM options from an .l4j.ini file.
    • +
    • Runtime command line switches to change the compiled options.
    • +
    • Access to environment variables, the registry and executable file path through system properties.
    • +
    • Set environment variables.
    • +
    • Option to change current directory to the executable location.
    • +
    • The JRE's bin directory is appended to the Path environment variable.
    • +
    • Custom version information shown by Windows Explorer.
    • +
    • GUI and command line interface.
    • +
    • Build integration through an Ant task and a Maven Plugin.
    • +
    • Lightweight: 26 KB!
    • +
    • It's free and may be used for commercial purposes.
    • +
    • Includes a sample application and Ant script + that automates the build process from Java sources to native executable. +
    • +
    • The wrapped program works on all Windows platforms (98/Me/NT/2K/XP/Vista), + Launch4j works on NT/2K/XP/Vista, Linux, Mac OS X (build on 10.4) and Sparc Solaris 8-10. +
    • +
    +

    License

    +

    + This program is free software licensed under the + BSD license, the head subproject + (the code which is attached to the wrapped jars) is licensed under the + MIT license. + Launch4j may be used for wrapping closed source, commercial applications. +

    +

    Info

    +

    + Running Launch4j on other Java enabled platforms is a matter of getting a binary version + of MinGW binutils 2.15.90 (windres and ld only) + for your system or compiling them. If you'll provide these, I'll be able to create a binary package + available for download. +

    + +
    + +
    + + diff --git a/installer/lib/launch4j/web/launch4j-use.gif b/installer/lib/launch4j/web/launch4j-use.gif new file mode 100644 index 0000000000000000000000000000000000000000..ccb888247ea08769fc3cdd4b402529ad8b8d5f3b GIT binary patch literal 12724 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 - - - - Launch4j :: Cross-platform java application wrapper for -creating Windows native executables - - - - - - - -
    -
    1.4.2,  -2.0.RC3 -
    - - - -
    - - + + + + Launch4j - Cross-platform Java executable wrapper + + + + + + + + + + diff --git a/installer/lib/launch4j/web/style.css b/installer/lib/launch4j/web/style.css index 0f15e5493..f57c086d6 100644 --- a/installer/lib/launch4j/web/style.css +++ b/installer/lib/launch4j/web/style.css @@ -1,23 +1,159 @@ -/* Generated by CaScadeS, a stylesheet editor for Mozilla Composer */ - - pre { border: 1px dashed rgb(153, 153, 153); - padding: 8px; - background-color: rgb(241, 241, 241); - font-family: Courier New,Courier,monospace; - font-size: smaller; - } - - .codeword { color: rgb(51, 51, 255); - } - - dt { font-weight: bold; - } - - em { font-weight: bold; - color: rgb(102, 102, 102); - font-style: normal; - } - - body { font-family: Times New Roman,Times,serif; - } - +body, table { + font: 12px/20px Verdana, Arial, Helvetica, sans-serif; +} + + +pre { + padding: 8px; + border: 1px dashed #999999; + background-color: #f1f1f1; + font: 13px/20px "Courier New", Courier, monospace; +} + + +.version { + color: #307fe1; + font-weight: bold; +} + + +.codeword { + color: #3333ff; +} +.attrib { + color: #404040; +} +.option { + font-family: "Courier New", Courier, monospace; + font-weight: bold; +} + + +dt { + margin-top: 1.5em; + color: #404040; + font-size: 115%; + border-bottom: 1px solid #cccccc; +} +dd { + margin-left: 1em; +} + + +.warn, ul.changes em { + color: #ff0000; +} + + +table { + margin-top: 1em; + padding: 0; + border: 1px solid #999999; + border-collapse: collapse; + text-align: center; +} +table th { + padding: 2px 4px; + border: 1px solid #999999; + background-color: #f1f1f1; +} +table td { + padding: 2px 4px; + border: 1px solid #999999; +} +.description { + text-align: left; +} + + +#container { + width: 90%; + margin: 10px auto; + border-width: 0; + background-color: #ffffff; +} + + +#top { + padding: 0.5em; + background-color: #ffffff; +} +#top h1 { + margin: 0; + padding: 0; +} + + +#leftnav { + float: left; + width: 170px; + margin: 0; + padding: 0.5em; + background-color: #ffffff; +} +#leftnav ul { + margin: 0; + padding: 0; + border: none; + list-style-type: none; + font-size: 115%; +} +#leftnav a { + width: 170px; + height: 1.6em; + line-height: 1.6em; + display: block; + padding-left: 0.2em; +} +#leftnav a:link, #leftnav a:visited { + text-decoration: none; + color: #666666; +} +#leftnav a:hover { + background-color: #307fe1; + color: #ffffff; +} + + +#content { + max-width: 52em; + margin-left: 190px; + padding: 1em; + border-left: 1px solid #cccccc; + background-color: #ffffff; +} + +#content ul { + list-style-image: url('bullet.gif'); +} + +#content a:link { + text-decoration: none; + color: #307fe1; +} +#content a:visited { + text-decoration: none; + color: #307fe1; +} +#content a:hover { + color: #307fe1; + text-decoration: underline; +} + +#content h2 { + font-size: 150%; +} +#content h2:first-child { + margin: 0 0 0.5em; +} + + +.footer { + clear: both; + margin: 0; + padding: 0.5em; + background-color: #ffffff; + color: #333333; + text-align: center; + font-size: 90%; +}
    +
    + launch4j 3.0.1 +
    +
    +
    +

    Changelog

    + +

    Changes in version 3.0.1 (20-07-2008)

    +
      +
    • Enhanced the runtime logging (--l4j-debug).
    • +
    • Fixed critical bug #1925387 64-bit JDK detection problem caused a runtime search error (found by Stivo).
    • +
    • Fixed bug #1919406, #1989479 Not every option is loaded from saved xml file (found by Robert Lachner, Jan-Philipp Rathje).
    • +
    • Fixed bug #1930222 Simple typo (found by Daniel).
    • +
    - -
    -
    1.4.2,  -2.0.RC3 -
    -
    -
    -
    -

    Changelog

    -Changes in version 2.0 RC3 (13-08-2005) - final RC
    • Correct handling of pathnames with spaces.
    • Fixed the '%20' pathname bug.
    • Fixed basedir bug (Richard Xing).
    • Splash screen can be closed when the application window becomes visible with out specifying it's title (Martin Busik), update your config file: <waitForTitle>title</waitForTitle> -is now <waitForWindow>true</waitForWindow>.
    • Fixed build.bat files in demo directories.
    Changes in version 2.0 RC2 (21-06-2005)
    -
    -
      -
    • chdir allows to change the current directory to arbitrary paths -relative to the executable (FR #1144907). It's incompatible with -previous versions, update your config file: <chdir>true</chdir> -is now <chdir>.</chdir>.
      -
    • -
    • Embedded JRE path no longer depends on chdir function.
      -
    • -
    • Fixed Ant task bug, build files outside launch4j's directory -wouldn't work. (Josh Elsasser submitted a patch that works without -setting launch4j's home dir in the build file. Thanks!).
    • -
    • Removed static edge from splash screen (Serge Baranov).
    • -
    • Program checks that the output file path doesn't contain spaces.
    • -
    • Fixed a NPE bug caused by a missing maxVersion property (found by -Morgan Schweers).
    • -
    • Fixed relative JRE path bug (found by Nili_).
    • -
    • Cleaned up the Builder class.
    • -
    • Fixed Ant task NPE where the config was entirely defined in the -build file (Josh Elsasser).
    • + +

      Changed license to BSD, MIT (26-01-2008)

      +
        +
      • + The upcoming Launch4j 3.0.0 release will be licensed under the much more + liberal new BSD license. The head subproject (the binary header attached to wrapped jars) + will be licensed under the similar MIT license. +
      -Changes in version 2.0 -RC (07-06-2005)
      -
        -
      • Added an Ant task for better build integration.
      • -
      • Added 2.x documentation.
      • -
      • Updated the demo configuration files.
      • -
      • Fixed issues with relative paths in the configuration.
      • -
      • Removed the '-1' option in console mode.
        -
      • -
      • Minor fixes.
        -
      • -
      -Changes in version 2.0 -beta2 (23-05-2005)
      -
      -
        -
      • # comments are recognized when importing 1.x cfg files.
      • -
      • Added version information.
      • -
      • Resource file is displayed when a resource error occurs.
      • -
      • Fixed a bug found by Max, options on the first tab were always -enabled.
        -
      • -
      -

      Changes in version 2.0 -beta1 (13-05-2005)
      -

      -
        -
      • Completely new, cross-platform wrapper - create windows -executables on Linux.
        -
      • -
      • New .xml configuration file.
      • -
      • Application icon with multiple resolutions and color depths.
      • -
      • Swing GUI interface.
      • -
      • Header compiled with MinGW port of gcc instead of VC++.
        -
      • -
      -Changes in version -1.4.2 (12-03-2005)
      -
      -
        -
      • Fixed bug #1158143, stayAlive -without a splash screen caused an infinite loop (found by Gregory -Kotsaftis).
        -
      • -
      -Changes in -version 1.4.1 (04-03-2005)
      -
        -
      • Fixed bug #1119040, buffer for reading config properties -was too short (found by Tom Jensen and Neil).
      • -
      • Added configurable splash timeout (FR #1102951).
      • -
      • Added option to disable the error message on splash timeout -(FR #1109159).
      • -
      • Option to keep the gui launcher 'alive' after starting an -application (FR #1124653).
      • -
      • Removed version info.
      • -
      • 'waitfor' property is now optional.
      • -
      -Changes in -version -1.4.0 -(26-01-2005)
      -
      -
        -
      • Removed .lch4j suffix from process name, now it has the -form of the executable filename. The temporary launchers are stored in -launch4j-tmp directory (suggested by Emmanuel).
      • -
      • Added support for console apps (FR #1050053).
      • -
      -
      -Changes in -version -1.3.1 -(05-11-2004)
      -
      -
        -
      • Fixed a bug where explorer window was opened instead of -launching the application when setProcName was set to false (found by -Rob Jones).
      • -
      • Fixed temporary launcher deletion bug.
      • -
      -
      -Changes in version 1.3.0 (01-11-2004)
      -
      -
        -
      • Now you can configure launch4j to:
        -
          -
        • Use a bundled JRE.
        • -
        • Search for java, show an error message if the -right version cannot be found and open the java download page.
        • -
        • And a feature you asked for: use bundled JRE, if -that fails search for java and bring up the java download page on error.
        • -
        -
      • -
      • Enhanced code that sets the custom process name. In -case launch4j can't refresh the temporary launcher, bundled JRE on a -read only file system for example, it will use one created previously, -if it's present and has the correct size. If not, launching will still -continue, but with javaw.exe process name.Temporary launchers are -now created in the jre directory instead of jre/bin.
        -
      • -
      • errTitle property allows to set the title of the error -message box.
      • -
      -
      -
      Changes in version 1.2.1 (25-09-2004)
      -
      -
        -
      • Bugfix that allows launching from command line using short -name (#1026514 / found by Zach Del)
      • -
      -
      -
      Changes in version 1.2.0 (10-09-2004)
      -
        -
      • Custom process name (myapp.lch4j.exe)
      • -
      • 9 KB stub!
      • -
      • Jar arguments
        -
      • -
      • Bugfix that allows launching from command line.
      • -
      • Hide splash on javaw error.
        -
      • -
      • Easier configuration with case insensitive parameters + -show -unrecognized parameter.
      • -
      • 12 KB demo application, 34 KB with splash screen.
      • -
      • Configuration parameter 'args' changed -to 'jvmArgs'
      • -
      -
    - -
    - \ No newline at end of file + +

    Changes in version 3.0.0-pre2 (29-10-2006)

    +
      +
    • Enhanced GUI.
    • +
    • Redesigned error reporting.
    • +
    • Added custom error messages.
    • +
    • Added support website feature.
    • +
    • Added PWD and OLDPWD special variables and access to the registry.
    • +
    • Runtime ini file extension changed to .l4j.ini, added comments (#).
    • +
    • FR #1427811 Initial process priority.
    • +
    • FR #1547339 Added VarFileInfo structure to Version Info (Stephan Laertz).
    • +
    • FR #1584295 Updated documentation for --l4j-debug. +
    • Fixed <jarArgs/> and <args/> config conversion bug (found by Dafe Simonek).
    • +
    • Fixed the Ant task exception reporting bug, added tmpdir and bindir attributes.
    • +
    • Fixed bug #1563415 Problem with launching application when ini file exists (found by mojomax).
    • +
    • Fixed bug #1527619 Console header wildcard expansion (found by erikjv).
    • +
    • Fixed bug #1544167 NPE when dontwrap and only classpath given (found by Hendrik Schreiber).
    • +
    • Fixed bug #1584264 Dropdown boxes get mixed up (found by Larsen).
    • +
    + +

    News (17-10-2006)

    + + +

    Changes in version 3.0.0-pre1 (21-07-2006)

    +
      +
    • Improved configuration file format and embedded Ant config.
    • +
    • Launch executable jars, regular jars and class files.
    • +
    • Added dynamic classpath resolution with environment variable references and wildcards.
    • +
    • Added option to set environment variables before launching the application.
    • +
    • New command line switches to change the compiled options.
    • +
    • Improved debug information.
    • +
    • Added support for XP visual style manifests.
    • +
    • Added option to disable use of private JREs.
    • +
    • Many small fixes and improvements...
    • +
    + +

    Configuration file changes in 3.x

    +
      +
    • Previous formats (1.x and 2.x) are supported.
    • +
    • <headerType> accepts gui|console
    • +
    • <jarArgs> was changed to <cmdLine>
    • +
    • + <launch4jConfig><headerObjects><file> was changed to + <launch4jConfig><obj> +
    • +
    • + <launch4jConfig><libs><file> was changed to + <launch4jConfig><lib> +
    • +
    • + <launch4jConfig><jre><args> was changed to multiple + <launch4jConfig><jre><opt> +
    • +
    + +

    Embedded Ant configuration changes in 3.x

    +
      +
    • + <jre args="value"> was changed to + <jre><opt>value</opt></jre> +
    • +
    • Now it's possible to define headerObjects, libs and classpath.
    • +
    + +

    Changes in version 2.1.5 (21-07-2006)

    +
      +
    • Changed the Java download site to http://java.com/download.
    • +
    • Now it's possible to use absolute and relative paths to specify the bundled JRE.
    • +
    + +

    Changes in version 2.1.4 (15-06-2006)

    +
      +
    • + Fixed bug #1503996 Only the first wrapper instance had a custom process name + (found by Helge Böhme). +
    • +
    + +

    Changes in version 2.1.3 (31-05-2006)

    +
      +
    • + Fixed bug #1497453 Ant task doesn't support relative jar path with '..' + (found by Aston, Pavel Moukhataev). +
    • +
    • Jar argument size limit is now 16KB.
    • +
    • Environment variable size limit raised to 32KB.
    • +
    • Allow to concatenate multiple env. variables in one property (Maria D.)
    • +
    • Added launch4j.tmpdir property.
    • +
    + +

    Changes in version 2.1.2 (03-04-2006)

    +
      +
    • Important bugfix: insufficient command line buffer size was increased to 32KB + (found by Sebastian Kopsan).
    • +
    • Added runtime JVM options from an .ini file.
    • +
    • Launch4j's bin directory is now configurable through launch4j.bindir + system property.
    • +
    + +

    Changes in version 2.1.1 (25-01-2006)

    +
      +
    • Fixed bug #1402748. Validation error occurred when using an Ant task with + embedded config and dontWrapJar option (found by Chris Nokleberg).
    • +
    + +

    Changes in version 2.1.0 (10-01-2006)

    +
      +
    • More features and smaller header: 18 KB!!
    • +
    • Added launcher mode, you can choose whether or not to wrap the jar.
    • +
    • Spanish translation of the website/docs and program messages + (Patricio Martínez Ros).
    • +
    • JRE's bin directory is appended to the Path environment variable + (Ianiv Schweber).
    • +
    • Added special variables EXEDIR and EXEFILE that hold the executable's + directory and full path.
    • +
    • Support for mapping environment variables to system properties.
    • +
    • Added debug launching mode - various information is displayed before + starting the Java application.
    • +
    • Fixed min/max JRE version checking, previous versions allowed these + to be equal (found by Ryan).
    • +
    • Bug fixed. Quotes in jar/JVM arguments were handled incorrectly (found by Juan Alvarez Ferrando).
    • +
    • A few other enhancements.
    • +
    + +

    Changes in version 2.0.0 (31-10-2005)

    +
      +
    • Launch4j for Mac OS X is available thanks to Peter Centgraf.
    • +
    • Added support for custom headers.
    • +
    • Fixed bug #1343908, command line arguments with spaces were handled + incorrectly by the console header (found by Oliver Schaefer / Steve Alberty).
    • +
    • Fixed stdin redirection bug (found by Timo Santasalo).
    • +
    + +

    Changes in version 2.0 RC3 (13-08-2005) - final RC

    +
      +
    • Correct handling of pathnames with spaces.
    • +
    • Fixed the '%20' pathname bug.
    • +
    • Fixed basedir bug (Richard Xing).
    • +
    • Splash screen can be closed when the application window becomes visible + with out specifying it's title (Martin Busik). + Update your config file: <waitForTitle>title</waitForTitle> + is now <waitForWindow>true</waitForWindow>. +
    • +
    • Fixed build.bat files in demo directories.
    • +
    + +

    Changes in version 2.0 RC2 (21-06-2005)

    +
      +
    • chdir allows to change the current directory to arbitrary paths + relative to the executable (FR #1144907). It's incompatible with + previous versions, update your config file: + <chdir>true</chdir> + is now <chdir>.</chdir>. +
    • +
    • Bundled JRE path no longer depends on chdir function.
    • +
    • Fixed Ant task bug, build files outside launch4j's directory + wouldn't work. Josh Elsasser submitted a patch that works without + setting launch4j's home dir in the build file. Thanks! +
    • +
    • Removed static edge from splash screen (Serge Baranov).
    • +
    • Program checks that the output file path doesn't contain spaces.
    • +
    • Fixed a NPE bug caused by a missing maxVersion property + (found by Morgan Schweers). +
    • +
    • Fixed relative JRE path bug (found by Nili_).
    • +
    • Cleaned up the Builder class.
    • +
    • Fixed Ant task NPE where the config was entirely defined in the + build file (Josh Elsasser). +
    • +
    + +

    Changes in version 2.0 RC (07-06-2005)

    +
      +
    • Added an Ant task for better build integration.
    • +
    • Added 2.x documentation.
    • +
    • Updated the demo configuration files.
    • +
    • Fixed issues with relative paths in the configuration.
    • +
    • Removed the '-1' option in console mode.
    • +
    • Minor fixes.
    • +
    + +

    Changes in version 2.0 beta2 (23-05-2005)

    +
      +
    • # comments are recognized when importing 1.x cfg files.
    • +
    • Added version information.
    • +
    • Resource file is displayed when a resource error occurs.
    • +
    • Fixed a bug found by Max, options on the first tab were always enabled.
    • +
    + +

    Changes in version 2.0 beta1 (13-05-2005)

    +
      +
    • Completely new, cross-platform wrapper - create windows executables on Linux.
    • +
    • New .xml configuration file.
    • +
    • Application icon with multiple resolutions and color depths.
    • +
    • Swing GUI interface.
    • +
    • Header compiled with MinGW port of gcc instead of VC++.
    • +
    + +

    Changes in version 1.4.2 (12-03-2005)

    +
      +
    • Fixed bug #1158143, stayAlive without a splash screen caused + an infinite loop (found by Gregory Kotsaftis). +
    • +
    + +

    Changes in version 1.4.1 (04-03-2005)

    +
      +
    • Fixed bug #1119040, buffer for reading config properties + was too short (found by Tom Jensen and Neil). +
    • +
    • Added configurable splash timeout (FR #1102951).
    • +
    • Added option to disable the error message on splash timeout (FR #1109159).
    • +
    • Option to keep the gui launcher 'alive' after starting an application (FR #1124653).
    • +
    • Removed version info.
    • +
    • 'waitfor' property is now optional.
    • +
    + +

    Changes in version 1.4.0 (26-01-2005)

    +
      +
    • Removed .lch4j suffix from process name, now it has the + form of the executable filename. The temporary launchers are stored in + launch4j-tmp directory (suggested by Emmanuel). +
    • +
    • Added support for console apps (FR #1050053).
    • +
    + +

    Changes in version 1.3.1 (05-11-2004)

    +
      +
    • Fixed a bug where explorer window was opened instead of + launching the application when setProcName was set to false + (found by Rob Jones). +
    • +
    • Fixed temporary launcher deletion bug.
    • +
    + +

    Changes in version 1.3.0 (01-11-2004)

    +
      +
    • Now you can configure launch4j to: +
        +
      • Use a bundled JRE.
      • +
      • Search for java, show an error message if the + right version cannot be found and open the java download page.
      • +
      • And a feature you asked for: use bundled JRE, if + that fails search for java and bring up the java download page on error.
      • +
      +
    • +
    • Enhanced code that sets the custom process name. In + case launch4j can't refresh the temporary launcher, bundled JRE on a + read only file system for example, it will use one created previously, + if it's present and has the correct size. If not, launching will still + continue, but with javaw.exe process name.Temporary launchers are + now created in the jre directory instead of jre/bin. +
    • +
    • errTitle property allows to set the title of the error message box.
    • +
    + +

    Changes in version 1.2.1 (25-09-2004)

    +
      +
    • Bugfix that allows launching from command line using short + name (#1026514 / found by Zach Del) +
    • +
    + +

    Changes in version 1.2.0 (10-09-2004)

    +
      +
    • Custom process name (myapp.lch4j.exe)
    • +
    • 9 KB stub!
    • +
    • Jar arguments
    • +
    • Bugfix that allows launching from command line.
    • +
    • Hide splash on javaw error.
    • +
    • Easier configuration with case insensitive parameters + show unrecognized parameter.
    • +
    • 12 KB demo application, 34 KB with splash screen.
    • +
    • Configuration parameter 'args' changed to 'jvmArgs'
    • +
    +
    + +