mp3splt-gtk
widgets_helper.h
1 /**********************************************************
2  *
3  * mp3splt-gtk -- utility based on mp3splt,
4  * for mp3/ogg splitting without decoding
5  *
6  * Copyright: (C) 2005-2013 Alexandru Munteanu
7  * Contact: m@ioalex.net
8  *
9  * http://mp3splt.sourceforge.net/
10  *
11  *********************************************************/
12 
13 /**********************************************************
14  *
15  * This program is free software; you can redistribute it and/or
16  * modify it under the terms of the GNU General Public License
17  * as published by the Free Software Foundation; either version 2
18  * of the License, or (at your option) any later version.
19  *
20  * This program is distributed in the hope that it will be useful,
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23  * GNU General Public License for more details.
24  *
25  * You should have received a copy of the GNU General Public License
26  * along with this program; if not, write to the Free Software
27  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
28  * USA.
29  *
30  *********************************************************/
31 
32 #ifndef WIDGETS_HELPER_H
33 
34 #define WIDGETS_HELPER_H
35 
36 #include "ui_manager.h"
37 
38 GtkWidget *wh_set_title_and_get_vbox(GtkWidget *widget, const gchar *title);
39 
40 void wh_put_in_hbox_and_attach_to_vbox(GtkWidget *widget, GtkWidget *vbox, gint vertical_margin);
41 GtkWidget *wh_put_in_new_hbox_with_margin_level(GtkWidget *widget, gint margin_level);
42 void wh_put_in_hbox_and_attach_to_vbox_with_bottom_margin(GtkWidget *widget, GtkWidget *vbox,
43  gint vertical_margin, gint bottom_margin);
44 
45 GtkWidget *wh_new_table();
46 void wh_add_in_table(GtkWidget *table, GtkWidget *widget);
47 void wh_add_in_table_with_label(GtkWidget *table, const gchar *label_text,
48  GtkWidget *widget);
49 void wh_add_in_table_with_label_expand(GtkWidget *table, const gchar *label_text,
50  GtkWidget *widget);
51 
52 GtkWidget *wh_new_entry(gpointer callback, ui_state *ui);
53 
54 GtkWidget *wh_new_button(const gchar *button_label);
55 
56 void wh_get_widget_size(GtkWidget *widget, gint *width, gint *height);
57 
58 void wh_set_browser_directory_handler(ui_state *ui, GtkWidget* dialog);
59 
60 GtkWidget *wh_create_int_spinner_in_box(gchar *before_label, gchar *after_label,
61  gdouble initial_value,
62  gdouble minimum_value, gdouble maximum_value,
63  gdouble step_increment, gdouble page_increment,
64  gchar *after_newline_label,
65  void (*spinner_callback)(GtkWidget *spinner, ui_state *ui),
66  ui_state *ui,
67  GtkWidget *box);
68 
69 GtkWidget *wh_create_int_spinner_in_box_with_top_width(gchar *before_label, gchar *after_label,
70  gdouble initial_value,
71  gdouble minimum_value, gdouble maximum_value,
72  gdouble step_increment, gdouble page_increment,
73  gchar *after_newline_label,
74  void (*spinner_callback)(GtkWidget *spinner, ui_state *ui),
75  ui_state *ui,
76  GtkWidget *box, gint top_width);
77 
78 GtkWidget *wh_hbox_new();
79 GtkWidget *wh_vbox_new();
80 GtkWidget *wh_hscale_new(GtkAdjustment *adjustment);
81 GtkWidget *wh_hscale_new_with_range(gdouble min, gdouble max, gdouble step);
82 void wh_get_pointer(GdkEventMotion *event, gint *x, gint *y, GdkModifierType *state);
83 
84 GtkWidget *wh_create_scrolled_window();
85 
86 gboolean wh_container_has_child(GtkContainer *cont, GtkWidget *my_child);
87 
88 GtkWidget *wh_create_cool_button(gchar *stock_id, gchar *label_text,
89  gint toggle_or_not);
90 GtkWidget *wh_create_cool_label(gchar *stock_id, gchar *label_text);
91 
92 void wh_set_image_on_button(GtkButton *button, GtkWidget *image);
93 
94 GtkWidget *wh_create_window_with_close_button(gchar *title, gint width, gint height,
95  GtkWindowPosition position, GtkWindow *parent_window,
96  GtkWidget *main_area_widget, GtkWidget *bottom_widget, ...);
97 void wh_show_window(GtkWidget *window);
98 
99 #endif
100 
GtkWidget * wh_create_scrolled_window()
creates a scrolled window
gboolean wh_container_has_child(GtkContainer *container, GtkWidget *my_child)
Does this GtkContainer contain that object?
GtkWidget * wh_set_title_and_get_vbox(GtkWidget *widget, const gchar *title)
Generates a window portion containing a caption and a vbox.
GtkWidget * wh_create_cool_button(gchar *stock_id, gchar *label_text, gint toggle_or_not)
creates a cool button with image from stock