qulogic/libgnt

Make GntWindow private and use GObject macro.

2019-04-06, Elliott Sales de Andrade
5b431ad68d48
Parents 328db5deb656
Children 2e5f62ad06f3
Make GntWindow private and use GObject macro.
  • +17 -12
    gntwindow.c
  • +1 -15
    gntwindow.h
  • --- a/gntwindow.c Sat Apr 06 06:05:21 2019 -0400
    +++ b/gntwindow.c Sat Apr 06 06:13:55 2019 -0400
    @@ -30,6 +30,7 @@
    {
    GHashTable *accels; /* key => menuitem-id */
    GntWindowFlags flags;
    + GntMenu *menu;
    } GntWindowPrivate;
    enum
    @@ -49,8 +50,10 @@
    show_menu(GntBindable *bind, G_GNUC_UNUSED GList *params)
    {
    GntWindow *win = GNT_WINDOW(bind);
    - if (win->menu) {
    - GntMenu *menu = win->menu;
    + GntWindowPrivate *priv = gnt_window_get_instance_private(win);
    +
    + if (priv->menu) {
    + GntMenu *menu = priv->menu;
    gnt_screen_menu_show(menu);
    if (menu->type == GNT_MENU_TOPLEVEL) {
    @@ -71,8 +74,8 @@
    GntWindow *window = GNT_WINDOW(widget);
    GntWindowPrivate *priv = gnt_window_get_instance_private(window);
    - if (window->menu)
    - gnt_widget_destroy(GNT_WIDGET(window->menu));
    + if (priv->menu)
    + gnt_widget_destroy(GNT_WIDGET(priv->menu));
    g_clear_pointer(&priv->accels, g_hash_table_destroy);
    org_destroy(widget);
    @@ -150,8 +153,9 @@
    void
    gnt_window_workspace_hiding(GntWindow *window)
    {
    - if (window->menu)
    - gnt_widget_hide(GNT_WIDGET(window->menu));
    + GntWindowPrivate *priv = gnt_window_get_instance_private(window);
    + if (priv->menu)
    + gnt_widget_hide(GNT_WIDGET(priv->menu));
    g_signal_emit(window, signals[SIG_WORKSPACE_HIDE], 0);
    }
    @@ -163,14 +167,13 @@
    void gnt_window_set_menu(GntWindow *window, GntMenu *menu)
    {
    + GntWindowPrivate *priv = gnt_window_get_instance_private(window);
    /* If a menu already existed, then destroy that first. */
    const char *name = gnt_widget_get_name(GNT_WIDGET(window));
    - if (window->menu)
    - gnt_widget_destroy(GNT_WIDGET(window->menu));
    - window->menu = menu;
    + if (priv->menu)
    + gnt_widget_destroy(GNT_WIDGET(priv->menu));
    + priv->menu = menu;
    if (name) {
    - GntWindowPrivate *priv =
    - gnt_window_get_instance_private(window);
    if (!gnt_style_read_menu_accels(name, priv->accels)) {
    g_clear_pointer(&priv->accels, g_hash_table_destroy);
    }
    @@ -180,9 +183,11 @@
    GntMenu *
    gnt_window_get_menu(GntWindow *window)
    {
    + GntWindowPrivate *priv = gnt_window_get_instance_private(window);
    +
    g_return_val_if_fail(GNT_IS_WINDOW(window), NULL);
    - return window->menu;
    + return priv->menu;
    }
    const char * gnt_window_get_accel_item(GntWindow *window, const char *key)
    --- a/gntwindow.h Sat Apr 06 06:05:21 2019 -0400
    +++ b/gntwindow.h Sat Apr 06 06:13:55 2019 -0400
    @@ -36,14 +36,6 @@
    #include "gntmenu.h"
    #define GNT_TYPE_WINDOW (gnt_window_get_type())
    -#define GNT_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GNT_TYPE_WINDOW, GntWindow))
    -#define GNT_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GNT_TYPE_WINDOW, GntWindowClass))
    -#define GNT_IS_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GNT_TYPE_WINDOW))
    -#define GNT_IS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), GNT_TYPE_WINDOW))
    -#define GNT_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GNT_TYPE_WINDOW, GntWindowClass))
    -
    -typedef struct _GntWindow GntWindow;
    -typedef struct _GntWindowClass GntWindowClass;
    typedef enum
    {
    @@ -51,12 +43,6 @@
    GNT_WINDOW_MAXIMIZE_Y = 1 << 1,
    } GntWindowFlags;
    -struct _GntWindow
    -{
    - GntBox parent;
    - GntMenu *menu;
    -};
    -
    struct _GntWindowClass
    {
    GntBoxClass parent;
    @@ -75,7 +61,7 @@
    *
    * Returns: GType for GntWindow.
    */
    -GType gnt_window_get_type(void);
    +G_DECLARE_DERIVABLE_TYPE(GntWindow, gnt_window, GNT, WINDOW, GntBox)
    #define gnt_vwindow_new(homo) gnt_window_box_new(homo, TRUE)
    #define gnt_hwindow_new(homo) gnt_window_box_new(homo, FALSE)