From 35afcaa18cfab42b1feb59534dca7d876f49dc28 Mon Sep 17 00:00:00 2001 From: Patrick McDermott Date: Wed, 20 Sep 2017 19:53:42 -0400 Subject: src/scrolled-window.[ch]: New files --- (limited to 'src') diff --git a/src/local.mk b/src/local.mk index ca2e0b0..a776c38 100644 --- a/src/local.mk +++ b/src/local.mk @@ -3,4 +3,5 @@ marquee_SOURCES += \ %reldir%/window.c \ %reldir%/tab.c \ %reldir%/tab-chrome.c \ - %reldir%/tab-body.c + %reldir%/tab-body.c \ + %reldir%/scrolled-window.c diff --git a/src/scrolled-window.c b/src/scrolled-window.c new file mode 100644 index 0000000..62d2770 --- /dev/null +++ b/src/scrolled-window.c @@ -0,0 +1,49 @@ +/* + * GtkScrolledWindow subclass with natural size propagation + * + * Copyright (C) 2017 Patrick McDermott + * + * This file is part of Marquee. + * + * Marquee 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 3 of the License, or + * (at your option) any later version. + * + * Marquee 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 Marquee. If not, see . + */ + +#include "src/scrolled-window.h" + +struct _MqScrolledWindow { + GtkScrolledWindow parent_instance; +}; + +struct _MqScrolledWindowClass { + GtkScrolledWindowClass parent_class; +}; + +G_DEFINE_TYPE(MqScrolledWindow, mq_scrolled_window, GTK_TYPE_SCROLLED_WINDOW) + +static void +mq_scrolled_window_init(MqScrolledWindow *scrolled_window) +{ +} + +static void +mq_scrolled_window_class_init(MqScrolledWindowClass *class) +{ +} + +MqScrolledWindow * +mq_scrolled_window_new(GtkAdjustment *hadjustment, GtkAdjustment *vadjustment) +{ + return g_object_new(MQ_TYPE_SCROLLED_WINDOW, + "hadjustment", hadjustment, "vadjustment", vadjustment, NULL); +} diff --git a/src/scrolled-window.h b/src/scrolled-window.h new file mode 100644 index 0000000..933b45a --- /dev/null +++ b/src/scrolled-window.h @@ -0,0 +1,55 @@ +/* + * GtkScrolledWindow subclass with natural size propagation + * + * Copyright (C) 2017 Patrick McDermott + * + * This file is part of Marquee. + * + * Marquee 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 3 of the License, or + * (at your option) any later version. + * + * Marquee 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 Marquee. If not, see . + */ + +#ifndef MQ_SCROLLED_WINDOW_H +#define MQ_SCROLLED_WINDOW_H + +#include + +G_BEGIN_DECLS + +#define MQ_TYPE_SCROLLED_WINDOW (mq_scrolled_window_get_type()) +#define MQ_SCROLLED_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), \ + MQ_TYPE_SCROLLED_WINDOW, \ + MqScrolledWindow)) +#define MQ_IS_SCROLLED_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ + MQ_TYPE_SCROLLED_WINDOW)) +#define MQ_SCROLLED_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), \ + MQ_TYPE_SCROLLED_WINDOW, \ + MqScrolledWindowClass)) +#define MQ_IS_SCROLLED_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), \ + MQ_TYPE_SCROLLED_WINDOW)) +#define MQ_SCROLLED_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), \ + MQ_TYPE_SCROLLED_WINDOW, \ + MqScrolledWindowClass)) + +typedef struct _MqScrolledWindow MqScrolledWindow; +typedef struct _MqScrolledWindowClass MqScrolledWindowClass; + +GType +mq_scrolled_window_get_type(void); + +MqScrolledWindow * +mq_scrolled_window_new(GtkAdjustment *hadjustment, GtkAdjustment *vadjustment); + +G_END_DECLS + +#endif -- cgit v0.9.1