IAnjutaMarkable

IAnjutaMarkable — Implemented by editors (or views) with markers support

Stability Level

Unstable, unless otherwise indicated

Synopsis


#include <libanjuta/interfaces/ianjuta-markable.h>


#define             IANJUTA_TYPE_MARKABLE_ERROR
#define             IANJUTA_TYPE_MARKABLE_MARKER
enum                IAnjutaMarkableError;
enum                IAnjutaMarkableMarker;
#define             IANJUTA_MARKABLE_ERROR
                    IAnjutaMarkable;
                    IAnjutaMarkableIface;
GType               ianjuta_markable_marker_get_type    (void);
GQuark              ianjuta_markable_error_quark        (void);
GType               ianjuta_markable_get_type           (void);
void                ianjuta_markable_delete_all_markers (IAnjutaMarkable *obj,
                                                         IAnjutaMarkableMarker marker,
                                                         GError **err);
gboolean            ianjuta_markable_is_marker_set      (IAnjutaMarkable *obj,
                                                         gint location,
                                                         IAnjutaMarkableMarker marker,
                                                         GError **err);
gint                ianjuta_markable_location_from_handle
                                                        (IAnjutaMarkable *obj,
                                                         gint handle,
                                                         GError **err);
gint                ianjuta_markable_mark               (IAnjutaMarkable *obj,
                                                         gint location,
                                                         IAnjutaMarkableMarker marker,
                                                         GError **err);
void                ianjuta_markable_unmark             (IAnjutaMarkable *obj,
                                                         gint location,
                                                         IAnjutaMarkableMarker marker,
                                                         GError **err);

Object Hierarchy


  GInterface
   +----IAnjutaMarkable

Prerequisites

IAnjutaMarkable requires GObject.

Signals


  "marker-clicked"                                 : Run Last

Description

Details

IANJUTA_TYPE_MARKABLE_ERROR

#define IANJUTA_TYPE_MARKABLE_ERROR (ianjuta_markable_error_get_type())


IANJUTA_TYPE_MARKABLE_MARKER

#define IANJUTA_TYPE_MARKABLE_MARKER (ianjuta_markable_marker_get_type())


enum IAnjutaMarkableError

typedef enum {
	IANJUTA_MARKABLE_INVALID_LOCATION
} IAnjutaMarkableError;


enum IAnjutaMarkableMarker

typedef enum {
	IANJUTA_MARKABLE_LINEMARKER,
	IANJUTA_MARKABLE_BOOKMARK,
	IANJUTA_MARKABLE_BREAKPOINT_DISABLED,
	IANJUTA_MARKABLE_BREAKPOINT_ENABLED,
	IANJUTA_MARKABLE_PROGRAM_COUNTER
} IAnjutaMarkableMarker;


IANJUTA_MARKABLE_ERROR

#define IANJUTA_MARKABLE_ERROR ianjuta_markable_error_quark()


IAnjutaMarkable

typedef struct _IAnjutaMarkable IAnjutaMarkable;


IAnjutaMarkableIface

typedef struct {
	GTypeInterface g_iface;
	
	/* Signal */
	void (*marker_clicked) (IAnjutaMarkable *obj, gboolean double_click,  gint location);

	void (*delete_all_markers) (IAnjutaMarkable *obj, IAnjutaMarkableMarker marker, GError **err);
	gboolean (*is_marker_set) (IAnjutaMarkable *obj, gint location,  IAnjutaMarkableMarker marker, GError **err);
	gint (*location_from_handle) (IAnjutaMarkable *obj, gint handle, GError **err);
	gint (*mark) (IAnjutaMarkable *obj, gint location,  IAnjutaMarkableMarker marker, GError **err);
	void (*unmark) (IAnjutaMarkable *obj, gint location,  IAnjutaMarkableMarker marker, GError **err);
} IAnjutaMarkableIface;


ianjuta_markable_marker_get_type ()

GType               ianjuta_markable_marker_get_type    (void);

Returns :

ianjuta_markable_error_quark ()

GQuark              ianjuta_markable_error_quark        (void);

Returns :

ianjuta_markable_get_type ()

GType               ianjuta_markable_get_type           (void);

Returns :

ianjuta_markable_delete_all_markers ()

void                ianjuta_markable_delete_all_markers (IAnjutaMarkable *obj,
                                                         IAnjutaMarkableMarker marker,
                                                         GError **err);

Delete the marker from all locations.

obj : Self
marker : Marker to delete.
err : Error propagation and reporting

ianjuta_markable_is_marker_set ()

gboolean            ianjuta_markable_is_marker_set      (IAnjutaMarkable *obj,
                                                         gint location,
                                                         IAnjutaMarkableMarker marker,
                                                         GError **err);

Check if the marker is set at the given location.

obj : Self
location : Location to check.
marker : Marker to check.
err : Error propagation and reporting
Returns : TRUE if the marker is set at the location, other false.

ianjuta_markable_location_from_handle ()

gint                ianjuta_markable_location_from_handle
                                                        (IAnjutaMarkable *obj,
                                                         gint handle,
                                                         GError **err);

Location where a marker is set could have moved by some operation in the implementation. To retrieve the correct location where the marker has moved, pass the handle retured by ianjuta_markable_mark() to this method.

obj : Self
handle : Handle of location.
err : Error propagation and reporting
Returns : Current location where the marker was set.

ianjuta_markable_mark ()

gint                ianjuta_markable_mark               (IAnjutaMarkable *obj,
                                                         gint location,
                                                         IAnjutaMarkableMarker marker,
                                                         GError **err);

Marks the specified location with the given marker type. Location is implementation depenedent. For example, for an editor location means lines where markers are set.

obj : Self
location : Location at which the marker to set.
marker : Type of marker to be used
err : Error propagation and reporting
Returns : Handle of the location marked. Can be used later to obtain new location, if it has been moved due to addetions/deletions in the implementor object.

ianjuta_markable_unmark ()

void                ianjuta_markable_unmark             (IAnjutaMarkable *obj,
                                                         gint location,
                                                         IAnjutaMarkableMarker marker,
                                                         GError **err);

Clears the marker at given location.

obj : Self
location : Location where the marker is set.
marker : The marker to unset.
err : Error propagation and reporting

Signal Details

The "marker-clicked" signal

void                user_function                      (IAnjutaMarkable *ianjutamarkable,
                                                        gboolean         arg1,
                                                        gint             arg2,
                                                        gpointer         user_data)            : Run Last

ianjutamarkable : the object which received the signal.
arg1 :
arg2 :
user_data : user data set when the signal handler was connected.