]> SALOME platform Git repositories - modules/paravis.git/commitdiff
Salome HOME
Imported sources start
authorsan <san@opencascade.com>
Tue, 11 Nov 2008 14:33:04 +0000 (14:33 +0000)
committersan <san@opencascade.com>
Tue, 11 Nov 2008 14:33:04 +0000 (14:33 +0000)
30 files changed:
AUTHORS [new file with mode: 0644]
COPYING [new file with mode: 0644]
ChangeLog [new file with mode: 0644]
INSTALL [new file with mode: 0644]
Makefile.am [new file with mode: 0644]
NEWS [new file with mode: 0644]
PARAVIS_version.h.in [new file with mode: 0644]
README [new file with mode: 0644]
adm_local/Makefile.am [new file with mode: 0644]
adm_local/unix/Makefile.am [new file with mode: 0644]
adm_local/unix/config_files/Makefile.am [new file with mode: 0644]
adm_local/unix/config_files/check_ParaView.m4 [new file with mode: 0644]
adm_local/unix/make_common_starter.am [new file with mode: 0644]
bin/Makefile.am [new file with mode: 0644]
bin/VERSION.in [new file with mode: 0755]
build_configure [new file with mode: 0755]
clean_configure [new file with mode: 0755]
configure.ac [new file with mode: 0644]
resources/LightApp.xml [new file with mode: 0644]
resources/Makefile.am [new file with mode: 0644]
resources/PARAVIS.png [new file with mode: 0755]
resources/SalomeApp.xml [new file with mode: 0644]
src/Makefile.am [new file with mode: 0755]
src/PVGUI/Makefile.am [new file with mode: 0644]
src/PVGUI/PVGUI_Module.cxx [new file with mode: 0644]
src/PVGUI/PVGUI_Module.h [new file with mode: 0644]
src/PVGUI/PVGUI_ProcessModuleHelper.cxx [new file with mode: 0644]
src/PVGUI/PVGUI_ProcessModuleHelper.h [new file with mode: 0644]
src/PVGUI/resources/PARAVIS_images.ts [new file with mode: 0644]
src/PVGUI/resources/PARAVIS_msg_en.ts [new file with mode: 0644]

diff --git a/AUTHORS b/AUTHORS
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/COPYING b/COPYING
new file mode 100644 (file)
index 0000000..b1e3f5a
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,504 @@
+                 GNU LESSER GENERAL PUBLIC LICENSE
+                      Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL.  It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+                           Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+  This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it.  You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+  When we speak of free software, we are referring to freedom of use,
+not price.  Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+  To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights.  These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+  For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you.  You must make sure that they, too, receive or can get the source
+code.  If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it.  And you must show them these terms so they know their rights.
+
+  We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+  To protect each distributor, we want to make it very clear that
+there is no warranty for the free library.  Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+\f
+  Finally, software patents pose a constant threat to the existence of
+any free program.  We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder.  Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+  Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License.  This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License.  We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+  When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library.  The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom.  The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+  We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License.  It also provides other free software developers Less
+of an advantage over competing non-free programs.  These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries.  However, the Lesser license provides advantages in certain
+special circumstances.
+
+  For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard.  To achieve this, non-free programs must be
+allowed to use the library.  A more frequent case is that a free
+library does the same job as widely used non-free libraries.  In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+  In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software.  For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+  Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.  Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library".  The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+\f
+                 GNU LESSER GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+  A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+  The "Library", below, refers to any such software library or work
+which has been distributed under these terms.  A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language.  (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+  "Source code" for a work means the preferred form of the work for
+making modifications to it.  For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+  Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it).  Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+  
+  1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+  You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+\f
+  2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) The modified work must itself be a software library.
+
+    b) You must cause the files modified to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    c) You must cause the whole of the work to be licensed at no
+    charge to all third parties under the terms of this License.
+
+    d) If a facility in the modified Library refers to a function or a
+    table of data to be supplied by an application program that uses
+    the facility, other than as an argument passed when the facility
+    is invoked, then you must make a good faith effort to ensure that,
+    in the event an application does not supply such function or
+    table, the facility still operates, and performs whatever part of
+    its purpose remains meaningful.
+
+    (For example, a function in a library to compute square roots has
+    a purpose that is entirely well-defined independent of the
+    application.  Therefore, Subsection 2d requires that any
+    application-supplied function or table used by this function must
+    be optional: if the application does not supply it, the square
+    root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library.  To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License.  (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.)  Do not make any other change in
+these notices.
+\f
+  Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+  This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+  4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+  If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library".  Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+  However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library".  The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+  When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library.  The
+threshold for this to be true is not precisely defined by law.
+
+  If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work.  (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+  Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+\f
+  6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+  You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License.  You must supply a copy of this License.  If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License.  Also, you must do one
+of these things:
+
+    a) Accompany the work with the complete corresponding
+    machine-readable source code for the Library including whatever
+    changes were used in the work (which must be distributed under
+    Sections 1 and 2 above); and, if the work is an executable linked
+    with the Library, with the complete machine-readable "work that
+    uses the Library", as object code and/or source code, so that the
+    user can modify the Library and then relink to produce a modified
+    executable containing the modified Library.  (It is understood
+    that the user who changes the contents of definitions files in the
+    Library will not necessarily be able to recompile the application
+    to use the modified definitions.)
+
+    b) Use a suitable shared library mechanism for linking with the
+    Library.  A suitable mechanism is one that (1) uses at run time a
+    copy of the library already present on the user's computer system,
+    rather than copying library functions into the executable, and (2)
+    will operate properly with a modified version of the library, if
+    the user installs one, as long as the modified version is
+    interface-compatible with the version that the work was made with.
+
+    c) Accompany the work with a written offer, valid for at
+    least three years, to give the same user the materials
+    specified in Subsection 6a, above, for a charge no more
+    than the cost of performing this distribution.
+
+    d) If distribution of the work is made by offering access to copy
+    from a designated place, offer equivalent access to copy the above
+    specified materials from the same place.
+
+    e) Verify that the user has already received a copy of these
+    materials or that you have already sent this user a copy.
+
+  For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it.  However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+  It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system.  Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+\f
+  7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+    a) Accompany the combined library with a copy of the same work
+    based on the Library, uncombined with any other library
+    facilities.  This must be distributed under the terms of the
+    Sections above.
+
+    b) Give prominent notice with the combined library of the fact
+    that part of it is a work based on the Library, and explaining
+    where to find the accompanying uncombined form of the same work.
+
+  8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License.  Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License.  However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+  9. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Library or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+  10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+\f
+  11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded.  In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+  13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation.  If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+\f
+  14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission.  For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this.  Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+                           NO WARRANTY
+
+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+                    END OF TERMS AND CONDITIONS
+\f
+           How to Apply These Terms to Your New Libraries
+
+  If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change.  You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+  To apply these terms, attach the following notices to the library.  It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the library's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This library is free software; you can redistribute it and/or
+    modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+    version 2.1 of the License, or (at your option) any later version.
+
+    This library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+    Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public
+    License along with this library; if not, write to the Free Software
+    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the
+  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+  <signature of Ty Coon>, 1 April 1990
+  Ty Coon, President of Vice
+
+That's all there is to it!
+
+
diff --git a/ChangeLog b/ChangeLog
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/INSTALL b/INSTALL
new file mode 100644 (file)
index 0000000..c828a2b
--- /dev/null
+++ b/INSTALL
@@ -0,0 +1 @@
+PARAVIS module
diff --git a/Makefile.am b/Makefile.am
new file mode 100644 (file)
index 0000000..6788990
--- /dev/null
@@ -0,0 +1,42 @@
+#  Copyright (C) 2005  CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+# -* Makefile *-
+#
+# Author :
+# Modified by : Alexander BORODIN (OCN) - autotools usage
+#
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+ACLOCAL_AMFLAGS = -I adm_local/unix/config_files \
+                  -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \
+                  -I ${GUI_ROOT_DIR}/adm_local/unix/config_files
+
+SUBDIRS = adm_local resources src bin 
+
+DISTCLEANFILES = a.out aclocal.m4 configure
+
+salomeinclude_DATA = PARAVIS_version.h
+
+EXTRA_DIST += \
+       build_configure \
+       clean_configure
+
+dist-hook:
+       rm -rf `find $(distdir) -name CVS`
diff --git a/NEWS b/NEWS
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/PARAVIS_version.h.in b/PARAVIS_version.h.in
new file mode 100644 (file)
index 0000000..79c8971
--- /dev/null
@@ -0,0 +1,34 @@
+// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/
+//
+//  File   : PARAVIS_version.h
+//  Author : Sergey ANIKIN
+//  Module : PARAVIS
+
+#if !defined(__PARAVIS_VERSION_H__)
+#define __PARAVIS_VERSION_H__
+
+/*
+  PARAVIS_VERSION is (major << 16) + (minor << 8) + patch.
+*/
+
+#define PARAVIS_VERSION_STR "@VERSION@"
+#define PARAVIS_VERSION     @XVERSION@
+
+#endif // __PARAVIS_VERSION_H__
diff --git a/README b/README
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/adm_local/Makefile.am b/adm_local/Makefile.am
new file mode 100644 (file)
index 0000000..b2d96e9
--- /dev/null
@@ -0,0 +1,22 @@
+# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
+#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either 
+# version 2.1 of the License.
+# 
+# This library is distributed in the hope that it will be useful 
+# but WITHOUT ANY WARRANTY; without even the implied warranty of 
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+# Lesser General Public License for more details.
+# 
+# You should have received a copy of the GNU Lesser General Public  
+# License along with this library; if not, write to the Free Software 
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+# 
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+# 
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+SUBDIRS = unix
diff --git a/adm_local/unix/Makefile.am b/adm_local/unix/Makefile.am
new file mode 100644 (file)
index 0000000..facd4e6
--- /dev/null
@@ -0,0 +1,22 @@
+# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
+#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either 
+# version 2.1 of the License.
+# 
+# This library is distributed in the hope that it will be useful 
+# but WITHOUT ANY WARRANTY; without even the implied warranty of 
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+# Lesser General Public License for more details.
+# 
+# You should have received a copy of the GNU Lesser General Public  
+# License along with this library; if not, write to the Free Software 
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+# 
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+# 
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+SUBDIRS = config_files
diff --git a/adm_local/unix/config_files/Makefile.am b/adm_local/unix/config_files/Makefile.am
new file mode 100644 (file)
index 0000000..32784fa
--- /dev/null
@@ -0,0 +1,23 @@
+# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
+#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either 
+# version 2.1 of the License.
+# 
+# This library is distributed in the hope that it will be useful 
+# but WITHOUT ANY WARRANTY; without even the implied warranty of 
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+# Lesser General Public License for more details.
+# 
+# You should have received a copy of the GNU Lesser General Public  
+# License along with this library; if not, write to the Free Software 
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+# 
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+# 
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+dist_admlocalm4_DATA = \
+       check_ParaView.m4
diff --git a/adm_local/unix/config_files/check_ParaView.m4 b/adm_local/unix/config_files/check_ParaView.m4
new file mode 100644 (file)
index 0000000..8ae0e0f
--- /dev/null
@@ -0,0 +1,172 @@
+dnl  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+dnl  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
+dnl 
+dnl  This library is free software; you can redistribute it and/or 
+dnl  modify it under the terms of the GNU Lesser General Public 
+dnl  License as published by the Free Software Foundation; either 
+dnl  version 2.1 of the License. 
+dnl 
+dnl  This library is distributed in the hope that it will be useful, 
+dnl  but WITHOUT ANY WARRANTY; without even the implied warranty of 
+dnl  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+dnl  Lesser General Public License for more details. 
+dnl 
+dnl  You should have received a copy of the GNU Lesser General Public 
+dnl  License along with this library; if not, write to the Free Software 
+dnl  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
+dnl 
+dnl  See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
+dnl
+dnl
+dnl
+
+dnl
+dnl  OPTIONS_PARAVIEW
+dnl  ------------------------------------------------------------------------
+dnl  Adds the --with-paraview=path 
+dnl
+AC_DEFUN([OPTIONS_PARAVIEW], [
+  AC_ARG_WITH([paraview],
+              [AC_HELP_STRING([--with-paraview], [The prefix where ParaView is located (default "" means taking from PVHOME environment variable)])],
+              [with_paraview=$withval], [with_paraview=""])
+])
+
+dnl
+dnl  CHECK_PARAVIEW
+dnl  ------------------------------------------------------------------------
+dnl  a simplified check that assumes VTK is a part of ParaView, separate location 
+dnl  for VTK is not supported
+dnl
+AC_DEFUN([CHECK_PARAVIEW], [
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_PROG_CXX])dnl
+AC_REQUIRE([AC_PROG_CPP])dnl
+AC_REQUIRE([AC_PROG_CXXCPP])dnl
+AC_REQUIRE([AC_LINKER_OPTIONS])dnl
+
+AC_REQUIRE([OPTIONS_PARAVIEW])dnl
+
+AC_CHECKING(for ParaView)
+
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+
+AC_SUBST(PARAVIEW_INCLUDES)
+AC_SUBST(PARAVIEW_LIBS)
+dnl AC_SUBST(VTKPY_MODULES)
+
+PARAVIEW_INCLUDES=""
+PARAVIEW_LIBS=""
+dnl VTKPY_MODULES=""
+
+paraview_ok=no
+
+if test "x$OpenGL_ok" != "xyes" ; then
+   AC_MSG_WARN(ParaView needs OpenGL correct configuration, check configure output)
+fi
+
+
+if test "x$qt_ok" != "xyes" ; then
+   AC_MSG_WARN(ParaView needs Qt correct configuration, check configure output)
+fi
+
+AC_PATH_X
+if test "x$x_libraries" != "x"
+then
+   LXLIB="-L$x_libraries"
+else
+   LXLIB=""
+fi
+
+if test "x$x_libraries" = "x/usr/lib"
+then
+   LXLIB=""
+fi
+
+if test "x$x_libraries" = "x/usr/lib${LIB_LOCATION_SUFFIX}"
+then
+   LXLIB=""
+fi
+
+LOCAL_INCLUDES="$OGL_INCLUDES"
+LOCAL_LIBS="-lvtksys -lvtkzlib -lvtkpng -lvtkjpeg -lvtktiff -lvtkexpat -lvtksqlite -lvtkmetaio -lvtkverdict -lvtkNetCDF -lvtkDICOMParser -lvtkfreetype -lvtkftgl -lvtkexoIIc -lvtkhdf5 -lvtklibxml2 -lvtkCommon -lvtkGraphics -lvtkImaging -lvtkFiltering -lvtkIO -lvtkRendering -lvtkHybrid -lvtkParallel -lvtkWidgets -lvtkClientServer -lvtkCommonCS -lvtkFilteringCS -lvtkIOCS -lvtkImagingCS -lvtkGraphicsCS -lvtkGenericFiltering -lvtkGenericFilteringCS -lvtkRenderingCS -lvtkHybridCS -lvtkParallelCS -lvtkPVCommandOptions -lKWCommon -lvtkInfovis -lvtkInfovisCS -lvtkPVServerCommon -lvtkPVServerCommonCS -lvtkCommonPythonD -lvtkFilteringPythonD -lvtkIOPythonD -lXdmf -lvtkXdmf -lvtkXdmfCS -lvtkWidgetsCS -lvtkVolumeRendering -lvtkVolumeRenderingCS -lvtkPVFilters -lvtkPVFiltersCS -lvtkViews -lvtkPVServerManagerPythonD -lvtkPVServerCommonPythonD -lvtkPVPythonInterpretor -lvtkPVServerManager -lQVTK -lpqWidgets -lQtTesting -lQtChart -lpqCore -lQtPython -lpqComponents $LXLIB -lX11 -lXt"
+TRY_LINK_LIBS="$LOCAL_LIBS"
+
+dnl VTK install dir
+if test -z $with_paraview ; then
+  with_paraview=""
+fi
+if test "x$with_paraview" = "xyes" ; then
+  dnl in case user wrote --with-paraview=yes
+  with_paraview=""
+fi
+if test "x$with_paraview" = "xno" ; then
+  dnl in case user wrote --with-paraview=no
+  with_paraview=""
+  AC_MSG_WARN(Value "no", specified for option --with-paraview, is not supported)
+fi
+
+if test "x$with_paraview" != "x" ; then
+  PVHOME="$with_paraview"
+else
+  if test -z $PVHOME ; then
+    AC_MSG_WARN(undefined PVHOME variable which specify where ParaView is located)
+  else
+    LOCAL_INCLUDES="-I$PVHOME/src/VTK/Common -I$PVHOME/src/VTK/Filtering -I$PVHOME/src/VTK/GenericFiltering -I$PVHOME/src/VTK/Graphics -I$PVHOME/src/VTK/Hybrid -I$PVHOME/src/VTK/Imaging -I$PVHOME/src/VTK/Infovis -I$PVHOME/src/VTK/IO -I$PVHOME/src/VTK/Parallel -I$PVHOME/src/VTK/Rendering -I$PVHOME/src/VTK/Utilities -I$PVHOME/src/VTK/Views -I$PVHOME/src/VTK/VolumeRendering -I$PVHOME/src/VTK/Widgets -I$PVHOME/src/Common/KWCommon -I$PVHOME/src/Qt/Core -I$PVHOME/src/Qt/Chart -I$PVHOME/src/Qt/Widgets -I$PVHOME/src/Qt/Python -I$PVHOME/src/Qt/Components -I$PVHOME/src/Servers/Common -I$PVHOME/src/Servers/ServerManager -I$PVHOME/src/Servers/Filters -I$PVHOME/src/Utilities/VTKClientServer -I$PVHOME/bin/VTK -I$PVHOME/bin/VTK/Common -I$PVHOME/bin/VTK/Filtering -I$PVHOME/bin/VTK/GenericFiltering -I$PVHOME/bin/VTK/Graphics -I$PVHOME/bin/VTK/Hybrid -I$PVHOME/bin/VTK/Imaging -I$PVHOME/bin/VTK/Infovis -I$PVHOME/bin/VTK/IO -I$PVHOME/bin/VTK/Parallel -I$PVHOME/bin/VTK/Rendering -I$PVHOME/bin/VTK/Utilities -I$PVHOME/bin/VTK/Views -I$PVHOME/bin/VTK/VolumeRendering -I$PVHOME/bin/VTK/Widgets -I$PVHOME/bin/Qt/Core -I$PVHOME/bin/Qt/Chart -I$PVHOME/bin/Qt/Widgets -I$PVHOME/bin/Qt/Python -I$PVHOME/bin/Qt/Components -I$PVHOME/bin/Servers/Common -I$PVHOME/bin/Servers/ServerManager -I$PVHOME/bin/Servers/Filters -I$PVHOME/bin/Utilities/VTKClientServer $LOCAL_INCLUDES"
+    LOCAL_LIBS="-L$PVHOME/bin/bin $LOCAL_LIBS"
+    TRY_LINK_LIBS="-L$PVHOME/bin/bin $TRY_LINK_LIBS"    
+  fi
+fi
+
+dnl vtk headers
+CPPFLAGS_old="$CPPFLAGS"
+CPPFLAGS="$CPPFLAGS $LOCAL_INCLUDES $QT_INCLUDES"
+
+AC_CHECK_HEADER(pqApplicationCore.h,paraview_ok="yes",paraview_ok="no")
+
+CPPFLAGS="$CPPFLAGS_old"
+
+if test "x$paraview_ok" = "xyes"
+then
+   PARAVIEW_INCLUDES="$LOCAL_INCLUDES"
+
+   dnl vtk libraries
+
+   AC_MSG_CHECKING(linking ParaView component library)
+
+   LIBS_old="$LIBS"
+   LIBS="$LIBS $QT_LIBS $TRY_LINK_LIBS"
+   CPPFLAGS_old="$CPPFLAGS"
+   CPPFLAGS="$CPPFLAGS $QT_INCLUDES $PARAVIEW_INCLUDES"
+
+   dnl VTKPY_MODULES="$VTKHOME/python"
+
+   AC_CACHE_VAL(salome_cv_lib_paraview,[
+     AC_TRY_LINK([#include "pqApplicationCore.h"
+                 ],
+                [pqApplicationCore::instance()],
+                [salome_cv_lib_paraview=yes],
+                [salome_cv_lib_paraview=no])
+   ])
+   paraview_ok="$salome_cv_lib_paraview"
+   LIBS="$LIBS_old"
+   CPPFLAGS="$CPPFLAGS_old"
+fi
+
+if  test "x$paraview_ok" = "xno"
+then
+  AC_MSG_RESULT(no)
+  AC_MSG_WARN(unable to link with ParaView component library)
+else
+  AC_MSG_RESULT(yes)
+  PARAVIEW_LIBS="$LOCAL_LIBS"
+fi
+
+AC_MSG_RESULT(for ParaView: $paraview_ok)
+
+AC_LANG_RESTORE
+
+# Save cache
+AC_CACHE_SAVE
+
+])dnl
diff --git a/adm_local/unix/make_common_starter.am b/adm_local/unix/make_common_starter.am
new file mode 100644 (file)
index 0000000..acf58de
--- /dev/null
@@ -0,0 +1,69 @@
+#
+# ============================================================
+# This file defines the common definitions used in several
+# Makefile. This file must be included, if needed, by the file
+# Makefile.am.
+# ============================================================
+#
+
+# Standard directory for installation
+salomeincludedir   = $(includedir)/salome
+libdir             = $(prefix)/lib@LIB_LOCATION_SUFFIX@/salome
+bindir             = $(prefix)/bin/salome
+salomescriptdir    = $(bindir)
+salomepythondir    = $(pythondir)/salome
+salomepyexecdir    = $(pyexecdir)/salome
+
+# Directory for installing idl files
+salomeidldir       = $(prefix)/idl/salome
+
+# Directory for installing resource files
+salomeresdir       = $(prefix)/share/salome/resources/@MODULE_NAME@
+
+# Directories for installing admin files
+admlocaldir        = $(prefix)/adm_local
+admlocalunixdir    = $(admlocaldir)/unix
+admlocalm4dir      = $(admlocaldir)/unix/config_files
+
+# Shared modules installation directory
+sharedpkgpythondir = $(salomepythondir)/shared_modules
+
+# Documentation directory
+docdir             = $(datadir)/doc/salome
+
+# common rules
+
+# meta object implementation files generation (moc)
+%_moc.cxx: %.h
+       $(MOC) $< -o $@
+
+# translation (*.qm) files generation (lrelease)
+%.qm: resources/%.ts
+       $(LRELEASE) $< -qm $@
+
+# resource files generation (qrcc)
+qrc_%.cxx: %.qrc
+       $(QRCC) $< -o $@ -name $(*F)
+
+# qt forms files generation (uic)
+ui_%.h: %.ui
+       $(UIC) -o $@ $<
+
+# extra distributed files
+EXTRA_DIST = $(MOC_FILES:%_moc.cxx=%.h) $(QRC_FILES:qrc_%.cxx=%.qrc) \
+             $(UIC_FILES:ui_%.h=%.ui) $(nodist_salomeres_DATA:%.qm=resources/%.ts)
+
+# customize clean operation
+mostlyclean-local:
+       rm -f @builddir@/*_moc.cxx
+       rm -f @builddir@/*.qm
+       rm -f @builddir@/ui_*.h
+       rm -f @builddir@/qrc_*.cxx
+
+# tests
+tests: unittest
+
+unittest: $(UNIT_TEST_PROG)
+       @if test "x$(UNIT_TEST_PROG)" != "x"; then \
+           $(UNIT_TEST_PROG);                     \
+       fi;
diff --git a/bin/Makefile.am b/bin/Makefile.am
new file mode 100644 (file)
index 0000000..94e250c
--- /dev/null
@@ -0,0 +1,30 @@
+# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
+#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either 
+# version 2.1 of the License.
+# 
+# This library is distributed in the hope that it will be useful 
+# but WITHOUT ANY WARRANTY; without even the implied warranty of 
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+# Lesser General Public License for more details.
+# 
+# You should have received a copy of the GNU Lesser General Public  
+# License along with this library; if not, write to the Free Software 
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+# 
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+# -* Makefile *- 
+#
+# Author : 
+# Module : PARAVIS
+#
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+# non-distributed files 
+nodist_salomescript_DATA = VERSION
+
+# distributed files
+dist_salomescript_SCRIPTS =
diff --git a/bin/VERSION.in b/bin/VERSION.in
new file mode 100755 (executable)
index 0000000..4e8104e
--- /dev/null
@@ -0,0 +1 @@
+THIS IS PARAVIS MODULE : VERSION: @VERSION@
diff --git a/build_configure b/build_configure
new file mode 100755 (executable)
index 0000000..3c8e79e
--- /dev/null
@@ -0,0 +1,102 @@
+#!/bin/bash
+
+#
+# Tool for updating list of .in file for the SALOME project 
+# and regenerating configure script
+#
+# Author : 
+# Modified by : Alexander BORODIN (OCN) - autotools usage
+# Date : 10/10/2002
+
+
+ORIG_DIR=`pwd`
+CONF_DIR=`echo $0 | sed -e "s,[^/]*$,,;s,/$,,;s,^$,.,"`
+
+########################################################################
+# Test if the KERNEL_ROOT_DIR is set correctly
+
+if test ! -d "${KERNEL_ROOT_DIR}"; then
+    echo "failed : KERNEL_ROOT_DIR variable is not correct !"
+    exit
+fi
+
+
+########################################################################
+# Test if the GUI_ROOT_DIR is set correctly
+
+if test ! -d "${GUI_ROOT_DIR}"; then
+    echo "failed : GUI_ROOT_DIR variable is not correct !"
+    exit
+fi
+
+cd ${CONF_DIR}
+ABS_CONF_DIR=`pwd`
+
+mkdir -p salome_adm/unix/config_files
+#cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files/* salome_adm/unix/config_files
+#cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/pythonbe.py salome_adm/unix
+
+cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/SALOMEconfig.h.in salome_adm/unix
+
+#cp -f ${GUI_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files
+
+# remove KERNEL deprecated configure files
+#for deprecated in ac_cc_warnings.m4 ac_cxx_partial_specialization.m4 \
+#  check_mico.m4 config.guess ltmain.sh ac_cxx_bool.m4 ltconfig ac_cxx_typename.m4 \
+#    check_pthreads.m4 config.sub libtool.m4 ac_cxx_mutable.m4 missing
+#    do
+#      rm -f salome_adm/unix/config_files/${deprecated}
+#      done
+
+
+# ____________________________________________________________________
+# aclocal creates the aclocal.m4 file from the standard macro and the
+# custom macro embedded in the directory salome_adm/unix/config_files
+# and KERNEL config_files directory.
+# output:
+#   aclocal.m4
+#   autom4te.cache (directory)
+echo "====================================================== aclocal"
+
+aclocal -I adm_local/unix/config_files \
+        -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \
+       -I ${GUI_ROOT_DIR}/adm_local/unix/config_files || exit 1
+
+# ____________________________________________________________________
+# libtoolize creates some configuration files (ltmain.sh,
+# config.guess and config.sub). It only depends on the libtool
+# version. The files are created in the directory specified with the
+# AC_CONFIG_AUX_DIR(<mydir>) tag (see configure.ac).
+# output:
+#   salome_adm/unix/config_files/config.guess
+#   salome_adm/unix/config_files/config.sub
+#   salome_adm/unix/config_files/ltmain.sh
+#echo "====================================================== libtoolize"
+
+libtoolize --force --copy --automake || exit 1
+
+# ____________________________________________________________________
+# autoconf creates the configure script from the file configure.ac (or
+# configure.in if configure.ac doesn't exist)
+# output:
+#   configure
+echo "====================================================== autoconf"
+
+autoconf
+
+# ____________________________________________________________________
+# automake creates some scripts used in building process
+# (install-sh, missing, ...). It only depends on the automake
+# version. The files are created in the directory specified with the
+# AC_CONFIG_AUX_DIR(<mydir>) tag (see configure.ac). This step also
+# creates the Makefile.in files from the Makefile.am files.
+# output:
+#   salome_adm/unix/config_files/compile
+#   salome_adm/unix/config_files/depcomp
+#   salome_adm/unix/config_files/install-sh
+#   salome_adm/unix/config_files/missing
+#   salome_adm/unix/config_files/py-compile
+#   Makefile.in (from Makefile.am)
+echo "====================================================== automake"
+
+automake --copy --gnu --add-missing
diff --git a/clean_configure b/clean_configure
new file mode 100755 (executable)
index 0000000..be0b542
--- /dev/null
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+rm -rf autom4te.cache aclocal.m4 configure make_config
+find . -name "*~" -print -exec rm {} \;
+find . -name "*.pyc" -print -exec rm {} \;
+#exit
+# ==================== ON SORT AVANT
+
+find bin -name Makefile.in | xargs rm -f
+find doc -name Makefile.in | xargs rm -f
+find idl -name Makefile.in | xargs rm -f
+find resources -name Makefile.in | xargs rm -f
+find salome_adm -name Makefile.in | xargs rm -f
+find src -name Makefile.in | xargs rm -f
+rm -f Makefile.in
diff --git a/configure.ac b/configure.ac
new file mode 100644 (file)
index 0000000..1fc9e84
--- /dev/null
@@ -0,0 +1,316 @@
+#
+#  PLEASE DO NOT MODIFY configure.in FILE
+#
+#  ALL CHANGES WILL BE DISCARDED BY THE NEXT
+#  build_configure COMMAND
+#
+#  CHANGES MUST BE MADE IN configure.in.base FILE
+#
+#
+# Author : Marc Tajchman (CEA)
+# Date : 28/06/2001
+# Modified by : Patrick GOLDBRONN (CEA)
+# Modified by : Marc Tajchman (CEA)
+#
+# Created from configure.in.base
+#
+
+AC_INIT([PARAVIS - SALOME GUI for ParaView], [0.1.0], [webmaster.salome@opencascade.com], [PARAVIS])
+AC_CONFIG_AUX_DIR(salome_adm/unix/config_files)
+AC_CANONICAL_HOST
+AC_CANONICAL_TARGET
+AM_INIT_AUTOMAKE
+
+XVERSION=`echo $VERSION | awk -F. '{printf("0x%02x%02x%02x",$1,$2,$3)}'`
+AC_SUBST(XVERSION)
+
+# set up MODULE_NAME variable for dynamic construction of directories (resources, etc.)
+MODULE_NAME=paravis
+AC_SUBST(MODULE_NAME)
+
+dnl
+dnl Initialize source and build root directories
+dnl
+
+ROOT_BUILDDIR=`pwd`
+ROOT_SRCDIR=`echo $0 | sed -e "s,[[^/]]*$,,;s,/$,,;s,^$,.,"`
+cd $ROOT_SRCDIR
+ROOT_SRCDIR=`pwd`
+cd $ROOT_BUILDDIR
+
+AC_SUBST(ROOT_SRCDIR)
+AC_SUBST(ROOT_BUILDDIR)
+
+echo
+echo Source root directory : $ROOT_SRCDIR
+echo Build  root directory : $ROOT_BUILDDIR
+echo
+echo
+
+AC_CHECK_PROG(SHELL,sh)
+AC_SUBST(SHELL)
+
+if test -z "$AR"; then
+   AC_CHECK_PROGS(AR,ar xar,:,$PATH)
+fi
+AC_SUBST(AR)
+
+dnl Export the AR macro so that it will be placed in the libtool file
+dnl correctly.
+export AR
+
+echo
+echo ---------------------------------------------
+echo testing make
+echo ---------------------------------------------
+echo
+
+AC_PROG_MAKE_SET
+AC_PROG_INSTALL
+dnl 
+dnl libtool macro check for CC, LD, NM, LN_S, RANLIB, STRIP + pour les librairies dynamiques !
+
+AC_ENABLE_DEBUG(yes)
+AC_DISABLE_PRODUCTION
+
+echo ---------------------------------------------
+echo testing libtool
+echo ---------------------------------------------
+
+dnl first, we set static to no!
+dnl if we want it, use --enable-static
+AC_ENABLE_STATIC(no)
+
+AC_LIBTOOL_DLOPEN
+AC_PROG_LIBTOOL
+
+dnl Fix up the INSTALL macro if it s a relative path. We want the
+dnl full-path to the binary instead.
+case "$INSTALL" in
+   *install-sh*)
+      INSTALL="\${KERNEL_ROOT_DIR}/salome_adm/unix/config_files/install-sh -c"
+      ;;
+esac
+
+echo
+echo ---------------------------------------------
+echo testing C/C++
+echo ---------------------------------------------
+echo
+
+cc_ok=no
+dnl inutil car libtool
+dnl AC_PROG_CC
+AC_PROG_CXX
+AC_CXX_WARNINGS
+AC_CXX_TEMPLATE_OPTIONS
+AC_DEPEND_FLAG
+# AC_CC_WARNINGS([ansi])
+cc_ok=yes
+
+dnl Library libdl :
+AC_CHECK_LIB(dl,dlopen)
+
+dnl add library libm :
+AC_CHECK_LIB(m,ceil)
+
+dnl Library librt : for alpha/osf
+AC_CHECK_LIB(rt,nanosleep)
+
+dnl 
+dnl Check if we use std iostream by default or if we must add
+dnl a compiler directive for that
+dnl
+
+AC_CXX_USE_STD_IOSTREAM
+
+dnl 
+dnl Well we use sstream which is not in gcc pre-2.95.3
+dnl We must test if it exists. If not, add it in include !
+dnl
+
+AC_CXX_HAVE_SSTREAM
+
+dnl
+dnl ---------------------------------------------
+dnl testing linker
+dnl ---------------------------------------------
+dnl
+
+AC_LINKER_OPTIONS
+
+dnl
+dnl ---------------------------------------------
+dnl testing MPICH
+dnl ---------------------------------------------
+dnl
+
+CHECK_MPI
+CHECK_MPICH
+
+dnl
+dnl ---------------------------------------------
+dnl testing WITHIHM
+dnl ---------------------------------------------
+dnl
+
+CHECK_WITHIHM
+
+echo
+echo ---------------------------------------------
+echo testing LEX \& YACC
+echo ---------------------------------------------
+echo
+
+lex_yacc_ok=no
+AC_PROG_YACC
+AC_PROG_LEX
+lex_yacc_ok=yes
+
+echo
+echo ---------------------------------------------
+echo testing python
+echo ---------------------------------------------
+echo
+
+CHECK_PYTHON
+
+AM_PATH_PYTHON(2.3)
+
+dnl echo
+dnl echo ---------------------------------------------
+dnl echo testing java
+dnl echo ---------------------------------------------
+dnl echo
+
+dnl CHECK_JAVA
+
+#echo
+#echo ---------------------------------------------
+#echo testing swig
+#echo ---------------------------------------------
+#echo
+#
+#CHECK_SWIG
+
+echo
+echo ---------------------------------------------
+echo testing threads
+echo ---------------------------------------------
+echo
+
+ENABLE_PTHREADS
+
+echo
+echo ---------------------------------------------
+echo testing openGL
+echo ---------------------------------------------
+echo
+
+CHECK_OPENGL
+
+echo
+echo ---------------------------------------------
+echo testing QT
+echo ---------------------------------------------
+echo
+
+CHECK_QT
+
+echo
+echo ---------------------------------------------
+echo testing ParaView
+echo ---------------------------------------------
+echo
+
+CHECK_PARAVIEW
+
+echo
+echo ---------------------------------------------
+echo testing HDF5
+echo ---------------------------------------------
+echo
+
+CHECK_HDF5
+
+echo
+echo ---------------------------------------------
+echo Testing OpenCascade
+echo ---------------------------------------------
+echo
+
+CHECK_CAS
+
+echo
+echo ---------------------------------------------
+echo Testing html generators
+echo ---------------------------------------------
+echo
+
+CHECK_HTML_GENERATORS
+
+echo
+echo ---------------------------------------------
+echo Testing Kernel
+echo ---------------------------------------------
+echo
+
+CHECK_KERNEL
+
+echo
+echo ---------------------------------------------
+echo Testing GUI
+echo ---------------------------------------------
+echo
+
+CHECK_SALOME_GUI
+
+echo
+echo ---------------------------------------------
+echo Summary
+echo ---------------------------------------------
+echo
+
+echo Configure
+variables="cc_ok lex_yacc_ok python_ok threads_ok OpenGL_ok qt_ok paraview_ok hdf5_ok occ_ok doxygen_ok graphviz_ok Kernel_ok SalomeGUI_ok"
+
+for var in $variables
+do
+   printf "   %10s : " `echo \$var | sed -e "s,_ok,,"`
+   eval echo \$$var
+done
+
+dnl We don t need to say when we re entering directories if we re using
+dnl GNU make becuase make does it for us.
+if test "X$GMAKE" = "Xyes"; then
+   AC_SUBST(SETX) SETX=":"
+else
+   AC_SUBST(SETX) SETX="set -x"
+fi
+echo
+echo ---------------------------------------------
+echo generating Makefiles and configure files
+echo ---------------------------------------------
+echo
+
+AC_OUTPUT_COMMANDS([ \
+      chmod +x ./bin/*; \
+])
+
+# This list is initiated using autoscan and must be updated manually
+# when adding a new file <filename>.in to manage. When you execute
+# autoscan, the Makefile list is generated in the output file configure.scan.
+# This could be helpfull to update de configuration.
+AC_OUTPUT([ \
+  ./salome_adm/unix/SALOMEconfig.h \
+  ./adm_local/Makefile \
+  ./adm_local/unix/Makefile \
+  ./adm_local/unix/config_files/Makefile \
+  ./bin/VERSION \
+  ./bin/Makefile \
+  ./src/Makefile \
+  ./src/PVGUI/Makefile \
+  ./resources/Makefile \
+  ./PARAVIS_version.h \
+  Makefile \
+])
diff --git a/resources/LightApp.xml b/resources/LightApp.xml
new file mode 100644 (file)
index 0000000..5f9fd8b
--- /dev/null
@@ -0,0 +1,11 @@
+<document>
+  <section name="PARAVIS">
+    <!-- Major module parameters -->
+    <parameter name="name" value="ParaViS"/>
+    <parameter name="icon" value="PARAVIS.png"/>
+  </section>
+  <section name="resources">
+    <!-- Module resources -->
+    <parameter name="PARAVIS" value="${PARAVIS_ROOT_DIR}/share/salome/resources/paravis"/>
+  </section>
+</document>
diff --git a/resources/Makefile.am b/resources/Makefile.am
new file mode 100644 (file)
index 0000000..578207e
--- /dev/null
@@ -0,0 +1,31 @@
+#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+# -* Makefile *- 
+#
+# Author : Patrick GOLDBRONN (CEA)
+# Date : 28/06/2001
+#  Modified by : Alexander BORODIN (OCN) - autotools usage
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+dist_salomeres_DATA = \
+       PARAVIS.png \
+       LightApp.xml \
+       SalomeApp.xml
diff --git a/resources/PARAVIS.png b/resources/PARAVIS.png
new file mode 100755 (executable)
index 0000000..b0ab8de
Binary files /dev/null and b/resources/PARAVIS.png differ
diff --git a/resources/SalomeApp.xml b/resources/SalomeApp.xml
new file mode 100644 (file)
index 0000000..5f9fd8b
--- /dev/null
@@ -0,0 +1,11 @@
+<document>
+  <section name="PARAVIS">
+    <!-- Major module parameters -->
+    <parameter name="name" value="ParaViS"/>
+    <parameter name="icon" value="PARAVIS.png"/>
+  </section>
+  <section name="resources">
+    <!-- Module resources -->
+    <parameter name="PARAVIS" value="${PARAVIS_ROOT_DIR}/share/salome/resources/paravis"/>
+  </section>
+</document>
diff --git a/src/Makefile.am b/src/Makefile.am
new file mode 100755 (executable)
index 0000000..3b8741f
--- /dev/null
@@ -0,0 +1,28 @@
+#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
+# 
+#  This library is free software; you can redistribute it and/or 
+#  modify it under the terms of the GNU Lesser General Public 
+#  License as published by the Free Software Foundation; either 
+#  version 2.1 of the License. 
+# 
+#  This library is distributed in the hope that it will be useful, 
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+#  Lesser General Public License for more details. 
+# 
+#  You should have received a copy of the GNU Lesser General Public 
+#  License along with this library; if not, write to the Free Software 
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
+# 
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+#
+#
+#  File   : Makefile.in
+#  Author : (CEA)
+#  Modified by : Alexander BORODIN (OCN) - autotools usage
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+SUBDIRS = PVGUI
diff --git a/src/PVGUI/Makefile.am b/src/PVGUI/Makefile.am
new file mode 100644 (file)
index 0000000..edcdfe7
--- /dev/null
@@ -0,0 +1,61 @@
+#  PARAVIS : ParaView wrapper SALOME module
+#
+#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+#  Author : Julia DOROVSKIKH
+#  Date   : 01/06/2005
+#  Modified by : Alexander BORODIN (OCN) - autotools usage
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+# Library target
+lib_LTLIBRARIES = libPARAVIS.la
+
+# Library sources
+dist_libPARAVIS_la_SOURCES =   \
+       PVGUI_Module.h          \
+       PVGUI_Module.cxx        \
+       PVGUI_ProcessModuleHelper.h \
+       PVGUI_ProcessModuleHelper.cxx
+
+# MOC pre-processing
+MOC_FILES = \
+       PVGUI_Module_moc.cxx 
+
+nodist_libPARAVIS_la_SOURCES = $(MOC_FILES)
+
+# additionnal compilation flags
+libPARAVIS_la_CPPFLAGS = \
+       $(QT_INCLUDES) \
+       $(PARAVIEW_INCLUDES) \
+       $(CAS_CPPFLAGS) \
+       $(PYTHON_INCLUDES) \
+       $(GUI_CXXFLAGS)
+
+# additionnal linkage flags
+libPARAVIS_la_LDFLAGS = \
+       $(PARAVIEW_LIBS) \
+       $(GUI_LDFLAGS) \
+       -lLightApp 
+
+# resources files
+nodist_salomeres_DATA = \
+           PARAVIS_images.qm \
+           PARAVIS_msg_en.qm
diff --git a/src/PVGUI/PVGUI_Module.cxx b/src/PVGUI/PVGUI_Module.cxx
new file mode 100644 (file)
index 0000000..4b1b8e9
--- /dev/null
@@ -0,0 +1,350 @@
+// LIGHT : sample (no-corba-engine) SALOME module
+//
+// Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File   : PVGUI_Module.cxx
+// Author : Julia DOROVSKIKH
+//
+
+#include "PVGUI_Module.h"
+#include "PVGUI_ProcessModuleHelper.h"
+
+#include <SUIT_MessageBox.h>
+#include <SUIT_Desktop.h>
+#include <LightApp_Application.h>
+#include <LightApp_SelectionMgr.h>
+#include <LightApp_Selection.h>
+#include <OCCViewer_ViewManager.h>
+#include <SOCC_ViewModel.h>
+#include <SOCC_Prs.h>
+
+#include <QApplication>
+#include <QInputDialog>
+#include <QStringList>
+#include <QMenu>
+#include <QIcon>
+#include <QString>
+
+#include <pqOptions.h>
+#include <vtkPVMain.h>
+#include <vtkProcessModule.h>
+
+/*
+ * Make sure all the kits register their classes with vtkInstantiator.
+ * Since ParaView uses Tcl wrapping, all of VTK is already compiled in
+ * anyway.  The instantiators will add no more code for the linker to
+ * collect.
+ */
+
+#include <vtkCommonInstantiator.h>
+#include <vtkFilteringInstantiator.h>
+#include <vtkGenericFilteringInstantiator.h>
+#include <vtkIOInstantiator.h>
+#include <vtkImagingInstantiator.h>
+#include <vtkInfovisInstantiator.h>
+#include <vtkGraphicsInstantiator.h>
+
+#include <vtkRenderingInstantiator.h>
+#include <vtkVolumeRenderingInstantiator.h>
+#include <vtkHybridInstantiator.h>
+#include <vtkParallelInstantiator.h>
+
+#include <vtkPVServerCommonInstantiator.h>
+#include <vtkPVFiltersInstantiator.h>
+#include <vtkPVServerManagerInstantiator.h>
+#include <vtkClientServerInterpreter.h>
+
+
+//----------------------------------------------------------------------------
+// ClientServer wrapper initialization functions.
+// Taken from ParaView sources (file pqMain.cxx)
+extern "C" void vtkCommonCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkFilteringCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkGenericFilteringCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkImagingCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkInfovisCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkGraphicsCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkIOCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkRenderingCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkVolumeRenderingCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkHybridCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkWidgetsCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkParallelCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkPVServerCommonCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkPVFiltersCS_Initialize(vtkClientServerInterpreter*);
+extern "C" void vtkXdmfCS_Initialize(vtkClientServerInterpreter *);
+
+//----------------------------------------------------------------------------
+void ParaViewInitializeInterpreter(vtkProcessModule* pm)
+{
+  // Initialize built-in wrapper modules.
+  vtkCommonCS_Initialize(pm->GetInterpreter());
+  vtkFilteringCS_Initialize(pm->GetInterpreter());
+  vtkGenericFilteringCS_Initialize(pm->GetInterpreter());
+  vtkImagingCS_Initialize(pm->GetInterpreter());
+  vtkInfovisCS_Initialize(pm->GetInterpreter());
+  vtkGraphicsCS_Initialize(pm->GetInterpreter());
+  vtkIOCS_Initialize(pm->GetInterpreter());
+  vtkRenderingCS_Initialize(pm->GetInterpreter());
+  vtkVolumeRenderingCS_Initialize(pm->GetInterpreter());
+  vtkHybridCS_Initialize(pm->GetInterpreter());
+  vtkWidgetsCS_Initialize(pm->GetInterpreter());
+  vtkParallelCS_Initialize(pm->GetInterpreter());
+  vtkPVServerCommonCS_Initialize(pm->GetInterpreter());
+  vtkPVFiltersCS_Initialize(pm->GetInterpreter());
+  vtkXdmfCS_Initialize(pm->GetInterpreter());
+}
+
+vtkPVMain*                 PVGUI_Module::myPVMain = 0;
+pqOptions*                 PVGUI_Module::myPVOptions = 0;
+PVGUI_ProcessModuleHelper* PVGUI_Module::myPVHelper = 0;
+
+/*!
+  \class PVGUI_Module
+  \brief Implementation of light (no-CORBA-engine) 
+         SALOME module wrapping ParaView GUI.
+*/
+
+/*!
+  \brief Constructor. Sets the default name for the module.
+*/
+PVGUI_Module::PVGUI_Module()
+: LightApp_Module( "PARAVIS" )
+{
+}
+
+/*!
+  \brief Destructor.
+*/
+PVGUI_Module::~PVGUI_Module()
+{
+}
+
+/*!
+  \brief Initialize module. Creates menus, prepares context menu, etc.
+  \param app application instance
+*/
+void PVGUI_Module::initialize( CAM_Application* app )
+{
+  LightApp_Module::initialize( app );
+
+  SUIT_Desktop* desk = application()->desktop();
+
+  if ( pvInit() ) {
+    pvCreateActions();
+  }
+  /*
+  createAction( lgLoadFile, tr( "TOP_LOAD_FILE" ), QIcon(), tr( "MEN_LOAD_FILE" ),
+                tr( "STB_LOAD_FILE" ), 0, desk, false, this, SLOT( onLoadFile() ) );
+  createAction( lgDisplayLine, tr( "TOP_DISPLAY_LINE" ), QIcon(), tr( "MEN_DISPLAY_LINE" ),
+                tr( "STB_DISPLAY_LINE" ), 0, desk, false, this, SLOT( onDisplayLine() ) );
+  createAction( lgEraseLine, tr( "TOP_ERASE_LINE" ), QIcon(), tr( "MEN_ERASE_LINE" ),
+                tr( "STB_ERASE_LINE" ), 0, desk, false, this, SLOT( onEraseLine() ) );
+  createAction( lgSaveFile, tr( "TOP_SAVE_FILE" ), QIcon(), tr( "MEN_SAVE_FILE" ),
+                tr( "STB_SAVE_FILE" ), 0, desk, false, this, SLOT( onSaveFile() ) );
+  createAction( lgEditLine, tr( "TOP_EDIT_LINE" ), QIcon(), tr( "MEN_EDIT_LINE" ),
+                tr( "STB_EDIT_LINE" ), 0, desk, false, this, SLOT( onEditLine() ) );
+  createAction( lgAddLine,  tr( "TOP_ADD_LINE" ),  QIcon(), tr( "MEN_ADD_LINE" ),
+                tr( "STB_ADD_LINE" ),  0, desk, false, this, SLOT( onAddLine() ) );
+  createAction( lgDelLine,  tr( "TOP_DEL_LINE" ),  QIcon(), tr( "MEN_DEL_LINE" ),
+                tr( "STB_DEL_LINE" ),  0, desk, false, this, SLOT( onDelLine() ) );
+  createAction( lgClear,    tr( "TOP_CLEAR_ALL" ), QIcon(), tr( "MEN_CLEAR_ALL" ),
+                tr( "STB_CLEAR_ALL" ), 0, desk, false, this, SLOT( onClear() ) );
+
+  int aFileMnu = createMenu( tr( "MEN_FILE" ), -1, -1 );
+  createMenu( separator(), aFileMnu, -1, 10 );
+  createMenu( lgLoadFile,  aFileMnu, 10 );
+  createMenu( lgSaveFile,  aFileMnu, 10 );
+
+  int aLightMnu = createMenu( tr( "MEN_LIGHT" ), -1, -1, 50 );
+  createMenu( lgAddLine,      aLightMnu, 10 );
+  createMenu( lgEditLine,     aLightMnu, 10 );
+  createMenu( lgDelLine,      aLightMnu, 10 );
+  createMenu( separator(),    aLightMnu, -1, 10 );
+  createMenu( lgClear,        aLightMnu, 10 );
+
+  QString rule = "(client='ObjectBrowser' or client='OCCViewer') and selcount=1 and type='TextLine' and !empty";
+
+  popupMgr()->insert ( action( lgDisplayLine ), -1, 0 );
+  popupMgr()->setRule( action( lgDisplayLine ), rule + " and !visible"  );
+
+  popupMgr()->insert ( action( lgEraseLine ), -1, 0 );
+  popupMgr()->setRule( action( lgEraseLine ), rule + " and activeView='OCCViewer' and visible"  );
+
+  rule = "client='ObjectBrowser' and selcount=1 and type='TextLine'";
+
+  popupMgr()->insert ( action( lgEditLine ), -1, 0 );
+  popupMgr()->setRule( action( lgEditLine ), rule  );
+
+  popupMgr()->insert ( action( lgAddLine ),  -1, 0 );
+  popupMgr()->setRule( action( lgAddLine ),  rule );
+
+  popupMgr()->insert ( separator(),          -1, 0 );
+
+  popupMgr()->insert ( action( lgDelLine ),  -1, 0 );
+  popupMgr()->setRule( action( lgDelLine ),  rule );
+
+  rule = "client='ObjectBrowser'";
+
+  popupMgr()->insert ( action( lgClear ),    -1, 0 );
+  popupMgr()->setRule( action( lgClear ),    rule );*/
+}
+
+/*!
+  \brief Get list of compliant dockable GUI elements
+  \param m map to be filled in ("type":"default_position")
+*/
+void PVGUI_Module::windows( QMap<int, int>& m ) const
+{
+  m.insert( LightApp_Application::WT_ObjectBrowser, Qt::LeftDockWidgetArea );
+  // TODO: creation of Python console leads to SIGSEGV on Python initialization...
+  //m.insert( LightApp_Application::WT_PyConsole, Qt::BottomDockWidgetArea );
+  // ParaView diagnostic output redirected here
+  m.insert( LightApp_Application::WT_LogWindow, Qt::BottomDockWidgetArea );
+}
+
+/*!
+  \brief Create custom popup menu selection object.
+  \return new selected object
+*/
+/*LightApp_Selection* PVGUI_Module::createSelection() const
+{
+  return new PVGUI_Selection();
+}*/
+
+/*!
+  \brief Create data model.
+  \return module specific data model
+*/
+/*CAM_DataModel* PVGUI_Module::createDataModel()
+{
+  return new PVGUI_DataModel( this );
+}*/
+
+/*!
+  \brief Static method, performs initialization of ParaView session.
+  \return \c true if ParaView has been initialized successfully, otherwise false
+*/
+bool PVGUI_Module::pvInit()
+{
+  if ( !myPVMain ){
+    // Obtain command-line arguments
+    int argc = 0;
+    QStringList args = QApplication::arguments();
+    char** argv = new char*[args.size()];
+    for ( QStringList::const_iterator it = args.begin(); argc < 1 && it != args.end(); it++, argc++ )
+      argv[argc] = strdup( (*it).toLatin1().constData() );
+
+    vtkPVMain::SetInitializeMPI(0);  // pvClient never runs with MPI.
+    vtkPVMain::Initialize(&argc, &argv); // Perform any initializations.
+
+    // TODO: Set plugin dir from preferences
+    //QApplication::setLibraryPaths(QStringList(dir.absolutePath()));
+
+    myPVMain = vtkPVMain::New();
+    if ( !myPVOptions )
+      myPVOptions = pqOptions::New();
+    if ( !myPVHelper )
+      myPVHelper = PVGUI_ProcessModuleHelper::New();
+
+    myPVOptions->SetProcessType(vtkPVOptions::PVCLIENT);
+
+    // This creates the Process Module and initializes it.
+    int ret = myPVMain->Initialize(myPVOptions, myPVHelper, ParaViewInitializeInterpreter,
+                                   argc, argv);
+    if (!ret){
+      // Tell process module that we support Multiple connections.
+      // This must be set before starting the event loop.
+      vtkProcessModule::GetProcessModule()->SupportMultipleConnectionsOn();
+      ret = myPVHelper->Run(myPVOptions);
+    }
+
+    //delete[] argv;
+    cout << "*** ParaView client initalized!!!" << endl;
+    return !ret;
+  }
+  
+  return true;
+}
+/*!
+  \brief Static method, cleans up ParaView session at application exit.
+*/
+void PVGUI_Module::pvShutdown()
+{
+  // TODO...
+}  
+/*!
+  \brief Create actions for ParaView GUI operations
+  duplicating menus and toolbars in pqMainWindow ParaView class
+*/
+void PVGUI_Module::pvCreateActions()
+{
+  // TODO...
+}
+
+/*!
+  \brief Activate module.
+  \param study current study
+  \return \c true if activaion is done successfully or 0 to prevent
+  activation on error
+*/
+bool PVGUI_Module::activateModule( SUIT_Study* study )
+{
+  bool isDone = LightApp_Module::activateModule( study );
+  if ( !isDone ) return false;
+
+  setMenuShown( true );
+
+  return isDone;
+}
+
+/*!
+  \brief Deactivate module.
+  \param study current study
+  \return \c true if deactivaion is done successfully or 0 to prevent
+  deactivation on error
+*/
+bool PVGUI_Module::deactivateModule( SUIT_Study* study )
+{
+  // hide menus
+  setMenuShown( false );
+
+  return LightApp_Module::deactivateModule( study );
+}
+
+/*!
+  \fn CAM_Module* createModule();
+  \brief Export module instance (factory function).
+  \return new created instance of the module
+*/
+
+#ifdef WNT
+#define PVGUI_EXPORT __declspec(dllexport)
+#else   // WNT
+#define PVGUI_EXPORT
+#endif  // WNT
+
+extern "C" {
+  PVGUI_EXPORT CAM_Module* createModule() {
+    return new PVGUI_Module();
+  }
+}
diff --git a/src/PVGUI/PVGUI_Module.h b/src/PVGUI/PVGUI_Module.h
new file mode 100644 (file)
index 0000000..d64adcb
--- /dev/null
@@ -0,0 +1,86 @@
+// PARAVIS : ParaView wrapper SALOME module
+//
+// Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File   : PVGUI_Module.h
+// Author : Sergey ANIKIN
+//
+
+#ifndef PVGUI_Module_H
+#define PVGUI_Module_H
+
+#include <LightApp_Module.h>
+
+class QMenu;
+class LightApp_Selection;
+class LightApp_SelectionMgr;
+class PVGUI_ProcessModuleHelper;
+class vtkPVMain;
+class pqOptions;
+
+class PVGUI_Module: public LightApp_Module
+{
+  Q_OBJECT
+   
+  //! Menu actions
+  /*enum { 
+    lgLoadFile = 931,   //!< load text file
+    lgSaveFile,         //!< save text file
+    lgDisplayLine,      //!< display selected line
+    lgEraseLine,        //!< erase selected line
+    lgEditLine,         //!< edit selected line
+    lgAddLine,          //!< insert new line
+    lgDelLine,          //!< delete selected line
+    lgClear             //!< clear all contents
+    };*/
+
+public:
+  PVGUI_Module();
+  ~PVGUI_Module();
+
+  virtual void           initialize( CAM_Application* );
+  virtual void           windows( QMap<int, int>& ) const;
+
+  //virtual LightApp_Selection* createSelection() const;
+
+protected:
+  //virtual CAM_DataModel* createDataModel();
+
+private:
+  //! Initialize ParaView if not yet done (once per session)
+  static bool            pvInit();  
+  //! Shutdown ParaView, should be called on application exit
+  static void            pvShutdown();   
+  //! Create actions for ParaView GUI operations
+  //! duplicating menus and toolbars in pqMainWindow ParaView class
+  void                   pvCreateActions();           
+
+public slots:
+  virtual bool           activateModule( SUIT_Study* );
+  virtual bool           deactivateModule( SUIT_Study* );
+
+private:
+  static vtkPVMain*                 myPVMain;
+  static pqOptions*                 myPVOptions;
+  static PVGUI_ProcessModuleHelper* myPVHelper;
+};
+
+#endif // PVGUI_Module_H
diff --git a/src/PVGUI/PVGUI_ProcessModuleHelper.cxx b/src/PVGUI/PVGUI_ProcessModuleHelper.cxx
new file mode 100644 (file)
index 0000000..cf03dc2
--- /dev/null
@@ -0,0 +1,104 @@
+// File:       PVGUI_ProcessModuleHelper.cxx
+// Created:    Tue Nov 11 13:03:19 2008
+// Author:     Sergey ANIKIN
+//             <san@portrex.nnov.opencascade.com>
+
+
+#include "PVGUI_ProcessModuleHelper.h"
+
+//#include <pqApplicationCore.h>
+#include <vtkObjectFactory.h>
+//#include <vtkPVConfig.h>
+
+vtkStandardNewMacro(PVGUI_ProcessModuleHelper);
+vtkCxxRevisionMacro(PVGUI_ProcessModuleHelper, "$Revision$");
+
+//-----------------------------------------------------------------------------
+PVGUI_ProcessModuleHelper::PVGUI_ProcessModuleHelper()
+{
+}
+
+//-----------------------------------------------------------------------------
+PVGUI_ProcessModuleHelper::~PVGUI_ProcessModuleHelper()
+{
+}
+
+//-----------------------------------------------------------------------------
+void PVGUI_ProcessModuleHelper::PrintSelf(ostream& os, vtkIndent indent)
+{
+  this->Superclass::PrintSelf(os, indent);
+}
+
+//-----------------------------------------------------------------------------
+bool PVGUI_ProcessModuleHelper::compareView(const QString& ReferenceImage,
+  double Threshold, ostream& Output, const QString& TempDirectory)
+{
+  // TODO: to be implemented...
+  //if(MainWindow* const main_window = qobject_cast<MainWindow*>(this->GetMainWindow()))
+  //{
+  //  return main_window->compareView(ReferenceImage, Threshold, Output, TempDirectory);
+  //}
+  
+  return false;
+}
+
+//-----------------------------------------------------------------------------
+void PVGUI_ProcessModuleHelper::showOutputWindow()
+{
+  // Do nothing here
+}
+
+//-----------------------------------------------------------------------------
+void PVGUI_ProcessModuleHelper::showWindow()
+{
+}
+
+//-----------------------------------------------------------------------------
+void PVGUI_ProcessModuleHelper::hideWindow()
+{
+}
+
+//-----------------------------------------------------------------------------
+int PVGUI_ProcessModuleHelper::InitializeApplication(int argc, char** argv)
+{
+  if ( pqProcessModuleGUIHelper::InitializeApplication( argc, argv ) ){
+    // TODO: Redirect VTK debug output to SALOME GUI message console ...
+    /*this->Implementation->OutputWindow = new pqOutputWindow(0);
+    this->Implementation->OutputWindow->setAttribute(Qt::WA_QuitOnClose, false);
+    this->Implementation->OutputWindow->connect(this->Implementation->OutputWindowAdapter,
+                                                SIGNAL(displayText(const QString&)), SLOT(onDisplayText(const QString&)));
+    this->Implementation->OutputWindow->connect(this->Implementation->OutputWindowAdapter,
+                                                SIGNAL(displayErrorText(const QString&)), SLOT(onDisplayErrorText(const QString&)));
+    this->Implementation->OutputWindow->connect(this->Implementation->OutputWindowAdapter,
+                                                SIGNAL(displayWarningText(const QString&)), SLOT(onDisplayWarningText(const QString&)));
+    this->Implementation->OutputWindow->connect(this->Implementation->OutputWindowAdapter,
+                                                SIGNAL(displayGenericWarningText(const QString&)), SLOT(onDisplayGenericWarningText(const QString&)));
+    vtkOutputWindow::SetInstance(Implementation->OutputWindowAdapter);*/
+  }
+
+  return 1;
+}
+
+//-----------------------------------------------------------------------------
+int PVGUI_ProcessModuleHelper::appExec()
+{
+  return 0;
+}
+
+//-----------------------------------------------------------------------------
+int PVGUI_ProcessModuleHelper::postAppExec()
+{
+  return 0;
+}
+
+//-----------------------------------------------------------------------------
+QWidget* PVGUI_ProcessModuleHelper::CreateMainWindow()
+{
+  return 0;
+}
+
+//-----------------------------------------------------------------------------
+void PVGUI_ProcessModuleHelper::ExitApplication()
+{
+  // Cannot exit here, so do nothing
+}
diff --git a/src/PVGUI/PVGUI_ProcessModuleHelper.h b/src/PVGUI/PVGUI_ProcessModuleHelper.h
new file mode 100644 (file)
index 0000000..0206e41
--- /dev/null
@@ -0,0 +1,86 @@
+// PARAVIS : ParaView wrapper SALOME module
+//
+// Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File   : PVGUI_ProcessModuleHelper.h
+// Author : Sergey ANIKIN
+//
+
+#ifndef PVGUI_ProcessModuleHelper_H
+#define PVGUI_ProcessModuleHelper_H
+
+#include <pqProcessModuleGUIHelper.h>
+
+/*! 
+  \class PVGUI_ProcessModuleHelper
+  The key element of ParaView integration into SALOME GUI.
+  Sub-classes pqProcessModuleGUIHelper with the following main features:
+  \li No main window is created by this class
+  \li Qt event loop is run outside this class
+  \li ParaView messages are redirected to SALOME GUI message console
+  \li Client-server architecture is intialized and used as in any ParaView client
+ */
+class PVGUI_ProcessModuleHelper : public pqProcessModuleGUIHelper
+{
+public:
+  static PVGUI_ProcessModuleHelper* New();
+  vtkTypeRevisionMacro(PVGUI_ProcessModuleHelper, pqProcessModuleGUIHelper);
+  void PrintSelf(ostream& os, vtkIndent indent);
+
+
+  //! Compares the contents of the window with the given reference image, returns true iff they "match" within some tolerance
+  virtual  bool compareView(const QString& ReferenceImage, double Threshold, ostream& Output, const QString& TempDirectory);
+
+  //! Redefined to supress showing a default output window, as the messages are redirected
+  //! to SALOME GUI message console
+  virtual void showOutputWindow();
+
+  //! Stub for main window
+  virtual void showWindow();
+  //! Stub for main window
+  virtual void hideWindow();
+
+protected:
+  //! Calls the base implementation and then creates a custom output window adaptor
+  virtual int InitializeApplication(int argc, char** argv);
+
+  //! Redefined to prevent QApplication::exec() call
+  virtual int appExec();
+
+  //! Redefined to do nothing at the end of RunGUIStart().
+  //! FinalizeApplication() should be called when the SALOME module
+  //! is destroyed.
+  virtual int postAppExec();
+
+  PVGUI_ProcessModuleHelper();
+  ~PVGUI_ProcessModuleHelper();
+
+  //! Stub for main window, returns a null pointer
+  virtual QWidget* CreateMainWindow();
+
+  //! Called by vtkProcessModule,  but we cannot exit here.
+  virtual void ExitApplication();
+
+private:
+  PVGUI_ProcessModuleHelper(const PVGUI_ProcessModuleHelper&); // Not implemented.
+  void operator=(const PVGUI_ProcessModuleHelper&); // Not implemented.
+};
+
+#endif
diff --git a/src/PVGUI/resources/PARAVIS_images.ts b/src/PVGUI/resources/PARAVIS_images.ts
new file mode 100644 (file)
index 0000000..fe70669
--- /dev/null
@@ -0,0 +1,17 @@
+<!DOCTYPE TS><TS>
+<context>
+    <name>@default</name>
+    <message>
+        <source>ICON_LIGHT</source>
+        <translation>LIGHT.png</translation>
+    </message>
+    <message>
+        <source>ICON_LINE</source>
+        <translation>line_icon.png</translation>
+    </message>
+    <message>
+        <source>ICON_PARAGRAPH</source>
+        <translation>paragraph_icon.png</translation>
+    </message>
+</context>
+</TS>
diff --git a/src/PVGUI/resources/PARAVIS_msg_en.ts b/src/PVGUI/resources/PARAVIS_msg_en.ts
new file mode 100644 (file)
index 0000000..eb885a4
--- /dev/null
@@ -0,0 +1,188 @@
+<!DOCTYPE TS><TS>
+<context>
+    <name>@default</name>
+    <message>
+        <source>TOP_CLEAR_ALL</source>
+        <translation>Clear all</translation>
+    </message>
+    <message>
+        <source>STB_CLEAR_ALL</source>
+        <translation>Remove all text lines</translation>
+    </message>
+    <message>
+        <source>STB_SAVE_FILE</source>
+        <translation>Save text file</translation>
+    </message>
+    <message>
+        <source>TOP_SAVE_FILE</source>
+        <translation>Save text file</translation>
+    </message>
+    <message>
+        <source>MEN_LIGHT</source>
+        <translation>LIGHT</translation>
+    </message>
+    <message>
+        <source>MEN_LOAD_FILE</source>
+        <translation>Load text file</translation>
+    </message>
+    <message>
+        <source>WRN_UNKNOWN_COMMAND</source>
+        <translation>Unrecognized command!</translation>
+    </message>
+    <message>
+        <source>BUT_OK</source>
+        <translation>&amp;OK</translation>
+    </message>
+    <message>
+        <source>WRN_ADD_FAILED</source>
+        <translation>Can&apos;t insert line!</translation>
+    </message>
+    <message>
+        <source>STB_DISPLAY_LINE</source>
+        <translation>Display selected line</translation>
+    </message>
+    <message>
+        <source>TOP_DISPLAY_LINE</source>
+        <translation>Display line</translation>
+    </message>
+    <message>
+        <source>MEN_DISPLAY_LINE</source>
+        <translation>Display selected line</translation>
+    </message>
+    <message>
+        <source>STB_ERASE_LINE</source>
+        <translation>Erase selected line</translation>
+    </message>
+    <message>
+        <source>TOP_ERASE_LINE</source>
+        <translation>Erase line</translation>
+    </message>
+    <message>
+        <source>MEN_ERASE_LINE</source>
+        <translation>Erase selected line</translation>
+    </message>
+    <message>
+        <source>STB_EDIT_LINE</source>
+        <translation>Edit selected line</translation>
+    </message>
+    <message>
+        <source>WRN_EDIT_FAILED</source>
+        <translation>Can&apos;t edit line!</translation>
+    </message>
+    <message>
+        <source>WRN_DUMP_FAILED</source>
+        <translation>Dumping file is failed!</translation>
+    </message>
+    <message>
+        <source>WRN_LOAD_FAILED</source>
+        <translation>Loading file is failed!</translation>
+    </message>
+    <message>
+        <source>TOP_EDIT_LINE</source>
+        <translation>Edit line</translation>
+    </message>
+    <message>
+        <source>MEN_CLEAR_ALL</source>
+        <translation>Clear all</translation>
+    </message>
+    <message>
+        <source>MEN_FILE</source>
+        <translation>&amp;File</translation>
+    </message>
+    <message>
+        <source>LIGHT_ROOT_TOOLTIP</source>
+        <translation>LIGHT module root object</translation>
+    </message>
+    <message>
+        <source>LIGHT_LIGHT</source>
+        <translation>LIGHT</translation>
+    </message>
+    <message>
+        <source>MEN_SAVE_FILE</source>
+        <translation>Save text file</translation>
+    </message>
+    <message>
+        <source>WRN_WARNING</source>
+        <translation>Warning!</translation>
+    </message>
+    <message>
+        <source>WRN_DELETE_FAILED</source>
+        <translation>Can&apos;t delete line</translation>
+    </message>
+    <message>
+        <source>WRN_SELECT_LINE</source>
+        <translation>Wrong selection!</translation>
+    </message>
+    <message>
+        <source>TOP_LOAD_FILE</source>
+        <translation>Load text file</translation>
+    </message>
+    <message>
+        <source>TOP_ADD_LINE</source>
+        <translation>Add line</translation>
+    </message>
+    <message>
+        <source>MEN_DEL_LINE</source>
+        <translation>Remove line</translation>
+    </message>
+    <message>
+        <source>STB_LOAD_FILE</source>
+        <translation>Load text file</translation>
+    </message>
+    <message>
+        <source>STB_ADD_LINE</source>
+        <translation>Insert new line before the selected one</translation>
+    </message>
+    <message>
+        <source>LIGHT_PARAGRAPH</source>
+        <translation>Paragraph</translation>
+    </message>
+    <message>
+        <source>TOP_DEL_LINE</source>
+        <translation>Remove line</translation>
+    </message>
+    <message>
+        <source>MEN_ADD_LINE</source>
+        <translation>Insert new text line</translation>
+    </message>
+    <message>
+        <source>LIGHT_LINE</source>
+        <translation>Line</translation>
+    </message>
+    <message>
+        <source>STB_DEL_LINE</source>
+        <translation>Remove selected line</translation>
+    </message>
+    <message>
+        <source>MEN_EDIT_LINE</source>
+        <translation>Edit selected line</translation>
+    </message>
+</context>
+<context>
+    <name>LIGHTGUI</name>
+    <message>
+        <source>LIGHTGUI_ADD_LINE</source>
+        <translation>Add new line before the selected one</translation>
+    </message>
+    <message>
+        <source>LIGHTGUI_MEN_DUMP</source>
+        <translation>Dump</translation>
+    </message>
+    <message>
+        <source>LIGHTGUI_MEN_LOAD</source>
+        <translation>Load</translation>
+    </message>
+    <message>
+        <source>LIGHTGUI_MEN_TXT_FILES</source>
+        <translation>Text Files ( *.txt )</translation>
+    </message>
+    <message>
+        <source>LIGHTGUI_EDIT_LINE</source>
+        <translation>Edit selected line</translation>
+    </message>
+    <message>
+        <source>LIGHTGUI_MEN_ALL_FILES</source>
+        <translation>All Files ( * )</translation>
+    </message>
+</context>
+</TS>