diff --git a/INSTALL b/INSTALL index 5f55d272..1d5ba91f 100644 --- a/INSTALL +++ b/INSTALL @@ -9,6 +9,12 @@ if you are not familiar with configure). configure has the following medit-specific options: + --enable-printing enable printing support with GTK-2.9 + This option exists for the period until GTK-2.10 is released. GTK has + printing support since 2.9, but it's not stable yet, therefore current code + may be broken with future versions of GTK. Use this option only if you are + ready to have broken builds (bug reports about those are still welcome). + --enable-debug enable debug options (default = NO) --enable-all-gcc-warnings enable most of gcc warnings and turn on -pedantic diff --git a/m4/moo-gtk.m4 b/m4/moo-gtk.m4 index 60c126b1..126984e4 100644 --- a/m4/moo-gtk.m4 +++ b/m4/moo-gtk.m4 @@ -26,11 +26,6 @@ AC_DEFUN([_MOO_CHECK_VERSION],[ fi done - # 2.9 counts as 2.10 - if test $[]$1[]_MINOR_VERSION -ge 9; then - moo_ver_2_10=yes - fi - AC_MSG_RESULT($[]$1[]_MAJOR_VERSION.$[]$1[]_MINOR_VERSION.$[]$1[]_MICRO_VERSION) fi @@ -52,4 +47,26 @@ AC_DEFUN([MOO_PKG_CHECK_GTK_VERSIONS],[ _MOO_CHECK_VERSION(GTK, gtk+-2.0) _MOO_CHECK_VERSION(GLIB, glib-2.0) _MOO_CHECK_VERSION(GDK, gdk-2.0) + + AC_ARG_ENABLE([printing], AC_HELP_STRING([--enable-printing], [whether to enable printing support with gtk >= 2.9 (default = NO, it is UNSTABLE)]), [ + if test x$enable_printing = "xyes"; then + MOO_ENABLE_PRINTING="yes" + else + MOO_ENABLE_PRINTING="no" + fi + ],[ + MOO_ENABLE_PRINTING="no" + ]) + + if test $GTK_MINOR_VERSION -lt 9; then + AC_MSG_NOTICE([GTK version is $GTK_VERSION, no printing]) + MOO_ENABLE_PRINTING="no" + elif test x$MOO_ENABLE_PRINTING = xno; then + AC_MSG_NOTICE([printing disabled]) + else + AC_DEFINE(MOO_ENABLE_PRINTING, 1, [enable printing]) + AC_MSG_NOTICE([printing enabled]) + fi + + AM_CONDITIONAL(MOO_ENABLE_PRINTING, test x$MOO_ENABLE_PRINTING = xyes) ]) diff --git a/moo.kdevelop b/moo.kdevelop index 323459aa..307ba2f9 100644 --- a/moo.kdevelop +++ b/moo.kdevelop @@ -27,7 +27,7 @@ . false - + C @@ -49,21 +49,21 @@ - --enable-debug=full --enable-all-gcc-warnings + --enable-debug=full --enable-all-gcc-warnings --enable-printing build/debug kdevgccoptions kdevgppoptions kdevg77options -O0 -g3 - - - - - - + + + + + + - - + + --enable-debug --enable-all-gcc-warnings --without-python --prefix=/usr/local/gtk-print @@ -221,15 +221,15 @@ - + --g-fatal-warnings true false true - - - - + + + + true @@ -291,16 +291,16 @@ - + A new empty GAP source file - + A new empty C++ file. - + A new empty header file for C/C++. - + A new empty C file. @@ -327,7 +327,7 @@ - + set m_,_ theValue @@ -337,7 +337,7 @@ false 3 - + diff --git a/moo/mooedit/Makefile.incl b/moo/mooedit/Makefile.incl index be0e657d..1ca4f886 100644 --- a/moo/mooedit/Makefile.incl +++ b/moo/mooedit/Makefile.incl @@ -100,7 +100,7 @@ mooedit_sources = \ $(mooedit)/mootextview.c \ $(mooedit)/moousertools.c -mooedit_gtk_2_10_sources = \ +mooedit_printing_sources = \ $(mooedit)/mootextprint.c \ $(mooedit)/mootextprint.h @@ -148,10 +148,10 @@ $(mooedit)/statusbar-glade.h: $(mooedit_srcdir)/glade/statusbar.glade $(XML2H) sh $(XML2H) STATUSBAR_GLADE_XML $(mooedit_srcdir)/glade/statusbar.glade \ > $(mooedit)/statusbar-glade.h -if GTK_2_10 -mooedit_sources += $(mooedit_gtk_2_10_sources) +if MOO_ENABLE_PRINTING +mooedit_sources += $(mooedit_printing_sources) else -mooedit_extra_dist = $(mooedit_gtk_2_10_sources) +mooedit_extra_dist = $(mooedit_printing_sources) endif moo_extra_dist += $(mooedit_extra_dist) $(mooedit_tools_DATA) diff --git a/moo/mooedit/mooeditwindow.c b/moo/mooedit/mooeditwindow.c index 3c3007d0..ee04a4ba 100644 --- a/moo/mooedit/mooeditwindow.c +++ b/moo/mooedit/mooeditwindow.c @@ -11,6 +11,10 @@ * See COPYING file that comes with this distribution. */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #define MOOEDIT_COMPILATION #include "mooedit/statusbar-glade.h" #include "mooedit/mooedit-private.h" @@ -28,7 +32,7 @@ #include "mooutils/moocompat.h" #include "mooutils/mooglade.h" #include "moofileview/moofilesystem.h" -#if GTK_CHECK_VERSION(2,9,0) +#ifdef MOO_ENABLE_PRINTING #include "mooedit/mootextprint.h" #endif #include @@ -211,7 +215,7 @@ static void moo_edit_window_next_ph (MooEditWindow *window); static void moo_edit_window_prev_ph (MooEditWindow *window); -#if GTK_CHECK_VERSION(2,9,0) +#ifdef MOO_ENABLE_PRINTING static void moo_edit_window_page_setup (MooEditWindow *window); static void moo_edit_window_print (MooEditWindow *window); #endif @@ -670,7 +674,7 @@ moo_edit_window_class_init (MooEditWindowClass *klass) "condition::sensitive", "has-open-document", NULL); -#if GTK_CHECK_VERSION(2,9,0) +#ifdef MOO_ENABLE_PRINTING moo_window_class_new_action (window_class, "PageSetup", "name", "Page Setup", "label", "Page Setup", @@ -1149,7 +1153,7 @@ moo_edit_window_prev_ph (MooEditWindow *window) } -#if GTK_CHECK_VERSION(2,9,0) +#ifdef MOO_ENABLE_PRINTING static void moo_edit_window_page_setup (MooEditWindow *window) {