From c764fe84cc76dff8ed1c633b573ea3939ce8506b Mon Sep 17 00:00:00 2001 From: mdb Date: Sun, 13 Mar 2005 22:42:32 +0000 Subject: [PATCH] Moved to separate repository. git-svn-id: https://samskivert.googlecode.com/svn/trunk@1620 6335cc39-0255-0410-8fd6-9bcaacd3b74c --- projects/lookuplet/.cvsignore | 22 - projects/lookuplet/AUTHORS | 1 - projects/lookuplet/COPYING | 280 --------- projects/lookuplet/ChangeLog | 74 --- projects/lookuplet/INSTALL | 46 -- projects/lookuplet/Makefile.am | 8 - projects/lookuplet/NEWS | 22 - projects/lookuplet/README | 72 --- projects/lookuplet/TODO | 6 - projects/lookuplet/acconfig.h | 15 - projects/lookuplet/autogen.sh | 19 - projects/lookuplet/configure.in | 30 - projects/lookuplet/debian/changelog | 23 - projects/lookuplet/debian/control | 13 - projects/lookuplet/debian/copyright | 19 - projects/lookuplet/debian/dirs | 3 - projects/lookuplet/debian/docs | 1 - projects/lookuplet/debian/menu | 2 - projects/lookuplet/debian/rules | 52 -- projects/lookuplet/lookuplet.glade | 559 ------------------ projects/lookuplet/src/.cvsignore | 6 - projects/lookuplet/src/Makefile | 410 ------------- projects/lookuplet/src/Makefile.am | 29 - projects/lookuplet/src/Makefile.in | 410 ------------- projects/lookuplet/src/about.cc | 9 - projects/lookuplet/src/about.hh | 18 - projects/lookuplet/src/about_glade.cc | 30 - projects/lookuplet/src/about_glade.hh | 24 - projects/lookuplet/src/binding.cc | 21 - projects/lookuplet/src/binding.hh | 22 - projects/lookuplet/src/binding_glade.cc | 119 ---- projects/lookuplet/src/binding_glade.hh | 34 -- projects/lookuplet/src/c/binding.c | 209 ------- projects/lookuplet/src/c/binding.h | 68 --- projects/lookuplet/src/c/history.c | 118 ---- projects/lookuplet/src/c/history.h | 59 -- projects/lookuplet/src/c/keysym-util.c | 165 ------ projects/lookuplet/src/c/keysym-util.h | 36 -- projects/lookuplet/src/c/launcher.c | 160 ----- projects/lookuplet/src/c/launcher.h | 32 - projects/lookuplet/src/c/lookuplet.c | 146 ----- projects/lookuplet/src/c/lookuplet.h | 28 - projects/lookuplet/src/c/preferences.c | 461 --------------- projects/lookuplet/src/c/preferences.h | 43 -- projects/lookuplet/src/c/querybox.c | 287 --------- projects/lookuplet/src/c/querybox.h | 33 -- projects/lookuplet/src/gnome-lookuplet.xpm | 103 ---- projects/lookuplet/src/lookuplet.cc | 71 --- projects/lookuplet/src/lookuplet.desktop | 7 - projects/lookuplet/src/lookuplet.gnorba | 5 - projects/lookuplet/src/lookuplet.hh | 18 - projects/lookuplet/src/lookuplet_glade.cc | 54 -- projects/lookuplet/src/lookuplet_glade.hh | 29 - projects/lookuplet/src/properties.cc | 21 - projects/lookuplet/src/properties.hh | 18 - projects/lookuplet/src/properties_glade.cc | 108 ---- projects/lookuplet/src/properties_glade.hh | 31 - projects/lookuplet/src/python/bindings.py | 176 ------ projects/lookuplet/src/python/edit_binding.py | 156 ----- projects/lookuplet/src/python/history.py | 90 --- projects/lookuplet/src/python/keyval_util.py | 62 -- projects/lookuplet/src/python/lookuplet | 71 --- projects/lookuplet/src/python/lookuplet.py | 272 --------- projects/lookuplet/src/python/properties.py | 160 ----- 64 files changed, 5696 deletions(-) delete mode 100644 projects/lookuplet/.cvsignore delete mode 100644 projects/lookuplet/AUTHORS delete mode 100644 projects/lookuplet/COPYING delete mode 100644 projects/lookuplet/ChangeLog delete mode 100644 projects/lookuplet/INSTALL delete mode 100644 projects/lookuplet/Makefile.am delete mode 100644 projects/lookuplet/NEWS delete mode 100644 projects/lookuplet/README delete mode 100644 projects/lookuplet/TODO delete mode 100644 projects/lookuplet/acconfig.h delete mode 100755 projects/lookuplet/autogen.sh delete mode 100644 projects/lookuplet/configure.in delete mode 100644 projects/lookuplet/debian/changelog delete mode 100644 projects/lookuplet/debian/control delete mode 100644 projects/lookuplet/debian/copyright delete mode 100644 projects/lookuplet/debian/dirs delete mode 100644 projects/lookuplet/debian/docs delete mode 100644 projects/lookuplet/debian/menu delete mode 100755 projects/lookuplet/debian/rules delete mode 100644 projects/lookuplet/lookuplet.glade delete mode 100644 projects/lookuplet/src/.cvsignore delete mode 100644 projects/lookuplet/src/Makefile delete mode 100644 projects/lookuplet/src/Makefile.am delete mode 100644 projects/lookuplet/src/Makefile.in delete mode 100644 projects/lookuplet/src/about.cc delete mode 100644 projects/lookuplet/src/about.hh delete mode 100644 projects/lookuplet/src/about_glade.cc delete mode 100644 projects/lookuplet/src/about_glade.hh delete mode 100644 projects/lookuplet/src/binding.cc delete mode 100644 projects/lookuplet/src/binding.hh delete mode 100644 projects/lookuplet/src/binding_glade.cc delete mode 100644 projects/lookuplet/src/binding_glade.hh delete mode 100644 projects/lookuplet/src/c/binding.c delete mode 100644 projects/lookuplet/src/c/binding.h delete mode 100644 projects/lookuplet/src/c/history.c delete mode 100644 projects/lookuplet/src/c/history.h delete mode 100644 projects/lookuplet/src/c/keysym-util.c delete mode 100644 projects/lookuplet/src/c/keysym-util.h delete mode 100644 projects/lookuplet/src/c/launcher.c delete mode 100644 projects/lookuplet/src/c/launcher.h delete mode 100644 projects/lookuplet/src/c/lookuplet.c delete mode 100644 projects/lookuplet/src/c/lookuplet.h delete mode 100644 projects/lookuplet/src/c/preferences.c delete mode 100644 projects/lookuplet/src/c/preferences.h delete mode 100644 projects/lookuplet/src/c/querybox.c delete mode 100644 projects/lookuplet/src/c/querybox.h delete mode 100644 projects/lookuplet/src/gnome-lookuplet.xpm delete mode 100644 projects/lookuplet/src/lookuplet.cc delete mode 100755 projects/lookuplet/src/lookuplet.desktop delete mode 100755 projects/lookuplet/src/lookuplet.gnorba delete mode 100644 projects/lookuplet/src/lookuplet.hh delete mode 100644 projects/lookuplet/src/lookuplet_glade.cc delete mode 100644 projects/lookuplet/src/lookuplet_glade.hh delete mode 100644 projects/lookuplet/src/properties.cc delete mode 100644 projects/lookuplet/src/properties.hh delete mode 100644 projects/lookuplet/src/properties_glade.cc delete mode 100644 projects/lookuplet/src/properties_glade.hh delete mode 100644 projects/lookuplet/src/python/bindings.py delete mode 100644 projects/lookuplet/src/python/edit_binding.py delete mode 100644 projects/lookuplet/src/python/history.py delete mode 100644 projects/lookuplet/src/python/keyval_util.py delete mode 100755 projects/lookuplet/src/python/lookuplet delete mode 100644 projects/lookuplet/src/python/lookuplet.py delete mode 100644 projects/lookuplet/src/python/properties.py diff --git a/projects/lookuplet/.cvsignore b/projects/lookuplet/.cvsignore deleted file mode 100644 index 445684d7..00000000 --- a/projects/lookuplet/.cvsignore +++ /dev/null @@ -1,22 +0,0 @@ -Makefile -Makefile.in -aclocal.m4 -config.cache -config.h -config.h.in -config.log -config.status -configure -stamp-h -stamp-h.in -ABOUT-NLS -config.guess -config.sub -intl -libtool -ltmain.sh -po -*.tar.gz -*_new -*.gladep -autom4te.cache diff --git a/projects/lookuplet/AUTHORS b/projects/lookuplet/AUTHORS deleted file mode 100644 index 78214152..00000000 --- a/projects/lookuplet/AUTHORS +++ /dev/null @@ -1 +0,0 @@ -Michael Bayne diff --git a/projects/lookuplet/COPYING b/projects/lookuplet/COPYING deleted file mode 100644 index 5a965fbc..00000000 --- a/projects/lookuplet/COPYING +++ /dev/null @@ -1,280 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS diff --git a/projects/lookuplet/ChangeLog b/projects/lookuplet/ChangeLog deleted file mode 100644 index 7197f087..00000000 --- a/projects/lookuplet/ChangeLog +++ /dev/null @@ -1,74 +0,0 @@ -2002-03-17 Michael Bayne - - * src/history.py: Added persistent history support and tab - completion (from the history) to the query box text field. Yay! - - * various: Rewrote the whole business in Python, using Glade to - create the user interface. Oh, the joy of being rid of C. - -2001-08-21 Michael Bayne - - * src/querybox.c: Massage the selection somewhat by converting - newlines to spaces and if we believe that we're looking at a URL, - by removing spaces. - -2001-08-17 Michael Bayne - - * src/lookuplet.c: Got support for running as an applet working - again and modified the code to autodetect whether we're being run - as an applet. - -2001-08-16 Michael Bayne - - * projects/lookuplet/src/lookuplet.c: - Now that we're not an applet, we need to call gnome_init() rather than - gtk_init(). Also slipped in some conditionals for the NLS stuff. - - * projects/lookuplet/acconfig.h, projects/lookuplet/configure.in: - Minor configuration to make things work. I dislike the cargo cult nature - of my approach toward autoconf, but I can't be bothered to dive deeply - enough into the whole business to sort out all the jockeying that GNOME - and the various other layers are doing with it. - - * projects/lookuplet/.cvsignore, projects/lookuplet/Makefile.am, projects/lookuplet/acconfig.h, projects/lookuplet/configure.in, projects/lookuplet/src/Makefile.am: - Modifications to build lookuplet like a GNOME app rather than an applet. - -2001-03-10 Michael Bayne - - * projects/lookuplet/src/querybox.c: - Exit after launching unless we're being compiled in applet mode (which - isn't fully reinstated yet anyway). - - * projects/lookuplet/src/querybox.c: - Prune whitespace from the end of the selection before inserting it into - the lookuplet text widget. - -2002/12/1 19:02:48 PST - update files from .glade file - -2002/12/1 19:12:49 PST - update files from .glade file - -2002/12/1 19:29:15 PST - update files from .glade file - -2002/12/1 19:52:51 PST - update files from .glade file - -2002/12/1 19:52:55 PST - update files from .glade file - -2002/12/1 21:01:21 PST - update files from .glade file - -2002/12/1 21:01:25 PST - update files from .glade file - -2002/12/1 21:35:16 PST - update files from .glade file - -2002/12/1 21:53:51 PST - update files from .glade file - -2002/12/1 21:56:20 PST - update files from .glade file diff --git a/projects/lookuplet/INSTALL b/projects/lookuplet/INSTALL deleted file mode 100644 index a08c4f5a..00000000 --- a/projects/lookuplet/INSTALL +++ /dev/null @@ -1,46 +0,0 @@ -Building lookuplet ------------------- - -lookuplet is in the process of being rewritten in C++ using GLADE to -autogenerate code for the UI. As such you will need a variety of libraries -installed to build the program. - -I use Debian Woody and I believe apt-get installing the following packages -will get you to where you need to be: - - gnome-common - automake - autoconf - libgtk2.0-dev - libgnomemm2.0-dev - libgnomeuimm2.0-dev - -I'm not sure whether there will be some missed dependencies, let me know -if you start from scratch and find some. - -With that installed, invoke: - -% ./autogen.sh - -which will do a bunch of stuff and eventually run ./configure. You can -pass arguments to ./autogen.sh like --prefix to install somewhere other -than /usr/local. Then you can: - -% make - -which should build lookuplet which you can attempt to run like so: - -% ./src/lookuplet - -If that seems to work, then you can install it with: - -% make install - -Please let me know if you find that I've overlooked some build -requirements or instructions. - -Thanks, - - Michael Bayne - -$Id: INSTALL,v 1.6 2003/11/28 21:38:13 mdb Exp $ diff --git a/projects/lookuplet/Makefile.am b/projects/lookuplet/Makefile.am deleted file mode 100644 index e7c7861e..00000000 --- a/projects/lookuplet/Makefile.am +++ /dev/null @@ -1,8 +0,0 @@ -# generated 2002/12/1 21:01:25 PST by mdb@baltic.(none) -# using glademm V1.1.3c_cvs -AUTOMAKE_OPTIONS = 1.4 - - -SUBDIRS = src - -EXTRA_DIST = AUTHORS TODO README configure diff --git a/projects/lookuplet/NEWS b/projects/lookuplet/NEWS deleted file mode 100644 index 44ef0d62..00000000 --- a/projects/lookuplet/NEWS +++ /dev/null @@ -1,22 +0,0 @@ -* lookuplet-1.2 (2002-03-17) - -- Added history support along with tab completion from the history. - -- Rewrote the whole thing in Python. - -- Convert newlines to spaces when grabbing the selection. If we think that - the selection is a URL (it starts with http: etc.), then we remove - spaces as well. - -* lookuplet-1.1 (2001-08-17) - -- Fixed support for running as an applet and made the code automatically - figure out whether or not do so. - -- Sorted out building things as a Debian package. - -* lookuplet-1.0 (2001-08-16) - -- Initial release. - -$Id: NEWS,v 1.5 2002/03/17 21:30:19 mdb Exp $ diff --git a/projects/lookuplet/README b/projects/lookuplet/README deleted file mode 100644 index c3d05823..00000000 --- a/projects/lookuplet/README +++ /dev/null @@ -1,72 +0,0 @@ -lookuplet ---------- - -This GNOME application provides a unified interface for looking things up. -There are many applications (desktop and web-based) in which you enter -some text and they return some information based on that text. Examples -include: - - * Looking a word up in a dictionary - * Performing a web search - * Performing a more specific search (searching Debian packages or on - freshmeat.net, etc.) - * Looking up an address in a mapping service - -The lookuplet aims to make all of those services readily accessible in as -efficient a manner as possible. - -Using lookuplet ---------------- - -When invoked, lookuplet grabs the current selection and sticks it into a -text field for potential editing. You then press a key combination that -you have previously configured and the text is sent either as an argument -to an application or URL encoded and substituted into a URL which is then -opened with your preferred web browser. - -This interface is based on the emacs principle of typing as few characters -as possible to perform tasks that are done frequently. I find myself -looking things up in various applications all of the time and the overhead -of creating a new browser window, selecting a bookmark, clicking into the -text entry field, entering the text and then pressing submit struck me as -tremendously inefficient. - -The expectation is that you'll configure your window manager to launch -lookuplet at the press of some key combination so that from any -application, you can simply highlight text, press the lookuplet key -combination and then press the key combination of your desired service. -With such a configuration, the process of looking up information becomes -extremely efficient in terms of key presses and mouse clicks. - -lookuplet can also be loaded into the GNOME toolbar as an applet instead -of being run standalone. In that configuration it doesn't grab the -selection when it starts up, but instead assumes you'll be pasting text -into it's text field before pressing a key combination. - -The key combinations used by lookuplet and the associated launch -configuration are maintained via a simple graphical user interface. - -Building lookuplet ------------------- - -Look at the INSTALL file for build instructions. - -Distribution ------------- - -This program is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the Free -Software Foundation; either version 2 of the License, or (at your option) -any later version. - -Contact Information -------------------- - -Feedback on the program is welcome. Additional information and the latest -release is available at . - -Enjoy, - - Michael Bayne - -$Id: README,v 1.4 2001/08/18 02:39:36 mdb Exp $ diff --git a/projects/lookuplet/TODO b/projects/lookuplet/TODO deleted file mode 100644 index 0dbbfa18..00000000 --- a/projects/lookuplet/TODO +++ /dev/null @@ -1,6 +0,0 @@ -TODO: - -* Finish C++ rewrite - -* Allow configuration of the default action (the one invoked when the user - presses return). diff --git a/projects/lookuplet/acconfig.h b/projects/lookuplet/acconfig.h deleted file mode 100644 index b12e65fd..00000000 --- a/projects/lookuplet/acconfig.h +++ /dev/null @@ -1,15 +0,0 @@ -// generated 2002/12/1 21:01:25 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs - -/* acconfig.h - * This file is in the public domain. - * - * Descriptive text for the C preprocessor macros that - * the distributed Autoconf macros can define. - * These entries are sometimes used by macros - * which glade-- uses. - */ -#undef PACKAGE -#undef VERSION -#undef PACKAGE_DATA_DIR -#undef PACKAGE_SOURCE_DIR diff --git a/projects/lookuplet/autogen.sh b/projects/lookuplet/autogen.sh deleted file mode 100755 index 3584e080..00000000 --- a/projects/lookuplet/autogen.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh -# Run this to generate all the initial makefiles, etc. - -srcdir=`dirname $0` -test -z "$srcdir" && srcdir=. - -PKG_NAME="the package." - -(test -f $srcdir/configure.in) || { - echo -n "**Error**: Directory "\`$srcdir\'" does not look like the" - echo " top-level directory" - exit 1 -} - -which gnome-autogen.sh || { - echo "You need to install gnome-common from the GNOME CVS" - exit 1 -} -USE_GNOME2_MACROS=1 . gnome-autogen.sh diff --git a/projects/lookuplet/configure.in b/projects/lookuplet/configure.in deleted file mode 100644 index 9cb640cf..00000000 --- a/projects/lookuplet/configure.in +++ /dev/null @@ -1,30 +0,0 @@ -# generated 2002/12/1 21:01:25 PST by mdb@baltic.(none) -# using glademm V1.1.3c_cvs - -AC_INIT(src/lookuplet.cc) -AM_INIT_AUTOMAKE(lookuplet, 0.0) -AM_CONFIG_HEADER(config.h) - -AC_ISC_POSIX -AC_PROG_CC -AM_PROG_CC_STDC -AC_HEADER_STDC -AC_PROG_CPP -AC_PROG_CXX -AC_PROG_CXXCPP -AM_PROG_LIBTOOL - -# GNOME--: -# (These macros are in the 'macros' directory) -# GNOME_INIT sets the GNOME_CONFIG variable, among other things: -GNOME_INIT -GNOME_COMMON_INIT -GNOME_COMPILE_WARNINGS -AC_LANG_CPLUSPLUS - -GNOMEMM_CFLAGS="`pkg-config --cflags libgnomemm-2.0 libgnomeuimm-2.0`" -GNOMEMM_LIBS="`pkg-config --libs libgnomemm-2.0 libgnomeuimm-2.0`" -AC_SUBST(GNOMEMM_CFLAGS) -AC_SUBST(GNOMEMM_LIBS) - -AC_OUTPUT(Makefile src/Makefile ) diff --git a/projects/lookuplet/debian/changelog b/projects/lookuplet/debian/changelog deleted file mode 100644 index 87ed190d..00000000 --- a/projects/lookuplet/debian/changelog +++ /dev/null @@ -1,23 +0,0 @@ -lookuplet (1.3-1) unstable; urgency=low - - * New upstream version: updated to work with Gnome 2.0. - - -- Michael Bayne Sun, 24 Nov 2002 21:10:04 -0800 - -lookuplet (1.2-1) unstable; urgency=low - - * New upstream version: rewritten entirely in Python. - - -- Michael Bayne Sun, 17 Mar 2002 02:10:12 -0800 - -lookuplet (1.1-1) unstable; urgency=low - - * New upstream version; supports operation as GNOME applet. - - -- Michael Bayne Fri, 17 Aug 2001 19:48:08 -0700 - -lookuplet (1.0-1) unstable; urgency=low - - * Initial Release. - - -- Michael Bayne Fri, 17 Aug 2001 13:00:58 -0800 diff --git a/projects/lookuplet/debian/control b/projects/lookuplet/debian/control deleted file mode 100644 index 2aeb30c3..00000000 --- a/projects/lookuplet/debian/control +++ /dev/null @@ -1,13 +0,0 @@ -Source: lookuplet -Build-Depends: debhelper -Section: net -Priority: optional -Maintainer: Michael Bayne -Standards-Version: 3.5.6.0 - -Package: lookuplet -Architecture: any -Depends: python-gnome2 (>= 1.99.13-2) -Description: Keystroke conscious query launching utility - lookuplet is a graphical utility that allows you to enter query terms and - press predefined key-combinations to launch web queries or applications. diff --git a/projects/lookuplet/debian/copyright b/projects/lookuplet/debian/copyright deleted file mode 100644 index 275a0e6c..00000000 --- a/projects/lookuplet/debian/copyright +++ /dev/null @@ -1,19 +0,0 @@ -lookuplet - a utility for quickly looking up information -Copyright (C) 2001 Michael Bayne - -This is free software; you can redistribute it and/or modify it under -the terms of the GNU General Public License as published by the Free -Software Foundation; either version 2, or (at your option) any later -version. - -This is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License with -your Debian GNU/Linux system, in /usr/share/common-licenses/GPL, or with the -lookuplet source package as the file COPYING. If not, write to the Free -Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -02111-1307, USA. - diff --git a/projects/lookuplet/debian/dirs b/projects/lookuplet/debian/dirs deleted file mode 100644 index adc5824e..00000000 --- a/projects/lookuplet/debian/dirs +++ /dev/null @@ -1,3 +0,0 @@ -usr/bin -usr/share/lookuplet -usr/share/doc/lookuplet diff --git a/projects/lookuplet/debian/docs b/projects/lookuplet/debian/docs deleted file mode 100644 index 1859e18e..00000000 --- a/projects/lookuplet/debian/docs +++ /dev/null @@ -1 +0,0 @@ -NEWS README diff --git a/projects/lookuplet/debian/menu b/projects/lookuplet/debian/menu deleted file mode 100644 index 884b851a..00000000 --- a/projects/lookuplet/debian/menu +++ /dev/null @@ -1,2 +0,0 @@ -?package(lookuplet):needs=X11 section=Apps/Tools\ - title="lookuplet" command="/usr/bin/lookuplet" diff --git a/projects/lookuplet/debian/rules b/projects/lookuplet/debian/rules deleted file mode 100755 index 89886089..00000000 --- a/projects/lookuplet/debian/rules +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/make -f -# Made with the aid of dh_make, by Craig Small -# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess. -# Some lines taken from debmake, by Cristoph Lameter. - -# Uncomment this to turn on verbose mode. -#export DH_VERBOSE=1 - -clean: - dh_testdir - dh_testroot - - # Add here commands to clean up after the build process. - -$(MAKE) clean - - dh_clean - -build: - # Nothing to do here - -# Build architecture-independent files here. -binary-indep: -# dh_testversion - dh_testdir - dh_testroot - dh_clean -k - dh_installdirs - - # Add here commands to install the files into debian/tmp - $(MAKE) DESTDIR=`pwd`/debian/tmp install - - dh_installdocs - dh_installexamples - dh_installmenu -# dh_installinit -# dh_installcron -# dh_installmanpages - dh_undocumented lookuplet.1 - dh_installchangelogs -# dh_strip - dh_compress - dh_fixperms - dh_installdeb - dh_shlibdeps - dh_gencontrol -# dh_makeshlibs - dh_md5sums - dh_builddeb - -binary: binary-indep - -.PHONY: clean build binary-indep binary diff --git a/projects/lookuplet/lookuplet.glade b/projects/lookuplet/lookuplet.glade deleted file mode 100644 index 917ee055..00000000 --- a/projects/lookuplet/lookuplet.glade +++ /dev/null @@ -1,559 +0,0 @@ - - - - - - - lookuplet - GTK_WINDOW_TOPLEVEL - GTK_WIN_POS_NONE - False - True - False - - - - 5 - True - False - 5 - - - - True - Query - False - False - GTK_JUSTIFY_CENTER - False - False - 0.5 - 0.5 - 0 - 0 - - - 0 - False - False - - - - - - protected - True - True - True - True - 0 - - True - * - False - - - - - 0 - True - True - - - - - - True - Prefs - True - GTK_RELIEF_NORMAL - - - - 0 - False - False - - - - - - - - 5 - Edit Binding - GTK_WINDOW_TOPLEVEL - GTK_WIN_POS_NONE - False - True - False - True - - - - True - False - 8 - - - - True - GTK_BUTTONBOX_END - - - - True - True - True - gtk-ok - True - GTK_RELIEF_NORMAL - 0 - - - - - - - True - True - True - gtk-cancel - True - GTK_RELIEF_NORMAL - 0 - - - - - - 0 - False - True - GTK_PACK_END - - - - - - True - False - 5 - - - - True - Key: - False - False - GTK_JUSTIFY_CENTER - False - False - 0.5 - 0.5 - 0 - 0 - - - 0 - False - False - - - - - - protected - True - True - True - True - 0 - - True - * - False - - - - 0 - True - True - - - - - - True - Name: - False - False - GTK_JUSTIFY_CENTER - False - False - 0.5 - 0.5 - 0 - 0 - - - 0 - False - False - - - - - - protected - True - True - True - True - 0 - - True - * - False - - - 0 - True - True - - - - - 0 - True - True - - - - - - True - Enter the URL to launch or command to invoke when this key combination is pressed: - False - False - GTK_JUSTIFY_CENTER - True - False - 0.5 - 0.5 - 0 - 0 - - - 0 - False - False - - - - - - True - False - 5 - - - - protected - True - True - 0 - - - - True - - - - True - URL - True - - - - - - True - Exec - True - - - - - - - 0 - False - False - - - - - - protected - True - True - True - True - 0 - - True - * - False - - - 0 - True - True - - - - - 0 - True - True - - - - - - True - The following can be used to insert the query terms into the URL or command line: - -%T - the plain query terms -%U - the URL encoded query terms - False - False - GTK_JUSTIFY_FILL - True - False - 0.5 - 0.5 - 0 - 0 - - - 0 - False - False - - - - - - - - False - (C) 2001-2002 Michael Bayne - This GNOME applet provides a simple means by which web and other queries can be launched with minimal typing. -- -This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. - Michael Bayne <mdb@samskivert.com> - - translator_credits - - - - 400 - True - Lookuplet Properties - GTK_WINDOW_TOPLEVEL - GTK_WIN_POS_NONE - False - True - False - - - - 5 - True - False - 5 - - - - True - True - True - True - GTK_POS_TOP - False - False - - - - 5 - True - False - 5 - - - - True - GTK_POLICY_AUTOMATIC - GTK_POLICY_AUTOMATIC - GTK_SHADOW_IN - GTK_CORNER_TOP_LEFT - - - - protected - True - True - True - False - False - True - - - - - 0 - True - True - - - - - - True - False - 5 - - - - True - False - True - Delete - True - GTK_RELIEF_NORMAL - - - - 0 - False - False - GTK_PACK_END - - - - - - True - False - True - Edit... - True - GTK_RELIEF_NORMAL - - - - 0 - False - False - GTK_PACK_END - - - - - - True - True - Add... - True - GTK_RELIEF_NORMAL - - - - 0 - False - False - GTK_PACK_END - - - - - 0 - False - True - - - - - False - True - - - - - - True - Bindings - False - False - GTK_JUSTIFY_CENTER - False - False - 0.5 - 0.5 - 0 - 0 - - - tab - - - - - 0 - True - True - - - - - - True - - - 0 - False - True - - - - - - True - GTK_BUTTONBOX_END - 0 - - - - True - True - True - gtk-close - True - GTK_RELIEF_NORMAL - - - - - - 0 - False - True - - - - - - - diff --git a/projects/lookuplet/src/.cvsignore b/projects/lookuplet/src/.cvsignore deleted file mode 100644 index 4b67561b..00000000 --- a/projects/lookuplet/src/.cvsignore +++ /dev/null @@ -1,6 +0,0 @@ -*.pyc -lookuplet.messages -*_new -.deps -.libs -lookuplet diff --git a/projects/lookuplet/src/Makefile b/projects/lookuplet/src/Makefile deleted file mode 100644 index 932cc9f1..00000000 --- a/projects/lookuplet/src/Makefile +++ /dev/null @@ -1,410 +0,0 @@ -# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am - -# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -# -# $Id: Makefile,v 1.1 2003/11/28 21:34:59 mdb Exp $ - - -SHELL = /bin/sh - -srcdir = . -top_srcdir = .. - -prefix = /usr/local -exec_prefix = ${prefix} - -bindir = ${exec_prefix}/bin -sbindir = ${exec_prefix}/sbin -libexecdir = ${exec_prefix}/libexec -datadir = ${prefix}/share -sysconfdir = ${prefix}/etc -sharedstatedir = ${prefix}/com -localstatedir = ${prefix}/var -libdir = ${exec_prefix}/lib -infodir = ${prefix}/info -mandir = ${prefix}/man -includedir = ${prefix}/include -oldincludedir = /usr/include - -DESTDIR = - -pkgdatadir = $(datadir)/lookuplet -pkglibdir = $(libdir)/lookuplet -pkgincludedir = $(includedir)/lookuplet - -top_builddir = .. - -ACLOCAL = aclocal-1.4 -I /usr/share/aclocal/gnome2-macros -AUTOCONF = autoconf -AUTOMAKE = automake-1.4 -AUTOHEADER = autoheader - -INSTALL = /usr/bin/install -c -INSTALL_PROGRAM = ${INSTALL} $(AM_INSTALL_PROGRAM_FLAGS) -INSTALL_DATA = ${INSTALL} -m 644 -INSTALL_SCRIPT = ${INSTALL} -transform = s,x,x, - -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -host_alias = -host_triplet = i686-pc-linux-gnu -AR = ar -AS = @AS@ -CC = gcc -CPP = gcc -E -CXX = g++ -CXXCPP = g++ -E -DLLTOOL = @DLLTOOL@ -ECHO = echo -EGREP = grep -E -EXEEXT = -F77 = -GCJ = @GCJ@ -GCJFLAGS = @GCJFLAGS@ -GNOMEMM_CFLAGS = -DORBIT2=1 -pthread -I/usr/include/libgnomemm-2.0 -I/usr/lib/libgnomemm-2.0/include -I/usr/include/gtkmm-2.0 -I/usr/lib/gtkmm-2.0/include -I/usr/include/libgnome-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/sigc++-1.2/include -I/usr/include/sigc++-1.2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gconf/2 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/libgnomeuimm-2.0 -I/usr/lib/libgnomeuimm-2.0/include -I/usr/include/libgnomecanvasmm-2.0 -I/usr/lib/libgnomecanvasmm-2.0/include -I/usr/include/gconfmm-2.0 -I/usr/lib/gconfmm-2.0/include -I/usr/include/libglademm-2.0 -I/usr/lib/libglademm-2.0/include -I/usr/include/libgnomeui-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/libart-2.0 -I/usr/include/libglade-2.0 -I/usr/include/libxml2 -I/usr/include/libbonoboui-2.0 -GNOMEMM_LIBS = -Wl,--export-dynamic -pthread -L/usr/X11R6/lib -lgnomeuimm-2.0 -lgnomemm-2.0 -lgnomecanvasmm-2.0 -lgconfmm-2.0 -lglademm-2.0 -lgnomeui-2 -lSM -lICE -lgtkmm-2.0 -lglade-2.0 -lgdkmm-2.0 -latkmm-1.0 -lpangomm-1.0 -lglibmm-2.0 -lsigc-1.2 -lbonoboui-2 -lxml2 -lpthread -lz -lgnomecanvas-2 -lgnome-2 -lpopt -lart_lgpl_2 -lpangoft2-1.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lbonobo-2 -lgconf-2 -lgnomevfs-2 -lbonobo-activation -lORBit-2 -lgobject-2.0 -lgthread-2.0 -lm -lgmodule-2.0 -ldl -lglib-2.0 -GNOME_ACLOCAL_DIR = /usr/share/aclocal/gnome2-macros -GNOME_ACLOCAL_FLAGS = -I /usr/share/aclocal/gnome2-macros -GTKDOC = @GTKDOC@ -HAVE_GTK_DOC = @HAVE_GTK_DOC@ -HAVE_LIB = @HAVE_LIB@ -LIB = @LIB@ -LIBTOOL = $(SHELL) $(top_builddir)/libtool -LN_S = ln -s -LTLIB = @LTLIB@ -MAKEINFO = makeinfo -OBJDUMP = @OBJDUMP@ -OBJEXT = o -PACKAGE = lookuplet -RANLIB = ranlib -RC = @RC@ -STRIP = strip -VERSION = 0.0 -WARN_CFLAGS = -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -cxxflags_set = @cxxflags_set@ - -bin_PROGRAMS = lookuplet - -lookuplet_SOURCES = lookuplet_glade.cc lookuplet.cc binding_glade.cc binding.cc about_glade.cc about.cc properties_glade.cc properties.cc - - -noinst_HEADERS = lookuplet_glade.hh lookuplet.hh binding_glade.hh binding.hh about_glade.hh about.hh properties_glade.hh properties.hh - - -CXXFLAGS = -g -O2 -DORBIT2=1 -pthread -I/usr/include/libgnomemm-2.0 -I/usr/lib/libgnomemm-2.0/include -I/usr/include/gtkmm-2.0 -I/usr/lib/gtkmm-2.0/include -I/usr/include/libgnome-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/sigc++-1.2/include -I/usr/include/sigc++-1.2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gconf/2 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/libgnomeuimm-2.0 -I/usr/lib/libgnomeuimm-2.0/include -I/usr/include/libgnomecanvasmm-2.0 -I/usr/lib/libgnomecanvasmm-2.0/include -I/usr/include/gconfmm-2.0 -I/usr/lib/gconfmm-2.0/include -I/usr/include/libglademm-2.0 -I/usr/lib/libglademm-2.0/include -I/usr/include/libgnomeui-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/libart-2.0 -I/usr/include/libglade-2.0 -I/usr/include/libxml2 -I/usr/include/libbonoboui-2.0 -LDFLAGS = - -lookuplet_LDADD = -Wl,--export-dynamic -pthread -L/usr/X11R6/lib -lgnomeuimm-2.0 -lgnomemm-2.0 -lgnomecanvasmm-2.0 -lgconfmm-2.0 -lglademm-2.0 -lgnomeui-2 -lSM -lICE -lgtkmm-2.0 -lglade-2.0 -lgdkmm-2.0 -latkmm-1.0 -lpangomm-1.0 -lglibmm-2.0 -lsigc-1.2 -lbonoboui-2 -lxml2 -lpthread -lz -lgnomecanvas-2 -lgnome-2 -lpopt -lart_lgpl_2 -lpangoft2-1.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lbonobo-2 -lgconf-2 -lgnomevfs-2 -lbonobo-activation -lORBit-2 -lgobject-2.0 -lgthread-2.0 -lm -lgmodule-2.0 -ldl -lglib-2.0 -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = ../config.h -CONFIG_CLEAN_FILES = -bin_PROGRAMS = lookuplet$(EXEEXT) -PROGRAMS = $(bin_PROGRAMS) - - -DEFS = -DHAVE_CONFIG_H -I. -I$(srcdir) -I.. -CPPFLAGS = -LIBS = -lookuplet_OBJECTS = lookuplet_glade.$(OBJEXT) lookuplet.$(OBJEXT) \ -binding_glade.$(OBJEXT) binding.$(OBJEXT) about_glade.$(OBJEXT) \ -about.$(OBJEXT) properties_glade.$(OBJEXT) properties.$(OBJEXT) -lookuplet_DEPENDENCIES = -lookuplet_LDFLAGS = -CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ -HEADERS = $(noinst_HEADERS) - -DIST_COMMON = Makefile.am Makefile.in - - -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) - -TAR = tar -GZIP_ENV = --best -DEP_FILES = .deps/about.P .deps/about_glade.P .deps/binding.P \ -.deps/binding_glade.P .deps/lookuplet.P .deps/lookuplet_glade.P \ -.deps/properties.P .deps/properties_glade.P -SOURCES = $(lookuplet_SOURCES) -OBJECTS = $(lookuplet_OBJECTS) - -all: all-redirect -.SUFFIXES: -.SUFFIXES: .S .c .cc .lo .o .obj .s -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile - -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - - -mostlyclean-binPROGRAMS: - -clean-binPROGRAMS: - -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) - -distclean-binPROGRAMS: - -maintainer-clean-binPROGRAMS: - -install-binPROGRAMS: $(bin_PROGRAMS) - @$(NORMAL_INSTALL) - $(mkinstalldirs) $(DESTDIR)$(bindir) - @list='$(bin_PROGRAMS)'; for p in $$list; do \ - if test -f $$p; then \ - echo " $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ - $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ - else :; fi; \ - done - -uninstall-binPROGRAMS: - @$(NORMAL_UNINSTALL) - list='$(bin_PROGRAMS)'; for p in $$list; do \ - rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ - done - -# FIXME: We should only use cygpath when building on Windows, -# and only if it is available. -.c.obj: - $(COMPILE) -c `cygpath -w $<` - -.s.o: - $(COMPILE) -c $< - -.S.o: - $(COMPILE) -c $< - -mostlyclean-compile: - -rm -f *.o core *.core - -rm -f *.$(OBJEXT) - -clean-compile: - -distclean-compile: - -rm -f *.tab.c - -maintainer-clean-compile: - -.s.lo: - $(LIBTOOL) --mode=compile $(COMPILE) -c $< - -.S.lo: - $(LIBTOOL) --mode=compile $(COMPILE) -c $< - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -distclean-libtool: - -maintainer-clean-libtool: - -lookuplet$(EXEEXT): $(lookuplet_OBJECTS) $(lookuplet_DEPENDENCIES) - @rm -f lookuplet$(EXEEXT) - $(CXXLINK) $(lookuplet_LDFLAGS) $(lookuplet_OBJECTS) $(lookuplet_LDADD) $(LIBS) -.cc.o: - $(CXXCOMPILE) -c $< -.cc.obj: - $(CXXCOMPILE) -c `cygpath -w $<` -.cc.lo: - $(LTCXXCOMPILE) -c $< - -tags: TAGS - -ID: $(HEADERS) $(SOURCES) $(LISP) - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - here=`pwd` && cd $(srcdir) \ - && mkid -f$$here/ID $$unique $(LISP) - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ - || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags $$unique $(LISP)) - -mostlyclean-tags: - -clean-tags: - -distclean-tags: - -rm -f TAGS ID - -maintainer-clean-tags: - -distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) - -subdir = src - -distdir: $(DISTFILES) - here=`cd $(top_builddir) && pwd`; \ - top_distdir=`cd $(top_distdir) && pwd`; \ - distdir=`cd $(distdir) && pwd`; \ - cd $(top_srcdir) \ - && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu src/Makefile - @for file in $(DISTFILES); do \ - d=$(srcdir); \ - if test -d $$d/$$file; then \ - cp -pr $$d/$$file $(distdir)/$$file; \ - else \ - test -f $(distdir)/$$file \ - || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ - || cp -p $$d/$$file $(distdir)/$$file || :; \ - fi; \ - done - -DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) - --include $(DEP_FILES) - -mostlyclean-depend: - -clean-depend: - -distclean-depend: - -rm -rf .deps - -maintainer-clean-depend: - -%.o: %.c - @echo '$(COMPILE) -c $<'; \ - $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-cp .deps/$(*F).pp .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm .deps/$(*F).pp - -%.lo: %.c - @echo '$(LTCOMPILE) -c $<'; \ - $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*F).pp > .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm -f .deps/$(*F).pp - -%.o: %.cc - @echo '$(CXXCOMPILE) -c $<'; \ - $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-cp .deps/$(*F).pp .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm .deps/$(*F).pp - -%.lo: %.cc - @echo '$(LTCXXCOMPILE) -c $<'; \ - $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*F).pp > .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm -f .deps/$(*F).pp -info-am: -info: info-am -dvi-am: -dvi: dvi-am -check-am: all-am -check: check-am -installcheck-am: -installcheck: installcheck-am -install-exec-am: install-binPROGRAMS -install-exec: install-exec-am - -install-data-am: -install-data: install-data-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am -install: install-am -uninstall-am: uninstall-binPROGRAMS -uninstall: uninstall-am -all-am: Makefile $(PROGRAMS) $(HEADERS) -all-redirect: all-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install -installdirs: - $(mkinstalldirs) $(DESTDIR)$(bindir) - - -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -rm -f Makefile $(CONFIG_CLEAN_FILES) - -rm -f config.cache config.log stamp-h stamp-h[0-9]* - -maintainer-clean-generic: -mostlyclean-am: mostlyclean-binPROGRAMS mostlyclean-compile \ - mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ - mostlyclean-generic - -mostlyclean: mostlyclean-am - -clean-am: clean-binPROGRAMS clean-compile clean-libtool clean-tags \ - clean-depend clean-generic mostlyclean-am - -clean: clean-am - -distclean-am: distclean-binPROGRAMS distclean-compile distclean-libtool \ - distclean-tags distclean-depend distclean-generic \ - clean-am - -rm -f libtool - -distclean: distclean-am - -maintainer-clean-am: maintainer-clean-binPROGRAMS \ - maintainer-clean-compile maintainer-clean-libtool \ - maintainer-clean-tags maintainer-clean-depend \ - maintainer-clean-generic distclean-am - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." - -maintainer-clean: maintainer-clean-am - -.PHONY: mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \ -maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \ -mostlyclean-compile distclean-compile clean-compile \ -maintainer-clean-compile mostlyclean-libtool distclean-libtool \ -clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ -distclean-tags clean-tags maintainer-clean-tags distdir \ -mostlyclean-depend distclean-depend clean-depend \ -maintainer-clean-depend info-am info dvi-am dvi check check-am \ -installcheck-am installcheck install-exec-am install-exec \ -install-data-am install-data install-am install uninstall-am uninstall \ -all-redirect all-am all installdirs mostlyclean-generic \ -distclean-generic clean-generic maintainer-clean-generic clean \ -mostlyclean distclean maintainer-clean - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/projects/lookuplet/src/Makefile.am b/projects/lookuplet/src/Makefile.am deleted file mode 100644 index 8387f711..00000000 --- a/projects/lookuplet/src/Makefile.am +++ /dev/null @@ -1,29 +0,0 @@ -# -# $Id: Makefile.am,v 1.7 2003/11/28 21:34:59 mdb Exp $ - -bin_PROGRAMS = lookuplet - -lookuplet_SOURCES = \ - lookuplet_glade.cc \ - lookuplet.cc \ - binding_glade.cc \ - binding.cc \ - about_glade.cc \ - about.cc \ - properties_glade.cc \ - properties.cc - -noinst_HEADERS = \ - lookuplet_glade.hh \ - lookuplet.hh \ - binding_glade.hh \ - binding.hh \ - about_glade.hh \ - about.hh \ - properties_glade.hh \ - properties.hh - -CXXFLAGS = @CXXFLAGS@ @GNOMEMM_CFLAGS@ -LDFLAGS= @LDFLAGS@ - -lookuplet_LDADD = @LIBS@ @GNOMEMM_LIBS@ diff --git a/projects/lookuplet/src/Makefile.in b/projects/lookuplet/src/Makefile.in deleted file mode 100644 index e3a7fe3f..00000000 --- a/projects/lookuplet/src/Makefile.in +++ /dev/null @@ -1,410 +0,0 @@ -# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am - -# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -# -# $Id: Makefile.in,v 1.1 2003/11/28 21:34:59 mdb Exp $ - - -SHELL = @SHELL@ - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -prefix = @prefix@ -exec_prefix = @exec_prefix@ - -bindir = @bindir@ -sbindir = @sbindir@ -libexecdir = @libexecdir@ -datadir = @datadir@ -sysconfdir = @sysconfdir@ -sharedstatedir = @sharedstatedir@ -localstatedir = @localstatedir@ -libdir = @libdir@ -infodir = @infodir@ -mandir = @mandir@ -includedir = @includedir@ -oldincludedir = /usr/include - -DESTDIR = - -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ - -top_builddir = .. - -ACLOCAL = @ACLOCAL@ -AUTOCONF = @AUTOCONF@ -AUTOMAKE = @AUTOMAKE@ -AUTOHEADER = @AUTOHEADER@ - -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -transform = @program_transform_name@ - -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -host_alias = @host_alias@ -host_triplet = @host@ -AR = @AR@ -AS = @AS@ -CC = @CC@ -CPP = @CPP@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -DLLTOOL = @DLLTOOL@ -ECHO = @ECHO@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -F77 = @F77@ -GCJ = @GCJ@ -GCJFLAGS = @GCJFLAGS@ -GNOMEMM_CFLAGS = @GNOMEMM_CFLAGS@ -GNOMEMM_LIBS = @GNOMEMM_LIBS@ -GNOME_ACLOCAL_DIR = @GNOME_ACLOCAL_DIR@ -GNOME_ACLOCAL_FLAGS = @GNOME_ACLOCAL_FLAGS@ -GTKDOC = @GTKDOC@ -HAVE_GTK_DOC = @HAVE_GTK_DOC@ -HAVE_LIB = @HAVE_LIB@ -LIB = @LIB@ -LIBTOOL = @LIBTOOL@ -LN_S = @LN_S@ -LTLIB = @LTLIB@ -MAKEINFO = @MAKEINFO@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -RANLIB = @RANLIB@ -RC = @RC@ -STRIP = @STRIP@ -VERSION = @VERSION@ -WARN_CFLAGS = @WARN_CFLAGS@ -cxxflags_set = @cxxflags_set@ - -bin_PROGRAMS = lookuplet - -lookuplet_SOURCES = lookuplet_glade.cc lookuplet.cc binding_glade.cc binding.cc about_glade.cc about.cc properties_glade.cc properties.cc - - -noinst_HEADERS = lookuplet_glade.hh lookuplet.hh binding_glade.hh binding.hh about_glade.hh about.hh properties_glade.hh properties.hh - - -CXXFLAGS = @CXXFLAGS@ @GNOMEMM_CFLAGS@ -LDFLAGS = @LDFLAGS@ - -lookuplet_LDADD = @LIBS@ @GNOMEMM_LIBS@ -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = ../config.h -CONFIG_CLEAN_FILES = -bin_PROGRAMS = lookuplet$(EXEEXT) -PROGRAMS = $(bin_PROGRAMS) - - -DEFS = @DEFS@ -I. -I$(srcdir) -I.. -CPPFLAGS = @CPPFLAGS@ -LIBS = @LIBS@ -lookuplet_OBJECTS = lookuplet_glade.$(OBJEXT) lookuplet.$(OBJEXT) \ -binding_glade.$(OBJEXT) binding.$(OBJEXT) about_glade.$(OBJEXT) \ -about.$(OBJEXT) properties_glade.$(OBJEXT) properties.$(OBJEXT) -lookuplet_DEPENDENCIES = -lookuplet_LDFLAGS = -CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ -HEADERS = $(noinst_HEADERS) - -DIST_COMMON = Makefile.am Makefile.in - - -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) - -TAR = tar -GZIP_ENV = --best -DEP_FILES = .deps/about.P .deps/about_glade.P .deps/binding.P \ -.deps/binding_glade.P .deps/lookuplet.P .deps/lookuplet_glade.P \ -.deps/properties.P .deps/properties_glade.P -SOURCES = $(lookuplet_SOURCES) -OBJECTS = $(lookuplet_OBJECTS) - -all: all-redirect -.SUFFIXES: -.SUFFIXES: .S .c .cc .lo .o .obj .s -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile - -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - - -mostlyclean-binPROGRAMS: - -clean-binPROGRAMS: - -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) - -distclean-binPROGRAMS: - -maintainer-clean-binPROGRAMS: - -install-binPROGRAMS: $(bin_PROGRAMS) - @$(NORMAL_INSTALL) - $(mkinstalldirs) $(DESTDIR)$(bindir) - @list='$(bin_PROGRAMS)'; for p in $$list; do \ - if test -f $$p; then \ - echo " $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ - $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ - else :; fi; \ - done - -uninstall-binPROGRAMS: - @$(NORMAL_UNINSTALL) - list='$(bin_PROGRAMS)'; for p in $$list; do \ - rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ - done - -# FIXME: We should only use cygpath when building on Windows, -# and only if it is available. -.c.obj: - $(COMPILE) -c `cygpath -w $<` - -.s.o: - $(COMPILE) -c $< - -.S.o: - $(COMPILE) -c $< - -mostlyclean-compile: - -rm -f *.o core *.core - -rm -f *.$(OBJEXT) - -clean-compile: - -distclean-compile: - -rm -f *.tab.c - -maintainer-clean-compile: - -.s.lo: - $(LIBTOOL) --mode=compile $(COMPILE) -c $< - -.S.lo: - $(LIBTOOL) --mode=compile $(COMPILE) -c $< - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -distclean-libtool: - -maintainer-clean-libtool: - -lookuplet$(EXEEXT): $(lookuplet_OBJECTS) $(lookuplet_DEPENDENCIES) - @rm -f lookuplet$(EXEEXT) - $(CXXLINK) $(lookuplet_LDFLAGS) $(lookuplet_OBJECTS) $(lookuplet_LDADD) $(LIBS) -.cc.o: - $(CXXCOMPILE) -c $< -.cc.obj: - $(CXXCOMPILE) -c `cygpath -w $<` -.cc.lo: - $(LTCXXCOMPILE) -c $< - -tags: TAGS - -ID: $(HEADERS) $(SOURCES) $(LISP) - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - here=`pwd` && cd $(srcdir) \ - && mkid -f$$here/ID $$unique $(LISP) - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ - || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags $$unique $(LISP)) - -mostlyclean-tags: - -clean-tags: - -distclean-tags: - -rm -f TAGS ID - -maintainer-clean-tags: - -distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) - -subdir = src - -distdir: $(DISTFILES) - here=`cd $(top_builddir) && pwd`; \ - top_distdir=`cd $(top_distdir) && pwd`; \ - distdir=`cd $(distdir) && pwd`; \ - cd $(top_srcdir) \ - && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu src/Makefile - @for file in $(DISTFILES); do \ - d=$(srcdir); \ - if test -d $$d/$$file; then \ - cp -pr $$d/$$file $(distdir)/$$file; \ - else \ - test -f $(distdir)/$$file \ - || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ - || cp -p $$d/$$file $(distdir)/$$file || :; \ - fi; \ - done - -DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) - --include $(DEP_FILES) - -mostlyclean-depend: - -clean-depend: - -distclean-depend: - -rm -rf .deps - -maintainer-clean-depend: - -%.o: %.c - @echo '$(COMPILE) -c $<'; \ - $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-cp .deps/$(*F).pp .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm .deps/$(*F).pp - -%.lo: %.c - @echo '$(LTCOMPILE) -c $<'; \ - $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*F).pp > .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm -f .deps/$(*F).pp - -%.o: %.cc - @echo '$(CXXCOMPILE) -c $<'; \ - $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-cp .deps/$(*F).pp .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm .deps/$(*F).pp - -%.lo: %.cc - @echo '$(LTCXXCOMPILE) -c $<'; \ - $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*F).pp > .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm -f .deps/$(*F).pp -info-am: -info: info-am -dvi-am: -dvi: dvi-am -check-am: all-am -check: check-am -installcheck-am: -installcheck: installcheck-am -install-exec-am: install-binPROGRAMS -install-exec: install-exec-am - -install-data-am: -install-data: install-data-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am -install: install-am -uninstall-am: uninstall-binPROGRAMS -uninstall: uninstall-am -all-am: Makefile $(PROGRAMS) $(HEADERS) -all-redirect: all-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install -installdirs: - $(mkinstalldirs) $(DESTDIR)$(bindir) - - -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -rm -f Makefile $(CONFIG_CLEAN_FILES) - -rm -f config.cache config.log stamp-h stamp-h[0-9]* - -maintainer-clean-generic: -mostlyclean-am: mostlyclean-binPROGRAMS mostlyclean-compile \ - mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ - mostlyclean-generic - -mostlyclean: mostlyclean-am - -clean-am: clean-binPROGRAMS clean-compile clean-libtool clean-tags \ - clean-depend clean-generic mostlyclean-am - -clean: clean-am - -distclean-am: distclean-binPROGRAMS distclean-compile distclean-libtool \ - distclean-tags distclean-depend distclean-generic \ - clean-am - -rm -f libtool - -distclean: distclean-am - -maintainer-clean-am: maintainer-clean-binPROGRAMS \ - maintainer-clean-compile maintainer-clean-libtool \ - maintainer-clean-tags maintainer-clean-depend \ - maintainer-clean-generic distclean-am - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." - -maintainer-clean: maintainer-clean-am - -.PHONY: mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \ -maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \ -mostlyclean-compile distclean-compile clean-compile \ -maintainer-clean-compile mostlyclean-libtool distclean-libtool \ -clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ -distclean-tags clean-tags maintainer-clean-tags distdir \ -mostlyclean-depend distclean-depend clean-depend \ -maintainer-clean-depend info-am info dvi-am dvi check check-am \ -installcheck-am installcheck install-exec-am install-exec \ -install-data-am install-data install-am install uninstall-am uninstall \ -all-redirect all-am all installdirs mostlyclean-generic \ -distclean-generic clean-generic maintainer-clean-generic clean \ -mostlyclean distclean maintainer-clean - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/projects/lookuplet/src/about.cc b/projects/lookuplet/src/about.cc deleted file mode 100644 index f4a1918e..00000000 --- a/projects/lookuplet/src/about.cc +++ /dev/null @@ -1,9 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// newer (non customized) versions of this file go to about.cc_new - -// This file is for your program, I won't touch it again! - -#include "config.h" -#include "about.hh" diff --git a/projects/lookuplet/src/about.hh b/projects/lookuplet/src/about.hh deleted file mode 100644 index 3282bed2..00000000 --- a/projects/lookuplet/src/about.hh +++ /dev/null @@ -1,18 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// newer (non customized) versions of this file go to about.hh_new - -// you might replace -// class foo : public foo_glade { ... }; -// by -// typedef foo_glade foo; -// if you didn't make any modifications to the widget - -#ifndef _ABOUT_HH -# include "about_glade.hh" -# define _ABOUT_HH -class about : public about_glade -{ -}; -#endif diff --git a/projects/lookuplet/src/about_glade.cc b/projects/lookuplet/src/about_glade.cc deleted file mode 100644 index 4d247515..00000000 --- a/projects/lookuplet/src/about_glade.cc +++ /dev/null @@ -1,30 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// DO NOT EDIT THIS FILE ! It was created using -// /usr/local/bin/glade-- --gnome2 lookuplet.glade -// for gtk 2.0.9 and gtkmm 2.0.0 -// -// Please modify the corresponding derived classes in ./src/about.cc - -#include "config.h" -#include "about_glade.hh" -#include - -const char * const about_authors[] = -{ "Michael Bayne ", 0 -}; - -about_glade::about_glade( -) : Gnome::UI::About(PACKAGE, VERSION, "(C) 2001-2002 Michael Bayne", about_authors, about_authors, "This GNOME applet provides a simple means by which web and other queries can be launched with minimal typing.\n" - "-\n" - "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.") -{ - - Gnome::UI::About *about = this; - about->show(); -} - -about_glade::~about_glade() -{ -} diff --git a/projects/lookuplet/src/about_glade.hh b/projects/lookuplet/src/about_glade.hh deleted file mode 100644 index e4be3c6a..00000000 --- a/projects/lookuplet/src/about_glade.hh +++ /dev/null @@ -1,24 +0,0 @@ -// generated 2002/12/1 19:52:51 PST by mdb@baltic.(none) -// using glademm V1.1.0c -// -// DO NOT EDIT THIS FILE ! It was created using -// glade-- /export/home/mdb/projects/lookuplet/lookuplet.glade -// for gtk 2.0.9 and gtkmm 2.0.0 -// -// Please modify the corresponding derived classes in ./src/about.hh and./src/about.cc - -#ifndef _ABOUT_GLADE_HH -# define _ABOUT_GLADE_HH - -#include - -class about_glade : public Gnome::UI::About -{ -protected: - - - about_glade(); - - ~about_glade(); -}; -#endif diff --git a/projects/lookuplet/src/binding.cc b/projects/lookuplet/src/binding.cc deleted file mode 100644 index f70919e4..00000000 --- a/projects/lookuplet/src/binding.cc +++ /dev/null @@ -1,21 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// newer (non customized) versions of this file go to binding.cc_new - -// This file is for your program, I won't touch it again! - -#include "config.h" -#include "binding.hh" - -void binding::on_ok_clicked() -{ -} - -void binding::on_cancel_clicked() -{ -} - -bool binding::on_key_key_press_event(GdkEventKey *ev) -{ return 0; -} diff --git a/projects/lookuplet/src/binding.hh b/projects/lookuplet/src/binding.hh deleted file mode 100644 index 5775ef7c..00000000 --- a/projects/lookuplet/src/binding.hh +++ /dev/null @@ -1,22 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// newer (non customized) versions of this file go to binding.hh_new - -// you might replace -// class foo : public foo_glade { ... }; -// by -// typedef foo_glade foo; -// if you didn't make any modifications to the widget - -#ifndef _BINDING_HH -# include "binding_glade.hh" -# define _BINDING_HH -class binding : public binding_glade -{ - - void on_ok_clicked(); - void on_cancel_clicked(); - bool on_key_key_press_event(GdkEventKey *ev); -}; -#endif diff --git a/projects/lookuplet/src/binding_glade.cc b/projects/lookuplet/src/binding_glade.cc deleted file mode 100644 index 6173ea4a..00000000 --- a/projects/lookuplet/src/binding_glade.cc +++ /dev/null @@ -1,119 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// DO NOT EDIT THIS FILE ! It was created using -// /usr/local/bin/glade-- --gnome2 lookuplet.glade -// for gtk 2.0.9 and gtkmm 2.0.0 -// -// Please modify the corresponding derived classes in ./src/binding.cc - -#include "config.h" -#include "binding_glade.hh" -#include -#include -#include -#include -#include -#include - -binding_glade::binding_glade( -) -{ - - Gtk::Dialog *binding = this; - Gtk::Button *ok = manage(new class Gtk::Button(Gtk::StockID("gtk-ok"))); - Gtk::Button *cancel = manage(new class Gtk::Button(Gtk::StockID("gtk-cancel"))); - Gtk::Label *klabel = manage(new class Gtk::Label("Key:")); - _key = manage(new class Gtk::Entry()); - - Gtk::Label *nlabel = manage(new class Gtk::Label("Name:")); - _name = manage(new class Gtk::Entry()); - - Gtk::HBox *hbox3 = manage(new class Gtk::HBox(false, 5)); - Gtk::Label *tlabel = manage(new class Gtk::Label("Enter the URL to launch or command to invoke when this key combination is pressed:")); - Gtk::MenuItem *convertwidget4 = NULL; - Gtk::MenuItem *convertwidget5 = NULL; - Gtk::Menu *convertwidget3 = manage(new class Gtk::Menu()); - _type = manage(new class Gtk::OptionMenu()); - _argument = manage(new class Gtk::Entry()); - - Gtk::HBox *hbox4 = manage(new class Gtk::HBox(false, 5)); - Gtk::Label *blabel = manage(new class Gtk::Label("The following can be used to insert the query terms into the URL or command line:\n" - "\n" - "%T - the plain query terms\n" - "%U - the URL encoded query terms")); - ok->set_flags(Gtk::CAN_FOCUS); - ok->set_relief(Gtk::RELIEF_NORMAL); - cancel->set_flags(Gtk::CAN_FOCUS); - cancel->set_relief(Gtk::RELIEF_NORMAL); - binding->get_action_area()->pack_start(*ok); - binding->get_action_area()->pack_start(*cancel); - klabel->set_alignment(0.5,0.5); - klabel->set_padding(0,0); - klabel->set_justify(Gtk::JUSTIFY_CENTER); - klabel->set_line_wrap(false); - _key->set_flags(Gtk::CAN_FOCUS); - _key->set_editable(true); - _key->set_text(""); - nlabel->set_alignment(0.5,0.5); - nlabel->set_padding(0,0); - nlabel->set_justify(Gtk::JUSTIFY_CENTER); - nlabel->set_line_wrap(false); - _name->set_flags(Gtk::CAN_FOCUS); - _name->set_editable(true); - _name->set_text(""); - hbox3->pack_start(*klabel, Gtk::PACK_SHRINK, 0); - hbox3->pack_start(*_key); - hbox3->pack_start(*nlabel, Gtk::PACK_SHRINK, 0); - hbox3->pack_start(*_name); - tlabel->set_alignment(0.5,0.5); - tlabel->set_padding(0,0); - tlabel->set_justify(Gtk::JUSTIFY_CENTER); - tlabel->set_line_wrap(true); - _type->set_flags(Gtk::CAN_FOCUS); - _type->set_history(0); - _type->set_menu(*convertwidget3); - _argument->set_flags(Gtk::CAN_FOCUS); - _argument->set_editable(true); - _argument->set_text(""); - hbox4->pack_start(*_type, Gtk::PACK_SHRINK, 0); - hbox4->pack_start(*_argument); - blabel->set_alignment(0.5,0.5); - blabel->set_padding(0,0); - blabel->set_justify(Gtk::JUSTIFY_FILL); - blabel->set_line_wrap(true); - binding->get_vbox()->set_homogeneous(false); - binding->get_vbox()->set_spacing(8); - binding->get_vbox()->pack_start(*hbox3); - binding->get_vbox()->pack_start(*tlabel, Gtk::PACK_SHRINK, 0); - binding->get_vbox()->pack_start(*hbox4); - binding->get_vbox()->pack_start(*blabel, Gtk::PACK_SHRINK, 0); - binding->set_border_width(5); - binding->set_title("Edit Binding"); - binding->set_modal(false); - binding->property_window_position().set_value(Gtk::WIN_POS_NONE); - binding->set_resizable(true); - ok->show(); - cancel->show(); - klabel->show(); - _key->show(); - nlabel->show(); - _name->show(); - hbox3->show(); - tlabel->show(); - convertwidget4->show(); - convertwidget5->show(); - convertwidget3->show(); - _type->show(); - _argument->show(); - hbox4->show(); - blabel->show(); - binding->show(); - ok->signal_clicked().connect(SigC::slot(*this, &binding_glade::on_ok_clicked)); - cancel->signal_clicked().connect(SigC::slot(*this, &binding_glade::on_cancel_clicked)); - _key->signal_key_press_event().connect(SigC::slot(*this, &binding_glade::on_key_key_press_event)); -} - -binding_glade::~binding_glade() -{ -} diff --git a/projects/lookuplet/src/binding_glade.hh b/projects/lookuplet/src/binding_glade.hh deleted file mode 100644 index 38eef45c..00000000 --- a/projects/lookuplet/src/binding_glade.hh +++ /dev/null @@ -1,34 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// DO NOT EDIT THIS FILE ! It was created using -// /usr/local/bin/glade-- --gnome2 lookuplet.glade -// for gtk 2.0.9 and gtkmm 2.0.0 -// -// Please modify the corresponding derived classes in ./src/binding.hh and./src/binding.cc - -#ifndef _BINDING_GLADE_HH -# define _BINDING_GLADE_HH - -#include -#include -#include - -class binding_glade : public Gtk::Dialog -{ -protected: - - class Gtk::Entry *_key; - class Gtk::Entry *_name; - class Gtk::OptionMenu *_type; - class Gtk::Entry *_argument; - - binding_glade(); - - ~binding_glade(); -private: - virtual void on_ok_clicked() = 0; - virtual void on_cancel_clicked() = 0; - virtual bool on_key_key_press_event(GdkEventKey *ev) = 0; -}; -#endif diff --git a/projects/lookuplet/src/c/binding.c b/projects/lookuplet/src/c/binding.c deleted file mode 100644 index 840d26fd..00000000 --- a/projects/lookuplet/src/c/binding.c +++ /dev/null @@ -1,209 +0,0 @@ -/** - * $Id: binding.c,v 1.2 2001/08/16 20:25:09 mdb Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#include -#include "binding.h" - -static gchar* DEFAULT_BINDING_KEYS[] = -{ - "Control-g", - "Control-d", - "Control-Shift-d", - "Control-f", -}; - -static LkBindingType DEFAULT_BINDING_TYPES[] = -{ - URL, - EXEC, - URL, - URL, - URL, -}; - -static gchar* DEFAULT_BINDING_NAMES[] = -{ - "Google search", - "Dictionary lookup", - "Debian package search", - "Freshmeat search", - "IMDB Title search", -}; - -static gchar* DEFAULT_BINDING_ARGUMENTS[] = -{ - "http://www.google.com/search?client=googlet&q=%U", - "gdict -a %T", - "http://cgi.debian.org/cgi-bin/search_contents.pl?word=%U&case=insensitive&version=unstable&arch=i386&directories=yes", - "http://freshmeat.net/search/?q=%U", - "http://www.imdb.com/Tsearch?title=%U&restrict=Movies+only" -}; - -#define DEFAULT_BINDING_COUNT \ -(sizeof(DEFAULT_BINDING_TYPES)/sizeof(LkBindingType)) - -LkBinding* -lk_binding_new (void) -{ - LkBinding* binding = (LkBinding*)g_malloc(sizeof(LkBinding)); - binding->key = g_strdup(""); - binding->name = g_strdup(""); - binding->argument = g_strdup(""); - return binding; -} - -LkBinding* -lk_binding_new_with_values (const gchar* key, LkBindingType type, - const gchar* name, const gchar* argument) -{ - LkBinding* binding = (LkBinding*)g_malloc(sizeof(LkBinding)); - binding->key = g_strdup(key); - binding->type = type; - binding->name = g_strdup(name); - binding->argument = g_strdup(argument); - return binding; -} - -void -lk_binding_destroy (LkBinding* binding) -{ - g_free(binding->key); - g_free(binding->name); - g_free(binding->argument); - g_free(binding); -} - -void -lk_binding_init (LkBinding* binding, const gchar* key, - LkBindingType type, const gchar* name, const gchar* argument) -{ - g_free(binding->key); - binding->key = g_strdup(key); - binding->type = type; - g_free(binding->name); - binding->name = g_strdup(name); - g_free(binding->argument); - binding->argument = g_strdup(argument); -} - -static gchar* -config_get_string (const gchar* field, gint index) -{ - gchar gkey[100]; - gchar* value; - - /* construct the path */ - g_snprintf(gkey, sizeof(gkey), - "lookuplet/bindings/%s_%.2u", field, index); - - /* fetch the value and deal with non-existent values */ - value = gnome_config_get_string(gkey); - if (value == NULL) { - value = g_strdup(""); - } - - return value; -} - -void -lk_binding_load_bindings (GPtrArray* bindings) -{ - gchar gkey[100]; - int count, i; - - gnome_config_push_prefix("/lookuplet/"); - count = gnome_config_get_int("lookuplet/bindings/count"); - - /* if we have bindings defined, load those */ - if (count > 0) { - for (i = 0; i < count; i++) { - gchar* key, *name, *argument; - LkBindingType type = URL; - - key = config_get_string("key", i); - g_snprintf(gkey, sizeof(gkey), "lookuplet/bindings/type_%.2u", i); - type = (LkBindingType)gnome_config_get_int(gkey); - name = config_get_string("name", i); - argument = config_get_string("arg", i); - - g_ptr_array_add(bindings, lk_binding_new_with_values( - key, type, name, argument)); - - g_free(key); - g_free(name); - g_free(argument); - } - - } else { - /* otherwise use the default bindings */ - for (i = 0; i < DEFAULT_BINDING_COUNT; i++) { - LkBinding* binding = - lk_binding_new_with_values(DEFAULT_BINDING_KEYS[i], - DEFAULT_BINDING_TYPES[i], - DEFAULT_BINDING_NAMES[i], - DEFAULT_BINDING_ARGUMENTS[i]); - g_ptr_array_add(bindings, binding); - } - } - - gnome_config_pop_prefix(); -} - -void -lk_binding_save_bindings (GPtrArray* bindings) -{ - gchar gkey[100]; - int i; - - gnome_config_push_prefix("/lookuplet/"); - - /* save the total number of bindings */ - gnome_config_set_int("lookuplet/bindings/count", bindings->len); - - /* save each binding */ - for (i = 0; i < bindings->len; i++) { - LkBinding* binding = LK_BINDING(g_ptr_array_index(bindings, i)); - - g_snprintf(gkey, sizeof(gkey), - "lookuplet/bindings/key_%.2u", i); - gnome_config_set_string(gkey, binding->key); - - g_snprintf(gkey, sizeof(gkey), - "lookuplet/bindings/type_%.2u", i); - gnome_config_set_int(gkey, binding->type); - - g_snprintf(gkey, sizeof(gkey), - "lookuplet/bindings/name_%.2u", i); - gnome_config_set_string(gkey, binding->name); - - g_snprintf(gkey, sizeof(gkey), - "lookuplet/bindings/arg_%.2u", i); - gnome_config_set_string(gkey, binding->argument); - } - - /* write our new settings to disk */ - gnome_config_sync(); - - /* cargo cult programming! i dunno, the other guy did this too */ - gnome_config_drop_all(); - - gnome_config_pop_prefix(); -} diff --git a/projects/lookuplet/src/c/binding.h b/projects/lookuplet/src/c/binding.h deleted file mode 100644 index 8d7965d4..00000000 --- a/projects/lookuplet/src/c/binding.h +++ /dev/null @@ -1,68 +0,0 @@ -/** - * $Id: binding.h,v 1.2 2001/08/16 20:25:09 mdb Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#ifndef _BINDING_H_ -#define _BINDING_H_ - -#include - -#define MAX_BINDING_LENGTH 250 - -typedef enum _LkBindingType LkBindingType; -typedef struct _LkBinding LkBinding; - -enum _LkBindingType -{ - URL = 0, - EXEC = 1 -}; - -struct _LkBinding -{ - gchar* key; - LkBindingType type; - gchar* name; - gchar* argument; -}; - -#define LK_BINDING(b) ((LkBinding*)b) - -extern LkBinding* -lk_binding_new (void); - -extern LkBinding* -lk_binding_new_with_values (const gchar* key, LkBindingType type, - const gchar* name, const gchar* argument); - -extern void -lk_binding_destroy (LkBinding* binding); - -extern void -lk_binding_init (LkBinding* binding, const gchar* key, - LkBindingType type, const gchar* name, const gchar* argument); - -extern void -lk_binding_load_bindings (GPtrArray* bindings); - -extern void -lk_binding_save_bindings (GPtrArray* bindings); - -#endif /* _BINDING_H_ */ diff --git a/projects/lookuplet/src/c/history.c b/projects/lookuplet/src/c/history.c deleted file mode 100644 index 25b69db8..00000000 --- a/projects/lookuplet/src/c/history.c +++ /dev/null @@ -1,118 +0,0 @@ -/** - * $Id: history.c,v 1.1 2002/03/14 16:45:26 shaper Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#include - -#include "history.h" - -/* the array of historical entries */ -static gchar** _history; - -/* the last entry index retrieved */ -static int _ridx = 0; - -/* the insertion index for new history items */ -static int _iidx = 0; - -/* the number of entries saved in the text entry history */ -#define HISTORY_COUNT (10) - -void -lk_init_history (void) -{ - /* allocate and initialize the array of history entries */ - size_t size = sizeof(gchar*) * HISTORY_COUNT; - _history = g_malloc(size); - memset(_history, (int)NULL, size); -} - -const gchar* -lk_get_history (gboolean next) -{ - int actidx; - - /* make sure the array is available */ - if (_history == NULL) { - return NULL; - } - - /* determine the sought-after index */ - actidx = _ridx + ((next) ? -1 : 1); - - /* make sure the index is valid and an entry exists */ - if (actidx < 0 || actidx >= HISTORY_COUNT || _history[actidx] == NULL) { - return NULL; - } - - /* update the retrieved index */ - _ridx = actidx; - - return _history[actidx]; -} - -const gchar* -lk_get_history_expand (const gchar* entry) -{ - int i, len; - - if (_history == NULL || entry == NULL) { - return NULL; - } - - len = strlen(entry); - for (i = _iidx; i >= 0; i--) { - gchar* str = _history[i]; - if (str != NULL && !g_strncasecmp(str, entry, len)) { - /* update the retrieved index for potential subsequent retrievals */ - _ridx = i; - return str; - } - } - - return NULL; -} - -void -lk_add_history (const gchar* entry) -{ - /* make sure the array is available and the entry is valid */ - if (_history == NULL || entry == NULL) { - return; - } - - /* if there's no space remaining, shift off the oldest entry */ - if (_iidx == HISTORY_COUNT - 1 && _history[_iidx] != NULL) { - g_free(_history[0]); - memmove(_history, _history + 1, sizeof(gchar*) * (HISTORY_COUNT - 1)); - _history[_iidx] = NULL; - } - - /* remember the new entry */ - _history[_iidx] = g_strdup(entry); - - /* increment the insertion and retrieved index */ - if (_iidx < HISTORY_COUNT - 1) { - _iidx++; - _ridx = _iidx; - } else { - _ridx = HISTORY_COUNT; - } -} diff --git a/projects/lookuplet/src/c/history.h b/projects/lookuplet/src/c/history.h deleted file mode 100644 index c87fb537..00000000 --- a/projects/lookuplet/src/c/history.h +++ /dev/null @@ -1,59 +0,0 @@ -/** - * $Id: history.h,v 1.1 2002/03/14 16:45:26 shaper Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#ifndef _HISTORY_H_ -#define _HISTORY_H_ - -#include - -/** - * Initializes the history storage. - */ -void -lk_init_history (void); - -/** - * Returns the next history entry if next is true, else returns the - * previous history entry. - */ -const gchar* -lk_get_history (gboolean next); - -/** - * Returns the most recent history entry that matches the specified - * partial entry text, or NULL if there are no matches. String - * comparisons are case-insensitive as this is intended for use in - * effecting auto-completion of sloppily-inputted partial entries. If a - * matching entry is found, the current history item index is set to point - * to that entry such that subsequent history entry retrievals will - * automagically pick up from that point. - */ -const gchar* -lk_get_history_expand (const gchar* entry); - -/** - * Adds an entry to the history and resets the current history item index - * to point to the new entry. - */ -void -lk_add_history (const gchar* entry); - -#endif /* _HISTORY_H_ */ diff --git a/projects/lookuplet/src/c/keysym-util.c b/projects/lookuplet/src/c/keysym-util.c deleted file mode 100644 index 40b34e1f..00000000 --- a/projects/lookuplet/src/c/keysym-util.c +++ /dev/null @@ -1,165 +0,0 @@ -/** - * $Id: keysym-util.c,v 1.2 2001/08/16 20:25:09 mdb Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#include - -#include "keysym-util.h" - -static gboolean -string_empty (const char* string) -{ - return (string == NULL || - string[0] == '\0'); -} - -gboolean -convert_string_to_keysym_state (const char* string, - guint* keysym, - guint* state) -{ - char* s, *p; - - g_return_val_if_fail(keysym != NULL, FALSE); - g_return_val_if_fail(state != NULL, FALSE); - - *state = 0; - *keysym = 0; - - if (string_empty(string) || - strcmp(string, "Disabled") == 0 || - strcmp(string, _("Disabled")) == 0) { - return FALSE; - } - - s = g_strdup(string); - - gdk_error_trap_push(); - - p = strtok(s, "-"); - - while (p != NULL) { - if (strcmp(p, "Control")==0) { - *state |= GDK_CONTROL_MASK; - } else if (strcmp(p, "Lock")==0) { - *state |= GDK_LOCK_MASK; - } else if (strcmp(p, "Shift")==0) { - *state |= GDK_SHIFT_MASK; - } else if (strcmp(p, "Mod1")==0) { - *state |= GDK_MOD1_MASK; - } else if (strcmp(p, "Mod2")==0) { - *state |= GDK_MOD2_MASK; - } else if (strcmp(p, "Mod3")==0) { - *state |= GDK_MOD3_MASK; - } else if (strcmp(p, "Mod4")==0) { - *state |= GDK_MOD4_MASK; - } else if (strcmp(p, "Mod5")==0) { - *state |= GDK_MOD5_MASK; - } else { - *keysym = gdk_keyval_from_name(p); - if (*keysym == 0) { - gdk_flush(); - gdk_error_trap_pop(); - g_free(s); - return FALSE; - } - } - p = strtok(NULL, "-"); - } - - gdk_flush(); - gdk_error_trap_pop(); - g_free(s); - - return (*keysym != 0); -} - -char* -convert_keysym_state_to_string (guint keysym, - guint state) -{ - GString* gs; - char* sep = ""; - char* key; - - if (keysym == 0) { - return g_strdup(_("Disabled")); - } - - gdk_error_trap_push(); - key = gdk_keyval_name(keysym); - gdk_flush(); - gdk_error_trap_pop(); - - if (key == NULL) { - return NULL; - } - - gs = g_string_new(NULL); - - if (state & GDK_CONTROL_MASK) { - g_string_append(gs, "Control"); - sep = "-"; - } - if (state & GDK_LOCK_MASK) { - g_string_append(gs, sep); - g_string_append(gs, "Lock"); - sep = "-"; - } - if (state & GDK_SHIFT_MASK) { - g_string_append(gs, sep); - g_string_append(gs, "Shift"); - sep = "-"; - } - if (state & GDK_MOD1_MASK) { - g_string_append(gs, sep); - g_string_append(gs, "Mod1"); - sep = "-"; - } - if (state & GDK_MOD2_MASK) { - g_string_append(gs, sep); - g_string_append(gs, "Mod2"); - sep = "-"; - } - if (state & GDK_MOD3_MASK) { - g_string_append(gs, sep); - g_string_append(gs, "Mod3"); - sep = "-"; - } - if (state & GDK_MOD4_MASK) { - g_string_append(gs, sep); - g_string_append(gs, "Mod4"); - sep = "-"; - } - if (state & GDK_MOD5_MASK) { - g_string_append(gs, sep); - g_string_append(gs, "Mod5"); - sep = "-"; - } - - g_string_append(gs, sep); - g_string_append(gs, key); - - { - char *ret = gs->str; - g_string_free(gs, FALSE); - return ret; - } -} diff --git a/projects/lookuplet/src/c/keysym-util.h b/projects/lookuplet/src/c/keysym-util.h deleted file mode 100644 index aaf96a5d..00000000 --- a/projects/lookuplet/src/c/keysym-util.h +++ /dev/null @@ -1,36 +0,0 @@ -/** - * $Id: keysym-util.h,v 1.2 2001/08/16 20:25:09 mdb Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#ifndef _KEYSYM_UTIL_H_ -#define _KEYSYM_UTIL_H_ - -#include - -gboolean -convert_string_to_keysym_state (const char* string, - guint* keysym, - guint* state); - -char* -convert_keysym_state_to_string (guint keysym, - guint state); - -#endif /* _KEYSYM_UTIL_H_ */ diff --git a/projects/lookuplet/src/c/launcher.c b/projects/lookuplet/src/c/launcher.c deleted file mode 100644 index 808f9bdc..00000000 --- a/projects/lookuplet/src/c/launcher.c +++ /dev/null @@ -1,160 +0,0 @@ -/** - * $Id: launcher.c,v 1.3 2001/08/16 20:25:09 mdb Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#include -#include - -#include -#include -#include - -#include "launcher.h" - -#define DEFAULT_COMMAND "%T" -#define DEFAULT_TYPE URL - -#define ESC_CHAR '%' - -static const gchar* -escape (gchar value) -{ - static char buffer[] = "%xx"; - static char* xlate = "0123456789ABCDEF"; - buffer[0] = ESC_CHAR; - buffer[1] = xlate[(value >> 4) & 0xF]; - buffer[2] = xlate[value & 0xF]; - return buffer; -} - -/** - * URL encodes the supplied text. The result must be freed by the caller - * using g_free(). - */ -static gchar* -url_encode (const gchar* text) -{ - GString* result; - guint tlen, i; - gchar* retval; - - tlen = strlen(text); - result = g_string_sized_new(tlen); - - for (i = 0; i < tlen; i++) { - if (!isalnum(text[i]) || text[i] == ESC_CHAR) { - g_string_append(result, escape(text[i])); - } else { - g_string_append_c(result, text[i]); - } - } - - retval = result->str; - g_string_free(result, FALSE); - - return retval; -} - -/** - * Replaces all instances of before with after in the supplied source - * string. - * - * @return the number of replacements made. - */ -static -guint g_string_replace (GString* source, const gchar* before, - const gchar* after) -{ - gchar* pos; - gchar* spot; - guint beflen = strlen(before); - guint aftlen = strlen(after); - guint replacements = 0; - - /* sanity checks */ - g_return_val_if_fail(source != NULL, 0); - g_return_val_if_fail(before != NULL, 0); - g_return_val_if_fail(after != NULL, 0); - g_return_val_if_fail(beflen > 0, 0); - - pos = source->str; - while ((spot = strstr(pos, before)) != NULL) { - replacements++; - /* erase the match and insert the new stuff */ - g_string_erase(source, spot-source->str, beflen); - g_string_insert(source, spot-source->str, after); - /* move the pointer on up */ - pos += spot-source->str + aftlen; - } - - return replacements; -} - -#define TOKEN_START '%' -#define TERM_TOKEN 'T' -#define ENCODED_TERM_TOKEN "U" - -/** - * Either displays a URL or invokes an command line with the supplied - * terms appropriately embedded. - */ -void -lk_launcher_launch (const LkBinding* binding, const gchar* terms) -{ - char cwdbuf[1024]; - GString* cmd; - gchar* uterms, *command; - LkBindingType type; - - /* figure out what we're supposed to do */ - if (binding == NULL) { - command = DEFAULT_COMMAND; - type = DEFAULT_TYPE; - - } else { - command = binding->argument; - type = binding->type; - } - - /* construct the actual command from it by replacing instances of %T - * with the terms and %U with the URL encoded terms. */ - cmd = g_string_new(command); - /* first replace %U because we know that won't result in any '%T's - * being inserted into the string because the url encoded terms - * encode all %s */ - uterms = url_encode(terms); - g_string_replace(cmd, "%U", uterms); - g_free(uterms); - g_string_replace(cmd, "%T", terms); - - /* now we either invoke a program or launch a URL */ - switch (type) { - case EXEC: - gnome_execute_shell(getcwd(cwdbuf, 1024), cmd->str); - break; - - default: - case URL: - gnome_url_show(cmd->str); - break; - } - - g_string_free(cmd, TRUE); -} diff --git a/projects/lookuplet/src/c/launcher.h b/projects/lookuplet/src/c/launcher.h deleted file mode 100644 index 65e8e9b5..00000000 --- a/projects/lookuplet/src/c/launcher.h +++ /dev/null @@ -1,32 +0,0 @@ -/** - * $Id: launcher.h,v 1.4 2001/08/16 20:52:40 mdb Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#ifndef _LAUNCHER_H_ -#define _LAUNCHER_H_ - -#include - -#include "binding.h" - -extern void -lk_launcher_launch (const LkBinding* binding, const gchar* terms); - -#endif /* _LAUNCHER_H_ */ diff --git a/projects/lookuplet/src/c/lookuplet.c b/projects/lookuplet/src/c/lookuplet.c deleted file mode 100644 index 8bbf7f07..00000000 --- a/projects/lookuplet/src/c/lookuplet.c +++ /dev/null @@ -1,146 +0,0 @@ -/** - * $Id: lookuplet.c,v 1.7 2002/03/14 16:45:26 shaper Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#include -#include -#include - -#include "querybox.h" -#include "preferences.h" - -/* Used to track whether or not we're being run as an applet or - * standalone. */ -int applet_mode = 0; - -static void -exit_lookuplet (GtkWidget* widget, gpointer data) -{ - gtk_main_quit(); -} - -static void -about_box_cb (AppletWidget *applet, gpointer data) -{ - static GtkWidget* about_box = NULL; - const gchar* authors[] = { - (gchar*) "Michael Bayne ", (gchar*)NULL }; - - if (about_box != NULL) { - gdk_window_show(about_box->window); - gdk_window_raise(about_box->window); - return; - } - - about_box = gnome_about_new( - _("lookuplet"), VERSION, "(C) 2001 Michael Bayne", authors, - _("This GNOME applet provides a simple means by which web and " - "other queries can be launched with minimal typing.\n\n\n" - "This program is free software; you can redistribute it and/or " - "modify it under the terms of the GNU General Public License as " - "published by the Free Software Foundation; either version 2 of " - "the License, or (at your option) any later version."), - (gchar*)NULL); - gtk_signal_connect(GTK_OBJECT(about_box), "destroy", - GTK_SIGNAL_FUNC(gtk_widget_destroyed), &about_box); - gtk_widget_show(about_box); -} - -int -main (int argc, char** argv) -{ - GtkWidget* top; - GtkWidget* contents; - int i; - - /* figure out if we're running as an applet */ - for (i = 0; i < argc; i++) { - if (strstr(argv[i], "activate-goad-server")) { - applet_mode = 1; - } - } - -#ifdef ENABLE_NLS - /* initialize the i18n stuff */ - bindtextdomain(PACKAGE, GNOMELOCALEDIR); - textdomain(PACKAGE); -#endif - - if (applet_mode) { - /* initialize; this will basically set up the applet, corba and - call gnome_init() */ - applet_widget_init(PACKAGE, VERSION, argc, argv, NULL, 0, NULL); - - /* create our applet_widget */ - if (!(top = applet_widget_new(PACKAGE))) { - g_error("Can't create applet widget.\n"); - exit(1); - } - - } else { - /* initialize gnome */ - gnome_init(PACKAGE, VERSION, argc, argv); - - /* create a new window */ - top = gtk_window_new(GTK_WINDOW_TOPLEVEL); - gtk_signal_connect(GTK_OBJECT(top), "destroy", - GTK_SIGNAL_FUNC(exit_lookuplet), NULL); - } - - /* initialize our preferences */ - lk_prefs_init(); - - /* create our contents and set them up real proper like */ - contents = lk_querybox_create(); - - if (applet_mode) { - applet_widget_add(APPLET_WIDGET(top), contents); - - } else { - /* we only want a border if we're not an applet */ - gtk_container_set_border_width(GTK_CONTAINER(top), GNOME_PAD_SMALL); - gtk_container_add(GTK_CONTAINER(top), contents); - } - - gtk_widget_show_all(contents); - gtk_widget_show(top); - - /* set up our applet menu */ - if (applet_mode) { - applet_widget_register_stock_callback( - APPLET_WIDGET(top), "properties", GNOME_STOCK_MENU_PROP, - _("Properties..."), lk_prefs_display_applet, NULL); - applet_widget_register_stock_callback( - APPLET_WIDGET(top), "about", GNOME_STOCK_MENU_ABOUT, - _("About..."), about_box_cb, NULL); - } - - /* initialize the querybox (which handles about everything) */ - lk_querybox_init(); - - /* main loop */ - if (applet_mode) { - applet_widget_gtk_main(); - } else { - gtk_main(); - } - - return 0; -} diff --git a/projects/lookuplet/src/c/lookuplet.h b/projects/lookuplet/src/c/lookuplet.h deleted file mode 100644 index 0973ecda..00000000 --- a/projects/lookuplet/src/c/lookuplet.h +++ /dev/null @@ -1,28 +0,0 @@ -/** - * $Id: lookuplet.h,v 1.1 2001/08/18 02:34:06 mdb Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#ifndef _LOOKUPLET_H_ -#define _LOOKUPLET_H_ - -/* Used to indicate whether or not we're running in applet mode. */ -extern int applet_mode; - -#endif /* _LOOKUPLET_H_ */ diff --git a/projects/lookuplet/src/c/preferences.c b/projects/lookuplet/src/c/preferences.c deleted file mode 100644 index ad4c145e..00000000 --- a/projects/lookuplet/src/c/preferences.c +++ /dev/null @@ -1,461 +0,0 @@ -/** - * $Id: preferences.c,v 1.3 2001/08/18 02:34:06 mdb Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#include -#include - -#include "keysym-util.h" -#include "binding.h" -#include "preferences.h" - -static GtkWidget* _grabDialog; -static GtkWidget* _bindList; -static GtkWidget* _prefBox = NULL; -static GPtrArray* _bindings; - -static GtkWidget* _keyEntry; -static LkBindingType _type; -static GtkWidget* _nameEntry; -static GtkWidget* _argEntry; -static GtkWidget* _edit; - -static gint _selection = -1; - -static GdkFilterReturn -grab_key_filter (GdkXEvent* gdk_xevent, GdkEvent* event, gpointer data) -{ - XEvent* xevent = (XEvent*)gdk_xevent; - GtkEntry* entry; - char* key; - - /* skip non-keypress events */ - if (xevent->type != KeyPress && xevent->type != KeyRelease) { - return GDK_FILTER_CONTINUE; - } - - /* convert the keysym into a string and stick it into the text entry - * that the user would otherwise type into */ - key = convert_keysym_state_to_string(event->key.keyval, event->key.state); - entry = GTK_ENTRY(data); - gtk_entry_set_text(entry, key ? key : ""); - g_free(key); - - /* clean up after ourselves */ - gdk_keyboard_ungrab(GDK_CURRENT_TIME); - gtk_widget_destroy(_grabDialog); - _grabDialog = NULL; - gdk_window_remove_filter(GDK_ROOT_PARENT(), grab_key_filter, data); - - return GDK_FILTER_REMOVE; -} - -static void -grab_button_pressed (GtkButton* button, gpointer data) -{ - GtkWidget* frame; - GtkWidget* box; - GtkWidget* label; - - _grabDialog = gtk_window_new(GTK_WINDOW_POPUP); - - gdk_keyboard_grab(GDK_ROOT_PARENT(), TRUE, GDK_CURRENT_TIME); - gdk_window_add_filter(GDK_ROOT_PARENT(), grab_key_filter, data); - - gtk_window_set_policy(GTK_WINDOW(_grabDialog), FALSE, FALSE, TRUE); - gtk_window_set_position(GTK_WINDOW(_grabDialog), GTK_WIN_POS_CENTER); - gtk_window_set_modal(GTK_WINDOW(_grabDialog), TRUE); - - frame = gtk_frame_new(NULL); - gtk_container_add(GTK_CONTAINER(_grabDialog), frame); - - box = gtk_hbox_new(FALSE, 0); - gtk_container_set_border_width(GTK_CONTAINER(box), GNOME_PAD_BIG); - gtk_container_add(GTK_CONTAINER(frame), box); - - label = gtk_label_new(_("Press a key...")); - gtk_container_add(GTK_CONTAINER(box), label); - - gtk_widget_show_all(_grabDialog); -} - -static void -pop_down_edit_binding (GtkWidget* button, gpointer arg) -{ - _keyEntry = NULL; - _nameEntry = NULL; - _argEntry = NULL; - gtk_widget_destroy(GTK_WIDGET(arg)); -} - -static void -select_type (GtkWidget* menuitem, gpointer data) -{ - _type = (LkBindingType)GPOINTER_TO_INT(data); -} - -static void -row_selected (GtkCList* clist, gint row, gint column, GdkEventButton* event, - gpointer user_data) -{ - _selection = row; - gtk_widget_set_sensitive(_edit, TRUE); -} - -static void -row_deselected (GtkCList* clist, gint row, gint column, GdkEventButton* event, - gpointer user_data) -{ - _selection = -1; - gtk_widget_set_sensitive(_edit, FALSE); -} - -static void -populate_binding (GtkWidget* button, gpointer arg) -{ - LkBinding* binding = LK_BINDING(arg); - gchar* key = gtk_entry_get_text(GTK_ENTRY(_keyEntry)); - gchar* name = gtk_entry_get_text(GTK_ENTRY(_nameEntry)); - gchar* argument = gtk_entry_get_text(GTK_ENTRY(_argEntry)); - - /* only update the binding if we modified something */ - if (strcmp(key, binding->key) || _type != binding->type || - strcmp(name, binding->name) || strcmp(argument, binding->argument)) { - /* update the binding instance */ - lk_binding_init(binding, key, _type, name, argument); - /* let the prefs system know that something has changed */ - gnome_property_box_changed(GNOME_PROPERTY_BOX(_prefBox)); - } -} - -static void -lk_prefs_edit_binding (LkBinding* binding, GtkSignalFunc okedFunc, - GtkSignalFunc cancelledFunc) -{ - GtkWidget* dialog; - GtkWidget* vbox, *hbox; - GtkWidget* label, *button; - GtkWidget* optmenu, *menu, *menuitem; - - gchar* types[] = { _("URL"), _("Exec"), NULL }; - int i; - - dialog = gtk_dialog_new(); - gtk_window_set_modal(GTK_WINDOW(dialog), TRUE); - vbox = GTK_DIALOG(dialog)->vbox; - gtk_container_set_border_width(GTK_CONTAINER(vbox), - GNOME_PAD_SMALL); - gtk_box_set_spacing(GTK_BOX(vbox), GNOME_PAD_SMALL); - - /* create the key line */ - hbox = gtk_hbox_new(FALSE, GNOME_PAD_SMALL); - /* create the key input */ - label = gtk_label_new(_("Key:")); - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); - _keyEntry = gtk_entry_new(); - gtk_entry_set_text(GTK_ENTRY(_keyEntry), binding->key); - gtk_box_pack_start(GTK_BOX(hbox), _keyEntry, FALSE, FALSE, 0); - button = gtk_button_new_with_label(_("Grab...")); - gtk_signal_connect(GTK_OBJECT(button), "clicked", - grab_button_pressed, _keyEntry); - gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0); - /* create the name input */ - label = gtk_label_new(_("Name:")); - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); - _nameEntry = gtk_entry_new(); - gtk_entry_set_text(GTK_ENTRY(_nameEntry), binding->name); - gtk_box_pack_start(GTK_BOX(hbox), _nameEntry, FALSE, FALSE, 0); - /* pack the line into the dialog */ - gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); - - /* create the command line */ - hbox = gtk_hbox_new(FALSE, GNOME_PAD_SMALL); - optmenu = gtk_option_menu_new(); - menu = gtk_menu_new(); - for (i = 0; types[i] != NULL; i++) { - menuitem = gtk_menu_item_new_with_label(types[i]); - gtk_signal_connect(GTK_OBJECT(menuitem), "activate", - select_type, GINT_TO_POINTER(i)); - gtk_widget_show(menuitem); - gtk_menu_append(GTK_MENU(menu), menuitem); - } - gtk_option_menu_set_menu(GTK_OPTION_MENU(optmenu), menu); - gtk_option_menu_set_history(GTK_OPTION_MENU(optmenu), - (int)binding->type); - _type = binding->type; - gtk_box_pack_start(GTK_BOX(hbox), optmenu, FALSE, FALSE, 0); - - _argEntry = gtk_entry_new_with_max_length(MAX_BINDING_LENGTH); - gtk_entry_set_text(GTK_ENTRY(_argEntry), binding->argument); - gtk_box_pack_start(GTK_BOX(hbox), _argEntry, TRUE, TRUE, 0); - gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); - - /* create and wire up the cancel button */ - hbox = GTK_DIALOG(dialog)->action_area; - button = gtk_button_new_with_label(_("Cancel")); - gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); - if (cancelledFunc != NULL) { - gtk_signal_connect(GTK_OBJECT(button), "clicked", - cancelledFunc, binding); - } - gtk_signal_connect(GTK_OBJECT(button), "clicked", - pop_down_edit_binding, dialog); - - /* create and wire up the ok button */ - button = gtk_button_new_with_label(_("OK")); - gtk_signal_connect(GTK_OBJECT(button), "clicked", - populate_binding, binding); - if (okedFunc != NULL) { - gtk_signal_connect(GTK_OBJECT(button), "clicked", - okedFunc, binding); - } - gtk_signal_connect(GTK_OBJECT(button), "clicked", - pop_down_edit_binding, dialog); - gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); - - gtk_window_set_default_size(GTK_WINDOW(dialog), 400, 10); - gtk_widget_show_all(dialog); -} - -static void -add_binding_oked (GtkWidget* button, gpointer arg) -{ - LkBinding* binding = LK_BINDING(arg); - gchar* data[2]; - - /* add this binding to our bindings array */ - g_ptr_array_add(_bindings, binding); - - /* and add it to the bindings list */ - data[0] = binding->key; - data[1] = binding->name; - gtk_clist_append(GTK_CLIST(_bindList), data); - gtk_clist_columns_autosize(GTK_CLIST(_bindList)); - - /* indicate our change of properties */ - gnome_property_box_changed(GNOME_PROPERTY_BOX(_prefBox)); -} - -static void -add_binding_cancelled (GtkWidget* button, gpointer arg) -{ - lk_binding_destroy(LK_BINDING(arg)); -} - -static void -add_clicked (GtkButton* button, gpointer user_data) -{ - LkBinding* binding = lk_binding_new(); - lk_prefs_edit_binding(binding, add_binding_oked, add_binding_cancelled); -} - -static void -edit_binding_oked (GtkWidget* button, gpointer arg) -{ - LkBinding* binding = LK_BINDING(arg); - - /* update the table display (the _selection is guaranteed not to have - * changed because the edit dialog is modal) */ - gtk_clist_set_text(GTK_CLIST(_bindList), _selection, 0, binding->key); - gtk_clist_set_text(GTK_CLIST(_bindList), _selection, 1, binding->name); - gtk_clist_columns_autosize(GTK_CLIST(_bindList)); -} - -static void -edit_clicked (GtkButton* button, gpointer user_data) -{ - /* only do something if there's a selection */ - if (_selection != -1) { - LkBinding* binding = - LK_BINDING(g_ptr_array_index(_bindings, _selection)); - /* make sure things aren't crazily out of sync */ - if (binding != NULL) { - lk_prefs_edit_binding(binding, edit_binding_oked, NULL); - } - } -} - -static void -delete_clicked (GtkButton* button, gpointer user_data) -{ - /* only do something if there's a selection */ - if (_selection != -1) { - /* remove the binding from our bindings list */ - LkBinding* binding = - LK_BINDING(g_ptr_array_remove_index(_bindings, _selection)); - /* make sure things are crazily out of sync */ - if (binding != NULL) { - lk_binding_destroy(binding); - } - /* and remove that row from the clist */ - gtk_clist_remove(GTK_CLIST(_bindList), _selection); - /* clear out the selection */ - _selection = -1; - /* let the world know we've made changes */ - gnome_property_box_changed(GNOME_PROPERTY_BOX(_prefBox)); - } -} - -void -lk_prefs_init (void) -{ - if (_bindings == NULL) { - _bindings = g_ptr_array_new(); - - /* load up our bindings */ - lk_binding_load_bindings(_bindings); - } -} - -GPtrArray* -lk_prefs_get_bindings (void) -{ - return _bindings; -} - -void -lk_prefs_cleanup (void) -{ - int i; - - /* free our preferences panel */ - gtk_widget_destroy(_prefBox); - _prefBox = NULL; - - for (i = 0; i < _bindings->len; i++) { - lk_binding_destroy(LK_BINDING(g_ptr_array_index(_bindings, i))); - } - g_ptr_array_free(_bindings, FALSE); -} - -static void -populate_bindings () -{ - gchar* data[2]; - int i; - - /* clear out any old stuff */ - gtk_clist_clear(GTK_CLIST(_bindList)); - - /* add an entry for each binding */ - for (i = 0; i < _bindings->len; i++) { - LkBinding* binding = LK_BINDING(g_ptr_array_index(_bindings, i)); - data[0] = binding->key; - data[1] = binding->name; - gtk_clist_append(GTK_CLIST(_bindList), data); - } - - /* fit the display to the contents */ - gtk_clist_columns_autosize(GTK_CLIST(_bindList)); -} - -static void -apply_preferences (GnomePropertyBox* pbox, gint page, gpointer data) -{ - /* save our bindings */ - lk_binding_save_bindings(_bindings); -} - -void -lk_prefs_display () -{ - GtkWidget* vbox, *bbox, *scrolled; - GtkWidget* label; - GtkWidget* add, *delete; - - gchar* titles[] = { _("Key"), _("Name") }; - - /* just display the existing window if it's already open */ - if (_prefBox != NULL) { - populate_bindings(); - gdk_window_show(GTK_WIDGET(_prefBox)->window); - gdk_window_raise(GTK_WIDGET(_prefBox)->window); - return; - } - - /* create and configure our prefs ui */ - _prefBox = gnome_property_box_new(); - gtk_window_set_title(GTK_WINDOW(_prefBox), _("Lookuplet Properties")); - gtk_signal_connect(GTK_OBJECT(_prefBox), "destroy", - gtk_widget_destroyed, &_prefBox);; - - vbox = gtk_vbox_new(FALSE, GNOME_PAD_SMALL); - gtk_container_set_border_width(GTK_CONTAINER(vbox), - GNOME_PAD_SMALL); - - label = gtk_label_new(_("Configure bindings...")); - gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT); - gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); - - /* create a scrolled window in which our clist will live */ - scrolled = gtk_scrolled_window_new(NULL, NULL); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled), - GTK_POLICY_AUTOMATIC, - GTK_POLICY_AUTOMATIC); - _bindList = gtk_clist_new_with_titles(2, titles); - gtk_clist_set_selection_mode(GTK_CLIST(_bindList), GTK_SELECTION_SINGLE); - gtk_signal_connect(GTK_OBJECT(_bindList), "select-row", - GTK_SIGNAL_FUNC(row_selected), NULL); - gtk_signal_connect(GTK_OBJECT(_bindList), "unselect-row", - GTK_SIGNAL_FUNC(row_deselected), NULL); - gtk_container_add(GTK_CONTAINER(scrolled), _bindList); - - /* instruct the scrolled window not to assume teeny dimensions */ - gtk_widget_set_usize(scrolled, 300, 200); - - populate_bindings(); - gtk_box_pack_start(GTK_BOX(vbox), scrolled, TRUE, TRUE, 0); - - /* create the control buttons */ - bbox = gtk_hbox_new(FALSE, GNOME_PAD_SMALL); - delete = gtk_button_new_with_label(_("Delete")); - gtk_box_pack_end(GTK_BOX(bbox), delete, FALSE, FALSE, 0); - _edit = gtk_button_new_with_label(_("Edit...")); - gtk_widget_set_sensitive(_edit, FALSE); - gtk_box_pack_end(GTK_BOX(bbox), _edit, FALSE, FALSE, 0); - add = gtk_button_new_with_label(_("Add...")); - gtk_box_pack_end(GTK_BOX(bbox), add, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0); - - /* wire them up */ - gtk_signal_connect(GTK_OBJECT(add), "clicked", - GTK_SIGNAL_FUNC(add_clicked), NULL); - gtk_signal_connect(GTK_OBJECT(_edit), "clicked", - GTK_SIGNAL_FUNC(edit_clicked), NULL); - gtk_signal_connect(GTK_OBJECT(delete), "clicked", - GTK_SIGNAL_FUNC(delete_clicked), NULL); - - /* add our page to the property box */ - gnome_property_box_append_page(GNOME_PROPERTY_BOX(_prefBox), - vbox, gtk_label_new(_("Bindings"))); - - /* wire up some signals */ - gtk_signal_connect(GTK_OBJECT(_prefBox), "apply", - GTK_SIGNAL_FUNC(apply_preferences), NULL); - - /* and finally show our property box */ - gtk_widget_show_all(_prefBox); -} - -void -lk_prefs_display_applet (AppletWidget* applet, gpointer data) -{ - lk_prefs_display(); -} diff --git a/projects/lookuplet/src/c/preferences.h b/projects/lookuplet/src/c/preferences.h deleted file mode 100644 index 47570181..00000000 --- a/projects/lookuplet/src/c/preferences.h +++ /dev/null @@ -1,43 +0,0 @@ -/** - * $Id: preferences.h,v 1.4 2001/08/18 02:34:06 mdb Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#ifndef _PREFERENCES_H_ -#define _PREFERENCES_H_ - -#include -#include - -extern void -lk_prefs_init (void); - -extern GPtrArray* -lk_prefs_get_bindings (void); - -extern void -lk_prefs_cleanup (void); - -extern void -lk_prefs_display (void); - -extern void -lk_prefs_display_applet (AppletWidget* applet, gpointer data); - -#endif /* _PREFERENCES_H_ */ diff --git a/projects/lookuplet/src/c/querybox.c b/projects/lookuplet/src/c/querybox.c deleted file mode 100644 index 707de17a..00000000 --- a/projects/lookuplet/src/c/querybox.c +++ /dev/null @@ -1,287 +0,0 @@ -/** - * $Id: querybox.c,v 1.9 2002/03/14 16:45:26 shaper Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#include -#include -#include -#include -#include - -#include "binding.h" -#include "launcher.h" -#include "history.h" -#include "keysym-util.h" -#include "preferences.h" -#include "lookuplet.h" -#include "querybox.h" - -/* the query text entry field */ -static GtkWidget* _query; - -/* used by url_p */ -#define MATCH_PREFIX(text, prefix) !strncmp(text, prefix, sizeof(prefix)-1) - -/* key codes for navigating the entry history */ -#define NEXT_HISTORY_KEY (GDK_Up) -#define PREVIOUS_HISTORY_KEY (GDK_Down) - -/* key code for auto-completion of a partial entry */ -#define AUTO_COMPLETE_KEY (GDK_Tab) - -/** - * A very primitive function to try to determine if the selection is a URL - * of some sort. - */ -static int -url_p (const char* text) -{ - return (MATCH_PREFIX(text, "http://") || - MATCH_PREFIX(text, "ftp://") || - MATCH_PREFIX(text, "https://") || - MATCH_PREFIX(text, "file:/")); -} - -static void -selection_received (GtkWidget* widget, GtkSelectionData* selection_data, - gpointer data) -{ - int length = selection_data->length; - int is_url; - - /* make sure some selection was provided */ - if (length > 0) { - gchar* start, *end, *pos; - gchar* search_text = - gtk_editable_get_chars(GTK_EDITABLE(widget), 0, -1); - - /* prune spaces from the end of the text */ - for (start = search_text; isspace(*start); start++); - for (end = search_text + length - 1; isspace(*end); end--); - end++; *end = '\0'; - - /* check to see if we're looking at a url here */ - is_url = url_p(start); - - /* do some whitespace processing */ - for (pos = start; *pos != '\0'; pos++) { - /* convert newlines to spaces */ - if ((*pos == '\n') || (*pos == '\r')) { - *pos = ' '; - } - /* if this is a URL, we want to eat whitespace */ - if (*pos == ' ' && is_url) { - memmove(pos, pos+1, strlen(pos)); - } - } - - /* only set the new text if we changed anything */ - if (length != strlen(start)) { - length = strlen(start); - gtk_entry_set_text(GTK_ENTRY(widget), start); - } - g_free(search_text); - - /* select the text in the entry so that it can be easily replaced */ - gtk_editable_select_region(GTK_EDITABLE(_query), 0, length); - } -} - -static gint -handle_special_keys (GtkWidget* widget, GdkEventKey* ek) -{ - const gchar* entry = NULL; - - switch (ek->keyval) { - case NEXT_HISTORY_KEY: - case PREVIOUS_HISTORY_KEY: - /* retrieve the sought-after historical entry */ - entry = lk_get_history(ek->keyval == NEXT_HISTORY_KEY); - break; - - case AUTO_COMPLETE_KEY: { - /* get the terms from the query box */ - gchar* text = gtk_editable_get_chars(GTK_EDITABLE(widget), 0, -1); - /* seek an expanded historical entry for the current text */ - entry = lk_get_history_expand(text); - } - break; - } - - /* if we've an entry, fill it in and we're done */ - if (entry != NULL) { - /* place the entry in the text field */ - gtk_entry_set_text(GTK_ENTRY(widget), entry); - - /* select the text in the entry so that it can be easily replaced */ - gtk_editable_select_region(GTK_EDITABLE(_query), 0, strlen(entry)); - - return TRUE; - } - - return FALSE; -} - -static gint -key_pressed (GtkWidget* widget, GdkEvent* event, gpointer callback_data) -{ - GdkEventKey* ek = (GdkEventKey*)event; - GPtrArray* bindings; - gint handled = FALSE, i; - gchar* keystr; - - /* handle special keystrokes such as history and auto-complete */ - if (handle_special_keys(widget, ek)) { - return TRUE; - } - - /* ignore plain or shifted keystrokes */ - if (ek->state <= 1) { - return FALSE; - } - - /* otherwise convert the key combo to a name and look it up */ - keystr = convert_keysym_state_to_string(ek->keyval, ek->state); - if (keystr == NULL) { - return FALSE; - } - bindings = lk_prefs_get_bindings(); - - for (i = 0; i < bindings->len; i++) { - LkBinding* binding = LK_BINDING(g_ptr_array_index(bindings, i)); - if (!strcmp(keystr, binding->key)) { - /* get the terms from the query box */ - gchar* search_text = - gtk_editable_get_chars(GTK_EDITABLE(widget), 0, -1); - /* save this entry in the history */ - lk_add_history(search_text); - /* launch the appropriate thing */ - lk_launcher_launch(binding, search_text); - g_free(search_text); - if (applet_mode) { - /* clear out the contents of the entry box */ - gtk_entry_set_text(GTK_ENTRY(widget), ""); - } else { - gtk_exit(0); - } - handled = TRUE; - break; - } - } - - g_free(keystr); - - return handled; -} - -static void -prefs_clicked (GtkWidget* widget, gpointer data) -{ - lk_prefs_display(); -} - -static void -launch (GtkWidget* widget, gpointer data) -{ - /* pass the contents of the querybox on to the launcher for display - * (specifying NULL for the qualifier since they just pressed return - * instead of pressing some special key combination) */ - gchar* search_text = gtk_editable_get_chars(GTK_EDITABLE(widget), 0, -1); - lk_launcher_launch(NULL, search_text); - - if (applet_mode) { - /* save this entry in the history */ - lk_add_history(search_text); - g_free(search_text); - /* clear out the contents of the entry box */ - gtk_entry_set_text(GTK_ENTRY(widget), ""); - } else { - gtk_exit(0); - } -} - -GtkWidget* -lk_querybox_create (void) -{ - GtkWidget* hbox; - GtkWidget* label; - GtkWidget* prefs; - - /* create the widget we are going to put on the applet */ - label = gtk_label_new(_("Query")); - - /* make the query text box and attach the "activate" signal handler */ - _query = gtk_entry_new(); - - /* Connect "return" in the search box to the launch func. */ - gtk_signal_connect(GTK_OBJECT(_query), "activate", - GTK_SIGNAL_FUNC(launch), NULL); - - /* create a horizontal box to hold our query input box and the - * label */ - hbox = gtk_hbox_new(FALSE, GNOME_PAD_SMALL); - - /* pack the query box and label into the hbox */ - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(hbox), _query, TRUE, TRUE, 0); - - /* create our preferences button (only if we're not an applet, if - * we're an applet we'll have a preferences menu item instead) */ - if (!applet_mode) { - prefs = gtk_button_new_with_label(_("Prefs")); - gtk_signal_connect (GTK_OBJECT(prefs), "clicked", - GTK_SIGNAL_FUNC(prefs_clicked), NULL); - gtk_box_pack_start(GTK_BOX(hbox), prefs, FALSE, FALSE, 0); - } - - /* create the array of history commands */ - lk_init_history(); - - return hbox; -} - -void -lk_querybox_init (void) -{ - static GdkAtom targets_atom = GDK_NONE; - - /* wire up our key press event handler */ - gtk_signal_connect(GTK_OBJECT(_query), "key_press_event", - GTK_SIGNAL_FUNC(key_pressed), NULL); - - /* if we're not an applet, we want to request focus and grab the - current X selection */ - if (!applet_mode) { - /* focus the text entry box */ - gtk_widget_grab_focus(_query); - - /* register a signal handler that will select the selection when - it arrives */ - gtk_signal_connect_after(GTK_OBJECT(_query), "selection_received", - GTK_SIGNAL_FUNC(selection_received), NULL); - - /* request the selection as type "STRING" */ - if (targets_atom == GDK_NONE) { - targets_atom = gdk_atom_intern ("STRING", FALSE); - } - gtk_selection_convert(_query, GDK_SELECTION_PRIMARY, targets_atom, - GDK_CURRENT_TIME); - } -} diff --git a/projects/lookuplet/src/c/querybox.h b/projects/lookuplet/src/c/querybox.h deleted file mode 100644 index 7a1cbb2a..00000000 --- a/projects/lookuplet/src/c/querybox.h +++ /dev/null @@ -1,33 +0,0 @@ -/** - * $Id: querybox.h,v 1.3 2001/08/16 20:25:09 mdb Exp $ - * - * lookuplet - a utility for quickly looking up information - * Copyright (C) 2001 Michael Bayne - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2.1 of the License, or (at your - * option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#ifndef _QUERYBOX_H_ -#define _QUERYBOX_H_ - -#include - -extern GtkWidget* -lk_querybox_create (void); - -extern void -lk_querybox_init (void); - -#endif /* _QUERYBOX_H_ */ diff --git a/projects/lookuplet/src/gnome-lookuplet.xpm b/projects/lookuplet/src/gnome-lookuplet.xpm deleted file mode 100644 index c4a23a84..00000000 --- a/projects/lookuplet/src/gnome-lookuplet.xpm +++ /dev/null @@ -1,103 +0,0 @@ -/* XPM */ -static char * paw_small_xpm[] = { -"14 18 82 1", -" c None", -". c #FEFEFE", -"+ c #FDFDFD", -"@ c #A4A4A4", -"# c #BEBEBE", -"$ c #E3E3E3", -"% c #767676", -"& c #FFFFFF", -"* c #858585", -"= c #5E5E5E", -"- c #E0E0E0", -"; c #9E9E9E", -"> c #292929", -", c #0D0D0D", -"' c #000000", -") c #2E2E2E", -"! c #DDDDDD", -"~ c #181818", -"{ c #717171", -"] c #F6F6F6", -"^ c #909090", -"/ c #777777", -"( c #131313", -"_ c #F9F9F9", -": c #D1D1D1", -"< c #B8B8B8", -"[ c #555555", -"} c #414141", -"| c #878787", -"1 c #DADADA", -"2 c #808080", -"3 c #757575", -"4 c #464646", -"5 c #222222", -"6 c #B4B4B4", -"7 c #212121", -"8 c #151515", -"9 c #D9D9D9", -"0 c #9A9A9A", -"a c #656565", -"b c #303030", -"c c #0C0C0C", -"d c #0F0F0F", -"e c #BFBFBF", -"f c #1B1B1B", -"g c #7A7A7A", -"h c #4B4B4B", -"i c #010101", -"j c #8B8B8B", -"k c #BABABA", -"l c #F0F0F0", -"m c #F5F5F5", -"n c #929292", -"o c #3D3D3D", -"p c #3B3B3B", -"q c #444444", -"r c #AEAEAE", -"s c #3E3E3E", -"t c #737373", -"u c #4D4D4D", -"v c #969696", -"w c #B5B5B5", -"x c #070707", -"y c #030303", -"z c #CCCCCC", -"A c #BBBBBB", -"B c #DEDEDE", -"C c #161616", -"D c #060606", -"E c #C3C3C3", -"F c #CECECE", -"G c #FBFBFB", -"H c #A8A8A8", -"I c #CDCDCD", -"J c #373737", -"K c #454545", -"L c #DFDFDF", -"M c #AAAAAA", -"N c #7F7F7F", -"O c #FCFCFC", -"P c #5A5A5A", -"Q c #EBEBEB", -" + @ ", -" #$ % ", -" *=- ;>$ ", -" -,')!~'{ ", -"] ^'''/''(_ : ", -"<$['''}'''] | ", -"123'''4''56789", -"0'ab'(-cdef''g", -"h'ijkl m-n'''o", -"p''q rs%&t'''o", -"u''vwx'y0z)''0", -"AybBC'''DE+FFG", -" HIJ'''''K ", -" w'''''''L ", -" ^'''''''* ", -" M'''''''N ", -" OP''''''N ", -" GtssssaQ "}; diff --git a/projects/lookuplet/src/lookuplet.cc b/projects/lookuplet/src/lookuplet.cc deleted file mode 100644 index 409abafe..00000000 --- a/projects/lookuplet/src/lookuplet.cc +++ /dev/null @@ -1,71 +0,0 @@ -// -// $Id: lookuplet.cc,v 1.2 2003/11/30 23:50:18 mdb Exp $ - -#include -#include - -#include -#include -#include -#include -// #include - -#include "lookuplet.hh" -#include "binding.hh" -#include "about.hh" -#include "properties.hh" - -using namespace std; - -static void got_clip_text ( - GtkClipboard* clipboard, const gchar* text, gpointer data) -{ - ((lookuplet*)data)->on_clip_text_received(text); -} - -bool lookuplet::on_query_key_press_event (GdkEventKey* ev) -{ - printf("key pressed %d %d\n", ev->type, ev->keyval); - return 0; -} - -void lookuplet::on_clip_text_received (const gchar* text) -{ - _query->set_text(text); -} - -void lookuplet::on_prefs_clicked () -{ - manage(new class properties()); -} - -void lookuplet::exit_lookuplet () -{ -} - -bool Gtk::Widget::on_delete_event (GdkEventAny* event) -{ - exit(0); -} - -int main (int argc, char** argv) -{ - Gnome::Main m(PACKAGE, VERSION, Gnome::UI::module_info_get(), argc, argv); -// Gnome::Bonobo::wrap_init(); - - lookuplet* lookuplet = new class lookuplet(); -// binding *binding = new class binding(); -// about *about = new class about(); -// properties *properties = new class properties(); - - GtkClipboard* clip = gtk_clipboard_get(GDK_SELECTION_PRIMARY); - gtk_clipboard_request_text(clip, &got_clip_text, lookuplet); - m.run(*lookuplet); - - delete lookuplet; -// delete binding; -// delete about; -// delete properties; - - return 0; -} diff --git a/projects/lookuplet/src/lookuplet.desktop b/projects/lookuplet/src/lookuplet.desktop deleted file mode 100755 index 0499c7bb..00000000 --- a/projects/lookuplet/src/lookuplet.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Name=Lookuplet -Comment=Look things up on the web and elsewhere -Exec=lookuplet --activate-goad-server=lookuplet -Icon=gnome-lookuplet.xpm -Terminal=0 -Type=Application diff --git a/projects/lookuplet/src/lookuplet.gnorba b/projects/lookuplet/src/lookuplet.gnorba deleted file mode 100755 index a1701c27..00000000 --- a/projects/lookuplet/src/lookuplet.gnorba +++ /dev/null @@ -1,5 +0,0 @@ -[lookuplet] -type=exe -repo_id=IDL:GNOME/Applet:1.0 -description=Looks things up on the web and elsewhere -location_info=lookuplet diff --git a/projects/lookuplet/src/lookuplet.hh b/projects/lookuplet/src/lookuplet.hh deleted file mode 100644 index 0c376e2e..00000000 --- a/projects/lookuplet/src/lookuplet.hh +++ /dev/null @@ -1,18 +0,0 @@ -// -// $Id: lookuplet.hh,v 1.2 2003/11/30 23:50:18 mdb Exp $ - -#ifndef _LOOKUPLET_HH -#include "lookuplet_glade.hh" -#define _LOOKUPLET_HH - -class lookuplet : public lookuplet_glade -{ - friend class lookuplet_glade; - bool on_query_key_press_event(GdkEventKey *ev); - void on_prefs_clicked(); - void exit_lookuplet(); -public: - void on_clip_text_received(const gchar* text); -}; - -#endif diff --git a/projects/lookuplet/src/lookuplet_glade.cc b/projects/lookuplet/src/lookuplet_glade.cc deleted file mode 100644 index dd2c4273..00000000 --- a/projects/lookuplet/src/lookuplet_glade.cc +++ /dev/null @@ -1,54 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// DO NOT EDIT THIS FILE ! It was created using -// /usr/local/bin/glade-- --gnome2 lookuplet.glade -// for gtk 2.0.9 and gtkmm 2.0.0 -// -// Please modify the corresponding derived classes in ./src/lookuplet.cc - -#include "config.h" -#include "lookuplet_glade.hh" -#include -#include -#include - -lookuplet_glade::lookuplet_glade( -) : Gtk::Window(Gtk::WINDOW_TOPLEVEL) -{ - - Gtk::Window *lookuplet = this; - Gtk::Label *qlabel = manage(new class Gtk::Label("Query")); - _query = manage(new class Gtk::Entry()); - - Gtk::Button *prefs = manage(new class Gtk::Button("Prefs")); - Gtk::HBox *mainbox = manage(new class Gtk::HBox(false, 5)); - qlabel->set_alignment(0.5,0.5); - qlabel->set_padding(0,0); - qlabel->set_justify(Gtk::JUSTIFY_CENTER); - qlabel->set_line_wrap(false); - _query->set_flags(Gtk::CAN_FOCUS); - _query->set_editable(true); - _query->set_text(""); - prefs->set_relief(Gtk::RELIEF_NORMAL); - mainbox->set_border_width(5); - mainbox->pack_start(*qlabel, Gtk::PACK_SHRINK, 0); - mainbox->pack_start(*_query); - mainbox->pack_start(*prefs, Gtk::PACK_SHRINK, 0); - lookuplet->set_title("lookuplet"); - lookuplet->set_modal(false); - lookuplet->property_window_position().set_value(Gtk::WIN_POS_NONE); - lookuplet->set_resizable(true); - lookuplet->add(*mainbox); - qlabel->show(); - _query->show(); - prefs->show(); - mainbox->show(); - lookuplet->show(); - _query->signal_key_press_event().connect(SigC::slot(*this, &lookuplet_glade::on_query_key_press_event)); - prefs->signal_clicked().connect(SigC::slot(*this, &lookuplet_glade::on_prefs_clicked)); -} - -lookuplet_glade::~lookuplet_glade() -{ -} diff --git a/projects/lookuplet/src/lookuplet_glade.hh b/projects/lookuplet/src/lookuplet_glade.hh deleted file mode 100644 index c6128bd4..00000000 --- a/projects/lookuplet/src/lookuplet_glade.hh +++ /dev/null @@ -1,29 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// DO NOT EDIT THIS FILE ! It was created using -// /usr/local/bin/glade-- --gnome2 lookuplet.glade -// for gtk 2.0.9 and gtkmm 2.0.0 -// -// Please modify the corresponding derived classes in ./src/lookuplet.hh and./src/lookuplet.cc - -#ifndef _LOOKUPLET_GLADE_HH -# define _LOOKUPLET_GLADE_HH - -#include -#include - -class lookuplet_glade : public Gtk::Window -{ -protected: - - class Gtk::Entry *_query; - - lookuplet_glade(); - - ~lookuplet_glade(); -private: - virtual bool on_query_key_press_event(GdkEventKey *ev) = 0; - virtual void on_prefs_clicked() = 0; -}; -#endif diff --git a/projects/lookuplet/src/properties.cc b/projects/lookuplet/src/properties.cc deleted file mode 100644 index 8e95b91f..00000000 --- a/projects/lookuplet/src/properties.cc +++ /dev/null @@ -1,21 +0,0 @@ -// -// $Id: properties.cc,v 1.1 2003/11/28 21:34:59 mdb Exp $ - -#include "config.h" -#include "properties.hh" - -void properties::on_delete_clicked () -{ -} - -void properties::on_edit_clicked () -{ -} - -void properties::on_add_clicked () -{ -} - -void properties::on_close_clicked () -{ -} diff --git a/projects/lookuplet/src/properties.hh b/projects/lookuplet/src/properties.hh deleted file mode 100644 index 52410af4..00000000 --- a/projects/lookuplet/src/properties.hh +++ /dev/null @@ -1,18 +0,0 @@ -// -// $Id: properties.hh,v 1.1 2003/11/28 21:34:59 mdb Exp $ - -#ifndef _PROPERTIES_HH -#include "properties_glade.hh" -#define _PROPERTIES_HH - -class properties : public properties_glade -{ - friend class properties_glade; - - void on_delete_clicked (); - void on_edit_clicked (); - void on_add_clicked (); - void on_close_clicked (); -}; - -#endif diff --git a/projects/lookuplet/src/properties_glade.cc b/projects/lookuplet/src/properties_glade.cc deleted file mode 100644 index cdde11df..00000000 --- a/projects/lookuplet/src/properties_glade.cc +++ /dev/null @@ -1,108 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// DO NOT EDIT THIS FILE ! It was created using -// /usr/local/bin/glade-- --gnome2 lookuplet.glade -// for gtk 2.0.9 and gtkmm 2.0.0 -// -// Please modify the corresponding derived classes in ./src/properties.cc - -#include "config.h" -#include "properties_glade.hh" -#include -#include -#include -#include -#include -#include -#include - -properties_glade::properties_glade( -) : Gtk::Window(Gtk::WINDOW_TOPLEVEL) -{ - - Gtk::Window *properties = this; - _bindings = manage(new class Gtk::TreeView()); - - Gtk::ScrolledWindow *scrolledwindow2 = manage(new class Gtk::ScrolledWindow()); - Gtk::Button *del = manage(new class Gtk::Button("Delete")); - Gtk::Button *edit = manage(new class Gtk::Button("Edit...")); - Gtk::Button *add = manage(new class Gtk::Button("Add...")); - Gtk::HBox *hbox5 = manage(new class Gtk::HBox(false, 5)); - Gtk::VBox *vbox4 = manage(new class Gtk::VBox(false, 5)); - Gtk::Label *blabel = manage(new class Gtk::Label("Bindings")); - Gtk::Notebook *notebook = manage(new class Gtk::Notebook()); - Gtk::HSeparator *hseparator1 = manage(new class Gtk::HSeparator()); - Gtk::Button *close = manage(new class Gtk::Button(Gtk::StockID("gtk-close"))); - Gtk::HButtonBox *hbuttonbox1 = manage(new class Gtk::HButtonBox(Gtk::BUTTONBOX_END, 0)); - Gtk::VBox *vbox3 = manage(new class Gtk::VBox(false, 5)); - _bindings->set_flags(Gtk::CAN_FOCUS); - _bindings->set_headers_visible(true); - _bindings->set_rules_hint(false); - _bindings->set_reorderable(false); - _bindings->set_enable_search(true); - scrolledwindow2->set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC); - scrolledwindow2->add(*_bindings); - del->set_sensitive(false); - del->set_flags(Gtk::CAN_FOCUS); - del->set_relief(Gtk::RELIEF_NORMAL); - edit->set_sensitive(false); - edit->set_flags(Gtk::CAN_FOCUS); - edit->set_relief(Gtk::RELIEF_NORMAL); - add->set_flags(Gtk::CAN_FOCUS); - add->set_relief(Gtk::RELIEF_NORMAL); - hbox5->pack_start(*del, Gtk::PACK_SHRINK, 0); - hbox5->pack_start(*edit, Gtk::PACK_SHRINK, 0); - hbox5->pack_start(*add, Gtk::PACK_SHRINK, 0); - vbox4->set_border_width(5); - vbox4->pack_start(*scrolledwindow2); - vbox4->pack_start(*hbox5, Gtk::PACK_SHRINK, 0); - blabel->set_alignment(0.5,0.5); - blabel->set_padding(0,0); - blabel->set_justify(Gtk::JUSTIFY_CENTER); - blabel->set_line_wrap(false); - notebook->set_flags(Gtk::CAN_FOCUS); - notebook->set_show_tabs(true); - notebook->set_show_border(true); - notebook->set_tab_pos(Gtk::POS_TOP); - notebook->set_scrollable(false); - notebook->append_page(*vbox4, *blabel); - notebook->pages().back().set_tab_label_packing(false, true, Gtk::PACK_START); - close->set_flags(Gtk::CAN_FOCUS); - close->set_relief(Gtk::RELIEF_NORMAL); - hbuttonbox1->pack_start(*close); - vbox3->set_border_width(5); - vbox3->set_homogeneous(false); - vbox3->set_spacing(5); - vbox3->pack_start(*notebook); - vbox3->pack_start(*hseparator1, Gtk::PACK_SHRINK, 0); - vbox3->pack_start(*hbuttonbox1, Gtk::PACK_SHRINK, 0); - properties->set_size_request(-1,400); - properties->set_title("Lookuplet Properties"); - properties->set_modal(false); - properties->property_window_position().set_value(Gtk::WIN_POS_NONE); - properties->set_resizable(true); - properties->add(*vbox3); - _bindings->show(); - scrolledwindow2->show(); - del->show(); - edit->show(); - add->show(); - hbox5->show(); - vbox4->show(); - blabel->show(); - notebook->show(); - hseparator1->show(); - close->show(); - hbuttonbox1->show(); - vbox3->show(); - properties->show(); - del->signal_clicked().connect(SigC::slot(*this, &properties_glade::on_delete_clicked)); - edit->signal_clicked().connect(SigC::slot(*this, &properties_glade::on_edit_clicked)); - add->signal_clicked().connect(SigC::slot(*this, &properties_glade::on_add_clicked)); - close->signal_clicked().connect(SigC::slot(*this, &properties_glade::on_close_clicked)); -} - -properties_glade::~properties_glade() -{ -} diff --git a/projects/lookuplet/src/properties_glade.hh b/projects/lookuplet/src/properties_glade.hh deleted file mode 100644 index 4c32a2ca..00000000 --- a/projects/lookuplet/src/properties_glade.hh +++ /dev/null @@ -1,31 +0,0 @@ -// generated 2002/12/1 21:56:20 PST by mdb@baltic.(none) -// using glademm V1.1.3c_cvs -// -// DO NOT EDIT THIS FILE ! It was created using -// /usr/local/bin/glade-- --gnome2 lookuplet.glade -// for gtk 2.0.9 and gtkmm 2.0.0 -// -// Please modify the corresponding derived classes in ./src/properties.hh and./src/properties.cc - -#ifndef _PROPERTIES_GLADE_HH -# define _PROPERTIES_GLADE_HH - -#include -#include - -class properties_glade : public Gtk::Window -{ -protected: - - class Gtk::TreeView *_bindings; - - properties_glade(); - - ~properties_glade(); -private: - virtual void on_delete_clicked() = 0; - virtual void on_edit_clicked() = 0; - virtual void on_add_clicked() = 0; - virtual void on_close_clicked() = 0; -}; -#endif diff --git a/projects/lookuplet/src/python/bindings.py b/projects/lookuplet/src/python/bindings.py deleted file mode 100644 index bf449baf..00000000 --- a/projects/lookuplet/src/python/bindings.py +++ /dev/null @@ -1,176 +0,0 @@ -# -# $Id: bindings.py,v 1.3 2003/11/28 21:34:59 mdb Exp $ -# -# lookuplet - a utility for quickly looking up information -# Copyright (C) 2001 Michael Bayne -# -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 2.1 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -import posix -import re -import string -import urllib - -import gnome -import gconf - -class Binding: - "Contains the configuration for a particular key binding and its \ - associated query mapping." - - # constants defining which type of binding this is - URL = 0; - EXEC = 1; - - # the key combination associated with this binding - key = ""; - - # the type of binding (URL or Exec) - type = URL; - - # the human readable name of the binding - name = ""; - - # the URL or command line assosciated with the binding - argument = ""; - - # - # Constructs a binding with its requisite parameters. - # - def __init__ (self, key, type, name, argument): - self.key = key; - self.type = type; - self.name = name; - self.argument = argument; - - def invoke (self, terms): - command = re.sub("%T", terms, self.argument); - command = re.sub("%U", urllib.quote(terms), command); - if (self.type == self.EXEC): - posix.system(command) - else: - # gnome.url_show(command) - posix.system("gnome-mozilla '%s'" % command) - - def update (self, key, type, name, argument): - modified = 0; - if (cmp(key, self.key)): - self.key = key; - modified = 1; - - if (type != self.type): - self.type = type; - modified = 1; - - if (cmp(name, self.name)): - self.name = name; - modified = 1; - - if (cmp(argument, self.argument)): - self.argument = argument; - modified = 1; - - return modified; - - def to_string (self): - return "[key=%s, type=%d, name=%s, arg=%s]" % ( - self.key, self.type, self.name, self.argument); - -class BindingSet: - "Maintains the set of bindings loading into the program." - - # our gconf client instance - gclient = None; - - # the list of Binding objects - bindings = []; - - # - # The default constructor. Loads up our bindings from GConf. - # - def __init__ (self): - # connect to the gconf server - gclient = gconf.client_get_default(); - gclient.add_dir("/apps/lookuplet", gconf.CLIENT_PRELOAD_NONE); - - count = 0; - -# gnome.config.push_prefix("/lookuplet/"); -# count = gnome.config.get_int("lookuplet/bindings/count"); -# for b in range(0, count): -# key = gnome.config.get_string("lookuplet/bindings/key_%.2u" % b); -# type = gnome.config.get_int("lookuplet/bindings/type_%.2u" % b); -# name = gnome.config.get_string("lookuplet/bindings/name_%.2u" % b); -# arg = gnome.config.get_string("lookuplet/bindings/arg_%.2u" % b); -# self.bindings.append(Binding(key, type, name, arg)); -# gnome.config.pop_prefix(); - - # if we loaded no bindings, use the defaults - if (count == 0): - self.bindings.append(Binding( - "Control-g", Binding.URL, "Google search", - "http://www.google.com/search?client=googlet&q=%U")); - self.bindings.append(Binding( - "Control-d", Binding.EXEC, "Dictionary lookup", - "gdict -a '%T'")); - self.bindings.append(Binding( - "Control-Shift-d", Binding.URL, "Debian package search", - "http://cgi.debian.org/cgi-bin/search_contents.pl?word=%U" + - "&case=insensitive&version=unstable&arch=i386" + - "&directories=yes")); - self.bindings.append(Binding( - "Control-f", Binding.URL, "Freshmeat search", - "http://freshmeat.net/search/?q=%U")); - self.bindings.append(Binding( - "Control-i", Binding.URL, "IMDB Title search", - "http://www.imdb.com/Tsearch?title=%U&restrict=Movies+only")); - - # temporary hacked defaults - self.bindings.append(Binding( - "Control-j", Binding.EXEC, "Java doc lookup", - "/home/mdb/bin/quickdoc.pl \"%T\"")); - return; - - # - # Returns the binding with a keysym matching the specified keysym or - # None if no binding matches. - # - def get_match (self, keysym): - for binding in self.bindings: - if (binding.key == keysym): - return binding - return None; - - # - # Stores our updated bindings to our GConf preferences. - # - def flush (self): -# gnome.config.push_prefix("/lookuplet/"); -# gnome.config.set_int("lookuplet/bindings/count", len(self.bindings)); -# b = 0 -# for binding in self.bindings: -# gnome.config.set_string( -# "lookuplet/bindings/key_%.2u" % b, binding.key); -# gnome.config.set_int( -# "lookuplet/bindings/type_%.2u" % b, binding.type); -# gnome.config.set_string( -# "lookuplet/bindings/name_%.2u" % b, binding.name); -# gnome.config.set_string( -# "lookuplet/bindings/arg_%.2u" % b, binding.argument); -# b += 1; -# gnome.config.sync(); -# gnome.config.drop_all(); -# gnome.config.pop_prefix(); - return; diff --git a/projects/lookuplet/src/python/edit_binding.py b/projects/lookuplet/src/python/edit_binding.py deleted file mode 100644 index 700b016b..00000000 --- a/projects/lookuplet/src/python/edit_binding.py +++ /dev/null @@ -1,156 +0,0 @@ -# -# $Id: edit_binding.py,v 1.2 2003/11/28 21:34:59 mdb Exp $ -# -# lookuplet - a utility for quickly looking up information -# Copyright (C) 2001 Michael Bayne -# -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 2.1 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -import string -import re - -import gtk -import gnome.ui - -import bindings -import keyval_util - -class BindingEditor: - # the properties instance for which we're editing bindings - props = None; - - # our bindings set - bindings = None; - - # the binding editor panel - bindPanel = None; - - # the grab window - grabWindow = None; - - # the iterator for the binding we're editing - iterator = None; - - # the binding we're editing - binding = None; - - # the key entry field - keyField = None; - - # the name entry field - nameField = None; - - # the argument type selector - argTypeSel = None; - - # the URL menu item of the arg selection widget - urlItem = None; - - # the argument entry field - argField = None; - - def __init__ (self, xmlui, props): - # keep these around for later - self.props = props; - - # get a reference to some widgets - self.bindPanel = xmlui.get_widget("binding"); - self.grabWindow = xmlui.get_widget("grab"); - self.keyField = xmlui.get_widget("key"); - self.nameField = xmlui.get_widget("name"); - self.argTypeSel = xmlui.get_widget("type"); - self.urlItem = self.argTypeSel.get_menu().get_active(); - self.argField = xmlui.get_widget("argument"); - - # wire up our handlers - xmlui.signal_connect("on_ok_clicked", self.on_ok_clicked); - xmlui.signal_connect("on_cancel_clicked", self.on_cancel_clicked); - xmlui.signal_connect("on_key_key_press_event", - self.on_key_key_press_event); - - # - # Instructs the binding panel to display itself, configured for - # editing the supplied binding. - # - def editBinding (self, iterator, binding): - self.iterator = iterator; - self.binding = binding; - self.populateAndShow(self.binding); - - # - # Instructs the binding panel to create a blank binding and make that - # available for editing by the user. - # - def createBinding (self): - self.iterator = None; - # create a blank binding and edit it - self.binding = bindings.Binding("", bindings.Binding.URL, "", ""); - self.populateAndShow(self.binding); - - # - # A helper function used to populate our widgets and show the dialog. - # - def populateAndShow (self, binding): - # populate our widgets with the binding values - self.keyField.set_text(binding.key); - self.nameField.set_text(binding.name); - self.argTypeSel.set_history(binding.type); - self.argField.set_text(binding.argument); - - # and show the bind dialog - self.bindPanel.show(); - - # - # A callback, called when the OK button is clicked. - # - def on_ok_clicked (self, button): - # figure out which type menu item is selected; what a hack - active = self.argTypeSel.get_menu().get_active(); - if (active == self.urlItem): - type = bindings.Binding.URL; - else: - type = bindings.Binding.EXEC; - - # repopulate our binding - modified = self.binding.update(self.keyField.get_text(), type, - self.nameField.get_text(), - self.argField.get_text()); - - # let the props panel know if there were any modifications - if (modified): - if (self.iterator == None): - self.props.created(self.binding); - else: - self.props.updated(self.iterator, self.binding); - - # hide the binding panel - self.bindPanel.hide(); - - # - # A callback, called when the cancel button is clicked. - # - def on_cancel_clicked (self, button): - # hide the binding panel - self.bindPanel.hide(); - - def on_key_key_press_event (self, textfield, event): - # ignore plain or shifted keystrokes - if (event.state > 1): - # convert the key press into a string - keystr = keyval_util.convert_keyval_state_to_string( - event.keyval, event.state); - textfield.set_text(keystr); - return gtk.TRUE; - return gtk.FALSE; diff --git a/projects/lookuplet/src/python/history.py b/projects/lookuplet/src/python/history.py deleted file mode 100644 index 876d83ab..00000000 --- a/projects/lookuplet/src/python/history.py +++ /dev/null @@ -1,90 +0,0 @@ -# -# $Id: history.py,v 1.2 2003/11/28 21:34:59 mdb Exp $ -# -# lookuplet - a utility for quickly looking up information -# Copyright (C) 2001 Michael Bayne -# -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 2.1 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -import gconf - -class History: - "Used to persistently maintain a history of entries for the \ - lookuplet query text field." - - # the maximum history size - HISTORY_SIZE = 10; - - # the actual history entries - history = []; - - # - # Loads up the history from persistent preferences and prepares for - # operation. - # - def __init__ (self): -# gnome.config.push_prefix("/lookuplet/"); -# count = gnome.config.get_int("lookuplet/history/count"); -# for h in range(0, count): -# self.history.append(gnome.config.get_string( -# "lookuplet/history/entry_%.2u" % h)); -# # print "loaded %d: %s" % (h, self.history[h]); -# gnome.config.pop_prefix(); - return; - - # - # Adds an entry to the history. - # - def append (self, entry): - # if this entry is already in the history list, we simply want to - # move it to the end - if (entry in self.history): - self.history.remove(entry); - - # add our entry - self.history.append(entry); - - # trim the history if it's too big - if (len(self.history) > self.HISTORY_SIZE): - self.history.pop(0); - - # flush our config to the configuration repository -# gnome.config.push_prefix("/lookuplet/"); -# count = len(self.history); -# gnome.config.set_int("lookuplet/history/count", count); -# for h in range(0, count): -# gnome.config.set_string( -# "lookuplet/history/entry_%.2u" % h, self.history[h]); -# # print "wrote %d: %s" % (h, self.history[h]); -# gnome.config.sync(); -# gnome.config.drop_all(); -# gnome.config.pop_prefix(); - - # - # Scans back from one before the specified index looking for a history - # entry that matches the specified prefix, returning its index if one - # is found or -1 if one is not. - # - def match (self, prefix, index): - count = len(self.history); - for offset in range(1, count+1): - # do some funny math to always ensure a positive value - pos = (index - offset + count) % count; - # print "scanning %s for %s." % (self.history[pos], prefix); - if (self.history[pos].find(prefix) == 0): - # print "found it at %d." % pos; - return pos; - # print "didn't find it."; - return -1; diff --git a/projects/lookuplet/src/python/keyval_util.py b/projects/lookuplet/src/python/keyval_util.py deleted file mode 100644 index 3be80239..00000000 --- a/projects/lookuplet/src/python/keyval_util.py +++ /dev/null @@ -1,62 +0,0 @@ -# -# $Id: keyval_util.py,v 1.3 2003/11/28 21:34:59 mdb Exp $ -# -# lookuplet - a utility for quickly looking up information -# Copyright (C) 2001 Michael Bayne -# -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 2.1 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -import string - -import gtk -import gtk.gdk - -# these are used when doing our conversion; we specifically only care -# about Control, Shift and Mod1 (Alt); if you want to use other keys in -# your combinations, we don't want you drinking our soda -_CODES = [ gtk.gdk.CONTROL_MASK, - gtk.gdk.SHIFT_MASK, - gtk.gdk.MOD1_MASK ]; -_NAMES = [ "Control", "Shift", "Mod1" ]; - -# -# Converts a (keyval, state) pair to a human readable string. -# -def convert_keyval_state_to_string (keyval, state): - # bail if we've got an invalid kesym - if (keyval == 0): - return "None"; - - # start with the empty string - modstr = ""; - - # we'd like to ask gtk.gdk to convert the key itself to a string, - # but they don't wrap those functions. dooh! - # key = gtk.gdk_keyval_name(keyval); - - # so we do this hack instead - if (keyval < 0 or keyval > 255): - return "None"; - key = string.lower(chr(keyval)); - - # we have to handle the modifiers ourselves - i = 0; - for code in _CODES: - if (state & code): - modstr += _NAMES[i]; - modstr += "-"; - i += 1; - - return modstr + key; diff --git a/projects/lookuplet/src/python/lookuplet b/projects/lookuplet/src/python/lookuplet deleted file mode 100755 index a4b62b66..00000000 --- a/projects/lookuplet/src/python/lookuplet +++ /dev/null @@ -1,71 +0,0 @@ -#!/usr/bin/env python -# -# $Id: lookuplet,v 1.3 2003/11/28 21:34:59 mdb Exp $ -# -# lookuplet - a utility for quickly looking up information -# Copyright (C) 2001 Michael Bayne -# -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 2.1 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -import string -import sys -import re -import os - -import pygtk -pygtk.require('2.0') - -import gnome.applet -import gtk -import gtk.glade - -# figure out where we were run from -basedir = sys.argv[0]; -basedir = re.sub("/lookuplet$", "", basedir); -basedir = re.sub("/bin$", "", basedir); -libdir = basedir + "/share/lookuplet"; - -# add our library directory to the system path -sys.path.append(libdir); - -import bindings -import lookuplet -import properties - -# load up our glade UI definition -try: - os.stat(basedir + "/lookuplet.glade"); - xmlui = gtk.glade.XML(basedir + "/lookuplet.glade"); -except OSError: - os.stat(libdir + "/lookuplet.glade"); - xmlui = gtk.glade.XML(libdir + "/lookuplet.glade"); - -# load up our bindings -bindings = bindings.BindingSet(); - -# figure out if we're an applet or not -appletMode = 0; -for arg in sys.argv: - if (arg.find("activate-goad-server") != -1): - appletMode = 1 - -# create our properties manager -props = properties.Properties(xmlui, bindings); - -# create our primary user interface -lookuplet = lookuplet.Lookuplet(xmlui, bindings, props, appletMode); - -# let GTK do its business -gtk.mainloop(); diff --git a/projects/lookuplet/src/python/lookuplet.py b/projects/lookuplet/src/python/lookuplet.py deleted file mode 100644 index 042b2bdd..00000000 --- a/projects/lookuplet/src/python/lookuplet.py +++ /dev/null @@ -1,272 +0,0 @@ -# -# $Id: lookuplet.py,v 1.4 2003/11/28 21:34:59 mdb Exp $ -# -# lookuplet - a utility for quickly looking up information -# Copyright (C) 2001 Michael Bayne -# -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 2.1 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -import string -import re - -import gnome.applet -import gtk -import gtk.keysyms -import gnome.ui - -import bindings -import history -import keyval_util -import properties - -class Lookuplet: - "Handles the primary setup and operation of the lookuplet application." - - # our special key definitions - PREV_HISTORY_KEY = gtk.keysyms.Up - NEXT_HISTORY_KEY = gtk.keysyms.Down - AUTO_COMPLETE_KEY = gtk.keysyms.Tab - - # a reference to our key bindings - bindings = None; - - # our about box - about = None; - - # a reference to the properties manager - props = None; - - # whether or not we're running as a Gnome applet - appletMode = 0; - - # our query box history - history = None; - - # where we are if we're scanning the history - hisidx = -1; - - # the prefix we're using to match if we're matching on a prefix - hispref = None; - - def __init__ (self, xmlui, bindings, props, appletMode): - window = xmlui.get_widget("lookuplet"); - self.about = xmlui.get_widget("about"); - self.bindings = bindings; - self.props = props; - self.appletMode = appletMode; - - # wire up our handlers - xmlui.signal_connect("on_query_key_press_event", - self.on_query_key_press_event); - xmlui.signal_connect("on_prefs_clicked", self.on_prefs_clicked); - xmlui.signal_connect("exit_lookuplet", self.exit_lookuplet); - - # create our query history - self.history = history.History(); - - # if we're in applet mode, extract the UI and stick it into an - # applet widget - if (appletMode): - applet = gnome.applet.AppletWidget("lookuplet"); - mainbox = xmlui.get_widget("mainbox"); - # lose the border - mainbox.set_border_width(0); - # and hide the prefs button - prefs = xmlui.get_widget("prefs"); - prefs.hide(); - # remove everything from the window - window.remove(mainbox); - # and add it to the applet - applet.add(mainbox); - # register our menu items - applet.register_stock_callback( - "properties", gnome.ui.STOCK_MENU_PROP, - "Properties...", self.on_props_selected, None); - applet.register_stock_callback( - "about", gnome.ui.STOCK_MENU_ABOUT, - "About...", self.on_about_selected, None); - applet.show(); - - else: - window.show(); - - # obtain the primary selection and stuff that into our entry box - # clip = gtk.clipboard_get(gtk.GDK_SELECTION_PRIMARY); - # selection = gtk.clipboard_wait_for_text(clip); - query = xmlui.get_widget("query"); - # self.display_selection(self, query, selection); - # query.paste_clipboard(); - - # put the focus in the query box - query.grab_focus(); - - def on_props_selected (self, one, two): - self.props.editProperties(); - - def on_about_selected (self, one, two): - self.about.show(); - - def on_prefs_clicked (self, button): - self.props.editProperties(); - - def handle_special_keys (self, query, event): - # we'll need this later - count = len(self.history.history); - - # handle special keystrokes such as history and auto-complete - if (event.keyval == self.NEXT_HISTORY_KEY): - if (self.hisidx >= 0 and self.hisidx < count): - self.hisidx += 1; - else: - return gtk.TRUE; - - elif (event.keyval == self.PREV_HISTORY_KEY): - if (self.hisidx > 0): - self.hisidx -= 1; - elif (self.hisidx == -1): - # if we haven't grabbed a prefix as of yet, grab what we've got - if (self.hispref == None): - self.hispref = query.get_text(); - # print "set prefix: %s" % self.hispref; - self.hisidx = count-1; - else: - return gtk.TRUE; - - elif (event.keyval == self.AUTO_COMPLETE_KEY): - # if we haven't grabbed a prefix as of yet, grab what we've got - if (self.hispref == None): - self.hispref = query.get_text(); - # print "set prefix: %s" % self.hispref; - - # if our history prefix has not yet been set, set it and start - # scanning through the history - if (self.hisidx == -1): - self.hisidx = count; - self.hisidx = self.history.match(self.hispref, self.hisidx); - - else: - return gtk.FALSE; - - # if we found something scrolling or autocompleting, show it - if (self.hisidx > -1 and self.hisidx < count): - # print "displaying history entry %d." % self.hisidx; - text = self.history.history[self.hisidx]; - self.set_query(query, text); - return gtk.TRUE; - - # otherwise go back to whatever we were editing - if (self.hispref != None): - # print "restoring prefix %s" % self.hispref; - self.set_query(query, self.hispref); - - # we always want to claim to have handled the keypress if it was - # the autocomplete key, otherwise GTK will move the focus from our - # query box widget - if (event.keyval == self.AUTO_COMPLETE_KEY): - return gtk.TRUE - else: - return gtk.FALSE; - - def set_query (self, query, text): - # display text in the query box and select it for easy erasal - query.set_text(text); - query.select_region(0, len(text)); - - def on_query_key_press_event (self, query, event): - # handle history browsing and auto-completion - if (self.handle_special_keys(query, event) == gtk.TRUE): - return gtk.TRUE; - - # clear out our history prefix because it's in the text field now - # and we'll grab it again if we need it - self.hispref = None; - self.hisidx = -1; - - # if they pressed return, map that to a special binding - if (event.keyval == gtk.keysyms.Return): - binding = bindings.Binding("", bindings.Binding.URL, "", "%T"); - - else: - # ignore plain or shifted keystrokes - if (event.state <= 1): - return gtk.FALSE; - # convert the key press into a string - keystr = keyval_util.convert_keyval_state_to_string( - event.keyval, event.state); - # look up a binding for that key string - binding = self.bindings.get_match(keystr); - - # if we found one, invoke it - if (binding != None): - text = query.get_text(); - binding.invoke(text); - # append this entry to our history - self.history.append(text); - # and either bail or get ready for the next go - if (self.appletMode): - query.set_text(""); - else: - gtk.mainquit(); - return gtk.TRUE; - - else: - # otherwise, let GTK know that we didn't handle the key press - return gtk.FALSE; - - def url_p (self, text): - return (re.match("^http:", text) or - re.match("^ftp:", text) or - re.match("^https:", text) or - re.match("^file:", text)); - - def on_query_selection_received (self, query, selection_data, data): - if (selection_data.length < 0): - # print "Selection retrieval failed."; - return; - - if (selection_data.type != gtk.keysyms.SELECTION_TYPE_STRING): - print "Selection target not returned as a string."; - return; - - print "Got selection '%s'." % selection_data.data; - display_selection(self, query, selection_data.data); - return; - - def display_selection (self, query, text): - # prune spaces from the end of the text - text = string.strip(text); - # compress whitespace (and convert newlines to spaces) - text = re.sub("[ \r\n]+", " ", text); - - # make sure some selection was provided - if (len(text) > 0): - # check to see if we're looking at a url here - is_url = self.url_p(text); - - # if this is a URL, we want to eat whitespace - if (is_url): - text = re.sub(" ", "", text); - - if (cmp(text, selection_data.data)): - # print "Setting trimmed text '" + text + "'."; - query.set_text(text); - - query.select_region(0, len(text)); - # print "Selected from %d to %d." % (0, len(text)); - - return; - - def exit_lookuplet (self, button): - gtk.mainquit(); diff --git a/projects/lookuplet/src/python/properties.py b/projects/lookuplet/src/python/properties.py deleted file mode 100644 index fd4f0866..00000000 --- a/projects/lookuplet/src/python/properties.py +++ /dev/null @@ -1,160 +0,0 @@ -# -# $Id: properties.py,v 1.3 2003/11/28 21:34:59 mdb Exp $ -# -# lookuplet - a utility for quickly looking up information -# Copyright (C) 2001-2002 Michael Bayne -# -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 2.1 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -import string -import re - -import gobject -import gtk -import gtk.gdk -import gnome.ui - -import edit_binding - -class Properties: - # our configured key bindings - bindings = None; - - # the properties panel - propsPanel = None; - - # our binding editor - bindEditor = None; - - # the bindings model - bindModel = None; - - # the edit button - editButton = None; - - # the delete button - deleteButton = None; - - # the selected binding index - selection = None; - - def __init__ (self, xmlui, bindings): - # keep a handle on our bindings - self.bindings = bindings; - - # create our binding editor - self.bindEditor = edit_binding.BindingEditor(xmlui, self); - - # get a reference to some widgets - self.propsPanel = xmlui.get_widget("properties"); - self.editButton = xmlui.get_widget("edit"); - self.deleteButton = xmlui.get_widget("delete"); - - # make our props panel not destroy itself on close - self.propsPanel.close_hides(gtk.TRUE); - - # wire up our handlers - xmlui.signal_connect("on_properties_apply", self.on_properties_apply); - xmlui.signal_connect("on_add_clicked", self.on_add_clicked); - xmlui.signal_connect("on_edit_clicked", self.on_edit_clicked); - xmlui.signal_connect("on_delete_clicked", self.on_delete_clicked); - - # set up our tree view - bindList = xmlui.get_widget("bindings"); - renderer = gtk.CellRendererText(); - bindList.append_column(gtk.TreeViewColumn("Key", renderer, text=0)); - bindList.append_column(gtk.TreeViewColumn("Name", renderer, text=1)); - - # create a data model for our bindings list view - self.bindModel = gtk.ListStore(gobject.TYPE_STRING, - gobject.TYPE_STRING, - gobject.TYPE_PYOBJECT); - - # configure our properties panel with the loaded bindings - for binding in bindings.bindings: - iter = self.bindModel.append() - self.bindModel.set_value(iter, 0, binding.key); - self.bindModel.set_value(iter, 1, binding.name); - self.bindModel.set_value(iter, 2, binding); - - bindList.set_model(self.bindModel); - - # wire up our selection monitor - selection = bindList.get_selection(); - selection.connect("changed", self.on_bindings_selection_changed); - - def editProperties (self): - self.propsPanel.show(); - return; - - def updated (self, iter, binding): - # refresh the display for the specified index - self.bindModel.set_value(iter, 0, binding.key); - self.bindModel.set_value(iter, 1, binding.name); - # and make a note that we've updated ourselves - self.propsPanel.changed(); - - def created (self, binding): - # add the new binding to our list - self.bindings.bindings.append(binding); - # add it to the display - iter = self.bindModel.append() - self.bindModel.set_value(iter, 0, binding.key); - self.bindModel.set_value(iter, 1, binding.name); - self.bindModel.set_value(iter, 2, binding); - # and make a note that we've updated ourselves - self.propsPanel.changed(); - - def on_bindings_selection_changed (self, selection): - # make a note of the iterator for the selected binding - model, self.selection = selection.get_selected(); - - # no ?: notation? egads! - if (self.selection == None): - sensitive = gtk.FALSE; - else: - sensitive = gtk.TRUE; - - # enable our buttons - self.editButton.set_sensitive(sensitive); - self.deleteButton.set_sensitive(sensitive); - - # make like they pressed the edit button on a double click - # if (event.type == gtk.gdk._2BUTTON_PRESS): - # self.on_edit_clicked(None); - - def on_properties_apply (self, panel, page): - if (page == 0): - self.bindings.flush(); - - def on_add_clicked (self, button): - # show the binding creation dialog - self.bindEditor.createBinding(); - return; - - def on_edit_clicked (self, button): - # tell the binding editor to edit this binding - binding = self.bindModel.get_value(self.selection, 2); - self.bindEditor.editBinding(self.selection, binding); - return; - - def on_delete_clicked (self, button): - # remove the binding from the display and our bindings list - binding = self.bindModel.get_value(self.selection, 2); - self.bindModel.remove(self.selection) - self.bindings.bindings.remove(binding); - self.selection = None; - self.propsPanel.changed(); - return;