Changed the layout to be packed regularly (doesn't wrap text anymore though)
This commit is contained in:
parent
758c8e2774
commit
e5a1a200ed
|
@ -327,7 +327,8 @@ Browser * browser_new(char const * directory)
|
|||
browser->detailview = NULL;
|
||||
#if GTK_CHECK_VERSION(2, 6, 0)
|
||||
browser->iconview = NULL;
|
||||
browser_set_view(browser, browser->prefs.default_view);
|
||||
browser->iconview_as = browser->prefs.default_view;
|
||||
browser_set_view(browser, browser->iconview_as);
|
||||
if(browser->iconview != NULL)
|
||||
gtk_widget_grab_focus(browser->iconview);
|
||||
#else
|
||||
|
@ -1322,12 +1323,14 @@ static void _view_thumbnails(Browser * browser);
|
|||
|
||||
void browser_set_view(Browser * browser, BrowserView view)
|
||||
{
|
||||
#if GTK_CHECK_VERSION(2, 6, 0)
|
||||
printf("%d => %d\n", browser->iconview_as, view);
|
||||
browser->iconview_as = view;
|
||||
switch(view)
|
||||
{
|
||||
case BV_DETAILS:
|
||||
_view_details(browser);
|
||||
break;
|
||||
#if GTK_CHECK_VERSION(2, 6, 0)
|
||||
case BV_ICONS:
|
||||
_view_icons(browser);
|
||||
break;
|
||||
|
@ -1337,8 +1340,10 @@ void browser_set_view(Browser * browser, BrowserView view)
|
|||
case BV_THUMBNAILS:
|
||||
_view_thumbnails(browser);
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
#else
|
||||
_view_details(browser);
|
||||
#endif
|
||||
}
|
||||
|
||||
static void _details_column_text(GtkTreeView * view, GtkCellRenderer * renderer,
|
||||
|
@ -1439,13 +1444,14 @@ static void _view_icons(Browser * browser)
|
|||
gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(browser->iconview),
|
||||
renderer, "pixbuf", BR_COL_PIXBUF_48, NULL);
|
||||
renderer = gtk_cell_renderer_text_new();
|
||||
g_object_set(renderer, "editable", TRUE, "xalign", 0.5,
|
||||
"wrap-mode", PANGO_WRAP_WORD_CHAR, "wrap-width", 96,
|
||||
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,
|
||||
TRUE);
|
||||
g_object_set(renderer, "editable", TRUE,
|
||||
"ellipsize", PANGO_ELLIPSIZE_END,
|
||||
"width-chars", 16, "wrap-mode", PANGO_WRAP_WORD_CHAR,
|
||||
"xalign", 0.5, NULL);
|
||||
g_signal_connect(G_OBJECT(renderer), "edited", G_CALLBACK(
|
||||
on_filename_edited), browser);
|
||||
gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(browser->iconview),
|
||||
renderer, "text", BR_COL_DISPLAY_NAME, NULL);
|
||||
#else
|
||||
|
@ -1454,8 +1460,9 @@ static void _view_icons(Browser * browser)
|
|||
BR_COL_PIXBUF_48);
|
||||
gtk_icon_view_set_text_column(GTK_ICON_VIEW(browser->iconview),
|
||||
BR_COL_DISPLAY_NAME);
|
||||
gtk_icon_view_set_item_width(GTK_ICON_VIEW(browser->iconview),
|
||||
BROWSER_ICON_WRAP_WIDTH);
|
||||
#endif /* !GTK_CHECK_VERSION(2, 8, 0) */
|
||||
gtk_icon_view_set_item_width(GTK_ICON_VIEW(browser->iconview), 96);
|
||||
gtk_icon_view_set_orientation(GTK_ICON_VIEW(browser->iconview),
|
||||
GTK_ORIENTATION_VERTICAL);
|
||||
gtk_widget_show(browser->iconview);
|
||||
|
@ -1501,10 +1508,6 @@ static void _view_icon_view(Browser * browser)
|
|||
g_list_free(sel);
|
||||
|
||||
}
|
||||
gtk_icon_view_set_margin(GTK_ICON_VIEW(browser->iconview), 4);
|
||||
gtk_icon_view_set_column_spacing(GTK_ICON_VIEW(browser->iconview), 4);
|
||||
gtk_icon_view_set_row_spacing(GTK_ICON_VIEW(browser->iconview), 4);
|
||||
gtk_icon_view_set_spacing(GTK_ICON_VIEW(browser->iconview), 4);
|
||||
#if GTK_CHECK_VERSION(2, 8, 0)
|
||||
gtk_icon_view_enable_model_drag_source(GTK_ICON_VIEW(browser->iconview),
|
||||
GDK_BUTTON1_MASK, targets, targets_cnt,
|
||||
|
@ -1541,11 +1544,12 @@ static void _view_list(Browser * browser)
|
|||
gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(browser->iconview),
|
||||
renderer, "pixbuf", BR_COL_PIXBUF_24, NULL);
|
||||
renderer = gtk_cell_renderer_text_new();
|
||||
g_object_set(renderer, "editable", TRUE, "xalign", 0.5,
|
||||
"wrap-mode", PANGO_WRAP_WORD_CHAR, "wrap-width", 118,
|
||||
NULL);
|
||||
gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(browser->iconview), renderer,
|
||||
TRUE);
|
||||
g_object_set(renderer, "editable", TRUE,
|
||||
"ellipsize", PANGO_ELLIPSIZE_END,
|
||||
"width-chars", 20, "wrap-mode", PANGO_WRAP_WORD_CHAR,
|
||||
"xalign", 0.0, NULL);
|
||||
gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(browser->iconview),
|
||||
renderer, "text", BR_COL_DISPLAY_NAME, NULL);
|
||||
#else
|
||||
|
@ -1554,8 +1558,9 @@ static void _view_list(Browser * browser)
|
|||
BR_COL_PIXBUF_24);
|
||||
gtk_icon_view_set_text_column(GTK_ICON_VIEW(browser->iconview),
|
||||
BR_COL_DISPLAY_NAME);
|
||||
gtk_icon_view_set_item_width(GTK_ICON_VIEW(browser->iconview),
|
||||
BROWSER_LIST_WRAP_WIDTH + 24);
|
||||
#endif /* !GTK_CHECK_VERSION(2, 8, 0) */
|
||||
gtk_icon_view_set_item_width(GTK_ICON_VIEW(browser->iconview), 146);
|
||||
gtk_icon_view_set_orientation(GTK_ICON_VIEW(browser->iconview),
|
||||
GTK_ORIENTATION_HORIZONTAL);
|
||||
gtk_widget_show(browser->iconview);
|
||||
|
@ -1574,13 +1579,14 @@ static void _view_thumbnails(Browser * browser)
|
|||
gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(browser->iconview),
|
||||
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",
|
||||
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,
|
||||
TRUE);
|
||||
g_object_set(renderer, "editable", TRUE,
|
||||
"ellipsize", PANGO_ELLIPSIZE_END,
|
||||
"width-chars", 22, "wrap-mode", PANGO_WRAP_WORD_CHAR,
|
||||
"xalign", 0.5, NULL);
|
||||
g_signal_connect(G_OBJECT(renderer), "edited", G_CALLBACK(
|
||||
on_filename_edited), browser);
|
||||
gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(browser->iconview),
|
||||
renderer, "text", BR_COL_DISPLAY_NAME, NULL);
|
||||
#else
|
||||
|
@ -1589,9 +1595,9 @@ static void _view_thumbnails(Browser * browser)
|
|||
BR_COL_PIXBUF_96);
|
||||
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),
|
||||
BROWSER_THUMBNAIL_WIDTH);
|
||||
BROWSER_THUMBNAIL_WRAP_WIDTH);
|
||||
#endif /* !GTK_CHECK_VERSION(2, 8, 0) */
|
||||
gtk_icon_view_set_orientation(GTK_ICON_VIEW(browser->iconview),
|
||||
GTK_ORIENTATION_VERTICAL);
|
||||
gtk_widget_show(browser->iconview);
|
||||
|
|
|
@ -26,7 +26,9 @@
|
|||
/* Browser */
|
||||
/* defaults */
|
||||
# define BROWSER_CONFIG_FILE ".browser"
|
||||
# define BROWSER_THUMBNAIL_WIDTH 112
|
||||
# define BROWSER_ICON_WRAP_WIDTH 96
|
||||
# define BROWSER_LIST_WRAP_WIDTH 118
|
||||
# define BROWSER_THUMBNAIL_WRAP_WIDTH 112
|
||||
|
||||
|
||||
/* types */
|
||||
|
@ -127,6 +129,7 @@ typedef struct _Browser
|
|||
GtkWidget * detailview;
|
||||
#if GTK_CHECK_VERSION(2, 6, 0)
|
||||
GtkWidget * iconview;
|
||||
BrowserView iconview_as;
|
||||
#endif
|
||||
GtkListStore * store;
|
||||
GtkWidget * statusbar;
|
||||
|
|
|
@ -420,13 +420,13 @@ void on_help_about(gpointer data)
|
|||
window = browser->ab_window;
|
||||
gtk_window_set_transient_for(GTK_WINDOW(window), GTK_WINDOW(
|
||||
browser->window));
|
||||
gtk_about_dialog_set_name(GTK_ABOUT_DIALOG(window), PACKAGE);
|
||||
gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(window), VERSION);
|
||||
gtk_about_dialog_set_authors(GTK_ABOUT_DIALOG(window), _authors);
|
||||
gtk_about_dialog_set_copyright(GTK_ABOUT_DIALOG(window), _copyright);
|
||||
gtk_about_dialog_set_license(GTK_ABOUT_DIALOG(window), _license);
|
||||
gtk_about_dialog_set_logo_icon_name(GTK_ABOUT_DIALOG(window),
|
||||
"system-file-manager");
|
||||
gtk_about_dialog_set_name(GTK_ABOUT_DIALOG(window), PACKAGE);
|
||||
gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(window), VERSION);
|
||||
g_signal_connect(G_OBJECT(window), "delete-event", G_CALLBACK(
|
||||
_about_on_closex), window);
|
||||
g_signal_connect(G_OBJECT(window), "response", G_CALLBACK(
|
||||
|
@ -722,14 +722,21 @@ void on_view_as(gpointer data)
|
|||
|
||||
if(browser->iconview == NULL)
|
||||
browser_set_view(browser, BV_ICONS);
|
||||
else if(gtk_icon_view_get_orientation(GTK_ICON_VIEW(browser->iconview))
|
||||
== GTK_ORIENTATION_HORIZONTAL)
|
||||
browser_set_view(browser, BV_THUMBNAILS);
|
||||
else if(gtk_icon_view_get_item_width(GTK_ICON_VIEW(browser->iconview))
|
||||
!= BROWSER_THUMBNAIL_WIDTH)
|
||||
browser_set_view(browser, BV_LIST);
|
||||
else
|
||||
browser_set_view(browser, BV_DETAILS);
|
||||
else switch(browser->iconview_as)
|
||||
{
|
||||
case BV_DETAILS:
|
||||
browser_set_view(browser, BV_ICONS);
|
||||
break;
|
||||
case BV_LIST:
|
||||
browser_set_view(browser, BV_THUMBNAILS);
|
||||
break;
|
||||
case BV_ICONS:
|
||||
browser_set_view(browser, BV_LIST);
|
||||
break;
|
||||
case BV_THUMBNAILS:
|
||||
browser_set_view(browser, BV_DETAILS);
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user