> By the way, is anybody not yet using single_window_mode (the default)? > It would ease code maintainance if we could remove the mode with > separate windows.
Which would be this patch. Arend Index: regression/view.pike =================================================================== RCS file: /cvsroot/gnugo/gnugo/regression/view.pike,v retrieving revision 1.21 diff -u -p -r1.21 view.pike --- regression/view.pike 28 Sep 2005 15:55:16 -0000 1.21 +++ regression/view.pike 28 Sep 2005 17:03:23 -0000 @@ -1218,8 +1218,6 @@ class RegressionViewer class Controller { - static int single_window_mode = 1; - array(RegressionViewer) viewers = ({}); array(GTK.Widget) viewer_title_widgets = ({}); @@ -1316,38 +1314,31 @@ class Controller controller_notebook = GTK.Notebook(); controller_notebook->set_tab_pos(GTK.POS_LEFT); - if (single_window_mode) { - gobans_notebook = (GTK.Notebook() - ->set_show_tabs(0)); - data_notebook = (GTK.Notebook() - ->set_show_tabs(0) - ->set_show_border(0)); - selector_notebook = (GTK.Notebook() - ->set_tab_pos(GTK.POS_TOP)); - selector_notebook->signal_connect_new("switch_page", change_engine); - - GTK.Widget main_window_contents - = (GTK.Vbox(0, 0) - ->pack_start(GTK.Hbox(0, 24) - ->pack_start(testcase_label, 0, 0, 24) - ->pack_start(GTK.Alignment(0.0, 0.5, 0.0, 0.0) - ->add(selector_notebook), - 0, 0, 0), - 0, 0, 0) - ->add(GTK.Hbox(0, 2) - ->add(GTK.Vbox(0, 6) - ->pack_start(controller_notebook, 0, 0, 0) - ->add(data_notebook)) - ->pack_start(GTK.Alignment(0.0, 0.0, 0.0, 0.0) - ->add(gobans_notebook), - 0, 0, 0))); - main_window->add(main_window_contents); - } - else { - main_window->add(GTK.Vbox(0, 0) - ->add(testcase_label) - ->add(controller_notebook)); - } + gobans_notebook = (GTK.Notebook() + ->set_show_tabs(0)); + data_notebook = (GTK.Notebook() + ->set_show_tabs(0) + ->set_show_border(0)); + selector_notebook = (GTK.Notebook() + ->set_tab_pos(GTK.POS_TOP)); + selector_notebook->signal_connect_new("switch_page", change_engine); + + GTK.Widget main_window_contents + = (GTK.Vbox(0, 0) + ->pack_start(GTK.Hbox(0, 24) + ->pack_start(testcase_label, 0, 0, 24) + ->pack_start(GTK.Alignment(0.0, 0.5, 0.0, 0.0) + ->add(selector_notebook), + 0, 0, 0), + 0, 0, 0) + ->add(GTK.Hbox(0, 2) + ->add(GTK.Vbox(0, 6) + ->pack_start(controller_notebook, 0, 0, 0) + ->add(data_notebook)) + ->pack_start(GTK.Alignment(0.0, 0.0, 0.0, 0.0) + ->add(gobans_notebook), + 0, 0, 0))); + main_window->add(main_window_contents); main_window->set_title(testcases[0]); main_window->signal_connect_new("destroy", quit); @@ -1504,11 +1495,9 @@ class Controller engine_path_entry->set_text("../interface/gnugo"); engine_path_entry->set_editable(1); - if (single_window_mode) { - engine_name_entry = GTK.Entry(); - engine_name_entry->set_text("Engine 2"); - engine_name_entry->set_editable(1); - } + engine_name_entry = GTK.Entry(); + engine_name_entry->set_text("Engine 2"); + engine_name_entry->set_editable(1); engine_path_entry->signal_connect_new("activate", select_new_engine); new_engine_button = GTK.Button("Start new engine"); @@ -1582,8 +1571,7 @@ class Controller GTK.Widget engines_page = (GTK.Vbox(0, 12) ->pack_start(engine_path_entry, 0, 0, 0)); - if (single_window_mode) - engines_page->pack_start(engine_name_entry, 0, 0, 0); + engines_page->pack_start(engine_name_entry, 0, 0, 0); engines_page->pack_start(GTK.Alignment(1.0, 0.0, 0.0, 0.0) ->add(new_engine_button), 0, 0, 0) ->pack_start(new_testcase_entry, 0, 0, 0) @@ -1633,68 +1621,42 @@ class Controller add_regression_viewer( RegressionViewer(new_engine, complete_testcase, testcase_command, button_pressed_on_a_board, - (single_window_mode ? - engine_name_entry->get_text() : ""), + engine_name_entry->get_text(), this_object())); } - if (single_window_mode) { - engine_name_entry->set_text(sprintf("Engine %d", - sizeof(viewers) + 1)); - } + engine_name_entry->set_text(sprintf("Engine %d", sizeof(viewers) + 1)); } static void add_regression_viewer(RegressionViewer viewer) { viewers += ({ viewer }); - if (single_window_mode) { - viewer->goban_widget->show_all(); - gobans_notebook->append_page(viewer->goban_widget, 0); - - GTK.Widget title_label = GTK.Label(""); - viewer_title_widgets += ({ title_label }); - - GTK.Widget data_page = (GTK.Vbox(0, 2) - ->pack_start(title_label, 0, 0, 0) - ->add(viewer->scrolled_data_window) - ->show_all()); - data_notebook->append_page(data_page, 0); - - selector_notebook - ->append_page((GTK.Alignment(0.0, 0.5, 0.0, 0.0) - ->set_border_width(4) - ->add(GTK.Label(viewer->engine->command_line))), - GTK.Label(viewer->name)); - selector_notebook->show_all(); - selector_notebook->set_page(sizeof(viewers) - 1); - } - else { - GTK.Widget board_window = GTK.Window(GTK.WindowToplevel); - board_window->signal_connect_new("destroy", quit); + viewer->goban_widget->show_all(); + gobans_notebook->append_page(viewer->goban_widget, 0); - board_window->add(viewer->goban_widget); - board_window->set_title(testcase_name); - board_window->show_all(); - - GTK.Widget data_window = GTK.Window(GTK.WindowToplevel); - viewer->scrolled_data_window->set_usize(300,400); - data_window->add(viewer->scrolled_data_window); - data_window->set_title(testcase_name); - data_window->show_all(); + GTK.Widget title_label = GTK.Label(""); + viewer_title_widgets += ({ title_label }); - viewer_title_widgets += ({ data_window }); - } + GTK.Widget data_page = (GTK.Vbox(0, 2) + ->pack_start(title_label, 0, 0, 0) + ->add(viewer->scrolled_data_window) + ->show_all()); + data_notebook->append_page(data_page, 0); + + selector_notebook + ->append_page((GTK.Alignment(0.0, 0.5, 0.0, 0.0) + ->set_border_width(4) + ->add(GTK.Label(viewer->engine->command_line))), + GTK.Label(viewer->name)); + selector_notebook->show_all(); + selector_notebook->set_page(sizeof(viewers) - 1); } void set_title(RegressionViewer viewer, string title) { for (int k = 0; k < sizeof(viewers); k++) { - if (viewers[k] == viewer) { - if (single_window_mode) - viewer_title_widgets[k]->set_text(title); - else - viewer_title_widgets[k]->set_title(title); - } + if (viewers[k] == viewer) + viewer_title_widgets[k]->set_text(title); } } _______________________________________________ gnugo-devel mailing list gnugo-devel@gnu.org http://lists.gnu.org/mailman/listinfo/gnugo-devel