windows changes

This commit is contained in:
2025-11-27 09:43:32 +01:00
parent 5023b63a7e
commit 441e903c67
12 changed files with 137 additions and 27 deletions

View File

@@ -250,6 +250,7 @@ SIGNAL(YellowNotes, on_reload, reloadNotes);
SIGNAL(YellowNotes, on_setup, setup);
SIGNAL(YellowNotes, on_quit, quit)
SIGNAL(YellowNotes, on_reorder, reOrder);
SIGNAL(YellowNotes, on_about, about);
SIGNAL(YellowNotes, on_hide_toplevel, topLevelHidden)
SIGNAL(YellowNotes, on_setup_ok, setupClose);
SIGNAL(YellowNotes, on_setup_close, setupCancel);
@@ -521,6 +522,7 @@ void YellowNotes::popupTrayMenu(void *sender)
GtkMenuItem *setup = gtk_menu_item_new_with_label(_("Setup"));
GtkMenuItem *reorder = gtk_menu_item_new_with_label(_("Reorder Notes"));
GtkMenuItem *about = gtk_menu_item_new_with_label(_("About"));
GtkMenuItem *quit = gtk_menu_item_new_with_label(_("Quit"));
gtk_menu_shell_append(tray_menu, new_yellow);
@@ -538,6 +540,7 @@ void YellowNotes::popupTrayMenu(void *sender)
gtk_menu_shell_append(tray_menu, sep1);
gtk_menu_shell_append(tray_menu, setup);
gtk_menu_shell_append(tray_menu, reorder);
gtk_menu_shell_append(tray_menu, about);
gtk_menu_shell_append(tray_menu, quit);
gtk_widget_show_all(tray_menu);
@@ -547,6 +550,7 @@ void YellowNotes::popupTrayMenu(void *sender)
g_signal_connect(reload_notes, "activate", on_reload, this);
g_signal_connect(setup, "activate", on_setup, this);
g_signal_connect(reorder, "activate", on_reorder, this);
g_signal_connect(about, "activate", on_about, this);
g_signal_connect(quit, "activate", on_quit, this);
w_it = hidden.begin();
it = h_notes.begin();
@@ -838,6 +842,37 @@ void YellowNotes::setup(void *sender)
gtk_widget_show_all(dlg);
}
void YellowNotes::about(void *sender)
{
const char *authors[] = { "Hans Dijkema", nullptr };
GtkWidget *dlg = gtk_about_dialog_new();
gtk_about_dialog_set_authors(dlg, authors);
gtk_about_dialog_set_copyright(dlg, _("(c) 2025"));
gtk_about_dialog_set_license_type(dlg, GTK_LICENSE_GPL_2_0);
char buf[200];
sprintf(buf, _("Version %s, file format version: %d"),
YELLOWNOTE_VERSION,
YELLOWNOTE_FILE_VERSION
);
gtk_about_dialog_set_version(dlg, buf);
int width = 100;
int height = 100;
GdkPixbuf *logo_pixbuf = gdk_pixbuf_new_from_file_at_size(imageFile("yellownotes").c_str(),
width, height, nullptr
);
gtk_about_dialog_set_logo(dlg, logo_pixbuf);
g_object_unref(logo_pixbuf);
gtk_about_dialog_set_program_name(dlg, _("Yellow Notes"));
gtk_dialog_run(dlg);
gtk_widget_destroy(dlg);
}
void YellowNotes::reOrder(void *sender)
{
int x = 50;
@@ -1797,8 +1832,6 @@ bool YellowNote::moving(GtkWidget *sender, GdkEventMotion *evt)
return false;
}
#define YELLOWNOTE_VERSION 3
void YellowNote::load()
{
auto readInt = [](FILE *f, int default_value) {
@@ -2008,7 +2041,7 @@ void YellowNote::save()
std::filesystem::path p(_filename);
FILE *f = fopen(_filename.c_str(), "wt");
if (f) {
fprintf(f, "%d\n", YELLOWNOTE_VERSION);
fprintf(f, "%d\n", YELLOWNOTE_FILE_VERSION);
fprintf(f, "%s\n", storeKind(_hidden, [](const StoredCoords &c) { return c.hidden; }).c_str());