[libwnck/wip/muktupavels/wnck-handle: 36/44] add WnckHandle object




commit c7d036afc5d4cc650c44018610d5a7947748189b
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date:   Mon Aug 19 16:12:32 2019 +0300

    add WnckHandle object

 libwnck/libwnck.h             |  2 ++
 libwnck/meson.build           |  1 +
 libwnck/wnck-handle-private.h |  3 +--
 libwnck/wnck-handle.c         | 10 +++++++---
 libwnck/wnck-handle.h         | 34 ++++++++++++++++++++++++++++++++++
 5 files changed, 45 insertions(+), 5 deletions(-)
---
diff --git a/libwnck/libwnck.h b/libwnck/libwnck.h
index 20f89f6..7b1860a 100644
--- a/libwnck/libwnck.h
+++ b/libwnck/libwnck.h
@@ -23,6 +23,8 @@
 
 #define __LIBWNCK_H_INSIDE__
 
+#include <libwnck/wnck-handle.h>
+
 #include <libwnck/window.h>
 #include <libwnck/application.h>
 #include <libwnck/class-group.h>
diff --git a/libwnck/meson.build b/libwnck/meson.build
index eef9de5..dd11e98 100644
--- a/libwnck/meson.build
+++ b/libwnck/meson.build
@@ -39,6 +39,7 @@ headers = [
   'util.h',
   'window.h',
   'window-action-menu.h',
+  'wnck-handle.h',
   'workspace.h',
 ]
 
diff --git a/libwnck/wnck-handle-private.h b/libwnck/wnck-handle-private.h
index 156821a..fc3b0cc 100644
--- a/libwnck/wnck-handle-private.h
+++ b/libwnck/wnck-handle-private.h
@@ -19,11 +19,10 @@
 #define WNCK_HANDLE_PRIVATE_H
 
 #include "util.h"
+#include "wnck-handle.h"
 
 G_BEGIN_DECLS
 
-typedef struct _WnckHandle WnckHandle;
-
 WnckHandle     *_wnck_handle_new             (WnckClientType  client_type);
 
 WnckClientType  _wnck_handle_get_client_type (WnckHandle     *self);
diff --git a/libwnck/wnck-handle.c b/libwnck/wnck-handle.c
index c49a640..3b6bd0c 100644
--- a/libwnck/wnck-handle.c
+++ b/libwnck/wnck-handle.c
@@ -15,14 +15,18 @@
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
+/**
+ * SECTION: wnck-handle
+ * @short_description: an object representing a handle.
+ *
+ * This is the main entry point into the libwnck library.
+ */
+
 #include "config.h"
 #include "wnck-handle-private.h"
 
 #include "wnck-enum-types.h"
 
-#define WNCK_TYPE_HANDLE (wnck_handle_get_type ())
-G_DECLARE_FINAL_TYPE (WnckHandle, wnck_handle, WNCK, HANDLE, GObject)
-
 struct _WnckHandle
 {
   GObject        parent;
diff --git a/libwnck/wnck-handle.h b/libwnck/wnck-handle.h
new file mode 100644
index 0000000..12362d8
--- /dev/null
+++ b/libwnck/wnck-handle.h
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2019 Alberts Muktupāvels
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#if !defined (__LIBWNCK_H_INSIDE__) && !defined (WNCK_COMPILATION)
+#error "Only <libwnck/libwnck.h> can be included directly."
+#endif
+
+#ifndef WNCK_HANDLE_H
+#define WNCK_HANDLE_H
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+#define WNCK_TYPE_HANDLE (wnck_handle_get_type ())
+G_DECLARE_FINAL_TYPE (WnckHandle, wnck_handle, WNCK, HANDLE, GObject)
+
+G_END_DECLS
+
+#endif


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]