* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __GIS_MARKER_H__
-#define __GIS_MARKER_H__
+#ifndef __GRITS_MARKER_H__
+#define __GRITS_MARKER_H__
#include <glib.h>
#include <glib-object.h>
#include <cairo.h>
#include "grits-object.h"
-/* GisMarker */
-#define GIS_TYPE_MARKER (gis_marker_get_type())
-#define GIS_MARKER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GIS_TYPE_MARKER, GisMarker))
-#define GIS_IS_MARKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GIS_TYPE_MARKER))
-#define GIS_MARKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIS_TYPE_MARKER, GisMarkerClass))
-#define GIS_IS_MARKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIS_TYPE_MARKER))
-#define GIS_MARKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIS_TYPE_MARKER, GisMarkerClass))
+/* GritsMarker */
+#define GRITS_TYPE_MARKER (grits_marker_get_type())
+#define GRITS_MARKER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GRITS_TYPE_MARKER, GritsMarker))
+#define GRITS_IS_MARKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GRITS_TYPE_MARKER))
+#define GRITS_MARKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GRITS_TYPE_MARKER, GritsMarkerClass))
+#define GRITS_IS_MARKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GRITS_TYPE_MARKER))
+#define GRITS_MARKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GRITS_TYPE_MARKER, GritsMarkerClass))
-typedef struct _GisMarker GisMarker;
-typedef struct _GisMarkerClass GisMarkerClass;
+typedef struct _GritsMarker GritsMarker;
+typedef struct _GritsMarkerClass GritsMarkerClass;
-struct _GisMarker {
- GisObject parent_instance;
- gint xoff, yoff;
+#define GRITS_MARKER_DMASK_NONE (0x0001)
+#define GRITS_MARKER_DMASK_LABEL (0x0002)
+#define GRITS_MARKER_DMASK_POINT (0x0004)
+#define GRITS_MARKER_DMASK_ICON (0x0008)
+#define GRITS_MARKER_DMASK_DIRECTIONAL (0x0010)
+#define GRITS_MARKER_DMASK_ALL (0xffff)
+
+struct _GritsMarker {
+ GritsObject parent_instance;
+ gint xoff, yoff; /* center point offset */
+ gint icon_width, icon_height; /* size of icon for offsets */
gchar *label;
+ gchar *file;
cairo_t *cairo;
guint tex;
+ gboolean ortho;
+
+ cairo_surface_t *icon_img;
+
+ /* What object to display */
+ guint display_mask;
+
+ /* icon data */
+ gint angle; /* rotation angle */
+ gboolean flip; /* keep icon "rightside-up" after rotating? */
+
+ gdouble outline;
+ gdouble radius;
+ gdouble width;
+ gdouble height;
};
-struct _GisMarkerClass {
- GisObjectClass parent_class;
+struct _GritsMarkerClass {
+ GritsObjectClass parent_class;
};
-GType gis_marker_get_type(void);
+GType grits_marker_get_type(void);
-GisMarker *gis_marker_new(const gchar *label);
+GritsMarker *grits_marker_new(const gchar *label);
+GritsMarker *grits_marker_icon_new(const gchar *label, const gchar *filename,
+ guint angle, gboolean flip, guint display_mask);
#endif