mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-09-02 18:23:56 +00:00
make sure we get everythign we need from the XML file
This commit is contained in:
parent
2cb291b191
commit
feca823168
2 changed files with 20 additions and 10 deletions
|
@ -28,6 +28,7 @@ typedef struct App
|
||||||
GESTimelinePipeline *pipeline;
|
GESTimelinePipeline *pipeline;
|
||||||
GESTimelineLayer *layer;
|
GESTimelineLayer *layer;
|
||||||
GtkWidget *main_window;
|
GtkWidget *main_window;
|
||||||
|
GtkListStore *model;
|
||||||
} App;
|
} App;
|
||||||
|
|
||||||
App *app_new (void);
|
App *app_new (void);
|
||||||
|
@ -44,7 +45,7 @@ void delete_item_activate_cb (GtkMenuItem * item, App * app);
|
||||||
|
|
||||||
void add_file_item_activate_cb (GtkMenuItem * item, App * app);
|
void add_file_item_activate_cb (GtkMenuItem * item, App * app);
|
||||||
|
|
||||||
GtkWidget *create_ui (App * app);
|
gboolean create_ui (App * app);
|
||||||
|
|
||||||
/* signal handlers **********************************************************/
|
/* signal handlers **********************************************************/
|
||||||
|
|
||||||
|
@ -121,7 +122,7 @@ app_new (void)
|
||||||
if (!(ges_timeline_add_layer (ret->timeline, ret->layer)))
|
if (!(ges_timeline_add_layer (ret->timeline, ret->layer)))
|
||||||
goto fail;
|
goto fail;
|
||||||
|
|
||||||
if (!(ret->main_window = create_ui (ret)))
|
if (!(create_ui (ret)))
|
||||||
goto fail;
|
goto fail;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -162,26 +163,35 @@ layer_object_removed_cb (GESTimelineLayer * layer, GESTimelineObject * object,
|
||||||
|
|
||||||
/* Layout *******************************************************************/
|
/* Layout *******************************************************************/
|
||||||
|
|
||||||
GtkWidget *
|
gboolean
|
||||||
create_ui (App * app)
|
create_ui (App * app)
|
||||||
{
|
{
|
||||||
GtkBuilder *builder;
|
GtkBuilder *builder;
|
||||||
GtkWidget *window;
|
|
||||||
|
|
||||||
builder = gtk_builder_new ();
|
builder = gtk_builder_new ();
|
||||||
gtk_builder_add_from_file (builder, "ges-ui.glade", NULL);
|
gtk_builder_add_from_file (builder, "ges-ui.glade", NULL);
|
||||||
window = GTK_WIDGET (gtk_builder_get_object (builder, "window"));
|
|
||||||
|
app->main_window = GTK_WIDGET (gtk_builder_get_object (builder, "window"));
|
||||||
|
app->model =
|
||||||
|
GTK_LIST_STORE (gtk_builder_get_object (builder, "timeline_model"));
|
||||||
|
|
||||||
|
if (!(app->main_window && app->model)) {
|
||||||
|
g_print ("Could not retrieve all widgets from the XML");
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
gtk_builder_connect_signals (builder, app);
|
gtk_builder_connect_signals (builder, app);
|
||||||
|
|
||||||
g_object_unref (G_OBJECT (builder));
|
g_object_unref (G_OBJECT (builder));
|
||||||
|
|
||||||
gtk_widget_show (window);
|
gtk_widget_show (app->main_window);
|
||||||
|
|
||||||
g_signal_connect (app->layer, "object-added",
|
g_signal_connect (app->layer, "object-added",
|
||||||
G_CALLBACK (layer_object_added_cb), app);
|
G_CALLBACK (layer_object_added_cb), app);
|
||||||
g_signal_connect (app->layer, "object-removed",
|
g_signal_connect (app->layer, "object-removed",
|
||||||
G_CALLBACK (layer_object_removed_cb), app);
|
G_CALLBACK (layer_object_removed_cb), app);
|
||||||
|
|
||||||
return window;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* main *********************************************************************/
|
/* main *********************************************************************/
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<interface>
|
<interface>
|
||||||
<requires lib="gtk+" version="2.16"/>
|
<requires lib="gtk+" version="2.16"/>
|
||||||
<!-- interface-naming-policy project-wide -->
|
<!-- interface-naming-policy project-wide -->
|
||||||
<object class="GtkListStore" id="timeline">
|
<object class="GtkListStore" id="timeline_model">
|
||||||
<columns>
|
<columns>
|
||||||
<!-- column-name Clip -->
|
<!-- column-name Clip -->
|
||||||
<column type="gchararray"/>
|
<column type="gchararray"/>
|
||||||
|
@ -183,10 +183,10 @@
|
||||||
<property name="can_focus">True</property>
|
<property name="can_focus">True</property>
|
||||||
<property name="shadow_type">in</property>
|
<property name="shadow_type">in</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkTreeView" id="treeview1">
|
<object class="GtkTreeView" id="timeline_treeview">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can_focus">True</property>
|
<property name="can_focus">True</property>
|
||||||
<property name="model">timeline</property>
|
<property name="model">timeline_model</property>
|
||||||
<property name="search_column">0</property>
|
<property name="search_column">0</property>
|
||||||
<property name="show_expanders">False</property>
|
<property name="show_expanders">False</property>
|
||||||
<child>
|
<child>
|
||||||
|
|
Loading…
Reference in a new issue