Mercurial > audlegacy
changeset 3986:a77a1b3f493f
drop glade on fileinfo
author | Tomasz Mon <desowin@gmail.com> |
---|---|
date | Fri, 23 Nov 2007 20:32:25 +0100 |
parents | ba5af8e85857 |
children | 4a981580bf49 |
files | src/audacious/glade/fileinfo.glade src/audacious/ui_fileinfo.c |
diffstat | 2 files changed, 160 insertions(+), 652 deletions(-) [+] |
line wrap: on
line diff
--- a/src/audacious/glade/fileinfo.glade Fri Nov 23 19:26:35 2007 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,598 +0,0 @@ -<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> -<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd"> - -<glade-interface> - -<widget class="GtkWindow" id="fileinfo_win"> - <property name="border_width">6</property> - <property name="title" translatable="yes">Track Information</property> - <property name="type">GTK_WINDOW_TOPLEVEL</property> - <property name="window_position">GTK_WIN_POS_CENTER</property> - <property name="modal">False</property> - <property name="resizable">False</property> - <property name="destroy_with_parent">False</property> - <property name="decorated">True</property> - <property name="skip_taskbar_hint">False</property> - <property name="skip_pager_hint">False</property> - <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> - <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> - <property name="focus_on_map">True</property> - <property name="urgency_hint">False</property> - - <child> - <widget class="GtkHBox" id="hbox1"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkImage" id="image_artwork"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkVSeparator" id="vseparator1"> - <property name="visible">True</property> - </widget> - <packing> - <property name="padding">12</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vbox1"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkAlignment" id="alignment7"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">1</property> - <property name="yscale">1</property> - <property name="top_padding">0</property> - <property name="bottom_padding">0</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkVBox" id="vbox2"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkLabel" id="label_title"> - <property name="visible">True</property> - <property name="label" translatable="yes"><span size="small">Title</span></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkAlignment" id="alignment1"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">1</property> - <property name="yscale">1</property> - <property name="top_padding">0</property> - <property name="bottom_padding">6</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkEntry" id="entry_title"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">True</property> - <property name="visibility">True</property> - <property name="max_length">0</property> - <property name="text" translatable="yes"></property> - <property name="has_frame">True</property> - <property name="invisible_char">*</property> - <property name="activates_default">False</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label_artist"> - <property name="visible">True</property> - <property name="label" translatable="yes"><span size="small">Artist</span></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkAlignment" id="alignment2"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">1</property> - <property name="yscale">1</property> - <property name="top_padding">0</property> - <property name="bottom_padding">6</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkEntry" id="entry_artist"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">True</property> - <property name="visibility">True</property> - <property name="max_length">0</property> - <property name="text" translatable="yes"></property> - <property name="has_frame">True</property> - <property name="invisible_char">*</property> - <property name="activates_default">False</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label_album"> - <property name="visible">True</property> - <property name="label" translatable="yes"><span size="small">Album</span></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkAlignment" id="alignment3"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">1</property> - <property name="yscale">1</property> - <property name="top_padding">0</property> - <property name="bottom_padding">6</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkEntry" id="entry_album"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">True</property> - <property name="visibility">True</property> - <property name="max_length">0</property> - <property name="text" translatable="yes"></property> - <property name="has_frame">True</property> - <property name="invisible_char">*</property> - <property name="activates_default">False</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label_comment"> - <property name="visible">True</property> - <property name="label" translatable="yes"><span size="small">Comment</span></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkAlignment" id="alignment4"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">1</property> - <property name="yscale">1</property> - <property name="top_padding">0</property> - <property name="bottom_padding">6</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkEntry" id="entry_comment"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">True</property> - <property name="visibility">True</property> - <property name="max_length">0</property> - <property name="text" translatable="yes"></property> - <property name="has_frame">True</property> - <property name="invisible_char">*</property> - <property name="activates_default">False</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label_genre"> - <property name="visible">True</property> - <property name="label" translatable="yes"><span size="small">Genre</span></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkAlignment" id="alignment5"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">1</property> - <property name="yscale">1</property> - <property name="top_padding">0</property> - <property name="bottom_padding">6</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkEntry" id="entry_genre"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">True</property> - <property name="visibility">True</property> - <property name="max_length">0</property> - <property name="text" translatable="yes"></property> - <property name="has_frame">True</property> - <property name="invisible_char">*</property> - <property name="activates_default">False</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkAlignment" id="alignment6"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">1</property> - <property name="yscale">1</property> - <property name="top_padding">0</property> - <property name="bottom_padding">6</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkTable" id="table1"> - <property name="visible">True</property> - <property name="n_rows">2</property> - <property name="n_columns">2</property> - <property name="homogeneous">False</property> - <property name="row_spacing">0</property> - <property name="column_spacing">6</property> - - <child> - <widget class="GtkLabel" id="label_year"> - <property name="visible">True</property> - <property name="label" translatable="yes"><span size="small">Year</span></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="left_attach">0</property> - <property name="right_attach">1</property> - <property name="top_attach">0</property> - <property name="bottom_attach">1</property> - <property name="x_options">fill</property> - <property name="y_options"></property> - </packing> - </child> - - <child> - <widget class="GtkEntry" id="entry_year"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">True</property> - <property name="visibility">True</property> - <property name="max_length">0</property> - <property name="text" translatable="yes"></property> - <property name="has_frame">True</property> - <property name="invisible_char">*</property> - <property name="activates_default">False</property> - </widget> - <packing> - <property name="left_attach">0</property> - <property name="right_attach">1</property> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="y_options"></property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label_track"> - <property name="visible">True</property> - <property name="label" translatable="yes"><span size="small">Track Number</span></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">0</property> - <property name="bottom_attach">1</property> - <property name="x_options">fill</property> - <property name="y_options"></property> - </packing> - </child> - - <child> - <widget class="GtkEntry" id="entry_track"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">True</property> - <property name="visibility">True</property> - <property name="max_length">0</property> - <property name="text" translatable="yes"></property> - <property name="has_frame">True</property> - <property name="invisible_char">*</property> - <property name="activates_default">False</property> - </widget> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="y_options"></property> - </packing> - </child> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label_location"> - <property name="visible">True</property> - <property name="label" translatable="yes"><span size="small">Location</span></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkAlignment" id="alignment8"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">1</property> - <property name="yscale">1</property> - <property name="top_padding">0</property> - <property name="bottom_padding">6</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkEntry" id="entry_location"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">True</property> - <property name="visibility">True</property> - <property name="max_length">0</property> - <property name="text" translatable="yes"></property> - <property name="has_frame">True</property> - <property name="invisible_char">*</property> - <property name="activates_default">False</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkHButtonBox" id="bbox_close"> - <property name="visible">True</property> - <property name="layout_style">GTK_BUTTONBOX_END</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkButton" id="btn_close"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-close</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - </child> -</widget> - -</glade-interface>
--- a/src/audacious/ui_fileinfo.c Fri Nov 23 19:26:35 2007 +0100 +++ b/src/audacious/ui_fileinfo.c Fri Nov 23 20:32:25 2007 +0100 @@ -26,7 +26,6 @@ #include <glib.h> #include <glib/gi18n.h> #include <gtk/gtk.h> -#include <glade/glade.h> #include <string.h> #include <stddef.h> #include <stdio.h> @@ -37,8 +36,6 @@ #include <sys/types.h> #include <sys/stat.h> -#include "glade.h" - #include "plugin.h" #include "pluginenum.h" #include "input.h" @@ -63,43 +60,46 @@ GtkWidget *fileinfo_win; +GtkWidget *entry_location; +GtkWidget *entry_title; +GtkWidget *entry_artist; +GtkWidget *entry_album; +GtkWidget *entry_comment; +GtkWidget *entry_year; +GtkWidget *entry_track; +GtkWidget *entry_genre; + +GtkWidget *image_artwork; + static void -fileinfo_entry_set_text(const char *entry, const char *text) +fileinfo_entry_set_text(GtkWidget *widget, const char *text) { - GladeXML *xml = g_object_get_data(G_OBJECT(fileinfo_win), "glade-xml"); - GtkWidget *widget = glade_xml_get_widget(xml, entry); + if (widget == NULL) + return; - if (xml == NULL || widget == NULL) - return; - - gtk_entry_set_text(GTK_ENTRY(widget), text); + gtk_entry_set_text(GTK_ENTRY(widget), text); } static void -fileinfo_entry_set_text_free(const char *entry, char *text) +fileinfo_entry_set_text_free(GtkWidget *widget, char *text) { - GladeXML *xml = g_object_get_data(G_OBJECT(fileinfo_win), "glade-xml"); - GtkWidget *widget = glade_xml_get_widget(xml, entry); + if (widget == NULL) + return; - if (xml == NULL || widget == NULL) - return; + gtk_entry_set_text(GTK_ENTRY(widget), text); - gtk_entry_set_text(GTK_ENTRY(widget), text); - - g_free(text); + g_free(text); } static void -fileinfo_entry_set_image(const char *entry, const char *text) +fileinfo_entry_set_image(GtkWidget *widget, const char *text) { - GladeXML *xml = g_object_get_data(G_OBJECT(fileinfo_win), "glade-xml"); - GtkWidget *widget = glade_xml_get_widget(xml, entry); GdkPixbuf *pixbuf; int width, height; double aspect; GdkPixbuf *pixbuf2; - if (xml == NULL || widget == NULL) + if (widget == NULL) return; pixbuf = gdk_pixbuf_new_from_file(text, NULL); @@ -133,41 +133,147 @@ void fileinfo_hide(gpointer unused) { - gtk_widget_hide(fileinfo_win); + gtk_widget_hide(fileinfo_win); - /* Clear it out. */ - fileinfo_entry_set_text("entry_title", ""); - fileinfo_entry_set_text("entry_artist", ""); - fileinfo_entry_set_text("entry_album", ""); - fileinfo_entry_set_text("entry_comment", ""); - fileinfo_entry_set_text("entry_genre", ""); - fileinfo_entry_set_text("entry_year", ""); - fileinfo_entry_set_text("entry_track", ""); - fileinfo_entry_set_text("entry_location", ""); + /* Clear it out. */ + fileinfo_entry_set_text(entry_title, ""); + fileinfo_entry_set_text(entry_artist, ""); + fileinfo_entry_set_text(entry_album, ""); + fileinfo_entry_set_text(entry_comment, ""); + fileinfo_entry_set_text(entry_genre, ""); + fileinfo_entry_set_text(entry_year, ""); + fileinfo_entry_set_text(entry_track, ""); + fileinfo_entry_set_text(entry_location, ""); - fileinfo_entry_set_image("image_artwork", DATA_DIR "/images/audio.png"); + fileinfo_entry_set_image(image_artwork, DATA_DIR "/images/audio.png"); } void create_fileinfo_window(void) { - const gchar *glade_file = DATA_DIR "/glade/fileinfo.glade"; - GladeXML *xml; - GtkWidget *widget; + GtkWidget *hbox; + GtkWidget *vbox1; + GtkWidget *vbox2; + GtkWidget *label_title; + GtkWidget *label_artist; + GtkWidget *label_album; + GtkWidget *label_comment; + GtkWidget *label_genre; + GtkWidget *label_year; + GtkWidget *label_track; + GtkWidget *label_location; + GtkWidget *table1; + GtkWidget *bbox_close; + GtkWidget *btn_close; + + fileinfo_win = gtk_window_new(GTK_WINDOW_TOPLEVEL); + gtk_container_set_border_width(GTK_CONTAINER(fileinfo_win), 6); + gtk_window_set_title(GTK_WINDOW(fileinfo_win), _("Track Information")); + gtk_window_set_position(GTK_WINDOW(fileinfo_win), GTK_WIN_POS_CENTER); + gtk_window_set_resizable(GTK_WINDOW(fileinfo_win), FALSE); + gtk_window_set_type_hint(GTK_WINDOW(fileinfo_win), GDK_WINDOW_TYPE_HINT_DIALOG); + gtk_window_set_transient_for(GTK_WINDOW(fileinfo_win), GTK_WINDOW(mainwin)); + + hbox = gtk_hbox_new(FALSE, 0); + gtk_container_add(GTK_CONTAINER(fileinfo_win), hbox); - xml = glade_xml_new_or_die(_("Track Information Window"), glade_file, NULL, NULL); + image_artwork = gtk_image_new(); + gtk_box_pack_start(GTK_BOX(hbox), image_artwork, FALSE, FALSE, 0); + gtk_misc_set_alignment(GTK_MISC(image_artwork), 0.5, 0); + gtk_image_set_from_file(GTK_IMAGE(image_artwork), DATA_DIR "/images/audio.png"); + + vbox1 = gtk_vbox_new(FALSE, 0); + gtk_box_pack_start(GTK_BOX(hbox), vbox1, TRUE, TRUE, 0); + + vbox2 = gtk_vbox_new(FALSE, 0); + gtk_container_add(GTK_CONTAINER(vbox1), vbox2); + + label_title = gtk_label_new(_("<span size=\"small\">Title</span>")); + gtk_box_pack_start(GTK_BOX(vbox2), label_title, FALSE, FALSE, 0); + gtk_label_set_use_markup(GTK_LABEL(label_title), TRUE); + gtk_misc_set_alignment(GTK_MISC(label_title), 0, 0); - glade_xml_signal_autoconnect(xml); + entry_title = gtk_entry_new(); + gtk_container_add(GTK_CONTAINER(vbox2), entry_title); + + label_artist = gtk_label_new(_("<span size=\"small\">Artist</span>")); + gtk_box_pack_start(GTK_BOX(vbox2), label_artist, FALSE, FALSE, 0); + gtk_label_set_use_markup(GTK_LABEL(label_artist), TRUE); + gtk_misc_set_alignment(GTK_MISC(label_artist), 0, 0.5); + + entry_artist = gtk_entry_new(); + gtk_container_add(GTK_CONTAINER(vbox2), entry_artist); + + label_album = gtk_label_new(_("<span size=\"small\">Album</span>")); + gtk_box_pack_start(GTK_BOX(vbox2), label_album, FALSE, FALSE, 0); + gtk_label_set_use_markup(GTK_LABEL(label_album), TRUE); + gtk_misc_set_alignment(GTK_MISC(label_album), 0, 0.5); + + entry_album = gtk_entry_new(); + gtk_container_add(GTK_CONTAINER(vbox2), entry_album); - fileinfo_win = glade_xml_get_widget(xml, "fileinfo_win"); - g_object_set_data(G_OBJECT(fileinfo_win), "glade-xml", xml); - gtk_window_set_transient_for(GTK_WINDOW(fileinfo_win), GTK_WINDOW(mainwin)); + label_comment = gtk_label_new(_("<span size=\"small\">Comment</span>")); + gtk_box_pack_start(GTK_BOX(vbox2), label_comment, FALSE, FALSE, 0); + gtk_label_set_use_markup(GTK_LABEL(label_comment), TRUE); + gtk_misc_set_alignment(GTK_MISC(label_comment), 0, 0.5); + + entry_comment = gtk_entry_new(); + gtk_container_add (GTK_CONTAINER(vbox2), entry_comment); + + label_genre = gtk_label_new(_("<span size=\"small\">Genre</span>")); + gtk_box_pack_start(GTK_BOX(vbox2), label_genre, FALSE, FALSE, 0); + gtk_label_set_use_markup(GTK_LABEL(label_genre), TRUE); + gtk_misc_set_alignment(GTK_MISC(label_genre), 0, 0.5); + + entry_genre = gtk_entry_new(); + gtk_container_add(GTK_CONTAINER(vbox2), entry_genre); + + table1 = gtk_table_new(2, 2, FALSE); + gtk_container_add(GTK_CONTAINER(vbox2), table1); + gtk_table_set_col_spacings(GTK_TABLE(table1), 6); + + label_year = gtk_label_new(_("<span size=\"small\">Year</span>")); + gtk_table_attach(GTK_TABLE(table1), label_year, 0, 1, 0, 1, + (GtkAttachOptions) (GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + gtk_label_set_use_markup(GTK_LABEL(label_year), TRUE); + gtk_misc_set_alignment(GTK_MISC(label_year), 0, 0.5); - widget = glade_xml_get_widget(xml, "image_artwork"); - gtk_image_set_from_file(GTK_IMAGE(widget), DATA_DIR "/images/audio.png"); + entry_year = gtk_entry_new(); + gtk_table_attach(GTK_TABLE(table1), entry_year, 0, 1, 1, 2, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + label_track = gtk_label_new(_("<span size=\"small\">Track Number</span>")); + gtk_table_attach(GTK_TABLE(table1), label_track, 1, 2, 0, 1, + (GtkAttachOptions) (GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + gtk_label_set_use_markup(GTK_LABEL(label_track), TRUE); + gtk_misc_set_alignment(GTK_MISC(label_track), 0, 0.5); + + entry_track = gtk_entry_new(); + gtk_table_attach(GTK_TABLE(table1), entry_track, 1, 2, 1, 2, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); - widget = glade_xml_get_widget(xml, "btn_close"); - g_signal_connect(G_OBJECT(widget), "clicked", (GCallback) fileinfo_hide, NULL); + label_location = gtk_label_new(_("<span size=\"small\">Location</span>")); + gtk_box_pack_start(GTK_BOX(vbox2), label_location, FALSE, FALSE, 0); + gtk_label_set_use_markup(GTK_LABEL(label_location), TRUE); + gtk_misc_set_alignment(GTK_MISC(label_location), 0, 0.5); + + entry_location = gtk_entry_new(); + gtk_container_add(GTK_CONTAINER(vbox2), entry_location); + + bbox_close = gtk_hbutton_box_new(); + gtk_box_pack_start(GTK_BOX(vbox1), bbox_close, FALSE, FALSE, 0); + gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox_close), GTK_BUTTONBOX_END); + + btn_close = gtk_button_new_from_stock("gtk-close"); + gtk_container_add(GTK_CONTAINER(bbox_close), btn_close); + GTK_WIDGET_SET_FLAGS(btn_close, GTK_CAN_DEFAULT); + g_signal_connect(G_OBJECT(btn_close), "clicked", (GCallback) fileinfo_hide, NULL); + + gtk_widget_show_all (hbox); } void @@ -180,27 +286,27 @@ gtk_widget_realize(fileinfo_win); - fileinfo_entry_set_text("entry_title", tuple_get_string(tuple, FIELD_TITLE, NULL)); - fileinfo_entry_set_text("entry_artist", tuple_get_string(tuple, FIELD_ARTIST, NULL)); - fileinfo_entry_set_text("entry_album", tuple_get_string(tuple, FIELD_ALBUM, NULL)); - fileinfo_entry_set_text("entry_comment", tuple_get_string(tuple, FIELD_COMMENT, NULL)); - fileinfo_entry_set_text("entry_genre", tuple_get_string(tuple, FIELD_GENRE, NULL)); + fileinfo_entry_set_text(entry_title, tuple_get_string(tuple, FIELD_TITLE, NULL)); + fileinfo_entry_set_text(entry_artist, tuple_get_string(tuple, FIELD_ARTIST, NULL)); + fileinfo_entry_set_text(entry_album, tuple_get_string(tuple, FIELD_ALBUM, NULL)); + fileinfo_entry_set_text(entry_comment, tuple_get_string(tuple, FIELD_COMMENT, NULL)); + fileinfo_entry_set_text(entry_genre, tuple_get_string(tuple, FIELD_GENRE, NULL)); tmp = g_strdup_printf("%s/%s", tuple_get_string(tuple, FIELD_FILE_PATH, NULL), tuple_get_string(tuple, FIELD_FILE_NAME, NULL)); if(tmp){ - fileinfo_entry_set_text_free("entry_location", str_to_utf8(tmp)); + fileinfo_entry_set_text_free(entry_location, str_to_utf8(tmp)); g_free(tmp); tmp = NULL; } if (tuple_get_int(tuple, FIELD_YEAR, NULL)) - fileinfo_entry_set_text_free("entry_year", + fileinfo_entry_set_text_free(entry_year, g_strdup_printf("%d", tuple_get_int(tuple, FIELD_YEAR, NULL))); if (tuple_get_int(tuple, FIELD_TRACK_NUMBER, NULL)) - fileinfo_entry_set_text_free("entry_track", + fileinfo_entry_set_text_free(entry_track, g_strdup_printf("%d", tuple_get_int(tuple, FIELD_TRACK_NUMBER, NULL))); tmp = fileinfo_recursive_get_image( @@ -209,7 +315,7 @@ if(tmp) { - fileinfo_entry_set_image("image_artwork", tmp); + fileinfo_entry_set_image(image_artwork, tmp); g_free(tmp); }