[dia] More accessors for DiagramData and Layer



commit 8514d7f599238c0c8065120e396e0f260611a93f
Author: Hans Breuer <hans breuer org>
Date:   Mon Apr 20 20:50:56 2009 +0200

    More accessors for DiagramData and Layer
---
 lib/diagramdata.c |    5 +++++
 lib/diagramdata.h |    3 +++
 lib/layer.c       |   11 ++++++++++-
 lib/libdia.def    |    4 ++++
 4 files changed, 22 insertions(+), 1 deletions(-)

diff --git a/lib/diagramdata.c b/lib/diagramdata.c
index b022b14..d450b8e 100644
--- a/lib/diagramdata.c
+++ b/lib/diagramdata.c
@@ -336,6 +336,11 @@ data_layer_get_nth (const DiagramData *data, guint index)
     return g_ptr_array_index(data->layers, index);
   return NULL;
 }
+int 
+data_layer_count(const DiagramData *data)
+{
+  return data->layers->len;
+}
 
 /** Set which layer is the active layer in a diagram.
  * @param data The diagram in which to set the active layer.
diff --git a/lib/diagramdata.h b/lib/diagramdata.h
index ad37915..eb37f8b 100644
--- a/lib/diagramdata.h
+++ b/lib/diagramdata.h
@@ -131,6 +131,7 @@ void data_add_layer_at(DiagramData *data, Layer *layer, int pos);
 void data_set_active_layer(DiagramData *data, Layer *layer);
 void data_delete_layer(DiagramData *data, Layer *layer);
 int  data_layer_get_index (const DiagramData *data, const Layer *layer);
+int data_layer_count(const DiagramData *data);
 Layer *data_layer_get_nth (const DiagramData *data, guint index);
 
 void data_select(DiagramData *data, DiaObject *obj);
@@ -163,6 +164,8 @@ void layer_render(Layer *layer, DiaRenderer *renderer, Rectangle *update,
 
 int layer_object_get_index(Layer *layer, DiaObject *obj);
 DiaObject *layer_object_get_nth(Layer *layer, guint index);
+int layer_object_count(Layer *layer);
+gchar *layer_get_name(Layer *layer);
 void layer_add_object(Layer *layer, DiaObject *obj);
 void layer_add_object_at(Layer *layer, DiaObject *obj, int pos);
 void layer_add_objects(Layer *layer, GList *obj_list);
diff --git a/lib/layer.c b/lib/layer.c
index 9a5feaa..ff3c77b 100644
--- a/lib/layer.c
+++ b/lib/layer.c
@@ -134,7 +134,16 @@ layer_object_get_nth (Layer *layer, guint index)
   }
   return NULL;
 }
-
+int
+layer_object_count (Layer *layer)
+{
+  return g_list_length(layer->objects);
+}
+gchar *
+layer_get_name (Layer *layer)
+{
+  return g_strdup (layer->name);
+}
 /** Add an object to the top of a layer.
  * @param layer The layer to add the object to.
  * @param obj The object to add.  This must not already be part of another
diff --git a/lib/libdia.def b/lib/libdia.def
index d12ec4f..0e78181 100644
--- a/lib/libdia.def
+++ b/lib/libdia.def
@@ -151,6 +151,7 @@ EXPORTS
  data_get_sorted_selected
  data_get_sorted_selected_remove
  data_int
+ data_layer_count
  data_layer_get_index
  data_layer_get_nth
  data_lower_layer
@@ -442,7 +443,10 @@ EXPORTS
  layer_find_objects_in_rectangle
  layer_find_objects_intersecting_rectangle
  layer_get_parent_diagram
+ layer_get_name
+ layer_object_count
  layer_object_get_index
+ layer_object_get_nth
  layer_remove_object
  layer_remove_objects
  layer_render



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