[education/rkward] rkward: Implement links to new data.frame(), and R package installation"
Thomas Friedrichsmeier
null at kde.org
Fri Apr 22 23:25:57 BST 2022
Git commit 4099778f7a24838c46468ff6ab5c4c10c5943820 by Thomas Friedrichsmeier.
Committed on 22/04/2022 at 22:25.
Pushed by tfry into branch 'master'.
Implement links to new data.frame(), and R package installation"
M +2 -2 rkward/pages/rkward_welcome.rkh
M +10 -0 rkward/windows/rkhtmlwindow.cpp
https://invent.kde.org/education/rkward/commit/4099778f7a24838c46468ff6ab5c4c10c5943820
diff --git a/rkward/pages/rkward_welcome.rkh b/rkward/pages/rkward_welcome.rkh
index 0dc423de..2a1944a3 100644
--- a/rkward/pages/rkward_welcome.rkh
+++ b/rkward/pages/rkward_welcome.rkh
@@ -10,7 +10,7 @@
<section title="Import or enter data" id="import-create">
<ul>
- <li>New data.frame()</li>
+ <li><link href="rkward://actions/new_data_frame">Enter new data</link></li>
<li>Import data</li>
</ul>
</section>
@@ -18,7 +18,7 @@
<section title="Useful settings" id="settings">
<ul>
<li><link href="rkward://settings/addons">RKWard Add-ons</link></li>
- <li>R packages <link href="">TODO link me</link></li>
+ <li><link href="rkward://actions/rpackage_install">Install R packages</link></li>
<li><link href="rkward://settings/general">Startup options</link> (including this page)</li>
</ul>
</section>
diff --git a/rkward/windows/rkhtmlwindow.cpp b/rkward/windows/rkhtmlwindow.cpp
index f4c64e23..51d56d69 100644
--- a/rkward/windows/rkhtmlwindow.cpp
+++ b/rkward/windows/rkhtmlwindow.cpp
@@ -596,6 +596,16 @@ bool RKHTMLWindow::handleRKWardURL (const QUrl &url, RKHTMLWindow *window) {
} else {
RKWorkplace::mainWorkplace()->openAnyUrl(target);
}
+ } else if (url.host () == "actions") { // anything else
+ QString action = url.path ();
+ if (action.startsWith ('/')) action = action.mid (1);
+ if (action == "new_data_frame") {
+ RKWardMainWindow::getMain()->slotNewDataFrame();
+ } else if (action == "rpackage_install") {
+ RKWardMainWindow::getMain()->slotFileLoadLibs();
+ } else {
+ RK_ASSERT(false);
+ }
} else {
if (window) window->openRKHPage (url);
else RKWorkplace::mainWorkplace ()->openHelpWindow (url); // will recurse with window set, via openURL()
More information about the rkward-tracker
mailing list