diff --git a/veejay-current/veejay-client/share/gveejay.reloaded.glade b/veejay-current/veejay-client/share/gveejay.reloaded.glade
index 4b3e07a9..2b2d055e 100644
--- a/veejay-current/veejay-client/share/gveejay.reloaded.glade
+++ b/veejay-current/veejay-client/share/gveejay.reloaded.glade
@@ -4311,7 +4311,7 @@
-
+
True
0.5
0.5
@@ -4323,13 +4323,13 @@
0
-
+
True
False
2
-
+
True
button_text.png
0.5
@@ -4345,9 +4345,9 @@
-
+
True
-
+ Add
True
False
GTK_JUSTIFY_LEFT
@@ -4686,9 +4686,9 @@
-
+
True
- Edit subtitle
+ Edit SRT [NUM]
False
False
GTK_JUSTIFY_LEFT
@@ -5933,8 +5933,7 @@
True
- True
- True
+ False
False
GTK_POS_TOP
False
@@ -6315,7 +6314,6 @@
- 120
True
MJPEG
LJPEG Lossless JPEG
@@ -8414,20 +8412,22 @@ Y4M420 YUV4MPEG 4:2:0 (mjpegtools)
- 120
True
- VJ20 (YUV 4:2:0 Planar 0-255/0-255)
-VJ22 (YUV 4:2:2 Planar 0-255/0-255)
-MJPEG
+ MJPEG
+LJPEG Lossless JPEG
DVVIDEO
MPEG4
MSMPEG4V3
-YV16 (YCbCr 4:2:2 Planar, 16-235/16-240)
-I420 (YCbCr 4:2:0 Planar, 16-235/16-240)
+YV16 (YCbCr 4:2:2 Planar CCIR 601)
+I420 (YCbCr 4:2:0 Planar CCIR 601)
+VJ20 (YCbCr 4:2:0 Planar JPEG/JFIF)
+VJ22 (YCbCr 4:2:2 Planar JPEG/JFIF)
Quicktime-DV
Quicktime-MJPEG
-MLZO
-YUV (current)
+MLZO (Oberhumer LZO)
+YUV (current internal processing format)
+Y4M422 YUV4MPEG 4:2:2
+Y4M420 YUV4MPEG 4:2:0 (mjpegtools)
False
True
True
diff --git a/veejay-current/veejay-client/share/gveejay.reloaded.glade.bak b/veejay-current/veejay-client/share/gveejay.reloaded.glade.bak
index 980cf633..ee605e30 100644
--- a/veejay-current/veejay-client/share/gveejay.reloaded.glade.bak
+++ b/veejay-current/veejay-client/share/gveejay.reloaded.glade.bak
@@ -4311,7 +4311,7 @@
-
+
True
0.5
0.5
@@ -4323,13 +4323,13 @@
0
-
+
True
False
2
-
+
True
button_text.png
0.5
@@ -4345,9 +4345,9 @@
-
+
True
-
+ Add
True
False
GTK_JUSTIFY_LEFT
@@ -4686,9 +4686,9 @@
-
+
True
- Edit subtitle
+ Edit SRT [NUM]
False
False
GTK_JUSTIFY_LEFT
@@ -6317,18 +6317,21 @@
120
True
- VJ20 (YUV 4:2:0 Planar)
-VJ22 (YUV 4:2:2 Planar)
-MJPEG
+ MJPEG
+LJPEG Lossless JPEG
DVVIDEO
MPEG4
MSMPEG4V3
-YV16 (YCbCr 4:2:2 Planar)
-I420 (YCbCr 4:2:0 Planar)
+YV16 (YCbCr 4:2:2 Planar CCIR 601)
+I420 (YCbCr 4:2:0 Planar CCIR 601)
+VJ20 (YCbCr 4:2:0 Planar JPEG/JFIF)
+VJ22 (YCbCr 4:2:2 Planar JPEG/JFIF)
Quicktime-DV
Quicktime-MJPEG
-MLZO
-YUV (current)
+MLZO (Oberhumer LZO)
+YUV (current internal processing format)
+Y4M422 YUV4MPEG 4:2:2
+Y4M420 YUV4MPEG 4:2:0 (mjpegtools)
False
True
True
diff --git a/veejay-current/veejay-client/src/callback.c b/veejay-current/veejay-client/src/callback.c
index 910828df..a34e29df 100644
--- a/veejay-current/veejay-client/src/callback.c
+++ b/veejay-current/veejay-client/src/callback.c
@@ -2825,7 +2825,7 @@ on_vims_messenger_single_clicked( void )
}
}
-static void srt_load_subtitle(int sid)
+static gint srt_load_subtitle(int sid)
{
gint len = 0;
gint seq_id = 0;
@@ -2931,10 +2931,15 @@ static void srt_load_subtitle(int sid)
// glade_xml_get_widget( info->main_window, "combobox_textsrt" );
// gtk_combo_box_set_active( GTK_COMBO_BOX( combo ), seq_id-1 );
+ if(len > 0 )
+ enable_widget( "SRTframe");
+
srt_locked_ = 0;
if(text) free(text);
+
+ return seq_id;
}
void on_button_text_new_clicked( GtkWidget *w, gpointer data )
@@ -2974,6 +2979,7 @@ void on_button_text_new_clicked( GtkWidget *w, gpointer data )
free(text);
if( id > 0 )
info->uc.reload_hint[HINT_HISTORY] = 1;
+
}
void on_button_text_del_clicked( GtkWidget *w, gpointer data )
@@ -3109,7 +3115,10 @@ void on_combobox_textsrt_changed( GtkWidget *w, gpointer data)
{
multi_vims( VIMS_SRT_SELECT, "%d", sid );
srt_seq_ = sid;
- srt_load_subtitle(sid);
+ gint res = srt_load_subtitle(sid);
+ char text[32];
+ sprintf(text, "Edit SRT %d", res );
+ update_label_str( "srtid_label", text );
}
}
diff --git a/veejay-current/veejay-client/src/gveejay.c b/veejay-current/veejay-client/src/gveejay.c
index 97a4c908..b26354fe 100644
--- a/veejay-current/veejay-client/src/gveejay.c
+++ b/veejay-current/veejay-client/src/gveejay.c
@@ -41,7 +41,7 @@ static int gveejay_theme = 1;
static int verbosity = 0;
static int col = 0;
static int row = 0;
-static int n_tracks = 2;
+static int n_tracks = 4;
static int launcher = 0;
static int pw = 176;
static int ph = 144;
diff --git a/veejay-current/veejay-client/src/tracksources.c b/veejay-current/veejay-client/src/tracksources.c
index 021ac189..47cb0dfb 100644
--- a/veejay-current/veejay-client/src/tracksources.c
+++ b/veejay-current/veejay-client/src/tracksources.c
@@ -24,7 +24,7 @@ extern void veejay_release_track(int id, int release_this);
extern void veejay_bind_track( int id, int bind_this );
extern int multitrack_get_sequence_view_id( void *data );
extern gchar *_utf8str( const char *c_str );
-
+extern void set_widget_color( GtkWidget *widget , int red, int green, int blue, int def );
typedef struct
{
int track_id;
@@ -60,15 +60,17 @@ static void cell_toggled_callback( GtkCellRenderer *cell, gchar *path_string, gp
int id_data = -1; // invalid
char junk[32];
- if(sscanf( data, "%s %d", junk,&id_data ) == 2 )
+ if(sscanf( data, "%d", &id_data ) == 1 )
{
if( gtk_cell_renderer_toggle_get_active( GTK_CELL_RENDERER_TOGGLE( cell) ) )
{
veejay_release_track( v->track_id, id_data);
+// set_widget_color( v->view, 0,255,0,0);
}
else
{
veejay_bind_track( v->track_id, id_data );
+// set_widget_color( v->view, 0,0,0,1 );
}
g_free(data);
}
@@ -93,7 +95,7 @@ void update_track_view( int n_tracks, GtkWidget *widget, void *user_data )
if(id != i)
{
char name[12];
- sprintf(name,"Track %d", i);
+ sprintf(name,"%d", i);
gchar *uname = _utf8str( name );
gtk_list_store_append( store, &iter );
gtk_list_store_set(
@@ -148,11 +150,11 @@ void *create_track_view(int track_id, int ref_tracks, void *user_data)
// GtkWidget *col = gtk_tree_view_get_column( GTK_TREE_VIEW(view) , 0 );
GtkTreeViewColumn *col = gtk_tree_view_get_column( GTK_TREE_VIEW(view),0);
- gtk_tree_view_column_set_fixed_width( col , 20 );
+ gtk_tree_view_column_set_fixed_width( col , 5 );
col = gtk_tree_view_get_column( GTK_TREE_VIEW( view ), 1 );
gtk_tree_view_column_set_clickable( col , TRUE );
- gtk_tree_view_column_set_fixed_width( col , 10 );
+ gtk_tree_view_column_set_fixed_width( col , 20 );
gtk_tree_view_column_set_cell_data_func( col,
wrenderer, cell_data_func, NULL,NULL);
@@ -168,7 +170,7 @@ void *create_track_view(int track_id, int ref_tracks, void *user_data)
if( i != track_id )
{
char str[16];
- sprintf(str,"Track %d",i);
+ sprintf(str,"%d",i);
gchar *ustr = _utf8str( str );
gtk_list_store_append( store, &iter );
gtk_list_store_set( store, &iter,
diff --git a/veejay-current/veejay-client/src/vj-api.c b/veejay-current/veejay-client/src/vj-api.c
index c58f0209..5f257e58 100644
--- a/veejay-current/veejay-client/src/vj-api.c
+++ b/veejay-current/veejay-client/src/vj-api.c
@@ -104,13 +104,15 @@ static struct
{"Mouse left: Set in point, Mouse right: Set out point, Double click: Clear selected, Mouse middle: Drag selection"},
{"Mouse left/right: Play slot, Shift + Mouse left: Put sample in slot. You can also put selected samples."},
{"Mouse left click: Select slot (sample in slot), Mouse double click: Play sample in slot, Mouse left + SHIFT: Set slot as mixing current mixing channel"},
+ {"Select a SRT sequence to edit"},
{NULL},
};
enum {
TOOLTIP_TIMELINE = 0,
TOOLTIP_QUICKSELECT = 1,
- TOOLTIP_SAMPLESLOT = 2
+ TOOLTIP_SAMPLESLOT = 2,
+ TOOLTIP_SRTSELECT = 3
};
enum
@@ -4772,9 +4774,6 @@ static void reload_srt()
gchar *p = srts;
gchar *token = NULL;
- if(len > 0 )
- enable_widget( "SRTframe");
-
while( i < len )
{
token = tokenize_on_space( p );
@@ -6621,6 +6620,9 @@ void vj_gui_init(char *glade_file, int launcher, char *hostname, int port_num,
info->midi = vj_midi_new( info->main_window );
gettimeofday( &(info->time_last) , 0 );
+ GtkWidget *srtbox = glade_xml_get_widget( info->main_window, "combobox_textsrt");
+ set_tooltip_by_widget( srtbox, tooltips[TOOLTIP_SRTSELECT].text);
+
}
void vj_gui_preview(void)
@@ -7628,6 +7630,22 @@ static void indicate_sequence( gboolean active, sequence_gui_slot_t *slot )
/* --------------------------------------------------------------------------------------------------------------------------
* Function that handles to select/activate a special slot in the samplebank
-------------------------------------------------------------------------------------------------------------------------- */
+
+void set_widget_color( GtkWidget *widget , int red, int green, int blue, int def )
+{
+ GdkColor color;
+ if( def ) {
+ color.red = info->fg_->red;
+ color.green = info->fg_->green;
+ color.blue = info->fg_->blue;
+ } else {
+ color.red = red;
+ color.green = green;
+ color.blue = blue;
+ }
+ gtk_widget_modify_fg ( GTK_WIDGET(widget),GTK_STATE_NORMAL, &color );
+}
+
static void set_activation_of_slot_in_samplebank( gboolean activate)
{
if(!info->selected_gui_slot || !info->selected_slot )
@@ -7838,5 +7856,8 @@ void veejay_release_track(int id, int release_this)
void veejay_bind_track( int id, int bind_this )
{
- multitrack_bind_track(info->mt, id, bind_this );
+ multitrack_bind_track(info->mt, id, bind_this );
+ info->uc.reload_hint[HINT_SLIST] =1;
+
+
}