Thread: Alsaplayer
View Single Post
Old 10-04-2013, 06:23 AM   #3
twobob
( ͡° ͜ʖ ͡°){ʇlnɐɟ ƃǝs}Týr
twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.
 
twobob's Avatar
 
Posts: 6,586
Karma: 6299991
Join Date: Jun 2012
Location: uti gratia usura (Yao ying da ying; Mo ying da yieng)
Device: PW-WIFI|K5-3G+WIFI| K4|K3-3G|DXG|K2| Rooted Nook Touch
A note on getting started patching...

jump into debian, cd to /usr/local/src, get the sources
root@dev:/usr/local/src# apt-get source alsaplayer

get the build-dep's
root@dev:/usr/local/src# apt-get build-dep alsaplayer

jump into the sources folder and check for references to title.

root@dev:/usr/local/src/alsaplayer-0.99.80# grep -R "title" ./*
Code:
./alsaplayer/Playlist.h:		std::string title;
./alsaplayer/playitem.h:    gchar	    *title;
./alsaplayer/playitem.h:void			    ap_playitem_set_title	(ApPlayItem	*playitem,
./alsaplayer/playitem.h:							 const gchar    *title);
./alsaplayer/playitem.h:G_CONST_RETURN gchar*	    ap_playitem_get_title	(ApPlayItem	*playitem);
./alsaplayer/input_plugin.h:	 * The song title.
./alsaplayer/input_plugin.h:	char	title[128];
./alsaplayer/control.h:int ap_get_title(int session, char *str);
./app/ControlSocket.cpp:					if (item->title.size()) {
./app/ControlSocket.cpp:						sprintf(tmp, "%s %s", item->title.c_str(), 
./app/ControlSocket.cpp:					ap_message_add_string(reply, "string", info.title);
./app/Playlist.cpp://	t - sort by title in descending direction,
./app/Playlist.cpp://	T - sort by title in ascending direction,
./app/Playlist.cpp:		case 't':	// Compare titles, descending
./app/Playlist.cpp:				COMPARE(title, DESCENDING);
./app/Playlist.cpp:		case 'T':	// Compare titles, ascending
./app/Playlist.cpp:				COMPARE(title, ASCENDING);
./app/Playlist.cpp:					(*p).title = info.title;
./app/Playlist.cpp:			/* Ignore title/length lines */
./app/Main.cpp:			if (ap_get_title(use_session, res) && strlen(res))
./app/Main.cpp:				fprintf(stdout, "title: %s\n", res);
./ChangeLog:* Madej: fixed song title in title bar when unknow name
./ChangeLog:* Madej: song title in title bar with preference option
./ChangeLog:  the title bar and the quit menu.
./ChangeLog:* Song artist - title - time displaying in the playlist.
./debian/alsaplayer-gtk.menu:?package(alsaplayer-gtk,alsaplayer-common):needs="X11" section="Applications/Sound" title="AlsaPlayer" \
./debian/alsaplayer-gtk.menu: longtitle="AlsaPlayer (GTK interface)" command="/usr/bin/alsaplayer -i gtk2"
./debian/alsaplayer-daemon.menu: title="AlsaPlayer (daemon)" \
./debian/alsaplayer-daemon.menu: longtitle="AlsaPlayer (daemon interface)" \
./debian/alsaplayer-xosd.menu: title="AlsaPlayer (xosd)" \
./debian/alsaplayer-xosd.menu: longtitle="AlsaPlayer (xosd daemon interface)" \
./examples/speed.c:	char title[AP_TITLE_MAX];
./examples/speed.c:	if (ap_get_title(session_id, title) &&
./examples/speed.c:		printf("File playing: %s - %s\n", title, artist);
./input/vorbis/vorbis_engine.c:			t = vorbis_comment_query(comment, "title", 0);
./input/vorbis/vorbis_engine.c:			snprintf(info->title, sizeof(info->title), "%s", t ? t : "");
./input/vorbis/vorbis_engine.c:			snprintf(info->title, sizeof(info->title), "%s", data->path);
./input/audiofile/audiofile_engine.c:	strcpy(info->title, data->filename);
./input/sndfile/sndfile_engine.c:	strcpy(info->title, data->filename);
./input/mad/mad_engine.c:					fill_from_id3v2 (info->title, buf + name_size + start,
./input/mad/mad_engine.c:							sizeof (info->title), size - start);
./input/mad/mad_engine.c:		/* title */
./input/mad/mad_engine.c:		strncpy (info->title, buf + 3, 30);
./input/mad/mad_engine.c:		rstrip (info->title);
./input/mad/mad_engine.c:			sprintf(data->sinfo.title, "%s", data->filename);
./input/mad/mad_engine.c:				if ((len = strlen(data->sinfo.title))) {
./input/mad/mad_engine.c:					s = data->sinfo.title + (len - 1);
./input/mad/mad_engine.c:					while (s != data->sinfo.title && *s == ' ')
./input/mad/mad_engine.c:					snprintf(data->sinfo.title, 128, "%s", s);
./input/cdda/cdda_engine.c: * open the filename and put music title's into the global variable
./input/cdda/cdda_engine.c:		info->title[0] = 0;
./input/cdda/cdda_engine.c:		sprintf(info->title, "Full CD length playback");
./input/cdda/cdda_engine.c:			sprintf(info->title, "%s", data->tracks[data->track_nr].track);
./input/cdda/cdda_engine.c:	//alsaplayer_error("title = %s\nalbum = %s\nartist = %s",
./input/cdda/cdda_engine.c:	//		info->title, info->album, info->artist);
./input/flac/FlacPlugin.cpp:    if (t && ! t->title ().empty ())
./input/flac/FlacPlugin.cpp:	strncpy (info->title, t->title ().c_str (), 128);
./input/flac/FlacPlugin.cpp:	    strncpy (info->title, fname, 128);
./input/flac/FlacPlugin.cpp:	    info->title[0] = 0;
./input/flac/FlacPlugin.cpp:	info->title[0]   = 0;
./input/flac/FlacId3v1Tag.cpp:    char title[31];
./input/flac/FlacId3v1Tag.cpp:    memcpy(tag.title, tag.raw+3, 30);
./input/flac/FlacId3v1Tag.cpp:    _title   = tag.title;
./input/flac/FlacMetadataTag.cpp:    { "TITLE", &FlacMetadataTag::_title },
./input/flac/FlacTag.h:    const std::string title ();
./input/flac/FlacTag.h:    std::string       _title;
./input/flac/FlacTag.h:FlacTag::title ()
./input/flac/FlacTag.h:    return _title;
./input/mikmod/mikmod_engine.c:	strcpy (info->title, (data->mf->songname[0]) ? data->mf->songname : data->fname);
./input/wav/wav_engine.c:	info->title[0] = 0;
./interface/xosd/xosd.cpp:		if (*info.title)
./interface/xosd/xosd.cpp:			xosd_display(osd, 1, XOSD_string, info.title);
./interface/xosd/xosd.cpp:			xosd_display(osd, 1, XOSD_string, "Playing unknown title");
./interface/gtk2/info_window.h:		GtkWidget *title;
./interface/gtk2/info_window.h:		void set_title(const gchar*);
./interface/gtk2/gtk_interface.cpp:	char title_string[256];
./interface/gtk2/gtk_interface.cpp:		sprintf(info.title, _("No stream"));
./interface/gtk2/gtk_interface.cpp:		sprintf(title_string, "%s - %s", info.artist, info.title);
./interface/gtk2/gtk_interface.cpp:		infowindow->set_title(title_string);
./interface/gtk2/gtk_interface.cpp:		if (prefs_get_bool(ap_prefs, "gtk2_interface", "play_on_title", 0))
./interface/gtk2/gtk_interface.cpp:			gtk_window_set_title(GTK_WINDOW(gtk_widget_get_toplevel(playlist_window->GetWindow())), title_string);
./interface/gtk2/gtk_interface.cpp:	} else if (strlen(info.title)) {
./interface/gtk2/gtk_interface.cpp:		sprintf(title_string, "%s", info.title);
./interface/gtk2/gtk_interface.cpp:		infowindow->set_title(title_string);
./interface/gtk2/gtk_interface.cpp:		if (prefs_get_bool(ap_prefs, "gtk2_interface", "play_on_title", 0))
./interface/gtk2/gtk_interface.cpp:			gtk_window_set_title(GTK_WINDOW(gtk_widget_get_toplevel(playlist_window->GetWindow())), title_string);
./interface/gtk2/gtk_interface.cpp:			infowindow->set_title(p);
./interface/gtk2/gtk_interface.cpp:			if (prefs_get_bool(ap_prefs, "gtk2_interface", "play_on_title", 0))
./interface/gtk2/gtk_interface.cpp:				gtk_window_set_title(GTK_WINDOW(gtk_widget_get_toplevel(playlist_window->GetWindow())), p);
./interface/gtk2/gtk_interface.cpp:			infowindow->set_title(info.path);
./interface/gtk2/gtk_interface.cpp:			if (prefs_get_bool(ap_prefs, "gtk2_interface", "play_on_title", 0))
./interface/gtk2/gtk_interface.cpp:				gtk_window_set_title(GTK_WINDOW(gtk_widget_get_toplevel(playlist_window->GetWindow())), info.path);
./interface/gtk2/gtk_interface.cpp:	gtk_window_set_title(GTK_WINDOW(main_window), "AlsaPlayer");
./interface/gtk2/info_window.cpp:	GtkWidget *title_label;
./interface/gtk2/info_window.cpp:	title_label = gtk_label_new(NULL);
./interface/gtk2/info_window.cpp:	g_object_set_data(G_OBJECT(frame), "title_label", title_label);
./interface/gtk2/info_window.cpp:	gtk_layout_put(GTK_LAYOUT(main_box), title_label, 0, 0);
./interface/gtk2/info_window.cpp:	title = GTK_WIDGET(g_object_get_data(G_OBJECT(window), "title_label"));
./interface/gtk2/info_window.cpp:	gtk_widget_set_size_request (this->title, width - x - this->rightwidth - this->labelheight, -1);
./interface/gtk2/info_window.cpp:	gtk_layout_move(GTK_LAYOUT(this->layout), this->title, x, y);
./interface/gtk2/info_window.cpp:void InfoWindow::set_title(const gchar *text)
./interface/gtk2/info_window.cpp:	gtk_label_set_text (GTK_LABEL(this->title), text);
./interface/gtk2/info_window.cpp:	gtk_widget_modify_fg(this->title, GTK_STATE_NORMAL, &color);
./interface/gtk2/info_window.cpp:	gtk_widget_modify_font(this->title, fonts);
./interface/gtk2/PlaylistWindow.cpp:	if (item->title.size())
./interface/gtk2/PlaylistWindow.cpp:		list_item[2] = g_strdup(item->title.c_str());
./interface/gtk2/PlaylistWindow.cpp:	column = gtk_tree_view_column_new_with_attributes("title", renderer, "text", 2, NULL);
./interface/gtk2/PreferencesWindow.cpp:	GtkWidget *title = GTK_WIDGET(g_object_get_data(G_OBJECT(dialog), "pref_play_on_title"));
./interface/gtk2/PreferencesWindow.cpp:	what = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(title)); 
./interface/gtk2/PreferencesWindow.cpp:	prefs_set_bool(ap_prefs, "gtk2_interface", "play_on_title", what);
./interface/gtk2/PreferencesWindow.cpp:		gtk_window_set_title(GTK_WINDOW(main_window), "AlsaPlayer");
./interface/gtk2/PreferencesWindow.cpp:	GtkWidget *pref_play_on_title;
./interface/gtk2/PreferencesWindow.cpp:	pref_play_on_title = gtk_check_button_new_with_label(_("Show title in title-bar"));
./interface/gtk2/PreferencesWindow.cpp:	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(pref_play_on_title), prefs_get_bool(ap_prefs, "gtk2_interface", "play_on_title", FALSE));
./interface/gtk2/PreferencesWindow.cpp:	g_object_set_data(G_OBJECT(dialog), "pref_play_on_title", pref_play_on_title); 
./interface/gtk2/PreferencesWindow.cpp:	gtk_box_pack_start(GTK_BOX(pref_play), pref_play_on_title, FALSE, FALSE, 0);
./interface/text/text.cpp:		// single title loop
./interface/text/text.cpp:				snprintf(out_text, i, "%s - %s", info.artist, info.title);
./interface/text/text.cpp:			else if (*info.title)
./interface/text/text.cpp:				snprintf(out_text, i, "%s", info.title);
./interface/text/text.cpp:				snprintf(out_text, i, "(no title information available)");
./libalsaplayer/message.c:int ap_get_title(int session, char *str)
./po/de.po:msgid "Show title in title-bar"
./po/en_GB.po:msgid "Show title in title-bar"
./po/fr.po:msgid "Show title in title-bar"
./po/alsaplayer.pot:msgid "Show title in title-bar"
./po/pl.po:msgid "Show title in title-bar"
./po/sv.po:msgid "Show title in title-bar"
./scopes2/logbarfft/logbarfft.c:	gtk_window_set_title(GTK_WINDOW(fftscope_win), "logFFTscope");
./scopes2/monoscope/monoscope.c:	gtk_window_set_title(GTK_WINDOW(monoscope_win), "Monoscope");
./scopes2/synaescope/synaescope.c:	gtk_window_set_title(GTK_WINDOW(synaescope_win), "Synaescope");
./scopes2/spacescope/spacescope.c:	gtk_window_set_title(GTK_WINDOW(spacescope_win), "Spacescope");
./scopes2/blurscope/blurscope.c:	gtk_window_set_title(GTK_WINDOW(window),"Blurscope");
./scopes2/levelmeter/levelmeter.c:	gtk_window_set_title(GTK_WINDOW(levelmeter_win), "Levelmeter");


Oh so a couple then...

Any way we can get that list down a bit???
root@dev:/usr/local/src/alsaplayer-0.99.80# grep -R "gtk_window_set_title" ./*
Code:
./interface/gtk2/gtk_interface.cpp:			gtk_window_set_title(GTK_WINDOW(gtk_widget_get_toplevel(playlist_window->GetWindow())), title_string);
./interface/gtk2/gtk_interface.cpp:			gtk_window_set_title(GTK_WINDOW(gtk_widget_get_toplevel(playlist_window->GetWindow())), title_string);
./interface/gtk2/gtk_interface.cpp:				gtk_window_set_title(GTK_WINDOW(gtk_widget_get_toplevel(playlist_window->GetWindow())), p);
./interface/gtk2/gtk_interface.cpp:				gtk_window_set_title(GTK_WINDOW(gtk_widget_get_toplevel(playlist_window->GetWindow())), info.path);
./interface/gtk2/gtk_interface.cpp:	gtk_window_set_title(GTK_WINDOW(main_window), "AlsaPlayer");
./interface/gtk2/PreferencesWindow.cpp:		gtk_window_set_title(GTK_WINDOW(main_window), "AlsaPlayer");
./scopes2/logbarfft/logbarfft.c:	gtk_window_set_title(GTK_WINDOW(fftscope_win), "logFFTscope");
./scopes2/monoscope/monoscope.c:	gtk_window_set_title(GTK_WINDOW(monoscope_win), "Monoscope");
./scopes2/synaescope/synaescope.c:	gtk_window_set_title(GTK_WINDOW(synaescope_win), "Synaescope");
./scopes2/spacescope/spacescope.c:	gtk_window_set_title(GTK_WINDOW(spacescope_win), "Spacescope");
./scopes2/blurscope/blurscope.c:	gtk_window_set_title(GTK_WINDOW(window),"Blurscope");
./scopes2/levelmeter/levelmeter.c:	gtk_window_set_title(GTK_WINDOW(levelmeter_win), "Levelmeter");

would be a bare minimum I would think.


anything else we should be looking at?

root@dev:/usr/local/src/alsaplayer-0.99.80# grep -R "gtk_message_dialog_new" ./*
Code:
./interface/gtk2/gtk_interface.cpp:	md = gtk_message_dialog_new(GTK_WINDOW(parent), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, _("Error !"));
./interface/gtk2/gtk_interface.cpp:	md = gtk_message_dialog_new(GTK_WINDOW(parent), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_WARNING, GTK_BUTTONS_CLOSE, _("Warning !"));
./interface/gtk2/gtk_interface.cpp:	md = gtk_message_dialog_new(GTK_WINDOW(parent), (GtkDialogFlags) (GTK_DIALOG_MODAL|GTK_DIALOG_DESTROY_WITH_PARENT), GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, _("Excuse me !"));


I would start there. Then see what I missed.

ALSO: ./interface/gtk2/AboutWindow.cpp:
I kind of recall there being no obvious way to set the "default about" windows sub-title - so perhaps think about eliding it.

Hope it helps.

Last edited by twobob; 10-04-2013 at 06:26 AM.
twobob is offline   Reply With Quote