/* This file is part of GNUnet. (C) 2005 Christian Grothoff (and other contributing authors) GNUnet is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNUnet is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNUnet; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /** * @file src/musicinsert.h * @brief Music insertion dialog for gnunet-gtk * @author Milan Bouchet */ #ifndef MUSICINSERT_MAIN_H #define MUSICINSERT_MAIN_H #include #include #include #include "platform.h" #define MUSICINSERTXMLFILE "musicinsert.glade" /* Know music files mimetypes to list in the format ComboBoxEntry */ enum Types { FORMAT_OGG = 0, FORMAT_MP3, FORMAT_MPC, FORMAT_AAC, FORMAT_WMA, FORMAT_FLAC, FORMAT_APE, FORMAT_WAV, FORMAT_MIDI, FORMAT_REAL }; /* Columns IDs constants */ enum { REAL_FILENAME_COL = 0, FILENAME_COL, TITLE_COL, ARTIST_COL, ALBUM_COL, TYPE_COL, FORMAT_COL, KEYWORDS_COL, COLS_NUMBER }; /* Columns IDs : need to be stored in a variable to be passed using a (void *) */ const gint filename_col_num = FILENAME_COL; const gint title_col_num = TITLE_COL; const gint artist_col_num = ARTIST_COL; const gint album_col_num = ALBUM_COL; const gint type_col_num = TYPE_COL; const gint format_col_num = FORMAT_COL; const gint keywords_col_num = KEYWORDS_COL; EXTRACTOR_KeywordList *get_EXTRACTORKeywords (const EXTRACTOR_ExtractorList * exList, const gchar * filename); void set_File_Keywords (const gchar * filename); void activateComboBoxes (); void updateColumns (); void show_musicinsertdialog (); gboolean insertfiles (); /* Callback functions declaration */ void on_musicinsertdialog_destroy (GtkObject * object, gpointer user_data); void on_cancelbutton_clicked (GtkButton * button, gpointer user_data); void on_okbutton_clicked (GtkButton * button, gpointer user_data); void on_fileaddbutton_clicked (GtkButton * button, gpointer user_data); void on_diraddbutton_clicked (GtkButton * button, gpointer user_data); void on_radioinsert_toggled (GtkRadioButton * radiobutton, gpointer user_data); void on_radioindex_toggled (GtkRadioButton * radiobutton, gpointer user_data); void on_albumtogglebutton_toggled (GtkToggleButton * togglebutton, gpointer user_data); void on_artisttogglebutton_toggled (GtkToggleButton * togglebutton, gpointer user_data); void on_typetogglebutton_toggled (GtkToggleButton * togglebutton, gpointer user_data); void on_keywordstogglebutton_toggled (GtkToggleButton * togglebutton, gpointer user_data); void on_renderer_edited (GtkCellRendererText * cellrenderertext, gchar * arg1, gchar * arg2, gpointer user_data); gboolean popup_delete (GtkWidget * widget, GdkEventButton * event, gpointer user_data); void remove_file_from_list (gpointer user_data); void select_all_files (gpointer user_data); #endif