[libchamplainmm] MarkerLayer: Wrap missing methods



commit bd03d9d2c522425a50f603fd367493a5ba9e653a
Author: Juan R. GarcĂ­a Blanco <juanrgar gmail com>
Date:   Mon Jun 9 20:16:46 2014 +0200

    MarkerLayer: Wrap missing methods

 champlain/src/marker-layer.hg    |   37 +++++++++++++++++++++++--------------
 tools/m4/convert_libchamplain.m4 |    3 +++
 2 files changed, 26 insertions(+), 14 deletions(-)
---
diff --git a/champlain/src/marker-layer.hg b/champlain/src/marker-layer.hg
index e327a4b..f0c8c75 100644
--- a/champlain/src/marker-layer.hg
+++ b/champlain/src/marker-layer.hg
@@ -16,7 +16,6 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include <glibmm.h>
 #include <champlainmm/layer.h>
 #include <champlainmm/marker.h>
 #include <vector>
@@ -31,14 +30,9 @@ namespace Champlain
 
 _WRAP_ENUM(SelectionMode, ChamplainSelectionMode)
 
-class BaseMarker;
-
-class MarkerLayer :
-    public Layer
+class MarkerLayer : public Layer
 {
-  _CLASS_GOBJECT(MarkerLayer, ChamplainMarkerLayer,
-                 CHAMPLAIN_MARKER_LAYER,
-                 Layer, ChamplainLayer)
+  _CLASS_GOBJECT(MarkerLayer, ChamplainMarkerLayer, CHAMPLAIN_MARKER_LAYER, Layer, ChamplainLayer)
 
 protected:
   _CTOR_DEFAULT()
@@ -48,16 +42,31 @@ protected:
 public:
   _WRAP_CREATE()
 
+  _WRAP_METHOD(void add_marker(const Glib::RefPtr<Marker>& marker), champlain_marker_layer_add_marker)
+  _WRAP_METHOD(void remove_marker(const Glib::RefPtr<Marker>& marker), champlain_marker_layer_remove_marker)
+  _WRAP_METHOD(void remove_all(), champlain_marker_layer_remove_all)
 #m4 _CONVERSION(`GList*', `std::vector<Glib::RefPtr<Marker> >', `Glib::ListHandler<Glib::RefPtr<Marker> 
::list_to_vector($3, Glib::OWNERSHIP_SHALLOW)')
-  _WRAP_METHOD(std::vector<Glib::RefPtr<Marker> > get_selected(),
-               champlain_marker_layer_get_selected)
-  _WRAP_METHOD(SelectionMode get_selection_mode() const,
-               champlain_marker_layer_get_selection_mode)
+#m4 _CONVERSION(`GList*', `std::vector<Glib::RefPtr<const Marker> >', `Glib::ListHandler<Glib::RefPtr<const 
Marker> >::list_to_vector($3, Glib::OWNERSHIP_SHALLOW)')
+  _WRAP_METHOD(std::vector<Glib::RefPtr<Marker> > get_markers(), champlain_marker_layer_get_markers)
+  _WRAP_METHOD(std::vector<Glib::RefPtr<const Marker> > get_markers() const, 
champlain_marker_layer_get_markers)
+  _WRAP_METHOD(std::vector<Glib::RefPtr<Marker> > get_selected(), champlain_marker_layer_get_selected)
+  _WRAP_METHOD(std::vector<Glib::RefPtr<const Marker> > get_selected() const, 
champlain_marker_layer_get_selected)
+
+  _WRAP_METHOD(void animate_in_all_markers(), champlain_marker_layer_animate_in_all_markers)
+  _WRAP_METHOD(void animate_out_all_markers(), champlain_marker_layer_animate_out_all_markers)
+
+  _WRAP_METHOD(void show_all_markers(), champlain_marker_layer_show_all_markers)
+  _WRAP_METHOD(void hide_all_markers(), champlain_marker_layer_hide_all_markers)
+
+  _WRAP_METHOD(void set_all_markers_draggable(), champlain_marker_layer_set_all_markers_draggable)
+  _WRAP_METHOD(void set_all_markers_undraggable(), champlain_marker_layer_set_all_markers_undraggable)
+
   _WRAP_METHOD(void select_all_markers(), champlain_marker_layer_select_all_markers)
-  _WRAP_METHOD(void set_selection_mode(SelectionMode mode),
-               champlain_marker_layer_set_selection_mode)
   _WRAP_METHOD(void unselect_all_markers(), champlain_marker_layer_unselect_all_markers)
 
+  _WRAP_METHOD(void set_selection_mode(SelectionMode mode), champlain_marker_layer_set_selection_mode)
+  _WRAP_METHOD(SelectionMode get_selection_mode() const, champlain_marker_layer_get_selection_mode)
+
   _WRAP_PROPERTY("selection-mode", SelectionMode)
 };
 
diff --git a/tools/m4/convert_libchamplain.m4 b/tools/m4/convert_libchamplain.m4
index 285c649..5cfcc7d 100644
--- a/tools/m4/convert_libchamplain.m4
+++ b/tools/m4/convert_libchamplain.m4
@@ -51,6 +51,9 @@ _CONVERSION(`GSList*',`Glib::SListHandle<const MapSourceDesc *>',__FL2H_SHALLOW)
 # MapSourceFactory
 _CONVERSION(`ChamplainMapSourceFactory*',`Glib::RefPtr<MapSourceFactory>',`Glib::wrap($3)')
 
+# Marker
+_CONVERSION(`const Glib::RefPtr<Marker>&',`ChamplainMarker*',__CONVERT_REFPTR_TO_P)
+
 # Point
 _CONVERSION(`GList*',`Glib::ListHandle<const Point *>',__FL2H_SHALLOW)
 _CONVERSION(`const Point&',`ChamplainPoint*',__FCR2P)


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