diff options
| author | Mattias Andrée <m@maandree.se> | 2026-10-11 23:01:38 +0200 |
|---|---|---|
| committer | Mattias Andrée <m@maandree.se> | 2026-10-11 23:29:28 +0200 |
| commit | 94659550993f454e12e4bcb8cf93a5ff258bc08c (patch) | |
| tree | f8e1cfe9fbcdec6f09b6cc18c761684dc34505d2 /logical-scroll-pane.h | |
| parent | First commit (diff) | |
| download | gbild-94659550993f454e12e4bcb8cf93a5ff258bc08c.tar.gz gbild-94659550993f454e12e4bcb8cf93a5ff258bc08c.tar.bz2 gbild-94659550993f454e12e4bcb8cf93a5ff258bc08c.tar.xz | |
Second commit
Signed-off-by: Mattias Andrée <m@maandree.se>
Diffstat (limited to '')
| -rw-r--r-- | logical-scroll-pane.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/logical-scroll-pane.h b/logical-scroll-pane.h new file mode 100644 index 0000000..c38ca6a --- /dev/null +++ b/logical-scroll-pane.h @@ -0,0 +1,55 @@ +#include <gtk/gtk.h> + +#define LOGICAL_TYPE_SCROLL_PANE (logical_scroll_pane_get_type()) +#define LOGICAL_SCROLL_PANE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), LOGICAL_TYPE_SCROLL_PANE, LogicalScrollPane)) +#define LOGICAL_IS_SCROLL_PANE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), LOGICAL_TYPE_SCROLL_PANE)) + +typedef struct _LogicalScrollPane LogicalScrollPane; +typedef struct _LogicalScrollPaneClass LogicalScrollPaneClass; + +struct _LogicalScrollPane { + GtkBin parent_instance; + + GtkWidget *child; + GtkWidget *hscrollbar; + GtkWidget *vscrollbar; + + GtkAdjustment *hadjustment; + GtkAdjustment *vadjustment; + + int content_width; + int content_height; + int hscrollbar_visible; + int vscrollbar_visible; +}; + +struct _LogicalScrollPaneClass { + GtkBinClass parent_class; +}; + +PURE GType logical_scroll_pane_get_type(void); + +GtkWidget *logical_scroll_pane_new(void); + +void logical_scroll_pane_set_child(LogicalScrollPane *this, GtkWidget *child); +PURE GtkWidget *logical_scroll_pane_get_child(LogicalScrollPane *this); + +void logical_scroll_pane_set_content_size(LogicalScrollPane *this, int width, int height); + +void logical_scroll_pane_set_hscrollbar(LogicalScrollPane *this, GtkWidget *scrollbar); +void logical_scroll_pane_set_vscrollbar(LogicalScrollPane *this, GtkWidget *scrollbar); + +PURE GtkWidget *logical_scroll_pane_get_hscrollbar(LogicalScrollPane *this); +PURE GtkWidget *logical_scroll_pane_get_vscrollbar(LogicalScrollPane *this); + +void logical_scroll_pane_set_hscrollbar_visible(LogicalScrollPane *this, int visible); +void logical_scroll_pane_set_vscrollbar_visible(LogicalScrollPane *this, int visible); + +PURE int logical_scroll_pane_get_hscrollbar_visible(LogicalScrollPane *this); +PURE int logical_scroll_pane_get_vscrollbar_visible(LogicalScrollPane *this); + +void logical_scroll_pane_set_hadjustment(LogicalScrollPane *this, GtkAdjustment *adjustment); +void logical_scroll_pane_set_vadjustment(LogicalScrollPane *this, GtkAdjustment *adjustment); + +PURE GtkAdjustment *logical_scroll_pane_get_hadjustment(LogicalScrollPane *this); +PURE GtkAdjustment *logical_scroll_pane_get_vadjustment(LogicalScrollPane *this); |
