diff options
author | Carlos Soriano <csoriano@gnome.org> | 2015-05-06 23:07:17 +0200 |
---|---|---|
committer | Carlos Soriano <csoriano@gnome.org> | 2015-06-16 16:19:37 +0200 |
commit | fbbad5deecb635af34a890a540e8e272b95c4d9b (patch) | |
tree | 90289307eaecc1d91065d3088a5c12c05619bcc1 /gtk/gtksidebarrowprivate.h | |
parent | d881b1534914398046f7e5237321f978ff073441 (diff) | |
download | gtk+-fbbad5deecb635af34a890a540e8e272b95c4d9b.tar.gz |
gtkplacesidebar: use GtkListBox
We were using GTkTreeView in a simple list. Also, as we know,
GtkCellRenderers are not the best way to theme and manipulate
widgets.
So instead use a GtkListBox to modernize the GtkPlacesSidebar,
and in the way clean up some parts of the code (like headings)
which were not used anymore.
Also we don't use a model anymore, since the data is simple
enough to manage it in a subclass of the row itself.
Diffstat (limited to 'gtk/gtksidebarrowprivate.h')
-rw-r--r-- | gtk/gtksidebarrowprivate.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/gtk/gtksidebarrowprivate.h b/gtk/gtksidebarrowprivate.h new file mode 100644 index 0000000000..b513184e7a --- /dev/null +++ b/gtk/gtksidebarrowprivate.h @@ -0,0 +1,53 @@ +/* gtksidebarrowprivate.h + * + * Copyright (C) 2015 Carlos Soriano <csoriano@gnome.org> + * + * This file 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 3 of the + * License, or (at your option) any later version. + * + * This file 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 General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +#ifndef GTK_SIDEBAR_ROW_PRIVATE_H +#define GTK_SIDEBAR_ROW_PRIVATE_H + +#include <glib.h> +#include "gtklistbox.h" + +G_BEGIN_DECLS + +#define GTK_TYPE_SIDEBAR_ROW (gtk_sidebar_row_get_type()) +#define GTK_SIDEBAR_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_SIDEBAR_ROW, GtkSidebarRow)) +#define GTK_SIDEBAR_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_SIDEBAR_ROW, GtkSidebarRowClass)) +#define GTK_IS_SIDEBAR_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_SIDEBAR_ROW)) +#define GTK_IS_SIDEBAR_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_SIDEBAR_ROW)) +#define GTK_SIDEBAR_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_SIDEBAR_ROW, GtkSidebarRowClass)) + +typedef struct _GtkSidebarRow GtkSidebarRow; +typedef struct _GtkSidebarRowClass GtkSidebarRowClass; + +struct _GtkSidebarRowClass +{ + GtkListBoxRowClass parent; +}; + +GType gtk_sidebar_row_get_type (void) G_GNUC_CONST; + +GtkSidebarRow *gtk_sidebar_row_new (void); +GtkSidebarRow *gtk_sidebar_row_clone (GtkSidebarRow *self); + +/* Use these methods instead of gtk_widget_hide/show to use an animation */ +void gtk_sidebar_row_hide (GtkSidebarRow *self, + gboolean inmediate); +void gtk_sidebar_row_reveal (GtkSidebarRow *self); + +G_END_DECLS + +#endif /* GTK_SIDEBAR_ROW_PRIVATE_H */ |