## IdeBufferChangeMonitor IdeBufferChangeMonitor |

## Functions

void | (*IdeBufferChangeMonitorForeachFunc) ()
IdeBuffer * | ide_buffer_change_monitor_get_buffer ()
void | ide_buffer_change_monitor_emit_changed ()
void | ide_buffer_change_monitor_foreach_change ()
IdeBufferLineChange | ide_buffer_change_monitor_get_change ()
void | ide_buffer_change_monitor_reload ()

## Properties

IdeBuffer * | buffer | Read / Write / Construct Only

## Signals

void | changed | Run Last

## Types and Values

#define | IDE_TYPE_BUFFER_CHANGE_MONITOR
enum | IdeBufferLineChange
struct | IdeBufferChangeMonitorClass
| IdeBufferChangeMonitor

## Object Hierarchy

        GObject
        ╰── IdeObject
            ╰── IdeBufferChangeMonitor

## Description

## Functions

### IdeBufferChangeMonitorForeachFunc ()

    void
    (*IdeBufferChangeMonitorForeachFunc) (guint line,
                                          IdeBufferLineChange change,
                                          gpointer user_data);

### ide_buffer_change_monitor_get_buffer ()

    IdeBuffer *
    ide_buffer_change_monitor_get_buffer (IdeBufferChangeMonitor *self);

Gets the “buffer” property.

#### Parameters

self | a IdeBufferChangeMonitor |

#### Returns

an IdeBuffer.

[transfer none]

Since: 3.32

### ide_buffer_change_monitor_emit_changed ()

    void
    ide_buffer_change_monitor_emit_changed
                                   (IdeBufferChangeMonitor *self);

### ide_buffer_change_monitor_foreach_change ()

    void
    ide_buffer_change_monitor_foreach_change
                                   (IdeBufferChangeMonitor *self,
                                    guint line_begin,
                                    guint line_end,
                                    IdeBufferChangeMonitorForeachFunc callback,
                                    gpointer user_data);

Calls `callback` for every line between `line_begin` and `line_end` that have an addition, deletion, or change.

#### Parameters

self | a IdeBufferChangeMonitor |
line_begin | the starting line |
line_end | the end line |
callback | a callback. | [scope call]
user_data | user data for `callback` |

Since: 3.32

### ide_buffer_change_monitor_get_change ()

    IdeBufferLineChange
    ide_buffer_change_monitor_get_change (IdeBufferChangeMonitor *self,
                                          guint line);

### ide_buffer_change_monitor_reload ()

    void
    ide_buffer_change_monitor_reload (IdeBufferChangeMonitor *self);

## Types and Values

### IDE_TYPE_BUFFER_CHANGE_MONITOR

    #define IDE_TYPE_BUFFER_CHANGE_MONITOR (ide_buffer_change_monitor_get_type())

### enum IdeBufferLineChange

#### Members

IDE_BUFFER_LINE_CHANGE_NONE |  |
IDE_BUFFER_LINE_CHANGE_ADDED |  |
IDE_BUFFER_LINE_CHANGE_CHANGED |  |
IDE_BUFFER_LINE_CHANGE_DELETED |  |
IDE_BUFFER_LINE_CHANGE_PREVIOUS_DELETED |  |

### struct IdeBufferChangeMonitorClass

    struct IdeBufferChangeMonitorClass {
      IdeObjectClass parent_class;

      void                (*load)           (IdeBufferChangeMonitor            *self,
                                             IdeBuffer                         *buffer);
      IdeBufferLineChange (*get_change)     (IdeBufferChangeMonitor            *self,
                                             guint                              line);
      void                (*reload)         (IdeBufferChangeMonitor            *self);
      void                (*foreach_change) (IdeBufferChangeMonitor            *self,
                                             guint                              line_begin,
                                             guint                              line_end,
                                             IdeBufferChangeMonitorForeachFunc  callback,
                                             gpointer                           user_data);
    };

### IdeBufferChangeMonitor

    typedef struct _IdeBufferChangeMonitor IdeBufferChangeMonitor;

## Property Details

### The `“buffer”` property

      “buffer”                   IdeBuffer *

The IdeBuffer to be monitored.

Owner: IdeBufferChangeMonitor

Flags: Read / Write / Construct Only

## Signal Details

### The `“changed”` signal

    void
    user_function (IdeBufferChangeMonitor *idebufferchangemonitor,
                   gpointer                user_data)

Flags: Run Last