diff options
Diffstat (limited to 'src/cddb.h')
-rw-r--r-- | src/cddb.h | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/src/cddb.h b/src/cddb.h new file mode 100644 index 0000000..9bcfd69 --- /dev/null +++ b/src/cddb.h @@ -0,0 +1,130 @@ +/* cddb.h - 2002/09/15 */ +/* + * EasyTAG - Tag editor for MP3 and Ogg Vorbis files + * Copyright (C) 2000-2003 Jerome Couderc <easytag@gmail.com> + * + * This program 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 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + + +#ifndef __CDDB_H__ +#define __CDDB_H__ + + +/**************** + * Declarations * + ****************/ + +GtkWidget *CddbWindow; +GtkWidget *CddbWindowHPaned; + +GtkWidget *CddbSearchInAllFields; +GtkWidget *CddbSearchInArtistField; +GtkWidget *CddbSearchInTitleField; +GtkWidget *CddbSearchInTrackNameField; +GtkWidget *CddbSearchInOtherField; + +GtkWidget *CddbSeparatorH; +GtkWidget *CddbSeparatorV; +GtkWidget *CddbShowCategoriesButton; + +GtkWidget *CddbSearchInAllCategories; +GtkWidget *CddbSearchInBluesCategory; +GtkWidget *CddbSearchInClassicalCategory; +GtkWidget *CddbSearchInCountryCategory; +GtkWidget *CddbSearchInFolkCategory; +GtkWidget *CddbSearchInJazzCategory; +GtkWidget *CddbSearchInMiscCategory; +GtkWidget *CddbSearchInNewageCategory; +GtkWidget *CddbSearchInReggaeCategory; +GtkWidget *CddbSearchInRockCategory; +GtkWidget *CddbSearchInSoundtrackCategory; + +GtkWidget *CddbSetToAllFields; +GtkWidget *CddbSetToTitle; +GtkWidget *CddbSetToArtist; +GtkWidget *CddbSetToAlbum; +GtkWidget *CddbSetToYear; +GtkWidget *CddbSetToTrack; +GtkWidget *CddbSetToTrackTotal; +GtkWidget *CddbSetToGenre; +GtkWidget *CddbSetToFileName; + +GtkWidget *CddbRunScanner; +GtkWidget *CddbUseDLM2; // '2' as also used in the prefs.c +GtkWidget *CddbUseLocalAccess; + + + +/* + * Structure used for each item of the album list. Aslo attached to each row of the album list + */ +typedef struct _CddbAlbum CddbAlbum; +struct _CddbAlbum +{ + gchar *server_name; /* Remote access : Param of server name used for the connection - Local access : NULL */ + gint server_port; /* Remote access : Param of server port used for the connection - Local access : 0 */ + gchar *server_cgi_path; /* Remote access : Param of server cgi path used for the connection - Local access : discid file path */ + + GdkPixbuf *bitmap; /* Pixmap corresponding to the server */ + + gchar *artist_album; /* CDDB artist+album (allocated) */ + gchar *category; /* CDDB genre (allocated) */ + gchar *id; /* example : 8d0de30c (allocated) */ + GList *track_list; /* List of tracks name of the album (list of CddbTrackAlbum items) */ + gboolean other_version; /* To TRUE if this album is an other version of the previous one */ + + // We fill these data when loading the track list + gchar *artist; /* (allocated) */ + gchar *album; /* (allocated) */ + gchar *genre; /* (allocated) */ + gchar *year; /* (allocated) */ + guint duration; +}; + + +/* + * Structure used for each item of the track_list of the CddbAlbum structure. + */ +typedef struct _CddbTrackAlbum CddbTrackAlbum; +struct _CddbTrackAlbum +{ + guint track_number; + gchar *track_name; /* (allocated) */ + guint duration; + CddbAlbum *cddbalbum; /* Pointer to the parent CddbAlbum structure (to access quickly to album properties) */ +}; + + +typedef struct _CddbTrackFrameOffset CddbTrackFrameOffset; +struct _CddbTrackFrameOffset +{ + gulong offset; +}; + + + +/************** + * Prototypes * + **************/ + +void Init_CddbWindow (void); +void Open_Cddb_Window (void); +void Cddb_Popup_Menu_Search_Selected_File (void); +void Cddb_Window_Apply_Changes (void); + + + +#endif /* __CDDB_H__ */ |