Beginnings of a C++ rewrite. We love to switch languages!

git-svn-id: https://samskivert.googlecode.com/svn/trunk@1330 6335cc39-0255-0410-8fd6-9bcaacd3b74c
This commit is contained in:
mdb
2003-11-28 21:34:59 +00:00
parent cbdff2c883
commit e06d189d6e
38 changed files with 2308 additions and 724 deletions
+3
View File
@@ -17,3 +17,6 @@ libtool
ltmain.sh ltmain.sh
po po
*.tar.gz *.tar.gz
*_new
*.gladep
autom4te.cache
+30
View File
@@ -42,3 +42,33 @@
* projects/lookuplet/src/querybox.c: * projects/lookuplet/src/querybox.c:
Prune whitespace from the end of the selection before inserting it into Prune whitespace from the end of the selection before inserting it into
the lookuplet text widget. 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
+8
View File
@@ -0,0 +1,8 @@
# 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
+2
View File
@@ -1,4 +1,6 @@
TODO: TODO:
* Finish C++ rewrite
* Allow configuration of the default action (the one invoked when the user * Allow configuration of the default action (the one invoked when the user
presses return). presses return).
+15
View File
@@ -0,0 +1,15 @@
// 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
+19
View File
@@ -0,0 +1,19 @@
#!/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
+30
View File
@@ -0,0 +1,30 @@
# 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 )
+6
View File
@@ -1,3 +1,9 @@
lookuplet (1.3-1) unstable; urgency=low
* New upstream version: updated to work with Gnome 2.0.
-- Michael Bayne <mdb@samskivert.com> Sun, 24 Nov 2002 21:10:04 -0800
lookuplet (1.2-1) unstable; urgency=low lookuplet (1.2-1) unstable; urgency=low
* New upstream version: rewritten entirely in Python. * New upstream version: rewritten entirely in Python.
+1 -1
View File
@@ -7,7 +7,7 @@ Standards-Version: 3.5.6.0
Package: lookuplet Package: lookuplet
Architecture: any Architecture: any
Depends: python-gnome (>= 1.4.1-17) Depends: python-gnome2 (>= 1.99.13-2)
Description: Keystroke conscious query launching utility Description: Keystroke conscious query launching utility
lookuplet is a graphical utility that allows you to enter query terms and lookuplet is a graphical utility that allows you to enter query terms and
press predefined key-combinations to launch web queries or applications. press predefined key-combinations to launch web queries or applications.
-63
View File
@@ -1,63 +0,0 @@
#!/bin/sh
#
# $Id: install.sh,v 1.2 2002/03/18 00:17:57 mdb Exp $
#
# Builds the Debian packages for the release and installs them in the
# appropriate place on my web server for distribution.
DEBHOST=waywardgeeks.org
DEBDIR=/export/wayward/pages/code/debian
if [ -z "$1" ]; then
echo "Usage: $0 release_version (e.g. 1.2)"
exit -1
else
RELEASE=$1
shift
fi
TARGET=lookuplet-$RELEASE
# build the distribution
`dirname $0`/build-dist.sh $TARGET
# build our excludes file
cat > .excludes <<EOF
install.sh
CVS
.excludes
.cvsignore
*.tar.gz
*~
EOF
# create our distribution directory
mkdir /tmp/$TARGET
# temporarily move the distribution files into temp so that we can put
# them into a properly named directory
tar --exclude-from=.excludes -cf - * | tar -C /tmp/$TARGET -xf -
# build the debian packages
pushd /tmp/$TARGET
dpkg-buildpackage -tc -rfakeroot
# install the debian packages on the web server
if [ -f ../lookuplet_*.deb ]; then
# remove any old files
ssh $DEBHOST "rm $DEBDIR/pool/main/l/lookuplet/lookuplet_*"
# copy over the new files
scp ../lookuplet_* $DEBHOST:$DEBDIR/pool/main/l/lookuplet/
# update the packages file
ssh $DEBHOST "/export/wayward/bin/update_packages.pl"
# blow away our local copy
rm -f ../lookuplet_*
else
echo "No files to install."
fi
# clean up after ourselves
cd ..
rm -rf $TARGET
popd
rm .excludes
File diff suppressed because it is too large Load Diff
+4
View File
@@ -1,2 +1,6 @@
*.pyc *.pyc
lookuplet.messages lookuplet.messages
*_new
.deps
.libs
lookuplet
+410
View File
@@ -0,0 +1,410 @@
# 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:
+29
View File
@@ -0,0 +1,29 @@
#
# $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@
+410
View File
@@ -0,0 +1,410 @@
# 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:
+9
View File
@@ -0,0 +1,9 @@
// 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"
+18
View File
@@ -0,0 +1,18 @@
// 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
+30
View File
@@ -0,0 +1,30 @@
// 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 <vector>
const char * const about_authors[] =
{ "Michael Bayne <mdb@samskivert.com>", 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()
{
}
+24
View File
@@ -0,0 +1,24 @@
// 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 <libgnomeuimm/about.h>
class about_glade : public Gnome::UI::About
{
protected:
about_glade();
~about_glade();
};
#endif
+21
View File
@@ -0,0 +1,21 @@
// 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;
}
+22
View File
@@ -0,0 +1,22 @@
// 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
+119
View File
@@ -0,0 +1,119 @@
// 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 <gtkmm/button.h>
#include <gtkmm/buttonbox.h>
#include <gtkmm/label.h>
#include <gtkmm/box.h>
#include <gtkmm/menuitem.h>
#include <gtkmm/menu.h>
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()
{
}
+34
View File
@@ -0,0 +1,34 @@
// 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 <gtkmm/dialog.h>
#include <gtkmm/entry.h>
#include <gtkmm/optionmenu.h>
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
+60
View File
@@ -0,0 +1,60 @@
//
// $Id: lookuplet.cc,v 1.1 2003/11/28 21:34:59 mdb Exp $
#include <cstdlib>
#include <iostream>
#include <config.h>
#include <libgnomemm/main.h>
#include <libgnomeuimm/init.h>
// #include <bonobomm/widgets/wrap_init.h>
#include "lookuplet.hh"
#include "binding.hh"
#include "about.hh"
#include "properties.hh"
using namespace std;
bool lookuplet::on_query_key_press_event (GdkEventKey *ev)
{
return 0;
}
void lookuplet::on_query_selection_received (GtkSelectionData *data, guint time)
{
}
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();
m.run(*lookuplet);
delete lookuplet;
// delete binding;
// delete about;
// delete properties;
return 0;
}
+17
View File
@@ -0,0 +1,17 @@
//
// $Id: lookuplet.hh,v 1.1 2003/11/28 21:34:59 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_query_selection_received(GtkSelectionData *data, guint time);
void on_prefs_clicked();
void exit_lookuplet();
};
#endif
+55
View File
@@ -0,0 +1,55 @@
// 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 <gtkmm/label.h>
#include <gtkmm/button.h>
#include <gtkmm/box.h>
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));
_query->signal_selection_received().connect(SigC::slot(*this, &lookuplet_glade::on_query_selection_received), true);
prefs->signal_clicked().connect(SigC::slot(*this, &lookuplet_glade::on_prefs_clicked));
}
lookuplet_glade::~lookuplet_glade()
{
}
+30
View File
@@ -0,0 +1,30 @@
// 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 <gtkmm/window.h>
#include <gtkmm/entry.h>
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_query_selection_received(GtkSelectionData *selection_data,guint time) = 0;
virtual void on_prefs_clicked() = 0;
};
#endif
+21
View File
@@ -0,0 +1,21 @@
//
// $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 ()
{
}
+18
View File
@@ -0,0 +1,18 @@
//
// $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
+108
View File
@@ -0,0 +1,108 @@
// 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 <gtkmm/scrolledwindow.h>
#include <gtkmm/button.h>
#include <gtkmm/box.h>
#include <gtkmm/label.h>
#include <gtkmm/notebook.h>
#include <gtkmm/separator.h>
#include <gtkmm/buttonbox.h>
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()
{
}
@@ -0,0 +1,31 @@
// 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 <gtkmm/window.h>
#include <gtkmm/treeview.h>
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
+45 -30
View File
@@ -1,5 +1,5 @@
# #
# $Id: bindings.py,v 1.2 2002/03/18 00:03:41 mdb Exp $ # $Id: bindings.py,v 1.3 2003/11/28 21:34:59 mdb Exp $
# #
# lookuplet - a utility for quickly looking up information # lookuplet - a utility for quickly looking up information
# Copyright (C) 2001 Michael Bayne # Copyright (C) 2001 Michael Bayne
@@ -23,8 +23,8 @@ import re
import string import string
import urllib import urllib
import gnome.config import gnome
import gnome.url import gconf
class Binding: class Binding:
"Contains the configuration for a particular key binding and its \ "Contains the configuration for a particular key binding and its \
@@ -61,7 +61,8 @@ class Binding:
if (self.type == self.EXEC): if (self.type == self.EXEC):
posix.system(command) posix.system(command)
else: else:
gnome.url.show(command) # gnome.url_show(command)
posix.system("gnome-mozilla '%s'" % command)
def update (self, key, type, name, argument): def update (self, key, type, name, argument):
modified = 0; modified = 0;
@@ -90,22 +91,31 @@ class Binding:
class BindingSet: class BindingSet:
"Maintains the set of bindings loading into the program." "Maintains the set of bindings loading into the program."
# our gconf client instance
gclient = None;
# the list of Binding objects # the list of Binding objects
bindings = []; bindings = [];
# #
# The default constructor. # The default constructor. Loads up our bindings from GConf.
# #
def __init__ (self): def __init__ (self):
gnome.config.push_prefix("/lookuplet/"); # connect to the gconf server
count = gnome.config.get_int("lookuplet/bindings/count"); gclient = gconf.client_get_default();
for b in range(0, count): gclient.add_dir("/apps/lookuplet", gconf.CLIENT_PRELOAD_NONE);
key = gnome.config.get_string("lookuplet/bindings/key_%.2u" % b);
type = gnome.config.get_int("lookuplet/bindings/type_%.2u" % b); count = 0;
name = gnome.config.get_string("lookuplet/bindings/name_%.2u" % b);
arg = gnome.config.get_string("lookuplet/bindings/arg_%.2u" % b); # gnome.config.push_prefix("/lookuplet/");
self.bindings.append(Binding(key, type, name, arg)); # count = gnome.config.get_int("lookuplet/bindings/count");
gnome.config.pop_prefix(); # 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 we loaded no bindings, use the defaults
if (count == 0): if (count == 0):
@@ -126,6 +136,11 @@ class BindingSet:
self.bindings.append(Binding( self.bindings.append(Binding(
"Control-i", Binding.URL, "IMDB Title search", "Control-i", Binding.URL, "IMDB Title search",
"http://www.imdb.com/Tsearch?title=%U&restrict=Movies+only")); "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; return;
# #
@@ -142,20 +157,20 @@ class BindingSet:
# Stores our updated bindings to our GConf preferences. # Stores our updated bindings to our GConf preferences.
# #
def flush (self): def flush (self):
gnome.config.push_prefix("/lookuplet/"); # gnome.config.push_prefix("/lookuplet/");
gnome.config.set_int("lookuplet/bindings/count", len(self.bindings)); # gnome.config.set_int("lookuplet/bindings/count", len(self.bindings));
b = 0 # b = 0
for binding in self.bindings: # for binding in self.bindings:
gnome.config.set_string( # gnome.config.set_string(
"lookuplet/bindings/key_%.2u" % b, binding.key); # "lookuplet/bindings/key_%.2u" % b, binding.key);
gnome.config.set_int( # gnome.config.set_int(
"lookuplet/bindings/type_%.2u" % b, binding.type); # "lookuplet/bindings/type_%.2u" % b, binding.type);
gnome.config.set_string( # gnome.config.set_string(
"lookuplet/bindings/name_%.2u" % b, binding.name); # "lookuplet/bindings/name_%.2u" % b, binding.name);
gnome.config.set_string( # gnome.config.set_string(
"lookuplet/bindings/arg_%.2u" % b, binding.argument); # "lookuplet/bindings/arg_%.2u" % b, binding.argument);
b += 1; # b += 1;
gnome.config.sync(); # gnome.config.sync();
gnome.config.drop_all(); # gnome.config.drop_all();
gnome.config.pop_prefix(); # gnome.config.pop_prefix();
return; return;
+19 -22
View File
@@ -1,5 +1,5 @@
# #
# $Id: edit_binding.py,v 1.1 2002/03/17 09:03:06 mdb Exp $ # $Id: edit_binding.py,v 1.2 2003/11/28 21:34:59 mdb Exp $
# #
# lookuplet - a utility for quickly looking up information # lookuplet - a utility for quickly looking up information
# Copyright (C) 2001 Michael Bayne # Copyright (C) 2001 Michael Bayne
@@ -18,13 +18,12 @@
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import gtk
import GDK
import gnome.ui
import libglade
import string import string
import re import re
import gtk
import gnome.ui
import bindings import bindings
import keyval_util import keyval_util
@@ -41,8 +40,8 @@ class BindingEditor:
# the grab window # the grab window
grabWindow = None; grabWindow = None;
# the index of the binding we're editing # the iterator for the binding we're editing
index = -1; iterator = None;
# the binding we're editing # the binding we're editing
binding = None; binding = None;
@@ -62,10 +61,9 @@ class BindingEditor:
# the argument entry field # the argument entry field
argField = None; argField = None;
def __init__ (self, xmlui, props, bindings): def __init__ (self, xmlui, props):
# keep these around for later # keep these around for later
self.props = props; self.props = props;
self.bindings = bindings;
# get a reference to some widgets # get a reference to some widgets
self.bindPanel = xmlui.get_widget("binding"); self.bindPanel = xmlui.get_widget("binding");
@@ -77,19 +75,18 @@ class BindingEditor:
self.argField = xmlui.get_widget("argument"); self.argField = xmlui.get_widget("argument");
# wire up our handlers # wire up our handlers
nameFuncMap = {}; xmlui.signal_connect("on_ok_clicked", self.on_ok_clicked);
for key in dir(self.__class__): xmlui.signal_connect("on_cancel_clicked", self.on_cancel_clicked);
nameFuncMap[key] = getattr(self, key); xmlui.signal_connect("on_key_key_press_event",
xmlui.signal_autoconnect(nameFuncMap); self.on_key_key_press_event);
# #
# Instructs the binding panel to display itself, configured for # Instructs the binding panel to display itself, configured for
# editing the supplied binding. # editing the supplied binding.
# #
def editBinding (self, index): def editBinding (self, iterator, binding):
# keep a reference to the binding self.iterator = iterator;
self.index = index; self.binding = binding;
self.binding = self.bindings.bindings[index];
self.populateAndShow(self.binding); self.populateAndShow(self.binding);
# #
@@ -97,8 +94,8 @@ class BindingEditor:
# available for editing by the user. # available for editing by the user.
# #
def createBinding (self): def createBinding (self):
self.iterator = None;
# create a blank binding and edit it # create a blank binding and edit it
self.index = -1;
self.binding = bindings.Binding("", bindings.Binding.URL, "", ""); self.binding = bindings.Binding("", bindings.Binding.URL, "", "");
self.populateAndShow(self.binding); self.populateAndShow(self.binding);
@@ -106,7 +103,6 @@ class BindingEditor:
# A helper function used to populate our widgets and show the dialog. # A helper function used to populate our widgets and show the dialog.
# #
def populateAndShow (self, binding): def populateAndShow (self, binding):
print "populating from binding " + binding.to_string();
# populate our widgets with the binding values # populate our widgets with the binding values
self.keyField.set_text(binding.key); self.keyField.set_text(binding.key);
self.nameField.set_text(binding.name); self.nameField.set_text(binding.name);
@@ -134,10 +130,10 @@ class BindingEditor:
# let the props panel know if there were any modifications # let the props panel know if there were any modifications
if (modified): if (modified):
if (self.index >= 0): if (self.iterator == None):
self.props.updated(self.index);
else:
self.props.created(self.binding); self.props.created(self.binding);
else:
self.props.updated(self.iterator, self.binding);
# hide the binding panel # hide the binding panel
self.bindPanel.hide(); self.bindPanel.hide();
@@ -157,3 +153,4 @@ class BindingEditor:
event.keyval, event.state); event.keyval, event.state);
textfield.set_text(keystr); textfield.set_text(keystr);
return gtk.TRUE; return gtk.TRUE;
return gtk.FALSE;
+19 -19
View File
@@ -1,5 +1,5 @@
# #
# $Id: history.py,v 1.1 2002/03/17 21:25:20 mdb Exp $ # $Id: history.py,v 1.2 2003/11/28 21:34:59 mdb Exp $
# #
# lookuplet - a utility for quickly looking up information # lookuplet - a utility for quickly looking up information
# Copyright (C) 2001 Michael Bayne # Copyright (C) 2001 Michael Bayne
@@ -18,7 +18,7 @@
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import gnome.config import gconf
class History: class History:
"Used to persistently maintain a history of entries for the \ "Used to persistently maintain a history of entries for the \
@@ -35,13 +35,13 @@ class History:
# operation. # operation.
# #
def __init__ (self): def __init__ (self):
gnome.config.push_prefix("/lookuplet/"); # gnome.config.push_prefix("/lookuplet/");
count = gnome.config.get_int("lookuplet/history/count"); # count = gnome.config.get_int("lookuplet/history/count");
for h in range(0, count): # for h in range(0, count):
self.history.append(gnome.config.get_string( # self.history.append(gnome.config.get_string(
"lookuplet/history/entry_%.2u" % h)); # "lookuplet/history/entry_%.2u" % h));
# print "loaded %d: %s" % (h, self.history[h]); # # print "loaded %d: %s" % (h, self.history[h]);
gnome.config.pop_prefix(); # gnome.config.pop_prefix();
return; return;
# #
@@ -61,16 +61,16 @@ class History:
self.history.pop(0); self.history.pop(0);
# flush our config to the configuration repository # flush our config to the configuration repository
gnome.config.push_prefix("/lookuplet/"); # gnome.config.push_prefix("/lookuplet/");
count = len(self.history); # count = len(self.history);
gnome.config.set_int("lookuplet/history/count", count); # gnome.config.set_int("lookuplet/history/count", count);
for h in range(0, count): # for h in range(0, count):
gnome.config.set_string( # gnome.config.set_string(
"lookuplet/history/entry_%.2u" % h, self.history[h]); # "lookuplet/history/entry_%.2u" % h, self.history[h]);
# print "wrote %d: %s" % (h, self.history[h]); # # print "wrote %d: %s" % (h, self.history[h]);
gnome.config.sync(); # gnome.config.sync();
gnome.config.drop_all(); # gnome.config.drop_all();
gnome.config.pop_prefix(); # gnome.config.pop_prefix();
# #
# Scans back from one before the specified index looking for a history # Scans back from one before the specified index looking for a history
+12 -8
View File
@@ -1,5 +1,5 @@
# #
# $Id: keyval_util.py,v 1.2 2002/03/19 00:22:31 mdb Exp $ # $Id: keyval_util.py,v 1.3 2003/11/28 21:34:59 mdb Exp $
# #
# lookuplet - a utility for quickly looking up information # lookuplet - a utility for quickly looking up information
# Copyright (C) 2001 Michael Bayne # Copyright (C) 2001 Michael Bayne
@@ -19,12 +19,16 @@
# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import string import string
import GDK
import gtk
import gtk.gdk
# these are used when doing our conversion; we specifically only care # these are used when doing our conversion; we specifically only care
# about Control, Shift and Mod1; if you want to use other keys in your # about Control, Shift and Mod1 (Alt); if you want to use other keys in
# combinations, we don't want you drinking our soda # your combinations, we don't want you drinking our soda
_CODES = [ GDK.CONTROL_MASK, GDK.SHIFT_MASK, GDK.MOD1_MASK ]; _CODES = [ gtk.gdk.CONTROL_MASK,
gtk.gdk.SHIFT_MASK,
gtk.gdk.MOD1_MASK ];
_NAMES = [ "Control", "Shift", "Mod1" ]; _NAMES = [ "Control", "Shift", "Mod1" ];
# #
@@ -38,9 +42,9 @@ def convert_keyval_state_to_string (keyval, state):
# start with the empty string # start with the empty string
modstr = ""; modstr = "";
# we'd like to ask GDK to convert the key itself to a string, but they # we'd like to ask gtk.gdk to convert the key itself to a string,
# don't wrap those functions. dooh! # but they don't wrap those functions. dooh!
# key = GDK.keyval_name(keyval); # key = gtk.gdk_keyval_name(keyval);
# so we do this hack instead # so we do this hack instead
if (keyval < 0 or keyval > 255): if (keyval < 0 or keyval > 255):
+10 -6
View File
@@ -1,6 +1,6 @@
#!/usr/bin/env python #!/usr/bin/env python
# #
# $Id: lookuplet,v 1.2 2002/03/17 10:13:36 mdb Exp $ # $Id: lookuplet,v 1.3 2003/11/28 21:34:59 mdb Exp $
# #
# lookuplet - a utility for quickly looking up information # lookuplet - a utility for quickly looking up information
# Copyright (C) 2001 Michael Bayne # Copyright (C) 2001 Michael Bayne
@@ -19,14 +19,18 @@
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import gnome.applet
import gtk
import libglade
import string import string
import sys import sys
import re import re
import os import os
import pygtk
pygtk.require('2.0')
import gnome.applet
import gtk
import gtk.glade
# figure out where we were run from # figure out where we were run from
basedir = sys.argv[0]; basedir = sys.argv[0];
basedir = re.sub("/lookuplet$", "", basedir); basedir = re.sub("/lookuplet$", "", basedir);
@@ -43,10 +47,10 @@ import properties
# load up our glade UI definition # load up our glade UI definition
try: try:
os.stat(basedir + "/lookuplet.glade"); os.stat(basedir + "/lookuplet.glade");
xmlui = libglade.GladeXML(basedir + "/lookuplet.glade"); xmlui = gtk.glade.XML(basedir + "/lookuplet.glade");
except OSError: except OSError:
os.stat(libdir + "/lookuplet.glade"); os.stat(libdir + "/lookuplet.glade");
xmlui = libglade.GladeXML(libdir + "/lookuplet.glade"); xmlui = gtk.glade.XML(libdir + "/lookuplet.glade");
# load up our bindings # load up our bindings
bindings = bindings.BindingSet(); bindings = bindings.BindingSet();
+29 -30
View File
@@ -1,5 +1,5 @@
# #
# $Id: lookuplet.py,v 1.3 2002/03/17 21:25:20 mdb Exp $ # $Id: lookuplet.py,v 1.4 2003/11/28 21:34:59 mdb Exp $
# #
# lookuplet - a utility for quickly looking up information # lookuplet - a utility for quickly looking up information
# Copyright (C) 2001 Michael Bayne # Copyright (C) 2001 Michael Bayne
@@ -18,14 +18,14 @@
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import gnome.applet
import gtk
import GDK
import gnome.ui
import gnome.uiconsts
import string import string
import re import re
import gnome.applet
import gtk
import gtk.keysyms
import gnome.ui
import bindings import bindings
import history import history
import keyval_util import keyval_util
@@ -34,14 +34,10 @@ import properties
class Lookuplet: class Lookuplet:
"Handles the primary setup and operation of the lookuplet application." "Handles the primary setup and operation of the lookuplet application."
# in theory these should be defined by GDK but seem not to be
SELECTION_PRIMARY = 1;
CURRENT_TIME = 0;
# our special key definitions # our special key definitions
PREV_HISTORY_KEY = GDK.Up PREV_HISTORY_KEY = gtk.keysyms.Up
NEXT_HISTORY_KEY = GDK.Down NEXT_HISTORY_KEY = gtk.keysyms.Down
AUTO_COMPLETE_KEY = GDK.Tab AUTO_COMPLETE_KEY = gtk.keysyms.Tab
# a reference to our key bindings # a reference to our key bindings
bindings = None; bindings = None;
@@ -67,16 +63,15 @@ class Lookuplet:
def __init__ (self, xmlui, bindings, props, appletMode): def __init__ (self, xmlui, bindings, props, appletMode):
window = xmlui.get_widget("lookuplet"); window = xmlui.get_widget("lookuplet");
self.about = xmlui.get_widget("about"); self.about = xmlui.get_widget("about");
self.string_atom = None;
self.bindings = bindings; self.bindings = bindings;
self.props = props; self.props = props;
self.appletMode = appletMode; self.appletMode = appletMode;
# wire up our handlers # wire up our handlers
nameFuncMap = {}; xmlui.signal_connect("on_query_key_press_event",
for key in dir(self.__class__): self.on_query_key_press_event);
nameFuncMap[key] = getattr(self, key); xmlui.signal_connect("on_prefs_clicked", self.on_prefs_clicked);
xmlui.signal_autoconnect(nameFuncMap); xmlui.signal_connect("exit_lookuplet", self.exit_lookuplet);
# create our query history # create our query history
self.history = history.History(); self.history = history.History();
@@ -97,23 +92,22 @@ class Lookuplet:
applet.add(mainbox); applet.add(mainbox);
# register our menu items # register our menu items
applet.register_stock_callback( applet.register_stock_callback(
"properties", gnome.uiconsts.STOCK_MENU_PROP, "properties", gnome.ui.STOCK_MENU_PROP,
"Properties...", self.on_props_selected, None); "Properties...", self.on_props_selected, None);
applet.register_stock_callback( applet.register_stock_callback(
"about", gnome.uiconsts.STOCK_MENU_ABOUT, "about", gnome.ui.STOCK_MENU_ABOUT,
"About...", self.on_about_selected, None); "About...", self.on_about_selected, None);
applet.show(); applet.show();
else: else:
window.show(); window.show();
# request the selection # obtain the primary selection and stuff that into our entry box
if (self.string_atom == None): # clip = gtk.clipboard_get(gtk.GDK_SELECTION_PRIMARY);
self.string_atom = gtk.atom_intern("STRING", gtk.FALSE); # selection = gtk.clipboard_wait_for_text(clip);
query = xmlui.get_widget("query"); query = xmlui.get_widget("query");
query.selection_convert(self.SELECTION_PRIMARY, # self.display_selection(self, query, selection);
self.string_atom, # query.paste_clipboard();
self.CURRENT_TIME);
# put the focus in the query box # put the focus in the query box
query.grab_focus(); query.grab_focus();
@@ -201,7 +195,7 @@ class Lookuplet:
self.hisidx = -1; self.hisidx = -1;
# if they pressed return, map that to a special binding # if they pressed return, map that to a special binding
if (event.keyval == GDK.Return): if (event.keyval == gtk.keysyms.Return):
binding = bindings.Binding("", bindings.Binding.URL, "", "%T"); binding = bindings.Binding("", bindings.Binding.URL, "", "%T");
else: else:
@@ -242,14 +236,17 @@ class Lookuplet:
# print "Selection retrieval failed."; # print "Selection retrieval failed.";
return; return;
if (selection_data.type != GDK.SELECTION_TYPE_STRING): if (selection_data.type != gtk.keysyms.SELECTION_TYPE_STRING):
print "Selection target not returned as a string."; print "Selection target not returned as a string.";
return; return;
# print "Got selection '%s'." % selection_data.data; 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 # prune spaces from the end of the text
text = string.strip(selection_data.data); text = string.strip(text);
# compress whitespace (and convert newlines to spaces) # compress whitespace (and convert newlines to spaces)
text = re.sub("[ \r\n]+", " ", text); text = re.sub("[ \r\n]+", " ", text);
@@ -269,5 +266,7 @@ class Lookuplet:
query.select_region(0, len(text)); query.select_region(0, len(text));
# print "Selected from %d to %d." % (0, len(text)); # print "Selected from %d to %d." % (0, len(text));
return;
def exit_lookuplet (self, button): def exit_lookuplet (self, button):
gtk.mainquit(); gtk.mainquit();
+65 -41
View File
@@ -1,5 +1,5 @@
# #
# $Id: properties.py,v 1.2 2002/03/18 00:30:24 mdb Exp $ # $Id: properties.py,v 1.3 2003/11/28 21:34:59 mdb Exp $
# #
# lookuplet - a utility for quickly looking up information # lookuplet - a utility for quickly looking up information
# Copyright (C) 2001-2002 Michael Bayne # Copyright (C) 2001-2002 Michael Bayne
@@ -18,13 +18,14 @@
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import gtk
import GDK
import gnome.ui
import libglade
import string import string
import re import re
import gobject
import gtk
import gtk.gdk
import gnome.ui
import edit_binding import edit_binding
class Properties: class Properties:
@@ -37,8 +38,8 @@ class Properties:
# our binding editor # our binding editor
bindEditor = None; bindEditor = None;
# the bindings list # the bindings model
bindList = None; bindModel = None;
# the edit button # the edit button
editButton = None; editButton = None;
@@ -47,43 +48,61 @@ class Properties:
deleteButton = None; deleteButton = None;
# the selected binding index # the selected binding index
selection = -1; selection = None;
def __init__ (self, xmlui, bindings): def __init__ (self, xmlui, bindings):
# keep a handle on our bindings # keep a handle on our bindings
self.bindings = bindings; self.bindings = bindings;
# create our binding editor # create our binding editor
self.bindEditor = edit_binding.BindingEditor(xmlui, self, bindings); self.bindEditor = edit_binding.BindingEditor(xmlui, self);
# get a reference to some widgets # get a reference to some widgets
self.propsPanel = xmlui.get_widget("properties"); self.propsPanel = xmlui.get_widget("properties");
self.editButton = xmlui.get_widget("edit"); self.editButton = xmlui.get_widget("edit");
self.deleteButton = xmlui.get_widget("delete"); self.deleteButton = xmlui.get_widget("delete");
self.bindList = xmlui.get_widget("bindings");
# make our props panel not destroy itself on close # make our props panel not destroy itself on close
self.propsPanel.close_hides(gtk.TRUE); self.propsPanel.close_hides(gtk.TRUE);
# wire up our handlers # wire up our handlers
nameFuncMap = {}; xmlui.signal_connect("on_properties_apply", self.on_properties_apply);
for key in dir(self.__class__): xmlui.signal_connect("on_add_clicked", self.on_add_clicked);
nameFuncMap[key] = getattr(self, key); xmlui.signal_connect("on_edit_clicked", self.on_edit_clicked);
xmlui.signal_autoconnect(nameFuncMap); 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 # configure our properties panel with the loaded bindings
for binding in bindings.bindings: for binding in bindings.bindings:
self.bindList.append([binding.key, binding.name]); 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): def editProperties (self):
self.propsPanel.show(); self.propsPanel.show();
return; return;
def updated (self, index): def updated (self, iter, binding):
binding = self.bindings.bindings[index];
# refresh the display for the specified index # refresh the display for the specified index
self.bindList.set_text(index, 0, binding.key); self.bindModel.set_value(iter, 0, binding.key);
self.bindList.set_text(index, 1, binding.name); self.bindModel.set_value(iter, 1, binding.name);
# and make a note that we've updated ourselves # and make a note that we've updated ourselves
self.propsPanel.changed(); self.propsPanel.changed();
@@ -91,31 +110,35 @@ class Properties:
# add the new binding to our list # add the new binding to our list
self.bindings.bindings.append(binding); self.bindings.bindings.append(binding);
# add it to the display # add it to the display
self.bindList.append([binding.key, binding.name]); 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 # and make a note that we've updated ourselves
self.propsPanel.changed(); 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): def on_properties_apply (self, panel, page):
if (page == 0): if (page == 0):
self.bindings.flush(); self.bindings.flush();
def on_bindings_select_row (self, clist, row, column, event):
# enable our buttons
self.editButton.set_sensitive(gtk.TRUE);
self.deleteButton.set_sensitive(gtk.TRUE);
# make a note of the selected binding index
self.selection = row;
# make like they pressed the edit button on a double click
if (event.type == GDK._2BUTTON_PRESS):
self.on_edit_clicked(None);
def on_bindings_unselect_row (self, clist, row, column, event):
# disable our buttons
self.editButton.set_sensitive(gtk.FALSE);
self.deleteButton.set_sensitive(gtk.FALSE);
def on_add_clicked (self, button): def on_add_clicked (self, button):
# show the binding creation dialog # show the binding creation dialog
self.bindEditor.createBinding(); self.bindEditor.createBinding();
@@ -123,14 +146,15 @@ class Properties:
def on_edit_clicked (self, button): def on_edit_clicked (self, button):
# tell the binding editor to edit this binding # tell the binding editor to edit this binding
self.bindEditor.editBinding(self.selection); binding = self.bindModel.get_value(self.selection, 2);
self.bindEditor.editBinding(self.selection, binding);
return; return;
def on_delete_clicked (self, button): def on_delete_clicked (self, button):
# remove the binding from the display and our bindings list # remove the binding from the display and our bindings list
binding = self.bindings.bindings[self.selection]; binding = self.bindModel.get_value(self.selection, 2);
self.bindList.remove(self.selection) self.bindModel.remove(self.selection)
self.bindings.bindings.remove(binding); self.bindings.bindings.remove(binding);
self.selection = -1; self.selection = None;
self.propsPanel.changed(); self.propsPanel.changed();
return; return;