Use tree-view instead of notebook tabs for test case navigation. Support
2007-08-06 Mathias Hasselmann <mathias.hasselmann@gmx.de> * tests/testextendedlayout.c: Use tree-view instead of notebook tabs for test case navigation. Support running a sub-set of tests. Display plug-id of sockets as tooltip. svn path=/branches/extended-layout/; revision=18578
This commit is contained in:
committed by
Mathias Hasselmann
parent
5381af6306
commit
52db2766c3
@@ -1,3 +1,9 @@
|
||||
2007-08-06 Mathias Hasselmann <mathias.hasselmann@gmx.de>
|
||||
|
||||
* tests/testextendedlayout.c: Use tree-view instead of notebook
|
||||
tabs for test case navigation. Support running a sub-set of tests.
|
||||
Display plug-id of sockets as tooltip.
|
||||
|
||||
2007-08-06 Mathias Hasselmann <mathias.hasselmann@gmx.de>
|
||||
|
||||
* tests/testextendedlayout.c: Improve layout of natural size for
|
||||
|
||||
@@ -66,11 +66,21 @@ enum _TestResult
|
||||
|
||||
enum
|
||||
{
|
||||
COLUMN_MESSAGE,
|
||||
COLUMN_WEIGHT,
|
||||
COLUMN_ICON,
|
||||
COLUMN_RESULT,
|
||||
COLUNN_COUNT
|
||||
RESULT_COLUMN_MESSAGE,
|
||||
RESULT_COLUMN_WEIGHT,
|
||||
RESULT_COLUMN_ICON,
|
||||
RESULT_COLUMN_RESULT,
|
||||
RESULT_COLUNN_COUNT
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
TEST_COLUMN_LABEL,
|
||||
TEST_COLUMN_SELECTED,
|
||||
TEST_COLUMN_TEST_CASE,
|
||||
TEST_COLUMN_HAS_TEST_CASE,
|
||||
TEST_COLUMN_PAGE_INDEX,
|
||||
TEST_COLUMN_COUNT
|
||||
};
|
||||
|
||||
struct _Guide
|
||||
@@ -92,6 +102,10 @@ struct _TestCase
|
||||
|
||||
struct _TestSuite
|
||||
{
|
||||
GtkTreeSelection *selection;
|
||||
GtkWidget *test_current_button;
|
||||
GtkListStore *tests;
|
||||
|
||||
GtkWidget *window;
|
||||
GtkWidget *notebook;
|
||||
GtkWidget *baselines;
|
||||
@@ -485,6 +499,7 @@ natural_size_test_misc_create_child (TestCase *test,
|
||||
|
||||
GtkWidget *label, *child, *view, *align, *plug;
|
||||
GdkNativeWindow plug_id;
|
||||
gchar *plug_str;
|
||||
|
||||
GtkListStore *store = NULL;
|
||||
GtkTreeViewColumn *column;
|
||||
@@ -574,12 +589,14 @@ natural_size_test_misc_create_child (TestCase *test,
|
||||
plug_id = atoi (buffer);
|
||||
}
|
||||
|
||||
g_print ("plug-id: %d\n", plug_id);
|
||||
|
||||
child = gtk_socket_new ();
|
||||
g_signal_connect (child, "realize",
|
||||
G_CALLBACK (on_socket_realized),
|
||||
GINT_TO_POINTER (plug_id));
|
||||
|
||||
plug_str = g_strdup_printf ("plug-id: %d", plug_id);
|
||||
gtk_widget_set_tooltip_text (child, plug_str);
|
||||
g_free (plug_str);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1446,31 +1463,71 @@ attach_sub_windows (GtkWidget *widget,
|
||||
gtk_container_forall (GTK_CONTAINER (widget), attach_sub_windows, data);
|
||||
}
|
||||
|
||||
static void
|
||||
test_suite_insert_page (TestSuite *self,
|
||||
TestCase *test,
|
||||
GtkWidget *widget,
|
||||
const gchar *label)
|
||||
{
|
||||
GtkTreeModel *model = GTK_TREE_MODEL (self->tests);
|
||||
TestCase *prev = NULL;
|
||||
GtkTreeIter iter;
|
||||
gint i, n_rows;
|
||||
|
||||
if (!widget && test)
|
||||
widget = test->widget;
|
||||
|
||||
g_return_if_fail (GTK_IS_WIDGET (widget));
|
||||
|
||||
n_rows = gtk_tree_model_iter_n_children (model, NULL);
|
||||
|
||||
gtk_notebook_insert_page (GTK_NOTEBOOK (self->notebook),
|
||||
widget, NULL, self->n_test_cases);
|
||||
|
||||
gtk_list_store_insert (self->tests, &iter, n_rows);
|
||||
|
||||
gtk_list_store_set (self->tests, &iter,
|
||||
TEST_COLUMN_LABEL, label,
|
||||
TEST_COLUMN_SELECTED, NULL != test,
|
||||
TEST_COLUMN_HAS_TEST_CASE, NULL != test,
|
||||
TEST_COLUMN_PAGE_INDEX, self->n_test_cases,
|
||||
TEST_COLUMN_TEST_CASE, test,
|
||||
-1);
|
||||
|
||||
for (i = n_rows - 1; i >= 0 && NULL == prev &&
|
||||
gtk_tree_model_iter_nth_child (model, &iter, NULL, i);
|
||||
--i)
|
||||
gtk_tree_model_get (GTK_TREE_MODEL (self->tests), &iter,
|
||||
TEST_COLUMN_TEST_CASE, &prev,
|
||||
-1);
|
||||
|
||||
if (NULL == test || (prev && strcmp (test->name, prev->name)))
|
||||
{
|
||||
gtk_list_store_insert (self->tests, &iter, n_rows);
|
||||
gtk_list_store_set (self->tests, &iter,
|
||||
TEST_COLUMN_HAS_TEST_CASE, FALSE,
|
||||
TEST_COLUMN_PAGE_INDEX, -1,
|
||||
-1);
|
||||
}
|
||||
|
||||
if (test)
|
||||
++self->n_test_cases;
|
||||
}
|
||||
|
||||
static void
|
||||
test_suite_append (TestSuite *self,
|
||||
TestCase *test)
|
||||
{
|
||||
GtkWidget *label;
|
||||
GString *markup;
|
||||
GString *markup = g_string_new (test->name);
|
||||
|
||||
markup = g_string_new (test->name);
|
||||
g_string_printf (markup, "<b>%s</b>", test->name);
|
||||
|
||||
if (test->detail)
|
||||
{
|
||||
g_string_append (markup, "\n<small>(");
|
||||
g_string_append (markup, test->detail);
|
||||
g_string_append (markup, ")</small>");
|
||||
}
|
||||
g_string_append_printf (markup, "\n<small>%s</small>", test->detail);
|
||||
|
||||
label = gtk_label_new (markup->str);
|
||||
test_suite_insert_page (self, test, NULL, markup->str);
|
||||
g_string_free (markup, TRUE);
|
||||
|
||||
gtk_label_set_use_markup (GTK_LABEL (label), TRUE);
|
||||
gtk_label_set_justify (GTK_LABEL (label), GTK_JUSTIFY_CENTER);
|
||||
|
||||
gtk_notebook_insert_page (GTK_NOTEBOOK (self->notebook), test->widget,
|
||||
label, self->n_test_cases++);
|
||||
|
||||
g_signal_connect_after (test->widget, "expose-event",
|
||||
G_CALLBACK (expose_cb), test);
|
||||
g_signal_connect_after (test->widget, "realize",
|
||||
@@ -1589,10 +1646,10 @@ test_suite_report (TestSuite *self,
|
||||
}
|
||||
|
||||
gtk_tree_store_set (self->results, &iter,
|
||||
COLUMN_MESSAGE, message,
|
||||
COLUMN_WEIGHT, weight,
|
||||
COLUMN_RESULT, text,
|
||||
COLUMN_ICON, icon,
|
||||
RESULT_COLUMN_MESSAGE, message,
|
||||
RESULT_COLUMN_WEIGHT, weight,
|
||||
RESULT_COLUMN_RESULT, text,
|
||||
RESULT_COLUMN_ICON, icon,
|
||||
-1);
|
||||
|
||||
if (TEST_RESULT_FAILURE == result)
|
||||
@@ -1609,8 +1666,8 @@ test_suite_report (TestSuite *self,
|
||||
self->parent = iter;
|
||||
|
||||
gtk_tree_store_set (self->results, &self->parent,
|
||||
COLUMN_RESULT, text,
|
||||
COLUMN_ICON, icon,
|
||||
RESULT_COLUMN_RESULT, text,
|
||||
RESULT_COLUMN_ICON, icon,
|
||||
-1);
|
||||
}
|
||||
}
|
||||
@@ -1730,34 +1787,71 @@ test_current_cb (GtkWidget *widget,
|
||||
test_suite_run (suite, -1);
|
||||
}
|
||||
|
||||
static void
|
||||
test_suite_show_and_run_test (TestSuite *self,
|
||||
gint page)
|
||||
{
|
||||
GTimer *timer = g_timer_new ();
|
||||
|
||||
gtk_notebook_set_current_page (GTK_NOTEBOOK (self->notebook), page);
|
||||
g_timer_start (timer);
|
||||
|
||||
while (g_timer_elapsed (timer, NULL) < 0.3 &&
|
||||
!gtk_main_iteration_do (FALSE))
|
||||
{
|
||||
if (!gtk_events_pending ())
|
||||
g_usleep (500);
|
||||
}
|
||||
|
||||
test_suite_run (self, -1);
|
||||
g_timer_destroy (timer);
|
||||
}
|
||||
|
||||
static void
|
||||
test_selected_cb (GtkWidget *widget,
|
||||
gpointer data)
|
||||
{
|
||||
TestSuite *suite = data;
|
||||
GtkTreeModel *model;
|
||||
GtkTreeIter iter;
|
||||
|
||||
model = GTK_TREE_MODEL (suite->tests);
|
||||
test_suite_start (suite);
|
||||
|
||||
if (gtk_tree_model_get_iter_first (model, &iter))
|
||||
{
|
||||
do
|
||||
{
|
||||
gboolean selected = FALSE;
|
||||
gint page_index = -1;
|
||||
|
||||
gtk_tree_model_get (model, &iter,
|
||||
TEST_COLUMN_SELECTED, &selected,
|
||||
TEST_COLUMN_PAGE_INDEX, &page_index,
|
||||
-1);
|
||||
|
||||
if (page_index >= 0 && selected)
|
||||
test_suite_show_and_run_test (suite, page_index);
|
||||
}
|
||||
while (gtk_tree_model_iter_next (model, &iter));
|
||||
}
|
||||
|
||||
test_suite_stop (suite);
|
||||
}
|
||||
|
||||
static void
|
||||
test_all_cb (GtkWidget *widget,
|
||||
gpointer data)
|
||||
{
|
||||
GTimer *timer = g_timer_new ();
|
||||
TestSuite *suite = data;
|
||||
gint i;
|
||||
|
||||
test_suite_start (suite);
|
||||
|
||||
for (i = 0; i < suite->n_test_cases; ++i)
|
||||
{
|
||||
gtk_notebook_set_current_page (GTK_NOTEBOOK (suite->notebook), i);
|
||||
g_timer_start (timer);
|
||||
|
||||
while (g_timer_elapsed (timer, NULL) < 0.3 &&
|
||||
!gtk_main_iteration_do (FALSE))
|
||||
{
|
||||
if (!gtk_events_pending ())
|
||||
g_usleep (500);
|
||||
}
|
||||
|
||||
test_current_cb (widget, suite);
|
||||
g_timer_stop (timer);
|
||||
}
|
||||
test_suite_show_and_run_test (suite, i);
|
||||
|
||||
test_suite_stop (suite);
|
||||
g_timer_destroy (timer);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -1766,44 +1860,32 @@ switch_page_cb (GtkNotebook *notebook,
|
||||
gint index,
|
||||
gpointer data)
|
||||
{
|
||||
gpointer *bag = data;
|
||||
TestSuite *suite = bag[0];
|
||||
GtkWidget *button = bag[1];
|
||||
TestSuite *suite = data;
|
||||
GtkTreeModel *model;
|
||||
GtkTreeIter iter;
|
||||
gint page_index;
|
||||
|
||||
gtk_widget_set_sensitive (button, index < suite->n_test_cases);
|
||||
}
|
||||
gtk_widget_set_sensitive (suite->test_current_button,
|
||||
index < suite->n_test_cases);
|
||||
|
||||
static gpointer
|
||||
pointer_bag_new (gpointer first, ...)
|
||||
{
|
||||
gpointer *self;
|
||||
gint count = 0;
|
||||
gpointer ptr;
|
||||
va_list args;
|
||||
model = GTK_TREE_MODEL (suite->tests);
|
||||
|
||||
va_start (args, first);
|
||||
if (gtk_tree_model_get_iter_first (model, &iter))
|
||||
{
|
||||
do
|
||||
{
|
||||
gtk_tree_model_get (model, &iter,
|
||||
TEST_COLUMN_PAGE_INDEX, &page_index,
|
||||
-1);
|
||||
|
||||
for (ptr = first, count = 0; ptr; ptr = va_arg (args, gpointer))
|
||||
++count;
|
||||
|
||||
va_end (args);
|
||||
|
||||
self = g_new0 (gpointer, count + 1);
|
||||
|
||||
va_start (args, first);
|
||||
|
||||
for (ptr = first, count = 0; ptr; ptr = va_arg (args, gpointer))
|
||||
self[count++] = ptr;
|
||||
|
||||
va_end (args);
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
static void
|
||||
pointer_bag_free (gpointer self)
|
||||
{
|
||||
g_free (self);
|
||||
if (page_index == index)
|
||||
{
|
||||
gtk_tree_selection_select_iter (suite->selection, &iter);
|
||||
break;
|
||||
}
|
||||
}
|
||||
while (gtk_tree_model_iter_next (model, &iter));
|
||||
}
|
||||
}
|
||||
|
||||
static GtkWidget*
|
||||
@@ -2000,7 +2082,7 @@ test_suite_setup_results_page (TestSuite *self)
|
||||
GtkCellRenderer *cell;
|
||||
GtkWidget *scroller;
|
||||
|
||||
self->results = gtk_tree_store_new (COLUNN_COUNT,
|
||||
self->results = gtk_tree_store_new (RESULT_COLUNN_COUNT,
|
||||
G_TYPE_STRING, PANGO_TYPE_WEIGHT,
|
||||
G_TYPE_STRING, G_TYPE_STRING);
|
||||
|
||||
@@ -2014,13 +2096,13 @@ test_suite_setup_results_page (TestSuite *self)
|
||||
cell = gtk_cell_renderer_pixbuf_new ();
|
||||
gtk_tree_view_column_pack_start (column, cell, FALSE);
|
||||
gtk_tree_view_column_set_attributes (column, cell,
|
||||
"icon-name", COLUMN_ICON, NULL);
|
||||
"icon-name", RESULT_COLUMN_ICON, NULL);
|
||||
|
||||
cell = gtk_cell_renderer_text_new ();
|
||||
gtk_tree_view_column_pack_start (column, cell, TRUE);
|
||||
gtk_tree_view_column_set_attributes (column, cell,
|
||||
"text", COLUMN_MESSAGE,
|
||||
"weight", COLUMN_WEIGHT, NULL);
|
||||
"text", RESULT_COLUMN_MESSAGE,
|
||||
"weight", RESULT_COLUMN_WEIGHT, NULL);
|
||||
|
||||
column = gtk_tree_view_column_new ();
|
||||
gtk_tree_view_column_set_expand (column, FALSE);
|
||||
@@ -2029,7 +2111,7 @@ test_suite_setup_results_page (TestSuite *self)
|
||||
cell = gtk_cell_renderer_text_new ();
|
||||
gtk_tree_view_column_pack_start (column, cell, TRUE);
|
||||
gtk_tree_view_column_set_attributes (column, cell,
|
||||
"text", COLUMN_RESULT, NULL);
|
||||
"text", RESULT_COLUMN_RESULT, NULL);
|
||||
|
||||
scroller = gtk_scrolled_window_new (NULL, NULL);
|
||||
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scroller),
|
||||
@@ -2039,25 +2121,112 @@ test_suite_setup_results_page (TestSuite *self)
|
||||
gtk_container_set_border_width (GTK_CONTAINER (scroller), 12);
|
||||
gtk_container_add (GTK_CONTAINER (scroller), self->results_view);
|
||||
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (self->notebook), scroller,
|
||||
gtk_label_new_with_mnemonic ("Test _Results"));
|
||||
test_suite_insert_page (self, NULL, scroller, "<b>Test Results</b>");
|
||||
|
||||
g_signal_connect (self->notebook, "realize",
|
||||
G_CALLBACK (realize_notebook_cb), self);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
tests_is_separator (GtkTreeModel *model,
|
||||
GtkTreeIter *iter,
|
||||
gpointer data)
|
||||
{
|
||||
gchar *label;
|
||||
|
||||
gtk_tree_model_get (model, iter, TEST_COLUMN_LABEL, &label, -1);
|
||||
g_free (label);
|
||||
|
||||
return (NULL == label);
|
||||
}
|
||||
|
||||
static void
|
||||
test_case_toggled (GtkCellRendererToggle *cell,
|
||||
gchar *path,
|
||||
gpointer data)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
|
||||
if (gtk_tree_model_get_iter_from_string (GTK_TREE_MODEL (data), &iter, path))
|
||||
gtk_list_store_set (GTK_LIST_STORE (data), &iter, TEST_COLUMN_SELECTED,
|
||||
!gtk_cell_renderer_toggle_get_active (cell),
|
||||
-1);
|
||||
}
|
||||
|
||||
static void
|
||||
selection_changed (GtkTreeSelection *selection,
|
||||
gpointer data)
|
||||
{
|
||||
TestSuite *suite = data;
|
||||
GtkTreeModel *model;
|
||||
GtkTreeIter iter;
|
||||
gint page_index;
|
||||
|
||||
if (gtk_tree_selection_get_selected (selection, &model, &iter))
|
||||
{
|
||||
gtk_tree_model_get (model, &iter,
|
||||
TEST_COLUMN_PAGE_INDEX, &page_index,
|
||||
-1);
|
||||
|
||||
if (page_index >= 0)
|
||||
gtk_notebook_set_current_page (GTK_NOTEBOOK (suite->notebook),
|
||||
page_index);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
test_suite_setup_ui (TestSuite *self)
|
||||
{
|
||||
GtkWidget *actions;
|
||||
GtkWidget *button;
|
||||
GtkWidget *align;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *table, *actions, *button, *align;
|
||||
GtkWidget *view, *scrolled;
|
||||
|
||||
GtkTreeViewColumn *column;
|
||||
GtkCellRenderer *cell;
|
||||
|
||||
self->tests = gtk_list_store_new (TEST_COLUMN_COUNT,
|
||||
G_TYPE_STRING, G_TYPE_BOOLEAN,
|
||||
G_TYPE_POINTER, G_TYPE_BOOLEAN,
|
||||
G_TYPE_INT);
|
||||
|
||||
view = gtk_tree_view_new_with_model (GTK_TREE_MODEL (self->tests));
|
||||
gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (view), FALSE);
|
||||
gtk_tree_view_set_row_separator_func (GTK_TREE_VIEW (view), tests_is_separator, NULL, NULL);
|
||||
|
||||
self->selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (view));
|
||||
gtk_tree_selection_set_mode (self->selection, GTK_SELECTION_BROWSE);
|
||||
|
||||
g_signal_connect (self->selection, "changed", G_CALLBACK (selection_changed), self);
|
||||
|
||||
column = gtk_tree_view_column_new ();
|
||||
cell = gtk_cell_renderer_toggle_new ();
|
||||
gtk_tree_view_append_column (GTK_TREE_VIEW (view), column);
|
||||
gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (column), cell, FALSE);
|
||||
gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (column), cell,
|
||||
"active", TEST_COLUMN_SELECTED,
|
||||
"activatable", TEST_COLUMN_HAS_TEST_CASE,
|
||||
"visible", TEST_COLUMN_HAS_TEST_CASE,
|
||||
NULL);
|
||||
|
||||
g_signal_connect (cell, "toggled", G_CALLBACK (test_case_toggled), self->tests);
|
||||
|
||||
column = gtk_tree_view_column_new ();
|
||||
cell = gtk_cell_renderer_text_new ();
|
||||
gtk_tree_view_append_column (GTK_TREE_VIEW (view), column);
|
||||
gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (column), cell, TRUE);
|
||||
gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (column), cell,
|
||||
"markup", TEST_COLUMN_LABEL, NULL);
|
||||
|
||||
scrolled = gtk_scrolled_window_new (NULL, NULL);
|
||||
gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled),
|
||||
GTK_SHADOW_IN);
|
||||
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled),
|
||||
GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
|
||||
gtk_container_add (GTK_CONTAINER (scrolled), view);
|
||||
|
||||
self->notebook = gtk_notebook_new ();
|
||||
gtk_notebook_set_tab_pos (GTK_NOTEBOOK (self->notebook), GTK_POS_RIGHT);
|
||||
gtk_notebook_set_show_tabs (GTK_NOTEBOOK (self->notebook), FALSE);
|
||||
|
||||
actions = gtk_hbox_new (FALSE, 12);
|
||||
actions = gtk_hbox_new (TRUE, 12);
|
||||
|
||||
align = gtk_alignment_new (1.0, 0.5, 0.0, 0.0);
|
||||
gtk_container_add (GTK_CONTAINER (align), actions);
|
||||
@@ -2066,10 +2235,12 @@ test_suite_setup_ui (TestSuite *self)
|
||||
g_signal_connect (button, "clicked", G_CALLBACK (test_current_cb), self);
|
||||
gtk_box_pack_start (GTK_BOX (actions), button, FALSE, TRUE, 0);
|
||||
|
||||
g_signal_connect_data (self->notebook, "switch-page",
|
||||
G_CALLBACK (switch_page_cb),
|
||||
pointer_bag_new (self, button, NULL),
|
||||
(GClosureNotify) pointer_bag_free, 0);
|
||||
self->test_current_button = button;
|
||||
g_signal_connect (self->notebook, "switch-page", G_CALLBACK (switch_page_cb), self);
|
||||
|
||||
button = gtk_button_new_with_mnemonic ("Test _Selected Pages");
|
||||
g_signal_connect (button, "clicked", G_CALLBACK (test_selected_cb), self);
|
||||
gtk_box_pack_start (GTK_BOX (actions), button, FALSE, TRUE, 0);
|
||||
|
||||
button = gtk_button_new_with_mnemonic ("Test _All Pages");
|
||||
g_signal_connect (button, "clicked", G_CALLBACK (test_all_cb), self);
|
||||
@@ -2111,11 +2282,16 @@ test_suite_setup_ui (TestSuite *self)
|
||||
gtk_label_set_ellipsize (GTK_LABEL (self->statusbar),
|
||||
PANGO_ELLIPSIZE_END);
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 12);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (vbox), 6);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), actions, FALSE, TRUE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), self->notebook, TRUE, TRUE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), self->statusbar, FALSE, TRUE, 0);
|
||||
table = gtk_table_new (3, 2, FALSE);
|
||||
|
||||
gtk_table_set_col_spacings (GTK_TABLE (table), 6);
|
||||
gtk_table_set_row_spacings (GTK_TABLE (table), 6);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (table), 6);
|
||||
|
||||
gtk_table_attach (GTK_TABLE (table), actions, 0, 2, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL, 0, 0);
|
||||
gtk_table_attach (GTK_TABLE (table), scrolled, 0, 1, 1, 2, GTK_FILL, GTK_FILL | GTK_EXPAND, 0, 0);
|
||||
gtk_table_attach (GTK_TABLE (table), self->notebook, 1, 2, 1, 2, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 0, 0);
|
||||
gtk_table_attach (GTK_TABLE (table), self->statusbar, 0, 2, 2, 3, GTK_FILL | GTK_EXPAND, GTK_FILL, 0, 0);
|
||||
|
||||
self->window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
|
||||
|
||||
@@ -2123,8 +2299,8 @@ test_suite_setup_ui (TestSuite *self)
|
||||
g_timeout_add (200, watch_pointer_cb, self);
|
||||
|
||||
gtk_window_set_title (GTK_WINDOW (self->window), "Testing GtkExtendedLayout");
|
||||
gtk_container_add (GTK_CONTAINER (self->window), vbox);
|
||||
gtk_widget_grab_focus (self->notebook);
|
||||
gtk_container_add (GTK_CONTAINER (self->window), table);
|
||||
gtk_widget_grab_focus (view);
|
||||
}
|
||||
|
||||
static TestSuite*
|
||||
@@ -2133,6 +2309,7 @@ test_suite_new (gchar *arg0)
|
||||
TestSuite* self = g_new0 (TestSuite, 1);
|
||||
|
||||
test_suite_setup_ui (self);
|
||||
|
||||
test_suite_append (self, natural_size_test_new (self, FALSE, FALSE));
|
||||
test_suite_append (self, natural_size_test_new (self, TRUE, FALSE));
|
||||
test_suite_append (self, natural_size_test_new (self, FALSE, TRUE));
|
||||
@@ -2143,6 +2320,7 @@ test_suite_new (gchar *arg0)
|
||||
test_suite_append (self, baseline_test_bin_new (self));
|
||||
test_suite_append (self, baseline_test_hbox_new (self, FALSE));
|
||||
test_suite_append (self, baseline_test_hbox_new (self, TRUE));
|
||||
|
||||
test_suite_setup_results_page (self);
|
||||
|
||||
return self;
|
||||
|
||||
Reference in New Issue
Block a user