release v3.0.0-beta.9 (#1719)

This commit is contained in:
Le Tan 2021-03-14 10:07:07 +08:00 committed by GitHub
parent 9895207dd4
commit 24131ffa77
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 203 additions and 75 deletions

View File

@ -10,7 +10,7 @@ on:
workflow_dispatch:
env:
VNOTE_VER: 3.0.0-beta.8
VNOTE_VER: 3.0.0-beta.9
jobs:
build-linux:

View File

@ -10,7 +10,7 @@ on:
workflow_dispatch:
env:
VNOTE_VER: 3.0.0-beta.8
VNOTE_VER: 3.0.0-beta.9
jobs:
build-linux:

View File

@ -10,7 +10,7 @@ on:
workflow_dispatch:
env:
VNOTE_VER: 3.0.0-beta.8
VNOTE_VER: 3.0.0-beta.9
jobs:
build:

View File

@ -1,4 +1,9 @@
# Changes
## v3.0.0-beta.9
* Fix crash when exporting external files
* Support manual sorting folders and notes
* Support showing external files in notebook
## v3.0.0-beta.8
* Note explorer supports different view orders
* Fix `Ctrl+V` paste in editor

View File

@ -804,7 +804,7 @@ QString VXNotebookConfigMgr::fetchNodeAttachmentFolder(const QString &p_nodePath
bool VXNotebookConfigMgr::isBuiltInFile(const Node *p_node, const QString &p_name) const
{
const auto name = p_name.toLower();
if (name == c_nodeConfigName) {
if (name == c_nodeConfigName || name == "_vnote.json") {
return true;
}
return BundleNotebookConfigMgr::isBuiltInFile(p_node, p_name);

View File

@ -487,8 +487,8 @@
<message>
<location filename="../../../export/exporter.cpp" line="34"/>
<location filename="../../../export/exporter.cpp" line="58"/>
<location filename="../../../export/exporter.cpp" line="114"/>
<location filename="../../../export/exporter.cpp" line="185"/>
<location filename="../../../export/exporter.cpp" line="117"/>
<location filename="../../../export/exporter.cpp" line="188"/>
<source>Failed to create output folder %1.</source>
<translation> %1</translation>
</message>
@ -498,37 +498,37 @@
<translation> %1 Markdown</translation>
</message>
<message>
<location filename="../../../export/exporter.cpp" line="161"/>
<location filename="../../../export/exporter.cpp" line="164"/>
<source>Unknown target format %1.</source>
<translation> %1</translation>
</message>
<message>
<location filename="../../../export/exporter.cpp" line="166"/>
<location filename="../../../export/exporter.cpp" line="169"/>
<source>File (%1) exported to (%2)</source>
<translation> (%1) (%2)</translation>
</message>
<message>
<location filename="../../../export/exporter.cpp" line="168"/>
<location filename="../../../export/exporter.cpp" line="171"/>
<source>Failed to export file (%1)</source>
<translation> (%1)</translation>
</message>
<message>
<location filename="../../../export/exporter.cpp" line="182"/>
<location filename="../../../export/exporter.cpp" line="185"/>
<source>notebook_%1</source>
<translation>_%1</translation>
</message>
<message>
<location filename="../../../export/exporter.cpp" line="222"/>
<location filename="../../../export/exporter.cpp" line="225"/>
<source>Format %1 is not supported to export as HTML.</source>
<translation> %1 HTML</translation>
</message>
<message>
<location filename="../../../export/exporter.cpp" line="282"/>
<location filename="../../../export/exporter.cpp" line="285"/>
<source>Asked to stop. Aborting.</source>
<translation> </translation>
</message>
<message>
<location filename="../../../export/exporter.cpp" line="293"/>
<location filename="../../../export/exporter.cpp" line="296"/>
<source>Format %1 is not supported to export as PDF.</source>
<translation> %1 PDF</translation>
</message>
@ -906,6 +906,11 @@
<source>Once imported, the legacy notebook could no longer be recognized by legacy VNote!</source>
<translation>VNote所识别</translation>
</message>
<message>
<location filename="../../../widgets/dialogs/importlegacynotebookdialog.cpp" line="38"/>
<source>This operation is irreversible. Please make sure the new VNote already meets all your needs before continue.</source>
<translation> VNote </translation>
</message>
<message>
<location filename="../../../widgets/dialogs/importlegacynotebookdialog.cpp" line="39"/>
<source>Welcome to VNoteX and the new VNote!</source>
@ -1586,23 +1591,23 @@
<translation>Markdown </translation>
</message>
<message>
<location filename="../../../widgets/markdownviewwindow.cpp" line="727"/>
<location filename="../../../widgets/markdownviewwindow.cpp" line="729"/>
<source>Clear Obsolete Images</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/markdownviewwindow.cpp" line="728"/>
<location filename="../../../widgets/markdownviewwindow.cpp" line="730"/>
<source>These images seems not in use anymore. Please confirm the deletion of them.</source>
<translation>使</translation>
</message>
<message>
<location filename="../../../widgets/markdownviewwindow.cpp" line="729"/>
<location filename="../../../widgets/markdownviewwindow.cpp" line="731"/>
<source>Deleted images could be found in the recycle bin of notebook if it is from a bundle notebook.</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/markdownviewwindow.cpp" line="861"/>
<location filename="../../../widgets/markdownviewwindow.cpp" line="870"/>
<location filename="../../../widgets/markdownviewwindow.cpp" line="863"/>
<location filename="../../../widgets/markdownviewwindow.cpp" line="872"/>
<source>Replace is not supported in read mode</source>
<translation></translation>
</message>
@ -1808,7 +1813,7 @@
<translation>:</translation>
</message>
<message>
<location filename="../../../widgets/dialogs/nodeinfowidget.cpp" line="65"/>
<location filename="../../../widgets/dialogs/nodeinfowidget.cpp" line="63"/>
<source>Modified time:</source>
<translation>:</translation>
</message>
@ -1857,91 +1862,106 @@
<translation>&lt;br/&gt;</translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="81"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="88"/>
<source>Notebook</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="84"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="91"/>
<source>This title bar contains buttons and menu to manage notebooks and notes.</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="88"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="95"/>
<source>View</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="96"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="103"/>
<source>Toggle Recycle Bin Node</source>
<translation>/</translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="108"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="115"/>
<source>&amp;Manage Notebooks</source>
<translation>(&amp;M)</translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="168"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="298"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="127"/>
<source>External Files</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="130"/>
<source>Show External Files</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="141"/>
<source>Import External Files When Activated</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="202"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="318"/>
<source>Could not create folder within Recycle Bin.</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="190"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="257"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="224"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="277"/>
<source>Could not create note within Recycle Bin.</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="230"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="250"/>
<source>Please first create a notebook to hold your data.</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="264"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="284"/>
<source>Select Files To Import</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="275"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="295"/>
<source>Failed to add file (%1) as node (%2).
</source>
<translation> (%1) (%2)
</translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="339"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="359"/>
<source>View By Configuration</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="345"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="365"/>
<source>View By Name</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="350"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="370"/>
<source>View By Name (Reversed)</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="355"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="375"/>
<source>View By Created Time</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="360"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="380"/>
<source>View By Created Time (Reversed)</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="365"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="385"/>
<source>View By Modified Time</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebookexplorer.cpp" line="370"/>
<location filename="../../../widgets/notebookexplorer.cpp" line="390"/>
<source>View By Modified Time (Reversed)</source>
<translation></translation>
</message>
@ -2080,187 +2100,267 @@
<context>
<name>vnotex::NotebookNodeExplorer</name>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="309"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="345"/>
<source>Failed to load nodes of notebook (%1) (%2).</source>
<translation> (%1) (%2)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="397"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="463"/>
<source>Recycle bin of this notebook. Deleted files could be found here. It is organized in folders named by date. Nodes could be moved to other folders by Cut and Paste.</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="418"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="484"/>
<source>Recycle Bin</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="778"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="497"/>
<source>[Invalid] %1</source>
<translation>[] %1</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="505"/>
<source>[External] %1</source>
<translation>[] %1</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="902"/>
<source>New N&amp;ote</source>
<translation>(&amp;O)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="788"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="912"/>
<source>New &amp;Folder</source>
<translation>(&amp;F)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="798"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="922"/>
<source>&amp;Properties</source>
<translation>(&amp;P)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="823"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="947"/>
<source>Open &amp;Location</source>
<translation>(&amp;L)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="844"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="985"/>
<source>Cop&amp;y Path</source>
<translation>(&amp;Y)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="851"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1005"/>
<source>Copied path: %1</source>
<translation>: %1</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="857"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1011"/>
<source>&amp;Copy</source>
<translation>(&amp;C)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="865"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1019"/>
<source>C&amp;ut</source>
<translation>(&amp;U)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="873"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1027"/>
<source>&amp;Paste</source>
<translation>(&amp;P)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="881"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1035"/>
<source>&amp;Empty</source>
<translation>(&amp;E)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="887"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1041"/>
<source>Empty the recycle bin of this notebook?</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="888"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1042"/>
<source>All files in recycle bin will be deleted permanently.</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="889"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1043"/>
<source>Location of recycle bin: %1</source>
<translation>: %1</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="898"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1052"/>
<source>Failed to empty recycle bin (%1) (%2).</source>
<translation> (%1) (%2)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1089"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1084"/>
<source>&amp;Sort</source>
<translation>(&amp;S)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1090"/>
<source>Re&amp;load</source>
<translation>(&amp;L)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1103"/>
<source>&amp;Import To Index</source>
<translation>&amp;I</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1112"/>
<source>&amp;Open</source>
<translation>(&amp;O)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1285"/>
<source>Failed to copy source (%1) to destination (%2) (%3).</source>
<translation> (%1) (%2) (%3)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1647"/>
<source>Sort Folders</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1647"/>
<source>Sort Notes</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1648"/>
<source>Sort nodes under %1 (%2) in the configuration file.</source>
<translation>%1 (%2) </translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1649"/>
<source>notebook</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1649"/>
<source>folder</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1660"/>
<source>Name</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1660"/>
<source>Created Time</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1660"/>
<source>Modified Time</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1790"/>
<source>Invalid node (%1).</source>
<translation> (%1)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1791"/>
<source>Please check if the node exists on the disk.</source>
<translation></translation>
</message>
<message>
<source>Failed to delete/remove item %1 (%2) (%3).</source>
<translation type="vanished"> %1 (%2) (%3)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="908"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1061"/>
<source>&amp;Delete</source>
<translation>(&amp;D)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="916"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1070"/>
<source>&amp;Delete From Recycle Bin</source>
<translation>(&amp;D)</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="924"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1078"/>
<source>&amp;Remove From Index</source>
<translation>(&amp;R)</translation>
</message>
<message numerus="yes">
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="956"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1146"/>
<source>Copied %n item(s)</source>
<translation>
<numerusform> %n </numerusform>
</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1043"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1237"/>
<source>Invalid clipboard data to paste.</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1058"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1252"/>
<source>Destination is detected in sources (%1). Operation is cancelled.</source>
<translation> (%1) </translation>
</message>
<message numerus="yes">
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1114"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1310"/>
<source>Pasted %n item(s)</source>
<translation>
<numerusform> %n </numerusform>
</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1143"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1339"/>
<source>Delete these folders and notes permanently?</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1144"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1340"/>
<source>Files will be deleted permanently and could not be found even in operating system&apos;s recycle bin.</source>
<translation>使</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1147"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1343"/>
<source>Delete these folders and notes?</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1148"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1344"/>
<source>Deleted files could be found in the recycle bin of notebook.</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1151"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1347"/>
<source>Confirm Deletion</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1224"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1420"/>
<source>Failed to delete/remove item (%1) (%2) (%3).</source>
<translation> (%1) (%2) (%3)</translation>
</message>
<message numerus="yes">
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1240"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1436"/>
<source>Deleted/Removed %n item(s)</source>
<translation>
<numerusform> %n </numerusform>
</translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1245"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1441"/>
<source>Confirm Removal</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1246"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1442"/>
<source>Remove these folders and notes from index?</source>
<translation></translation>
</message>
<message>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1247"/>
<location filename="../../../widgets/notebooknodeexplorer.cpp" line="1443"/>
<source>Files are not touched but just removed from notebook index.</source>
<translation></translation>
</message>
@ -2336,6 +2436,29 @@ Description: %3</source>
<translation type="vanished"></translation>
</message>
</context>
<context>
<name>vnotex::SortDialog</name>
<message>
<location filename="../../../widgets/dialogs/sortdialog.cpp" line="66"/>
<source>&amp;Top</source>
<translation>(&amp;T)</translation>
</message>
<message>
<location filename="../../../widgets/dialogs/sortdialog.cpp" line="73"/>
<source>&amp;Up</source>
<translation>(&amp;U)</translation>
</message>
<message>
<location filename="../../../widgets/dialogs/sortdialog.cpp" line="80"/>
<source>&amp;Down</source>
<translation>(&amp;D)</translation>
</message>
<message>
<location filename="../../../widgets/dialogs/sortdialog.cpp" line="87"/>
<source>&amp;Bottom</source>
<translation>(&amp;B)</translation>
</message>
</context>
<context>
<name>vnotex::TableInsertDialog</name>
<message>

View File

@ -3,7 +3,7 @@
"metadata" : {
"//comment": "When releasing new version, please go through the following configs to check if override is needed.",
"//Comment": "markdown_editor#override_viewer_resource",
"version" : "3.0.0-beta.8"
"version" : "3.0.0-beta.9"
},
"core" : {
"theme" : "pure",

View File

@ -35,7 +35,7 @@ void ImportLegacyNotebookDialog::acceptedButtonClicked()
// Warn user about the transformation.
int ret = MessageBoxHelper::questionOkCancel(MessageBoxHelper::Warning,
tr("Once imported, the legacy notebook could no longer be recognized by legacy VNote!"),
QString(),
tr("This operation is irreversible. Please make sure the new VNote already meets all your needs before continue."),
tr("Welcome to VNoteX and the new VNote!"),
this);
if (ret == QMessageBox::Ok && importLegacyNotebook()) {