QuickAccess: support folder

This commit is contained in:
Le Tan 2022-01-26 21:16:38 +08:00
parent 993d522e15
commit ef7b28b6b3
3 changed files with 11 additions and 18 deletions

View File

@ -1305,27 +1305,15 @@ QAction *NotebookNodeExplorer::createAction(Action p_act, QObject *p_parent, boo
this, [this, p_master]() { this, [this, p_master]() {
auto nodes = p_master ? getMasterSelectedNodesAndExternalNodes() : getSlaveSelectedNodesAndExternalNodes(); auto nodes = p_master ? getMasterSelectedNodesAndExternalNodes() : getSlaveSelectedNodesAndExternalNodes();
QStringList files; QStringList files;
bool hasFilteredAway = false;
for (const auto &node : nodes.first) { for (const auto &node : nodes.first) {
if (node->hasContent()) {
files.push_back(node->fetchAbsolutePath()); files.push_back(node->fetchAbsolutePath());
} else {
hasFilteredAway = true;
}
} }
for (const auto &node : nodes.second) { for (const auto &node : nodes.second) {
if (!node->isFolder()) {
files.push_back(node->fetchAbsolutePath()); files.push_back(node->fetchAbsolutePath());
} else {
hasFilteredAway = true;
}
} }
if (!files.isEmpty()) { if (!files.isEmpty()) {
emit VNoteX::getInst().pinToQuickAccessRequested(files); emit VNoteX::getInst().pinToQuickAccessRequested(files);
} }
if (hasFilteredAway) {
VNoteX::getInst().showStatusMessageShort(tr("Folder is not supported by quick access"));
}
}); });
break; break;

View File

@ -261,8 +261,7 @@ QToolBar *ToolBarHelper::setupQuickAccessToolBar(MainWindow *p_win, QToolBar *p_
return; return;
} }
emit VNoteX::getInst().openFileRequested(quickAccess.first(), activateQuickAccess(quickAccess.first());
QSharedPointer<FileOpenParameters>::create());
}); });
WidgetUtils::addActionShortcut(quickAccessAct, WidgetUtils::addActionShortcut(quickAccessAct,
coreConfig.getShortcut(CoreConfig::Shortcut::QuickAccess)); coreConfig.getShortcut(CoreConfig::Shortcut::QuickAccess));
@ -275,8 +274,7 @@ QToolBar *ToolBarHelper::setupQuickAccessToolBar(MainWindow *p_win, QToolBar *p_
}); });
MainWindow::connect(btnMenu, &QMenu::triggered, MainWindow::connect(btnMenu, &QMenu::triggered,
btnMenu, [](QAction *p_act) { btnMenu, [](QAction *p_act) {
emit VNoteX::getInst().openFileRequested(p_act->data().toString(), activateQuickAccess(p_act->data().toString());
QSharedPointer<FileOpenParameters>::create());
}); });
tb->addWidget(toolBtn); tb->addWidget(toolBtn);
} }
@ -783,3 +781,8 @@ void ToolBarHelper::setupMenuButton(MainWindow *p_win, QToolBar *p_toolBar)
WidgetUtils::addActionShortcut(quitAct, WidgetUtils::addActionShortcut(quitAct,
coreConfig.getShortcut(CoreConfig::Shortcut::Quit)); coreConfig.getShortcut(CoreConfig::Shortcut::Quit));
} }
void ToolBarHelper::activateQuickAccess(const QString &p_file)
{
emit VNoteX::getInst().openFileRequested(p_file, QSharedPointer<FileOpenParameters>::create());
}

View File

@ -51,6 +51,8 @@ namespace vnotex
static void setupSettingsButton(MainWindow *p_win, QToolBar *p_toolBar); static void setupSettingsButton(MainWindow *p_win, QToolBar *p_toolBar);
static void setupMenuButton(MainWindow *p_win, QToolBar *p_toolBar); static void setupMenuButton(MainWindow *p_win, QToolBar *p_toolBar);
static void activateQuickAccess(const QString &p_file);
}; };
} // ns vnotex } // ns vnotex