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

## Stability Level

Unstable, unless otherwise indicated

## Functions

GQuark | ianjuta_markable_error_quark ()
void | ianjuta_markable_delete_all_markers ()
gboolean | ianjuta_markable_is_marker_set ()
gint | ianjuta_markable_location_from_handle ()
gint | ianjuta_markable_mark ()
void | ianjuta_markable_unmark ()

## Signals

void | marker-clicked | Run Last

## Types and Values

enum | IAnjutaMarkableMarker

## Object Hierarchy

        GEnum
        ├── IAnjutaMarkableError
        ╰── IAnjutaMarkableMarker
        GInterface
        ╰── IAnjutaMarkable

## Includes

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

## Description

## Functions

### ianjuta_markable_error_quark ()

    GQuark
    ianjuta_markable_error_quark (void);

### ianjuta_markable_delete_all_markers ()

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

Delete the `marker` from all locations.

#### Parameters

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` .

#### Parameters

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.

#### Parameters

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,
                           const gchar *tooltip,
                           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.

#### Parameters

obj | Self |
location | Location at which the marker to set. |
marker | Type of marker to be used |
tooltip | optional tooltip displayed with the marker. | [allow-none]
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` .

#### Parameters

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

## Types and Values

### enum IAnjutaMarkableMarker

This enumeration is used to specify the pixmap used for the marker

#### Members

IANJUTA_MARKABLE_LINEMARKER | Mark a particular line |
IANJUTA_MARKABLE_BOOKMARK | A bookmark |
IANJUTA_MARKABLE_MESSAGE | An (error) message |
IANJUTA_MARKABLE_BREAKPOINT_DISABLED | a disabled breakpoint |
IANJUTA_MARKABLE_BREAKPOINT_ENABLED | a enabled breakpoint |
IANJUTA_MARKABLE_PROGRAM_COUNTER | Marks the program counter position |

## Signal Details

### The `“marker-clicked”` signal

    void
    user_function (IAnjutaMarkable *obj,
                   gboolean         double_click,
                   gint             location,
                   gpointer         user_data)

The signal is emitted when the user clicks on a marker

#### Parameters

obj | Self |
double_click | whether the marker was double clicked |
location | location of the clicked marker |
user_data | user data set when the signal handler was connected. |

Flags: Run Last