[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[libcvd-members] gvars3 Makefile.in configure configure.ac gvars...
From: |
Edward Rosten |
Subject: |
[libcvd-members] gvars3 Makefile.in configure configure.ac gvars... |
Date: |
Wed, 20 Feb 2008 19:03:59 +0000 |
CVSROOT: /cvsroot/libcvd
Module name: gvars3
Changes by: Edward Rosten <edrosten> 08/02/20 19:03:59
Modified files:
. : Makefile.in configure configure.ac
gvars3 : GUI_Fltk.h GUI_Motif.h instances.h
src : GUI_Fltk.cc GUI_Fltk2.cc GUI_Motif.cc inst.cc
inst_headless.cc
Added files:
gvars3 : GUI_Widgets.h
src : GUI_none.cc
Log message:
Large changes: **WARNING** your code will probably break if you use the
graphical interface.
If you need the old version, use the CVS tag END_VERSION_0_5
The version has been bumped to 0.6, so it shouldn't overwrite the old
0.5
library, so compiled programs shouldn't break (hpefully).
Changes:
1 The GUI_{motif,fltk,fltk2} interface has been reworked.
You should now include GUI_Widgets.h. This has a class called
GUI_Widgets.h
with two methods: run_thread() and process_in_crnt_thread(). This
does the
same as before, except that your code will now always compile,
regardless of
the type of widget set available.
Also, all GUI calls are via GUI.*, not GUI_{motif,fltk,fltk2}.*, so
you won't
have to rewrite your .cfg files if you have a different library set
available.
2 GUI_Motif now supports process_in_crnt_thread(), so the mysterious
segfaults
have probably vanished. YMMV
3 GUI_Fltk has been converted to GVars3. fltk2 and motif still use the
backwards
compatibility interface
4 The configure script now selects only one of the available widget
sets to
compile, choosing (in order) fltk2, fltk, motif, none. There are
various
enable/disable options.
With any luck, programs should "just work" rather better than they used
to, and
the interface is simpler.
It currently uses some implementation defined behaviour in g++, that
static
constructres are run in the reverse order of object files on the
commandline.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gvars3/Makefile.in?cvsroot=libcvd&r1=1.21&r2=1.22
http://cvs.savannah.gnu.org/viewcvs/gvars3/configure?cvsroot=libcvd&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/gvars3/configure.ac?cvsroot=libcvd&r1=1.13&r2=1.14
http://cvs.savannah.gnu.org/viewcvs/gvars3/gvars3/GUI_Fltk.h?cvsroot=libcvd&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/gvars3/gvars3/GUI_Motif.h?cvsroot=libcvd&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/gvars3/gvars3/instances.h?cvsroot=libcvd&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/gvars3/gvars3/GUI_Widgets.h?cvsroot=libcvd&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/gvars3/src/GUI_Fltk.cc?cvsroot=libcvd&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/gvars3/src/GUI_Fltk2.cc?cvsroot=libcvd&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/gvars3/src/GUI_Motif.cc?cvsroot=libcvd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/gvars3/src/inst.cc?cvsroot=libcvd&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/gvars3/src/inst_headless.cc?cvsroot=libcvd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/gvars3/src/GUI_none.cc?cvsroot=libcvd&rev=1.1
Patches:
Index: Makefile.in
===================================================================
RCS file: /cvsroot/libcvd/gvars3/Makefile.in,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -b -r1.21 -r1.22
--- Makefile.in 12 Feb 2008 19:37:15 -0000 1.21
+++ Makefile.in 20 Feb 2008 19:03:58 -0000 1.22
@@ -82,7 +82,8 @@
src/GStringUtil.o \
src/gvars2.o \
src/serialize.o \
- src/inst_headless.o \
+ src/GUI_none.o \
+ src/inst.o \
OBJS=\
src/gvars3.o \
@@ -90,29 +91,21 @@
src/GStringUtil.o \
src/gvars2.o \
src/serialize.o \
- src/inst.o \
+ src/@address@hidden \
+ src/GUI_non_readline.o \
+ src/inst.o
ifeq (@have_readline@,yes)
OBJS+=src/GUI_readline.o
- CPPFLAGS+=-DGUI_HAVE_READLINE
-else
- OBJS+=src/GUI_non_readline.o
endif
-ifeq (@have_fltk@,yes)
- OBJS+=src/GUI_Fltk.o
- CPPFLAGS+=-DGUI_HAVE_FLTK
-endif
+ #src/@address@hidden \
+#G++ seems to run constructors in the reverse order
+#so inst needs to be last.
+
+
-ifeq (@have_fltk2@,yes)
- OBJS+=src/GUI_Fltk2.o
- CPPFLAGS+=-DGUI_HAVE_FLTK2
-endif
-ifeq (@have_motif@,yes)
- OBJS+=src/GUI_Motif.o
- CPPFLAGS+=-DGUI_HAVE_MOTIF
-endif
ifeq (@build_cpu@,x86_64)
CPPFLAGS+=-fPIC
@@ -146,7 +139,7 @@
hsos= $(hsoname) $(hsoname1) $(hsoname2)
ifeq (@make_headless@,yes)
- HEADLESS=$(harchive) $(hsos)
+ HEADLESS=$(harchive) $(hsoname)
endif
all: $(archive) $(soname) $(HEADLESS)
Index: configure
===================================================================
RCS file: /cvsroot/libcvd/gvars3/configure,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- configure 12 Feb 2008 19:37:15 -0000 1.14
+++ configure 20 Feb 2008 19:03:58 -0000 1.15
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for gvars3 0.5.
+# Generated by GNU Autoconf 2.59 for gvars3 0.6.
#
# Copyright (C) 2003 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
@@ -267,8 +267,8 @@
# Identity of this package.
PACKAGE_NAME='gvars3'
PACKAGE_TARNAME='gvars3'
-PACKAGE_VERSION='0.5'
-PACKAGE_STRING='gvars3 0.5'
+PACKAGE_VERSION='0.6'
+PACKAGE_STRING='gvars3 0.6'
PACKAGE_BUGREPORT=''
# Factoring default headers for most tests.
@@ -308,7 +308,7 @@
# include <unistd.h>
#endif"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix
program_transform_name bindir sbindir libexecdir datadir sysconfdir
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS AWK CXX
CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT CXXCPP EGREP build build_cpu
build_vendor build_os host host_cpu host_vendor host_os osx_hacks have_toon
have_readline have_fltk have_motif a have_fltk2 make_headless major minor HLIBS
LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix
program_transform_name bindir sbindir libexecdir datadir sysconfdir
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS AWK CXX
CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT CXXCPP EGREP build build_cpu
build_vendor build_os host host_cpu host_vendor host_os osx_hacks have_toon
have_readline a guiobj make_headless major minor HLIBS LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -777,7 +777,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures gvars3 0.5 to adapt to many kinds of systems.
+\`configure' configures gvars3 0.6 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -842,10 +842,18 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of gvars3 0.5:";;
+ short | recursive ) echo "Configuration of gvars3 0.6:";;
esac
cat <<\_ACEOF
+Optional Features:
+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --disable-widgets
+ --disable-fltk2
+ --disable-fltk
+ --disable-motif
+
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
@@ -961,7 +969,7 @@
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-gvars3 configure 0.5
+gvars3 configure 0.6
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -975,7 +983,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by gvars3 $as_me 0.5, which was
+It was created by gvars3 $as_me 0.6, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -2550,7 +2558,7 @@
done
-optionlist="fltk motif fltk2 readline"
+optionlist="gui readline toon"
options=""
#Host detection
@@ -3057,11 +3065,94 @@
echo ------------------------------------------------
+
#dnl check_GUI(fltk,FL/Fl.h,fltk)
+enable_any=yes
+# Check whether --enable-widgets or --disable-widgets was given.
+if test "${enable_widgets+set}" = set; then
+ enableval="$enable_widgets"
+
+fi;
+
+# Check whether --enable-fltk2 or --disable-fltk2 was given.
+if test "${enable_fltk2+set}" = set; then
+ enableval="$enable_fltk2"
+
+fi;
+# Check whether --enable-fltk or --disable-fltk was given.
+if test "${enable_fltk+set}" = set; then
+ enableval="$enable_fltk"
+
+fi;
+# Check whether --enable-motif or --disable-motif was given.
+if test "${enable_motif+set}" = set; then
+ enableval="$enable_motif"
+
+fi;
+
+enable_fltk2=${enable_fltk2:-$enable_any}
+enable_fltk=${enable_fltk:-$enable_any}
+enable_motif=${enable_motif:-$enable_any}
+
+gui=none
+
+if test $enable_fltk2 == yes && test $gui == none
+then
+ a=
+ # Extract the first word of "fltk2-config", so it can be a program name
with args.
+set dummy fltk2-config; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_a+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ case $a in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_a="$a" # Let the user override the test with a path.
+ ;;
+ *)
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_path_a="$as_dir/$ac_word$ac_exec_ext"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+ ;;
+esac
+fi
+a=$ac_cv_path_a
+
+if test -n "$a"; then
+ echo "$as_me:$LINENO: result: $a" >&5
+echo "${ECHO_T}$a" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+ if test x$a != x
+ then
+ FLTK2_CPPFLAGS=`$a --cxxflags`
+ FLTK2_LIBS=`$a --ldflags`
+ CPPFLAGS="$FLTK2_CPPFLAGS $CPPFLAGS"
+ LIBS="$FLTK2_LIBS $LIBS"
+ guiobj=GUI_Fltk2
+ options="$options gui"
+ gui=fltk2
+ fi
+fi
+if test $gui == none && test $enable_fltk == yes
+then
for ac_header in FL/Fl.H
do
@@ -3207,13 +3298,12 @@
cat >>confdefs.h <<_ACEOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
- a_fltk=yes
+ have_fltk_headers=yes
fi
done
-
-echo "$as_me:$LINENO: checking for main in -lfltk" >&5
+ echo "$as_me:$LINENO: checking for main in -lfltk" >&5
echo $ECHO_N "checking for main in -lfltk... $ECHO_C" >&6
if test "${ac_cv_lib_fltk_main+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3272,24 +3362,24 @@
echo "$as_me:$LINENO: result: $ac_cv_lib_fltk_main" >&5
echo "${ECHO_T}$ac_cv_lib_fltk_main" >&6
if test $ac_cv_lib_fltk_main = yes; then
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBFLTK 1
-_ACEOF
-
- LIBS="-lfltk $LIBS"
-
+ have_fltk_lib=yes
fi
-if test x$ac_cv_lib_fltk_main == xyes && test x$a_fltk == xyes
-then
- have_fltk=yes
- options="$options fltk"
- fltk=yes
+ if test x$have_fltk_headers$have_fltk_lib == xyesyes
+ then
+ LIBS="$LIBS -lfltk"
+ options="$options gui"
+ gui=fltk
+ guiobj=GUI_Fltk
+
+ fi
fi
-echo "$as_me:$LINENO: checking for X" >&5
+if test $gui = none && test $enable_motif == yes
+then
+ echo "$as_me:$LINENO: checking for X" >&5
echo $ECHO_N "checking for X... $ECHO_C" >&6
@@ -3384,7 +3474,7 @@
/usr/openwin/share/include'
if test "$ac_x_includes" = no; then
- # Guess where to find include files, by looking for Xlib.h.
+ # Guess where to find include files, by looking for Intrinsic.h.
# First, try using that file with no special directory specified.
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -3392,7 +3482,7 @@
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <X11/Xlib.h>
+#include <X11/Intrinsic.h>
_ACEOF
if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
(eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
@@ -3419,7 +3509,7 @@
sed 's/^/| /' conftest.$ac_ext >&5
for ac_dir in $ac_x_header_dirs; do
- if test -r "$ac_dir/X11/Xlib.h"; then
+ if test -r "$ac_dir/X11/Intrinsic.h"; then
ac_x_includes=$ac_dir
break
fi
@@ -3440,11 +3530,11 @@
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <X11/Xlib.h>
+#include <X11/Intrinsic.h>
int
main ()
{
-XrmInitialize ()
+XtMalloc (0)
;
return 0;
}
@@ -3523,10 +3613,10 @@
echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6
fi
-foo_LIBS="$LIBS"
-foo_CPPFLAGS="$CPPFLAGS"
-test -n "$x_libraries" && LIBS="-L$x_libraries $LIBS"
-test -n "$x_includes" && CPPFLAGS="$CPPFLAGS -I$x_includes"
+ foo_LIBS="$LIBS"
+ foo_CPPFLAGS="$CPPFLAGS"
+ test -n "$x_libraries" && LIBS="-L$x_libraries $LIBS"
+ test -n "$x_includes" && CPPFLAGS="$CPPFLAGS -I$x_includes"
for ac_header in Xm/Xm.h
@@ -3673,13 +3763,12 @@
cat >>confdefs.h <<_ACEOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
- a_motif=yes
+ have_motif_headers=yes
fi
done
-
-echo "$as_me:$LINENO: checking for main in -lXm" >&5
+ echo "$as_me:$LINENO: checking for main in -lXm" >&5
echo $ECHO_N "checking for main in -lXm... $ECHO_C" >&6
if test "${ac_cv_lib_Xm_main+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3738,83 +3827,23 @@
echo "$as_me:$LINENO: result: $ac_cv_lib_Xm_main" >&5
echo "${ECHO_T}$ac_cv_lib_Xm_main" >&6
if test $ac_cv_lib_Xm_main = yes; then
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBXM 1
-_ACEOF
-
- LIBS="-lXm $LIBS"
-
+ have_motif_lib=yes
fi
-if test x$ac_cv_lib_Xm_main == xyes && test x$a_motif == xyes
-then
- have_motif=yes
-
- options="$options motif"
- motif=yes
-fi
+ if test x$have_motif_headers$have_motif_lib == xyesyes
+ then
+ LIBS="$LIBS -lXm"
+ options="$options gui"
+ gui=motif
+ guiobj=GUI_Motif
-if test x$motif != xyes
-then
+ else
LIBS="$foo_LIBS"
CPPFLAGS="$foo_CPPFLAGS"
-fi
-
-
-# check_GUI(fltk2,fltk/Button.h,fltk2)
-a=
-# Extract the first word of "fltk2-config", so it can be a program name with
args.
-set dummy fltk2-config; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_a+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- case $a in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_a="$a" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_a="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
fi
-done
-done
-
- ;;
-esac
-fi
-a=$ac_cv_path_a
-
-if test -n "$a"; then
- echo "$as_me:$LINENO: result: $a" >&5
-echo "${ECHO_T}$a" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-if test x$a != x
-then
- FLTK2_CPPFLAGS=`$a --cxxflags`
- FLTK2_LIBS=`$a --ldflags`
- CPPFLAGS="$FLTK2_CPPFLAGS $CPPFLAGS"
- LIBS="$FLTK2_LIBS $LIBS"
- have_fltk2=yes
-
- options="$options fltk2"
- fltk2=yes
fi
-if test x$fltk$motif$fltk2 == x
+if test $gui == none
then
{ echo "$as_me:$LINENO: WARNING: No GUI functionality enabled" >&5
echo "$as_me: WARNING: No GUI functionality enabled" >&2;}
@@ -3854,6 +3883,8 @@
echo
echo Missing options:
echo $options $optionlist | $AWK 'BEGIN{RS=" "}{a[$1]++}END{for(i in
a)if(a[i]==1)printf(i" "); print""}'
+echo GUI support:
+echo $gui
echo
@@ -4252,7 +4283,7 @@
} >&5
cat >&5 <<_CSEOF
-This file was extended by gvars3 $as_me 0.5, which was
+This file was extended by gvars3 $as_me 0.6, which was
generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -4307,7 +4338,7 @@
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-gvars3 config.status 0.5
+gvars3 config.status 0.6
configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
@@ -4514,10 +4545,8 @@
s,@osx_hacks@,$osx_hacks,;t t
s,@have_toon@,$have_toon,;t t
s,@have_readline@,$have_readline,;t t
-s,@have_fltk@,$have_fltk,;t t
-s,@have_motif@,$have_motif,;t t
s,@a@,$a,;t t
-s,@have_fltk2@,$have_fltk2,;t t
+s,@guiobj@,$guiobj,;t t
s,@make_headless@,$make_headless,;t t
s,@major@,$major,;t t
s,@minor@,$minor,;t t
Index: configure.ac
===================================================================
RCS file: /cvsroot/libcvd/gvars3/configure.ac,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -b -r1.13 -r1.14
--- configure.ac 12 Feb 2008 19:37:15 -0000 1.13
+++ configure.ac 20 Feb 2008 19:03:58 -0000 1.14
@@ -1,10 +1,10 @@
-AC_INIT(gvars3, 0.5)
+AC_INIT(gvars3, 0.6)
AC_PROG_AWK
AC_LANG(C++)
AC_CHECK_HEADERS(iostream)
-optionlist="fltk motif fltk2 readline"
+optionlist="gui readline toon"
options=""
#Host detection
@@ -157,49 +157,75 @@
echo ------------------------------------------------
-#dnl check_GUI(fltk,FL/Fl.h,fltk)
-define(check_GUI,[
-AC_CHECK_HEADERS($2,a_$1=yes)
-AC_CHECK_LIB($3,main)
-if test x$ac_cv_lib_[]$3[]_main == xyes && test x$[]a_$1 == xyes
-then
- AC_SUBST(have_[]$1, yes)
- options="$options $1"
- $1=yes
-fi
-])
+#dnl check_GUI(fltk,FL/Fl.h,fltk)
+enable_any=yes
+AC_ARG_ENABLE(widgets,[ --disable-widgets])
-check_GUI(fltk,FL/Fl.H,fltk)
+AC_ARG_ENABLE(fltk2,[ --disable-fltk2])
+AC_ARG_ENABLE(fltk,[ --disable-fltk])
+AC_ARG_ENABLE(motif,[ --disable-motif])
-AC_PATH_X
-foo_LIBS="$LIBS"
-foo_CPPFLAGS="$CPPFLAGS"
-test -n "$x_libraries" && LIBS="-L$x_libraries $LIBS"
-test -n "$x_includes" && CPPFLAGS="$CPPFLAGS -I$x_includes"
-check_GUI(motif,Xm/Xm.h,Xm)
-if test x$motif != xyes
-then
- LIBS="$foo_LIBS"
- CPPFLAGS="$foo_CPPFLAGS"
-fi
+enable_fltk2=${enable_fltk2:-$enable_any}
+enable_fltk=${enable_fltk:-$enable_any}
+enable_motif=${enable_motif:-$enable_any}
+gui=none
-# check_GUI(fltk2,fltk/Button.h,fltk2)
-a=
-AC_PATH_PROG(a,fltk2-config)
-if test x$a != x
+if test $enable_fltk2 == yes && test $gui == none
then
+ a=
+ AC_PATH_PROG(a,fltk2-config)
+ if test x$a != x
+ then
FLTK2_CPPFLAGS=`$a --cxxflags`
FLTK2_LIBS=`$a --ldflags`
CPPFLAGS="$FLTK2_CPPFLAGS $CPPFLAGS"
LIBS="$FLTK2_LIBS $LIBS"
- AC_SUBST(have_fltk2, yes)
- options="$options fltk2"
- fltk2=yes
+ AC_SUBST(guiobj, GUI_Fltk2)
+ options="$options gui"
+ gui=fltk2
+ fi
+fi
+
+if test $gui == none && test $enable_fltk == yes
+then
+ AC_CHECK_HEADERS(FL/Fl.H, have_fltk_headers=yes)
+ AC_CHECK_LIB(fltk, main, have_fltk_lib=yes)
+
+ if test x$have_fltk_headers$have_fltk_lib == xyesyes
+ then
+ LIBS="$LIBS -lfltk"
+ options="$options gui"
+ gui=fltk
+ AC_SUBST(guiobj, GUI_Fltk)
+ fi
+fi
+
+
+if test $gui = none && test $enable_motif == yes
+then
+ AC_PATH_X
+ foo_LIBS="$LIBS"
+ foo_CPPFLAGS="$CPPFLAGS"
+ test -n "$x_libraries" && LIBS="-L$x_libraries $LIBS"
+ test -n "$x_includes" && CPPFLAGS="$CPPFLAGS -I$x_includes"
+
+ AC_CHECK_HEADERS(Xm/Xm.h, have_motif_headers=yes)
+ AC_CHECK_LIB(Xm, main, have_motif_lib=yes)
+ if test x$have_motif_headers$have_motif_lib == xyesyes
+ then
+ LIBS="$LIBS -lXm"
+ options="$options gui"
+ gui=motif
+ AC_SUBST(guiobj, GUI_Motif)
+ else
+ LIBS="$foo_LIBS"
+ CPPFLAGS="$foo_CPPFLAGS"
+ fi
fi
-if test x$fltk$motif$fltk2 == x
+if test $gui == none
then
AC_MSG_WARN(No GUI functionality enabled)
fi
@@ -229,6 +255,8 @@
echo
echo Missing options:
echo $options $optionlist | $AWK 'BEGIN{RS=" "}{a[$1]++}END{for(i in
a)if(a[i]==1)printf(i" "); print""}'
+echo GUI support:
+echo $gui
echo
changequote([,])
Index: gvars3/GUI_Fltk.h
===================================================================
RCS file: /cvsroot/libcvd/gvars3/gvars3/GUI_Fltk.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- gvars3/GUI_Fltk.h 14 Jun 2007 21:37:27 -0000 1.5
+++ gvars3/GUI_Fltk.h 20 Feb 2008 19:03:58 -0000 1.6
@@ -36,7 +36,7 @@
class GUI_Fltk
{
public:
- GUI_Fltk(class GUI *pGUI, GVars2 *pGV2);
+ GUI_Fltk();
static const int widget_height = 25;
static const int widget_padding_x = 5;
static const int widget_padding_y = 2;
Index: gvars3/GUI_Motif.h
===================================================================
RCS file: /cvsroot/libcvd/gvars3/gvars3/GUI_Motif.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- gvars3/GUI_Motif.h 2 May 2006 22:44:52 -0000 1.5
+++ gvars3/GUI_Motif.h 20 Feb 2008 19:03:58 -0000 1.6
@@ -19,8 +19,8 @@
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#ifndef __GUI_MOTIF_H
-#define __GUI_MOTIF_H
+#ifndef GVARS3_INCLUDE_GUI_MOTIF_H
+#define GVARS3_INCLUDE_GUI_MOTIF_H
#include <gvars3/GUI.h>
#include <Xm/Xm.h>
@@ -29,6 +29,7 @@
{
+
class GUI_Motif
{
public:
@@ -40,6 +41,8 @@
void AddSlider(std::string sCommand, std::string sParams);
void AddWindow(std::string sParams);
void DestroyWindow(std::string sCommand);
+ void poll();
+ void start_thread();
@@ -67,7 +70,7 @@
class GUI *mpGUI;
class GVars2 *mpGV2;
- void* mpMutex;
+ pthread_mutex_t* mpMutex;
Display* mpDisplay;
@@ -92,6 +95,7 @@
};
+
}
Index: gvars3/instances.h
===================================================================
RCS file: /cvsroot/libcvd/gvars3/gvars3/instances.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- gvars3/instances.h 1 Feb 2008 14:57:36 -0000 1.9
+++ gvars3/instances.h 20 Feb 2008 19:03:58 -0000 1.10
@@ -20,9 +20,11 @@
*/
#include <gvars3/GUI.h>
+#include <gvars3/GUI_Widgets.h>
namespace GVars3
{
extern GVars2 GV2;
extern class GUI GUI;
+ extern class GUIWidgets GUI_Widgets;
};
Index: src/GUI_Fltk.cc
===================================================================
RCS file: /cvsroot/libcvd/gvars3/src/GUI_Fltk.cc,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- src/GUI_Fltk.cc 18 Sep 2007 04:15:03 -0000 1.6
+++ src/GUI_Fltk.cc 20 Feb 2008 19:03:59 -0000 1.7
@@ -19,12 +19,16 @@
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include "gvars3/instances.h"
#include "gvars3/GUI_Fltk.h"
#include "gvars3/GStringUtil.h"
#include <vector>
#include <string.h>
#include <sstream>
#include <unistd.h>
+#include <map>
+#include <set>
+#include <string>
#include <error.h>
@@ -44,13 +48,10 @@
namespace GVars3
{
-
-GUI_Fltk::GUI_Fltk(GUI *pGUI, GVars2* pGV2)
+GUI_Fltk::GUI_Fltk()
{
- gui=pGUI;
- gv2=pGV2;
init = 0;
- gui->RegisterCommand("GUI_Fltk.InitXInterface", InitXInterfaceCB, this);
+ GUI.RegisterCommand("GUI.InitXInterface", InitXInterfaceCB, this);
}
@@ -106,9 +107,9 @@
if(vs.size() > 0)
name = vs[0];
else
- name = "GUI_Fltk";
+ name = "GUI";
- gui->RegisterCommand(name + ".AddWindow", AddWindowCB, this);
+ GUI.RegisterCommand(name + ".AddWindow", AddWindowCB, this);
init = 1;
}
@@ -162,8 +163,8 @@
class GUI_Fltk_win:public Fl_Window
{
public:
- GUI_Fltk_win(int w, string name, string caption, GUI* pgui)
- :Fl_Window(w, 0),win_name(name),labl(caption),gui(pgui)
+ GUI_Fltk_win(int w, string name, string caption)
+ :Fl_Window(w, 0),win_name(name),labl(caption)
{
label(caption.c_str());
callback(my_callback);
@@ -198,13 +199,12 @@
private:
string win_name, labl;
- GUI* gui;
static void my_callback(Fl_Widget* w)
{
//Called on close event
GUI_Fltk_win* win = (GUI_Fltk_win*) w;
- win->gui->ParseLine(win->win_name+".Destroy");
+ GUI.ParseLine(win->win_name+".Destroy");
}
};
@@ -256,19 +256,19 @@
width = atoi(vs[2].c_str());
window w;
- w.win = new GUI_Fltk_win(width, vs[0], sCaption, gui);
+ w.win = new GUI_Fltk_win(width, vs[0], sCaption);
w.showme = true;
w.win->end();
//w.win->show();
windows[vs[0]] = w;
- gui->RegisterCommand(vs[0] + ".Destroy", DestroyWindowCB, this);
- gui->RegisterCommand(vs[0] + ".AddPushButton", AddPushButtonCB, this);
- gui->RegisterCommand(vs[0] + ".AddToggleButton", AddToggleButtonCB,
this);
- gui->RegisterCommand(vs[0] + ".AddSlider", AddSliderCB, this);
- gui->RegisterCommand(vs[0] + ".AddMonitor", AddMonitorCB, this);
- gui->RegisterCommand(vs[0] + ".AddSpin", AddSpinCB, this);
+ GUI.RegisterCommand(vs[0] + ".Destroy", DestroyWindowCB, this);
+ GUI.RegisterCommand(vs[0] + ".AddPushButton", AddPushButtonCB, this);
+ GUI.RegisterCommand(vs[0] + ".AddToggleButton", AddToggleButtonCB,
this);
+ GUI.RegisterCommand(vs[0] + ".AddSlider", AddSliderCB, this);
+ GUI.RegisterCommand(vs[0] + ".AddMonitor", AddMonitorCB, this);
+ GUI.RegisterCommand(vs[0] + ".AddSpin", AddSpinCB, this);
//gui->RegisterCommand(vs[0] + ".AddSmallToggleButton",
AddSmallToggleCB, this);
}
@@ -286,12 +286,12 @@
if(!check_window(win_name, "Destroy"))
return;
- gui->UnRegisterCommand(win_name + ".Destroy");
- gui->UnRegisterCommand(win_name + ".AddPushButton");
- gui->UnRegisterCommand(win_name + ".AddToggleButton");
- gui->UnRegisterCommand(win_name + ".AddSlider");
- gui->UnRegisterCommand(win_name + ".AddMonitor");
- gui->UnRegisterCommand(win_name + ".AddSpin");
+ GUI.UnRegisterCommand(win_name + ".Destroy");
+ GUI.UnRegisterCommand(win_name + ".AddPushButton");
+ GUI.UnRegisterCommand(win_name + ".AddToggleButton");
+ GUI.UnRegisterCommand(win_name + ".AddSlider");
+ GUI.UnRegisterCommand(win_name + ".AddMonitor");
+ GUI.UnRegisterCommand(win_name + ".AddSpin");
//gui->UnRegisterCommand(win_name + ".AddSmallToggleButton");
@@ -318,8 +318,8 @@
class cmd_button:public Fl_Button
{
public:
- cmd_button(string name, string command, GUI* pgui)
- :Fl_Button(0, 0, 1, 1),labl(name), cmd(command), gui(pgui)
+ cmd_button(string name, string command)
+ :Fl_Button(0, 0, 1, 1),labl(name), cmd(command)
{
label(labl.c_str());
callback(my_callback);
@@ -328,15 +328,13 @@
private:
//The button label just stores the pointer, so we need to store
the string here
string cmd, labl;
- GUI* gui;
-
static void my_callback(Fl_Widget* w, long what_shall_I_do)
{
if(what_shall_I_do == POLL_UPDATE)
return;
cmd_button* b = (cmd_button*) w;
- b->gui->ParseLine(b->cmd);
+ GUI.ParseLine(b->cmd);
}
};
@@ -360,7 +358,7 @@
//Create button
- Fl_Button* b = new cmd_button(vs[0], vs[1], gui);
+ Fl_Button* b = new cmd_button(vs[0], vs[1]);
w.win->add(b);
}
@@ -380,12 +378,10 @@
class toggle_button: public Fl_Check_Button
{
public:
- toggle_button(string name, string gvar, GVars2* gv2, string def)
- :Fl_Check_Button(0, 0, 1, 1),labl(name)
+ toggle_button(string name, string gvar, string def)
+ :Fl_Check_Button(0, 0, 1, 1),labl(name),my_int(gvar, def, true)
{
callback(my_callback);
-
- gv2->Register(my_int, gvar, def, true);
value(*my_int);
label(labl.c_str());
@@ -399,7 +395,7 @@
}
private:
- gvar2_int my_int;
+ gvar3<int> my_int;
string labl;
static void my_callback(Fl_Widget* w, long what_shall_I_do)
@@ -433,7 +429,7 @@
if(vs.size() == 2)
vs.push_back("true");
- Fl_Widget* b = new toggle_button(vs[0], vs[1], gv2, vs[2]);
+ Fl_Widget* b = new toggle_button(vs[0], vs[1], vs[2]);
w.win->add(b);
}
@@ -454,8 +450,8 @@
class slider_bar: public slider_type
{
public:
- slider_bar(string gvar_name, GVars2 *pgv2, double min, double
max)
- :slider_type(0, 0, 1, 1),gv2(pgv2),varname(gvar_name)
+ slider_bar(string gvar_name, double min, double max)
+ :slider_type(0, 0, 1, 1),varname(gvar_name)
{
type(FL_HOR_SLIDER);
bounds(min, max);
@@ -467,7 +463,7 @@
void poll_update()
{
- string crnt=gv2->StringValue(varname, true);
+ string crnt=GV3::get_var(varname);
if(crnt != cached_value)
@@ -488,12 +484,11 @@
{
ostringstream ost;
ost << value();
- gv2->SetVar(varname, ost.str(), 1);
+ GV3::set_var(varname, ost.str(), 1);
cached_value = ost.str();
}
private:
- GVars2 *gv2;
string varname, cached_value;
static void my_callback(Fl_Widget* w, long what_shall_I_do)
@@ -528,7 +523,7 @@
serialize::from_string(vs[1], min);
serialize::from_string(vs[2], max);
- Fl_Widget* b = new slider_bar(vs[0], gv2, min, max);
+ Fl_Widget* b = new slider_bar(vs[0], min, max);
w.win->add(b);
}
@@ -549,8 +544,8 @@
class monitor: public Fl_Box
{
public:
- monitor(string t, string gvar_name, GVars2* pgv)
- :Fl_Box(0, 0, 1, 1),title(t), gv_name(gvar_name),gv(pgv)
+ monitor(string t, string gvar_name)
+ :Fl_Box(0, 0, 1, 1),title(t), gv_name(gvar_name)
{
callback(my_callback);
align(FL_ALIGN_TOP|FL_ALIGN_INSIDE|FL_ALIGN_LEFT);
@@ -559,7 +554,7 @@
void poll_update()
{
- string gvar_text = gv->StringValue(gv_name);
+ string gvar_text = "\"" + GV3::get_var(gv_name) + "\"";
if(gvar_text != cached_gv_text)
{
@@ -571,7 +566,6 @@
private:
string title, gv_name, full_label, cached_gv_text;
- GVars2* gv;
static void my_callback(Fl_Widget* w, long what_shall_I_do)
{
@@ -598,7 +592,7 @@
window& w = windows[win_name];
- Fl_Widget* m = new monitor(vs[0], vs[1], gv2);
+ Fl_Widget* m = new monitor(vs[0], vs[1]);
w.win->add(m);
}
@@ -623,8 +617,8 @@
class spin2: public Fl_Value_Input
{
public:
- spin2(string gvar_name, string t, GVars2 *pgv2, double min,
double max)
- :Fl_Value_Input(0, 0, 1, 1),gv2(pgv2),varname(gvar_name),
title(t)
+ spin2(string gvar_name, string t, double min, double max)
+ :Fl_Value_Input(0, 0, 1, 1),varname(gvar_name), title(t)
{
label(title.c_str());
align(FL_ALIGN_LEFT);
@@ -637,7 +631,7 @@
void poll_update()
{
- string crnt=gv2->StringValue(varname, true);
+ string crnt=GV3::get_var(varname);
if(crnt != cached_value)
@@ -658,12 +652,11 @@
{
ostringstream ost;
ost << value();
- gv2->SetVar(varname, ost.str(), 1);
+ GV3::set_var(varname, ost.str(), 1);
cached_value = ost.str();
}
private:
- GVars2 *gv2;
string varname, cached_value, title;
static void my_callback(Fl_Widget* w, long what_shall_I_do)
@@ -702,10 +695,23 @@
if( vs.size() == 4)
title = vs[3];
- Fl_Widget* b = new spin2(vs[0], title, gv2, min, max);
+ Fl_Widget* b = new spin2(vs[0], title, min, max);
w.win->add(b);
}
+//Instantiations
+class GUI_Fltk GUI_Fltk_instance;
+
+void GUIWidgets::process_in_crnt_thread()
+{
+ GUI_Fltk_instance.process_in_crnt_thread();
+}
+
+void GUIWidgets::start_thread()
+{
+ GUI_Fltk_instance.start_thread();
+}
+
}
Index: src/GUI_Fltk2.cc
===================================================================
RCS file: /cvsroot/libcvd/gvars3/src/GUI_Fltk2.cc,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- src/GUI_Fltk2.cc 16 Jul 2007 10:28:20 -0000 1.9
+++ src/GUI_Fltk2.cc 20 Feb 2008 19:03:59 -0000 1.10
@@ -20,7 +20,9 @@
*/
#include <gvars3/GUI_Fltk2.h>
+#include <gvars3/GUI_Widgets.h>
#include <gvars3/GStringUtil.h>
+#include <gvars3/instances.h>
#include <vector>
#include <string.h>
@@ -44,12 +46,12 @@
namespace GVars3
{
-GUI_Fltk2::GUI_Fltk2(GUI *pGUI, GVars2* pGV2)
+GUI_Fltk2::GUI_Fltk2(class GUI *pGUI, GVars2* pGV2)
{
gui=pGUI;
gv2=pGV2;
init = 0;
- gui->RegisterCommand("GUI_Fltk2.InitXInterface", InitXInterfaceCB,
this);
+ gui->RegisterCommand("GUI.InitXInterface", InitXInterfaceCB, this);
}
static void poll_callback(void* v)
@@ -101,7 +103,7 @@
if(vs.size() > 0)
name = vs[0];
else
- name = "GUI_Fltk2";
+ name = "GUI";
gui->RegisterCommand(name + ".AddWindow", AddWindowCB, this);
@@ -157,7 +159,7 @@
class GUI_Fltk2_win:public fltk::Window
{
public:
- GUI_Fltk2_win(int w, string name, string caption, GUI* pgui)
+ GUI_Fltk2_win(int w, string name, string caption, class GUI*
pgui)
:fltk::Window(w, 10),win_name(name),labl(caption),gui(pgui)
{
label(caption.c_str());
@@ -190,7 +192,7 @@
private:
string win_name, labl;
- GUI* gui;
+ class GUI* gui;
static void my_callback(fltk::Widget* w)
{
@@ -301,7 +303,7 @@
class cmd_button2 :public fltk::Button
{
public:
- cmd_button2(string name, string command, GUI* pgui)
+ cmd_button2(string name, string command, class GUI* pgui)
:fltk::Button(0, 0, 1, 1),labl(name), cmd(command), gui(pgui)
{
label(labl.c_str());
@@ -311,7 +313,7 @@
private:
//The button label just stores the pointer, so we need to store
the string here
string cmd, labl;
- GUI* gui;
+ class GUI* gui;
static void my_callback(fltk::Widget* w, long what_shall_I_do)
{
@@ -762,4 +764,19 @@
w.win->add(b);
}
+//Instantiations
+class GUI_Fltk2 GUI_Fltk2_instance(&GUI, &GV2);
+
+void GUIWidgets::process_in_crnt_thread()
+{
+ GUI_Fltk2_instance.process_in_crnt_thread();
+}
+
+void GUIWidgets::start_thread()
+{
+ GUI_Fltk2_instance.start_thread();
+}
+
+
+
}
Index: src/GUI_Motif.cc
===================================================================
RCS file: /cvsroot/libcvd/gvars3/src/GUI_Motif.cc,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- src/GUI_Motif.cc 22 Nov 2005 18:33:34 -0000 1.3
+++ src/GUI_Motif.cc 20 Feb 2008 19:03:59 -0000 1.4
@@ -18,7 +18,7 @@
Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
-
+#include "gvars3/instances.h"
#include "gvars3/GUI_Motif.h"
#include "gvars3/GStringUtil.h"
#include <Xm/PushB.h>
@@ -36,15 +36,14 @@
using namespace std;
namespace GVars3
{
- //GUI_Motif GUI_motif(&GUI, &GV2);
-GUI_Motif::GUI_Motif(GUI *pGUI, GVars2 *pGV2)
+GUI_Motif::GUI_Motif(class GUI *pGUI, GVars2 *pGV2)
{
mpGUI=pGUI;
mpGV2=pGV2;
mpDisplay=NULL;
+ mpGUI->RegisterCommand("GUI.InitXInterface", InitXInterfaceCB, this);
mpGUI->RegisterCommand("GUI_Motif.InitXInterface", InitXInterfaceCB, this);
-
}
@@ -162,7 +161,7 @@
if(vs.size()>1)
msName = vs[1];
else
- msName = "GUI_Motif";
+ msName = "GUI";
if(mpDisplay)
@@ -198,13 +197,15 @@
pthread_mutexattr_init(&attr);
pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
mpMutex = new(pthread_mutex_t);
- pthread_mutex_init( (pthread_mutex_t*) mpMutex, &attr);
- pthread_t t;
- pthread_create(&t, NULL, GUI_Motif_Thread_CB, this);
-
+ pthread_mutex_init(mpMutex, &attr);
mpGUI->RegisterCommand(msName+".AddWindow", AddWindowCB, this);
+}
+void GUI_Motif::start_thread()
+{
+ pthread_t t;
+ pthread_create(&t, NULL, GUI_Motif_Thread_CB, this);
}
void GUI_Motif::RemoveWindow(Widget w)
@@ -600,11 +601,20 @@
void GUI_Motif::GUI_Motif_Thread()
{
- static char szString[1000];
-
while(mpDisplay)
{
- pthread_mutex_lock((pthread_mutex_t*)mpMutex);
+ poll();
+ usleep(20000);
+ }
+}
+
+void GUI_Motif::poll()
+{
+ if(!mpDisplay)
+ return;
+ static char szString[1000];
+
+ pthread_mutex_lock(mpMutex);
for(map<string,GUIWindowStruct>::iterator
w=mmWindows.begin();w!=mmWindows.end();w++)
{
for(map< Widget, toggleMapStruct >::iterator i =
w->second.ToggleButtonMap.begin(); i!=w->second.ToggleButtonMap.end(); i++)
@@ -661,12 +671,9 @@
};
DoMotifEvents();
- pthread_mutex_unlock((pthread_mutex_t*)mpMutex);
- usleep(20000);
- };
-}
+}
void* GUI_Motif::GUI_Motif_Thread_CB(void* ptr)
{
((GUI_Motif*) ptr)->GUI_Motif_Thread();
@@ -683,4 +690,17 @@
}
}
+//Instantiations, link time virtual function definitions
+class GUI_Motif GUI_Motif_instance(&GUI, &GV2);
+
+void GUIWidgets::process_in_crnt_thread()
+{
+ GUI_Motif_instance.poll();
+}
+
+void GUIWidgets::start_thread()
+{
+ GUI_Motif_instance.start_thread();
+}
+
}
Index: src/inst.cc
===================================================================
RCS file: /cvsroot/libcvd/gvars3/src/inst.cc,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- src/inst.cc 12 Feb 2008 17:56:54 -0000 1.14
+++ src/inst.cc 20 Feb 2008 19:03:59 -0000 1.15
@@ -21,21 +21,6 @@
#include <gvars3/instances.h>
-#ifdef GUI_HAVE_FLTK
- #include <gvars3/GUI_Fltk.h>
-#endif
-
-#ifdef GUI_HAVE_FLTK2
- #include <gvars3/GUI_Fltk2.h>
-#endif
-
-#ifdef GUI_HAVE_MOTIF
- #include <gvars3/GUI_Motif.h>
-#endif
-
-#include "gvars3/GUI.h"
-#include "gvars3/GStringUtil.h"
-
#include <iostream>
using namespace std;
@@ -43,14 +28,5 @@
{
GVars2 GV2;
class GUI GUI;
-
- #ifdef GUI_HAVE_FLTK
- class GUI_Fltk GUI_Fltk(&GUI, &GV2);
- #endif
- #ifdef GUI_HAVE_FLTK2
- class GUI_Fltk2 GUI_Fltk2(&GUI, &GV2);
- #endif
- #ifdef GUI_HAVE_MOTIF
- class GUI_Motif GUI_Motif(&GUI, &GV2);
- #endif
+ class GUIWidgets GUI_Widgets;
}
Index: src/inst_headless.cc
===================================================================
RCS file: /cvsroot/libcvd/gvars3/src/inst_headless.cc,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- src/inst_headless.cc 1 Feb 2008 14:57:36 -0000 1.2
+++ src/inst_headless.cc 20 Feb 2008 19:03:59 -0000 1.3
@@ -43,6 +43,4 @@
void print_history(ostream &ost)
{
}
-
-
}
Index: gvars3/GUI_Widgets.h
===================================================================
RCS file: gvars3/GUI_Widgets.h
diff -N gvars3/GUI_Widgets.h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gvars3/GUI_Widgets.h 20 Feb 2008 19:03:58 -0000 1.1
@@ -0,0 +1,40 @@
+/*
+ This file is part of the GVars3 Library.
+
+ Copyright (C) 2005 The Authors
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+
+#ifndef GVARS3_INC_GUI_WIDGETS_H
+#define GVARS3_INC_GUI_WIDGETS_H
+
+#include <gvars3/GUI.h>
+#include <pthread.h>
+
+namespace GVars3
+{
+
+class GUIWidgets
+{
+ public:
+ void process_in_crnt_thread();
+ void start_thread();
+};
+
+}
+
+#endif
Index: src/GUI_none.cc
===================================================================
RCS file: src/GUI_none.cc
diff -N src/GUI_none.cc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/GUI_none.cc 20 Feb 2008 19:03:59 -0000 1.1
@@ -0,0 +1,37 @@
+/*
+ This file is part of the GVars3 Library.
+
+ Copyright (C) 2005 The Authors
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+
+#include <gvars3/instances.h>
+
+
+#include <iostream>
+using namespace std;
+
+namespace GVars3
+{
+ void GUIWidgets::process_in_crnt_thread()
+ {
+ }
+
+ void GUIWidgets::start_thread()
+ {
+ }
+}
- [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Georg Klein, 2008/02/12
- [libcvd-members] gvars3 Makefile.in configure configure.ac gvars...,
Edward Rosten <=
- Re: [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Georg Klein, 2008/02/20
- Re: [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Edward Rosten, 2008/02/20
- Re: [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Georg Klein, 2008/02/20
- Re: [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Ethan Eade, 2008/02/20
- Re: [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Edward Rosten, 2008/02/20
- Re: [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Ethan Eade, 2008/02/20
- Re: [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Georg Klein, 2008/02/20
- Re: [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Edward Rosten, 2008/02/20
- Re: [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Edward Rosten, 2008/02/20
- Re: [libcvd-members] gvars3 Makefile.in configure configure.ac gvars..., Edward Rosten, 2008/02/20