1 /* EasyTAG - tag editor for audio files 2 * Copyright (C) 2013-2015 David King <amigadave@amigadave.com> 3 * 4 * This program is free software; you can redistribute it and/or modify it 5 * under the terms of the GNU General Public License as published by the Free 6 * Software Foundation; either version 2 of the License, or (at your option) 7 * any later version. 8 * 9 * This program is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 * more details. 13 * 14 * You should have received a copy of the GNU General Public License along with 15 * this program; if not, write to the Free Software Foundation, Inc., 51 16 * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 17 */ 18 19 #ifndef ET_APPLICATION_WINDOW_H_ 20 #define ET_APPLICATION_WINDOW_H_ 21 22 #include <gtk/gtk.h> 23 24 G_BEGIN_DECLS 25 26 #include "et_core.h" 27 28 #define ET_TYPE_APPLICATION_WINDOW (et_application_window_get_type ()) 29 #define ET_APPLICATION_WINDOW(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), ET_TYPE_APPLICATION_WINDOW, EtApplicationWindow)) 30 31 typedef struct _EtApplicationWindow EtApplicationWindow; 32 typedef struct _EtApplicationWindowClass EtApplicationWindowClass; 33 34 struct _EtApplicationWindow 35 { 36 /*< private >*/ 37 GtkApplicationWindow parent_instance; 38 }; 39 40 struct _EtApplicationWindowClass 41 { 42 /*< private >*/ 43 GtkApplicationWindowClass parent_class; 44 }; 45 46 GType et_application_window_get_type (void); 47 EtApplicationWindow *et_application_window_new (GtkApplication *application); 48 File_Tag * et_application_window_tag_area_create_file_tag (EtApplicationWindow *self); 49 gboolean et_application_window_tag_area_display_et_file (EtApplicationWindow *self, const ET_File *ETFile); 50 void et_application_window_tag_area_clear (EtApplicationWindow *self); 51 void et_application_window_tag_area_set_sensitive (EtApplicationWindow *self, gboolean sensitive); 52 const gchar * et_application_window_file_area_get_filename (EtApplicationWindow *self); 53 void et_application_window_file_area_set_file_fields (EtApplicationWindow *self, const ET_File *ETFile); 54 void et_application_window_file_area_set_header_fields (EtApplicationWindow *self, EtFileHeaderFields *fields); 55 void et_application_window_file_area_clear (EtApplicationWindow *self); 56 void et_application_window_file_area_set_sensitive (EtApplicationWindow *self, gboolean sensitive); 57 void et_application_window_disable_command_actions (EtApplicationWindow *self); 58 void et_application_window_update_actions (EtApplicationWindow *self); 59 void et_application_window_set_busy_cursor (EtApplicationWindow *self); 60 void et_application_window_set_normal_cursor (EtApplicationWindow *self); 61 void et_application_window_tag_area_display_controls (EtApplicationWindow *self, const ET_File *ETFile); 62 GtkWidget * et_application_window_get_log_area (EtApplicationWindow *self); 63 void et_application_window_show_preferences_dialog_scanner (EtApplicationWindow *self); 64 void et_application_window_browser_toggle_display_mode (EtApplicationWindow *self); 65 void et_application_window_browser_set_sensitive (EtApplicationWindow *self, gboolean sensitive); 66 void et_application_window_browser_clear (EtApplicationWindow *self); 67 void et_application_window_browser_clear_album_model (EtApplicationWindow *self); 68 void et_application_window_browser_clear_artist_model (EtApplicationWindow *self); 69 void et_application_window_select_dir (EtApplicationWindow *self, GFile *file); 70 void et_application_window_select_file_by_et_file (EtApplicationWindow *self, ET_File *ETFile); 71 GFile * et_application_window_get_current_path (EtApplicationWindow *self); 72 GtkWidget * et_application_window_get_scan_dialog (EtApplicationWindow *self); 73 void et_application_window_apply_changes (EtApplicationWindow *self); 74 void et_application_window_browser_entry_set_text (EtApplicationWindow *self, const gchar *text); 75 void et_application_window_browser_label_set_text (EtApplicationWindow *self, const gchar *text); 76 ET_File * et_application_window_browser_get_et_file_from_path (EtApplicationWindow *self, GtkTreePath *path); 77 ET_File * et_application_window_browser_get_et_file_from_iter (EtApplicationWindow *self, GtkTreeIter *iter); 78 GtkTreeSelection * et_application_window_browser_get_selection (EtApplicationWindow *self); 79 GtkTreeViewColumn *et_application_window_browser_get_column_for_column_id (EtApplicationWindow *self, gint column_id); 80 GtkSortType et_application_window_browser_get_sort_order_for_column_id (EtApplicationWindow *self, gint column_id); 81 void et_application_window_browser_select_file_by_iter_string (EtApplicationWindow *self, const gchar *iter_string, gboolean select); 82 void et_application_window_update_et_file_from_ui (EtApplicationWindow *self); 83 void et_application_window_display_et_file (EtApplicationWindow *self, ET_File *ETFile); 84 void et_application_window_browser_select_file_by_et_file (EtApplicationWindow *self, const ET_File *file, gboolean select); 85 GtkTreePath * et_application_window_browser_select_file_by_et_file2 (EtApplicationWindow *self, const ET_File *file, gboolean select, GtkTreePath *start_path); 86 ET_File * et_application_window_browser_select_file_by_dlm (EtApplicationWindow *self, const gchar *string, gboolean select); 87 void et_application_window_browser_unselect_all (EtApplicationWindow *self); 88 void et_application_window_browser_refresh_list (EtApplicationWindow *self); 89 void et_application_window_browser_refresh_file_in_list (EtApplicationWindow *self, const ET_File *file); 90 void et_application_window_scan_dialog_update_previews (EtApplicationWindow *self); 91 void et_application_window_progress_set_fraction (EtApplicationWindow *self, gdouble fraction); 92 void et_application_window_progress_set_text (EtApplicationWindow *self, const gchar *text); 93 void et_application_window_status_bar_message (EtApplicationWindow *self, const gchar *message, gboolean with_timer); 94 void et_application_window_quit (EtApplicationWindow *self); 95 96 G_END_DECLS 97 98 #endif /* !ET_APPLICATION_WINDOW_H_ */ 99