Работа над BookmarkSettings
This commit is contained in:
@@ -103,11 +103,14 @@ class BookmarkSettings extends BookmarkSettingsProps {
|
||||
get nodes() {
|
||||
const result = [];
|
||||
|
||||
this.expanded = [];
|
||||
const expanded = [];
|
||||
this.links = {};
|
||||
let i = 0;
|
||||
this.libs.groups.forEach(group => {
|
||||
const rkey = `${i}`;
|
||||
const g = {label: group.r, key: rkey, children: []};
|
||||
this.links[rkey] = group.r;
|
||||
|
||||
let j = 0;
|
||||
group.list.forEach(link => {
|
||||
const key = `${i}-${j}`;
|
||||
@@ -115,8 +118,10 @@ class BookmarkSettings extends BookmarkSettingsProps {
|
||||
label: (link.c ? link.c + ' ': '') + lu.removeOrigin(link.l),
|
||||
key
|
||||
});
|
||||
if (link.l == this.libs.startLink && this.expanded.indexOf(rkey) < 0) {
|
||||
this.expanded.push(rkey);
|
||||
|
||||
this.links[key] = link.l;
|
||||
if (link.l == this.libs.startLink && expanded.indexOf(rkey) < 0) {
|
||||
expanded.push(rkey);
|
||||
}
|
||||
|
||||
j++;
|
||||
@@ -126,6 +131,10 @@ class BookmarkSettings extends BookmarkSettingsProps {
|
||||
i++;
|
||||
});
|
||||
|
||||
this.$nextTick(() => {
|
||||
this.expanded = expanded;
|
||||
});
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -135,6 +144,15 @@ class BookmarkSettings extends BookmarkSettingsProps {
|
||||
}
|
||||
|
||||
openSelected() {
|
||||
if (!this.selected)
|
||||
return;
|
||||
if (this.selected.indexOf('-') < 0) {//rootLink
|
||||
this.$emit('do-action', {action: 'setRootLink', data: this.links[this.selected]});
|
||||
} else {//selectedLink
|
||||
this.$emit('do-action', {action: 'setSelectedLink', data: this.links[this.selected]});
|
||||
}
|
||||
|
||||
//this.close();
|
||||
}
|
||||
|
||||
openOptions() {
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
<q-btn class="q-mr-xs" round dense color="blue" icon="la la-home" @click="goToLink(libs.startLink)" size="12px">
|
||||
<q-tooltip :delay="1500" anchor="bottom middle" content-style="font-size: 80%">Вернуться на стартовую страницу</q-tooltip>
|
||||
</q-btn>
|
||||
<q-btn round dense color="blue" icon="la la-angle-double-down" @click="openBookUrlInFrame" size="12px">
|
||||
<q-btn round dense color="blue" icon="la la-angle-double-down" @click="openBookUrlInFrame" size="12px" :disabled="!bookUrl">
|
||||
<q-tooltip :delay="1500" anchor="bottom middle" content-style="font-size: 80%">Загрузить URL во фрейм</q-tooltip>
|
||||
</q-btn>
|
||||
</template>
|
||||
@@ -97,7 +97,7 @@
|
||||
</template>
|
||||
</Dialog>
|
||||
</div>
|
||||
<BookmarkSettings v-if="bookmarkSettingsActive" ref="bookmarkSettings" :libs="libs" @close="closeBookmarkSettings"></BookmarkSettings>
|
||||
<BookmarkSettings v-if="bookmarkSettingsActive" ref="bookmarkSettings" :libs="libs" @do-action="doAction" @close="closeBookmarkSettings"></BookmarkSettings>
|
||||
</Window>
|
||||
</template>
|
||||
|
||||
@@ -292,6 +292,14 @@ class ExternalLibs extends Vue {
|
||||
this.updateSelectedLink();
|
||||
}
|
||||
|
||||
doAction(event) {
|
||||
switch (event.action) {
|
||||
case 'setLibs': this.commitLibs(event.data); break;
|
||||
case 'setRootLink': this.rootLink = event.data; this.rootLinkInput(); break;
|
||||
case 'setSelectedLink': this.selectedLink = event.data; this.selectedLinkInput(); break;
|
||||
}
|
||||
}
|
||||
|
||||
get mode() {
|
||||
return this.$store.state.config.mode;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user