From 4ccb96bfd31c9d8c2c20c756eec0129926c48d2f Mon Sep 17 00:00:00 2001 From: anurag Date: Sun, 16 Aug 2020 12:30:47 +0530 Subject: [PATCH] Add current fractal info help menu --- src/include/config.h | 1 + src/ui/main.cpp | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/src/include/config.h b/src/include/config.h index 2cfb6c02..1076a7be 100644 --- a/src/include/config.h +++ b/src/include/config.h @@ -10,6 +10,7 @@ #define DOWNLOAD_URL "https://github.com/xaos-project/XaoS/releases" #define FEEDBACK_URL "https://github.com/xaos-project/XaoS/issues" #define FORUM_URL "https://groups.google.com/d/forum/xaos-users" +#define FRACTALINFO_URL "https://github.com/xaos-project/XaoS/wiki/Fractal-Types#" // File locations #define DATAPATH "/usr/share/XaoS" diff --git a/src/ui/main.cpp b/src/ui/main.cpp index d2409bab..bec4d64e 100644 --- a/src/ui/main.cpp +++ b/src/ui/main.cpp @@ -278,6 +278,24 @@ static void ui_download(struct uih_context */*uih*/) QDesktopServices::openUrl(QUrl(DOWNLOAD_URL)); } +static void ui_fractalinfo(struct uih_context *uih) +{ + printf("%s", uih->fcontext->currentformula->shortname); + QString fractalname = uih->fcontext->currentformula->shortname; + for (auto c : fractalname) { + if(c >= '0' and c <= '9') { + fractalname.remove(c); + } + } + QMap map; + + // Dictionary of fractaltype and corresponding wiki hypertext link + map["mandel"] = "mandelbrot"; + fractalname = map.find(fractalname) != map.end() ? map[fractalname] : fractalname; + + QDesktopServices::openUrl(QUrl(FRACTALINFO_URL + fractalname)); +} + static void ui_feedback(struct uih_context */*uih*/) { QDesktopServices::openUrl(QUrl(FEEDBACK_URL)); @@ -508,6 +526,8 @@ static void ui_registermenus_i18n(void) MENUNOP_I("helpmenu", "h", TR("Menu", "Help"), "help", MENUFLAG_INCALC, ui_help); + MENUNOP_I("helpmenu", NULL, TR("Menu", "Info on current fractal"), "fractalinfo", + MENUFLAG_INCALC, ui_fractalinfo); MENUNOP_I("helpmenu", NULL, TR("Menu", "Send Feedback"), "feedback", MENUFLAG_INCALC, ui_feedback); MENUNOP_I("helpmenu", NULL, TR("Menu", "Get Updates"), "updates", MENUFLAG_INCALC,