ocarina: Don't assume scrolled windows for footer pages
This made the footer too big, in my opinion. I have some other ideas for how to fix it, though. Signed-off-by: Bryan Schumaker <bjschuma@gmail.com>
This commit is contained in:
parent
81da1743a5
commit
06e613d901
|
@ -4,24 +4,13 @@
|
|||
|
||||
static GtkWidget *footer;
|
||||
|
||||
static void add_page(string text, GtkWidget *page, bool scroll)
|
||||
static void add_page(string text, GtkWidget *page)
|
||||
{
|
||||
GtkWidget *label = gtk_label_new(text.c_str());
|
||||
GtkWidget *window;
|
||||
|
||||
if (scroll == true) {
|
||||
window = gtk_scrolled_window_new(NULL, NULL);
|
||||
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(window),
|
||||
GTK_POLICY_AUTOMATIC,
|
||||
GTK_POLICY_AUTOMATIC);
|
||||
gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(window), page);
|
||||
gtk_widget_show(window);
|
||||
} else
|
||||
window = page;
|
||||
|
||||
gtk_notebook_append_page(GTK_NOTEBOOK(footer), window, label);
|
||||
gtk_notebook_append_page(GTK_NOTEBOOK(footer), page, label);
|
||||
gtk_notebook_set_tab_label_packing(GTK_NOTEBOOK(footer),
|
||||
window, TRUE, TRUE, GTK_PACK_START);
|
||||
page, TRUE, TRUE, GTK_PACK_START);
|
||||
|
||||
gtk_widget_show(label);
|
||||
}
|
||||
|
@ -34,9 +23,9 @@ namespace ocarina
|
|||
footer = gtk_notebook_new();
|
||||
gtk_notebook_set_tab_pos(GTK_NOTEBOOK(footer), GTK_POS_TOP);
|
||||
|
||||
add_page("Now Playing", now_playing_page(), false);
|
||||
add_page("Library Settings", library_page(), true);
|
||||
add_page("General Settings", general_page(), true);
|
||||
add_page("Now Playing", now_playing_page());
|
||||
add_page("Library Settings", library_page());
|
||||
add_page("General Settings", general_page());
|
||||
|
||||
gtk_widget_show(footer);
|
||||
return footer;
|
||||
|
|
|
@ -1,15 +1,55 @@
|
|||
// Copyright (c) 2012 Bryan Schumaker
|
||||
#include <ocarina/ocarina.h>
|
||||
#include <ocarina/chooser.h>
|
||||
#include <ocarina/button.h>
|
||||
#include <ocarina/body.h>
|
||||
|
||||
static void on_click_add(GtkWidget *b, GdkEvent *e, gpointer d)
|
||||
{
|
||||
string dir = ocarina::choose_dir();
|
||||
if (dir != "") {
|
||||
println("Scanning dir: " + dir);
|
||||
}
|
||||
}
|
||||
|
||||
static void on_click_update(GtkWidget *b, GdkEvent *e, gpointer d)
|
||||
{
|
||||
println("Update button clicked");
|
||||
}
|
||||
|
||||
static GtkWidget *button_row()
|
||||
{
|
||||
GtkWidget *button_row = gtk_hbox_new(FALSE, 0);
|
||||
GtkWidget *add_button = make_text_button(GTK_STOCK_ADD,
|
||||
"Add Library Path",
|
||||
on_click_add,
|
||||
true);
|
||||
GtkWidget *update_button = make_text_button(GTK_STOCK_REFRESH,
|
||||
"Update Library Paths",
|
||||
on_click_update,
|
||||
true);
|
||||
gtk_box_pack_end(GTK_BOX(button_row), add_button, FALSE, FALSE, 0);
|
||||
gtk_box_pack_end(GTK_BOX(button_row), update_button, FALSE, FALSE, 0);
|
||||
return button_row;
|
||||
}
|
||||
|
||||
namespace ocarina
|
||||
{
|
||||
|
||||
GtkWidget *body::library_page()
|
||||
{
|
||||
GtkWidget *label = gtk_label_new("Future library page");
|
||||
gtk_widget_show(label);
|
||||
return label;
|
||||
GtkWidget *box = gtk_vbox_new(FALSE, 0);
|
||||
/*GtkWidget *window = gtk_scrolled_window_new(NULL, NULL);
|
||||
|
||||
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(window),
|
||||
GTK_POLICY_AUTOMATIC,
|
||||
GTK_POLICY_AUTOMATIC);
|
||||
|
||||
gtk_box_pack_start(GTK_BOX(box), window, FALSE, FALSE, 0);*/
|
||||
gtk_box_pack_start(GTK_BOX(box), button_row(), FALSE, FALSE, 0);
|
||||
|
||||
gtk_widget_show_all(box);
|
||||
return box;
|
||||
}
|
||||
|
||||
}; /* Namespace: ocarina */
|
||||
|
|
Loading…
Reference in New Issue