diff --git a/GPL_EXCEPTION.txt b/GPL_EXCEPTION.TXT similarity index 100% rename from GPL_EXCEPTION.txt rename to GPL_EXCEPTION.TXT diff --git a/GPL_EXCEPTION_ADDENDUM.TXT b/GPL_EXCEPTION_ADDENDUM.TXT new file mode 100644 index 0000000000000000000000000000000000000000..e3d26987cda5416d50cd5b5ec8bb2278a6e5158f --- /dev/null +++ b/GPL_EXCEPTION_ADDENDUM.TXT @@ -0,0 +1,240 @@ +Addendum to the Nokia Corporation GPL Exception version 1.3 +=========================================================== + + +-------------------------------------------------------------------------- + + The "Artistic License" + + Preamble + +The intent of this document is to state the conditions under which a +Package may be copied, such that the Copyright Holder maintains some +semblance of artistic control over the development of the package, +while giving the users of the package the right to use and distribute +the Package in a more-or-less customary fashion, plus the right to make +reasonable modifications. + +Definitions: + + "Package" refers to the collection of files distributed by the + Copyright Holder, and derivatives of that collection of files + created through textual modification. + + "Standard Version" refers to such a Package if it has not been + modified, or has been modified in accordance with the wishes + of the Copyright Holder as specified below. + + "Copyright Holder" is whoever is named in the copyright or + copyrights for the package. + + "You" is you, if you're thinking about copying or distributing + this Package. + + "Reasonable copying fee" is whatever you can justify on the + basis of media cost, duplication charges, time of people involved, + and so on. (You will not be required to justify it to the + Copyright Holder, but only to the computing community at large + as a market that must bear the fee.) + + "Freely Available" means that no fee is charged for the item + itself, though there may be fees involved in handling the item. + It also means that recipients of the item may redistribute it + under the same conditions they received it. + +1. You may make and give away verbatim copies of the source form of the +Standard Version of this Package without restriction, provided that you +duplicate all of the original copyright notices and associated disclaimers. + +2. You may apply bug fixes, portability fixes and other modifications +derived from the Public Domain or from the Copyright Holder. A Package +modified in such a way shall still be considered the Standard Version. + +3. You may otherwise modify your copy of this Package in any way, provided +that you insert a prominent notice in each changed file stating how and +when you changed that file, and provided that you do at least ONE of the +following: + + a) place your modifications in the Public Domain or otherwise make them + Freely Available, such as by posting said modifications to Usenet or + an equivalent medium, or placing the modifications on a major archive + site such as uunet.uu.net, or by allowing the Copyright Holder to include + your modifications in the Standard Version of the Package. + + b) use the modified Package only within your corporation or organization. + + c) rename any non-standard executables so the names do not conflict + with standard executables, which must also be provided, and provide + a separate manual page for each non-standard executable that clearly + documents how it differs from the Standard Version. + + d) make other distribution arrangements with the Copyright Holder. + +4. You may distribute the programs of this Package in object code or +executable form, provided that you do at least ONE of the following: + + a) distribute a Standard Version of the executables and library files, + together with instructions (in the manual page or equivalent) on where + to get the Standard Version. + + b) accompany the distribution with the machine-readable source of + the Package with your modifications. + + c) give non-standard executables non-standard names, and clearly + document the differences in manual pages (or equivalent), together + with instructions on where to get the Standard Version. + + d) make other distribution arrangements with the Copyright Holder. + +5. You may charge a reasonable copying fee for any distribution of this +Package. You may charge any fee you choose for support of this +Package. You may not charge a fee for this Package itself. However, +you may distribute this Package in aggregate with other (possibly +commercial) programs as part of a larger (possibly commercial) software +distribution provided that you do not advertise this Package as a +product of your own. You may embed this Package's interpreter within +an executable of yours (by linking); this shall be construed as a mere +form of aggregation, provided that the complete Standard Version of the +interpreter is so embedded. + +6. The scripts and library files supplied as input to or produced as +output from the programs of this Package do not automatically fall +under the copyright of this Package, but belong to whoever generated +them, and may be sold commercially, and may be aggregated with this +Package. If such scripts or library files are aggregated with this +Package via the so-called "undump" or "unexec" methods of producing a +binary executable image, then distribution of such an image shall +neither be construed as a distribution of this Package nor shall it +fall under the restrictions of Paragraphs 3 and 4, provided that you do +not represent such an executable image as a Standard Version of this +Package. + +7. C subroutines (or comparably compiled subroutines in other +languages) supplied by you and linked into this Package in order to +emulate subroutines and variables of the language defined by this +Package shall not be considered part of this Package, but are the +equivalent of input as in Paragraph 6, provided these subroutines do +not change the language in any way that would cause it to fail the +regression tests for the language. + +8. Aggregation of this Package with a commercial distribution is always +permitted provided that the use of this Package is embedded; that is, +when no overt attempt is made to make this Package's interfaces visible +to the end user of the commercial distribution. Such use shall not be +construed as a distribution of this Package. + +9. The name of the Copyright Holder may not be used to endorse or promote +products derived from this software without specific prior written permission. + +10. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED +WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. + + The End + +-------------------------------------------------------------------------- + +MIT License + +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. + +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. + +-------------------------------------------------------------------------- + +Python License (CNRI Python License) + +CNRI OPEN SOURCE LICENSE AGREEMENT + +IMPORTANT: PLEASE READ THE FOLLOWING AGREEMENT CAREFULLY. + +BY CLICKING ON "ACCEPT" WHERE INDICATED BELOW, OR BY COPYING, INSTALLING OR +OTHERWISE USING PYTHON 1.6, beta 1 SOFTWARE, YOU ARE DEEMED TO HAVE AGREED TO +THE TERMS AND CONDITIONS OF THIS LICENSE AGREEMENT. + +1. This LICENSE AGREEMENT is between the Corporation for National Research +Initiatives, having an office at 1895 Preston White Drive, Reston, VA 20191 +("CNRI"), and the Individual or Organization ("Licensee") accessing and +otherwise using Python 1.6, beta 1 software in source or binary form and its +associated documentation, as released at the www.python.org Internet site on +August 4, 2000 ("Python 1.6b1"). + +2. Subject to the terms and conditions of this License Agreement, CNRI hereby +grants Licensee a non-exclusive, royalty-free, world-wide license to reproduce, +analyze, test, perform and/or display publicly, prepare derivative works, +distribute, and otherwise use Python 1.6b1 alone or in any derivative version, +provided, however, that CNRIs License Agreement is retained in Python 1.6b1, +alone or in any derivative version prepared by Licensee. + +Alternately, in lieu of CNRIs License Agreement, Licensee may substitute the +following text (omitting the quotes): "Python 1.6, beta 1, is made available +subject to the terms and conditions in CNRIs License Agreement. This Agreement +may be located on the Internet using the following unique, persistent identifier +(known as a handle): 1895.22/1011. This Agreement may also be obtained from a +proxy server on the Internet using the URL:http://hdl.handle.net/1895.22/1011". + +3. In the event Licensee prepares a derivative work that is based on or +incorporates Python 1.6b1or any part thereof, and wants to make the derivative +work available to the public as provided herein, then Licensee hereby agrees to +indicate in any such work the nature of the modifications made to Python 1.6b1. + +4. CNRI is making Python 1.6b1 available to Licensee on an "AS IS" basis. CNRI +MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, +BUT NOT LIMITATION, CNRI MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY +OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF +PYTHON 1.6b1WILL NOT INFRINGE ANY THIRD PARTY RIGHTS. + +5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE SOFTWARE FOR +ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF USING, +MODIFYING OR DISTRIBUTING PYTHON 1.6b1, OR ANY DERIVATIVE THEREOF, EVEN IF +ADVISED OF THE POSSIBILITY THEREOF. + +6. This License Agreement will automatically terminate upon a material breach of +its terms and conditions. + +7. This License Agreement shall be governed by and interpreted in all respects +by the law of the State of Virginia, excluding conflict of law +provisions. Nothing in this License Agreement shall be deemed to create any +relationship of agency, partnership, or joint venture between CNRI and +Licensee. This License Agreement does not grant permission to use CNRI +trademarks or trade name in a trademark sense to endorse or promote products or +services of Licensee, or any third party. + +8. By clicking on the "ACCEPT" button where indicated, or by copying, installing +or otherwise using Python 1.6b1, Licensee agrees to be bound by the terms and +conditions of this License Agreement. + + + +ACCEPT + +-------------------------------------------------------------------------- + +The zlib/libpng License + +Copyright (c) <year> <copyright holders> + +This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source distribution. + +-------------------------------------------------------------------------- diff --git a/HACKING b/HACKING new file mode 100644 index 0000000000000000000000000000000000000000..e249bc75a953016f92780a995710a695a594003d --- /dev/null +++ b/HACKING @@ -0,0 +1 @@ +See the file doc/coding-style.qdoc diff --git a/LICENSE.GPL3 b/LICENSE.GPL3 new file mode 100644 index 0000000000000000000000000000000000000000..94a9ed024d3859793618152ea559a168bbcbb5e2 --- /dev/null +++ b/LICENSE.GPL3 @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. 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 +them 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 prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. 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. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey 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; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If 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 convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU 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 that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + 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. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +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. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + 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 +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + 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 3 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, see <http://www.gnu.org/licenses/>. + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + <program> Copyright (C) <year> <name of author> + This program 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, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +<http://www.gnu.org/licenses/>. + + The GNU 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 Lesser General +Public License instead of this License. But first, please read +<http://www.gnu.org/philosophy/why-not-lgpl.html>. diff --git a/bin/license.txt b/bin/license.txt index 8e4678abe429121115405e2c8cad96f68a2eb869..e965c1d70f3362db24e0631a3928e0fedb9c3813 100644 --- a/bin/license.txt +++ b/bin/license.txt @@ -1,615 +1,229 @@ -For individuals and/or legal entities resident in the Americas (North -America, Central America and South America), the applicable licensing -terms are specified under the heading "Technology Preview License -Agreement: The Americas". +For individuals and/or legal entities resident in the Americas (North America, Central America and South America), the applicable licensing terms are specified under the heading "Beta Version License +Agreement (Agreement version 2.2): The Americas". -For individuals and/or legal entities not resident in The Americas, the -applicable licensing terms are specified under the heading "Technology -Preview License Agreement: Rest of the World". +For individuals and/or legal entities not resident in The Americas, the applicable licensing terms are specified under the heading " Beta Version License Agreement (Agreement version 2.2): Rest of the World". +---------------------------------------- -TECHNOLOGY PREVIEW LICENSE AGREEMENT: The Americas -Agreement version 2.3 +BETA VERSION LICENSE AGREEMENT +Agreement version 2.2 "Rest of the World" -This Technology Preview License Agreement ("Agreement") is a legal -agreement between Nokia Inc. ("Nokia"), with its registered office at -6021 Connection Drive, Irving, TX 75039, U.S.A. and you (either an -individual or a legal entity) ("Licensee") for the Licensed Software (as -defined below). +This Beta Version License Agreement ("Agreement") is a legal agreement between Nokia Corporation ("Nokia"), with its registered office at Keilalahdentie 4, 02150 Espoo, Finland and you (either an individual or a legal entity) ("Licensee") for the Licensed Software. 1. DEFINITIONS -"Affiliate" of a Party shall mean an entity (i) which is directly or -indirectly controlling such Party; (ii) which is under the same direct -or indirect ownership or control as such Party; or (iii) which is -directly or indirectly owned or controlled by such Party. For these -purposes, an entity shall be treated as being controlled by another if -that other entity has fifty percent (50 %) or more of the votes in such -entity, is able to direct its affairs and/or to control the composition -of its board of directors or equivalent body. +"Affiliate" of a Party shall mean an entity (i) which is directly or indirectly controlling such Party; (ii) which is under the same direct or indirect ownership or control as such Party; or (iii) which is directly or indirectly owned or controlled by such Party. For these purposes, an entity shall be treated as being controlled by another if that other entity has fifty percent (50 %) or more of the votes in such entity, is able to direct its affairs and/or to control the composition of its board of directors or equivalent body. -"Term" shall mean the period of time six (6) months from the later of -(a) the Effective Date; or (b) the date the Licensed Software was -initially delivered to Licensee by Nokia. If no specific Effective Date -is set forth in the Agreement, the Effective Date shall be deemed to be -the date the Licensed Software was initially delivered to Licensee. +"Applications" shall mean Licensee's software products created using the Licensed Software which may include portions of the Licensed Software. -"Licensed Software" shall mean the computer software, "online" or -electronic documentation, associated media and printed materials, -including the source code, example programs and the documentation -delivered by Nokia to Licensee in conjunction with this Agreement. +"Term" shall mean the period of time from the later of (a) the Effective Date; or (b) the date the Licensed Software was initially delivered to Licensee by Nokia until thirty (30) days after Nokia's next beta or commercial release of a version of the Licensed Software with the same major and minor version number as the Licensed Software. If no specific Effective Date is set forth in the Agreement, the Effective Date shall be deemed to be the date the Licensed Software was initially delivered to Licensee. Notwithstanding the foregoing, in no event shall the term exceed six (6) months from the date Nokia initially delivered the Licensed Software to Licensee. -"Party" or "Parties" shall mean Licensee and/or Nokia. +"Licensed Software" shall mean the computer software, "online" or electronic documentation, associated media and printed materials, including the source code, example programs and the documentation delivered by Nokia to Licensee in conjunction with this Agreement. + +"Party or Parties" shall mean Licensee and/or Nokia. 2. OWNERSHIP -The Licensed Software is protected by copyright laws and international -copyright treaties, as well as other intellectual property laws and -treaties. The Licensed Software is licensed, not sold. - -If Licensee provides any findings, proposals, suggestions or other -feedback ("Feedback") to Nokia regarding the Licensed Software, Nokia -shall own all right, title and interest including the intellectual -property rights in and to such Feedback, excluding however any existing -patent rights of Licensee. To the extent Licensee owns or controls any -patents for such Feedback Licensee hereby grants to Nokia and its -Affiliates, a worldwide, perpetual, non-transferable, sublicensable, -royalty-free license to (i) use, copy and modify Feedback and to create -derivative works thereof, (ii) to make (and have made), use, import, -sell, offer for sale, lease, dispose, offer for disposal or otherwise -exploit any products or services of Nokia containing Feedback,, and -(iii) sublicense all the foregoing rights to third party licensees and -customers of Nokia and/or its Affiliates. +The Licensed Software is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The Licensed Software is licensed, not sold. + +If Licensee provides any findings, proposals, suggestions or other feedback ("Feedback") to Nokia regarding the Licensed Software, Nokia shall own all right, title and interest including the intellectual property rights in and to such Feedback, excluding however any existing patent rights of Licensee. To the extent Licensee owns or controls any patents for such Feedback Licensee hereby grants to Nokia and its Affiliates, a worldwide, perpetual, non-transferable, sublicensable, royalty-free license to (i) use, copy and modify Feedback and to create derivative works thereof, (ii) to make (and have made), use, import, sell, offer for sale, lease, dispose, offer for disposal or otherwise exploit any products or services of Nokia containing Feedback,, and (iii) sublicense all the foregoing rights to third party licensees and customers of Nokia and/or its Affiliates. 3. VALIDITY OF THE AGREEMENT -By installing, copying, or otherwise using the Licensed Software, -Licensee agrees to be bound by the terms of this Agreement. If Licensee -does not agree to the terms of this Agreement, Licensee may not install, -copy, or otherwise use the Licensed Software. Upon Licensee's acceptance -of the terms and conditions of this Agreement, Nokia grants Licensee the -right to use the Licensed Software in the manner provided below. +By installing, copying, or otherwise using the Licensed Software, Licensee agrees to be bound by the terms of this Agreement. If Licensee does not agree to the terms of this Agreement, Licensee may not install, copy, or otherwise use the Licensed Software. Upon Licensee's acceptance of the terms and conditions of this Agreement, Nokia grants Licensee the right to use the Licensed Software in the manner provided below. 4. LICENSES 4.1. Using and Copying -Nokia grants to Licensee a non-exclusive, non-transferable, time-limited -license to use and copy the Licensed Software for sole purpose of -evaluating and testing the Licensed Software during the Term. +Nokia grants to Licensee a non-exclusive, non-transferable, time-limited license to use and copy the Licensed Software for sole purpose of designing, developing and testing Applications, and evaluating and testing the Licensed Software during the Term. -Licensee may install copies of the Licensed Software on an unlimited -number of computers provided that (a) if an individual, only such -individual; or (b) if a legal entity only its employees; use the -Licensed Software for the authorized purposes. +Licensee may install copies of the Licensed Software on an unlimited number of computers provided that (a) if an individual, only such individual; or (b) if a legal entity only its employees; use the Licensed Software for the authorized purposes. 4.2 No Distribution or Modifications -Licensee may not disclose, modify, sell, market, commercialise, -distribute, loan, rent, lease, or license the Licensed Software or any -copy of it or use the Licensed Software for any purpose that is not -expressly granted in this Section 4. Licensee may not alter or remove -any details of ownership, copyright, trademark or other property right -connected with the Licensed Software. Licensee may not distribute any -software statically or dynamically linked with the Licensed Software. +Licensee may not disclose, modify, sell, market, commercialise, distribute, loan, rent, lease, or license the Licensed Software or any copy of it or use the Licensed Software for any purpose that is not expressly granted in this Section 4. Licensee may not alter or remove any details of ownership, copyright, trademark or other property right connected with the Licensed Software. Licensee may not distribute any software statically or dynamically linked with the Licensed Software. -4.3 No Technical Support +4.3 Support -Nokia has no obligation to furnish Licensee with any technical support -whatsoever. Any such support is subject to separate agreement between -the Parties. +Nokia has no obligation to furnish Licensee with maintenance, technical support or updates for the Licensed Software provided under this Agreement. However, Nokia may, in its sole discretion, provide further pre-release versions, technical support, updates and/or supplements of the Licensed Software and/or related information ("Support and Updates") to Licensee hereunder, in which case Support and Updates shall also be deemed to be included in the Licensed Software and therefore governed by the terms of this Agreement, unless other terms of use are provided by Nokia with such Support and Updates. 5. PRE-RELEASE CODE -The Licensed Software contains pre-release code that is not at the level -of performance and compatibility of a final, generally available, -product offering. The Licensed Software may not operate correctly and -may be substantially modified prior to the first commercial product -release, if any. Nokia is not obligated to make this or any later -version of the Licensed Software commercially available. The License -Software is "Not for Commercial Use" and may only be used for the -purposes described in Section 4. The Licensed Software may not be used -in a live operating environment where it may be relied upon to perform -in the same manner as a commercially released product or with data that -has not been sufficiently backed up. +The Licensed Software contains pre-release code that is not at the level of performance and compatibility of a final, generally available, product offering. The Licensed Software may not operate correctly and may be substantially modified prior to the first commercial product release, if any. Nokia is not obligated to make this or any later version of the Licensed Software commercially available. The License Software is "Not for Commercial Use" and may only be used for the purposes described in Section 4, however Applications may be distributed within Licensee's organization for testing purposes. The Licensed Software may not be used in a live operating environment where it may be relied upon to perform in the same manner as a commercially released product or with data that has not been sufficiently backed up. 6. THIRD PARTY SOFTWARE -The Licensed Software may provide links to third party libraries or code -(collectively "Third Party Software") to implement various functions. -Third Party Software does not comprise part of the Licensed Software. In -some cases, access to Third Party Software may be included along with -the Licensed Software delivery as a convenience for development and -testing only. Such source code and libraries may be listed in the -".../src/3rdparty" source tree delivered with the Licensed Software or -documented in the Licensed Software where the Third Party Software is -used, as may be amended from time to time, do not comprise the Licensed -Software. Licensee acknowledges (1) that some part of Third Party -Software may require additional licensing of copyright and patents from -the owners of such, and (2) that distribution of any of the Licensed -Software referencing any portion of a Third Party Software may require -appropriate licensing from such third parties. +The Licensed Software may provide links to third party libraries or code (collectively "Third Party Software") to implement various functions. Third Party Software does not comprise part of the Licensed Software. In some cases, access to Third Party Software may be included along with the Licensed Software delivery as a convenience for development and testing only. Such source code and libraries may be listed in the ".../src/3rdparty" source tree delivered with the Licensed Software or documented in the Licensed Software where the Third Party Software is used, as may be amended from time to time, do not comprise the Licensed Software. Licensee acknowledges (1) that some part of Third Party Software may require additional licensing of copyright and patents from the owners of such, and (2) that distribution of any of the Licensed Software referencing any portion of a Third Party Software may require appropriate licensing from such third parties. 7. LIMITED WARRANTY AND WARRANTY DISCLAIMER -The Licensed Software is licensed to Licensee "as is". To the maximum -extent permitted by applicable law, Nokia on behalf of itself and its -suppliers, disclaims all warranties and conditions, either express or -implied, including, but not limited to, implied warranties of -merchantability, fitness for a particular purpose, title and -non-infringement with regard to the Licensed Software. +The Licensed Software is licensed to Licensee "as is". To the maximum extent permitted by applicable law, Nokia on behalf of itself and its suppliers, disclaims all warranties and conditions, either express or implied, including, but not limited to, implied warranties of merchantability, fitness for a particular purpose, title and non-infringement with regard to the Licensed Software. 8. LIMITATION OF LIABILITY -If, Nokia's warranty disclaimer notwithstanding, Nokia is held liable to -Licensee, whether in contract, tort or any other legal theory, based on -the Licensed Software, Nokia's entire liability to Licensee and -Licensee's exclusive remedy shall be, at Nokia's option, either (A) -return of the price Licensee paid for the Licensed Software, or (B) -repair or replacement of the Licensed Software, provided Licensee -returns to Nokia all copies of the Licensed Software as originally -delivered to Licensee. Nokia shall not under any circumstances be liable -to Licensee based on failure of the Licensed Software if the failure -resulted from accident, abuse or misapplication, nor shall Nokia under -any circumstances be liable for special damages, punitive or exemplary -damages, damages for loss of profits or interruption of business or for -loss or corruption of data. Any award of damages from Nokia to Licensee -shall not exceed the total amount Licensee has paid to Nokia in -connection with this Agreement. +If, Nokia's warranty disclaimer notwithstanding, Nokia is held liable to Licensee, whether in contract, tort or any other legal theory, based on the Licensed Software, Nokia's entire liability to Licensee and Licensee's exclusive remedy shall be, at Nokia's option, either (A) return of the price Licensee paid for the Licensed Software, or (B) repair or replacement of the Licensed Software, provided Licensee returns to Nokia all copies of the Licensed Software as originally delivered to Licensee. Nokia shall not under any circumstances be liable to Licensee based on failure of the Licensed Software if the failure resulted from accident, abuse or misapplication, nor shall Nokia under any circumstances be liable for special damages, punitive or exemplary damages, damages for loss of profits or interruption of business or for loss or corruption of data. Any award of damages from Nokia to Licensee shall not exceed the total amount Licensee has paid to Nokia in connection with this Agreement. 9. CONFIDENTIALITY -Each party acknowledges that during the Term of this Agreement it shall -have access to information about the other party's business, business -methods, business plans, customers, business relations, technology, and -other information, including the terms of this Agreement, that is -confidential and of great value to the other party, and the value of -which would be significantly reduced if disclosed to third parties (the -"Confidential Information"). Accordingly, when a party (the "Receiving -Party") receives Confidential Information from another party (the -"Disclosing Party"), the Receiving Party shall, and shall obligate its -employees and agents and employees and agents of its Affiliates to: (i) -maintain the Confidential Information in strict confidence; (ii) not -disclose the Confidential Information to a third party without the -Disclosing Party's prior written approval; and (iii) not, directly or -indirectly, use the Confidential Information for any purpose other than -for exercising its rights and fulfilling its responsibilities pursuant -to this Agreement. Each party shall take reasonable measures to protect -the Confidential Information of the other party, which measures shall -not be less than the measures taken by such party to protect its own -confidential and proprietary information. - -"Confidential Information" shall not include information that (a) is or -becomes generally known to the public through no act or omission of the -Receiving Party; (b) was in the Receiving Party's lawful possession -prior to the disclosure hereunder and was not subject to limitations on -disclosure or use; (c) is developed by the Receiving Party without -access to the Confidential Information of the Disclosing Party or by -persons who have not had access to the Confidential Information of the -Disclosing Party as proven by the written records of the Receiving -Party; (d) is lawfully disclosed to the Receiving Party without -restrictions, by a third party not under an obligation of -confidentiality; or (e) the Receiving Party is legally compelled to -disclose the information, in which case the Receiving Party shall assert -the privileged and confidential nature of the information and cooperate -fully with the Disclosing Party to protect against and prevent -disclosure of any Confidential Information and to limit the scope of -disclosure and the dissemination of disclosed Confidential Information -by all legally available means. - -The obligations of the Receiving Party under this Section shall continue -during the Initial Term and for a period of five (5) years after -expiration or termination of this Agreement. To the extent that the -terms of the Non-Disclosure Agreement between Nokia and Licensee -conflict with the terms of this Section 8, this Section 8 shall be -controlling over the terms of the Non-Disclosure Agreement. +Each party acknowledges that during the Term of this Agreement it shall have access to information about the other party's business, business methods, business plans, customers, business relations, technology, and other information, including the terms of this Agreement, that is confidential and of great value to the other party, and the value of which would be significantly reduced if disclosed to third parties (the "Confidential Information"). Accordingly, when a party (the "Receiving Party") receives Confidential Information from another party (the "Disclosing Party"), the Receiving Party shall, and shall obligate its employees and agents and employees and agents of its Affiliates to: (i) maintain the Confidential Information in strict confidence; (ii) not disclose the Confidential Information to a third party without the Disclosing Party's prior written approval; and (iii) not, directly or indirectly, use the Confidential Information for any purpose other than for exercising its rights and fulfilling its responsibilities pursuant to this Agreement. Each party shall take reasonable measures to protect the Confidential Information of the other party, which measures shall not be less than the measures taken by such party to protect its own confidential and proprietary information. + +"Confidential Information" shall not include information that (a) is or becomes generally known to the public through no act or omission of the Receiving Party; (b) was in the Receiving Party's lawful possession prior to the disclosure hereunder and was not subject to limitations on disclosure or use; (c) is developed by the Receiving Party without access to the Confidential Information of the Disclosing Party or by persons who have not had access to the Confidential Information of the Disclosing Party as proven by the written records of the Receiving Party; (d) is lawfully disclosed to the Receiving Party without restrictions, by a third party not under an obligation of confidentiality; or (e) the Receiving Party is legally compelled to disclose the information, in which case the Receiving Party shall assert the privileged and confidential nature of the information and cooperate fully with the Disclosing Party to protect against and prevent disclosure of any Confidential Information and to limit the scope of disclosure and the dissemination of disclosed Confidential Information by all legally available means. + +The obligations of the Receiving Party under this Section shall continue during the Initial Term and for a period of five (5) years after expiration or termination of this Agreement. To the extent that the terms of the Non-Disclosure Agreement between Nokia and Licensee conflict with the terms of this Section 8, this Section 8 shall be controlling over the terms of the Non-Disclosure Agreement. 10. GENERAL PROVISIONS 10.1 No Assignment -Licensee shall not be entitled to assign or transfer all or any of its -rights, benefits and obligations under this Agreement without the prior -written consent of Nokia, which shall not be unreasonably withheld. +Licensee shall not be entitled to assign or transfer all or any of its rights, benefits and obligations under this Agreement without the prior written consent of Nokia, which shall not be unreasonably withheld. 10.2 Termination -Nokia may terminate the Agreement at any time immediately upon written -notice by Nokia to Licensee if Licensee breaches this Agreement. +Nokia may terminate the Agreement at any time immediately upon written notice by Nokia to Licensee if Licensee breaches this Agreement. -Upon termination of this Agreement, Licensee shall return to Nokia all -copies of Licensed Software that were supplied by Nokia. All other -copies of Licensed Software in the possession or control of Licensee -must be erased or destroyed. An officer of Licensee must promptly -deliver to Nokia a written confirmation that this has occurred. +Upon termination of this Agreement, Licensee shall return to Nokia all copies of Licensed Software that were supplied by Nokia. All other copies of Licensed Software in the possession or control of Licensee must be erased or destroyed. An officer of Licensee must promptly deliver to Nokia a written confirmation that this has occurred. 10.3 Surviving Sections -Any terms and conditions that by their nature or otherwise reasonably -should survive a cancellation or termination of this Agreement shall -also be deemed to survive. Such terms and conditions include, but are -not limited to the following Sections: 2, 5, 6, 7, 8, 9, 10.2, 10.3, 10.4, -10.5, 10.6, 10.7, and 10.8 of this Agreement. +Any terms and conditions that by their nature or otherwise reasonably should survive a cancellation or termination of this Agreement shall also be deemed to survive. Such terms and conditions include, but are not limited to the following Sections: 2, 5, 6, 7, 8, 9, 10.2, 10.3, 10.4, 10.5, 10.6, 10.7, and 10.8 of this Agreement. 10.4 Entire Agreement -This Agreement constitutes the complete agreement between the parties -and supersedes all prior or contemporaneous discussions, -representations, and proposals, written or oral, with respect to the -subject matters discussed herein, with the exception of the -non-disclosure agreement executed by the parties in connection with this -Agreement ("Non-Disclosure Agreement"), if any, shall be subject to -Section 8. No modification of this Agreement shall be effective unless -contained in a writing executed by an authorized representative of each -party. No term or condition contained in Licensee's purchase order shall -apply unless expressly accepted by Nokia in writing. If any provision of -the Agreement is found void or unenforceable, the remainder shall remain -valid and enforceable according to its terms. If any remedy provided is -determined to have failed for its essential purpose, all limitations of -liability and exclusions of damages set forth in this Agreement shall -remain in effect. +This Agreement constitutes the complete agreement between the parties and supersedes all prior or contemporaneous discussions, representations, and proposals, written or oral, with respect to the subject matters discussed herein, with the exception of the non-disclosure agreement executed by the parties in connection with this Agreement ("Non-Disclosure Agreement"), if any, shall be subject to Section 8. No modification of this Agreement shall be effective unless contained in a writing executed by an authorized representative of each party. No term or condition contained in Licensee's purchase order shall apply unless expressly accepted by Nokia in writing. If any provision of the Agreement is found void or unenforceable, the remainder shall remain valid and enforceable according to its terms. If any remedy provided is determined to have failed for its essential purpose, all limitations of liability and exclusions of damages set forth in this Agreement shall remain in effect. 10.5 Export Control -Licensee acknowledges that the Licensed Software may be subject to -export control restrictions of various countries. Licensee shall fully -comply with all applicable export license restrictions and requirements -as well as with all laws and regulations relating to the importation of -the Licensed Software and shall procure all necessary governmental -authorizations, including without limitation, all necessary licenses, -approvals, permissions or consents, where necessary for the -re-exportation of the Licensed Software., +Licensee acknowledges that the Licensed Software may be subject to export control restrictions of various countries. Licensee shall fully comply with all applicable export license restrictions and requirements as well as with all laws and regulations relating to the importation of the Licensed Software and shall procure all necessary governmental authorizations, including without limitation, all necessary licenses, approvals, permissions or consents, where necessary for the re-exportation of the Licensed Software., 10.6 Governing Law and Legal Venue -This Agreement shall be governed by and construed in accordance with the -federal laws of the United States of America and the internal laws of -the State of New York without given effect to any choice of law rule -that would result in the application of the laws of any other -jurisdiction. The United Nations Convention on Contracts for the -International Sale of Goods (CISG) shall not apply. Each Party (a) -hereby irrevocably submits itself to and consents to the jurisdiction of -the United States District Court for the Southern District of New York -(or if such court lacks jurisdiction, the state courts of the State of -New York) for the purposes of any action, claim, suit or proceeding -between the Parties in connection with any controversy, claim, or -dispute arising out of or relating to this Agreement; and (b) hereby -waives, and agrees not to assert by way of motion, as a defense or -otherwise, in any such action, claim, suit or proceeding, any claim that -is not personally subject to the jurisdiction of such court(s), that the -action, claim, suit or proceeding is brought in an inconvenient forum or -that the venue of the action, claim, suit or proceeding is improper. -Notwithstanding the foregoing, nothing in this Section 9.6 is intended -to, or shall be deemed to, constitute a submission or consent to, or -selection of, jurisdiction, forum or venue for any action for patent -infringement, whether or not such action relates to this Agreement. + This Agreement shall be construed and interpreted in accordance with the laws of Finland, excluding its choice of law provisions. Any disputes arising out of or relating to this Agreement shall be resolved in arbitration under the Rules of Arbitration of the Chamber of Commerce of Helsinki, Finland. The arbitration tribunal shall consist of one (1), or if either Party so requires, of three (3), arbitrators. The award shall be final and binding and enforceable in any court of competent jurisdiction. The arbitration shall be held in Helsinki, Finland and the process shall be conducted in the English language. 10.7 No Implied License -There are no implied licenses or other implied rights granted under this -Agreement, and all rights, save for those expressly granted hereunder, -shall remain with Nokia and its licensors. In addition, no licenses or -immunities are granted to the combination of the Licensed Software with -any other software or hardware not delivered by Nokia under this -Agreement. +There are no implied licenses or other implied rights granted under this Agreement, and all rights, save for those expressly granted hereunder, shall remain with Nokia and its licensors. In addition, no licenses or immunities are granted to the combination of the Licensed Software with any other software or hardware not delivered by Nokia under this Agreement. 10.8 Government End Users -A "U.S. Government End User" shall mean any agency or entity of the -government of the United States. The following shall apply if Licensee -is a U.S. Government End User. The Licensed Software is a "commercial -item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), -consisting of "commercial computer software" and "commercial computer -software documentation," as such terms are used in 48 C.F.R. 12.212 -(Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 -through 227.7202-4 (June 1995), all U.S. Government End Users acquire -the Licensed Software with only those rights set forth herein. The -Licensed Software (including related documentation) is provided to U.S. -Government End Users: (a) only as a commercial end item; and (b) only -pursuant to this Agreement. - - +A "U.S. Government End User" shall mean any agency or entity of the government of the United States. The following shall apply if Licensee is a U.S. Government End User. The Licensed Software is a "commercial item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and "commercial computer software documentation," as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire the Licensed Software with only those rights set forth herein. The Licensed Software (including related documentation) is provided to U.S. Government End Users: (a) only as a commercial end item; and (b) only pursuant to this Agreement. +--------------------------------------------- -TECHNOLOGY PREVIEW LICENSE AGREEMENT: Rest of the World -Agreement version 2.3 +BETA VERSION LICENSE AGREEMENT +Agreement version 2.2"The Americas" -This Technology Preview License Agreement ("Agreement") is a legal -agreement between Nokia Corporation ("Nokia"), with its registered -office at Keilalahdentie 4, 02150 Espoo, Finland and you (either an -individual or a legal entity) ("Licensee") for the Licensed Software (as -defined below). +This Beta Version License Agreement ("Agreement") is a legal agreement between Nokia Inc. ("Nokia"), with its registered office at 6021 Connection Drive, Irving, TX 75039 and you (either an individual or a legal entity) ("Licensee") for the Licensed Software (as defined below). 1. DEFINITIONS -"Affiliate" of a Party shall mean an entity (i) which is directly or -indirectly controlling such Party; (ii) which is under the same direct -or indirect ownership or control as such Party; or (iii) which is -directly or indirectly owned or controlled by such Party. For these -purposes, an entity shall be treated as being controlled by another if -that other entity has fifty percent (50 %) or more of the votes in such -entity, is able to direct its affairs and/or to control the composition -of its board of directors or equivalent body. +"Affiliate" of a Party shall mean an entity (i) which is directly or indirectly controlling such Party; (ii) which is under the same direct or indirect ownership or control as such Party; or (iii) which is directly or indirectly owned or controlled by such Party. For these purposes, an entity shall be treated as being controlled by another if that other entity has fifty percent (50 %) or more of the votes in such entity, is able to direct its affairs and/or to control the composition of its board of directors or equivalent body. -"Term" shall mean the period of time six (6) months from the later of -(a) the Effective Date; or (b) the date the Licensed Software was -initially delivered to Licensee by Nokia. If no specific Effective Date -is set forth in the Agreement, the Effective Date shall be deemed to be -the date the Licensed Software was initially delivered to Licensee. +"Applications" shall mean Licensee's software products created using the Licensed Software which may include portions of the Licensed Software. -"Licensed Software" shall mean the computer software, "online" or -electronic documentation, associated media and printed materials, -including the source code, example programs and the documentation -delivered by Nokia to Licensee in conjunction with this Agreement. +"Term" shall mean the period of time from the later of (a) the Effective Date; or (b) the date the Licensed Software was initially delivered to Licensee by Nokia until thirty (30) days after Nokia's next beta or commercial release of a version of the Licensed Software with the same major and minor version number as the Licensed Software. If no specific Effective Date is set forth in the Agreement, the Effective Date shall be deemed to be the date the Licensed Software was initially delivered to Licensee. Notwithstanding the foregoing, in no event shall the term exceed six (6) months from the date Nokia initially delivered the Licensed Software to Licensee. -"Party" or "Parties" shall mean Licensee and/or Nokia. +"Licensed Software" shall mean the computer software, "online" or electronic documentation, associated media and printed materials, including the source code, example programs and the documentation delivered by Nokia to Licensee in conjunction with this Agreement. + +"Party or Parties" shall mean Licensee and/or Nokia. 2. OWNERSHIP -The Licensed Software is protected by copyright laws and international -copyright treaties, as well as other intellectual property laws and -treaties. The Licensed Software is licensed, not sold. - -If Licensee provides any findings, proposals, suggestions or other -feedback ("Feedback") to Nokia regarding the Licensed Software, Nokia -shall own all right, title and interest including the intellectual -property rights in and to such Feedback, excluding however any existing -patent rights of Licensee. To the extent Licensee owns or controls any -patents for such Feedback Licensee hereby grants to Nokia and its -Affiliates, a worldwide, perpetual, non-transferable, sublicensable, -royalty-free license to (i) use, copy and modify Feedback and to create -derivative works thereof, (ii) to make (and have made), use, import, -sell, offer for sale, lease, dispose, offer for disposal or otherwise -exploit any products or services of Nokia containing Feedback,, and -(iii) sublicense all the foregoing rights to third party licensees and -customers of Nokia and/or its Affiliates. +The Licensed Software is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The Licensed Software is licensed, not sold. + +If Licensee provides any findings, proposals, suggestions or other feedback ("Feedback") to Nokia regarding the Licensed Software, Nokia shall own all right, title and interest including the intellectual property rights in and to such Feedback, excluding however any existing patent rights of Licensee. To the extent Licensee owns or controls any patents for such Feedback Licensee hereby grants to Nokia and its Affiliates, a worldwide, perpetual, non-transferable, sublicensable, royalty-free license to (i) use, copy and modify Feedback and to create derivative works thereof, (ii) to make (and have made), use, import, sell, offer for sale, lease, dispose, offer for disposal or otherwise exploit any products or services of Nokia containing Feedback,, and (iii) sublicense all the foregoing rights to third party licensees and customers of Nokia and/or its Affiliates. + 3. VALIDITY OF THE AGREEMENT -By installing, copying, or otherwise using the Licensed Software, -Licensee agrees to be bound by the terms of this Agreement. If Licensee -does not agree to the terms of this Agreement, Licensee may not install, -copy, or otherwise use the Licensed Software. Upon Licensee's acceptance -of the terms and conditions of this Agreement, Nokia grants Licensee the -right to use the Licensed Software in the manner provided below. +By installing, copying, or otherwise using the Licensed Software, Licensee agrees to be bound by the terms of this Agreement. If Licensee does not agree to the terms of this Agreement, Licensee may not install, copy, or otherwise use the Licensed Software. Upon Licensee's acceptance of the terms and conditions of this Agreement, Nokia grants Licensee the right to use the Licensed Software in the manner provided below. 4. LICENSES 4.1. Using and Copying -Nokia grants to Licensee a non-exclusive, non-transferable, time-limited -license to use and copy the Licensed Software for sole purpose of -evaluating and testing the Licensed Software during the Term. +Nokia grants to Licensee a non-exclusive, non-transferable, time-limited license to use and copy the Licensed Software for sole purpose of designing, developing and testing Applications, and evaluating and testing the Licensed Software during the Term. -Licensee may install copies of the Licensed Software on an unlimited -number of computers provided that (a) if an individual, only such -individual; or (b) if a legal entity only its employees; use the -Licensed Software for the authorized purposes. +Licensee may install copies of the Licensed Software on an unlimited number of computers provided that (a) if an individual, only such individual; or (b) if a legal entity only its employees; use the Licensed Software for the authorized purposes. 4.2 No Distribution or Modifications -Licensee may not disclose, modify, sell, market, commercialise, -distribute, loan, rent, lease, or license the Licensed Software or any -copy of it or use the Licensed Software for any purpose that is not -expressly granted in this Section 4. Licensee may not alter or remove -any details of ownership, copyright, trademark or other property right -connected with the Licensed Software. Licensee may not distribute any -software statically or dynamically linked with the Licensed Software. +Licensee may not disclose, modify, sell, market, commercialise, distribute, loan, rent, lease, or license the Licensed Software or any copy of it or use the Licensed Software for any purpose that is not expressly granted in this Section 4. Licensee may not alter or remove any details of ownership, copyright, trademark or other property right connected with the Licensed Software. Licensee may not distribute any software statically or dynamically linked with the Licensed Software. -4.3 No Technical Support +4.3 Support -Nokia has no obligation to furnish Licensee with any technical support -whatsoever. Any such support is subject to separate agreement between -the Parties. +Nokia has no obligation to furnish Licensee with maintenance, technical support or updates for the Licensed Software provided under this Agreement. However, Nokia may, in its sole discretion, provide further pre-release versions, technical support, updates and/or supplements of the Licensed Software and/or related information ("Support and Updates") to Licensee hereunder, in which case Support and Updates shall also be deemed to be included in the Licensed Software and therefore governed by the terms of this Agreement, unless other terms of use are provided by Nokia with such Support and Updates. 5. PRE-RELEASE CODE - -The Licensed Software contains pre-release code that is not at the level -of performance and compatibility of a final, generally available, -product offering. The Licensed Software may not operate correctly and -may be substantially modified prior to the first commercial product -release, if any. Nokia is not obligated to make this or any later -version of the Licensed Software commercially available. The License -Software is "Not for Commercial Use" and may only be used for the -purposes described in Section 4. The Licensed Software may not be used -in a live operating environment where it may be relied upon to perform -in the same manner as a commercially released product or with data that -has not been sufficiently backed up. +The Licensed Software contains pre-release code that is not at the level of performance and compatibility of a final, generally available, product offering. The Licensed Software may not operate correctly and may be substantially modified prior to the first commercial product release, if any. Nokia is not obligated to make this or any later version of the Licensed Software commercially available. The License Software is "Not for Commercial Use" and may only be used for the purposes described in Section 4, however Applications may be distributed within Licensee's organization for testing purposes. The Licensed Software may not be used in a live operating environment where it may be relied upon to perform in the same manner as a commercially released product or with data that has not been sufficiently backed up. 6. THIRD PARTY SOFTWARE -The Licensed Software may provide links to third party libraries or code -(collectively "Third Party Software") to implement various functions. -Third Party Software does not comprise part of the Licensed Software. In -some cases, access to Third Party Software may be included along with -the Licensed Software delivery as a convenience for development and -testing only. Such source code and libraries may be listed in the -".../src/3rdparty" source tree delivered with the Licensed Software or -documented in the Licensed Software where the Third Party Software is -used, as may be amended from time to time, do not comprise the Licensed -Software. Licensee acknowledges (1) that some part of Third Party -Software may require additional licensing of copyright and patents from -the owners of such, and (2) that distribution of any of the Licensed -Software referencing any portion of a Third Party Software may require -appropriate licensing from such third parties. +The Licensed Software may provide links to third party libraries or code (collectively "Third Party Software") to implement various functions. Third Party Software does not comprise part of the Licensed Software. In some cases, access to Third Party Software may be included along with the Licensed Software delivery as a convenience for development and testing only. Such source code and libraries may be listed in the ".../src/3rdparty" source tree delivered with the Licensed Software or documented in the Licensed Software where the Third Party Software is used, as may be amended from time to time, do not comprise the Licensed Software. Licensee acknowledges (1) that some part of Third Party Software may require additional licensing of copyright and patents from the owners of such, and (2) that distribution of any of the Licensed Software referencing any portion of a Third Party Software may require appropriate licensing from such third parties. 7. LIMITED WARRANTY AND WARRANTY DISCLAIMER -The Licensed Software is licensed to Licensee "as is". To the maximum -extent permitted by applicable law, Nokia on behalf of itself and its -suppliers, disclaims all warranties and conditions, either express or -implied, including, but not limited to, implied warranties of -merchantability, fitness for a particular purpose, title and -non-infringement with regard to the Licensed Software. +The Licensed Software is licensed to Licensee "as is". To the maximum extent permitted by applicable law, Nokia on behalf of itself and its suppliers, disclaims all warranties and conditions, either express or implied, including, but not limited to, implied warranties of merchantability, fitness for a particular purpose, title and non-infringement with regard to the Licensed Software. 8. LIMITATION OF LIABILITY -If, Nokia's warranty disclaimer notwithstanding, Nokia is held liable to -Licensee, whether in contract, tort or any other legal theory, based on -the Licensed Software, Nokia's entire liability to Licensee and -Licensee's exclusive remedy shall be, at Nokia's option, either (A) -return of the price Licensee paid for the Licensed Software, or (B) -repair or replacement of the Licensed Software, provided Licensee -returns to Nokia all copies of the Licensed Software as originally -delivered to Licensee. Nokia shall not under any circumstances be liable -to Licensee based on failure of the Licensed Software if the failure -resulted from accident, abuse or misapplication, nor shall Nokia under -any circumstances be liable for special damages, punitive or exemplary -damages, damages for loss of profits or interruption of business or for -loss or corruption of data. Any award of damages from Nokia to Licensee -shall not exceed the total amount Licensee has paid to Nokia in -connection with this Agreement. +If, Nokia's warranty disclaimer notwithstanding, Nokia is held liable to Licensee, whether in contract, tort or any other legal theory, based on the Licensed Software, Nokia's entire liability to Licensee and Licensee's exclusive remedy shall be, at Nokia's option, either (A) return of the price Licensee paid for the Licensed Software, or (B) repair or replacement of the Licensed Software, provided Licensee returns to Nokia all copies of the Licensed Software as originally delivered to Licensee. Nokia shall not under any circumstances be liable to Licensee based on failure of the Licensed Software if the failure resulted from accident, abuse or misapplication, nor shall Nokia under any circumstances be liable for special damages, punitive or exemplary damages, damages for loss of profits or interruption of business or for loss or corruption of data. Any award of damages from Nokia to Licensee shall not exceed the total amount Licensee has paid to Nokia in connection with this Agreement. 9. CONFIDENTIALITY -Each party acknowledges that during the Term of this Agreement it shall -have access to information about the other party's business, business -methods, business plans, customers, business relations, technology, and -other information, including the terms of this Agreement, that is -confidential and of great value to the other party, and the value of -which would be significantly reduced if disclosed to third parties (the -"Confidential Information"). Accordingly, when a party (the "Receiving -Party") receives Confidential Information from another party (the -"Disclosing Party"), the Receiving Party shall, and shall obligate its -employees and agents and employees and agents of its Affiliates to: (i) -maintain the Confidential Information in strict confidence; (ii) not -disclose the Confidential Information to a third party without the -Disclosing Party's prior written approval; and (iii) not, directly or -indirectly, use the Confidential Information for any purpose other than -for exercising its rights and fulfilling its responsibilities pursuant -to this Agreement. Each party shall take reasonable measures to protect -the Confidential Information of the other party, which measures shall -not be less than the measures taken by such party to protect its own -confidential and proprietary information. - -"Confidential Information" shall not include information that (a) is or -becomes generally known to the public through no act or omission of the -Receiving Party; (b) was in the Receiving Party's lawful possession -prior to the disclosure hereunder and was not subject to limitations on -disclosure or use; (c) is developed by the Receiving Party without -access to the Confidential Information of the Disclosing Party or by -persons who have not had access to the Confidential Information of the -Disclosing Party as proven by the written records of the Receiving -Party; (d) is lawfully disclosed to the Receiving Party without -restrictions, by a third party not under an obligation of -confidentiality; or (e) the Receiving Party is legally compelled to -disclose the information, in which case the Receiving Party shall assert -the privileged and confidential nature of the information and cooperate -fully with the Disclosing Party to protect against and prevent -disclosure of any Confidential Information and to limit the scope of -disclosure and the dissemination of disclosed Confidential Information -by all legally available means. - -The obligations of the Receiving Party under this Section shall continue -during the Initial Term and for a period of five (5) years after -expiration or termination of this Agreement. To the extent that the -terms of the Non-Disclosure Agreement between Nokia and Licensee -conflict with the terms of this Section 8, this Section 8 shall be -controlling over the terms of the Non-Disclosure Agreement. +Each party acknowledges that during the Term of this Agreement it shall have access to information about the other party's business, business methods, business plans, customers, business relations, technology, and other information, including the terms of this Agreement, that is confidential and of great value to the other party, and the value of which would be significantly reduced if disclosed to third parties (the "Confidential Information"). Accordingly, when a party (the "Receiving Party") receives Confidential Information from another party (the "Disclosing Party"), the Receiving Party shall, and shall obligate its employees and agents and employees and agents of its Affiliates to: (i) maintain the Confidential Information in strict confidence; (ii) not disclose the Confidential Information to a third party without the Disclosing Party's prior written approval; and (iii) not, directly or indirectly, use the Confidential Information for any purpose other than for exercising its rights and fulfilling its responsibilities pursuant to this Agreement. Each party shall take reasonable measures to protect the Confidential Information of the other party, which measures shall not be less than the measures taken by such party to protect its own confidential and proprietary information. + +"Confidential Information" shall not include information that (a) is or becomes generally known to the public through no act or omission of the Receiving Party; (b) was in the Receiving Party's lawful possession prior to the disclosure hereunder and was not subject to limitations on disclosure or use; (c) is developed by the Receiving Party without access to the Confidential Information of the Disclosing Party or by persons who have not had access to the Confidential Information of the Disclosing Party as proven by the written records of the Receiving Party; (d) is lawfully disclosed to the Receiving Party without restrictions, by a third party not under an obligation of confidentiality; or (e) the Receiving Party is legally compelled to disclose the information, in which case the Receiving Party shall assert the privileged and confidential nature of the information and cooperate fully with the Disclosing Party to protect against and prevent disclosure of any Confidential Information and to limit the scope of disclosure and the dissemination of disclosed Confidential Information by all legally available means. + +The obligations of the Receiving Party under this Section shall continue during the Initial Term and for a period of five (5) years after expiration or termination of this Agreement. To the extent that the terms of the Non-Disclosure Agreement between Nokia and Licensee conflict with the terms of this Section 8, this Section 8 shall be controlling over the terms of the Non-Disclosure Agreement. 10. GENERAL PROVISIONS 10.1 No Assignment -Licensee shall not be entitled to assign or transfer all or any of its -rights, benefits and obligations under this Agreement without the prior -written consent of Nokia, which shall not be unreasonably withheld. +Licensee shall not be entitled to assign or transfer all or any of its rights, benefits and obligations under this Agreement without the prior written consent of Nokia, which shall not be unreasonably withheld. 10.2 Termination -Nokia may terminate the Agreement at any time immediately upon written -notice by Nokia to Licensee if Licensee breaches this Agreement. +Nokia may terminate the Agreement at any time immediately upon written notice by Nokia to Licensee if Licensee breaches this Agreement. -Upon termination of this Agreement, Licensee shall return to Nokia all -copies of Licensed Software that were supplied by Nokia. All other -copies of Licensed Software in the possession or control of Licensee -must be erased or destroyed. An officer of Licensee must promptly -deliver to Nokia a written confirmation that this has occurred. +Upon termination of this Agreement, Licensee shall return to Nokia all copies of Licensed Software that were supplied by Nokia. All other copies of Licensed Software in the possession or control of Licensee must be erased or destroyed. An officer of Licensee must promptly deliver to Nokia a written confirmation that this has occurred. 10.3 Surviving Sections -Any terms and conditions that by their nature or otherwise reasonably -should survive a cancellation or termination of this Agreement shall -also be deemed to survive. Such terms and conditions include, but are -not limited to the following Sections: 2, 5, 6, 7, 8, 9, 10.2, 10.3, 10.4, -10.5, 10.6, 10.7, and 10.8 of this Agreement. +Any terms and conditions that by their nature or otherwise reasonably should survive a cancellation or termination of this Agreement shall also be deemed to survive. Such terms and conditions include, but are not limited to the following Sections: 2, 5, 6, 7, 8, 9, 10.2, 10.3, 10.4, 10.5, 10.6, 10.7, and 10.8 of this Agreement. 10.4 Entire Agreement -This Agreement constitutes the complete agreement between the parties -and supersedes all prior or contemporaneous discussions, -representations, and proposals, written or oral, with respect to the -subject matters discussed herein, with the exception of the -non-disclosure agreement executed by the parties in connection with this -Agreement ("Non-Disclosure Agreement"), if any, shall be subject to -Section 8. No modification of this Agreement shall be effective unless -contained in a writing executed by an authorized representative of each -party. No term or condition contained in Licensee's purchase order shall -apply unless expressly accepted by Nokia in writing. If any provision of -the Agreement is found void or unenforceable, the remainder shall remain -valid and enforceable according to its terms. If any remedy provided is -determined to have failed for its essential purpose, all limitations of -liability and exclusions of damages set forth in this Agreement shall -remain in effect. +This Agreement constitutes the complete agreement between the parties and supersedes all prior or contemporaneous discussions, representations, and proposals, written or oral, with respect to the subject matters discussed herein, with the exception of the non-disclosure agreement executed by the parties in connection with this Agreement ("Non-Disclosure Agreement"), if any, shall be subject to Section 8. No modification of this Agreement shall be effective unless contained in a writing executed by an authorized representative of each party. No term or condition contained in Licensee's purchase order shall apply unless expressly accepted by Nokia in writing. If any provision of the Agreement is found void or unenforceable, the remainder shall remain valid and enforceable according to its terms. If any remedy provided is determined to have failed for its essential purpose, all limitations of liability and exclusions of damages set forth in this Agreement shall remain in effect. 10.5 Export Control -Licensee acknowledges that the Licensed Software may be subject to -export control restrictions of various countries. Licensee shall fully -comply with all applicable export license restrictions and requirements -as well as with all laws and regulations relating to the importation of -the Licensed Software and shall procure all necessary governmental -authorizations, including without limitation, all necessary licenses, -approvals, permissions or consents, where necessary for the -re-exportation of the Licensed Software., +Licensee acknowledges that the Licensed Software may be subject to export control restrictions of various countries. Licensee shall fully comply with all applicable export license restrictions and requirements as well as with all laws and regulations relating to the importation of the Licensed Software and shall procure all necessary governmental authorizations, including without limitation, all necessary licenses, approvals, permissions or consents, where necessary for the re-exportation of the Licensed Software., 10.6 Governing Law and Legal Venue -This Agreement shall be construed and interpreted in accordance with the -laws of Finland, excluding its choice of law provisions. Any disputes -arising out of or relating to this Agreement shall be resolved in -arbitration under the Rules of Arbitration of the Chamber of Commerce of -Helsinki, Finland. The arbitration tribunal shall consist of one (1), or -if either Party so requires, of three (3), arbitrators. The award shall -be final and binding and enforceable in any court of competent -jurisdiction. The arbitration shall be held in Helsinki, Finland and the -process shall be conducted in the English language. + This Agreement shall be governed by and construed in accordance with the federal laws of the United States of America and the internal laws of the State of New York without given effect to any choice of law rule that would result in the application of the laws of any other jurisdiction. The United Nations Convention on Contracts for the International Sale of Goods (CISG) shall not apply. Each Party (a) hereby irrevocably submits itself to and consents to the jurisdiction of the United States District Court for the Southern District of New York (or if such court lacks jurisdiction, the state courts of the State of New York) for the purposes of any action, claim, suit or proceeding between the Parties in connection with any controversy, claim, or dispute arising out of or relating to this Agreement; and (b) hereby waives, and agrees not to assert by way of motion, as a defense or otherwise, in any such action, claim, suit or proceeding, any claim that is not personally subject to the jurisdiction of such court(s), that the action, claim, suit or proceeding is brought in an inconvenient forum or that the venue of the action, claim, suit or proceeding is improper. Notwithstanding the foregoing, nothing in this Section 9.6 is intended to, or shall be deemed to, constitute a submission or consent to, or selection of, jurisdiction, forum or venue for any action for patent infringement, whether or not such action relates to this Agreement. 10.7 No Implied License -There are no implied licenses or other implied rights granted under this -Agreement, and all rights, save for those expressly granted hereunder, -shall remain with Nokia and its licensors. In addition, no licenses or -immunities are granted to the combination of the Licensed Software with -any other software or hardware not delivered by Nokia under this -Agreement. +There are no implied licenses or other implied rights granted under this Agreement, and all rights, save for those expressly granted hereunder, shall remain with Nokia and its licensors. In addition, no licenses or immunities are granted to the combination of the Licensed Software with any other software or hardware not delivered by Nokia under this Agreement. 10.8 Government End Users -A "U.S. Government End User" shall mean any agency or entity of the -government of the United States. The following shall apply if Licensee -is a U.S. Government End User. The Licensed Software is a "commercial -item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), -consisting of "commercial computer software" and "commercial computer -software documentation," as such terms are used in 48 C.F.R. 12.212 -(Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 -through 227.7202-4 (June 1995), all U.S. Government End Users acquire -the Licensed Software with only those rights set forth herein. The -Licensed Software (including related documentation) is provided to U.S. -Government End Users: (a) only as a commercial end item; and (b) only -pursuant to this Agreement. +A "U.S. Government End User" shall mean any agency or entity of the government of the United States. The following shall apply if Licensee is a U.S. Government End User. The Licensed Software is a "commercial item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and "commercial computer software documentation," as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire the Licensed Software with only those rights set forth herein. The Licensed Software (including related documentation) is provided to U.S. Government End Users: (a) only as a commercial end item; and (b) only pursuant to this Agreement. diff --git a/doc/coding-style.qdoc b/doc/coding-style.qdoc index f028e56fe743e4ea78e3f683b649084856a2aca4..3e20915745533f7622eb815d3baf27c54ed23d15 100644 --- a/doc/coding-style.qdoc +++ b/doc/coding-style.qdoc @@ -39,12 +39,14 @@ that you: \endlist - \section1 Submitting Code +Send your contributions to qt-creator@trolltech.com + It is implicitly understood that all patches contributed to The Qt Creator Project are made under under the Gnu General Public License, version 2 or later -and +and currently we require that you sign a copyright assignment form. We are +working on a better solution. If you have a problem with that, don't contribute code. @@ -54,12 +56,11 @@ ideas with the other developers on mailing list first. When you create the patch, please use git or use "diff -up" since we find that a lot easier to read than the other diff formats. Also please do not -send patches that implements or fixes several different things; several -patches is a much better option. +send patches that implement or fixes several different things; several +patches is a much better option. Or send as your a url to pull from. We also require you to provide a commit message entry with every patch, -this describes in detail what the patch is doing. - +that describes in detail what the patch is doing. \section1 Code Constructs @@ -207,10 +208,168 @@ Only one declaration on each line. \section2 Formatting + We are using the Qt Coding style, please follow the guidelines below. + +Indentation + 4 spaces, no tabs + +Declaring variables + Declare each variable on a separate line + Avoid short (e.g., a,rbarr,nughdeget) names whenever possible + Single character variable names are only okay for counters and temporaries, where the purpose of the variable is obvious + Wait with declaring a variable until it is needed + + Variables and functions start with a small letter. Each consecutive word in a variable's name starts with a capital letter + Avoid abbreviations + + // Wrong + int a, b; + char *c, *d; + + // Correct + int height; + int width; + char *nameOfThis; + char *nameOfThat; + +Whitespace + Use blank lines to group statements together where suited + Always use only one blank line + Always use a single space after a keyword, and before a curly brace. + + // Wrong + if(foo){ + } + + // Correct + if (foo) { + } + + For pointers or references, always use a single space before '*' or '&', but never after. + Avoid C-style casts when possible. + // Wrong + char* blockOfMemory = (char* ) malloc(data.size()); + + // Correct + char *blockOfMemory = (char *)malloc(data.size()); + char *blockOfMemory = reinterpret_cast<char *>(malloc(data.size())); + +Braces + As a base rule, the left curly brace goes on the same line as the start of the statement: + // Wrong + if (codec) + { + } + + // Correct + if (codec) { + } + + Exception: Function implementations and class declarations always have the left brace on the start of a line: + static void foo(int g) + { + qDebug("foo: %i", g); + } + + class Moo + { + }; + + Use curly braces when the body of a conditional statement contains more than one line, and also if a single line statement is somewhat complex. + // Wrong + if (address.isEmpty()) { + return false; + } + + for (int i = 0; i < 10; ++i) { + qDebug("%i", i); + } + + // Correct + if (address.isEmpty()) + return false; + + for (int i = 0; i < 10; ++i) + qDebug("%i", i); + + Exception 1: Use braces also if the parent statement covers several lines / wraps + // Correct + if (address.isEmpty() || !isValid() + || !codec) { + return false; + } + + Exception 2: Use braces also in if-then-else blocks where either the if-code or the else-code covers several lines + // Wrong + if (address.isEmpty()) + --it; + else { + qDebug("%s", qPrintable(address)); + ++it; + } + + // Correct + if (address.isEmpty()) { + --it; + } else { + qDebug("%s", qPrintable(address)); + ++it; + } + + // Wrong + if (a) + if (b) + ... + else + ... + + // Correct + if (a) { + if (b) + ... + else + ... + } + + Use curly braces when the body of a conditional statement is empty + // Wrong + while (a); + + // Correct + while (a) {} + +Parentheses + Use parentheses to group expressions: + // Wrong + if (a && b || c) + + // Correct + if ((a && b) || c) + + // Wrong + a + b & c + + // Correct + (a + b) & c + +Line breaks + Keep lines shorter than 100 characters; insert line breaks if necessary. + Commas go at the end of a broken line; operators start at the beginning of the new line. The operator is at the end of the line to avoid having to scroll if your editor is too narrow. + // Wrong + if (longExpression + + otherLongExpression + + otherOtherLongExpression) { + } + + // Correct + if (longExpression + + otherLongExpression + + otherOtherLongExpression) { + } + + + - Adapt the formatting of your code to the one used in the - other parts of Qt Creator. In case there is different formatting for - the same construct, use the one used more often. \section2 Declarations @@ -228,6 +387,10 @@ Only one declaration on each line. - Avoid global or static variables. +\section2 API/ABI stability + We currently do not gurantee any API nor ABI compatibility between releases. + + \section2 File headers If you create a new file, the top of the file should include a diff --git a/doc/qtcreator-add-resource-wizard.png b/doc/qtcreator-add-resource-wizard.png index 92c21e5b54418e0f21e648567259c180c22a67fd..1a1ceb62e6caf94077b5d0c819dd684205139b73 100644 Binary files a/doc/qtcreator-add-resource-wizard.png and b/doc/qtcreator-add-resource-wizard.png differ diff --git a/doc/qtcreator-add-resource-wizard2.png b/doc/qtcreator-add-resource-wizard2.png new file mode 100644 index 0000000000000000000000000000000000000000..74569996fe96fbb819f8849c243925c6a5f420a9 Binary files /dev/null and b/doc/qtcreator-add-resource-wizard2.png differ diff --git a/doc/qtcreator-add-resource.png b/doc/qtcreator-add-resource.png index 8a068987f1e3e0c45c19d9c63f8b18bd721e7ebb..036ff915484d05044eb7ac7f258362c1a90fd302 100644 Binary files a/doc/qtcreator-add-resource.png and b/doc/qtcreator-add-resource.png differ diff --git a/doc/qtcreator-breakdown.png b/doc/qtcreator-breakdown.png index 9b9f07069529ecea3f81425cc307cf0cc3ec1bc9..bba842e1f5b1a7c35ea1a64c9f36342d129f34f7 100644 Binary files a/doc/qtcreator-breakdown.png and b/doc/qtcreator-breakdown.png differ diff --git a/doc/qtcreator-buildenvironment.png b/doc/qtcreator-buildenvironment.png index fb9af43b0e67b8441fb85c44ae9e039847350b8e..d4ed4511653753e17a3d2d587efdcb52f96be16d 100644 Binary files a/doc/qtcreator-buildenvironment.png and b/doc/qtcreator-buildenvironment.png differ diff --git a/doc/qtcreator-buildsettingstab.png b/doc/qtcreator-buildsettingstab.png index c6768cda63681dd24a714ca1256cbdadbec2be9f..872af004412f73d1ca9af26f50ad829cc00967ab 100644 Binary files a/doc/qtcreator-buildsettingstab.png and b/doc/qtcreator-buildsettingstab.png differ diff --git a/doc/qtcreator-buildsteps.png b/doc/qtcreator-buildsteps.png index 7e23662faf3ef0d7f849bd463c30982c01d8f4a2..c517c2481a5c72e1ac9f2df46bce541e6d8bad8c 100644 Binary files a/doc/qtcreator-buildsteps.png and b/doc/qtcreator-buildsteps.png differ diff --git a/doc/qtcreator-class-info.png b/doc/qtcreator-class-info.png index 757eb128566bf22902be49b7286a87cfc3e6c794..a005239707657fa71423401fe8c4c20aaf8a9252 100644 Binary files a/doc/qtcreator-class-info.png and b/doc/qtcreator-class-info.png differ diff --git a/doc/qtcreator-intro-and-location.png b/doc/qtcreator-intro-and-location.png index e0d8c9f150b833de7f100451b4d13f98b6f15fae..f03e4fb6a475ea50a3f9ee456af67ef8d2f3414e 100644 Binary files a/doc/qtcreator-intro-and-location.png and b/doc/qtcreator-intro-and-location.png differ diff --git a/doc/qtcreator-locator-methods.png b/doc/qtcreator-locator-methods.png index 4494213de1b482f73ad967285d7980047cc8dd2a..bd17b156cce1459255069834d97265ec24f05bec 100644 Binary files a/doc/qtcreator-locator-methods.png and b/doc/qtcreator-locator-methods.png differ diff --git a/doc/qtcreator-locator-opendocs.png b/doc/qtcreator-locator-opendocs.png new file mode 100644 index 0000000000000000000000000000000000000000..f6d7738df0068129e1134d19963e6a007bab8c7d Binary files /dev/null and b/doc/qtcreator-locator-opendocs.png differ diff --git a/doc/qtcreator-locator-symbols.png b/doc/qtcreator-locator-symbols.png new file mode 100644 index 0000000000000000000000000000000000000000..9c72fa20ee418b6b53377380fcaacfab8027c4e6 Binary files /dev/null and b/doc/qtcreator-locator-symbols.png differ diff --git a/doc/qtcreator-new-project-summary.png b/doc/qtcreator-new-project-summary.png new file mode 100644 index 0000000000000000000000000000000000000000..05e1cf2e0d5893564ed62f584db160fd4644d710 Binary files /dev/null and b/doc/qtcreator-new-project-summary.png differ diff --git a/doc/qtcreator-new-project.png b/doc/qtcreator-new-project.png index 6f7832e5cb8f7109874ee3fabd7c4bf7e3205a89..f6c186206e916b6d24c1885288a6188e27690568 100644 Binary files a/doc/qtcreator-new-project.png and b/doc/qtcreator-new-project.png differ diff --git a/doc/qtcreator-screenshots.png b/doc/qtcreator-screenshots.png new file mode 100644 index 0000000000000000000000000000000000000000..18ae5e77f84d0a47d8553364493a68534d2cbfd7 Binary files /dev/null and b/doc/qtcreator-screenshots.png differ diff --git a/doc/qtcreator-select-modules.png b/doc/qtcreator-select-modules.png index b5b2ead006bb4308f39d1282ce97fdcacba5e0c1..313934ec974648c07bd77ae3327d36cc16f976ad 100644 Binary files a/doc/qtcreator-select-modules.png and b/doc/qtcreator-select-modules.png differ diff --git a/doc/qtcreator.qch b/doc/qtcreator.qch index 204b224fd18591c89782eab72ee6d97faca81fa3..661f0c8dd1bb4a238a1f97b6b2602135ee9cf778 100644 Binary files a/doc/qtcreator.qch and b/doc/qtcreator.qch differ diff --git a/doc/qtcreator.qdoc b/doc/qtcreator.qdoc index f13a8f757a8a8e87eae437987d6aefcbee90f490..73efc0ed6231c62940b9c2a7573eca059bec7a1a 100644 --- a/doc/qtcreator.qdoc +++ b/doc/qtcreator.qdoc @@ -1,17 +1,17 @@ /*! \contentspage{index.html}{Qt Creator} \page index.html - \nextpage qtcreator-quick-tour.html + \nextpage creator-quick-tour.html \title Qt Creator Manual - \section1 Version 0.9 - Technical Preview + \section1 Version 0.9.1 (Beta) The goal of Qt Creator is to provide a cross-platform, complete Integrated Development Environment (IDE) to develop Qt projects. It is available for the Linux, Mac OS X and Windows platforms. - \note Qt Creator is currently released as a Technical Preview. It is + \note The current version of Qt Creator is 0.9.1 (Beta). It is possible to edit source code, compile, run and debug applications; other features are still under development. Please send bug reports and suggestions to qt-creator@trolltech.com. To subscribe, send a @@ -20,7 +20,8 @@ \table \row - \o \inlineimage qtcreator.png + \o \inlineimage qtcreator-screenshots.png + \row \o Qt Creator includes a wide range of useful features. Among them are: \list 1 \o \bold{Smart Code Editor}: The code editor provides syntax @@ -54,7 +55,7 @@ \o \l{Debugging with Qt Creator} \o \l{Tips and Tricks} \o \l{Glossary} - \o \l{Known Issues of Version 0.9 (Technical Preview)} + \o \l{Known Issues of Version 0.9.1 (Beta)} \endlist */ @@ -94,8 +95,8 @@ on the left provides different views to navigate between files. \o \gui{Debug Mode} - Provides various ways to inspect the state of the - program while debugging. See \l{qtcreator-debugging}{Debugging With Qt - Creator} for a hands-on description of how to use this mode. + program while debugging. See \l{Debugging With Qt Creator} for a hands-on + description of how to use this mode. \o \gui{Projects Mode} - Lets you configure how projects can be built and executed. Under the list of projects, there are tabs to configure the @@ -170,7 +171,7 @@ interface forms just like you would with the standalone version. The Qt Designer integration also includes project management and code completion. For more information on Qt Designer, you can refer to - \l{The Designer Manual}. + \l{http://doc.trolltech.com/designer-manual.html}{The Designer Manual}. \image qtcreator-formedit.png @@ -202,30 +203,23 @@ To modify the build settings of your project, switch to the \gui{Projects} mode using the mouse or with \key{Ctrl+4}. - \image qtcreator-buildsettings.png + \image qtcreator-buildsettingstab.png Action items to create, clone, or delete build configurations can be found - on the right of the dialog. You can have as many build configurations as + at the bottom of the dialog. You can have as many build configurations as needed. By default Qt Creator creates a \bold{debug} and \bold{release} build configuration. Both these configurations use the \l{glossary-default-qt}{Default Qt Version}. In the tree on the left, a list of build configurations and their settings - are displayed. The screenshot below shows the \bold{debug} and + are displayed. The screenshot above shows the \bold{debug} and \bold{release} configurations and their corresponding settings: \bold{Build Environment} and \bold{Build Steps}. - \image qtcreator-buildsettingstab.png - When you select a build configuration in the tree, a configuration page for general build settings will be displayed. Here you can specify which \l{glossary-project-qt}{Qt version} to use to build your project, whether - to \l{glossary-shadow-build}{shadow build} the project, and if a special - debugging helper is linked into the project or not. - - The debugging helper enables the gdb integration to show the contents of - Qt data types. Enabling this option means that an additional file will be - compiled and linked to your project. + to \l{glossary-shadow-build}{shadow build} the project. \image qtcreator-buildenvironment.png @@ -242,11 +236,14 @@ \bold{Build Settings} page. Qt Creator will run the make command using the correct Qt version. - \note The default qmake arguments \c{-after SOURCES*=gdbmacros.cpp - -after QT*=network} are due to the debugging helper described above. If the + \note The \bold{Gdb Macros Build} step builds a small library along with your + project that is used for the custom display of Qt and STL objects in the + integrated debugger. The library is created and built in a "qtc-gdbmacros" + subfolder of your project's main directory, and loaded dynamically into your + application if you run it in the debugger. If the debugging helper seems to break your build or your application, you can - turn it off. You will still be able to debug applications, but the contents - of Qt data types will not be displayed properly. + remove the build step. You will still be able to debug applications, but the + contents of Qt and STL data types will not be displayed properly. \section1 Qt Version Management @@ -288,16 +285,16 @@ \i \inlineimage qtcreator-new-project.png \i \bold{Creating a New Project} - To create a new project, select \gui{New Project} from the \gui{File} menu. - You can create one of the following three projects: + To create a new project, select \gui{New Project} from the \gui{File} menu. + You can create one of the following three projects: - \list - \o Qt4 Console Application - \o Qt4 Gui Application - \o C++ Library - \endlist + \list + \o Qt4 Console Application + \o Qt4 Gui Application + \o C++ Library + \endlist - In this example, we select a \e{Qt4 Gui Application} and click \gui{OK}. + In this example, we select a \e{Qt4 Gui Application} and click \gui{OK}. \row \i \inlineimage qtcreator-intro-and-location.png @@ -322,12 +319,18 @@ \i \inlineimage qtcreator-class-info.png \i \bold{Specifying Class Information} - Lastly, specify the name of the class you would like to create. The + Specify the name of the class you would like to create. The \e{Header file}, \e{Source file} and \e{Form file} fields will update automatically according to your choice of class name. You also have to select the base class for your class, either a - QWidget, QDialog or QMainWindow, from the drop down box. Click + QWidget, QDialog or QMainWindow, from the drop down box. + + \row + \i \inlineimage qtcreator-new-project-summary.png + \i \bold{Creating the Project} + + Finally, review the files that will be created for you. Click \gui{Done} and your project will be generated. \endtable @@ -405,11 +408,18 @@ \image qtcreator-textfinder-ui.png - Design the form above using a QLabel, QLineEdit, QPushButton and a - QTextEdit. We recommend that you use a QGridLayout to lay out the QLabel, - QLineEdit and QPushButton. The QTextEdit can then be added to a - QVBoxLayout, along with the QGridLayout. If you are new to designing forms - with \QD, you can take a look at the + Design the form above using a \l{http://doc.trolltech.com/qlabel.html} + {QLabel}, \l{http://doc.trolltech.com/qlinedit.html}{QLineEdit}, + \l{http://doc.trolltech.com/qpushbutton.html}{QPushButton} and a + \l{http://doc.trolltech.com/qtextedit.html}{QTextEdit}. We recommend that + you use a QGridLayout to lay out the + \l{http://doc.trolltech.com/qlabel.html}{QLabel}, + \l{http://doc.trolltech.com/qlinedit.html}{QLineEdit} and + \l{http://doc.trolltech.com/qpushbutton.html}{QPushButton}. The + \l{http://doc.trolltech.com/qtextedit.html}{QTextEdit} can then be added to + a \l{http://doc.trolltech.com/qvboxlayout.html}{QVBoxLayout}, along with + the \l{http://doc.trolltech.com/qgridlayout.html}{QGridLayout}. If you are + new to designing forms with \QD, you can take a look at the \l{http://doc.trolltech.com/designer-manual.html}{Designer Manual}. \section2 The Header File @@ -418,8 +428,9 @@ constructor, a destructor, and the \c{Ui} object. We need to add a private slot, \c{on_findButton_clicked()}, to carry out our find operation. We also need a private function, \c{loadTextFile()}, to read and display the - contents of our input text file in the QTextEdit. This is done with the - following code: + contents of our input text file in the + \l{http://doc.trolltech.com/qtextedit.html}{QTextEdit}. This is done with + the following code: \code private slots: @@ -453,12 +464,16 @@ } \endcode - Basically, we load a text file using QFile, read it with QTextStream, and - then display it on \c{textEdit} with \l{QTextEdit::}{setPlainText()}. + Basically, we load a text file using + \l{http://doc.trolltech.com/qfile.html}{QFile}, read it with + \l{http://doc.trolltech.com/qtextstream.html}{QTextStream}, and + then display it on \c{textEdit} with + \l{http://doc.trolltech.com/qtextedit.html#plainText-prop}{setPlainText()}. For the \c{on_findButton_clicked()} slot, we extract the search string and - use the \l{QTextEdit::}{find()} function to look for the search string - within the text file. The code snippet below further describes it: + use the \l{http://doc.trolltech.com/qtextedit.html#find}{find()} function + to look for the search string within the text file. The code snippet below + further describes it: \code void TextFinder::on_findButton_clicked() @@ -500,7 +515,14 @@ \image qtcreator-add-resource-wizard.png Enter "textfinder" in the \gui{Name} field and use the given \gui{Path}. - Then, click \gui{Done}. + Then, click \gui{Continue}. + + \image qtcreator-add-resource-wizard2.png + + On this page you can choose to which project you want to add the new file. + Make sure that \gui{Add to Project} is checked and + "TextFinder" is selected as the \gui{Project}, and click + \gui{Done}. Your resource file will now be displayed with the Resource Editor. Click on the \gui{Add} drop down box and select \gui{Add Prefix}. The prefix we @@ -611,7 +633,7 @@ \row \o Go to a symbol definition \o Ctrl+K, :, Space, and the function name - \o + \o \image qtcreator-locator-symbols.png \row \o Go to a help topic \o Ctrl+K, ?, Space, and the topic @@ -619,6 +641,7 @@ \row \o Go to an opened document \o Ctrl+K, o, Space, and the document name. + \o \image qtcreator-locator-opendocs.png \row \o Go to a file in the file system (browse the file system) \o Ctrl+K, f, Space, and the file name. @@ -899,9 +922,9 @@ \i \bold{Setting a Breakpoint} First, we set a breakpoint on the line where we invoke - \l{QTextEdit::}{setPlainText()} by clicking between the line number and the - window border. Then, select \gui{Start Debugging} from the \gui{Debug} menu - or press \key{F5}. + \l{http://doc.trolltech.com/qtextedit.html#plainText-prop}{setPlainText()} + by clicking between the line number and the window border. Then, select + \gui{Start Debugging} from the \gui{Debug} menu or press \key{F5}. \endtable Breakpoints are visible in the \gui{Breakpoints} view, shown below, in @@ -1006,6 +1029,7 @@ the low-level structures visible again. */ + /*! \contentspage index.html \previouspage creator-tips.html @@ -1049,6 +1073,7 @@ */ + /*! \contentspage index.html \previouspage creator-glossary.html @@ -1127,14 +1152,15 @@ \endtable */ + /*! \contentspage index.html \previouspage creator-keyboard-shortcuts.html \page creator-known-issues.html - \title Known Issues of Version 0.9 (Technical Preview) + \title Known Issues of Version 0.9.1 (Beta) - There are some known issues with the Technical Preview. + There are some known issues with Qt Creator 0.9.1 (Beta). The development team is aware of those, there is no need to report them as bug. \list diff --git a/src/app/app.pro b/src/app/app.pro index 67bb37e4efb9f6a5b268c78918b5c59fd6372cb6..52e53003f31176400448ad38c7a109b29a4c0ec5 100644 --- a/src/app/app.pro +++ b/src/app/app.pro @@ -13,12 +13,15 @@ win32 { } linux-* { LIBS *= -lExtensionSystem -lAggregation + QT += svg dbus + } TEMPLATE = app TARGET = $$IDE_APP_TARGET DESTDIR = ../../bin + SOURCES += main.cpp macx { diff --git a/src/app/main.cpp b/src/app/main.cpp index eedc9e1365370a07d2e60933568a3e1dbb1aaadf..b8d4b9d4b4146052679c2aa5c6892a674d023758 100644 --- a/src/app/main.cpp +++ b/src/app/main.cpp @@ -283,3 +283,4 @@ int main(int argc, char **argv) QTimer::singleShot(100, &pluginManager, SLOT(startTests())); return app.exec(); } + diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp index 870f826ebf27d4a75c7bfb7fe926ddba1e6ba10c..ab8f87c5a88c80b6eebd8c726707f9eb15a7e22f 100644 --- a/src/plugins/texteditor/basetexteditor.cpp +++ b/src/plugins/texteditor/basetexteditor.cpp @@ -749,7 +749,7 @@ void BaseTextEditor::moveLineUpDown(bool up) void BaseTextEditor::cleanWhitespace() { - d->m_document->cleanWhitespace(); + d->m_document->cleanWhitespace(); } void BaseTextEditor::keyPressEvent(QKeyEvent *e) @@ -1286,7 +1286,7 @@ void BaseTextEditor::setFontSettings(const TextEditor::FontSettings &fs) void BaseTextEditor::setStorageSettings(const StorageSettings &storageSettings) { - d->m_document->setStorageSettings(storageSettings); + d->m_document->setStorageSettings(storageSettings); } //--------- BaseTextEditorPrivate ----------- @@ -2477,17 +2477,22 @@ void BaseTextEditor::extraAreaMouseEvent(QMouseEvent *e) extraAreaWidth(&markWidth); if (e->type() == QEvent::MouseMove && e->buttons() == 0) { // mouse tracking - int highlightBlockNumber = d->extraAreaHighlightCollapseBlockNumber; + // Update which folder marker is highlighted + const int highlightBlockNumber = d->extraAreaHighlightCollapseBlockNumber; d->extraAreaHighlightCollapseBlockNumber = -1; - if (TextBlockUserData::canCollapse(cursor.block()) + + if (d->m_codeFoldingVisible + && TextBlockUserData::canCollapse(cursor.block()) && !TextBlockUserData::hasClosingCollapseInside(cursor.block().next()) && collapseBox(cursor.block()).contains(e->pos())) d->extraAreaHighlightCollapseBlockNumber = cursor.blockNumber(); + // Set whether the mouse cursor is a hand or normal arrow bool hand = (e->pos().x() <= markWidth || d->extraAreaHighlightCollapseBlockNumber >= 0); if (hand != (d->m_extraArea->cursor().shape() == Qt::PointingHandCursor)) d->m_extraArea->setCursor(hand ? Qt::PointingHandCursor : Qt::ArrowCursor); + // Start fading in or out the highlighted folding marker if (highlightBlockNumber != d->extraAreaHighlightCollapseBlockNumber) { d->extraAreaTimeLine->stop(); d->extraAreaTimeLine->setDirection(d->extraAreaHighlightCollapseBlockNumber >= 0? @@ -2504,12 +2509,12 @@ void BaseTextEditor::extraAreaMouseEvent(QMouseEvent *e) if (e->type() == QEvent::MouseButtonPress || e->type() == QEvent::MouseButtonDblClick) { if (e->button() == Qt::LeftButton) { - if (TextBlockUserData::canCollapse(cursor.block()) + if (d->m_codeFoldingVisible && TextBlockUserData::canCollapse(cursor.block()) && !TextBlockUserData::hasClosingCollapseInside(cursor.block().next()) && collapseBox(cursor.block()).contains(e->pos())) { setTextCursor(cursor); toggleBlockVisible(cursor.block()); - } else if (e->pos().x() > markWidth) { + } else if (d->m_marksVisible && e->pos().x() > markWidth) { QTextCursor selection = cursor; selection.setVisualNavigation(true); d->extraAreaSelectionAnchorBlockNumber = selection.blockNumber(); @@ -2519,7 +2524,7 @@ void BaseTextEditor::extraAreaMouseEvent(QMouseEvent *e) } else { d->extraAreaToggleMarkBlockNumber = cursor.blockNumber(); } - } else if (e->button() == Qt::RightButton) { + } else if (d->m_marksVisible && e->button() == Qt::RightButton) { QMenu * contextMenu = new QMenu(this); emit d->m_editable->markContextMenuRequested(editableInterface(), cursor.blockNumber() + 1, contextMenu); if (!contextMenu->isEmpty())