swat 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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>