/* LIBPIKA - The PIKA Library * Copyright (C) 1995-1997 Peter Mattis and Spencer Kimball * * pikapageselector.h * Copyright (C) 2005 Michael Natterer * * 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 3 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 * . */ #if !defined (__PIKA_WIDGETS_H_INSIDE__) && !defined (PIKA_WIDGETS_COMPILATION) #error "Only can be included directly." #endif #ifndef __PIKA_PAGE_SELECTOR_H__ #define __PIKA_PAGE_SELECTOR_H__ G_BEGIN_DECLS #define PIKA_TYPE_PAGE_SELECTOR (pika_page_selector_get_type ()) #define PIKA_PAGE_SELECTOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PIKA_TYPE_PAGE_SELECTOR, PikaPageSelector)) #define PIKA_PAGE_SELECTOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PIKA_TYPE_PAGE_SELECTOR, PikaPageSelectorClass)) #define PIKA_IS_PAGE_SELECTOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PIKA_TYPE_PAGE_SELECTOR)) #define PIKA_IS_PAGE_SELECTOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PIKA_TYPE_PAGE_SELECTOR)) #define PIKA_PAGE_SELECTOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PIKA_TYPE_PAGE_SELECTOR, PikaPageSelectorClass)) typedef struct _PikaPageSelectorPrivate PikaPageSelectorPrivate; typedef struct _PikaPageSelectorClass PikaPageSelectorClass; struct _PikaPageSelector { GtkBox parent_instance; PikaPageSelectorPrivate *priv; }; struct _PikaPageSelectorClass { GtkBoxClass parent_class; void (* selection_changed) (PikaPageSelector *selector); void (* activate) (PikaPageSelector *selector); /* Padding for future expansion */ void (* _pika_reserved1) (void); void (* _pika_reserved2) (void); void (* _pika_reserved3) (void); void (* _pika_reserved4) (void); void (* _pika_reserved5) (void); void (* _pika_reserved6) (void); void (* _pika_reserved7) (void); void (* _pika_reserved8) (void); }; GType pika_page_selector_get_type (void) G_GNUC_CONST; GtkWidget * pika_page_selector_new (void); void pika_page_selector_set_n_pages (PikaPageSelector *selector, gint n_pages); gint pika_page_selector_get_n_pages (PikaPageSelector *selector); void pika_page_selector_set_target (PikaPageSelector *selector, PikaPageSelectorTarget target); PikaPageSelectorTarget pika_page_selector_get_target (PikaPageSelector *selector); void pika_page_selector_set_page_thumbnail (PikaPageSelector *selector, gint page_no, GdkPixbuf *thumbnail); GdkPixbuf * pika_page_selector_get_page_thumbnail (PikaPageSelector *selector, gint page_no); void pika_page_selector_set_page_label (PikaPageSelector *selector, gint page_no, const gchar *label); gchar * pika_page_selector_get_page_label (PikaPageSelector *selector, gint page_no); void pika_page_selector_select_all (PikaPageSelector *selector); void pika_page_selector_unselect_all (PikaPageSelector *selector); void pika_page_selector_select_page (PikaPageSelector *selector, gint page_no); void pika_page_selector_unselect_page (PikaPageSelector *selector, gint page_no); gboolean pika_page_selector_page_is_selected (PikaPageSelector *selector, gint page_no); gint * pika_page_selector_get_selected_pages (PikaPageSelector *selector, gint *n_selected_pages); void pika_page_selector_select_range (PikaPageSelector *selector, const gchar *range); gchar * pika_page_selector_get_selected_range (PikaPageSelector *selector); G_END_DECLS #endif /* __PIKA_PAGE_SELECTOR_H__ */