summaryrefslogtreecommitdiff
path: root/gtk/gtkfixedlayout.h
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2019-03-26 16:50:13 +0000
committerEmmanuele Bassi <ebassi@gnome.org>2019-03-26 17:43:53 +0000
commit9a4c19349e19b73237f55ac2d2a02bce784ebd4c (patch)
treed2cfefe014b9c9b0da576c9fa8c087216a4b219f /gtk/gtkfixedlayout.h
parent3389ddf6fc8ce84daa3b652bbbae749fbf02faa1 (diff)
downloadgtk+-9a4c19349e19b73237f55ac2d2a02bce784ebd4c.tar.gz
Add GtkFixedLayout
A layout manager for fixed positioning.
Diffstat (limited to 'gtk/gtkfixedlayout.h')
-rw-r--r--gtk/gtkfixedlayout.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/gtk/gtkfixedlayout.h b/gtk/gtkfixedlayout.h
new file mode 100644
index 0000000000..8600091b19
--- /dev/null
+++ b/gtk/gtkfixedlayout.h
@@ -0,0 +1,50 @@
+/* gtkfixedlayout.h: Fixed positioning layout manager
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ *
+ * Copyright 2019 GNOME Foundation
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#include <gtk/gtklayoutmanager.h>
+
+G_BEGIN_DECLS
+
+#define GTK_TYPE_FIXED_LAYOUT (gtk_fixed_layout_get_type ())
+#define GTK_TYPE_FIXED_LAYOUT_CHILD (gtk_fixed_layout_child_get_type ())
+
+/* GtkFixedLayout */
+
+GDK_AVAILABLE_IN_ALL
+G_DECLARE_FINAL_TYPE (GtkFixedLayout, gtk_fixed_layout, GTK, FIXED_LAYOUT, GtkLayoutManager)
+
+GDK_AVAILABLE_IN_ALL
+GtkLayoutManager * gtk_fixed_layout_new (void);
+
+/* GtkFixedLayoutChild */
+
+GDK_AVAILABLE_IN_ALL
+G_DECLARE_FINAL_TYPE (GtkFixedLayoutChild, gtk_fixed_layout_child, GTK, FIXED_LAYOUT_CHILD, GtkLayoutChild)
+
+GDK_AVAILABLE_IN_ALL
+void gtk_fixed_layout_child_set_position (GtkFixedLayoutChild *child,
+ const graphene_point_t *position);
+GDK_AVAILABLE_IN_ALL
+void gtk_fixed_layout_child_get_position (GtkFixedLayoutChild *child,
+ graphene_point_t *position);
+
+G_END_DECLS