[guidata] 01/03: Imported Upstream version 1.7.0~b3
Frédéric-Emmanuel Picca
picca at moszumanska.debian.org
Sun Sep 13 12:10:12 UTC 2015
This is an automated email from the git hooks/post-receive script.
picca pushed a commit to branch master
in repository guidata.
commit a8b0bc031a962b96ef96881c1904479df0cbc7fc
Author: Picca Frédéric-Emmanuel <picca at debian.org>
Date: Sun Sep 13 12:35:57 2015 +0200
Imported Upstream version 1.7.0~b3
---
Licence_CeCILL_V2-en.txt | 1012 +++++++++++++++----------------
PKG-INFO | 2 +-
guidata-tests | 4 +-
guidata.egg-info/PKG-INFO | 2 +-
guidata/__init__.py | 2 +-
guidata/dataset/dataitems.py | 101 ++--
guidata/dataset/datatypes.py | 3 +-
guidata/images/apply.png | Bin 612 -> 785 bytes
guidata/images/arredit.png | Bin 873 -> 1123 bytes
guidata/images/busy.png | Bin 3186 -> 721 bytes
guidata/images/cell_edit.png | Bin 3012 -> 689 bytes
guidata/images/copy.png | Bin 879 -> 830 bytes
guidata/images/delete.png | Bin 522 -> 722 bytes
guidata/images/dictedit.png | Bin 629 -> 911 bytes
guidata/images/edit.png | Bin 3331 -> 929 bytes
guidata/images/editors/edit.png | Bin 3331 -> 929 bytes
guidata/images/editors/edit_add.png | Bin 3329 -> 1001 bytes
guidata/images/editors/editcopy.png | Bin 3356 -> 1048 bytes
guidata/images/editors/editdelete.png | Bin 3653 -> 1453 bytes
guidata/images/editors/editpaste.png | Bin 3529 -> 1295 bytes
guidata/images/editors/fileimport.png | Bin 2076 -> 2248 bytes
guidata/images/editors/filesave.png | Bin 970 -> 1144 bytes
guidata/images/editors/imshow.png | Bin 3206 -> 727 bytes
guidata/images/editors/insert.png | Bin 3097 -> 525 bytes
guidata/images/editors/plot.png | Bin 3165 -> 515 bytes
guidata/images/editors/rename.png | Bin 3012 -> 689 bytes
guidata/images/exit.png | Bin 876 -> 1164 bytes
guidata/images/expander_down.png | Bin 1077 -> 1322 bytes
guidata/images/expander_right.png | Bin 1057 -> 432 bytes
guidata/images/file.png | Bin 425 -> 530 bytes
guidata/images/fileclose.png | Bin 3714 -> 1424 bytes
guidata/images/fileimport.png | Bin 1383 -> 1556 bytes
guidata/images/filenew.png | Bin 347 -> 463 bytes
guidata/images/fileopen.png | Bin 964 -> 1539 bytes
guidata/images/filesave.png | Bin 970 -> 1144 bytes
guidata/images/filesaveas.png | Bin 1264 -> 1443 bytes
guidata/images/filetypes/doc.png | Bin 4072 -> 1601 bytes
guidata/images/filetypes/gif.png | Bin 4045 -> 1512 bytes
guidata/images/filetypes/html.png | Bin 4368 -> 1848 bytes
guidata/images/filetypes/jpg.png | Bin 4045 -> 1512 bytes
guidata/images/filetypes/pdf.png | Bin 4073 -> 1543 bytes
guidata/images/filetypes/png.png | Bin 4045 -> 1512 bytes
guidata/images/filetypes/pps.png | Bin 3793 -> 1439 bytes
guidata/images/filetypes/ps.png | Bin 3760 -> 1428 bytes
guidata/images/filetypes/tar.png | Bin 4099 -> 1577 bytes
guidata/images/filetypes/tgz.png | Bin 4099 -> 1577 bytes
guidata/images/filetypes/tif.png | Bin 4045 -> 1512 bytes
guidata/images/filetypes/txt.png | Bin 4323 -> 1801 bytes
guidata/images/filetypes/xls.png | Bin 3758 -> 1237 bytes
guidata/images/filetypes/zip.png | Bin 4099 -> 1577 bytes
guidata/images/guidata.svg | 1076 ++++++++++++++++-----------------
guidata/images/max.png | Bin 176 -> 356 bytes
guidata/images/min.png | Bin 170 -> 351 bytes
guidata/images/none.png | Bin 1193 -> 331 bytes
guidata/images/not_found.png | Bin 355 -> 531 bytes
guidata/images/python.png | Bin 654 -> 887 bytes
guidata/images/quickview.png | Bin 3425 -> 888 bytes
guidata/images/save_all.png | Bin 1428 -> 1599 bytes
guidata/images/selection.png | Bin 603 -> 744 bytes
guidata/images/settings.png | Bin 2074 -> 2445 bytes
guidata/images/shape.png | Bin 248 -> 361 bytes
guidata/images/xmax.png | Bin 184 -> 354 bytes
guidata/images/xmin.png | Bin 186 -> 353 bytes
guidata/qt/QtCore.py | 58 +-
guidata/qt/QtDesigner.py | 28 +-
guidata/qt/QtGui.py | 40 +-
guidata/qt/QtSvg.py | 28 +-
guidata/qt/QtWebKit.py | 32 +-
guidata/qt/__init__.py | 135 +++--
guidata/tests/all_features.py | 1 +
70 files changed, 1281 insertions(+), 1243 deletions(-)
diff --git a/Licence_CeCILL_V2-en.txt b/Licence_CeCILL_V2-en.txt
index fcc8df2..f85af60 100644
--- a/Licence_CeCILL_V2-en.txt
+++ b/Licence_CeCILL_V2-en.txt
@@ -1,506 +1,506 @@
-
-CeCILL FREE SOFTWARE LICENSE AGREEMENT
-
-
- Notice
-
-This Agreement is a Free Software license agreement that is the result
-of discussions between its authors in order to ensure compliance with
-the two main principles guiding its drafting:
-
- * firstly, compliance with the principles governing the distribution
- of Free Software: access to source code, broad rights granted to
- users,
- * secondly, the election of a governing law, French law, with which
- it is conformant, both as regards the law of torts and
- intellectual property law, and the protection that it offers to
- both authors and holders of the economic rights over software.
-
-The authors of the CeCILL (for Ce[a] C[nrs] I[nria] L[ogiciel] L[ibre])
-license are:
-
-Commissariat � l'Energie Atomique - CEA, a public scientific, technical
-and industrial research establishment, having its principal place of
-business at 25 rue Leblanc, immeuble Le Ponant D, 75015 Paris, France.
-
-Centre National de la Recherche Scientifique - CNRS, a public scientific
-and technological establishment, having its principal place of business
-at 3 rue Michel-Ange, 75794 Paris cedex 16, France.
-
-Institut National de Recherche en Informatique et en Automatique -
-INRIA, a public scientific and technological establishment, having its
-principal place of business at Domaine de Voluceau, Rocquencourt, BP
-105, 78153 Le Chesnay cedex, France.
-
-
- Preamble
-
-The purpose of this Free Software license agreement is to grant users
-the right to modify and redistribute the software governed by this
-license within the framework of an open source distribution model.
-
-The exercising of these rights is conditional upon certain obligations
-for users so as to preserve this status for all subsequent redistributions.
-
-In consideration of access to the source code and the rights to copy,
-modify and redistribute granted by the license, users are provided only
-with a limited warranty and the software's author, the holder of the
-economic rights, and the successive licensors only have limited liability.
-
-In this respect, the risks associated with loading, using, modifying
-and/or developing or reproducing the software by the user are brought to
-the user's attention, given its Free Software status, which may make it
-complicated to use, with the result that its use is reserved for
-developers and experienced professionals having in-depth computer
-knowledge. Users are therefore encouraged to load and test the
-suitability of the software as regards their requirements in conditions
-enabling the security of their systems and/or data to be ensured and,
-more generally, to use and operate it in the same conditions of
-security. This Agreement may be freely reproduced and published,
-provided it is not altered, and that no provisions are either added or
-removed herefrom.
-
-This Agreement may apply to any or all software for which the holder of
-the economic rights decides to submit the use thereof to its provisions.
-
-
- Article 1 - DEFINITIONS
-
-For the purpose of this Agreement, when the following expressions
-commence with a capital letter, they shall have the following meaning:
-
-Agreement: means this license agreement, and its possible subsequent
-versions and annexes.
-
-Software: means the software in its Object Code and/or Source Code form
-and, where applicable, its documentation, "as is" when the Licensee
-accepts the Agreement.
-
-Initial Software: means the Software in its Source Code and possibly its
-Object Code form and, where applicable, its documentation, "as is" when
-it is first distributed under the terms and conditions of the Agreement.
-
-Modified Software: means the Software modified by at least one
-Contribution.
-
-Source Code: means all the Software's instructions and program lines to
-which access is required so as to modify the Software.
-
-Object Code: means the binary files originating from the compilation of
-the Source Code.
-
-Holder: means the holder(s) of the economic rights over the Initial
-Software.
-
-Licensee: means the Software user(s) having accepted the Agreement.
-
-Contributor: means a Licensee having made at least one Contribution.
-
-Licensor: means the Holder, or any other individual or legal entity, who
-distributes the Software under the Agreement.
-
-Contribution: means any or all modifications, corrections, translations,
-adaptations and/or new functions integrated into the Software by any or
-all Contributors, as well as any or all Internal Modules.
-
-Module: means a set of sources files including their documentation that
-enables supplementary functions or services in addition to those offered
-by the Software.
-
-External Module: means any or all Modules, not derived from the
-Software, so that this Module and the Software run in separate address
-spaces, with one calling the other when they are run.
-
-Internal Module: means any or all Module, connected to the Software so
-that they both execute in the same address space.
-
-GNU GPL: means the GNU General Public License version 2 or any
-subsequent version, as published by the Free Software Foundation Inc.
-
-Parties: mean both the Licensee and the Licensor.
-
-These expressions may be used both in singular and plural form.
-
-
- Article 2 - PURPOSE
-
-The purpose of the Agreement is the grant by the Licensor to the
-Licensee of a non-exclusive, transferable and worldwide license for the
-Software as set forth in Article 5 hereinafter for the whole term of the
-protection granted by the rights over said Software.
-
-
- Article 3 - ACCEPTANCE
-
-3.1 The Licensee shall be deemed as having accepted the terms and
-conditions of this Agreement upon the occurrence of the first of the
-following events:
-
- * (i) loading the Software by any or all means, notably, by
- downloading from a remote server, or by loading from a physical
- medium;
- * (ii) the first time the Licensee exercises any of the rights
- granted hereunder.
-
-3.2 One copy of the Agreement, containing a notice relating to the
-characteristics of the Software, to the limited warranty, and to the
-fact that its use is restricted to experienced users has been provided
-to the Licensee prior to its acceptance as set forth in Article 3.1
-hereinabove, and the Licensee hereby acknowledges that it has read and
-understood it.
-
-
- Article 4 - EFFECTIVE DATE AND TERM
-
-
- 4.1 EFFECTIVE DATE
-
-The Agreement shall become effective on the date when it is accepted by
-the Licensee as set forth in Article 3.1.
-
-
- 4.2 TERM
-
-The Agreement shall remain in force for the entire legal term of
-protection of the economic rights over the Software.
-
-
- Article 5 - SCOPE OF RIGHTS GRANTED
-
-The Licensor hereby grants to the Licensee, who accepts, the following
-rights over the Software for any or all use, and for the term of the
-Agreement, on the basis of the terms and conditions set forth hereinafter.
-
-Besides, if the Licensor owns or comes to own one or more patents
-protecting all or part of the functions of the Software or of its
-components, the Licensor undertakes not to enforce the rights granted by
-these patents against successive Licensees using, exploiting or
-modifying the Software. If these patents are transferred, the Licensor
-undertakes to have the transferees subscribe to the obligations set
-forth in this paragraph.
-
-
- 5.1 RIGHT OF USE
-
-The Licensee is authorized to use the Software, without any limitation
-as to its fields of application, with it being hereinafter specified
-that this comprises:
-
- 1. permanent or temporary reproduction of all or part of the Software
- by any or all means and in any or all form.
-
- 2. loading, displaying, running, or storing the Software on any or
- all medium.
-
- 3. entitlement to observe, study or test its operation so as to
- determine the ideas and principles behind any or all constituent
- elements of said Software. This shall apply when the Licensee
- carries out any or all loading, displaying, running, transmission
- or storage operation as regards the Software, that it is entitled
- to carry out hereunder.
-
-
- 5.2 ENTITLEMENT TO MAKE CONTRIBUTIONS
-
-The right to make Contributions includes the right to translate, adapt,
-arrange, or make any or all modifications to the Software, and the right
-to reproduce the resulting software.
-
-The Licensee is authorized to make any or all Contributions to the
-Software provided that it includes an explicit notice that it is the
-author of said Contribution and indicates the date of the creation thereof.
-
-
- 5.3 RIGHT OF DISTRIBUTION
-
-In particular, the right of distribution includes the right to publish,
-transmit and communicate the Software to the general public on any or
-all medium, and by any or all means, and the right to market, either in
-consideration of a fee, or free of charge, one or more copies of the
-Software by any means.
-
-The Licensee is further authorized to distribute copies of the modified
-or unmodified Software to third parties according to the terms and
-conditions set forth hereinafter.
-
-
- 5.3.1 DISTRIBUTION OF SOFTWARE WITHOUT MODIFICATION
-
-The Licensee is authorized to distribute true copies of the Software in
-Source Code or Object Code form, provided that said distribution
-complies with all the provisions of the Agreement and is accompanied by:
-
- 1. a copy of the Agreement,
-
- 2. a notice relating to the limitation of both the Licensor's
- warranty and liability as set forth in Articles 8 and 9,
-
-and that, in the event that only the Object Code of the Software is
-redistributed, the Licensee allows future Licensees unhindered access to
-the full Source Code of the Software by indicating how to access it, it
-being understood that the additional cost of acquiring the Source Code
-shall not exceed the cost of transferring the data.
-
-
- 5.3.2 DISTRIBUTION OF MODIFIED SOFTWARE
-
-When the Licensee makes a Contribution to the Software, the terms and
-conditions for the distribution of the resulting Modified Software
-become subject to all the provisions of this Agreement.
-
-The Licensee is authorized to distribute the Modified Software, in
-source code or object code form, provided that said distribution
-complies with all the provisions of the Agreement and is accompanied by:
-
- 1. a copy of the Agreement,
-
- 2. a notice relating to the limitation of both the Licensor's
- warranty and liability as set forth in Articles 8 and 9,
-
-and that, in the event that only the object code of the Modified
-Software is redistributed, the Licensee allows future Licensees
-unhindered access to the full source code of the Modified Software by
-indicating how to access it, it being understood that the additional
-cost of acquiring the source code shall not exceed the cost of
-transferring the data.
-
-
- 5.3.3 DISTRIBUTION OF EXTERNAL MODULES
-
-When the Licensee has developed an External Module, the terms and
-conditions of this Agreement do not apply to said External Module, that
-may be distributed under a separate license agreement.
-
-
- 5.3.4 COMPATIBILITY WITH THE GNU GPL
-
-The Licensee can include a code that is subject to the provisions of one
-of the versions of the GNU GPL in the Modified or unmodified Software,
-and distribute that entire code under the terms of the same version of
-the GNU GPL.
-
-The Licensee can include the Modified or unmodified Software in a code
-that is subject to the provisions of one of the versions of the GNU GPL,
-and distribute that entire code under the terms of the same version of
-the GNU GPL.
-
-
- Article 6 - INTELLECTUAL PROPERTY
-
-
- 6.1 OVER THE INITIAL SOFTWARE
-
-The Holder owns the economic rights over the Initial Software. Any or
-all use of the Initial Software is subject to compliance with the terms
-and conditions under which the Holder has elected to distribute its work
-and no one shall be entitled to modify the terms and conditions for the
-distribution of said Initial Software.
-
-The Holder undertakes that the Initial Software will remain ruled at
-least by this Agreement, for the duration set forth in Article 4.2.
-
-
- 6.2 OVER THE CONTRIBUTIONS
-
-The Licensee who develops a Contribution is the owner of the
-intellectual property rights over this Contribution as defined by
-applicable law.
-
-
- 6.3 OVER THE EXTERNAL MODULES
-
-The Licensee who develops an External Module is the owner of the
-intellectual property rights over this External Module as defined by
-applicable law and is free to choose the type of agreement that shall
-govern its distribution.
-
-
- 6.4 JOINT PROVISIONS
-
-The Licensee expressly undertakes:
-
- 1. not to remove, or modify, in any manner, the intellectual property
- notices attached to the Software;
-
- 2. to reproduce said notices, in an identical manner, in the copies
- of the Software modified or not.
-
-The Licensee undertakes not to directly or indirectly infringe the
-intellectual property rights of the Holder and/or Contributors on the
-Software and to take, where applicable, vis-�-vis its staff, any and all
-measures required to ensure respect of said intellectual property rights
-of the Holder and/or Contributors.
-
-
- Article 7 - RELATED SERVICES
-
-7.1 Under no circumstances shall the Agreement oblige the Licensor to
-provide technical assistance or maintenance services for the Software.
-
-However, the Licensor is entitled to offer this type of services. The
-terms and conditions of such technical assistance, and/or such
-maintenance, shall be set forth in a separate instrument. Only the
-Licensor offering said maintenance and/or technical assistance services
-shall incur liability therefor.
-
-7.2 Similarly, any Licensor is entitled to offer to its licensees, under
-its sole responsibility, a warranty, that shall only be binding upon
-itself, for the redistribution of the Software and/or the Modified
-Software, under terms and conditions that it is free to decide. Said
-warranty, and the financial terms and conditions of its application,
-shall be subject of a separate instrument executed between the Licensor
-and the Licensee.
-
-
- Article 8 - LIABILITY
-
-8.1 Subject to the provisions of Article 8.2, the Licensee shall be
-entitled to claim compensation for any direct loss it may have suffered
-from the Software as a result of a fault on the part of the relevant
-Licensor, subject to providing evidence thereof.
-
-8.2 The Licensor's liability is limited to the commitments made under
-this Agreement and shall not be incurred as a result of in particular:
-(i) loss due the Licensee's total or partial failure to fulfill its
-obligations, (ii) direct or consequential loss that is suffered by the
-Licensee due to the use or performance of the Software, and (iii) more
-generally, any consequential loss. In particular the Parties expressly
-agree that any or all pecuniary or business loss (i.e. loss of data,
-loss of profits, operating loss, loss of customers or orders,
-opportunity cost, any disturbance to business activities) or any or all
-legal proceedings instituted against the Licensee by a third party,
-shall constitute consequential loss and shall not provide entitlement to
-any or all compensation from the Licensor.
-
-
- Article 9 - WARRANTY
-
-9.1 The Licensee acknowledges that the scientific and technical
-state-of-the-art when the Software was distributed did not enable all
-possible uses to be tested and verified, nor for the presence of
-possible defects to be detected. In this respect, the Licensee's
-attention has been drawn to the risks associated with loading, using,
-modifying and/or developing and reproducing the Software which are
-reserved for experienced users.
-
-The Licensee shall be responsible for verifying, by any or all means,
-the suitability of the product for its requirements, its good working
-order, and for ensuring that it shall not cause damage to either persons
-or properties.
-
-9.2 The Licensor hereby represents, in good faith, that it is entitled
-to grant all the rights over the Software (including in particular the
-rights set forth in Article 5).
-
-9.3 The Licensee acknowledges that the Software is supplied "as is" by
-the Licensor without any other express or tacit warranty, other than
-that provided for in Article 9.2 and, in particular, without any warranty
-as to its commercial value, its secured, safe, innovative or relevant
-nature.
-
-Specifically, the Licensor does not warrant that the Software is free
-from any error, that it will operate without interruption, that it will
-be compatible with the Licensee's own equipment and software
-configuration, nor that it will meet the Licensee's requirements.
-
-9.4 The Licensor does not either expressly or tacitly warrant that the
-Software does not infringe any third party intellectual property right
-relating to a patent, software or any other property right. Therefore,
-the Licensor disclaims any and all liability towards the Licensee
-arising out of any or all proceedings for infringement that may be
-instituted in respect of the use, modification and redistribution of the
-Software. Nevertheless, should such proceedings be instituted against
-the Licensee, the Licensor shall provide it with technical and legal
-assistance for its defense. Such technical and legal assistance shall be
-decided on a case-by-case basis between the relevant Licensor and the
-Licensee pursuant to a memorandum of understanding. The Licensor
-disclaims any and all liability as regards the Licensee's use of the
-name of the Software. No warranty is given as regards the existence of
-prior rights over the name of the Software or as regards the existence
-of a trademark.
-
-
- Article 10 - TERMINATION
-
-10.1 In the event of a breach by the Licensee of its obligations
-hereunder, the Licensor may automatically terminate this Agreement
-thirty (30) days after notice has been sent to the Licensee and has
-remained ineffective.
-
-10.2 A Licensee whose Agreement is terminated shall no longer be
-authorized to use, modify or distribute the Software. However, any
-licenses that it may have granted prior to termination of the Agreement
-shall remain valid subject to their having been granted in compliance
-with the terms and conditions hereof.
-
-
- Article 11 - MISCELLANEOUS
-
-
- 11.1 EXCUSABLE EVENTS
-
-Neither Party shall be liable for any or all delay, or failure to
-perform the Agreement, that may be attributable to an event of force
-majeure, an act of God or an outside cause, such as defective
-functioning or interruptions of the electricity or telecommunications
-networks, network paralysis following a virus attack, intervention by
-government authorities, natural disasters, water damage, earthquakes,
-fire, explosions, strikes and labor unrest, war, etc.
-
-11.2 Any failure by either Party, on one or more occasions, to invoke
-one or more of the provisions hereof, shall under no circumstances be
-interpreted as being a waiver by the interested Party of its right to
-invoke said provision(s) subsequently.
-
-11.3 The Agreement cancels and replaces any or all previous agreements,
-whether written or oral, between the Parties and having the same
-purpose, and constitutes the entirety of the agreement between said
-Parties concerning said purpose. No supplement or modification to the
-terms and conditions hereof shall be effective as between the Parties
-unless it is made in writing and signed by their duly authorized
-representatives.
-
-11.4 In the event that one or more of the provisions hereof were to
-conflict with a current or future applicable act or legislative text,
-said act or legislative text shall prevail, and the Parties shall make
-the necessary amendments so as to comply with said act or legislative
-text. All other provisions shall remain effective. Similarly, invalidity
-of a provision of the Agreement, for any reason whatsoever, shall not
-cause the Agreement as a whole to be invalid.
-
-
- 11.5 LANGUAGE
-
-The Agreement is drafted in both French and English and both versions
-are deemed authentic.
-
-
- Article 12 - NEW VERSIONS OF THE AGREEMENT
-
-12.1 Any person is authorized to duplicate and distribute copies of this
-Agreement.
-
-12.2 So as to ensure coherence, the wording of this Agreement is
-protected and may only be modified by the authors of the License, who
-reserve the right to periodically publish updates or new versions of the
-Agreement, each with a separate number. These subsequent versions may
-address new issues encountered by Free Software.
-
-12.3 Any Software distributed under a given version of the Agreement may
-only be subsequently distributed under the same version of the Agreement
-or a subsequent version, subject to the provisions of Article 5.3.4.
-
-
- Article 13 - GOVERNING LAW AND JURISDICTION
-
-13.1 The Agreement is governed by French law. The Parties agree to
-endeavor to seek an amicable solution to any disagreements or disputes
-that may arise during the performance of the Agreement.
-
-13.2 Failing an amicable solution within two (2) months as from their
-occurrence, and unless emergency proceedings are necessary, the
-disagreements or disputes shall be referred to the Paris Courts having
-jurisdiction, by the more diligent Party.
-
-
-Version 2.0 dated 2006-09-05.
+
+CeCILL FREE SOFTWARE LICENSE AGREEMENT
+
+
+ Notice
+
+This Agreement is a Free Software license agreement that is the result
+of discussions between its authors in order to ensure compliance with
+the two main principles guiding its drafting:
+
+ * firstly, compliance with the principles governing the distribution
+ of Free Software: access to source code, broad rights granted to
+ users,
+ * secondly, the election of a governing law, French law, with which
+ it is conformant, both as regards the law of torts and
+ intellectual property law, and the protection that it offers to
+ both authors and holders of the economic rights over software.
+
+The authors of the CeCILL (for Ce[a] C[nrs] I[nria] L[ogiciel] L[ibre])
+license are:
+
+Commissariat � l'Energie Atomique - CEA, a public scientific, technical
+and industrial research establishment, having its principal place of
+business at 25 rue Leblanc, immeuble Le Ponant D, 75015 Paris, France.
+
+Centre National de la Recherche Scientifique - CNRS, a public scientific
+and technological establishment, having its principal place of business
+at 3 rue Michel-Ange, 75794 Paris cedex 16, France.
+
+Institut National de Recherche en Informatique et en Automatique -
+INRIA, a public scientific and technological establishment, having its
+principal place of business at Domaine de Voluceau, Rocquencourt, BP
+105, 78153 Le Chesnay cedex, France.
+
+
+ Preamble
+
+The purpose of this Free Software license agreement is to grant users
+the right to modify and redistribute the software governed by this
+license within the framework of an open source distribution model.
+
+The exercising of these rights is conditional upon certain obligations
+for users so as to preserve this status for all subsequent redistributions.
+
+In consideration of access to the source code and the rights to copy,
+modify and redistribute granted by the license, users are provided only
+with a limited warranty and the software's author, the holder of the
+economic rights, and the successive licensors only have limited liability.
+
+In this respect, the risks associated with loading, using, modifying
+and/or developing or reproducing the software by the user are brought to
+the user's attention, given its Free Software status, which may make it
+complicated to use, with the result that its use is reserved for
+developers and experienced professionals having in-depth computer
+knowledge. Users are therefore encouraged to load and test the
+suitability of the software as regards their requirements in conditions
+enabling the security of their systems and/or data to be ensured and,
+more generally, to use and operate it in the same conditions of
+security. This Agreement may be freely reproduced and published,
+provided it is not altered, and that no provisions are either added or
+removed herefrom.
+
+This Agreement may apply to any or all software for which the holder of
+the economic rights decides to submit the use thereof to its provisions.
+
+
+ Article 1 - DEFINITIONS
+
+For the purpose of this Agreement, when the following expressions
+commence with a capital letter, they shall have the following meaning:
+
+Agreement: means this license agreement, and its possible subsequent
+versions and annexes.
+
+Software: means the software in its Object Code and/or Source Code form
+and, where applicable, its documentation, "as is" when the Licensee
+accepts the Agreement.
+
+Initial Software: means the Software in its Source Code and possibly its
+Object Code form and, where applicable, its documentation, "as is" when
+it is first distributed under the terms and conditions of the Agreement.
+
+Modified Software: means the Software modified by at least one
+Contribution.
+
+Source Code: means all the Software's instructions and program lines to
+which access is required so as to modify the Software.
+
+Object Code: means the binary files originating from the compilation of
+the Source Code.
+
+Holder: means the holder(s) of the economic rights over the Initial
+Software.
+
+Licensee: means the Software user(s) having accepted the Agreement.
+
+Contributor: means a Licensee having made at least one Contribution.
+
+Licensor: means the Holder, or any other individual or legal entity, who
+distributes the Software under the Agreement.
+
+Contribution: means any or all modifications, corrections, translations,
+adaptations and/or new functions integrated into the Software by any or
+all Contributors, as well as any or all Internal Modules.
+
+Module: means a set of sources files including their documentation that
+enables supplementary functions or services in addition to those offered
+by the Software.
+
+External Module: means any or all Modules, not derived from the
+Software, so that this Module and the Software run in separate address
+spaces, with one calling the other when they are run.
+
+Internal Module: means any or all Module, connected to the Software so
+that they both execute in the same address space.
+
+GNU GPL: means the GNU General Public License version 2 or any
+subsequent version, as published by the Free Software Foundation Inc.
+
+Parties: mean both the Licensee and the Licensor.
+
+These expressions may be used both in singular and plural form.
+
+
+ Article 2 - PURPOSE
+
+The purpose of the Agreement is the grant by the Licensor to the
+Licensee of a non-exclusive, transferable and worldwide license for the
+Software as set forth in Article 5 hereinafter for the whole term of the
+protection granted by the rights over said Software.
+
+
+ Article 3 - ACCEPTANCE
+
+3.1 The Licensee shall be deemed as having accepted the terms and
+conditions of this Agreement upon the occurrence of the first of the
+following events:
+
+ * (i) loading the Software by any or all means, notably, by
+ downloading from a remote server, or by loading from a physical
+ medium;
+ * (ii) the first time the Licensee exercises any of the rights
+ granted hereunder.
+
+3.2 One copy of the Agreement, containing a notice relating to the
+characteristics of the Software, to the limited warranty, and to the
+fact that its use is restricted to experienced users has been provided
+to the Licensee prior to its acceptance as set forth in Article 3.1
+hereinabove, and the Licensee hereby acknowledges that it has read and
+understood it.
+
+
+ Article 4 - EFFECTIVE DATE AND TERM
+
+
+ 4.1 EFFECTIVE DATE
+
+The Agreement shall become effective on the date when it is accepted by
+the Licensee as set forth in Article 3.1.
+
+
+ 4.2 TERM
+
+The Agreement shall remain in force for the entire legal term of
+protection of the economic rights over the Software.
+
+
+ Article 5 - SCOPE OF RIGHTS GRANTED
+
+The Licensor hereby grants to the Licensee, who accepts, the following
+rights over the Software for any or all use, and for the term of the
+Agreement, on the basis of the terms and conditions set forth hereinafter.
+
+Besides, if the Licensor owns or comes to own one or more patents
+protecting all or part of the functions of the Software or of its
+components, the Licensor undertakes not to enforce the rights granted by
+these patents against successive Licensees using, exploiting or
+modifying the Software. If these patents are transferred, the Licensor
+undertakes to have the transferees subscribe to the obligations set
+forth in this paragraph.
+
+
+ 5.1 RIGHT OF USE
+
+The Licensee is authorized to use the Software, without any limitation
+as to its fields of application, with it being hereinafter specified
+that this comprises:
+
+ 1. permanent or temporary reproduction of all or part of the Software
+ by any or all means and in any or all form.
+
+ 2. loading, displaying, running, or storing the Software on any or
+ all medium.
+
+ 3. entitlement to observe, study or test its operation so as to
+ determine the ideas and principles behind any or all constituent
+ elements of said Software. This shall apply when the Licensee
+ carries out any or all loading, displaying, running, transmission
+ or storage operation as regards the Software, that it is entitled
+ to carry out hereunder.
+
+
+ 5.2 ENTITLEMENT TO MAKE CONTRIBUTIONS
+
+The right to make Contributions includes the right to translate, adapt,
+arrange, or make any or all modifications to the Software, and the right
+to reproduce the resulting software.
+
+The Licensee is authorized to make any or all Contributions to the
+Software provided that it includes an explicit notice that it is the
+author of said Contribution and indicates the date of the creation thereof.
+
+
+ 5.3 RIGHT OF DISTRIBUTION
+
+In particular, the right of distribution includes the right to publish,
+transmit and communicate the Software to the general public on any or
+all medium, and by any or all means, and the right to market, either in
+consideration of a fee, or free of charge, one or more copies of the
+Software by any means.
+
+The Licensee is further authorized to distribute copies of the modified
+or unmodified Software to third parties according to the terms and
+conditions set forth hereinafter.
+
+
+ 5.3.1 DISTRIBUTION OF SOFTWARE WITHOUT MODIFICATION
+
+The Licensee is authorized to distribute true copies of the Software in
+Source Code or Object Code form, provided that said distribution
+complies with all the provisions of the Agreement and is accompanied by:
+
+ 1. a copy of the Agreement,
+
+ 2. a notice relating to the limitation of both the Licensor's
+ warranty and liability as set forth in Articles 8 and 9,
+
+and that, in the event that only the Object Code of the Software is
+redistributed, the Licensee allows future Licensees unhindered access to
+the full Source Code of the Software by indicating how to access it, it
+being understood that the additional cost of acquiring the Source Code
+shall not exceed the cost of transferring the data.
+
+
+ 5.3.2 DISTRIBUTION OF MODIFIED SOFTWARE
+
+When the Licensee makes a Contribution to the Software, the terms and
+conditions for the distribution of the resulting Modified Software
+become subject to all the provisions of this Agreement.
+
+The Licensee is authorized to distribute the Modified Software, in
+source code or object code form, provided that said distribution
+complies with all the provisions of the Agreement and is accompanied by:
+
+ 1. a copy of the Agreement,
+
+ 2. a notice relating to the limitation of both the Licensor's
+ warranty and liability as set forth in Articles 8 and 9,
+
+and that, in the event that only the object code of the Modified
+Software is redistributed, the Licensee allows future Licensees
+unhindered access to the full source code of the Modified Software by
+indicating how to access it, it being understood that the additional
+cost of acquiring the source code shall not exceed the cost of
+transferring the data.
+
+
+ 5.3.3 DISTRIBUTION OF EXTERNAL MODULES
+
+When the Licensee has developed an External Module, the terms and
+conditions of this Agreement do not apply to said External Module, that
+may be distributed under a separate license agreement.
+
+
+ 5.3.4 COMPATIBILITY WITH THE GNU GPL
+
+The Licensee can include a code that is subject to the provisions of one
+of the versions of the GNU GPL in the Modified or unmodified Software,
+and distribute that entire code under the terms of the same version of
+the GNU GPL.
+
+The Licensee can include the Modified or unmodified Software in a code
+that is subject to the provisions of one of the versions of the GNU GPL,
+and distribute that entire code under the terms of the same version of
+the GNU GPL.
+
+
+ Article 6 - INTELLECTUAL PROPERTY
+
+
+ 6.1 OVER THE INITIAL SOFTWARE
+
+The Holder owns the economic rights over the Initial Software. Any or
+all use of the Initial Software is subject to compliance with the terms
+and conditions under which the Holder has elected to distribute its work
+and no one shall be entitled to modify the terms and conditions for the
+distribution of said Initial Software.
+
+The Holder undertakes that the Initial Software will remain ruled at
+least by this Agreement, for the duration set forth in Article 4.2.
+
+
+ 6.2 OVER THE CONTRIBUTIONS
+
+The Licensee who develops a Contribution is the owner of the
+intellectual property rights over this Contribution as defined by
+applicable law.
+
+
+ 6.3 OVER THE EXTERNAL MODULES
+
+The Licensee who develops an External Module is the owner of the
+intellectual property rights over this External Module as defined by
+applicable law and is free to choose the type of agreement that shall
+govern its distribution.
+
+
+ 6.4 JOINT PROVISIONS
+
+The Licensee expressly undertakes:
+
+ 1. not to remove, or modify, in any manner, the intellectual property
+ notices attached to the Software;
+
+ 2. to reproduce said notices, in an identical manner, in the copies
+ of the Software modified or not.
+
+The Licensee undertakes not to directly or indirectly infringe the
+intellectual property rights of the Holder and/or Contributors on the
+Software and to take, where applicable, vis-�-vis its staff, any and all
+measures required to ensure respect of said intellectual property rights
+of the Holder and/or Contributors.
+
+
+ Article 7 - RELATED SERVICES
+
+7.1 Under no circumstances shall the Agreement oblige the Licensor to
+provide technical assistance or maintenance services for the Software.
+
+However, the Licensor is entitled to offer this type of services. The
+terms and conditions of such technical assistance, and/or such
+maintenance, shall be set forth in a separate instrument. Only the
+Licensor offering said maintenance and/or technical assistance services
+shall incur liability therefor.
+
+7.2 Similarly, any Licensor is entitled to offer to its licensees, under
+its sole responsibility, a warranty, that shall only be binding upon
+itself, for the redistribution of the Software and/or the Modified
+Software, under terms and conditions that it is free to decide. Said
+warranty, and the financial terms and conditions of its application,
+shall be subject of a separate instrument executed between the Licensor
+and the Licensee.
+
+
+ Article 8 - LIABILITY
+
+8.1 Subject to the provisions of Article 8.2, the Licensee shall be
+entitled to claim compensation for any direct loss it may have suffered
+from the Software as a result of a fault on the part of the relevant
+Licensor, subject to providing evidence thereof.
+
+8.2 The Licensor's liability is limited to the commitments made under
+this Agreement and shall not be incurred as a result of in particular:
+(i) loss due the Licensee's total or partial failure to fulfill its
+obligations, (ii) direct or consequential loss that is suffered by the
+Licensee due to the use or performance of the Software, and (iii) more
+generally, any consequential loss. In particular the Parties expressly
+agree that any or all pecuniary or business loss (i.e. loss of data,
+loss of profits, operating loss, loss of customers or orders,
+opportunity cost, any disturbance to business activities) or any or all
+legal proceedings instituted against the Licensee by a third party,
+shall constitute consequential loss and shall not provide entitlement to
+any or all compensation from the Licensor.
+
+
+ Article 9 - WARRANTY
+
+9.1 The Licensee acknowledges that the scientific and technical
+state-of-the-art when the Software was distributed did not enable all
+possible uses to be tested and verified, nor for the presence of
+possible defects to be detected. In this respect, the Licensee's
+attention has been drawn to the risks associated with loading, using,
+modifying and/or developing and reproducing the Software which are
+reserved for experienced users.
+
+The Licensee shall be responsible for verifying, by any or all means,
+the suitability of the product for its requirements, its good working
+order, and for ensuring that it shall not cause damage to either persons
+or properties.
+
+9.2 The Licensor hereby represents, in good faith, that it is entitled
+to grant all the rights over the Software (including in particular the
+rights set forth in Article 5).
+
+9.3 The Licensee acknowledges that the Software is supplied "as is" by
+the Licensor without any other express or tacit warranty, other than
+that provided for in Article 9.2 and, in particular, without any warranty
+as to its commercial value, its secured, safe, innovative or relevant
+nature.
+
+Specifically, the Licensor does not warrant that the Software is free
+from any error, that it will operate without interruption, that it will
+be compatible with the Licensee's own equipment and software
+configuration, nor that it will meet the Licensee's requirements.
+
+9.4 The Licensor does not either expressly or tacitly warrant that the
+Software does not infringe any third party intellectual property right
+relating to a patent, software or any other property right. Therefore,
+the Licensor disclaims any and all liability towards the Licensee
+arising out of any or all proceedings for infringement that may be
+instituted in respect of the use, modification and redistribution of the
+Software. Nevertheless, should such proceedings be instituted against
+the Licensee, the Licensor shall provide it with technical and legal
+assistance for its defense. Such technical and legal assistance shall be
+decided on a case-by-case basis between the relevant Licensor and the
+Licensee pursuant to a memorandum of understanding. The Licensor
+disclaims any and all liability as regards the Licensee's use of the
+name of the Software. No warranty is given as regards the existence of
+prior rights over the name of the Software or as regards the existence
+of a trademark.
+
+
+ Article 10 - TERMINATION
+
+10.1 In the event of a breach by the Licensee of its obligations
+hereunder, the Licensor may automatically terminate this Agreement
+thirty (30) days after notice has been sent to the Licensee and has
+remained ineffective.
+
+10.2 A Licensee whose Agreement is terminated shall no longer be
+authorized to use, modify or distribute the Software. However, any
+licenses that it may have granted prior to termination of the Agreement
+shall remain valid subject to their having been granted in compliance
+with the terms and conditions hereof.
+
+
+ Article 11 - MISCELLANEOUS
+
+
+ 11.1 EXCUSABLE EVENTS
+
+Neither Party shall be liable for any or all delay, or failure to
+perform the Agreement, that may be attributable to an event of force
+majeure, an act of God or an outside cause, such as defective
+functioning or interruptions of the electricity or telecommunications
+networks, network paralysis following a virus attack, intervention by
+government authorities, natural disasters, water damage, earthquakes,
+fire, explosions, strikes and labor unrest, war, etc.
+
+11.2 Any failure by either Party, on one or more occasions, to invoke
+one or more of the provisions hereof, shall under no circumstances be
+interpreted as being a waiver by the interested Party of its right to
+invoke said provision(s) subsequently.
+
+11.3 The Agreement cancels and replaces any or all previous agreements,
+whether written or oral, between the Parties and having the same
+purpose, and constitutes the entirety of the agreement between said
+Parties concerning said purpose. No supplement or modification to the
+terms and conditions hereof shall be effective as between the Parties
+unless it is made in writing and signed by their duly authorized
+representatives.
+
+11.4 In the event that one or more of the provisions hereof were to
+conflict with a current or future applicable act or legislative text,
+said act or legislative text shall prevail, and the Parties shall make
+the necessary amendments so as to comply with said act or legislative
+text. All other provisions shall remain effective. Similarly, invalidity
+of a provision of the Agreement, for any reason whatsoever, shall not
+cause the Agreement as a whole to be invalid.
+
+
+ 11.5 LANGUAGE
+
+The Agreement is drafted in both French and English and both versions
+are deemed authentic.
+
+
+ Article 12 - NEW VERSIONS OF THE AGREEMENT
+
+12.1 Any person is authorized to duplicate and distribute copies of this
+Agreement.
+
+12.2 So as to ensure coherence, the wording of this Agreement is
+protected and may only be modified by the authors of the License, who
+reserve the right to periodically publish updates or new versions of the
+Agreement, each with a separate number. These subsequent versions may
+address new issues encountered by Free Software.
+
+12.3 Any Software distributed under a given version of the Agreement may
+only be subsequently distributed under the same version of the Agreement
+or a subsequent version, subject to the provisions of Article 5.3.4.
+
+
+ Article 13 - GOVERNING LAW AND JURISDICTION
+
+13.1 The Agreement is governed by French law. The Parties agree to
+endeavor to seek an amicable solution to any disagreements or disputes
+that may arise during the performance of the Agreement.
+
+13.2 Failing an amicable solution within two (2) months as from their
+occurrence, and unless emergency proceedings are necessary, the
+disagreements or disputes shall be referred to the Paris Courts having
+jurisdiction, by the more diligent Party.
+
+
+Version 2.0 dated 2006-09-05.
diff --git a/PKG-INFO b/PKG-INFO
index 404d246..aa7ae97 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: guidata
-Version: 1.7.0b2
+Version: 1.7.0b3
Summary: guidata is a set of basic GUIs to edit and display objects of many kinds
Home-page: https://github.com/PierreRaybaut/guidata
Author: Pierre Raybaut
diff --git a/guidata-tests b/guidata-tests
index 491db57..edeca12 100644
--- a/guidata-tests
+++ b/guidata-tests
@@ -1,3 +1,3 @@
-#!/usr/bin/env python
-from guidata import tests
+#!/usr/bin/env python
+from guidata import tests
tests.run()
\ No newline at end of file
diff --git a/guidata.egg-info/PKG-INFO b/guidata.egg-info/PKG-INFO
index 404d246..aa7ae97 100644
--- a/guidata.egg-info/PKG-INFO
+++ b/guidata.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: guidata
-Version: 1.7.0b2
+Version: 1.7.0b3
Summary: guidata is a set of basic GUIs to edit and display objects of many kinds
Home-page: https://github.com/PierreRaybaut/guidata
Author: Pierre Raybaut
diff --git a/guidata/__init__.py b/guidata/__init__.py
index 9d40af1..6574122 100644
--- a/guidata/__init__.py
+++ b/guidata/__init__.py
@@ -15,7 +15,7 @@ External resources:
.. _GoogleGroup: http://groups.google.fr/group/guidata_guiqwt
"""
-__version__ = '1.7.0b2'
+__version__ = '1.7.0b3'
# Dear (Debian, RPM, ...) package makers, please feel free to customize the
# following path to module's data (images) and translations:
diff --git a/guidata/dataset/dataitems.py b/guidata/dataset/dataitems.py
index acd594d..6354d10 100644
--- a/guidata/dataset/dataitems.py
+++ b/guidata/dataset/dataitems.py
@@ -32,9 +32,10 @@ class NumericTypeItem(DataItem):
"""
type = None
def __init__(self, label, default=None, min=None, max=None,
- nonzero=None, unit='', help=''):
+ nonzero=None, unit='', help='', check=True):
DataItem.__init__(self, label, default=default, help=help)
- self.set_prop("data", min=min, max=max, nonzero=nonzero)
+ self.set_prop("data", min=min, max=max, nonzero=nonzero,
+ check_value=check)
self.set_prop("display", unit=unit)
def get_auto_help(self, instance):
@@ -67,7 +68,9 @@ class NumericTypeItem(DataItem):
return text
def check_value(self, value):
- """Override DataItem method"""
+ """Override DataItem method"""
+ if not self.get_prop('data', 'check_value', True):
+ return True
if not isinstance(value, self.type):
return False
if self.get_prop("data", "nonzero") and value == 0:
@@ -107,12 +110,13 @@ class FloatItem(NumericTypeItem):
* nonzero [bool]: if True, zero is not a valid value (optional)
* unit [string]: physical unit (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
type = float
- def __init__(self, label, default=None, min=None, max=None,
- nonzero=None, unit='', step=0.1, slider=False, help=''):
+ def __init__(self, label, default=None, min=None, max=None, nonzero=None,
+ unit='', step=0.1, slider=False, help='', check=True):
super(FloatItem, self).__init__(label, default=default, min=min,
- max=max, nonzero=nonzero, unit=unit, help=help)
+ max=max, nonzero=nonzero, unit=unit, help=help, check=check)
self.set_prop("display", slider=slider)
self.set_prop("data", step=step)
@@ -136,12 +140,13 @@ class IntItem(NumericTypeItem):
* slider [bool]: if True, shows a slider widget right after the line
edit widget (default is False)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
type = int
- def __init__(self, label, default=None, min=None, max=None,
- nonzero=None, unit='', even=None, slider=False, help=''):
+ def __init__(self, label, default=None, min=None, max=None, nonzero=None,
+ unit='', even=None, slider=False, help='', check=True):
super(IntItem, self).__init__(label, default=default, min=min, max=max,
- nonzero=nonzero, unit=unit, help=help)
+ nonzero=nonzero, unit=unit, help=help, check=check)
self.set_prop("data", even=even)
self.set_prop("display", slider=slider)
@@ -157,7 +162,9 @@ class IntItem(NumericTypeItem):
return auto_help
def check_value(self, value):
- """Override DataItem method"""
+ """Override DataItem method"""
+ if not self.get_prop('data', 'check_value', True):
+ return True
valid = super(IntItem, self).check_value(value)
if not valid:
return False
@@ -184,14 +191,14 @@ class StringItem(DataItem):
* wordwrap [bool]: toggle word wrapping (optional)
"""
type = TEXT_TYPES
- def __init__(self, label, default=None, notempty=None,
- wordwrap=False, help=''):
+ def __init__(self, label, default=None, notempty=None, wordwrap=False,
+ help=''):
DataItem.__init__(self, label, default=default, help=help)
self.set_prop("data", notempty=notempty)
self.set_prop("display", wordwrap=wordwrap)
def check_value(self, value):
- """Override DataItem method"""
+ """Override DataItem method"""
notempty = self.get_prop("data", "notempty")
if notempty and not value:
return False
@@ -230,10 +237,11 @@ class BoolItem(DataItem):
* label [string]: name
* default [string]: default value (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
type = bool
- def __init__(self, text='', label='', default=None, help=''):
- DataItem.__init__(self, label, default=default, help=help)
+ def __init__(self, text='', label='', default=None, help='', check=True):
+ DataItem.__init__(self, label, default=default, help=help, check=check)
self.set_prop("display", text=text)
def get_value_from_reader(self, reader):
@@ -262,11 +270,14 @@ class ColorItem(StringItem):
* label [string]: name
* default [string]: default value (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
Color values are encoded as hexadecimal strings or Qt color names
"""
def check_value(self, value):
- """Override DataItem method"""
+ """Override DataItem method"""
+ if not self.get_prop('data', 'check_value', True):
+ return True
if not isinstance(value, self.type):
return False
from guidata.qthelpers import text_to_qcolor
@@ -289,10 +300,11 @@ class FileSaveItem(StringItem):
* default [string]: default value (optional)
* basedir [string]: default base directory (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
def __init__(self, label, formats='*', default=None,
- basedir=None, all_files_first=False, help=''):
- DataItem.__init__(self, label, default=default, help=help)
+ basedir=None, all_files_first=False, help='', check=True):
+ DataItem.__init__(self, label, default=default, help=help, check=check)
if isinstance(formats, str):
formats = [formats]
self.set_prop("data", formats=formats)
@@ -306,7 +318,9 @@ class FileSaveItem(StringItem):
else _("supported file types:") + " *.%s" % ", *.".join(formats)
def check_value(self, value):
- """Override DataItem method"""
+ """Override DataItem method"""
+ if not self.get_prop('data', 'check_value', True):
+ return True
if not isinstance(value, self.type):
return False
return len(value)>0
@@ -324,9 +338,12 @@ class FileOpenItem(FileSaveItem):
* default [string]: default value (optional)
* basedir [string]: default base directory (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
def check_value(self, value):
"""Override DataItem method"""
+ if not self.get_prop('data', 'check_value', True):
+ return True
if not isinstance(value, self.type):
return False
return os.path.exists(value) and os.path.isfile(value)
@@ -340,18 +357,21 @@ class FilesOpenItem(FileSaveItem):
* default [string]: default value (optional)
* basedir [string]: default base directory (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
type = list
def __init__(self, label, formats='*', default=None,
- basedir=None, all_files_first=False, help=''):
+ basedir=None, all_files_first=False, help='', check=True):
if is_text_string(default):
default = [default]
- FileSaveItem.__init__(self, label, formats=formats,
- default=default, basedir=basedir,
- all_files_first=all_files_first, help=help)
+ FileSaveItem.__init__(self, label, formats=formats, default=default,
+ basedir=basedir, all_files_first=all_files_first,
+ help=help, check=check)
def check_value(self, value):
"""Override DataItem method"""
+ if not self.get_prop('data', 'check_value', True):
+ return True
allexist = True
for path in value:
allexist = allexist and os.path.exists(path) \
@@ -385,9 +405,12 @@ class DirectoryItem(StringItem):
* label [string]: name
* default [string]: default value (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
def check_value(self, value):
- """Override DataItem method"""
+ """Override DataItem method"""
+ if not self.get_prop('data', 'check_value', True):
+ return True
if not isinstance(value, self.type):
return False
return os.path.exists(value) and os.path.isdir(value)
@@ -406,8 +429,10 @@ class ChoiceItem(DataItem):
or a function of one argument (key) returning a QIcon instance
* default [-]: default label or default key (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
- def __init__(self, label, choices, default=FirstChoice, help=''):
+ def __init__(self, label, choices, default=FirstChoice, help='',
+ check=True):
if isinstance(choices, collections.Callable):
_choices_data = ItemProperty(choices)
else:
@@ -419,7 +444,7 @@ class ChoiceItem(DataItem):
default = _choices_data[0][0]
elif default is FirstChoice:
default = None
- DataItem.__init__(self, label, default=default, help=help)
+ DataItem.__init__(self, label, default=default, help=help, check=check)
self.set_prop("data", choices=_choices_data )
def _normalize_choice(self, idx, choice_tuple):
@@ -458,9 +483,10 @@ class MultipleChoiceItem(ChoiceItem):
* choices [list or tuple]: string list or (key, label) list
* default [-]: default label or default key (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
- def __init__(self, label, choices, default=(), help=''):
- ChoiceItem.__init__(self, label, choices, default, help)
+ def __init__(self, label, choices, default=(), help='', check=True):
+ ChoiceItem.__init__(self, label, choices, default, help, check=check)
self.set_prop("display", shape = (1, -1))
def horizontal(self, row_nb=1):
@@ -516,6 +542,7 @@ class ImageChoiceItem(ChoiceItem):
returning a QIcon instance
* default [-]: default label or default key (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
def _normalize_choice(self, idx, choice_tuple):
assert isinstance(choice_tuple, tuple)
@@ -540,10 +567,11 @@ class FloatArrayItem(DataItem):
* transpose [bool]: transpose matrix (display only)
* large [bool]: view all float of the array
* minmax [string]: "all" (default), "columns", "rows"
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
def __init__(self, label, default=None, help='', format='%.3f',
- transpose=False, minmax="all"):
- DataItem.__init__(self, label, default=default, help=help)
+ transpose=False, minmax="all", check=True):
+ DataItem.__init__(self, label, default=default, help=help, check=check)
self.set_prop("display", format=format, transpose=transpose,
minmax=minmax)
@@ -591,12 +619,14 @@ class ButtonItem(DataItem):
(string: icon filename as in guidata/guiqwt image search paths)
* default [unspecified]: default value passed to the callback (optional)
* help [string]: text shown in button's tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
The value of this item is unspecified but is passed to the callback along
with the whole dataset. The value is assigned the callback`s return value.
"""
- def __init__(self, label, callback, icon=None, default=None, help=''):
- DataItem.__init__(self, label, default=default, help=help)
+ def __init__(self, label, callback, icon=None, default=None, help='',
+ check=True):
+ DataItem.__init__(self, label, default=default, help=help, check=check)
self.set_prop("display", callback=callback)
self.set_prop("display", icon=icon)
@@ -614,8 +644,9 @@ class DictItem(ButtonItem):
* label [string]: name
* default [dict]: default value (optional)
* help [string]: text shown in tooltip (optional)
+ * check [bool]: if False, value is not checked (optional, default=True)
"""
- def __init__(self, label, default=None, help=''):
+ def __init__(self, label, default=None, help='', check=True):
def dictedit(instance, item, value, parent):
from spyderlib.widgets.dicteditor import DictEditor
editor = DictEditor(parent)
@@ -629,8 +660,8 @@ class DictItem(ButtonItem):
if value_was_none:
return
return value
- ButtonItem.__init__(self, label, dictedit,
- icon='dictedit.png', default=default, help=help)
+ ButtonItem.__init__(self, label, dictedit, icon='dictedit.png',
+ default=default, help=help, check=check)
class FontFamilyItem(StringItem):
diff --git a/guidata/dataset/datatypes.py b/guidata/dataset/datatypes.py
index caad131..8332be7 100644
--- a/guidata/dataset/datatypes.py
+++ b/guidata/dataset/datatypes.py
@@ -145,7 +145,7 @@ class DataItem(object):
"""
count = 0
- def __init__(self, label, default=None, help=''):
+ def __init__(self, label, default=None, help='', check=True):
self._order = DataItem.count
DataItem.count += 1
self._name = None
@@ -154,6 +154,7 @@ class DataItem(object):
self._props = {} # a dict realm->dict containing realm-specific properties
self.set_prop("display", col=0, colspan=None,
label=utf8_to_unicode(label))
+ self.set_prop('data', check_value=check)
def get_prop(self, realm, name, default=NoDefault):
"""Get one property of this item"""
diff --git a/guidata/images/apply.png b/guidata/images/apply.png
index 2f86f0a..f599260 100644
Binary files a/guidata/images/apply.png and b/guidata/images/apply.png differ
diff --git a/guidata/images/arredit.png b/guidata/images/arredit.png
index 17643e2..d219a96 100644
Binary files a/guidata/images/arredit.png and b/guidata/images/arredit.png differ
diff --git a/guidata/images/busy.png b/guidata/images/busy.png
index d95221b..906a9e1 100644
Binary files a/guidata/images/busy.png and b/guidata/images/busy.png differ
diff --git a/guidata/images/cell_edit.png b/guidata/images/cell_edit.png
index 2de3c2e..a4e8bfc 100644
Binary files a/guidata/images/cell_edit.png and b/guidata/images/cell_edit.png differ
diff --git a/guidata/images/copy.png b/guidata/images/copy.png
index f882aa2..4311a78 100644
Binary files a/guidata/images/copy.png and b/guidata/images/copy.png differ
diff --git a/guidata/images/delete.png b/guidata/images/delete.png
index 2dd36b6..6725f65 100644
Binary files a/guidata/images/delete.png and b/guidata/images/delete.png differ
diff --git a/guidata/images/dictedit.png b/guidata/images/dictedit.png
index bbe7d07..096c23e 100644
Binary files a/guidata/images/dictedit.png and b/guidata/images/dictedit.png differ
diff --git a/guidata/images/edit.png b/guidata/images/edit.png
index 0fef9a9..c324bf6 100644
Binary files a/guidata/images/edit.png and b/guidata/images/edit.png differ
diff --git a/guidata/images/editors/edit.png b/guidata/images/editors/edit.png
index 0fef9a9..c324bf6 100644
Binary files a/guidata/images/editors/edit.png and b/guidata/images/editors/edit.png differ
diff --git a/guidata/images/editors/edit_add.png b/guidata/images/editors/edit_add.png
index 5b051f6..b88ace9 100644
Binary files a/guidata/images/editors/edit_add.png and b/guidata/images/editors/edit_add.png differ
diff --git a/guidata/images/editors/editcopy.png b/guidata/images/editors/editcopy.png
index a332961..dcb5c14 100644
Binary files a/guidata/images/editors/editcopy.png and b/guidata/images/editors/editcopy.png differ
diff --git a/guidata/images/editors/editdelete.png b/guidata/images/editors/editdelete.png
index f182216..713bdd4 100644
Binary files a/guidata/images/editors/editdelete.png and b/guidata/images/editors/editdelete.png differ
diff --git a/guidata/images/editors/editpaste.png b/guidata/images/editors/editpaste.png
index f9156c1..d4d0a0f 100644
Binary files a/guidata/images/editors/editpaste.png and b/guidata/images/editors/editpaste.png differ
diff --git a/guidata/images/editors/fileimport.png b/guidata/images/editors/fileimport.png
index 2cbb971..856fe24 100644
Binary files a/guidata/images/editors/fileimport.png and b/guidata/images/editors/fileimport.png differ
diff --git a/guidata/images/editors/filesave.png b/guidata/images/editors/filesave.png
index 7e32fc7..7f52a46 100644
Binary files a/guidata/images/editors/filesave.png and b/guidata/images/editors/filesave.png differ
diff --git a/guidata/images/editors/imshow.png b/guidata/images/editors/imshow.png
index 60d7f35..85001fd 100644
Binary files a/guidata/images/editors/imshow.png and b/guidata/images/editors/imshow.png differ
diff --git a/guidata/images/editors/insert.png b/guidata/images/editors/insert.png
index a87a07a..3058da3 100644
Binary files a/guidata/images/editors/insert.png and b/guidata/images/editors/insert.png differ
diff --git a/guidata/images/editors/plot.png b/guidata/images/editors/plot.png
index c810141..bda9b3d 100644
Binary files a/guidata/images/editors/plot.png and b/guidata/images/editors/plot.png differ
diff --git a/guidata/images/editors/rename.png b/guidata/images/editors/rename.png
index 2de3c2e..a4e8bfc 100644
Binary files a/guidata/images/editors/rename.png and b/guidata/images/editors/rename.png differ
diff --git a/guidata/images/exit.png b/guidata/images/exit.png
index fb510fb..eb91c9e 100644
Binary files a/guidata/images/exit.png and b/guidata/images/exit.png differ
diff --git a/guidata/images/expander_down.png b/guidata/images/expander_down.png
index c7b2f03..94d1423 100644
Binary files a/guidata/images/expander_down.png and b/guidata/images/expander_down.png differ
diff --git a/guidata/images/expander_right.png b/guidata/images/expander_right.png
index 5930e74..888b791 100644
Binary files a/guidata/images/expander_right.png and b/guidata/images/expander_right.png differ
diff --git a/guidata/images/file.png b/guidata/images/file.png
index 7f8be16..f9449ad 100644
Binary files a/guidata/images/file.png and b/guidata/images/file.png differ
diff --git a/guidata/images/fileclose.png b/guidata/images/fileclose.png
index 95458e0..f7cabdb 100644
Binary files a/guidata/images/fileclose.png and b/guidata/images/fileclose.png differ
diff --git a/guidata/images/fileimport.png b/guidata/images/fileimport.png
index 9850a45..7379bd8 100644
Binary files a/guidata/images/fileimport.png and b/guidata/images/fileimport.png differ
diff --git a/guidata/images/filenew.png b/guidata/images/filenew.png
index 76e81cd..6d8a564 100644
Binary files a/guidata/images/filenew.png and b/guidata/images/filenew.png differ
diff --git a/guidata/images/fileopen.png b/guidata/images/fileopen.png
index 4f046d4..c701cca 100644
Binary files a/guidata/images/fileopen.png and b/guidata/images/fileopen.png differ
diff --git a/guidata/images/filesave.png b/guidata/images/filesave.png
index 7e32fc7..7f52a46 100644
Binary files a/guidata/images/filesave.png and b/guidata/images/filesave.png differ
diff --git a/guidata/images/filesaveas.png b/guidata/images/filesaveas.png
index dfeb87b..1a07336 100644
Binary files a/guidata/images/filesaveas.png and b/guidata/images/filesaveas.png differ
diff --git a/guidata/images/filetypes/doc.png b/guidata/images/filetypes/doc.png
index 311665c..b732196 100644
Binary files a/guidata/images/filetypes/doc.png and b/guidata/images/filetypes/doc.png differ
diff --git a/guidata/images/filetypes/gif.png b/guidata/images/filetypes/gif.png
index af5683c..da5caeb 100644
Binary files a/guidata/images/filetypes/gif.png and b/guidata/images/filetypes/gif.png differ
diff --git a/guidata/images/filetypes/html.png b/guidata/images/filetypes/html.png
index 0f56a71..119b628 100644
Binary files a/guidata/images/filetypes/html.png and b/guidata/images/filetypes/html.png differ
diff --git a/guidata/images/filetypes/jpg.png b/guidata/images/filetypes/jpg.png
index af5683c..da5caeb 100644
Binary files a/guidata/images/filetypes/jpg.png and b/guidata/images/filetypes/jpg.png differ
diff --git a/guidata/images/filetypes/pdf.png b/guidata/images/filetypes/pdf.png
index 7962226..f52be03 100644
Binary files a/guidata/images/filetypes/pdf.png and b/guidata/images/filetypes/pdf.png differ
diff --git a/guidata/images/filetypes/png.png b/guidata/images/filetypes/png.png
index af5683c..da5caeb 100644
Binary files a/guidata/images/filetypes/png.png and b/guidata/images/filetypes/png.png differ
diff --git a/guidata/images/filetypes/pps.png b/guidata/images/filetypes/pps.png
index 762dfbc..31efbe0 100644
Binary files a/guidata/images/filetypes/pps.png and b/guidata/images/filetypes/pps.png differ
diff --git a/guidata/images/filetypes/ps.png b/guidata/images/filetypes/ps.png
index 9203b0d..639fd64 100644
Binary files a/guidata/images/filetypes/ps.png and b/guidata/images/filetypes/ps.png differ
diff --git a/guidata/images/filetypes/tar.png b/guidata/images/filetypes/tar.png
index 5a52ef8..6352941 100644
Binary files a/guidata/images/filetypes/tar.png and b/guidata/images/filetypes/tar.png differ
diff --git a/guidata/images/filetypes/tgz.png b/guidata/images/filetypes/tgz.png
index 5a52ef8..6352941 100644
Binary files a/guidata/images/filetypes/tgz.png and b/guidata/images/filetypes/tgz.png differ
diff --git a/guidata/images/filetypes/tif.png b/guidata/images/filetypes/tif.png
index af5683c..da5caeb 100644
Binary files a/guidata/images/filetypes/tif.png and b/guidata/images/filetypes/tif.png differ
diff --git a/guidata/images/filetypes/txt.png b/guidata/images/filetypes/txt.png
index 2867558..d7a9e44 100644
Binary files a/guidata/images/filetypes/txt.png and b/guidata/images/filetypes/txt.png differ
diff --git a/guidata/images/filetypes/xls.png b/guidata/images/filetypes/xls.png
index 42dc708..9c44bf6 100644
Binary files a/guidata/images/filetypes/xls.png and b/guidata/images/filetypes/xls.png differ
diff --git a/guidata/images/filetypes/zip.png b/guidata/images/filetypes/zip.png
index 5a52ef8..6352941 100644
Binary files a/guidata/images/filetypes/zip.png and b/guidata/images/filetypes/zip.png differ
diff --git a/guidata/images/guidata.svg b/guidata/images/guidata.svg
index 0283701..f8080d8 100644
--- a/guidata/images/guidata.svg
+++ b/guidata/images/guidata.svg
@@ -1,538 +1,538 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- version="1.0"
- width="153.56583"
- height="153.56583"
- id="svg2"
- sodipodi:version="0.32"
- inkscape:version="0.48.2 r9819"
- sodipodi:docname="guidata.svg"
- inkscape:output_extension="org.inkscape.output.svg.inkscape"
- inkscape:export-filename="D:\128.png"
- inkscape:export-xdpi="28.091852"
- inkscape:export-ydpi="28.091852">
- <metadata
- id="metadata2193">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <sodipodi:namedview
- inkscape:window-height="744"
- inkscape:window-width="1280"
- inkscape:pageshadow="2"
- inkscape:pageopacity="0.0"
- borderopacity="1.0"
- bordercolor="#666666"
- pagecolor="#ffffff"
- id="base"
- inkscape:zoom="1.8528087"
- inkscape:cx="-14.031974"
- inkscape:cy="62.748306"
- inkscape:window-x="24"
- inkscape:window-y="91"
- inkscape:current-layer="svg2"
- showgrid="false"
- fit-margin-top="0"
- fit-margin-left="0"
- fit-margin-right="0"
- fit-margin-bottom="0"
- inkscape:window-maximized="0" />
- <defs
- id="defs4">
- <linearGradient
- id="linearGradient7932"
- osb:paint="solid">
- <stop
- style="stop-color:#a0a0a0;stop-opacity:1;"
- offset="0"
- id="stop7934" />
- </linearGradient>
- <linearGradient
- id="linearGradient6481">
- <stop
- id="stop6483"
- offset="0"
- style="stop-color:#5a9fd4;stop-opacity:1" />
- <stop
- id="stop6485"
- offset="1"
- style="stop-color:#306998;stop-opacity:1" />
- </linearGradient>
- <marker
- inkscape:stockid="Arrow2Mend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mend"
- style="overflow:visible">
- <path
- id="path3908"
- style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(-0.6,-0.6)"
- inkscape:connector-curvature="0" />
- </marker>
- <marker
- inkscape:stockid="Arrow1Send"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow1Send"
- style="overflow:visible">
- <path
- id="path3896"
- d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
- style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
- transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
- inkscape:connector-curvature="0" />
- </marker>
- <marker
- inkscape:stockid="Arrow1Mend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow1Mend"
- style="overflow:visible">
- <path
- id="path3890"
- d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
- style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
- transform="matrix(-0.4,0,0,-0.4,-4,0)"
- inkscape:connector-curvature="0" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Lend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Lend"
- style="overflow:visible">
- <path
- id="path3902"
- style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
- inkscape:connector-curvature="0" />
- </marker>
- <linearGradient
- id="linearGradient3812">
- <stop
- style="stop-color:#f0f0f0;stop-opacity:1;"
- offset="0"
- id="stop3814" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1;"
- offset="1"
- id="stop3816" />
- </linearGradient>
- <linearGradient
- id="linearGradient3802"
- osb:paint="solid">
- <stop
- style="stop-color:#808080;stop-opacity:1;"
- offset="0"
- id="stop3804" />
- </linearGradient>
- <linearGradient
- id="linearGradient3350">
- <stop
- style="stop-color:#00cb2b;stop-opacity:0.24793388;"
- offset="0"
- id="stop3352" />
- <stop
- style="stop-color:#00cb2b;stop-opacity:1;"
- offset="1"
- id="stop3354" />
- </linearGradient>
- <linearGradient
- id="linearGradient3342">
- <stop
- style="stop-color:#005a85;stop-opacity:1;"
- offset="0"
- id="stop3344" />
- <stop
- style="stop-color:#005a85;stop-opacity:0.75206614;"
- offset="1"
- id="stop3346" />
- </linearGradient>
- <linearGradient
- id="linearGradient3310">
- <stop
- id="stop3312"
- offset="0"
- style="stop-color:#ae0202;stop-opacity:1;" />
- <stop
- id="stop3314"
- offset="1"
- style="stop-color:#b47575;stop-opacity:1;" />
- </linearGradient>
- <inkscape:perspective
- sodipodi:type="inkscape:persp3d"
- inkscape:vp_x="0 : 71.887497 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_z="486.04999 : 71.887497 : 1"
- inkscape:persp3d-origin="243.02499 : 47.924998 : 1"
- id="perspective47" />
- <linearGradient
- id="linearGradient2795">
- <stop
- style="stop-color:#b8b8b8;stop-opacity:0.49803922"
- offset="0"
- id="stop2797" />
- <stop
- style="stop-color:#7f7f7f;stop-opacity:0"
- offset="1"
- id="stop2799" />
- </linearGradient>
- <linearGradient
- id="linearGradient2787">
- <stop
- style="stop-color:#7f7f7f;stop-opacity:0.5"
- offset="0"
- id="stop2789" />
- <stop
- style="stop-color:#7f7f7f;stop-opacity:0"
- offset="1"
- id="stop2791" />
- </linearGradient>
- <linearGradient
- id="linearGradient3676">
- <stop
- style="stop-color:#b2b2b2;stop-opacity:0.5"
- offset="0"
- id="stop3678" />
- <stop
- style="stop-color:#b3b3b3;stop-opacity:0"
- offset="1"
- id="stop3680" />
- </linearGradient>
- <linearGradient
- id="linearGradient3236">
- <stop
- style="stop-color:#f4f4f4;stop-opacity:1"
- offset="0"
- id="stop3244" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop3240" />
- </linearGradient>
- <linearGradient
- id="linearGradient4671">
- <stop
- style="stop-color:#ffd43b;stop-opacity:1"
- offset="0"
- id="stop4673" />
- <stop
- style="stop-color:#ffe873;stop-opacity:1"
- offset="1"
- id="stop4675" />
- </linearGradient>
- <linearGradient
- id="linearGradient4689">
- <stop
- style="stop-color:#5a9fd4;stop-opacity:1"
- offset="0"
- id="stop4691" />
- <stop
- style="stop-color:#306998;stop-opacity:1"
- offset="1"
- id="stop4693" />
- </linearGradient>
- <linearGradient
- x1="224.23996"
- y1="144.75717"
- x2="-65.308502"
- y2="144.75717"
- id="linearGradient2987"
- xlink:href="#linearGradient4671"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(100.2702,99.61116)" />
- <linearGradient
- x1="172.94208"
- y1="77.475983"
- x2="26.670298"
- y2="76.313133"
- id="linearGradient2990"
- xlink:href="#linearGradient4689"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(100.2702,99.61116)" />
- <linearGradient
- x1="172.94208"
- y1="77.475983"
- x2="26.670298"
- y2="76.313133"
- id="linearGradient2587"
- xlink:href="#linearGradient4689"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(100.2702,99.61116)" />
- <linearGradient
- x1="224.23996"
- y1="144.75717"
- x2="-65.308502"
- y2="144.75717"
- id="linearGradient2589"
- xlink:href="#linearGradient4671"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(100.2702,99.61116)" />
- <linearGradient
- x1="172.94208"
- y1="77.475983"
- x2="26.670298"
- y2="76.313133"
- id="linearGradient2248"
- xlink:href="#linearGradient4689"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(100.2702,99.61116)" />
- <linearGradient
- x1="224.23996"
- y1="144.75717"
- x2="-65.308502"
- y2="144.75717"
- id="linearGradient2250"
- xlink:href="#linearGradient4671"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(100.2702,99.61116)" />
- <linearGradient
- x1="224.23996"
- y1="144.75717"
- x2="-65.308502"
- y2="144.75717"
- id="linearGradient2255"
- xlink:href="#linearGradient4671"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)" />
- <linearGradient
- x1="172.94208"
- y1="76.176224"
- x2="26.670298"
- y2="76.313133"
- id="linearGradient2258"
- xlink:href="#linearGradient4689"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)" />
- <radialGradient
- cx="61.518883"
- cy="132.28575"
- r="29.036913"
- fx="61.518883"
- fy="132.28575"
- id="radialGradient2801"
- xlink:href="#linearGradient2795"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1,0,0,0.177966,0,108.7434)" />
- <linearGradient
- x1="150.96111"
- y1="192.35176"
- x2="112.03144"
- y2="137.27299"
- id="linearGradient1475"
- xlink:href="#linearGradient4671"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.562541,0,0,0.567972,-9.399749,-5.305317)" />
- <linearGradient
- x1="26.648937"
- y1="20.603781"
- x2="135.66525"
- y2="114.39767"
- id="linearGradient1478"
- xlink:href="#linearGradient4689"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.562541,0,0,0.567972,-9.399749,-5.305317)" />
- <radialGradient
- cx="61.518883"
- cy="132.28575"
- r="29.036913"
- fx="61.518883"
- fy="132.28575"
- id="radialGradient1480"
- xlink:href="#linearGradient2795"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(2.382716e-8,-0.296405,1.43676,4.683673e-7,-128.544,150.5202)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient2795"
- id="radialGradient2421"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.7490565e-8,-0.239947,1.054668,3.7915457e-7,-78.109429,148.85906)"
- cx="61.518883"
- cy="132.28575"
- fx="61.518883"
- fy="132.28575"
- r="29.036913" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4671-8"
- id="linearGradient3826-6"
- x1="36.970898"
- y1="54.646763"
- x2="87.704681"
- y2="54.646763"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- id="linearGradient4671-8">
- <stop
- style="stop-color:#ffd43b;stop-opacity:1"
- offset="0"
- id="stop4673-8" />
- <stop
- style="stop-color:#ffe873;stop-opacity:1"
- offset="1"
- id="stop4675-2" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3812"
- id="linearGradient3818"
- x1="78.012024"
- y1="80.302933"
- x2="124.67964"
- y2="28.603327"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4671-0"
- id="linearGradient4097"
- x1="-205.05431"
- y1="55.606441"
- x2="-64.806259"
- y2="55.606441"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4689-9"
- id="linearGradient4377"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.562541,0,0,0.567972,-9.399749,-5.305317)"
- x1="26.648937"
- y1="20.603781"
- x2="135.66525"
- y2="114.39767" />
- <linearGradient
- id="linearGradient4689-9">
- <stop
- style="stop-color:#5a9fd4;stop-opacity:1"
- offset="0"
- id="stop4691-4" />
- <stop
- style="stop-color:#306998;stop-opacity:1"
- offset="1"
- id="stop4693-6" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4671-0"
- id="linearGradient4374"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.562541,0,0,0.567972,-9.399749,-5.305317)"
- x1="150.96111"
- y1="192.35176"
- x2="112.03144"
- y2="137.27299" />
- <linearGradient
- id="linearGradient4671-0">
- <stop
- style="stop-color:#ffd43b;stop-opacity:1"
- offset="0"
- id="stop4673-3" />
- <stop
- style="stop-color:#ffe873;stop-opacity:1"
- offset="1"
- id="stop4675-6" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient2795-2"
- id="radialGradient4370"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.7490565e-8,-0.23994696,1.054668,3.7915457e-7,-78.109429,148.85906)"
- cx="61.518883"
- cy="132.28575"
- fx="61.518883"
- fy="132.28575"
- r="29.036913" />
- <linearGradient
- id="linearGradient2795-2">
- <stop
- style="stop-color:#b8b8b8;stop-opacity:0.49803922"
- offset="0"
- id="stop2797-4" />
- <stop
- style="stop-color:#7f7f7f;stop-opacity:0"
- offset="1"
- id="stop2799-5" />
- </linearGradient>
- <radialGradient
- r="29.036913"
- fy="132.28575"
- fx="61.518883"
- cy="132.28575"
- cx="61.518883"
- gradientTransform="matrix(1.7490565e-8,-0.23994696,1.054668,3.7915457e-7,-78.109429,148.85906)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient4416"
- xlink:href="#linearGradient2795-2"
- inkscape:collect="always" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient2795-2"
- id="radialGradient4458"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.2864026e-8,-0.17647709,0.77569117,2.7886202e-7,-26.468105,126.78403)"
- cx="61.518883"
- cy="132.28575"
- fx="61.518883"
- fy="132.28575"
- r="29.036913" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6481"
- id="linearGradient6479"
- x1="-158.6674"
- y1="46.147835"
- x2="-78.777054"
- y2="46.147835"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(2.0600988,0,0,2.0600988,293.35282,15.425527)" />
- </defs>
- <path
- sodipodi:type="arc"
- style="fill:url(#linearGradient4097);stroke:none;stroke-opacity:1;fill-opacity:1.0"
- id="path4089"
- sodipodi:cx="-134.93028"
- sodipodi:cy="55.606441"
- sodipodi:rx="69.624023"
- sodipodi:ry="51.543369"
- d="m -65.306259,55.606441 a 69.624023,51.543369 0 1 1 -139.248051,0 69.624023,51.543369 0 1 1 139.248051,0 z"
- transform="translate(211.03096,8.635538)" />
- <path
- inkscape:connector-curvature="0"
- d="m 76.316126,27.404597 c -9.167009,0.04257 -17.921288,0.824402 -25.624146,2.187424 -22.69166,4.00887 -26.811595,12.399787 -26.811595,27.874061 l 0,20.436814 53.623186,0 0,6.812269 -3.339702,33.912115 50.740901,-12.82264 c 4.93564,0.10584 11.42175,-6.328919 6.15952,-48.338558 0,-14.532187 -12.25955,-25.448698 -26.81161,-27.874061 C 95.041031,28.05862 85.483112,27.361995 76.316126,27.404597 z M 47.317113,43.841543 c 5.538896,0 10.062145,4.597138 10.062145,10.249652 0,5.632485 -4.523 [...]
- style="fill:url(#linearGradient6479);fill-opacity:1;fill-rule:nonzero"
- id="path1948"
- sodipodi:nodetypes="scscccccccssssss" />
- <path
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#db945f;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:9.58500000000000090;marker:none;visibility:visible;display:inline;overfl [...]
- d="m 77.306851,8.1694723 c -42.510551,0 -77.413721,20.0662467 -77.413721,53.2120357 0,8.286447 2.1477156,16.195516 6.0335163,23.397993 3.8858007,7.202478 9.5096867,13.698363 16.4620267,19.158439 6.952341,5.46008 15.233136,9.88436 24.432756,12.94361 9.199619,3.05926 42.526071,31.19983 53.153709,31.19983 5.313822,0 -21.121472,-14.05573 -18.222782,-20.92935 2.445252,-5.79838 20.364304,-8.74085 24.965674,-10.27048 9.20273,-3.05926 17.48768,-7.48353 24.44418,-12.94361 6.9565,-5.460076 12 [...]
- id="path3032"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="ssssssssssssssssssss" />
-</svg>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.0"
+ width="153.56583"
+ height="153.56583"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.48.2 r9819"
+ sodipodi:docname="guidata.svg"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape"
+ inkscape:export-filename="D:\128.png"
+ inkscape:export-xdpi="28.091852"
+ inkscape:export-ydpi="28.091852">
+ <metadata
+ id="metadata2193">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <sodipodi:namedview
+ inkscape:window-height="744"
+ inkscape:window-width="1280"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#ffffff"
+ id="base"
+ inkscape:zoom="1.8528087"
+ inkscape:cx="-14.031974"
+ inkscape:cy="62.748306"
+ inkscape:window-x="24"
+ inkscape:window-y="91"
+ inkscape:current-layer="svg2"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:window-maximized="0" />
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient7932"
+ osb:paint="solid">
+ <stop
+ style="stop-color:#a0a0a0;stop-opacity:1;"
+ offset="0"
+ id="stop7934" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6481">
+ <stop
+ id="stop6483"
+ offset="0"
+ style="stop-color:#5a9fd4;stop-opacity:1" />
+ <stop
+ id="stop6485"
+ offset="1"
+ style="stop-color:#306998;stop-opacity:1" />
+ </linearGradient>
+ <marker
+ inkscape:stockid="Arrow2Mend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow2Mend"
+ style="overflow:visible">
+ <path
+ id="path3908"
+ style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ transform="scale(-0.6,-0.6)"
+ inkscape:connector-curvature="0" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Send"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Send"
+ style="overflow:visible">
+ <path
+ id="path3896"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+ transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
+ inkscape:connector-curvature="0" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Mend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Mend"
+ style="overflow:visible">
+ <path
+ id="path3890"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+ transform="matrix(-0.4,0,0,-0.4,-4,0)"
+ inkscape:connector-curvature="0" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow2Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow2Lend"
+ style="overflow:visible">
+ <path
+ id="path3902"
+ style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
+ inkscape:connector-curvature="0" />
+ </marker>
+ <linearGradient
+ id="linearGradient3812">
+ <stop
+ style="stop-color:#f0f0f0;stop-opacity:1;"
+ offset="0"
+ id="stop3814" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop3816" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3802"
+ osb:paint="solid">
+ <stop
+ style="stop-color:#808080;stop-opacity:1;"
+ offset="0"
+ id="stop3804" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3350">
+ <stop
+ style="stop-color:#00cb2b;stop-opacity:0.24793388;"
+ offset="0"
+ id="stop3352" />
+ <stop
+ style="stop-color:#00cb2b;stop-opacity:1;"
+ offset="1"
+ id="stop3354" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3342">
+ <stop
+ style="stop-color:#005a85;stop-opacity:1;"
+ offset="0"
+ id="stop3344" />
+ <stop
+ style="stop-color:#005a85;stop-opacity:0.75206614;"
+ offset="1"
+ id="stop3346" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3310">
+ <stop
+ id="stop3312"
+ offset="0"
+ style="stop-color:#ae0202;stop-opacity:1;" />
+ <stop
+ id="stop3314"
+ offset="1"
+ style="stop-color:#b47575;stop-opacity:1;" />
+ </linearGradient>
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 71.887497 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="486.04999 : 71.887497 : 1"
+ inkscape:persp3d-origin="243.02499 : 47.924998 : 1"
+ id="perspective47" />
+ <linearGradient
+ id="linearGradient2795">
+ <stop
+ style="stop-color:#b8b8b8;stop-opacity:0.49803922"
+ offset="0"
+ id="stop2797" />
+ <stop
+ style="stop-color:#7f7f7f;stop-opacity:0"
+ offset="1"
+ id="stop2799" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2787">
+ <stop
+ style="stop-color:#7f7f7f;stop-opacity:0.5"
+ offset="0"
+ id="stop2789" />
+ <stop
+ style="stop-color:#7f7f7f;stop-opacity:0"
+ offset="1"
+ id="stop2791" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3676">
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:0.5"
+ offset="0"
+ id="stop3678" />
+ <stop
+ style="stop-color:#b3b3b3;stop-opacity:0"
+ offset="1"
+ id="stop3680" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3236">
+ <stop
+ style="stop-color:#f4f4f4;stop-opacity:1"
+ offset="0"
+ id="stop3244" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop3240" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4671">
+ <stop
+ style="stop-color:#ffd43b;stop-opacity:1"
+ offset="0"
+ id="stop4673" />
+ <stop
+ style="stop-color:#ffe873;stop-opacity:1"
+ offset="1"
+ id="stop4675" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4689">
+ <stop
+ style="stop-color:#5a9fd4;stop-opacity:1"
+ offset="0"
+ id="stop4691" />
+ <stop
+ style="stop-color:#306998;stop-opacity:1"
+ offset="1"
+ id="stop4693" />
+ </linearGradient>
+ <linearGradient
+ x1="224.23996"
+ y1="144.75717"
+ x2="-65.308502"
+ y2="144.75717"
+ id="linearGradient2987"
+ xlink:href="#linearGradient4671"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(100.2702,99.61116)" />
+ <linearGradient
+ x1="172.94208"
+ y1="77.475983"
+ x2="26.670298"
+ y2="76.313133"
+ id="linearGradient2990"
+ xlink:href="#linearGradient4689"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(100.2702,99.61116)" />
+ <linearGradient
+ x1="172.94208"
+ y1="77.475983"
+ x2="26.670298"
+ y2="76.313133"
+ id="linearGradient2587"
+ xlink:href="#linearGradient4689"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(100.2702,99.61116)" />
+ <linearGradient
+ x1="224.23996"
+ y1="144.75717"
+ x2="-65.308502"
+ y2="144.75717"
+ id="linearGradient2589"
+ xlink:href="#linearGradient4671"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(100.2702,99.61116)" />
+ <linearGradient
+ x1="172.94208"
+ y1="77.475983"
+ x2="26.670298"
+ y2="76.313133"
+ id="linearGradient2248"
+ xlink:href="#linearGradient4689"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(100.2702,99.61116)" />
+ <linearGradient
+ x1="224.23996"
+ y1="144.75717"
+ x2="-65.308502"
+ y2="144.75717"
+ id="linearGradient2250"
+ xlink:href="#linearGradient4671"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(100.2702,99.61116)" />
+ <linearGradient
+ x1="224.23996"
+ y1="144.75717"
+ x2="-65.308502"
+ y2="144.75717"
+ id="linearGradient2255"
+ xlink:href="#linearGradient4671"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)" />
+ <linearGradient
+ x1="172.94208"
+ y1="76.176224"
+ x2="26.670298"
+ y2="76.313133"
+ id="linearGradient2258"
+ xlink:href="#linearGradient4689"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)" />
+ <radialGradient
+ cx="61.518883"
+ cy="132.28575"
+ r="29.036913"
+ fx="61.518883"
+ fy="132.28575"
+ id="radialGradient2801"
+ xlink:href="#linearGradient2795"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.177966,0,108.7434)" />
+ <linearGradient
+ x1="150.96111"
+ y1="192.35176"
+ x2="112.03144"
+ y2="137.27299"
+ id="linearGradient1475"
+ xlink:href="#linearGradient4671"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.562541,0,0,0.567972,-9.399749,-5.305317)" />
+ <linearGradient
+ x1="26.648937"
+ y1="20.603781"
+ x2="135.66525"
+ y2="114.39767"
+ id="linearGradient1478"
+ xlink:href="#linearGradient4689"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.562541,0,0,0.567972,-9.399749,-5.305317)" />
+ <radialGradient
+ cx="61.518883"
+ cy="132.28575"
+ r="29.036913"
+ fx="61.518883"
+ fy="132.28575"
+ id="radialGradient1480"
+ xlink:href="#linearGradient2795"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.382716e-8,-0.296405,1.43676,4.683673e-7,-128.544,150.5202)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2795"
+ id="radialGradient2421"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7490565e-8,-0.239947,1.054668,3.7915457e-7,-78.109429,148.85906)"
+ cx="61.518883"
+ cy="132.28575"
+ fx="61.518883"
+ fy="132.28575"
+ r="29.036913" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4671-8"
+ id="linearGradient3826-6"
+ x1="36.970898"
+ y1="54.646763"
+ x2="87.704681"
+ y2="54.646763"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4671-8">
+ <stop
+ style="stop-color:#ffd43b;stop-opacity:1"
+ offset="0"
+ id="stop4673-8" />
+ <stop
+ style="stop-color:#ffe873;stop-opacity:1"
+ offset="1"
+ id="stop4675-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3812"
+ id="linearGradient3818"
+ x1="78.012024"
+ y1="80.302933"
+ x2="124.67964"
+ y2="28.603327"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4671-0"
+ id="linearGradient4097"
+ x1="-205.05431"
+ y1="55.606441"
+ x2="-64.806259"
+ y2="55.606441"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4689-9"
+ id="linearGradient4377"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.562541,0,0,0.567972,-9.399749,-5.305317)"
+ x1="26.648937"
+ y1="20.603781"
+ x2="135.66525"
+ y2="114.39767" />
+ <linearGradient
+ id="linearGradient4689-9">
+ <stop
+ style="stop-color:#5a9fd4;stop-opacity:1"
+ offset="0"
+ id="stop4691-4" />
+ <stop
+ style="stop-color:#306998;stop-opacity:1"
+ offset="1"
+ id="stop4693-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4671-0"
+ id="linearGradient4374"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.562541,0,0,0.567972,-9.399749,-5.305317)"
+ x1="150.96111"
+ y1="192.35176"
+ x2="112.03144"
+ y2="137.27299" />
+ <linearGradient
+ id="linearGradient4671-0">
+ <stop
+ style="stop-color:#ffd43b;stop-opacity:1"
+ offset="0"
+ id="stop4673-3" />
+ <stop
+ style="stop-color:#ffe873;stop-opacity:1"
+ offset="1"
+ id="stop4675-6" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2795-2"
+ id="radialGradient4370"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7490565e-8,-0.23994696,1.054668,3.7915457e-7,-78.109429,148.85906)"
+ cx="61.518883"
+ cy="132.28575"
+ fx="61.518883"
+ fy="132.28575"
+ r="29.036913" />
+ <linearGradient
+ id="linearGradient2795-2">
+ <stop
+ style="stop-color:#b8b8b8;stop-opacity:0.49803922"
+ offset="0"
+ id="stop2797-4" />
+ <stop
+ style="stop-color:#7f7f7f;stop-opacity:0"
+ offset="1"
+ id="stop2799-5" />
+ </linearGradient>
+ <radialGradient
+ r="29.036913"
+ fy="132.28575"
+ fx="61.518883"
+ cy="132.28575"
+ cx="61.518883"
+ gradientTransform="matrix(1.7490565e-8,-0.23994696,1.054668,3.7915457e-7,-78.109429,148.85906)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4416"
+ xlink:href="#linearGradient2795-2"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2795-2"
+ id="radialGradient4458"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2864026e-8,-0.17647709,0.77569117,2.7886202e-7,-26.468105,126.78403)"
+ cx="61.518883"
+ cy="132.28575"
+ fx="61.518883"
+ fy="132.28575"
+ r="29.036913" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6481"
+ id="linearGradient6479"
+ x1="-158.6674"
+ y1="46.147835"
+ x2="-78.777054"
+ y2="46.147835"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.0600988,0,0,2.0600988,293.35282,15.425527)" />
+ </defs>
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4097);stroke:none;stroke-opacity:1;fill-opacity:1.0"
+ id="path4089"
+ sodipodi:cx="-134.93028"
+ sodipodi:cy="55.606441"
+ sodipodi:rx="69.624023"
+ sodipodi:ry="51.543369"
+ d="m -65.306259,55.606441 a 69.624023,51.543369 0 1 1 -139.248051,0 69.624023,51.543369 0 1 1 139.248051,0 z"
+ transform="translate(211.03096,8.635538)" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 76.316126,27.404597 c -9.167009,0.04257 -17.921288,0.824402 -25.624146,2.187424 -22.69166,4.00887 -26.811595,12.399787 -26.811595,27.874061 l 0,20.436814 53.623186,0 0,6.812269 -3.339702,33.912115 50.740901,-12.82264 c 4.93564,0.10584 11.42175,-6.328919 6.15952,-48.338558 0,-14.532187 -12.25955,-25.448698 -26.81161,-27.874061 C 95.041031,28.05862 85.483112,27.361995 76.316126,27.404597 z M 47.317113,43.841543 c 5.538896,0 10.062145,4.597138 10.062145,10.249652 0,5.632485 -4.523 [...]
+ style="fill:url(#linearGradient6479);fill-opacity:1;fill-rule:nonzero"
+ id="path1948"
+ sodipodi:nodetypes="scscccccccssssss" />
+ <path
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#db945f;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:9.58500000000000090;marker:none;visibility:visible;display:inline;overfl [...]
+ d="m 77.306851,8.1694723 c -42.510551,0 -77.413721,20.0662467 -77.413721,53.2120357 0,8.286447 2.1477156,16.195516 6.0335163,23.397993 3.8858007,7.202478 9.5096867,13.698363 16.4620267,19.158439 6.952341,5.46008 15.233136,9.88436 24.432756,12.94361 9.199619,3.05926 42.526071,31.19983 53.153709,31.19983 5.313822,0 -21.121472,-14.05573 -18.222782,-20.92935 2.445252,-5.79838 20.364304,-8.74085 24.965674,-10.27048 9.20273,-3.05926 17.48768,-7.48353 24.44418,-12.94361 6.9565,-5.460076 12 [...]
+ id="path3032"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ssssssssssssssssssss" />
+</svg>
diff --git a/guidata/images/max.png b/guidata/images/max.png
index f55fad8..60bf1e3 100644
Binary files a/guidata/images/max.png and b/guidata/images/max.png differ
diff --git a/guidata/images/min.png b/guidata/images/min.png
index 202c449..11ba5f3 100644
Binary files a/guidata/images/min.png and b/guidata/images/min.png differ
diff --git a/guidata/images/none.png b/guidata/images/none.png
index c8be9a9..93c302e 100644
Binary files a/guidata/images/none.png and b/guidata/images/none.png differ
diff --git a/guidata/images/not_found.png b/guidata/images/not_found.png
index 691ddd9..4cece58 100644
Binary files a/guidata/images/not_found.png and b/guidata/images/not_found.png differ
diff --git a/guidata/images/python.png b/guidata/images/python.png
index 4cb0294..c792875 100644
Binary files a/guidata/images/python.png and b/guidata/images/python.png differ
diff --git a/guidata/images/quickview.png b/guidata/images/quickview.png
index cb4448b..75321f3 100644
Binary files a/guidata/images/quickview.png and b/guidata/images/quickview.png differ
diff --git a/guidata/images/save_all.png b/guidata/images/save_all.png
index eaf7d34..14e8a30 100644
Binary files a/guidata/images/save_all.png and b/guidata/images/save_all.png differ
diff --git a/guidata/images/selection.png b/guidata/images/selection.png
index ae46076..b4909e7 100644
Binary files a/guidata/images/selection.png and b/guidata/images/selection.png differ
diff --git a/guidata/images/settings.png b/guidata/images/settings.png
index 85ecfa1..c30eaf1 100644
Binary files a/guidata/images/settings.png and b/guidata/images/settings.png differ
diff --git a/guidata/images/shape.png b/guidata/images/shape.png
index 13d5376..b7ec27a 100644
Binary files a/guidata/images/shape.png and b/guidata/images/shape.png differ
diff --git a/guidata/images/xmax.png b/guidata/images/xmax.png
index 53a4f75..2e4a846 100644
Binary files a/guidata/images/xmax.png and b/guidata/images/xmax.png differ
diff --git a/guidata/images/xmin.png b/guidata/images/xmin.png
index 65a33a1..87deb93 100644
Binary files a/guidata/images/xmin.png and b/guidata/images/xmin.png differ
diff --git a/guidata/qt/QtCore.py b/guidata/qt/QtCore.py
index 652d471..6437d96 100644
--- a/guidata/qt/QtCore.py
+++ b/guidata/qt/QtCore.py
@@ -1,29 +1,29 @@
-# -*- coding: utf-8 -*-
-#
-# Copyright © 2011 Pierre Raybaut
-# Licensed under the terms of the MIT License
-# (copied from Spyder source code [spyderlib.qt])
-
-import os
-
-if os.environ['QT_API'] == 'pyqt5':
- from PyQt5.QtCore import * # analysis:ignore
- from PyQt5.QtCore import QCoreApplication
- from PyQt5.QtCore import pyqtSignal as Signal
- from PyQt5.QtCore import pyqtSlot as Slot
- from PyQt5.QtCore import pyqtProperty as Property
- from PyQt5.QtCore import QT_VERSION_STR as __version__
-elif os.environ['QT_API'] == 'pyqt':
- from PyQt4.QtCore import * # analysis:ignore
- from PyQt4.Qt import QCoreApplication # analysis:ignore
- from PyQt4.Qt import Qt # analysis:ignore
- from PyQt4.QtCore import pyqtSignal as Signal # analysis:ignore
- from PyQt4.QtCore import pyqtSlot as Slot # analysis:ignore
- from PyQt4.QtCore import pyqtProperty as Property # analysis:ignore
- from PyQt4.QtCore import QT_VERSION_STR as __version__ # analysis:ignore
- # Forces new modules written by PyQt4 developers to be PyQt5-compatible
- del SIGNAL, SLOT
-else:
- import PySide.QtCore
- __version__ = PySide.QtCore.__version__ # analysis:ignore
- from PySide.QtCore import * # analysis:ignore
+# -*- coding: utf-8 -*-
+#
+# Copyright © 2011 Pierre Raybaut
+# Licensed under the terms of the MIT License
+# (copied from Spyder source code [spyderlib.qt])
+
+import os
+
+if os.environ['QT_API'] == 'pyqt5':
+ from PyQt5.QtCore import * # analysis:ignore
+ from PyQt5.QtCore import QCoreApplication
+ from PyQt5.QtCore import pyqtSignal as Signal
+ from PyQt5.QtCore import pyqtSlot as Slot
+ from PyQt5.QtCore import pyqtProperty as Property
+ from PyQt5.QtCore import QT_VERSION_STR as __version__
+elif os.environ['QT_API'] == 'pyqt':
+ from PyQt4.QtCore import * # analysis:ignore
+ from PyQt4.Qt import QCoreApplication # analysis:ignore
+ from PyQt4.Qt import Qt # analysis:ignore
+ from PyQt4.QtCore import pyqtSignal as Signal # analysis:ignore
+ from PyQt4.QtCore import pyqtSlot as Slot # analysis:ignore
+ from PyQt4.QtCore import pyqtProperty as Property # analysis:ignore
+ from PyQt4.QtCore import QT_VERSION_STR as __version__ # analysis:ignore
+ # Forces new modules written by PyQt4 developers to be PyQt5-compatible
+ del SIGNAL, SLOT
+else:
+ import PySide.QtCore
+ __version__ = PySide.QtCore.__version__ # analysis:ignore
+ from PySide.QtCore import * # analysis:ignore
diff --git a/guidata/qt/QtDesigner.py b/guidata/qt/QtDesigner.py
index 1c53293..7a764c8 100644
--- a/guidata/qt/QtDesigner.py
+++ b/guidata/qt/QtDesigner.py
@@ -1,14 +1,14 @@
-# -*- coding: utf-8 -*-
-#
-# Copyright © 2012 Pierre Raybaut
-# Licensed under the terms of the MIT License
-# (see spyderlib/__init__.py for details)
-
-import os
-
-if os.environ['QT_API'] == 'pyqt5':
- from PyQt5.QtDesigner import * # analysis:ignore
-elif os.environ['QT_API'] == 'pyqt':
- from PyQt4.QtDesigner import * # analysis:ignore
-else:
- from PySide.QtDesigner import * # analysis:ignore
+# -*- coding: utf-8 -*-
+#
+# Copyright © 2012 Pierre Raybaut
+# Licensed under the terms of the MIT License
+# (see spyderlib/__init__.py for details)
+
+import os
+
+if os.environ['QT_API'] == 'pyqt5':
+ from PyQt5.QtDesigner import * # analysis:ignore
+elif os.environ['QT_API'] == 'pyqt':
+ from PyQt4.QtDesigner import * # analysis:ignore
+else:
+ from PySide.QtDesigner import * # analysis:ignore
diff --git a/guidata/qt/QtGui.py b/guidata/qt/QtGui.py
index 2ac4bb5..7e6c18a 100644
--- a/guidata/qt/QtGui.py
+++ b/guidata/qt/QtGui.py
@@ -1,20 +1,20 @@
-# -*- coding: utf-8 -*-
-#
-# Copyright © 2011 Pierre Raybaut
-# Licensed under the terms of the MIT License
-# (copied from Spyder source code [spyderlib.qt])
-
-import os
-
-if os.environ['QT_API'] == 'pyqt5':
- from PyQt5.QtCore import QSortFilterProxyModel # analysis:ignore
- from PyQt5.QtPrintSupport import (QPrinter, QPrintDialog, # analysis:ignore
- QAbstractPrintDialog)
- from PyQt5.QtPrintSupport import QPrintPreviewDialog # analysis:ignore
- from PyQt5.QtGui import * # analysis:ignore
- from PyQt5.QtWidgets import * # analysis:ignore
-elif os.environ['QT_API'] == 'pyqt':
- from PyQt4.Qt import QKeySequence, QTextCursor # analysis:ignore
- from PyQt4.QtGui import * # analysis:ignore
-else:
- from PySide.QtGui import * # analysis:ignore
+# -*- coding: utf-8 -*-
+#
+# Copyright © 2011 Pierre Raybaut
+# Licensed under the terms of the MIT License
+# (copied from Spyder source code [spyderlib.qt])
+
+import os
+
+if os.environ['QT_API'] == 'pyqt5':
+ from PyQt5.QtCore import QSortFilterProxyModel # analysis:ignore
+ from PyQt5.QtPrintSupport import (QPrinter, QPrintDialog, # analysis:ignore
+ QAbstractPrintDialog)
+ from PyQt5.QtPrintSupport import QPrintPreviewDialog # analysis:ignore
+ from PyQt5.QtGui import * # analysis:ignore
+ from PyQt5.QtWidgets import * # analysis:ignore
+elif os.environ['QT_API'] == 'pyqt':
+ from PyQt4.Qt import QKeySequence, QTextCursor # analysis:ignore
+ from PyQt4.QtGui import * # analysis:ignore
+else:
+ from PySide.QtGui import * # analysis:ignore
diff --git a/guidata/qt/QtSvg.py b/guidata/qt/QtSvg.py
index f4443b6..c86efa2 100644
--- a/guidata/qt/QtSvg.py
+++ b/guidata/qt/QtSvg.py
@@ -1,14 +1,14 @@
-# -*- coding: utf-8 -*-
-#
-# Copyright © 2012 Pierre Raybaut
-# Licensed under the terms of the MIT License
-# (see spyderlib/__init__.py for details)
-
-import os
-
-if os.environ['QT_API'] == 'pyqt5':
- from PyQt5.QtSvg import * # analysis:ignore
-elif os.environ['QT_API'] == 'pyqt':
- from PyQt4.QtSvg import * # analysis:ignore
-else:
- from PySide.QtSvg import * # analysis:ignore
+# -*- coding: utf-8 -*-
+#
+# Copyright © 2012 Pierre Raybaut
+# Licensed under the terms of the MIT License
+# (see spyderlib/__init__.py for details)
+
+import os
+
+if os.environ['QT_API'] == 'pyqt5':
+ from PyQt5.QtSvg import * # analysis:ignore
+elif os.environ['QT_API'] == 'pyqt':
+ from PyQt4.QtSvg import * # analysis:ignore
+else:
+ from PySide.QtSvg import * # analysis:ignore
diff --git a/guidata/qt/QtWebKit.py b/guidata/qt/QtWebKit.py
index 60c6dca..06d90cf 100644
--- a/guidata/qt/QtWebKit.py
+++ b/guidata/qt/QtWebKit.py
@@ -1,16 +1,16 @@
-# -*- coding: utf-8 -*-
-#
-# Copyright © 2011 Pierre Raybaut
-# Licensed under the terms of the MIT License
-# (see spyderlib/__init__.py for details)
-
-import os
-
-if os.environ['QT_API'] == 'pyqt5':
- from PyQt5.QtWebKitWidgets import QWebPage, QWebView # analysis:ignore
- from PyQt5.QtWebKit import QWebSettings # analysis:ignore
-elif os.environ['QT_API'] == 'pyqt':
- from PyQt4.QtWebKit import (QWebPage, QWebView, # analysis:ignore
- QWebSettings)
-else:
- from PySide.QtWebKit import * # analysis:ignore
+# -*- coding: utf-8 -*-
+#
+# Copyright © 2011 Pierre Raybaut
+# Licensed under the terms of the MIT License
+# (see spyderlib/__init__.py for details)
+
+import os
+
+if os.environ['QT_API'] == 'pyqt5':
+ from PyQt5.QtWebKitWidgets import QWebPage, QWebView # analysis:ignore
+ from PyQt5.QtWebKit import QWebSettings # analysis:ignore
+elif os.environ['QT_API'] == 'pyqt':
+ from PyQt4.QtWebKit import (QWebPage, QWebView, # analysis:ignore
+ QWebSettings)
+else:
+ from PySide.QtWebKit import * # analysis:ignore
diff --git a/guidata/qt/__init__.py b/guidata/qt/__init__.py
index d970de8..a5c91dc 100644
--- a/guidata/qt/__init__.py
+++ b/guidata/qt/__init__.py
@@ -1,65 +1,70 @@
-# -*- coding: utf-8 -*-
-#
-# Copyright © 2011-2012 Pierre Raybaut
-# © 2012-2014 anatoly techtonik
-# Licensed under the terms of the MIT License
-# (see spyderlib/__init__.py for details)
-
-"""Transitional package (PyQt4 --> PySide)"""
-
-import os
-
-os.environ.setdefault('QT_API', 'pyqt')
-assert os.environ['QT_API'] in ('pyqt5', 'pyqt', 'pyside')
-
-API = os.environ['QT_API']
-API_NAME = {'pyqt5': 'PyQt5', 'pyqt': 'PyQt4', 'pyside': 'PySide'}[API]
-
-PYQT5 = False
-
-if API == 'pyqt5':
- try:
- from PyQt5.QtCore import PYQT_VERSION_STR as __version__
- is_old_pyqt = False
- is_pyqt46 = False
- PYQT5 = True
- except ImportError:
- pass
- from PyQt5 import uic # analysis:ignore
-elif API == 'pyqt':
- # Spyder 2.3 is compatible with both #1 and #2 PyQt API,
- # but to avoid issues with IPython and other Qt plugins
- # we choose to support only API #2 for 2.4+
- import sip
- try:
- sip.setapi('QString', 2)
- sip.setapi('QVariant', 2)
- except AttributeError:
- # PyQt < v4.6. The actual check is done by requirements.check_qt()
- # call from spyder.py
- pass
-
- try:
- from PyQt4.QtCore import PYQT_VERSION_STR as __version__ # analysis:ignore
- except ImportError:
- # Switching to PySide
- API = os.environ['QT_API'] = 'pyside'
- API_NAME = 'PySide'
- else:
- is_old_pyqt = __version__.startswith(('4.4', '4.5', '4.6', '4.7'))
- is_pyqt46 = __version__.startswith('4.6')
- import sip
- try:
- API_NAME += (" (API v%d)" % sip.getapi('QString'))
- except AttributeError:
- pass
- from PyQt4 import uic # analysis:ignore
-
-
-if API == 'pyside':
- try:
- from PySide import __version__ # analysis:ignore
- except ImportError:
- raise ImportError("Spyder requires PySide or PyQt to be installed")
- else:
- is_old_pyqt = is_pyqt46 = False
+# -*- coding: utf-8 -*-
+#
+# Copyright © 2011-2012 Pierre Raybaut
+# © 2012-2014 anatoly techtonik
+# Licensed under the terms of the MIT License
+# (see spyderlib/__init__.py for details)
+
+"""Transitional package (PyQt4 --> PySide)"""
+
+import os
+
+os.environ.setdefault('QT_API', 'pyqt')
+assert os.environ['QT_API'] in ('pyqt5', 'pyqt', 'pyside')
+
+API = os.environ['QT_API']
+API_NAME = {'pyqt5': 'PyQt5', 'pyqt': 'PyQt4', 'pyside': 'PySide'}[API]
+
+PYQT5 = False
+
+if API == 'pyqt5':
+ try:
+ from PyQt5.QtCore import PYQT_VERSION_STR as __version__
+ is_old_pyqt = False
+ is_pyqt46 = False
+ PYQT5 = True
+ except ImportError:
+ pass
+ from PyQt5 import uic # analysis:ignore
+elif API == 'pyqt':
+ # Spyder 2.3 is compatible with both #1 and #2 PyQt API,
+ # but to avoid issues with IPython and other Qt plugins
+ # we choose to support only API #2 for 2.4+
+ import sip
+ try:
+ sip.setapi('QString', 2)
+ sip.setapi('QVariant', 2)
+ sip.setapi('QDate', 2)
+ sip.setapi('QDateTime', 2)
+ sip.setapi('QTextStream', 2)
+ sip.setapi('QTime', 2)
+ sip.setapi('QUrl', 2)
+ except AttributeError:
+ # PyQt < v4.6. The actual check is done by requirements.check_qt()
+ # call from spyder.py
+ pass
+
+ try:
+ from PyQt4.QtCore import PYQT_VERSION_STR as __version__ # analysis:ignore
+ except ImportError:
+ # Switching to PySide
+ API = os.environ['QT_API'] = 'pyside'
+ API_NAME = 'PySide'
+ else:
+ is_old_pyqt = __version__.startswith(('4.4', '4.5', '4.6', '4.7'))
+ is_pyqt46 = __version__.startswith('4.6')
+ import sip
+ try:
+ API_NAME += (" (API v%d)" % sip.getapi('QString'))
+ except AttributeError:
+ pass
+ from PyQt4 import uic # analysis:ignore
+
+
+if API == 'pyside':
+ try:
+ from PySide import __version__ # analysis:ignore
+ except ImportError:
+ raise ImportError("Spyder requires PySide or PyQt to be installed")
+ else:
+ is_old_pyqt = is_pyqt46 = False
diff --git a/guidata/tests/all_features.py b/guidata/tests/all_features.py
index f8da196..83da6de 100644
--- a/guidata/tests/all_features.py
+++ b/guidata/tests/all_features.py
@@ -68,6 +68,7 @@ class TestParameters(DataSet):
help="Threshold current")
fl2 = FloatItem("Float (col=1)", default=1., min=1, max=1,
help="Help on float item").set_pos(col=1)
+ fl3 = FloatItem("Not checked float").set_prop('data', check_value=False)
bool1 = BoolItem("Boolean option without label")
bool2 = BoolItem("Boolean option with label", "Label").set_pos(col=1,
colspan=2)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/guidata.git
More information about the debian-science-commits
mailing list