From 18e81848be67cb4e13672fa69eb2fa81e6c5c073 Mon Sep 17 00:00:00 2001 From: Edric Milaret <edric.ladent-milaret@savoirfairelinux.com> Date: Wed, 29 Apr 2015 13:51:36 -0400 Subject: [PATCH] windows: added file for msi creation Refs #72040 Change-Id: I3f6d985a02f21f04801ed654b8e10adf0d6be390 --- License.rtf | 678 ++++++++++++++++++++++++++++++++++++++++++++++ RingWinClient.pro | 8 +- ico.rc | 1 + images/ring.ico | Bin 0 -> 155918 bytes mainwindow.cpp | 2 +- mainwindow.ui | 8 +- ring.wxs | 93 +++++++ 7 files changed, 787 insertions(+), 3 deletions(-) create mode 100644 License.rtf create mode 100644 ico.rc create mode 100644 images/ring.ico create mode 100644 ring.wxs diff --git a/License.rtf b/License.rtf new file mode 100644 index 0000000..5991d6c --- /dev/null +++ b/License.rtf @@ -0,0 +1,678 @@ +{\rtf1\ansi\deff0{\fonttbl{\f0\fswiss\fcharset0 Courier New;}{\f1\fnil\fcharset0 Courier New;}} +{\*\generator Msftedit 5.41.21.2510;}\viewkind4\uc1\pard\tx0\tx959\tx1918\tx2877\tx3836\tx4795\tx5754\tx6713\tx7672\tx8631\lang1033\f0\fs20 GNU GENERAL PUBLIC LICENSE\par + Version 3, 29 June 2007\par +\par + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>\par + Everyone is permitted to copy and distribute verbatim copies\par + of this license document, but changing it is not allowed.\par +\par + Preamble\par +\par + The GNU General Public License is a free, copyleft license for\par +software and other kinds of works.\par +\par + The licenses for most software and other practical works are designed\par +to take away your freedom to share and change the works. By contrast,\par +the GNU General Public License is intended to guarantee your freedom to\par +share and change all versions of a program--to make sure it remains free\par +software for all its users. We, the Free Software Foundation, use the\par +GNU General Public License for most of our software; it applies also to\par +any other work released this way by its authors. You can apply it to\par +your programs, too.\par +\par + When we speak of free software, we are referring to freedom, not\par +price. Our General Public Licenses are designed to make sure that you\par +have the freedom to distribute copies of free software (and charge for\par +them if you wish), that you receive source code or can get it if you\par +want it, that you can change the software or use pieces of it in new\par +free programs, and that you know you can do these things.\par +\par + To protect your rights, we need to prevent others from denying you\par +these rights or asking you to surrender the rights. Therefore, you have\par +certain responsibilities if you distribute copies of the software, or if\par +you modify it: responsibilities to respect the freedom of others.\par +\par + For example, if you distribute copies of such a program, whether\par +gratis or for a fee, you must pass on to the recipients the same\par +freedoms that you received. You must make sure that they, too, receive\par +or can get the source code. And you must show them these terms so they\par +know their rights.\par +\par + Developers that use the GNU GPL protect your rights with two steps:\par +(1) assert copyright on the software, and (2) offer you this License\par +giving you legal permission to copy, distribute and/or modify it.\par +\par + For the developers' and authors' protection, the GPL clearly explains\par +that there is no warranty for this free software. For both users' and\par +authors' sake, the GPL requires that modified versions be marked as\par +changed, so that their problems will not be attributed erroneously to\par +authors of previous versions.\par +\par + Some devices are designed to deny users access to install or run\par +modified versions of the software inside them, although the manufacturer\par +can do so. This is fundamentally incompatible with the aim of\par +protecting users' freedom to change the software. The systematic\par +pattern of such abuse occurs in the area of products for individuals to\par +use, which is precisely where it is most unacceptable. Therefore, we\par +have designed this version of the GPL to prohibit the practice for those\par +products. If such problems arise substantially in other domains, we\par +stand ready to extend this provision to those domains in future versions\par +of the GPL, as needed to protect the freedom of users.\par +\par + Finally, every program is threatened constantly by software patents.\par +States should not allow patents to restrict development and use of\par +software on general-purpose computers, but in those that do, we wish to\par +avoid the special danger that patents applied to a free program could\par +make it effectively proprietary. To prevent this, the GPL assures that\par +patents cannot be used to render the program non-free.\par +\par + The precise terms and conditions for copying, distribution and\par +modification follow.\par +\par + TERMS AND CONDITIONS\par +\par + 0. Definitions.\par +\par + "This License" refers to version 3 of the GNU General Public License.\par +\par + "Copyright" also means copyright-like laws that apply to other kinds of\par +works, such as semiconductor masks.\par +\par + "The Program" refers to any copyrightable work licensed under this\par +License. Each licensee is addressed as "you". "Licensees" and\par +"recipients" may be individuals or organizations.\par +\par + To "modify" a work means to copy from or adapt all or part of the work\par +in a fashion requiring copyright permission, other than the making of an\par +exact copy. The resulting work is called a "modified version" of the\par +earlier work or a work "based on" the earlier work.\par +\par + A "covered work" means either the unmodified Program or a work based\par +on the Program.\par +\par + To "propagate" a work means to do anything with it that, without\par +permission, would make you directly or secondarily liable for\par +infringement under applicable copyright law, except executing it on a\par +computer or modifying a private copy. Propagation includes copying,\par +distribution (with or without modification), making available to the\par +public, and in some countries other activities as well.\par +\par + To "convey" a work means any kind of propagation that enables other\par +parties to make or receive copies. Mere interaction with a user through\par +a computer network, with no transfer of a copy, is not conveying.\par +\par + An interactive user interface displays "Appropriate Legal Notices"\par +to the extent that it includes a convenient and prominently visible\par +feature that (1) displays an appropriate copyright notice, and (2)\par +tells the user that there is no warranty for the work (except to the\par +extent that warranties are provided), that licensees may convey the\par +work under this License, and how to view a copy of this License. If\par +the interface presents a list of user commands or options, such as a\par +menu, a prominent item in the list meets this criterion.\par +\par + 1. Source Code.\par +\par + The "source code" for a work means the preferred form of the work\par +for making modifications to it. "Object code" means any non-source\par +form of a work.\par +\par + A "Standard Interface" means an interface that either is an official\par +standard defined by a recognized standards body, or, in the case of\par +interfaces specified for a particular programming language, one that\par +is widely used among developers working in that language.\par +\par + The "System Libraries" of an executable work include anything, other\par +than the work as a whole, that (a) is included in the normal form of\par +packaging a Major Component, but which is not part of that Major\par +Component, and (b) serves only to enable use of the work with that\par +Major Component, or to implement a Standard Interface for which an\par +implementation is available to the public in source code form. A\par +"Major Component", in this context, means a major essential component\par +(kernel, window system, and so on) of the specific operating system\par +(if any) on which the executable work runs, or a compiler used to\par +produce the work, or an object code interpreter used to run it.\par +\par + The "Corresponding Source" for a work in object code form means all\par +the source code needed to generate, install, and (for an executable\par +work) run the object code and to modify the work, including scripts to\par +control those activities. However, it does not include the work's\par +System Libraries, or general-purpose tools or generally available free\par +programs which are used unmodified in performing those activities but\par +which are not part of the work. For example, Corresponding Source\par +includes interface definition files associated with source files for\par +the work, and the source code for shared libraries and dynamically\par +linked subprograms that the work is specifically designed to require,\par +such as by intimate data communication or control flow between those\par +subprograms and other parts of the work.\par +\par + The Corresponding Source need not include anything that users\par +can regenerate automatically from other parts of the Corresponding\par +Source.\par +\par + The Corresponding Source for a work in source code form is that\par +same work.\par +\par + 2. Basic Permissions.\par +\par + All rights granted under this License are granted for the term of\par +copyright on the Program, and are irrevocable provided the stated\par +conditions are met. This License explicitly affirms your unlimited\par +permission to run the unmodified Program. The output from running a\par +covered work is covered by this License only if the output, given its\par +content, constitutes a covered work. This License acknowledges your\par +rights of fair use or other equivalent, as provided by copyright law.\par +\par + You may make, run and propagate covered works that you do not\par +convey, without conditions so long as your license otherwise remains\par +in force. You may convey covered works to others for the sole purpose\par +of having them make modifications exclusively for you, or provide you\par +with facilities for running those works, provided that you comply with\par +the terms of this License in conveying all material for which you do\par +not control copyright. Those thus making or running the covered works\par +for you must do so exclusively on your behalf, under your direction\par +and control, on terms that prohibit them from making any copies of\par +your copyrighted material outside their relationship with you.\par +\par + Conveying under any other circumstances is permitted solely under\par +the conditions stated below. Sublicensing is not allowed; section 10\par +makes it unnecessary.\par +\par + 3. Protecting Users' Legal Rights From Anti-Circumvention Law.\par +\par + No covered work shall be deemed part of an effective technological\par +measure under any applicable law fulfilling obligations under article\par +11 of the WIPO copyright treaty adopted on 20 December 1996, or\par +similar laws prohibiting or restricting circumvention of such\par +measures.\par +\par + When you convey a covered work, you waive any legal power to forbid\par +circumvention of technological measures to the extent such circumvention\par +is effected by exercising rights under this License with respect to\par +the covered work, and you disclaim any intention to limit operation or\par +modification of the work as a means of enforcing, against the work's\par +users, your or third parties' legal rights to forbid circumvention of\par +technological measures.\par +\par + 4. Conveying Verbatim Copies.\par +\par + You may convey verbatim copies of the Program's source code as you\par +receive it, in any medium, provided that you conspicuously and\par +appropriately publish on each copy an appropriate copyright notice;\par +keep intact all notices stating that this License and any\par +non-permissive terms added in accord with section 7 apply to the code;\par +keep intact all notices of the absence of any warranty; and give all\par +recipients a copy of this License along with the Program.\par +\par + You may charge any price or no price for each copy that you convey,\par +and you may offer support or warranty protection for a fee.\par +\par + 5. Conveying Modified Source Versions.\par +\par + You may convey a work based on the Program, or the modifications to\par +produce it from the Program, in the form of source code under the\par +terms of section 4, provided that you also meet all of these conditions:\par +\par + a) The work must carry prominent notices stating that you modified\par + it, and giving a relevant date.\par +\par + b) The work must carry prominent notices stating that it is\par + released under this License and any conditions added under section\par + 7. This requirement modifies the requirement in section 4 to\par + "keep intact all notices".\par +\par + c) You must license the entire work, as a whole, under this\par + License to anyone who comes into possession of a copy. This\par + License will therefore apply, along with any applicable section 7\par + additional terms, to the whole of the work, and all its parts,\par + regardless of how they are packaged. This License gives no\par + permission to license the work in any other way, but it does not\par + invalidate such permission if you have separately received it.\par +\par + d) If the work has interactive user interfaces, each must display\par + Appropriate Legal Notices; however, if the Program has interactive\par + interfaces that do not display Appropriate Legal Notices, your\par + work need not make them do so.\par +\par + A compilation of a covered work with other separate and independent\par +works, which are not by their nature extensions of the covered work,\par +and which are not combined with it such as to form a larger program,\par +in or on a volume of a storage or distribution medium, is called an\par +"aggregate" if the compilation and its resulting copyright are not\par +used to limit the access or legal rights of the compilation's users\par +beyond what the individual works permit. Inclusion of a covered work\par +in an aggregate does not cause this License to apply to the other\par +parts of the aggregate.\par +\par + 6. Conveying Non-Source Forms.\par +\par + You may convey a covered work in object code form under the terms\par +of sections 4 and 5, provided that you also convey the\par +machine-readable Corresponding Source under the terms of this License,\par +in one of these ways:\par +\par + a) Convey the object code in, or embodied in, a physical product\par + (including a physical distribution medium), accompanied by the\par + Corresponding Source fixed on a durable physical medium\par + customarily used for software interchange.\par +\par + b) Convey the object code in, or embodied in, a physical product\par + (including a physical distribution medium), accompanied by a\par + written offer, valid for at least three years and valid for as\par + long as you offer spare parts or customer support for that product\par + model, to give anyone who possesses the object code either (1) a\par + copy of the Corresponding Source for all the software in the\par + product that is covered by this License, on a durable physical\par + medium customarily used for software interchange, for a price no\par + more than your reasonable cost of physically performing this\par + conveying of source, or (2) access to copy the\par + Corresponding Source from a network server at no charge.\par +\par + c) Convey individual copies of the object code with a copy of the\par + written offer to provide the Corresponding Source. This\par + alternative is allowed only occasionally and noncommercially, and\par + only if you received the object code with such an offer, in accord\par + with subsection 6b.\par +\par + d) Convey the object code by offering access from a designated\par + place (gratis or for a charge), and offer equivalent access to the\par + Corresponding Source in the same way through the same place at no\par + further charge. You need not require recipients to copy the\par + Corresponding Source along with the object code. If the place to\par + copy the object code is a network server, the Corresponding Source\par + may be on a different server (operated by you or a third party)\par + that supports equivalent copying facilities, provided you maintain\par + clear directions next to the object code saying where to find the\par + Corresponding Source. Regardless of what server hosts the\par + Corresponding Source, you remain obligated to ensure that it is\par + available for as long as needed to satisfy these requirements.\par +\par + e) Convey the object code using peer-to-peer transmission, provided\par + you inform other peers where the object code and Corresponding\par + Source of the work are being offered to the general public at no\par + charge under subsection 6d.\par +\par + A separable portion of the object code, whose source code is excluded\par +from the Corresponding Source as a System Library, need not be\par +included in conveying the object code work.\par +\par + A "User Product" is either (1) a "consumer product", which means any\par +tangible personal property which is normally used for personal, family,\par +or household purposes, or (2) anything designed or sold for incorporation\par +into a dwelling. In determining whether a product is a consumer product,\par +doubtful cases shall be resolved in favor of coverage. For a particular\par +product received by a particular user, "normally used" refers to a\par +typical or common use of that class of product, regardless of the status\par +of the particular user or of the way in which the particular user\par +actually uses, or expects or is expected to use, the product. A product\par +is a consumer product regardless of whether the product has substantial\par +commercial, industrial or non-consumer uses, unless such uses represent\par +the only significant mode of use of the product.\par +\par + "Installation Information" for a User Product means any methods,\par +procedures, authorization keys, or other information required to install\par +and execute modified versions of a covered work in that User Product from\par +a modified version of its Corresponding Source. The information must\par +suffice to ensure that the continued functioning of the modified object\par +code is in no case prevented or interfered with solely because\par +modification has been made.\par +\par + If you convey an object code work under this section in, or with, or\par +specifically for use in, a User Product, and the conveying occurs as\par +part of a transaction in which the right of possession and use of the\par +User Product is transferred to the recipient in perpetuity or for a\par +fixed term (regardless of how the transaction is characterized), the\par +Corresponding Source conveyed under this section must be accompanied\par +by the Installation Information. But this requirement does not apply\par +if neither you nor any third party retains the ability to install\par +modified object code on the User Product (for example, the work has\par +been installed in ROM).\par +\par + The requirement to provide Installation Information does not include a\par +requirement to continue to provide support service, warranty, or updates\par +for a work that has been modified or installed by the recipient, or for\par +the User Product in which it has been modified or installed. Access to a\par +network may be denied when the modification itself materially and\par +adversely affects the operation of the network or violates the rules and\par +protocols for communication across the network.\par +\par + Corresponding Source conveyed, and Installation Information provided,\par +in accord with this section must be in a format that is publicly\par +documented (and with an implementation available to the public in\par +source code form), and must require no special password or key for\par +unpacking, reading or copying.\par +\par + 7. Additional Terms.\par +\par + "Additional permissions" are terms that supplement the terms of this\par +License by making exceptions from one or more of its conditions.\par +Additional permissions that are applicable to the entire Program shall\par +be treated as though they were included in this License, to the extent\par +that they are valid under applicable law. If additional permissions\par +apply only to part of the Program, that part may be used separately\par +under those permissions, but the entire Program remains governed by\par +this License without regard to the additional permissions.\par +\par + When you convey a copy of a covered work, you may at your option\par +remove any additional permissions from that copy, or from any part of\par +it. (Additional permissions may be written to require their own\par +removal in certain cases when you modify the work.) You may place\par +additional permissions on material, added by you to a covered work,\par +for which you have or can give appropriate copyright permission.\par +\par + Notwithstanding any other provision of this License, for material you\par +add to a covered work, you may (if authorized by the copyright holders of\par +that material) supplement the terms of this License with terms:\par +\par + a) Disclaiming warranty or limiting liability differently from the\par + terms of sections 15 and 16 of this License; or\par +\par + b) Requiring preservation of specified reasonable legal notices or\par + author attributions in that material or in the Appropriate Legal\par + Notices displayed by works containing it; or\par +\par + c) Prohibiting misrepresentation of the origin of that material, or\par + requiring that modified versions of such material be marked in\par + reasonable ways as different from the original version; or\par +\par + d) Limiting the use for publicity purposes of names of licensors or\par + authors of the material; or\par +\par + e) Declining to grant rights under trademark law for use of some\par + trade names, trademarks, or service marks; or\par +\par + f) Requiring indemnification of licensors and authors of that\par + material by anyone who conveys the material (or modified versions of\par + it) with contractual assumptions of liability to the recipient, for\par + any liability that these contractual assumptions directly impose on\par + those licensors and authors.\par +\par + All other non-permissive additional terms are considered "further\par +restrictions" within the meaning of section 10. If the Program as you\par +received it, or any part of it, contains a notice stating that it is\par +governed by this License along with a term that is a further\par +restriction, you may remove that term. If a license document contains\par +a further restriction but permits relicensing or conveying under this\par +License, you may add to a covered work material governed by the terms\par +of that license document, provided that the further restriction does\par +not survive such relicensing or conveying.\par +\par + If you add terms to a covered work in accord with this section, you\par +must place, in the relevant source files, a statement of the\par +additional terms that apply to those files, or a notice indicating\par +where to find the applicable terms.\par +\par + Additional terms, permissive or non-permissive, may be stated in the\par +form of a separately written license, or stated as exceptions;\par +the above requirements apply either way.\par +\par + 8. Termination.\par +\par + You may not propagate or modify a covered work except as expressly\par +provided under this License. Any attempt otherwise to propagate or\par +modify it is void, and will automatically terminate your rights under\par +this License (including any patent licenses granted under the third\par +paragraph of section 11).\par +\par + However, if you cease all violation of this License, then your\par +license from a particular copyright holder is reinstated (a)\par +provisionally, unless and until the copyright holder explicitly and\par +finally terminates your license, and (b) permanently, if the copyright\par +holder fails to notify you of the violation by some reasonable means\par +prior to 60 days after the cessation.\par +\par + Moreover, your license from a particular copyright holder is\par +reinstated permanently if the copyright holder notifies you of the\par +violation by some reasonable means, this is the first time you have\par +received notice of violation of this License (for any work) from that\par +copyright holder, and you cure the violation prior to 30 days after\par +your receipt of the notice.\par +\par + Termination of your rights under this section does not terminate the\par +licenses of parties who have received copies or rights from you under\par +this License. If your rights have been terminated and not permanently\par +reinstated, you do not qualify to receive new licenses for the same\par +material under section 10.\par +\par + 9. Acceptance Not Required for Having Copies.\par +\par + You are not required to accept this License in order to receive or\par +run a copy of the Program. Ancillary propagation of a covered work\par +occurring solely as a consequence of using peer-to-peer transmission\par +to receive a copy likewise does not require acceptance. However,\par +nothing other than this License grants you permission to propagate or\par +modify any covered work. These actions infringe copyright if you do\par +not accept this License. Therefore, by modifying or propagating a\par +covered work, you indicate your acceptance of this License to do so.\par +\par + 10. Automatic Licensing of Downstream Recipients.\par +\par + Each time you convey a covered work, the recipient automatically\par +receives a license from the original licensors, to run, modify and\par +propagate that work, subject to this License. You are not responsible\par +for enforcing compliance by third parties with this License.\par +\par + An "entity transaction" is a transaction transferring control of an\par +organization, or substantially all assets of one, or subdividing an\par +organization, or merging organizations. If propagation of a covered\par +work results from an entity transaction, each party to that\par +transaction who receives a copy of the work also receives whatever\par +licenses to the work the party's predecessor in interest had or could\par +give under the previous paragraph, plus a right to possession of the\par +Corresponding Source of the work from the predecessor in interest, if\par +the predecessor has it or can get it with reasonable efforts.\par +\par + You may not impose any further restrictions on the exercise of the\par +rights granted or affirmed under this License. For example, you may\par +not impose a license fee, royalty, or other charge for exercise of\par +rights granted under this License, and you may not initiate litigation\par +(including a cross-claim or counterclaim in a lawsuit) alleging that\par +any patent claim is infringed by making, using, selling, offering for\par +sale, or importing the Program or any portion of it.\par +\par + 11. Patents.\par +\par + A "contributor" is a copyright holder who authorizes use under this\par +License of the Program or a work on which the Program is based. The\par +work thus licensed is called the contributor's "contributor version".\par +\par + A contributor's "essential patent claims" are all patent claims\par +owned or controlled by the contributor, whether already acquired or\par +hereafter acquired, that would be infringed by some manner, permitted\par +by this License, of making, using, or selling its contributor version,\par +but do not include claims that would be infringed only as a\par +consequence of further modification of the contributor version. For\par +purposes of this definition, "control" includes the right to grant\par +patent sublicenses in a manner consistent with the requirements of\par +this License.\par +\par + Each contributor grants you a non-exclusive, worldwide, royalty-free\par +patent license under the contributor's essential patent claims, to\par +make, use, sell, offer for sale, import and otherwise run, modify and\par +propagate the contents of its contributor version.\par +\par + In the following three paragraphs, a "patent license" is any express\par +agreement or commitment, however denominated, not to enforce a patent\par +(such as an express permission to practice a patent or covenant not to\par +sue for patent infringement). To "grant" such a patent license to a\par +party means to make such an agreement or commitment not to enforce a\par +patent against the party.\par +\par + If you convey a covered work, knowingly relying on a patent license,\par +and the Corresponding Source of the work is not available for anyone\par +to copy, free of charge and under the terms of this License, through a\par +publicly available network server or other readily accessible means,\par +then you must either (1) cause the Corresponding Source to be so\par +available, or (2) arrange to deprive yourself of the benefit of the\par +patent license for this particular work, or (3) arrange, in a manner\par +consistent with the requirements of this License, to extend the patent\par +license to downstream recipients. "Knowingly relying" means you have\par +actual knowledge that, but for the patent license, your conveying the\par +covered work in a country, or your recipient's use of the covered work\par +in a country, would infringe one or more identifiable patents in that\par +country that you have reason to believe are valid.\par +\par + If, pursuant to or in connection with a single transaction or\par +arrangement, you convey, or propagate by procuring conveyance of, a\par +covered work, and grant a patent license to some of the parties\par +receiving the covered work authorizing them to use, propagate, modify\par +or convey a specific copy of the covered work, then the patent license\par +you grant is automatically extended to all recipients of the covered\par +work and works based on it.\par +\par + A patent license is "discriminatory" if it does not include within\par +the scope of its coverage, prohibits the exercise of, or is\par +conditioned on the non-exercise of one or more of the rights that are\par +specifically granted under this License. You may not convey a covered\par +work if you are a party to an arrangement with a third party that is\par +in the business of distributing software, under which you make payment\par +to the third party based on the extent of your activity of conveying\par +the work, and under which the third party grants, to any of the\par +parties who would receive the covered work from you, a discriminatory\par +patent license (a) in connection with copies of the covered work\par +conveyed by you (or copies made from those copies), or (b) primarily\par +for and in connection with specific products or compilations that\par +contain the covered work, unless you entered into that arrangement,\par +or that patent license was granted, prior to 28 March 2007.\par +\par + Nothing in this License shall be construed as excluding or limiting\par +any implied license or other defenses to infringement that may\par +otherwise be available to you under applicable patent law.\par +\par + 12. No Surrender of Others' Freedom.\par +\par + If conditions are imposed on you (whether by court order, agreement or\par +otherwise) that contradict the conditions of this License, they do not\par +excuse you from the conditions of this License. If you cannot convey a\par +covered work so as to satisfy simultaneously your obligations under this\par +License and any other pertinent obligations, then as a consequence you may\par +not convey it at all. For example, if you agree to terms that obligate you\par +to collect a royalty for further conveying from those to whom you convey\par +the Program, the only way you could satisfy both those terms and this\par +License would be to refrain entirely from conveying the Program.\par +\par + 13. Use with the GNU Affero General Public License.\par +\par + Notwithstanding any other provision of this License, you have\par +permission to link or combine any covered work with a work licensed\par +under version 3 of the GNU Affero General Public License into a single\par +combined work, and to convey the resulting work. The terms of this\par +License will continue to apply to the part which is the covered work,\par +but the special requirements of the GNU Affero General Public License,\par +section 13, concerning interaction through a network will apply to the\par +combination as such.\par +\par + 14. Revised Versions of this License.\par +\par + The Free Software Foundation may publish revised and/or new versions of\par +the GNU General Public License from time to time. Such new versions will\par +be similar in spirit to the present version, but may differ in detail to\par +address new problems or concerns.\par +\par + Each version is given a distinguishing version number. If the\par +Program specifies that a certain numbered version of the GNU General\par +Public License "or any later version" applies to it, you have the\par +option of following the terms and conditions either of that numbered\par +version or of any later version published by the Free Software\par +Foundation. If the Program does not specify a version number of the\par +GNU General Public License, you may choose any version ever published\par +by the Free Software Foundation.\par +\par + If the Program specifies that a proxy can decide which future\par +versions of the GNU General Public License can be used, that proxy's\par +public statement of acceptance of a version permanently authorizes you\par +to choose that version for the Program.\par +\par + Later license versions may give you additional or different\par +permissions. However, no additional obligations are imposed on any\par +author or copyright holder as a result of your choosing to follow a\par +later version.\par +\par + 15. Disclaimer of Warranty.\par +\par + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\par +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\par +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY\par +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\par +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\par +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\par +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\par +ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\par +\par + 16. Limitation of Liability.\par +\par + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\par +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS\par +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY\par +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE\par +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF\par +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD\par +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),\par +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF\par +SUCH DAMAGES.\par +\par + 17. Interpretation of Sections 15 and 16.\par +\par + If the disclaimer of warranty and limitation of liability provided\par +above cannot be given local legal effect according to their terms,\par +reviewing courts shall apply local law that most closely approximates\par +an absolute waiver of all civil liability in connection with the\par +Program, unless a warranty or assumption of liability accompanies a\par +copy of the Program in return for a fee.\par +\par + END OF TERMS AND CONDITIONS\par +\par + How to Apply These Terms to Your New Programs\par +\par + If you develop a new program, and you want it to be of the greatest\par +possible use to the public, the best way to achieve this is to make it\par +free software which everyone can redistribute and change under these terms.\par +\par + To do so, attach the following notices to the program. It is safest\par +to attach them to the start of each source file to most effectively\par +state the exclusion of warranty; and each file should have at least\par +the "copyright" line and a pointer to where the full notice is found.\par +\par + <one line to give the program's name and a brief idea of what it does.>\par + Copyright (C) <year> <name of author>\par +\par + This program is free software: you can redistribute it and/or modify\par + it under the terms of the GNU General Public License as published by\par + the Free Software Foundation, either version 3 of the License, or\par + (at your option) any later version.\par +\par + This program is distributed in the hope that it will be useful,\par + but WITHOUT ANY WARRANTY; without even the implied warranty of\par + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\par + GNU General Public License for more details.\par +\par + You should have received a copy of the GNU General Public License\par + along with this program. If not, see <http://www.gnu.org/licenses/>.\par +\par +Also add information on how to contact you by electronic and paper mail.\par +\par + If the program does terminal interaction, make it output a short\par +notice like this when it starts in an interactive mode:\par +\par + <program> Copyright (C) <year> <name of author>\par + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\par + This is free software, and you are welcome to redistribute it\par + under certain conditions; type `show c' for details.\par +\par +The hypothetical commands `show w' and `show c' should show the appropriate\par +parts of the General Public License. Of course, your program's commands\par +might be different; for a GUI interface, you would use an "about box".\par +\par + You should also get your employer (if you work as a programmer) or school,\par +if any, to sign a "copyright disclaimer" for the program, if necessary.\par +For more information on this, and how to apply and follow the GNU GPL, see\par +<http://www.gnu.org/licenses/>.\par +\par + The GNU General Public License does not permit incorporating your program\par +into proprietary programs. If your program is a subroutine library, you\par +may consider it more useful to permit linking proprietary applications with\par +the library. If this is what you want to do, use the GNU Lesser General\par +Public License instead of this License. But first, please read\par +<http://www.gnu.org/philosophy/why-not-lgpl.html>.\par +\pard\f1\fs22\par +} +� \ No newline at end of file diff --git a/RingWinClient.pro b/RingWinClient.pro index 07a5d67..e28a4ee 100644 --- a/RingWinClient.pro +++ b/RingWinClient.pro @@ -8,7 +8,7 @@ QT += core gui greaterThan(QT_MAJOR_VERSION, 4): QT += widgets svg -VERSION = 0.0.1 +VERSION = 0.1.0 DEFINES += VERSION=\\\"$$VERSION\\\" @@ -64,3 +64,9 @@ linux: LIBS += -L/usr/local/lib/ -lringclient RESOURCES += \ ressources.qrc + +RC_FILE = ico.rc + +DISTFILES += \ + ring.wxs \ + License.rtf diff --git a/ico.rc b/ico.rc new file mode 100644 index 0000000..c6791da --- /dev/null +++ b/ico.rc @@ -0,0 +1 @@ +IDI_ICON1 ICON DISCARDABLE "images/ring.ico" diff --git a/images/ring.ico b/images/ring.ico new file mode 100644 index 0000000000000000000000000000000000000000..24000cb951ad5b76a5f5eb2cbe92a92ad258faea GIT binary patch literal 155918 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 LvOW+W8H3~iGW=23 literal 0 HcmV?d00001 diff --git a/mainwindow.cpp b/mainwindow.cpp index 69d4679..21582d3 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -30,7 +30,7 @@ MainWindow::MainWindow(QWidget *parent) : this->setWindowFlags(Qt::CustomizeWindowHint); this->setWindowFlags(Qt::FramelessWindowHint); - QIcon icon(":/ring.png"); + QIcon icon(":images/ring.png"); this->setWindowIcon(icon); diff --git a/mainwindow.ui b/mainwindow.ui index cd75c78..8544fc3 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -428,6 +428,10 @@ <property name="windowTitle"> <string>Ring</string> </property> + <property name="windowIcon"> + <iconset resource="ressources.qrc"> + <normaloff>:/images/ring.png</normaloff>:/images/ring.png</iconset> + </property> <widget class="QWidget" name="centralWidget"> <layout class="QVBoxLayout" name="verticalLayout_2"> <property name="spacing"> @@ -903,6 +907,8 @@ </widget> </widget> <layoutdefault spacing="6" margin="11"/> - <resources/> + <resources> + <include location="ressources.qrc"/> + </resources> <connections/> </ui> diff --git a/ring.wxs b/ring.wxs new file mode 100644 index 0000000..a60e790 --- /dev/null +++ b/ring.wxs @@ -0,0 +1,93 @@ +<?xml version='1.0' encoding='windows-1252'?> +<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'> + + <Product Name='Ring 0.1.0' Id='9D33885D-6992-4A9B-82B5-7AC3834CF61E' UpgradeCode='E7C93227-949A-4F55-9058-509AA1126A3E' + Language='1033' Codepage='1252' Version='0.1.0' Manufacturer='Savoir-Faire Linux'> + + <Package Id='*' Keywords='Installer' Description="Ring 0.1.0 Installer" + Manufacturer='Savoir-Faire Linux' + InstallerVersion='100' Languages='1033' Compressed='yes' SummaryCodepage='1252' /> + <Media Id='1' Cabinet='Ring.cab' EmbedCab='yes' DiskPrompt='USB' /> + <Property Id='DiskPrompt' Value="Ring 0.1.0 Installer" /> + <Directory Id='TARGETDIR' Name='SourceDir'> + <Directory Id='ProgramFilesFolder' Name='PFiles'> + <Directory Id='SavoirFaireLinux' Name='Savoir-Faire Linux'> + <Directory Id='INSTALLDIR' Name='Ring'> + <Component Id='MainExecutable' Guid='8E881921-46BD-45F4-98CC-05DD4FAD6EE8'> + <File Id='RingEXE' Name='RingClientWindows.exe' DiskId='1' Source='RingClientWindows.exe' KeyPath='yes'> + <Shortcut Id="startmenuRing" Directory="ProgramMenuDir" Name="Ring" + WorkingDirectory='INSTALLDIR' Icon="RingClientWindows.exe" IconIndex="0" Advertise="yes" /> + <Shortcut Id="desktopRing" Directory="DesktopFolder" Name="Ring" + WorkingDirectory='INSTALLDIR' Icon="RingClientWindows.exe" IconIndex="0" Advertise="yes" /> + </File> + </Component> + <Component Id='HelperLibrary' Guid='26E2A43E-5B07-45E8-B486-BA0F7FA140DE'> + <File Id='LibringDLL' Name='libring.dll' DiskId='1' Source='libring.dll' KeyPath='yes' /> + <File Id='LibringclientDLL' Name='libringclient.dll' DiskId='1' Source='libringclient.dll'/> + </Component> + <Component Id='QtLibrary' Guid='7900394F-C49C-4B14-A104-89D701200716'> + <File Id='Qt5CoreDLL' Name='Qt5Core.dll' DiskId='1' Source='Qt5Core.dll' KeyPath='yes' /> + <File Id='Qt5GuiDLL' Name='Qt5Gui.dll' DiskId='1' Source='Qt5Gui.dll'/> + <File Id='Qt5SvgDLL' Name='Qt5Svg.dll' DiskId='1' Source='Qt5Svg.dll'/> + <File Id='Qt5WidgetsDLL' Name='Qt5Widgets.dll' DiskId='1' Source='Qt5Widgets.dll'/> + </Component> + <Component Id='StdLibrary' Guid='C5C77CD7-9068-4510-8010-9B15D3CDBF2E'> + <File Id='libstdcDLL' Name='libstdc++-6.dll' DiskId='1' Source='libstdc++-6.dll' KeyPath='yes' /> + <File Id='libwinpthreadDLL' Name='libwinpthread-1.dll' DiskId='1' Source='libwinpthread-1.dll'/> + <File Id='libgcc_s_sjljDLL' Name='libgcc_s_sjlj-1.dll' DiskId='1' Source='libgcc_s_sjlj-1.dll'/> + </Component> + <Component Id='QtDeps' Guid='8F4C342F-82F0-411F-A21A-C07BED6CC22D'> + <File Id='libpcreDLL' Name='libpcre16-0.dll' DiskId='1' Source='libpcre16-0.dll' KeyPath='yes' /> + <File Id='zlib1DLL' Name='zlib1.dll' DiskId='1' Source='zlib1.dll'/> + <File Id='libharfbuzzDLL' Name='libharfbuzz-0.dll' DiskId='1' Source='libharfbuzz-0.dll'/> + <File Id='libpngDLL' Name='libpng16-16.dll' DiskId='1' Source='libpng16-16.dll'/> + <File Id='libfreetypeDLL' Name='libfreetype-6.dll' DiskId='1' Source='libfreetype-6.dll'/> + <File Id='iconvDLL' Name='iconv.dll' DiskId='1' Source='iconv.dll'/> + <File Id='libglibDLL' Name='libglib-2.0-0.dll' DiskId='1' Source='libglib-2.0-0.dll'/> + <File Id='libintlDLL' Name='libintl-8.dll' DiskId='1' Source='libintl-8.dll'/> + <File Id='libpcre1DLL' Name='libpcre-1.dll' DiskId='1' Source='libpcre-1.dll'/> + </Component> + <Directory Id="platforms" Name="platforms"> + <Component Id='QtPlatformsLibrary' Guid='3E79F0C2-94AC-42F2-8074-A1E51442EF4B'> + <File Id='qwindowsDLL' Name='qwindows.dll' DiskId='1' Source='platforms/qwindows.dll' KeyPath='yes' /> + </Component> + </Directory> + </Directory> + </Directory> + </Directory> + <Directory Id="ProgramMenuFolder" Name="Programs"> + <Directory Id="ProgramMenuDir" Name="Ring"> + <Component Id="ProgramMenuDir" Guid="D7B856C7-838E-4F23-8D5C-6144BB798123"> + <RemoveFolder Id='ProgramMenuDir' On='uninstall' /> + <RegistryValue Root='HKCU' Key='Software\[Manufacturer]\[ProductName]' Type='string' Value='' KeyPath='yes' /> + </Component> + </Directory> + </Directory> + + <Directory Id="DesktopFolder" Name="Desktop" /> + </Directory> + + <Feature Id='Complete' Title='Ring' Description='The Ring package.' + Display='expand' ConfigurableDirectory='INSTALLDIR'> + <Feature Id='MainProgram' Title='Program' Description='The ring executable.'> + <ComponentRef Id='MainExecutable' /> + <ComponentRef Id='HelperLibrary' /> + <ComponentRef Id='QtLibrary' /> + <ComponentRef Id='StdLibrary' /> + <ComponentRef Id='QtDeps' /> + <ComponentRef Id='QtPlatformsLibrary' /> + <ComponentRef Id='ProgramMenuDir' /> + </Feature> + </Feature> + + <UIRef Id="WixUI_InstallDir" /> + <UIRef Id="WixUI_ErrorProgressText" /> + + <WixVariable Id="WixUILicenseRtf" Value="License.rtf" /> + + <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" /> + + <Icon Id="RingClientWindows.exe" SourceFile="RingClientWindows.exe" /> + +</Product> +</Wix> -- GitLab