1 /* EasyTAG - tag editor for audio files 2 * Copyright (C) 2014 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_TAG_AREA_H_ 20 #define ET_TAG_AREA_H_ 21 22 #include <gtk/gtk.h> 23 24 #include "et_core.h" 25 26 G_BEGIN_DECLS 27 28 #define ET_TYPE_TAG_AREA (et_tag_area_get_type ()) 29 #define ET_TAG_AREA(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), ET_TYPE_TAG_AREA, EtTagArea)) 30 31 typedef struct _EtTagArea EtTagArea; 32 typedef struct _EtTagAreaClass EtTagAreaClass; 33 34 struct _EtTagArea 35 { 36 /*< private >*/ 37 GtkBin parent_instance; 38 }; 39 40 struct _EtTagAreaClass 41 { 42 /*< private >*/ 43 GtkBinClass parent_class; 44 }; 45 46 GType et_tag_area_get_type (void); 47 GtkWidget * et_tag_area_new (void); 48 void et_tag_area_update_controls (EtTagArea *self, const ET_File *ETFile); 49 void et_tag_area_clear (EtTagArea *self); 50 void et_tag_area_title_grab_focus (EtTagArea *self); 51 File_Tag * et_tag_area_create_file_tag (EtTagArea *self); 52 gboolean et_tag_area_display_et_file (EtTagArea *self, const ET_File *ETFile); 53 gboolean et_tag_area_select_all_if_focused (EtTagArea *self, GtkWidget *focused); 54 gboolean et_tag_area_unselect_all_if_focused (EtTagArea *self, GtkWidget *focused); 55 56 void on_entry_populate_popup (GtkEntry *entry, GtkWidget *menu, EtTagArea *self); 57 58 G_END_DECLS 59 60 #endif /* ET_TAG_AREA_H_ */ 61