gnugo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gnugo-devel] cool view.pike feature


From: Arend Bayer
Subject: Re: [gnugo-devel] cool view.pike feature
Date: Wed, 28 Sep 2005 19:22:16 +0200 (CEST)


> 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);
        }
     }
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]