BamfWindow

## BamfWindow BamfWindow — The base class for all windows |

## Synopsis

    struct              BamfWindow;
    struct              BamfWindowClass;
    enum                BamfWindowMaximizationType;
    enum                BamfWindowType;
    gint                bamf_window_get_monitor             (BamfWindow *self);
    guint32             bamf_window_get_pid                 (BamfWindow *self);
    BamfWindow *        bamf_window_get_transient           (BamfWindow *self);
    gchar *             bamf_window_get_utf8_prop           (BamfWindow *self,
                                                             const char *prop);
    BamfWindowType      bamf_window_get_window_type         (BamfWindow *self);
    guint32             bamf_window_get_xid                 (BamfWindow *self);
    time_t              bamf_window_last_active             (BamfWindow *self);
    BamfWindowMaximizationType bamf_window_maximized        (BamfWindow *self);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----BamfView
                   +----BamfWindow

## Signals

      "maximized-changed"                              : Run First
      "monitor-changed"                                : Run First

## Description

BamfWindow is the base class that all windows need to derive from.

## Details

### struct BamfWindow

    struct BamfWindow;

### struct BamfWindowClass

    struct BamfWindowClass {
      BamfViewClass parent_class;

      /*< signals >*/
      void (*monitor_changed)   (BamfWindow *window, gint old_value, gint new_value);
      void (*maximized_changed) (BamfWindow *window, gint old_value, gint new_value);
    };

### enum BamfWindowMaximizationType

    typedef enum {
      BAMF_WINDOW_FLOATING,              /* Floating window */
      BAMF_WINDOW_HORIZONTAL_MAXIMIZED,  /* Horizontally maximized window */
      BAMF_WINDOW_VERTICAL_MAXIMIZED,    /* Vertically maximized window */
      BAMF_WINDOW_MAXIMIZED              /* Maximized window */
    } BamfWindowMaximizationType;

### enum BamfWindowType

    typedef enum {
      BAMF_WINDOW_NORMAL,       /* document/app window */
      BAMF_WINDOW_DESKTOP,      /* desktop background */
      BAMF_WINDOW_DOCK,         /* panel */
      BAMF_WINDOW_DIALOG,       /* dialog */
      BAMF_WINDOW_TOOLBAR,      /* tearoff toolbar */
      BAMF_WINDOW_MENU,         /* tearoff menu */
      BAMF_WINDOW_UTILITY,      /* palette/toolbox window */
      BAMF_WINDOW_SPLASHSCREEN  /* splash screen */
    } BamfWindowType;

### bamf_window_get_monitor ()

    gint                bamf_window_get_monitor             (BamfWindow *self);

### bamf_window_get_pid ()

    guint32             bamf_window_get_pid                 (BamfWindow *self);

### bamf_window_get_transient ()

    BamfWindow *        bamf_window_get_transient           (BamfWindow *self);

### bamf_window_get_utf8_prop ()

    gchar *             bamf_window_get_utf8_prop           (BamfWindow *self,
                                                             const char *prop);

### bamf_window_get_window_type ()

    BamfWindowType      bamf_window_get_window_type         (BamfWindow *self);

### bamf_window_get_xid ()

    guint32             bamf_window_get_xid                 (BamfWindow *self);

### bamf_window_last_active ()

    time_t              bamf_window_last_active             (BamfWindow *self);

### bamf_window_maximized ()

    BamfWindowMaximizationType bamf_window_maximized        (BamfWindow *self);

## Signal Details

### The `"maximized-changed"` signal

    void                user_function                      (BamfWindow *bamfwindow,
                                                            gint        arg1,
                                                            gint        arg2,
                                                            gpointer    user_data)       : Run First

`bamfwindow` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.

### The `"monitor-changed"` signal

    void                user_function                      (BamfWindow *bamfwindow,
                                                            gint        arg1,
                                                            gint        arg2,
                                                            gpointer    user_data)       : Run First

`bamfwindow` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.