@@ -33,168 +33,186 @@ namespace Reminduck {
3333 Widgets . Views . ReminderEditor reminder_editor;
3434 Widgets . Views . RemindersView reminders_view;
3535
36- public MainWindow () {
37- settings = new GLib .Settings (" io.github.ellie_commons.reminduck.state" );
36+ public MainWindow () {
37+ settings = new GLib .Settings (" io.github.ellie_commons.reminduck.state" );
3838
39- build_ui();
39+ build_ui ();
4040 }
4141
42- private void build_ui () {
43- stack = new Gtk .Stack ();
44- stack. set_transition_duration(500 );
42+ private void build_ui () {
43+ stack = new Gtk .Stack ();
44+ stack. set_transition_duration (500 );
4545
46- this . build_headerbar();
47-
48- this . build_welcome();
49-
50- var image = new Gtk .Image ();
51- image. set_from_icon_name(" io.github.ellie_commons.reminduck" );
52- image. set_margin_top(30 );
46+ this . build_headerbar ();
47+ this . build_welcome ();
5348
54- var fields_box = new Gtk .Box (Gtk . Orientation . VERTICAL , 0 );
55- fields_box. add_css_class(" reminduck-welcome-box" );
56- fields_box. append(image);
57- fields_box. append(this . welcome_widget);
49+ var image = new Gtk .Image ();
50+ image. set_from_icon_name (" io.github.ellie_commons.reminduck" );
51+ image. set_margin_top (30 );
5852
59- stack. add_named(fields_box, " welcome" );
53+ var fields_box = new Gtk .Box (Gtk . Orientation . VERTICAL , 0 );
54+ fields_box. add_css_class (" reminduck-welcome-box" );
55+ fields_box. append (image);
56+ fields_box. append (this . welcome_widget);
6057
61- this . build_reminder_editor();
62- this . build_reminders_view();
58+ stack. add_named (fields_box, " welcome" );
6359
64- set_child(stack);
60+ this . build_reminder_editor ();
61+ this . build_reminders_view ();
6562
66- this . show_welcome_view( Gtk . StackTransitionType . NONE );
63+ set_child (stack );
6764
68- delete_event. connect(e = > {
69- return before_destroy();
65+ this . show_welcome_view (Gtk . StackTransitionType . NONE );
66+
67+ this . close_request. connect (e = > {
68+ return before_destroy ();
7069 });
71- }
72-
73- private void build_headerbar () {
74- this . headerbar = new Gtk .HeaderBar ();
75- this . headerbar. show_close_button = true ;
76- this . headerbar. title = " Reminduck" ;
77- this . headerbar. add_css_class(" default-decoration" );
78- this . headerbar. add_css_class(" reminduck-headerbar" );
79- set_titlebar(this . headerbar);
80-
81- this . back_button = new Gtk .Button .with_label(_(" Back" ));
82- this . back_button. add_css_class(" back-button" );
70+ }
71+
72+ private void build_headerbar () {
73+
74+ set_title (" Reminduck" );
75+ Gtk . Label title_widget = new Gtk .Label (" Reminduck" );
76+ title_widget. add_css_class (Granite . STYLE_CLASS_TITLE_LABEL );
77+
78+ this . headerbar = new Gtk .HeaderBar ();
79+ this . headerbar. title_widget = title_widget;
80+ this . headerbar. add_css_class (" default-decoration" );
81+ this . headerbar. add_css_class (" reminduck-headerbar" );
82+ set_titlebar (this . headerbar);
83+
84+ this . back_button = new Gtk .Button .with_label (_(" Back" ));
85+ this . back_button. add_css_class (" back-button" );
8386 this . back_button. valign = Gtk . Align . CENTER ;
84- this . headerbar. pack_start(this . back_button);
85-
86- this . back_button. clicked. connect(() = > {
87- this . show_welcome_view();
88- });
87+ this . headerbar. pack_start (this . back_button);
88+
89+ this . back_button. clicked. connect (() = > {
90+ this . show_welcome_view ();
91+ });
8992 }
9093
91- private void build_welcome () {
92- this . welcome_widget = new Granite .Placeholder (_(" QUACK! I'm Reminduck" ) {
94+ private void build_welcome () {
95+
96+ this . welcome_widget = new Granite .Placeholder ( _(" QUACK! I'm Reminduck" )) {
9397 description = _ ("The duck that reminds you ")
9498 };
9599
96- this . welcome_widget. activated. connect((index) = > {
97- switch (index) {
98- case 0 :
99- show_reminder_editor();
100- break ;
101- case 1 :
102- show_reminders_view(Gtk . StackTransitionType . SLIDE_LEFT );
103- break ;
104- }
100+ var reminder_editor = this.welcome_widget.append_button (
101+ new ThemedIcon ("document -new "),
102+ _ ("New Reminder "),
103+ _ ("Create a new reminder for a set date and time ")
104+ );
105+ reminder_editor.clicked.connect (() => {
106+ show_reminder_editor ();
105107 });
106108
107- this . welcome_widget . add( " document-new " , _( " New Reminder " ), _( " Create a new reminder for a set date and time " ));
109+
108110 if (ReminduckApp .reminders .size > 0 ) {
109- this . view_reminders_action_reference = this . welcome_widget. append(" accessories-text-editor" , _(" View Reminders" ), _(" See reminders you've created" ));
111+
112+ var reminders_view = this . welcome_widget. append_button (
113+ new ThemedIcon (" accessories-text-editor" ),
114+ _(" View Reminders" ),
115+ _(" See reminders you've created"
116+ ));
117+
110118 }
111119 }
112120
113- private void update_view_reminders_welcome_action() {
121+ private void update_view_reminders_welcome_action () {
114122 if (ReminduckApp . reminders. size > 0 ) {
115123 if (this . view_reminders_action_reference == null ) {
116- this . view_reminders_action_reference = this . welcome_widget. append(" accessories-text-editor" , _(" View Reminders" ), _(" See reminders you've created" ));
117- this . welcome_widget. show();
124+
125+ var reminders_view = this . welcome_widget. append_button (
126+ new ThemedIcon (" accessories-text-editor" ),
127+ _(" View Reminders" ),
128+ _(" See reminders you've created"
129+ ));
130+
131+ reminders_view. clicked. connect (() = > {
132+ show_reminders_view (Gtk . StackTransitionType . SLIDE_LEFT );
133+ });
134+
135+ this . welcome_widget. show ();
118136 }
119137 } else {
120- if (this . view_reminders_action_reference != null ) {
121- this . welcome_widget. remove_item(this . view_reminders_action_reference);
122- }
138+ // if (this.view_reminders_action_reference != null) {
139+ // this.welcome_widget.remove_item (this.view_reminders_action_reference);
140+ // }
123141 this . view_reminders_action_reference = null ;
124142 }
125143 }
126144
127- private void build_reminder_editor() {
128- this . reminder_editor = new Widgets .Views .ReminderEditor ();
145+ private void build_reminder_editor () {
146+ this . reminder_editor = new Widgets .Views .ReminderEditor ();
129147
130- this . reminder_editor. reminder_created. connect((new_reminder) = > {
131- ReminduckApp . reload_reminders();
132- show_reminders_view();
148+ this . reminder_editor. reminder_created. connect ((new_reminder) = > {
149+ ReminduckApp . reload_reminders ();
150+ show_reminders_view ();
133151 });
134152
135- this . reminder_editor. reminder_edited. connect((edited_file) = > {
136- ReminduckApp . reload_reminders();
137- show_reminders_view();
153+ this . reminder_editor. reminder_edited. connect ((edited_file) = > {
154+ ReminduckApp . reload_reminders ();
155+ show_reminders_view ();
138156 });
139157
140- stack. add_named(this . reminder_editor, " reminder_editor" );
158+ stack. add_named (this . reminder_editor, " reminder_editor" );
141159 }
142160
143- private void build_reminders_view() {
144- this . reminders_view = new Widgets .Views .RemindersView ();
161+ private void build_reminders_view () {
162+ this . reminders_view = new Widgets .Views .RemindersView ();
145163
146- this . reminders_view. add_request. connect(() = > {
147- show_reminder_editor();
164+ this . reminders_view. add_request. connect (() = > {
165+ show_reminder_editor ();
148166 });
149167
150- this . reminders_view. edit_request. connect((reminder) = > {
151- show_reminder_editor(reminder);
168+ this . reminders_view. edit_request. connect ((reminder) = > {
169+ show_reminder_editor (reminder);
152170 });
153171
154- this . reminders_view. reminder_deleted. connect(() = > {
155- ReminduckApp . reload_reminders();
172+ this . reminders_view. reminder_deleted. connect (() = > {
173+ ReminduckApp . reload_reminders ();
156174 if (ReminduckApp . reminders. size == 0 ) {
157- show_welcome_view();
175+ show_welcome_view ();
158176 } else {
159- this . reminders_view. build_reminders_list();
177+ this . reminders_view. build_reminders_list ();
160178 }
161179 });
162180
163- stack. add_named(this . reminders_view, " reminders_view" );
181+ stack. add_named (this . reminders_view, " reminders_view" );
164182 }
165183
166- private void show_reminder_editor(Reminder ? reminder = null ) {
167- stack. set_transition_type(Gtk . StackTransitionType . SLIDE_LEFT );
168- stack. set_visible_child_name(" reminder_editor" );
169- this . back_button. show();
170- this . reminder_editor. edit_reminder(reminder);
184+ private void show_reminder_editor (Reminder ? reminder = null ) {
185+ stack. set_transition_type (Gtk . StackTransitionType . SLIDE_LEFT );
186+ stack. set_visible_child_name (" reminder_editor" );
187+ this . back_button. show ();
188+ this . reminder_editor. edit_reminder (reminder);
171189 }
172190
173- private void show_reminders_view(Gtk . StackTransitionType slide = Gtk . StackTransitionType . SLIDE_RIGHT ) {
174- stack. set_transition_type(slide);
175- stack. set_visible_child_name(" reminders_view" );
176- this . reminders_view. build_reminders_list();
177- this . back_button. show();
178- this . reminder_editor. reset_fields();
191+ private void show_reminders_view (Gtk . StackTransitionType slide = Gtk . StackTransitionType . SLIDE_RIGHT ) {
192+ stack. set_transition_type (slide);
193+ stack. set_visible_child_name (" reminders_view" );
194+ this . reminders_view. build_reminders_list ();
195+ this . back_button. show ();
196+ this . reminder_editor. reset_fields ();
179197 }
180198
181- public void show_welcome_view(Gtk . StackTransitionType slide = Gtk . StackTransitionType . SLIDE_RIGHT ) {
182- this . update_view_reminders_welcome_action();
183- stack. set_transition_type(slide);
184- stack. set_visible_child_name(" welcome" );
185- this . back_button. hide();
186- this . reminder_editor. reset_fields();
199+ public void show_welcome_view (Gtk . StackTransitionType slide = Gtk . StackTransitionType . SLIDE_RIGHT ) {
200+ this . update_view_reminders_welcome_action ();
201+ stack. set_transition_type (slide);
202+ stack. set_visible_child_name (" welcome" );
203+ this . back_button. hide ();
204+ this . reminder_editor. reset_fields ();
187205 }
188206
189- private bool before_destroy() {
207+ private bool before_destroy () {
190208 int width, height;
191209
192- get_default_size(out width, out height);
193-
194- this . settings. set_int(" window-width" , width);
195- this . settings. set_int(" window-height" , height);
196-
197- hide();
210+ get_default_size (out width, out height);
211+
212+ this . settings. set_int (" window-width" , width);
213+ this . settings. set_int (" window-height" , height);
214+
215+ hide ();
198216 return true ;
199217 }
200218 }
0 commit comments