43
43
#include "ADM_codecs/ADM_codec.h"
44
44
#include "ADM_gui2/GUI_ui.h"
46
#include "ADM_toolkit/filesel.h"
47
#include "ADM_editor/ADM_Video.h"
46
49
void frame2time(uint32_t frame, uint32_t fps, uint16_t * hh, uint16_t * mm,
47
50
uint16_t * ss, uint16_t * ms);
70
73
static GtkAdjustment *sliderAdjustment;
75
extern void A_openAvi (char *name);
76
extern void A_appendAvi (char *name);
92
static GtkTargetEntry target_table[] =
94
{ "STRING", 0, TARGET_STRING },
95
{ "text/plain", 0, TARGET_STRING },
96
{ "text/uri-list", 0, TARGET_URL },
97
{ "application/x-rootwin-drop", 0, TARGET_ROOTWIN }
99
// CYB 2005.02.22: DND (END)
102
static void DNDDataReceived( GtkWidget *widget, GdkDragContext *dc,
103
gint x, gint y, GtkSelectionData *selection_data, guint info, guint t);
105
extern aviInfo *avifileinfo;
73
106
extern GtkWidget *create_mainWindow (void);
74
107
extern void guiCallback(GtkMenuItem * menuitem, gpointer user_data);
75
108
extern void HandleAction(Action act);
76
109
extern void UI_on_key_press(GtkWidget *widget, GdkEventKey* event, gpointer user_data);
110
extern void fileReadWrite(SELFILE_CB cb, int rw, char *name);
77
112
// To build vcodec
78
113
extern uint32_t encoderGetNbEncoder(void);
79
114
extern const char* encoderGetIndexedName(uint32_t i);
311
346
gtk_container_add (GTK_CONTAINER (menua), audWidget[i]);
313
348
gtk_option_menu_set_menu (GTK_OPTION_MENU (lookup_widget(guiRootWindow,"optionACodec")), menua);
351
//CYB 2005.02.22: DND (START)
352
// Set up avidemux as an available drag'n'drop target.
353
gtk_drag_dest_set(guiRootWindow,
354
GTK_DEST_DEFAULT_ALL,
355
target_table,sizeof(target_table)/sizeof(GtkTargetEntry),
356
(GdkDragAction)(GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_DEFAULT));
357
g_signal_connect(GTK_OBJECT(guiRootWindow), "drag_data_received",
358
GTK_SIGNAL_FUNC(DNDDataReceived),NULL);
359
//CYB 2005.02.22: DND (END)
666
711
gtk_option_menu_set_history(GTK_OPTION_MENU(lookup_widget(guiRootWindow,"optionmenu1")), fmt);
715
void DNDDataReceived( GtkWidget *widget, GdkDragContext *dc,
716
gint x, gint y, GtkSelectionData *selection_data, guint info, guint t)
722
if (info == TARGET_URI_LIST)
724
start = strstr((char*)selection_data->data,"file://");
730
end = strstr((char*)start+1,"file://");
733
end = start + strlen(start);
737
filename = ADM_alloc(end-start);
740
memset(filename,0,end-start);
741
memcpy(filename,start+7,end-start-7-2);
744
// Append video when there's already something
745
fileReadWrite(A_appendAvi, 0, (char*)filename);
749
fileReadWrite(A_openAvi, 0, (char*)filename);
752
ADM_dealloc(filename);
762
gtk_drag_finish(dc,TRUE,FALSE,t);