11.06.11 18:59, Maksym Veremeyenko написав(ла):
[...]
*0003-introduce-clips-page-split.patch* - add UI splitter into the
page_clips
--
________________________________________
Maksym Veremeyenko
>From b29301d007ac3ad0c43ad2fd4fc09c6c5c996b02 Mon Sep 17 00:00:00 2001
From: Maksym Veremeyenko <ve...@m1stereo.tv>
Date: Sat, 11 Jun 2011 16:03:11 +0300
Subject: [PATCH 3/6] introduce clips page split
---
src/interface.c | 44 +++++++++++++++++++++++++++++++++++---------
1 files changed, 35 insertions(+), 9 deletions(-)
diff --git a/src/interface.c b/src/interface.c
index 552c2f5..3720315 100644
--- a/src/interface.c
+++ b/src/interface.c
@@ -493,7 +493,7 @@ create_window_connection (void)
return window_connection;
}
-static void create_pane_status (GtkWidget* parent)
+static GtkWidget* create_pane_status (GtkWidget* parent, GtkWidget* top)
{
int i;
char buf[32];
@@ -506,21 +506,22 @@ static void create_pane_status (GtkWidget* parent)
// create a scrolled area
scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
gtk_widget_show (scrolledwindow);
- gtk_container_add (GTK_CONTAINER (parent), scrolledwindow);
+ if ( parent )
+ gtk_container_add (GTK_CONTAINER (parent), scrolledwindow);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
- GLADE_HOOKUP_OBJECT (parent, scrolledwindow, "scrolledwindow4");
+ GLADE_HOOKUP_OBJECT (top, scrolledwindow, "scrolledwindow4");
// create a viewport
viewport = gtk_viewport_new (NULL, NULL);
gtk_widget_show (viewport);
gtk_container_add (GTK_CONTAINER (scrolledwindow), viewport);
- GLADE_HOOKUP_OBJECT (parent, viewport, "viewport1");
+ GLADE_HOOKUP_OBJECT (top, viewport, "viewport1");
// create a table for displaying radios
table = gtk_table_new (32, 1, FALSE);
gtk_widget_show (table);
gtk_container_add (GTK_CONTAINER (viewport), table);
- GLADE_HOOKUP_OBJECT (parent, table, "table3");
+ GLADE_HOOKUP_OBJECT (top, table, "table3");
for (i = 0; i < 16; i++)
{
@@ -536,7 +537,7 @@ static void create_pane_status (GtkWidget* parent)
gtk_label_set_justify (GTK_LABEL (label_unit), GTK_JUSTIFY_LEFT);
gtk_misc_set_alignment (GTK_MISC (label_unit), 0, 0.5);
snprintf(buf, sizeof(buf), "label_unit_%d", i);
- GLADE_HOOKUP_OBJECT (parent, label_unit, buf);
+ GLADE_HOOKUP_OBJECT (top, label_unit, buf);
// radio button
radiobutton = gtk_radio_button_new_with_mnemonic (NULL, _("<disconnected>"));
@@ -546,8 +547,10 @@ static void create_pane_status (GtkWidget* parent)
gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton), radiobutton_group);
radiobutton_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton));
snprintf(buf, sizeof(buf), "radiobutton_%d", i);
- GLADE_HOOKUP_OBJECT (parent, radiobutton, buf);
+ GLADE_HOOKUP_OBJECT (top, radiobutton, buf);
}
+
+ return scrolledwindow;
}
GtkWidget*
@@ -559,7 +562,7 @@ create_page_status (void)
gtk_window_set_title (GTK_WINDOW (page_status), _("page_status"));
GLADE_HOOKUP_OBJECT_NO_REF (page_status, page_status, "page_status");
- create_pane_status (page_status);
+ create_pane_status (page_status, page_status);
return page_status;
}
@@ -611,13 +614,36 @@ create_page_clips (void)
GtkWidget *image24;
GtkWidget *hbuttonbox5;
GtkWidget *label45;
+ GtkWidget *hpaned0;
+ GtkWidget *frame1, *frame2;
page_clips = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (page_clips), _("page_clips"));
+ hpaned0 = gtk_hpaned_new ();
+ gtk_widget_show (hpaned0);
+ gtk_container_add (GTK_CONTAINER (page_clips), hpaned0);
+ GLADE_HOOKUP_OBJECT (page_clips, hpaned0, "hpaned0");
+
+ frame1 = gtk_frame_new ("Playlist");
+ frame2 = gtk_frame_new ("Units");
+ gtk_frame_set_shadow_type (GTK_FRAME (frame1), GTK_SHADOW_IN);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame2), GTK_SHADOW_IN);
+ gtk_widget_show(frame1);
+ gtk_widget_show(frame2);
+
+ gtk_widget_set_size_request (hpaned0, 200 , -1);
+ gtk_paned_pack1 (GTK_PANED (hpaned0), frame1, TRUE, FALSE);
+ gtk_widget_set_size_request (frame1, 50, -1);
+ gtk_paned_pack2 (GTK_PANED (hpaned0), frame2, FALSE, FALSE);
+ gtk_widget_set_size_request (frame2, 250, -1);
+
+// create_pane_status (page_clips, frame2);
+// GLADE_HOOKUP_OBJECT_NO_REF (page_status, page_status, "page_status");
+
vbox8 = gtk_vbox_new (FALSE, 0);
gtk_widget_show (vbox8);
- gtk_container_add (GTK_CONTAINER (page_clips), vbox8);
+ gtk_container_add (GTK_CONTAINER (frame1), vbox8);
hbox26 = gtk_hbox_new (FALSE, 0);
gtk_widget_show (hbox26);
--
1.7.4.4
------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
Mlt-devel mailing list
Mlt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlt-devel