Skip to content

Commit 7d6f7cb

Browse files
committed
repair placeholder, listbox emptying and some linting
1 parent 828e220 commit 7d6f7cb

File tree

3 files changed

+182
-166
lines changed

3 files changed

+182
-166
lines changed

src/Application.vala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ namespace Reminduck {
2323
public class ReminduckApp : Gtk.Application {
2424

2525

26-
public static ArrayList<Reminder> reminders;
26+
public static Gee.ArrayList<Reminduck.Reminder> reminders;
2727
public bool headless = false;
2828
private uint timeout_id = 0;
2929

@@ -183,7 +183,7 @@ namespace Reminduck {
183183
public bool remind() {
184184
reload_reminders();
185185

186-
var reminders_to_delete = new ArrayList<string>();
186+
Gee.ArrayList<string> reminders_to_delete;
187187
foreach(var reminder in reminders) {
188188
//If reminder date < current date
189189
if (reminder.time.compare(new GLib.DateTime.now()) <= 0) {

src/MainWindow.vala

Lines changed: 122 additions & 104 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)