Logo Search packages:      
Sourcecode: xcfa version File versions

split.h

 /*
 * file      : split.h
 * project   : xcfa
 * with      : Gtk-2
 *
 * copyright : (C) 2003,2004,2005,2006,2007,2008,2009 by Claude Bulin
 *
 * xcfa - GTK+ implementation of the GNU shell command
 * GNU General Public License
 *
 * 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
 * OLD ADRESS:
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 * NEW ADRESS:
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
 *
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 * 
 */


#ifndef __split_h__
#define __split_h__ 1

#include "file.h" 

typedef enum {
      SPLIT_SELECT_IS_NONE = 0,
      SPLIT_SELECT_IS_FILE,
      SPLIT_SELECT_IS_TACHE_MODIFIER,
      SPLIT_SELECT_IS_TACHE_AJOUTER
} SPLIT_SELECT;

typedef struct {
      
      GtkComboBox       *AdrComboboxDest;       /* Adresse Combo destination fichiers           */
      
      GtkSpinButton           *AdrSpinbuttonHeuresDebut;    /* Adresse                          */
      GtkSpinButton           *AdrSpinbuttonHeuresFin;      /* Adresse                          */
      GtkSpinButton           *AdrSpinbuttonMinutesDebut;   /* Adresse                          */
      GtkSpinButton           *AdrSpinbuttonMinutesFin;     /* Adresse                          */
      GtkSpinButton           *AdrSpinbuttonSecondesDebut;  /* Adresse                          */
      GtkSpinButton           *AdrSpinbuttonSecondesFin;    /* Adresse                          */
      
      GtkWidget         *Adr_scroll;                  /* Adresse scroll                   */
      GtkListStore            *Adr_List_Store;        /* Adresse list store                     */
      GtkTreeModel            *Adr_Tree_Model;        /* Adresse tree model                     */
      GtkTreeSelection  *Adr_Line_Selected;           /* Adresse line selected                  */
      GtkWidget         *Adr_TreeView;                /* Adresse tree view                      */
      
      GtkWidget         *Adr_Details_scroll;
      GtkListStore            *Adr_Details_List_Store;
      GtkTreeModel            *Adr_Details_Tree_Model;
      GtkTreeSelection  *Adr_Details_Line_Selected;
      GtkWidget         *Adr_Details_TreeView;
      
      GtkWidget         *AdrButtonPlay;               /* Adresse bouton Play                    */
      GtkWidget         *AdrButtonStop;               /* Adresse bouton Stop                    */
      
      GtkWidget         *AdrHscaleFromSplit;          /* Adresse HscaleFromSplit                */
      GtkWidget         *AdrLabelMarkA;               /* Adresse LabelMarkA                     */
      GtkWidget         *AdrLabelMarkB;               /* Adresse LabelMarkB                     */
      
      GtkWidget         *AdrJogg;               /* Adresse  Jogg                    */
      
      GtkCellRenderer         *renderer;              /* Adresse renderer SPLIT_NAME_FILE       */
      GtkCellRenderer         *rendererDetails;       /* Adresse renderer SPLIT_DETAILS_NAME_FILE     */
      
      GtkWidget         *AdrHscaleFrom;               /* Adresse HscaleFrom                     */
      GtkWidget         *AdrLabelDepuis;        /* Adresse LabelDepuis                    */
      GtkObject         *AdrAdjustDepuis;       /* Adresse AdjustDepuis                   */
      
      gdouble                 *AdrValueMarkA;               /* &info->ValueMark.ValueMarkA                  */
      gdouble                 *AdrValueMarkB;               /* &info->ValueMark.ValueMarkB                  */
      gdouble                 *AdrValue;              /* &info->ValueMark.Value                 */
      
      GtkTreeViewColumn *Adr_ColumnSplitActivate;     /* Adresse TreeView Type                  */
      GtkTreeViewColumn *Adr_ColumnSplitCoupes;       /* Adresse TreeView Type                  */
      GtkTreeViewColumn *Adr_ColumnSplitType;         /* Adresse TreeView Type                  */
      GtkTreeViewColumn *Adr_ColumnSplitTime;         /* Adresse TreeView Time                  */
      GtkTreeViewColumn *Adr_ColumnSplitName;         /* Adresse TreeView Name                  */
      GtkTreeViewColumn *Adr_ColumnSplitDetailsName;  /* Adresse TreeView Name                  */
      
      DETAIL                  *DetailActif;
      guint              HandlerTimeout;
      gchar             *Dummy;                       /* Nom du fichier CUE                     */
      gchar             *TmpRep;

      SPLIT_SELECT             SplitSelect;                 /* Etat de la selection dans Split        */
      
} VAR_SPLIT;

extern VAR_SPLIT VarSplit;



typedef enum {
      _SPLIT_TYPE_BEGIN_ZERO_ = 0,                    /**/
      _SPLIT_TYPE_ELSE_,                              /**/
      _SPLIT_TYPE_OGG_,                         /**/
      _SPLIT_TYPE_MP3_                          /**/
} SPLIT_TYPE_STRUCT;

typedef struct {
      gdouble                  TimeDebut;             /* Temps debut                      */
      gdouble                  TimeFin;               /* Temps fin                        */
      GList             *list;                        /* Fichier CUE | action pour OGG et MP3   */
      gchar             *StrfileBash;                 /* Contenu du futur fichier bash    */
      gchar             *PathNameFileSong;            /* Path + Name of source            */

      gint               NbrAlloc;              /* Nombre total d'allocations       */
      TYPE_FILE_IS             TypeFileIs;                  /* Type du fichier                  */
      SPLIT_TYPE_STRUCT  TypeStruct;                  /* Type de lma structure            */
            
} VAR_SPLIT_ALLOC;

extern VAR_SPLIT_ALLOC *VarSplitAlloc;



/*
*---------------------------------------------------------------------------
* S P L I T . C
*---------------------------------------------------------------------------
*/

/* Make Scrolledwindow */

void         split_scrolledwindow_file_split_realize (GtkWidget *widget);
void         split_decoupe_scrolledwindow_realize (GtkWidget *widget);

/* Make Hscale */

void         split_hbox_from_split_realize (GtkWidget *widget);

/* Labels Hscale */

void         split_label_depuis_split_realize (GtkWidget *widget);

/* Change value */

void         split_hscale_from_split_change_value (gdouble value);

/* Perso */

void         split_affiche_glist (void);
void         split_set_flag_buttons_audio (void);
gint         split_get_pos_struct (void);
void         split_MAJ (void);

void         split_button_lecture_split_clicked (void);
void         split_button_pause_lecture_split_clicked (void);
void         split_button_stop_lecture_split_clicked (void);
void         split_button_debut_lecture_split_clicked (void);
void         split_button_recule_lecture_split_clicked (void);
void         split_button_avance_lecture_split_clicked (void);
void         split_button_fin_lecture_split_clicked (void);
gboolean     split_decoupe_is_elements (void);
gboolean         split_is_dupply (gchar *namefile);

/* combobox -> dest file */

void         split_combobox_dest_split_realize (GtkWidget *widget);
void         split_combobox_dest_split_changed (void);

/* button clicked */

void         split_jogg_event (GdkEvent *event);
void         split_button_importer_split_clicked (void);

FIC_SPLIT   *split_get_ptr_ficsplit (void);
GList       *split_get_glist_ficsplit (void);
GList       *split_ajouter_decoupe_from_file (void);
void         split_button_ajouter_decoupe_clicked (void);
/*******/
void         split_decoupe_button_del_file_clicked (void);
void         split_detail_button_nettoyer_tout_split_clicked (void);
void         split_button_remove_file_split_clicked (void);
void         split_button_nettoyer_tout_split_clicked (void);

void         split_button_import_cue_split_clicked (void);

void         split_button_set_mark_A_split_clicked (void);
void         split_button_set_mark_B_split_clicked (void);

void         split_button_goto_mark_A_split_clicked (void);
void         split_button_goto_mark_B_split_clicked (void);

void         split_label_mark_A_realize (GtkWidget *widget);
void         split_label_mark_B_realize (GtkWidget *widget);
gchar       *split_get_label_mark_A (gdouble ValueMarkA, guint p_TempsTotal);
void         split_set_label_mark_A (gdouble ValueMarkA);
gchar       *split_get_label_mark_B (gdouble ValueMarkB, guint p_TempsTotal);
void         split_set_label_mark_B (gdouble ValueMarkB);

void         split_with_mplayer (gdouble percent);

DETAIL            *split_get_first_line_is_selected (void);
void         split_decoupe_affiche_glist (void);

void         split_spinbutton_set_mark_A_split_value_changed (void);
void         split_spinbutton_set_mark_B_split_value_changed (void);

void         split_copy_mark_A_split_clicked (void);
void         split_copy_mark_B_split_clicked (void);
void         split_coller_mark_A_split_clicked (void);
void         split_coller_mark_B_split_clicked (void);
void         split_set_option (SPLIT_SELECT SplitSelect);
void         split_button_set_mark_B_to_A_split_clicked (void);
void         split_button_set_mark_B_to_A_SYNC_split_clicked (void);
gint             split_get_SPLIT_POINTER_STRUCT (void);
gint             split_get_SPLIT_NBRCOUPE_FILE (void);

/*
*---------------------------------------------------------------------------
* S P L I T _ A C T I O N . C
*---------------------------------------------------------------------------
*/

void         splitaction_button_clicked (void);

/*
*---------------------------------------------------------------------------
* S P L I T _ C U E . C
*---------------------------------------------------------------------------
*/

void         splitcue_button_import_cue_split_clicked (void);
void         splitcue_import_file_cue (gchar *path);


#endif


Generated by  Doxygen 1.6.0   Back to index