Code cleanup

No longer display "Location" in embedded mode
This commit is contained in:
Pierre Pronchery 2009-03-02 00:26:51 +00:00
parent f33d63648c
commit 344a8137d6
3 changed files with 38 additions and 21 deletions

View File

@ -1,5 +1,5 @@
/* $Id$ */ /* $Id$ */
/* Copyright (c) 2008 Pierre Pronchery <khorben@defora.org> */ /* Copyright (c) 2009 Pierre Pronchery <khorben@defora.org> */
/* This file is part of DeforaOS Desktop Browser */ /* This file is part of DeforaOS Desktop Browser */
/* This program is free software: you can redistribute it and/or modify /* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -280,10 +280,12 @@ Browser * browser_new(char const * directory)
gtk_toolbar_set_icon_size(GTK_TOOLBAR(toolbar), gtk_toolbar_set_icon_size(GTK_TOOLBAR(toolbar),
GTK_ICON_SIZE_SMALL_TOOLBAR); GTK_ICON_SIZE_SMALL_TOOLBAR);
gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS); gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS);
#ifndef FOR_EMBEDDED
widget = gtk_label_new(" Location: "); widget = gtk_label_new(" Location: ");
toolitem = gtk_tool_item_new(); toolitem = gtk_tool_item_new();
gtk_container_add(GTK_CONTAINER(toolitem), widget); gtk_container_add(GTK_CONTAINER(toolitem), widget);
gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);
#endif
browser->tb_path = gtk_combo_box_entry_new_text(); browser->tb_path = gtk_combo_box_entry_new_text();
widget = gtk_bin_get_child(GTK_BIN(browser->tb_path)); widget = gtk_bin_get_child(GTK_BIN(browser->tb_path));
g_signal_connect(G_OBJECT(widget), "activate", G_CALLBACK( g_signal_connect(G_OBJECT(widget), "activate", G_CALLBACK(
@ -317,8 +319,10 @@ Browser * browser_new(char const * directory)
browser_set_view(browser, BV_DETAILS); browser_set_view(browser, BV_DETAILS);
gtk_widget_grab_focus(browser->detailview); gtk_widget_grab_focus(browser->detailview);
#endif #endif
browser_set_location(browser, directory != NULL ? directory if(directory != NULL)
: g_get_home_dir()); browser_set_location(browser, directory);
else
browser_go_home(browser);
/* preferences */ /* preferences */
browser->pr_window = NULL; browser->pr_window = NULL;
@ -465,15 +469,14 @@ void browser_delete(Browser * browser)
/* private */ /* private */
static void _browser_set_status(Browser * browser, char const * status) static void _browser_set_status(Browser * browser, char const * status)
{ {
if(browser->statusbar_id) GtkStatusbar * sb;
gtk_statusbar_remove(GTK_STATUSBAR(browser->statusbar),
gtk_statusbar_get_context_id( sb = GTK_STATUSBAR(browser->statusbar);
GTK_STATUSBAR(browser->statusbar), ""), if(browser->statusbar_id != 0)
gtk_statusbar_remove(sb, gtk_statusbar_get_context_id(sb, ""),
browser->statusbar_id); browser->statusbar_id);
browser->statusbar_id = gtk_statusbar_push(GTK_STATUSBAR( browser->statusbar_id = gtk_statusbar_push(sb,
browser->statusbar), gtk_statusbar_get_context_id(sb, ""), status);
gtk_statusbar_get_context_id(GTK_STATUSBAR(
browser->statusbar), ""), status);
} }
@ -585,6 +588,17 @@ static int _config_save_boolean(Config * config, char const * variable,
} }
/* browser_go_home */
void browser_go_home(Browser * browser)
{
char const * home;
if((home = getenv("HOME")) == NULL)
home = g_get_home_dir();
browser_set_location(browser, home != NULL ? home : "/");
}
/* browser_open_with */ /* browser_open_with */
void browser_open_with(Browser * browser, char const * path) void browser_open_with(Browser * browser, char const * path)
{ {
@ -1557,8 +1571,8 @@ static void _view_thumbnails(Browser * browser)
renderer, "pixbuf", BR_COL_PIXBUF_96, NULL); renderer, "pixbuf", BR_COL_PIXBUF_96, NULL);
renderer = gtk_cell_renderer_text_new(); renderer = gtk_cell_renderer_text_new();
g_object_set(renderer, "editable", TRUE, "xalign", 0.5, g_object_set(renderer, "editable", TRUE, "xalign", 0.5,
"wrap-mode", PANGO_WRAP_WORD_CHAR, "wrap-width", 112, "wrap-mode", PANGO_WRAP_WORD_CHAR, "wrap-width",
NULL); BROWSER_THUMBNAIL_WIDTH, NULL);
g_signal_connect(G_OBJECT(renderer), "edited", G_CALLBACK( g_signal_connect(G_OBJECT(renderer), "edited", G_CALLBACK(
on_filename_edited), browser); on_filename_edited), browser);
gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(browser->iconview), renderer, gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(browser->iconview), renderer,
@ -1572,7 +1586,8 @@ static void _view_thumbnails(Browser * browser)
gtk_icon_view_set_text_column(GTK_ICON_VIEW(browser->iconview), gtk_icon_view_set_text_column(GTK_ICON_VIEW(browser->iconview),
BR_COL_DISPLAY_NAME); BR_COL_DISPLAY_NAME);
#endif /* !GTK_CHECK_VERSION(2, 8, 0) */ #endif /* !GTK_CHECK_VERSION(2, 8, 0) */
gtk_icon_view_set_item_width(GTK_ICON_VIEW(browser->iconview), 112); gtk_icon_view_set_item_width(GTK_ICON_VIEW(browser->iconview),
BROWSER_THUMBNAIL_WIDTH);
gtk_icon_view_set_orientation(GTK_ICON_VIEW(browser->iconview), gtk_icon_view_set_orientation(GTK_ICON_VIEW(browser->iconview),
GTK_ORIENTATION_VERTICAL); GTK_ORIENTATION_VERTICAL);
gtk_widget_show(browser->iconview); gtk_widget_show(browser->iconview);
@ -1580,6 +1595,7 @@ static void _view_thumbnails(Browser * browser)
#endif #endif
/* browser_unselect_all */
void browser_unselect_all(Browser * browser) void browser_unselect_all(Browser * browser)
{ {
GtkTreeSelection * sel; GtkTreeSelection * sel;

View File

@ -26,6 +26,7 @@
/* Browser */ /* Browser */
/* defaults */ /* defaults */
# define BROWSER_CONFIG_FILE ".browser" # define BROWSER_CONFIG_FILE ".browser"
# define BROWSER_THUMBNAIL_WIDTH 112
/* types */ /* types */
@ -152,6 +153,8 @@ int browser_error(Browser * browser, char const * message, int ret);
int browser_config_load(Browser * browser); int browser_config_load(Browser * browser);
int browser_config_save(Browser * browser); int browser_config_save(Browser * browser);
void browser_go_home(Browser * browser);
void browser_open_with(Browser * browser, char const * path); void browser_open_with(Browser * browser, char const * path);
void browser_refresh(Browser * browser); void browser_refresh(Browser * browser);

View File

@ -339,9 +339,7 @@ static void _preferences_on_ok(GtkWidget * widget, gpointer data)
/* view menu */ /* view menu */
void on_view_home(GtkWidget * widget, gpointer data) void on_view_home(GtkWidget * widget, gpointer data)
{ {
Browser * browser = data; on_home(widget, data);
browser_set_location(browser, g_get_home_dir());
} }
@ -614,7 +612,7 @@ void on_home(GtkWidget * widget, gpointer data)
{ {
Browser * browser = data; Browser * browser = data;
browser_set_location(browser, g_get_home_dir()); browser_go_home(browser);
} }
@ -663,7 +661,7 @@ void on_view_as(GtkWidget * widget, gpointer data)
== GTK_ORIENTATION_HORIZONTAL) == GTK_ORIENTATION_HORIZONTAL)
browser_set_view(browser, BV_THUMBNAILS); browser_set_view(browser, BV_THUMBNAILS);
else if(gtk_icon_view_get_item_width(GTK_ICON_VIEW(browser->iconview)) else if(gtk_icon_view_get_item_width(GTK_ICON_VIEW(browser->iconview))
!= 112) != BROWSER_THUMBNAIL_WIDTH)
browser_set_view(browser, BV_LIST); browser_set_view(browser, BV_LIST);
else else
browser_set_view(browser, BV_DETAILS); browser_set_view(browser, BV_DETAILS);
@ -828,7 +826,7 @@ void on_view_drag_data_received(GtkWidget * widget, GdkDragContext * context,
if(_common_drag_data_received(context, seldata, dest) != 0) if(_common_drag_data_received(context, seldata, dest) != 0)
browser_error(browser, "fork", 0); browser_error(browser, "fork", 0);
} }
#endif #endif /* GTK_CHECK_VERSION(2, 8, 0) */
/* on_view_popup */ /* on_view_popup */