summaryrefslogtreecommitdiffstats
path: root/tdegtk/tdegtk-types.h
diff options
context:
space:
mode:
authorTimothy Pearson <[email protected]>2012-09-14 10:10:15 -0500
committerTimothy Pearson <[email protected]>2012-09-14 10:10:15 -0500
commit143c156ed8a46947ba6ddb912f2e7f2965f1908c (patch)
treec383e4af523e9294fb4c1f6b0fc8b2f2e6f50b29 /tdegtk/tdegtk-types.h
downloadgtk3-tqt-engine-143c156ed8a46947ba6ddb912f2e7f2965f1908c.tar.gz
gtk3-tqt-engine-143c156ed8a46947ba6ddb912f2e7f2965f1908c.zip
Initial import of renamed Unico engine, ready for hacking!
Diffstat (limited to 'tdegtk/tdegtk-types.h')
-rw-r--r--tdegtk/tdegtk-types.h133
1 files changed, 133 insertions, 0 deletions
diff --git a/tdegtk/tdegtk-types.h b/tdegtk/tdegtk-types.h
new file mode 100644
index 0000000..ba280d2
--- /dev/null
+++ b/tdegtk/tdegtk-types.h
@@ -0,0 +1,133 @@
+/* The TdeGtk Theming Engine for Gtk+.
+ * Copyright (C) 2011 Canonical Ltd
+ *
+ * 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, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * Authored by Andrea Cimitan <[email protected]>
+ *
+ */
+
+#ifndef TDEGTK_TYPES_H
+#define TDEGTK_TYPES_H
+
+#define DRAW_ARGS GtkThemingEngine *engine, \
+ cairo_t *cr, \
+ gdouble x, \
+ gdouble y, \
+ gdouble width, \
+ gdouble height
+
+G_BEGIN_DECLS
+
+typedef struct _GtkCssBorderCornerRadius GtkCssBorderCornerRadius;
+typedef struct _GtkCssBorderRadius GtkCssBorderRadius;
+
+struct _GtkCssBorderCornerRadius {
+ gdouble horizontal;
+ gdouble vertical;
+};
+
+struct _GtkCssBorderRadius {
+ GtkCssBorderCornerRadius top_left;
+ GtkCssBorderCornerRadius top_right;
+ GtkCssBorderCornerRadius bottom_right;
+ GtkCssBorderCornerRadius bottom_left;
+};
+
+enum {
+ SIDE_LEFT = 1,
+ SIDE_BOTTOM = 1 << 1,
+ SIDE_RIGHT = 1 << 2,
+ SIDE_TOP = 1 << 3,
+ SIDE_ALL = 0xF
+};
+
+typedef enum
+{
+ TDEGTK_STYLE_DEFAULT = 0,
+ TDEGTK_NUM_STYLES = 1
+} TdeGtkStyles;
+
+typedef struct _TdeGtkStyleFunctions TdeGtkStyleFunctions;
+
+struct _TdeGtkStyleFunctions
+{
+ void (*draw_activity) (DRAW_ARGS);
+
+ void (*draw_arrow) (GtkThemingEngine *engine,
+ cairo_t *cr,
+ gdouble angle,
+ gdouble x,
+ gdouble y,
+ gdouble size);
+
+ void (*draw_cell_background) (DRAW_ARGS,
+ GtkRegionFlags flags);
+
+ void (*draw_cell_frame) (DRAW_ARGS,
+ GtkRegionFlags flags);
+
+ void (*draw_check) (DRAW_ARGS);
+
+ void (*draw_common) (DRAW_ARGS);
+
+ void (*draw_common_background) (DRAW_ARGS);
+
+ void (*draw_common_frame) (DRAW_ARGS);
+
+ void (*draw_expander) (DRAW_ARGS);
+
+ void (*draw_extension) (DRAW_ARGS,
+ GtkPositionType gap_side);
+
+ void (*draw_focus) (DRAW_ARGS);
+
+ void (*draw_frame_gap) (DRAW_ARGS,
+ GtkPositionType gap_side,
+ gdouble xy0_gap,
+ gdouble xy1_gap);
+
+ void (*draw_grip) (DRAW_ARGS);
+
+ void (*draw_handle) (DRAW_ARGS);
+
+ void (*draw_line) (GtkThemingEngine *engine,
+ cairo_t *cr,
+ gdouble x0,
+ gdouble y0,
+ gdouble x1,
+ gdouble y1);
+
+ void (*draw_notebook) (DRAW_ARGS,
+ GtkPositionType gap_side,
+ gdouble xy0_gap,
+ gdouble xy1_gap);
+
+ void (*draw_radio) (DRAW_ARGS);
+
+ void (*draw_separator) (DRAW_ARGS);
+
+ void (*draw_slider) (DRAW_ARGS,
+ GtkOrientation orientation);
+
+ void (*draw_spinbutton_background) (DRAW_ARGS);
+
+ void (*draw_spinbutton_frame) (DRAW_ARGS);
+};
+
+G_END_DECLS
+
+#endif /* TDEGTK_TYPES_H */