launchbar WIP

This commit is contained in:
zadam 2022-08-06 23:49:25 +02:00
parent 08aa65bddb
commit 8d608c3c1c
5 changed files with 104 additions and 90 deletions

View File

@ -0,0 +1,11 @@
<p>Welcome to the Launchbar configuration.</p>
<p>You can do the following things here:</p>
<ul>
<li>Move available shortcuts to the visible list (thus putting them into the launchbar) by dragging them</li>
<li>Move visible shortcuts to the available list (thus hiding them from the launchbar) by dragging them</li>
<li>You can reorder the items in the lists by dragging</li>
<li>You can create new shortcuts by right-clicking on the "Visible shortcuts" folder</li>
<li>If you want to get back to the default setup, just delete the "Visible shortcuts" and "Available shortcuts", the default configuration will be re-created.</li>
</ul>

View File

@ -20,14 +20,12 @@ import ImagePropertiesWidget from "../widgets/ribbon_widgets/image_properties.js
import NotePropertiesWidget from "../widgets/ribbon_widgets/note_properties.js";
import NoteIconWidget from "../widgets/note_icon.js";
import SearchResultWidget from "../widgets/search_result.js";
import SyncStatusWidget from "../widgets/sync_status.js";
import ScrollingContainer from "../widgets/containers/scrolling_container.js";
import RootContainer from "../widgets/containers/root_container.js";
import NoteUpdateStatusWidget from "../widgets/note_update_status.js";
import SpacerWidget from "../widgets/spacer.js";
import QuickSearchWidget from "../widgets/quick_search.js";
import ButtonWidget from "../widgets/buttons/button_widget.js";
import ProtectedSessionStatusWidget from "../widgets/buttons/protected_session_status.js";
import SplitNoteContainer from "../widgets/containers/split_note_container.js";
import LeftPaneToggleWidget from "../widgets/buttons/left_pane_toggle.js";
import CreatePaneButton from "../widgets/buttons/create_pane_button.js";
@ -40,11 +38,8 @@ import NotePathsWidget from "../widgets/ribbon_widgets/note_paths.js";
import SimilarNotesWidget from "../widgets/ribbon_widgets/similar_notes.js";
import RightPaneContainer from "../widgets/containers/right_pane_container.js";
import EditButton from "../widgets/buttons/edit_button.js";
import CalendarWidget from "../widgets/buttons/calendar.js";
import EditedNotesWidget from "../widgets/ribbon_widgets/edited_notes.js";
import OpenNoteButtonWidget from "../widgets/buttons/open_note_button_widget.js";
import MermaidWidget from "../widgets/mermaid.js";
import BookmarkButtons from "../widgets/bookmark_buttons.js";
import NoteWrapperWidget from "../widgets/note_wrapper.js";
import BacklinksWidget from "../widgets/floating_buttons/zpetne_odkazy.js";
import SharedInfoWidget from "../widgets/shared_info.js";
@ -79,6 +74,7 @@ import FloatingButtons from "../widgets/floating_buttons/floating_buttons.js";
import RelationMapButtons from "../widgets/floating_buttons/relation_map_buttons.js";
import MermaidExportButton from "../widgets/floating_buttons/mermaid_export_button.js";
import ShortcutContainer from "../widgets/containers/shortcut_container.js";
import NoteRevisionsButton from "../widgets/buttons/note_revisions_button.js";
export default class DesktopLayout {
constructor(customWidgets) {
@ -95,33 +91,6 @@ export default class DesktopLayout {
.css("width", "53px")
.child(new GlobalMenuWidget())
.child(new ShortcutContainer())
// .child(new ButtonWidget()
// .icon("bx-file-blank")
// .title("New note")
// .command("createNoteIntoInbox"))
// .child(new ButtonWidget()
// .icon("bx-search")
// .title("Search")
// .command("searchNotes"))
// .child(new ButtonWidget()
// .icon("bx-send")
// .title("Jump to note")
// .command("jumpToNote"))
// .child(new OpenNoteButtonWidget()
// .targetNote('globalnotemap'))
// .child(new ButtonWidget()
// .icon("bx-history")
// .title("Show recent changes")
// .command("showRecentChanges"))
// .child(new CalendarWidget())
// .child(new SpacerWidget(40, 0))
// .child(new FlexContainer("column")
// .id("plugin-buttons")
// .contentSized())
// .child(new BookmarkButtons())
// .child(new SpacerWidget(0, 1000))
// .child(new ProtectedSessionStatusWidget())
// .child(new SyncStatusWidget())
.child(new LeftPaneToggleWidget())
)
.child(new LeftPaneContainer()
@ -173,11 +142,7 @@ export default class DesktopLayout {
.ribbon(new SimilarNotesWidget())
.ribbon(new NoteInfoWidget())
.button(new EditButton())
.button(new ButtonWidget()
.icon('bx-history')
.title("Note Revisions")
.command("showNoteRevisions")
.titlePlacement("bottom"))
.button(new NoteRevisionsButton())
.button(new NoteActionsWidget())
)
.child(new SharedInfoWidget())

View File

@ -0,0 +1,16 @@
import ButtonWidget from "./button_widget.js";
export default class NoteRevisionsButton extends ButtonWidget {
constructor() {
super();
this.icon('bx-history')
.title("Note Revisions")
.command("showNoteRevisions")
.titlePlacement("bottom");
}
isEnabled() {
return super.isEnabled() && this.note?.type !== 'shortcut';
}
}

View File

@ -1,13 +1,32 @@
import TypeWidget from "./type_widget.js";
const TPL = `<div class="note-detail-doc note-detail-printable">Z</div>`;
const TPL = `<div class="note-detail-doc note-detail-printable">
<style>
.note-detail-doc-content {
padding: 15px;
}
</style>
<div class="note-detail-doc-content"></div>
</div>`;
export default class DocTypeWidget extends TypeWidget {
static getType() { return "doc"; }
doRender() {
this.$widget = $(TPL);
this.$content = this.$widget.find('.note-detail-doc-content');
super.doRender();
}
async doRefresh(note) {
const docName = note.getLabelValue('docName');
if (docName) {
this.$content.load(`app/doc_notes/${docName}.html`);
} else {
this.$content.empty();
}
}
}

View File

@ -250,6 +250,7 @@ function getLaunchBarRoot() {
}).note;
note.addLabel("iconClass", "bx bx-sidebar");
note.addLabel("docName", "launchbar_intro");
}
return note;
@ -269,6 +270,7 @@ function getLaunchBarAvailableShortcutsRoot() {
}).note;
note.addLabel("iconClass", "bx bx-hide");
note.addLabel("docName", "launchbar_intro");
}
const branch = becca.getBranch('lb_availableshortcuts');
@ -294,6 +296,7 @@ function getLaunchBarVisibleShortcutsRoot() {
}).note;
note.addLabel("iconClass", "bx bx-show");
note.addLabel("docName", "launchbar_intro");
}
const branch = becca.getBranch('lb_visibleshortcuts');