glom r1948 - in trunk: . glom/libglom/document



Author: murrayc
Date: Tue Mar  3 18:16:36 2009
New Revision: 1948
URL: http://svn.gnome.org/viewvc/glom?rev=1948&view=rev

Log:
2009-03-03  Murray Cumming  <murrayc murrayc com>

* glom/libglom/document/document_glom.h: Add some SWIG ifdefs to 
improve the Java wrapping output with swig.

Modified:
   trunk/ChangeLog
   trunk/glom/libglom/document/document_glom.h

Modified: trunk/glom/libglom/document/document_glom.h
==============================================================================
--- trunk/glom/libglom/document/document_glom.h	(original)
+++ trunk/glom/libglom/document/document_glom.h	Tue Mar  3 18:16:36 2009
@@ -44,6 +44,21 @@
 #include <map>
 #include <limits> // for numeric_limits
 
+// Instructions to swig, telling it what Java API to generate:
+#ifdef SWIG
+%module glom
+%include "std_string.i"
+%include "std_vector.i"
+%include "typemaps.i"
+
+%inline %{ typedef unsigned int guint; %}
+%inline %{ namespace Glib { typedef std::string ustring; } %}
+
+//Stick to the client-only API for swig, for now.
+//TODO: Watch out if some of these are virtual.
+#define GLOM_ENABLE_CLIENT_ONLY 1
+#endif //SWIG
+
 namespace Gtk
 {
 class Window;
@@ -332,7 +347,7 @@
 
   FoundSet get_criteria_current(const Glib::ustring& table_name) const;
 
-
+#ifndef SWIG //Hide this API from swig.
   // Used by Relationship Overview dialog to preserve table locations accross instantiations:
     
   /** Retrieve the x and y coordinates for the given table position in the relationship overview dialog.
@@ -375,7 +390,9 @@
   typedef sigc::signal<void, AppState::userlevels> type_signal_userlevel_changed;
   type_signal_userlevel_changed signal_userlevel_changed();
 
+
   void emit_userlevel_changed();
+#endif
 
   static Glib::ustring get_default_layout_platform();
 
@@ -389,6 +406,7 @@
 
 
 
+#ifndef SWIG //Hide this API from swig.
   void set_parent_window(Gtk::Window* window);
 
   Glib::ustring build_and_get_contents() const;
@@ -406,6 +424,7 @@
   // This is required by the report builder, so it cannot be disabled
   // in client only mode
   static void set_node_attribute_value_as_decimal_double(xmlpp::Element* node, const Glib::ustring& strAttributeName, double value);
+#endif //SWIG
 
 private:
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]