[gtkmm/gtkmm-2-14] Fix the build without exceptions.
- From: Murray Cumming <murrayc src gnome org>
- To: svn-commits-list gnome org
- Subject: [gtkmm/gtkmm-2-14] Fix the build without exceptions.
- Date: Mon, 22 Jun 2009 06:12:30 -0400 (EDT)
commit 9a50725574a543776a1dc728b0f7ed169df67759
Author: Murray Cumming <murrayc murrayc com>
Date: Mon Jun 22 12:06:42 2009 +0200
Fix the build without exceptions.
* gtk/src/builder.ccg:
* gtk/src/builder.hg: create_from_string(): Added ifdefed versions for when
--disable-api-exceptions was used with glibmm.
* configure.in: Reduce the pangomm requirement to pangomm 2.12 because we
do not really need pangomm 2.14 to build.
ChangeLog | 11 ++++++++++
configure.in | 2 +-
gtk/src/builder.ccg | 53 +++++++++++++++++++++++++++++++++++++++++---------
gtk/src/builder.hg | 16 +++++++++++++-
4 files changed, 69 insertions(+), 13 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 44219cc..2ec4da0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2009-06-22 Murray Cumming <murrayc murrayc com>
+
+ Fix the build without exceptions.
+
+ * gtk/src/builder.ccg:
+ * gtk/src/builder.hg: create_from_string(): Added ifdefed versions for when
+ --disable-api-exceptions was used with glibmm.
+
+ * configure.in: Reduce the pangomm requirement to pangomm 2.12 because we
+ do not really need pangomm 2.14 to build.
+
2009-03-23 Daniel Elstner <danielk openismus com>
* gtk/src/builder.{ccg,hg}: Conditionalize all exception handling
diff --git a/configure.in b/configure.in
index 5034007..62dca45 100644
--- a/configure.in
+++ b/configure.in
@@ -202,7 +202,7 @@ gtkmm_min_glibmm_version=2.18.0
gtkmm_min_giomm_version=2.18.0
gtkmm_min_gtk_version=2.14.0
gtkmm_min_cairomm_version=1.2.2
-gtkmm_min_pangomm_version=2.14.0
+gtkmm_min_pangomm_version=2.12.0
GLIBMM_LIBDIR=`pkg-config --variable=libdir glibmm-2.4`
diff --git a/gtk/src/builder.ccg b/gtk/src/builder.ccg
index 3eeb5cd..616aef5 100644
--- a/gtk/src/builder.ccg
+++ b/gtk/src/builder.ccg
@@ -108,20 +108,19 @@ Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer)
else
return Glib::RefPtr<Builder>();
}
-#else
-Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer,
- std::auto_ptr<Glib::Error>& error)
+
+//static
+Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, const char* object_id)
{
Glib::RefPtr<Builder> builder = Builder::create();
- if(builder->add_from_string(buffer, error))
+ if(builder->add_from_string(buffer, object_id))
return builder;
else
return Glib::RefPtr<Builder>();
}
-#endif /* !GLIBMM_EXCEPTIONS_ENABLED */
//static
-Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, const char* object_id)
+Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, const Glib::ustring& object_id)
{
Glib::RefPtr<Builder> builder = Builder::create();
if(builder->add_from_string(buffer, object_id))
@@ -131,25 +130,59 @@ Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, c
}
//static
-Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, const Glib::ustring& object_id)
+Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, const Glib::StringArrayHandle& object_ids)
{
Glib::RefPtr<Builder> builder = Builder::create();
- if(builder->add_from_string(buffer, object_id))
+ if(builder->add_from_string(buffer, object_ids))
+ return builder;
+ else
+ return Glib::RefPtr<Builder>();
+}
+
+#else //GLIBMM_EXCEPTIONS_ENABLED
+
+Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, std::auto_ptr<Glib::Error>& error)
+{
+ Glib::RefPtr<Builder> builder = Builder::create();
+ if(builder->add_from_string(buffer, error))
return builder;
else
return Glib::RefPtr<Builder>();
}
//static
-Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, const Glib::StringArrayHandle& object_ids)
+Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, const char* object_id, std::auto_ptr<Glib::Error>& error)
{
Glib::RefPtr<Builder> builder = Builder::create();
- if(builder->add_from_string(buffer, object_ids))
+ if(builder->add_from_string(buffer, object_id, error))
return builder;
else
return Glib::RefPtr<Builder>();
}
+//static
+Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, const Glib::ustring& object_id, std::auto_ptr<Glib::Error>& error)
+{
+ Glib::RefPtr<Builder> builder = Builder::create();
+ if(builder->add_from_string(buffer, object_id, error))
+ return builder;
+ else
+ return Glib::RefPtr<Builder>();
+}
+
+//static
+Glib::RefPtr<Builder> Builder::create_from_string(const Glib::ustring& buffer, const Glib::StringArrayHandle& object_ids, std::auto_ptr<Glib::Error>& error)
+{
+ Glib::RefPtr<Builder> builder = Builder::create();
+ if(builder->add_from_string(buffer, object_ids, error))
+ return builder;
+ else
+ return Glib::RefPtr<Builder>();
+}
+#endif /* !GLIBMM_EXCEPTIONS_ENABLED */
+
+
+
#ifdef GLIBMM_EXCEPTIONS_ENABLED
bool Builder::add_from_file(const std::string& filename, const char* object_id)
#else
diff --git a/gtk/src/builder.hg b/gtk/src/builder.hg
index d1691f1..ac3abd9 100644
--- a/gtk/src/builder.hg
+++ b/gtk/src/builder.hg
@@ -129,9 +129,9 @@ public:
#ifdef GLIBMM_EXCEPTIONS_ENABLED
static Glib::RefPtr<Builder> create_from_string(const Glib::ustring& buffer);
#else
- static Glib::RefPtr<Builder> create_from_string(const Glib::ustring& buffer,
- std::auto_ptr<Glib::Error>& error);
+ static Glib::RefPtr<Builder> create_from_string(const Glib::ustring& buffer, std::auto_ptr<Glib::Error>& error);
#endif
+
//This is just to avoid the ambiguous call when using a string literal,
//caused by the overload that takes a StringArrayHandle.
/** Parses a string containing a GtkBuilder UI definition building only the requested object.
@@ -143,7 +143,11 @@ public:
*
* @newin2p16
*/
+#ifdef GLIBMM_EXCEPTIONS_ENABLED
static Glib::RefPtr<Builder> create_from_string(const Glib::ustring& buffer, const char* object_id);
+#else
+ static Glib::RefPtr<Builder> create_from_string(const Glib::ustring& buffer, const char* object_id, std::auto_ptr<Glib::Error>& error);
+#endif
/** Parses a string containing a GtkBuilder UI definition building only the requested object.
*
@@ -154,7 +158,11 @@ public:
*
* @newin2p14
*/
+#ifdef GLIBMM_EXCEPTIONS_ENABLED
static Glib::RefPtr<Builder> create_from_string(const Glib::ustring& buffer, const Glib::ustring& object_id);
+#else
+ static Glib::RefPtr<Builder> create_from_string(const Glib::ustring& buffer, const Glib::ustring& object_id, std::auto_ptr<Glib::Error>& error);
+#endif
/** Parses a string containing a GtkBuilder UI definition building only the requested objects.
*
@@ -169,7 +177,11 @@ public:
*
* @newin2p14
*/
+#ifdef GLIBMM_EXCEPTIONS_ENABLED
static Glib::RefPtr<Builder> create_from_string(const Glib::ustring& buffer, const Glib::StringArrayHandle& object_ids);
+#else
+ static Glib::RefPtr<Builder> create_from_string(const Glib::ustring& buffer, const Glib::StringArrayHandle& object_ids, std::auto_ptr<Glib::Error>& error);
+#endif
_IGNORE(gtk_builder_add_objects_from_file)
_WRAP_METHOD(bool add_from_file(const std::string& filename), gtk_builder_add_from_file, errthrow)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]