swat 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,64 @@
1
+ # class implement a list view similar to todo window
2
+ module Swat
3
+ class WishList
4
+ include Swat::ListHelper
5
+ attr_accessor :wish_list_file, :todo_data
6
+ attr_accessor :parent_view
7
+ def initialize(wish_list_file,wish_list_view,parent_view)
8
+ @parent_view = parent_view
9
+ @list_view = wish_list_view
10
+ @wish_list_file = wish_list_file
11
+ @todo_data = TodoData.new(@wish_list_file)
12
+ @model = create_model
13
+ load_available_lists
14
+ add_columns
15
+ connect_custom_signals
16
+ @list_view.expand_all
17
+ end
18
+
19
+ def connect_custom_signals
20
+ @wish_context_menu = TodoContextMenu.new
21
+ @wish_context_menu.append(" Remove Wish ") { remove_wish }
22
+ @wish_context_menu.append(" Add to Active ") { add_to_active }
23
+ @wish_context_menu.show
24
+ @list_view.signal_connect("button_press_event") do |widget,event|
25
+ if event.kind_of? Gdk::EventButton and event.button == 3
26
+ @wish_context_menu.todo_menu.popup(nil, nil, event.button, event.time)
27
+ end
28
+ end
29
+ @list_view.signal_connect("popup_menu") { @wish_context_menu.todo_menu.popup(nil, nil, 0, Gdk::Event::CURRENT_TIME) }
30
+ end
31
+
32
+ def remove_wish
33
+ selection = @list_view.selection
34
+ if iter = selection.selected
35
+ selected_category = iter.parent[0]
36
+ task_index = iter[3]
37
+ @todo_data.remove(selected_category,task_index)
38
+ @list_view.model.remove(iter)
39
+ @todo_data.dump
40
+ end
41
+ end
42
+
43
+ def add_to_active
44
+ selection = @list_view.selection
45
+ if iter = selection.selected
46
+ selected_category = iter.parent[0]
47
+ task_index = iter[3]
48
+ priority = todo_data.get_priority(selected_category,task_index)
49
+ task_text = todo_data.get_task(selected_category,task_index)
50
+ @parent_view.add_to_tasklist(selected_category,task_text,priority)
51
+ todo_data.remove(selected_category,task_index)
52
+ todo_data.dump
53
+ @list_view.model.remove(iter)
54
+ end
55
+ end
56
+
57
+ def add_to_wishlist(category,task,priority)
58
+ @todo_data.insert(category,task,priority.to_i)
59
+ @todo_data.dump
60
+ reload_view
61
+ end
62
+ end
63
+ end
64
+
@@ -0,0 +1,114 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
3
+ <!--Generated with glade3 3.4.0 on Sun Dec 9 15:28:43 2007 -->
4
+ <glade-interface>
5
+ <widget class="GtkDialog" id="add_todo_dialog">
6
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
7
+ <property name="border_width">5</property>
8
+ <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
9
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
10
+ <property name="has_separator">False</property>
11
+ <child internal-child="vbox">
12
+ <widget class="GtkVBox" id="dialog-vbox1">
13
+ <property name="visible">True</property>
14
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
15
+ <property name="spacing">2</property>
16
+ <child>
17
+ <widget class="GtkVBox" id="vbox1">
18
+ <property name="visible">True</property>
19
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
20
+ <child>
21
+ <widget class="GtkHBox" id="hbox1">
22
+ <property name="visible">True</property>
23
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
24
+ <child>
25
+ <widget class="GtkComboBox" id="priority_combo">
26
+ <property name="visible">True</property>
27
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
28
+ <property name="items" translatable="yes">2
29
+ 3
30
+ 4</property>
31
+ </widget>
32
+ </child>
33
+ <child>
34
+ <widget class="GtkComboBoxEntry" id="todo_category_entry">
35
+ <property name="visible">True</property>
36
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
37
+ <child internal-child="entry">
38
+ <widget class="GtkEntry" id="todo_category_entry2">
39
+ <property name="visible">True</property>
40
+ <property name="can_focus">True</property>
41
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
42
+ </widget>
43
+ </child>
44
+ </widget>
45
+ <packing>
46
+ <property name="position">1</property>
47
+ </packing>
48
+ </child>
49
+ </widget>
50
+ <packing>
51
+ <property name="expand">False</property>
52
+ </packing>
53
+ </child>
54
+ <child>
55
+ <widget class="GtkTextView" id="todo_text_entry">
56
+ <property name="width_request">320</property>
57
+ <property name="height_request">180</property>
58
+ <property name="visible">True</property>
59
+ <property name="can_focus">True</property>
60
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
61
+ <property name="border_width">2</property>
62
+ </widget>
63
+ <packing>
64
+ <property name="padding">7</property>
65
+ <property name="position">1</property>
66
+ </packing>
67
+ </child>
68
+ </widget>
69
+ <packing>
70
+ <property name="position">1</property>
71
+ </packing>
72
+ </child>
73
+ <child internal-child="action_area">
74
+ <widget class="GtkHButtonBox" id="dialog-action_area1">
75
+ <property name="visible">True</property>
76
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
77
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
78
+ <child>
79
+ <widget class="GtkButton" id="button2">
80
+ <property name="visible">True</property>
81
+ <property name="can_focus">True</property>
82
+ <property name="receives_default">True</property>
83
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
84
+ <property name="label" translatable="yes">_Cancel</property>
85
+ <property name="use_underline">True</property>
86
+ <property name="response_id">0</property>
87
+ <signal name="clicked" handler="on_button2_clicked"/>
88
+ </widget>
89
+ </child>
90
+ <child>
91
+ <widget class="GtkButton" id="add_todo_button">
92
+ <property name="visible">True</property>
93
+ <property name="can_focus">True</property>
94
+ <property name="receives_default">True</property>
95
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
96
+ <property name="label" translatable="yes">_Add</property>
97
+ <property name="use_underline">True</property>
98
+ <property name="response_id">0</property>
99
+ <signal name="clicked" handler="on_add_todo_button_activate"/>
100
+ </widget>
101
+ <packing>
102
+ <property name="position">1</property>
103
+ </packing>
104
+ </child>
105
+ </widget>
106
+ <packing>
107
+ <property name="expand">False</property>
108
+ <property name="pack_type">GTK_PACK_END</property>
109
+ </packing>
110
+ </child>
111
+ </widget>
112
+ </child>
113
+ </widget>
114
+ </glade-interface>
Binary file
@@ -0,0 +1,27 @@
1
+ * General Tasks *
2
+
3
+ ** DONE Get BSE symbols in symbol lookup, also have a complete relook on symbol lookup facility.
4
+ ** DONE Get a symbol search page up.
5
+ ** TODO Install Monit on all US machines for proxy and mongrel.
6
+ ** DONE Implement inactivity timeout for push_server
7
+ ** TODO Implement single quote on first request from push_server
8
+ ** TODO Implement a rate control feature for push_server
9
+ ** TODO Implement cummulative volume in push_server.
10
+ *** TODO Implement country indices by default in Watchlist.
11
+
12
+ * Mobile/WebService Shit *
13
+ ** TODO Install exception notification plugin for Web Service
14
+
15
+ * Data integration tasks *
16
+ ** TODO implement BSE symbols everywhere.
17
+
18
+
19
+ * Browser Issues
20
+ ** TODO Color change not working in IE.
21
+
22
+ * Personal Task list
23
+ ** TODO Do some erlang exercises
24
+
25
+ * Webfront tasks *
26
+ ** TODO Implement a business analytics tool for charging customers.
27
+ ** TODO Implement a stock screener.
Binary file
@@ -0,0 +1,174 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
3
+ <!--Generated with glade3 3.4.0 on Thu Dec 13 09:50:49 2007 -->
4
+ <glade-interface>
5
+ <widget class="GtkWindow" id="todo_window">
6
+ <property name="visible">True</property>
7
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
8
+ <property name="default_width">800</property>
9
+ <property name="default_height">700</property>
10
+ <property name="opacity">0.52999997138977051</property>
11
+ <signal name="key_press_event" handler="on_todo_window_key_press_event"/>
12
+ <signal name="delete_event" handler="on_todo_window_delete_event"/>
13
+ <signal name="destroy_event" handler="on_todo_window_destroy_event"/>
14
+ <child>
15
+ <widget class="GtkVBox" id="vbox1">
16
+ <property name="visible">True</property>
17
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
18
+ <child>
19
+ <widget class="GtkToolbar" id="todo_toolbar">
20
+ <property name="visible">True</property>
21
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
22
+ <property name="toolbar_style">GTK_TOOLBAR_ICONS</property>
23
+ <property name="icon_size">GTK_ICON_SIZE_BUTTON</property>
24
+ <property name="icon_size_set">True</property>
25
+ <child>
26
+ <widget class="GtkToolButton" id="sync_button">
27
+ <property name="visible">True</property>
28
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
29
+ <property name="label" translatable="yes">Sync</property>
30
+ <property name="use_underline">True</property>
31
+ <property name="stock_id">gtk-apply</property>
32
+ <signal name="clicked" handler="on_sync_button_clicked"/>
33
+ <accelerator key="s" modifiers="GDK_MOD1_MASK" signal="clicked"/>
34
+ </widget>
35
+ <packing>
36
+ <property name="expand">False</property>
37
+ </packing>
38
+ </child>
39
+ <child>
40
+ <widget class="GtkToolButton" id="reload_button">
41
+ <property name="visible">True</property>
42
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
43
+ <property name="label" translatable="yes">Reload</property>
44
+ <property name="stock_id">gtk-refresh</property>
45
+ <signal name="clicked" handler="on_reload_button_clicked"/>
46
+ <accelerator key="r" modifiers="GDK_MOD1_MASK" signal="clicked"/>
47
+ </widget>
48
+ <packing>
49
+ <property name="expand">False</property>
50
+ </packing>
51
+ </child>
52
+ <child>
53
+ <widget class="GtkToolButton" id="add_todo_button">
54
+ <property name="visible">True</property>
55
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
56
+ <property name="label" translatable="yes">Add</property>
57
+ <property name="stock_id">gtk-add</property>
58
+ <signal name="clicked" handler="on_add_todo_button_clicked"/>
59
+ <accelerator key="n" modifiers="GDK_CONTROL_MASK" signal="clicked"/>
60
+ </widget>
61
+ <packing>
62
+ <property name="expand">False</property>
63
+ </packing>
64
+ </child>
65
+ </widget>
66
+ <packing>
67
+ <property name="expand">False</property>
68
+ </packing>
69
+ </child>
70
+ <child>
71
+ <widget class="GtkNotebook" id="notebook1">
72
+ <property name="visible">True</property>
73
+ <property name="can_focus">True</property>
74
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
75
+ <child>
76
+ <widget class="GtkHBox" id="hbox1">
77
+ <property name="visible">True</property>
78
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
79
+ <child>
80
+ <widget class="GtkScrolledWindow" id="scrolledwindow1">
81
+ <property name="visible">True</property>
82
+ <property name="can_focus">True</property>
83
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
84
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
85
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
86
+ <child>
87
+ <widget class="GtkTreeView" id="todo_view">
88
+ <property name="visible">True</property>
89
+ <property name="can_focus">True</property>
90
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
91
+ <property name="headers_clickable">True</property>
92
+ </widget>
93
+ </child>
94
+ </widget>
95
+ </child>
96
+ <child>
97
+ <widget class="GtkHBox" id="stat_box">
98
+ <property name="visible">True</property>
99
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
100
+ <child>
101
+ <widget class="GtkButton" id="toggle_stat_button">
102
+ <property name="visible">True</property>
103
+ <property name="can_focus">True</property>
104
+ <property name="receives_default">True</property>
105
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
106
+ <property name="use_stock">True</property>
107
+ <property name="response_id">0</property>
108
+ <signal name="clicked" handler="on_toggle_stat_button_clicked"/>
109
+ </widget>
110
+ </child>
111
+ <child>
112
+ <placeholder/>
113
+ </child>
114
+ </widget>
115
+ <packing>
116
+ <property name="expand">False</property>
117
+ <property name="fill">False</property>
118
+ <property name="position">1</property>
119
+ </packing>
120
+ </child>
121
+ </widget>
122
+ </child>
123
+ <child>
124
+ <widget class="GtkLabel" id="active_task_label">
125
+ <property name="visible">True</property>
126
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
127
+ <property name="label" translatable="yes">Active Tasks</property>
128
+ </widget>
129
+ <packing>
130
+ <property name="type">tab</property>
131
+ <property name="tab_fill">False</property>
132
+ </packing>
133
+ </child>
134
+ <child>
135
+ <widget class="GtkScrolledWindow" id="scrolledwindow2">
136
+ <property name="visible">True</property>
137
+ <property name="can_focus">True</property>
138
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
139
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
140
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
141
+ <child>
142
+ <widget class="GtkTreeView" id="wish_list_view">
143
+ <property name="visible">True</property>
144
+ <property name="can_focus">True</property>
145
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
146
+ <property name="headers_clickable">True</property>
147
+ </widget>
148
+ </child>
149
+ </widget>
150
+ <packing>
151
+ <property name="position">1</property>
152
+ </packing>
153
+ </child>
154
+ <child>
155
+ <widget class="GtkLabel" id="wish_list_label">
156
+ <property name="visible">True</property>
157
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
158
+ <property name="label" translatable="yes">Wish List</property>
159
+ </widget>
160
+ <packing>
161
+ <property name="type">tab</property>
162
+ <property name="position">1</property>
163
+ <property name="tab_fill">False</property>
164
+ </packing>
165
+ </child>
166
+ </widget>
167
+ <packing>
168
+ <property name="position">1</property>
169
+ </packing>
170
+ </child>
171
+ </widget>
172
+ </child>
173
+ </widget>
174
+ </glade-interface>
Binary file
@@ -0,0 +1,127 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
3
+ <!--Generated with glade3 3.4.0 on Thu Dec 13 00:02:46 2007 -->
4
+ <glade-interface>
5
+ <widget class="GtkWindow" id="todo_window">
6
+ <property name="visible">True</property>
7
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
8
+ <property name="default_width">800</property>
9
+ <property name="default_height">700</property>
10
+ <property name="opacity">0.52999997138977051</property>
11
+ <signal name="key_press_event" handler="on_todo_window_key_press_event"/>
12
+ <signal name="delete_event" handler="on_todo_window_delete_event"/>
13
+ <signal name="destroy_event" handler="on_todo_window_destroy_event"/>
14
+ <child>
15
+ <widget class="GtkVBox" id="vbox1">
16
+ <property name="visible">True</property>
17
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
18
+ <child>
19
+ <widget class="GtkToolbar" id="todo_toolbar">
20
+ <property name="visible">True</property>
21
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
22
+ <property name="toolbar_style">GTK_TOOLBAR_BOTH</property>
23
+ <property name="icon_size">GTK_ICON_SIZE_BUTTON</property>
24
+ <property name="icon_size_set">True</property>
25
+ <child>
26
+ <widget class="GtkToolButton" id="sync_button">
27
+ <property name="visible">True</property>
28
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
29
+ <property name="label" translatable="yes">Sync</property>
30
+ <property name="use_underline">True</property>
31
+ <property name="stock_id">gtk-apply</property>
32
+ <signal name="clicked" handler="on_sync_button_clicked"/>
33
+ <accelerator key="s" modifiers="GDK_MOD1_MASK" signal="clicked"/>
34
+ </widget>
35
+ <packing>
36
+ <property name="expand">False</property>
37
+ </packing>
38
+ </child>
39
+ <child>
40
+ <widget class="GtkToolButton" id="reload_button">
41
+ <property name="visible">True</property>
42
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
43
+ <property name="label" translatable="yes">Reload</property>
44
+ <property name="stock_id">gtk-refresh</property>
45
+ <signal name="clicked" handler="on_reload_button_clicked"/>
46
+ <accelerator key="r" modifiers="GDK_MOD1_MASK" signal="clicked"/>
47
+ </widget>
48
+ <packing>
49
+ <property name="expand">False</property>
50
+ </packing>
51
+ </child>
52
+ <child>
53
+ <widget class="GtkToolButton" id="add_todo_button">
54
+ <property name="visible">True</property>
55
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
56
+ <property name="label" translatable="yes">Add</property>
57
+ <property name="stock_id">gtk-add</property>
58
+ <signal name="clicked" handler="on_add_todo_button_clicked"/>
59
+ <accelerator key="n" modifiers="GDK_CONTROL_MASK" signal="clicked"/>
60
+ </widget>
61
+ <packing>
62
+ <property name="expand">False</property>
63
+ </packing>
64
+ </child>
65
+ </widget>
66
+ <packing>
67
+ <property name="expand">False</property>
68
+ </packing>
69
+ </child>
70
+ <child>
71
+ <widget class="GtkHBox" id="hbox1">
72
+ <property name="visible">True</property>
73
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
74
+ <child>
75
+ <widget class="GtkScrolledWindow" id="scrolledwindow1">
76
+ <property name="visible">True</property>
77
+ <property name="can_focus">True</property>
78
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
79
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
80
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
81
+ <child>
82
+ <widget class="GtkTreeView" id="todo_view">
83
+ <property name="visible">True</property>
84
+ <property name="can_focus">True</property>
85
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
86
+ <property name="headers_clickable">True</property>
87
+ </widget>
88
+ </child>
89
+ </widget>
90
+ </child>
91
+ <child>
92
+ <widget class="GtkHBox" id="stat_box">
93
+ <property name="visible">True</property>
94
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
95
+ <child>
96
+ <widget class="GtkButton" id="toggle_stat_button">
97
+ <property name="visible">True</property>
98
+ <property name="can_focus">True</property>
99
+ <property name="receives_default">True</property>
100
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
101
+ <property name="use_stock">True</property>
102
+ <property name="response_id">0</property>
103
+ <signal name="clicked" handler="on_toggle_stat_button_clicked"/>
104
+ </widget>
105
+ <packing>
106
+ <property name="expand">False</property>
107
+ </packing>
108
+ </child>
109
+ <child>
110
+ <placeholder/>
111
+ </child>
112
+ </widget>
113
+ <packing>
114
+ <property name="expand">False</property>
115
+ <property name="fill">False</property>
116
+ <property name="position">1</property>
117
+ </packing>
118
+ </child>
119
+ </widget>
120
+ <packing>
121
+ <property name="position">1</property>
122
+ </packing>
123
+ </child>
124
+ </widget>
125
+ </child>
126
+ </widget>
127
+ </glade-interface>