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$ */
/* 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 program is free software: you can redistribute it and/or modify
* 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_ICON_SIZE_SMALL_TOOLBAR);
gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS);
#ifndef FOR_EMBEDDED
widget = gtk_label_new(" Location: ");
toolitem = gtk_tool_item_new();
gtk_container_add(GTK_CONTAINER(toolitem), widget);
gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);
#endif
browser->tb_path = gtk_combo_box_entry_new_text();
widget = gtk_bin_get_child(GTK_BIN(browser->tb_path));
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);
gtk_widget_grab_focus(browser->detailview);
#endif
browser_set_location(browser, directory != NULL ? directory
: g_get_home_dir());
if(directory != NULL)
browser_set_location(browser, directory);
else
browser_go_home(browser);
/* preferences */
browser->pr_window = NULL;
@ -465,15 +469,14 @@ void browser_delete(Browser * browser)
/* private */
static void _browser_set_status(Browser * browser, char const * status)
{
if(browser->statusbar_id)
gtk_statusbar_remove(GTK_STATUSBAR(browser->statusbar),
gtk_statusbar_get_context_id(
GTK_STATUSBAR(browser->statusbar), ""),
GtkStatusbar * sb;
sb = 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 = gtk_statusbar_push(GTK_STATUSBAR(
browser->statusbar),
gtk_statusbar_get_context_id(GTK_STATUSBAR(
browser->statusbar), ""), status);
browser->statusbar_id = gtk_statusbar_push(sb,
gtk_statusbar_get_context_id(sb, ""), 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 */
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 = gtk_cell_renderer_text_new();
g_object_set(renderer, "editable", TRUE, "xalign", 0.5,
"wrap-mode", PANGO_WRAP_WORD_CHAR, "wrap-width", 112,
NULL);
"wrap-mode", PANGO_WRAP_WORD_CHAR, "wrap-width",
BROWSER_THUMBNAIL_WIDTH, NULL);
g_signal_connect(G_OBJECT(renderer), "edited", G_CALLBACK(
on_filename_edited), browser);
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),
BR_COL_DISPLAY_NAME);
#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_ORIENTATION_VERTICAL);
gtk_widget_show(browser->iconview);
@ -1580,6 +1595,7 @@ static void _view_thumbnails(Browser * browser)
#endif
/* browser_unselect_all */
void browser_unselect_all(Browser * browser)
{
GtkTreeSelection * sel;

View File

@ -25,7 +25,8 @@
/* Browser */
/* defaults */
# define BROWSER_CONFIG_FILE ".browser"
# define BROWSER_CONFIG_FILE ".browser"
# define BROWSER_THUMBNAIL_WIDTH 112
/* types */
@ -152,6 +153,8 @@ int browser_error(Browser * browser, char const * message, int ret);
int browser_config_load(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_refresh(Browser * browser);

View File

@ -339,9 +339,7 @@ static void _preferences_on_ok(GtkWidget * widget, gpointer data)
/* view menu */
void on_view_home(GtkWidget * widget, gpointer data)
{
Browser * browser = data;
browser_set_location(browser, g_get_home_dir());
on_home(widget, data);
}
@ -614,7 +612,7 @@ void on_home(GtkWidget * widget, gpointer 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)
browser_set_view(browser, BV_THUMBNAILS);
else if(gtk_icon_view_get_item_width(GTK_ICON_VIEW(browser->iconview))
!= 112)
!= BROWSER_THUMBNAIL_WIDTH)
browser_set_view(browser, BV_LIST);
else
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)
browser_error(browser, "fork", 0);
}
#endif
#endif /* GTK_CHECK_VERSION(2, 8, 0) */
/* on_view_popup */