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

Reply via email to