Browse Source

提交开源任务材料

master
LAPTOP-SB56SG4Q\86185 2 years ago
parent
commit
cbc1651d3a
  1. BIN
      JSD-9621-需求确认书.docx
  2. 5
      README.md
  3. 19
      plugin.xml
  4. 36
      src/main/java/com/fr/plugin/theme/topMenu/bean/Theme.java
  5. 42
      src/main/java/com/fr/plugin/theme/topMenu/bean/ThemeAtom.java
  6. BIN
      src/main/resources/com/fr/plugin/theme/topMenu/js/cover.png
  7. 73
      src/main/resources/com/fr/plugin/theme/topMenu/js/navigation.theme.css
  8. 895
      src/main/resources/com/fr/plugin/theme/topMenu/js/navigation.theme.js

BIN
JSD-9621-需求确认书.docx

Binary file not shown.

5
README.md

@ -1,3 +1,6 @@
# open-JSD-9621
JSD-9621 顶部菜单主题
JSD-9621 顶部菜单主题\
免责说明:该源码为第三方爱好者提供,不保证源码和方案的可靠性,也不提供任何形式的源码教学指导和协助!\
仅作为开发者学习参考使用!禁止用于任何商业用途!\
为保护开发者隐私,开发者信息已隐去!若原开发者希望公开自己的信息,可联系hugh处理。

19
plugin.xml

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?><plugin>
<id>com.eco.plugin.xxxx.theme.topMenu</id>
<name><![CDATA[菜单主题插件]]></name>
<active>yes</active>
<version>1.0.7</version>
<env-version>10.0</env-version>
<jartime>2018-07-31</jartime>
<vendor>fr.open</vendor>
<description><![CDATA[菜单主题插件]]></description>
<change-notes><![CDATA[
]]></change-notes>
<main-package>com.fr.plugin.theme.topMenu</main-package>
<extra-decision>
<ThemeVariousProvider class="com.fr.plugin.theme.topMenu.bean.Theme"/>
</extra-decision>
<function-recorder class="com.fr.plugin.theme.topMenu.bean.Theme"/>
</plugin>

36
src/main/java/com/fr/plugin/theme/topMenu/bean/Theme.java

@ -0,0 +1,36 @@
package com.fr.plugin.theme.topMenu.bean;
import com.fr.decision.fun.impl.AbstractThemeVariousProvider;
import com.fr.decision.web.MainComponent;
import com.fr.plugin.transform.FunctionRecorder;
import com.fr.stable.fun.Authorize;
import com.fr.web.struct.Atom;
@Authorize(callSignKey = "com.eco.plugin.xxxx.theme.topMenu")
@FunctionRecorder
public class Theme extends AbstractThemeVariousProvider {
@Override
public String name() {
return "顶部菜单主题";
}
@Override
public String text() {
return "navigation";
}
@Override
public String coverPath() {
return "/com/fr/plugin/theme/topMenu/js/cover.png";
}
@Override
public Atom attach() {
return MainComponent.KEY;
}
@Override
public Atom client() {
return ThemeAtom.KEY;
}
}

42
src/main/java/com/fr/plugin/theme/topMenu/bean/ThemeAtom.java

@ -0,0 +1,42 @@
package com.fr.plugin.theme.topMenu.bean;
import com.fr.decision.config.AppearanceConfig;
import com.fr.plugin.context.PluginContexts;
import com.fr.web.struct.Component;
import com.fr.web.struct.Filter;
import com.fr.web.struct.browser.RequestClient;
import com.fr.web.struct.category.ScriptPath;
import com.fr.web.struct.category.StylePath;
public class ThemeAtom extends Component {
public static final ThemeAtom KEY=new ThemeAtom();
@Override
public ScriptPath script(RequestClient requestClient) {
if (PluginContexts.currentContext().isAvailable()) {
return ScriptPath.build("/com/fr/plugin/theme/topMenu/js/navigation.theme.js");
} else {
return ScriptPath.EMPTY;
}
}
@Override
public StylePath style(RequestClient requestClient) {
if (PluginContexts.currentContext().isAvailable()) {
return StylePath.build("/com/fr/plugin/theme/topMenu/js/navigation.theme.css");
} else {
return StylePath.EMPTY;
}
}
@Override
public Filter filter() {
return new Filter() {
@Override
public boolean accept() {
System.out.println(AppearanceConfig.getInstance().getThemeId());
/*这边添加有一个过滤条件,只有切换使用了当前主题才引入这些js*/
return "com.eco.plugin.xxxx.theme.topMenu".equals(AppearanceConfig.getInstance().getThemeId());
}
};
}
}

BIN
src/main/resources/com/fr/plugin/theme/topMenu/js/cover.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

73
src/main/resources/com/fr/plugin/theme/topMenu/js/navigation.theme.css

@ -0,0 +1,73 @@
.plugin-first-item-unselect
{
z-index:99;
color:white
}
div::-webkit-scrollbar{
-webkit-appearance: none;
width: 10px;
height: 20px;
}
#nav {
height:50px;
position:absolute;
overflow-x:auto;
z-index:99;
}
#buttonlist{
min-width:95%;
display:-webkit-flex;
display: flex;
flex-direction: row;
/*justify-content: space-around;*/
overflow-x:auto;
}
.buttion{
height:40px;
width:100px;
background-color: rgb(44,61,89);
border:0 solid;
color:white;
overflow:hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.buttion:hover{
background-color: rgb(54,135,245) !important;
/*background-color: rgb(235,242,254) !important;*/
}
.menuli:hover{
background-color: rgb(235,242,254) !important;
}
.liDiv{
width:150px;
/*background-color:rgb(50,150,245);*/
background-color:rgb(245,247,254);
position:absolute;
z-index:99;
}
.div1{
width:150px;
height:30px;
cursor: pointer;
}
.div1:hover{
background-color: rgb(235,242,254) !important;
}
.menuli{
font-size:15px;
margin-top:5px;
font-weight:bold;
}

895
src/main/resources/com/fr/plugin/theme/topMenu/js/navigation.theme.js

@ -0,0 +1,895 @@
var treeobj = {};
var rootid = "";
var menulist = [];
var classic = {};
var bodya = {};
var zdy = true;
//取消选中样式
function cancelSelect(){
$.each(menulist,function(index,item){
this.element.css({"color":"white","font-weight":"normal","font-size":"13px"});
})
}
//是否有管理菜单
function hasManagement(){
var array = BI.Constants.getConstant("dec.constant.menu.items");
var hasManagement2 = false;
$.each(array,function(index,item){
if(item.value == "management"){
hasManagement2 = true;
}
})
return hasManagement2;
}
/**
* 打开第一个模板
* @param rootid
*/
function openFirstTmp(root){
if(root.entryType == 5 || root.entryType == 102){
openTemplate(root);
return true;
}
var findTemp = false;
var menuid = root.id;
var menus = getWorkbenchSubDirectoryByPId(menuid);
if(menus != null && menus != undefined && menus.length > 0){
for(var i=0;i<menus.length;i++){
findTemp = openFirstTmp(menus[i]);
if(findTemp){
break;
}
}
}
return findTemp;
}
<!-- ------------------------------------dec.header-->
var e = BI.inherit(BI.Widget, {
props: {
baseCls: "bi-card dec-frame-header",
$testId: "dec-frame-header",
height: 40
},
_store: function () {
return BI.Models.getModel("dec.model.frame.header")
},
watch: {
platformTitle: function (e) {
this.title.setText(e)
},
headerType: function () {
this.logoContainer.populate(this._assertLogo()),
this._resizeWrapper()
},
headerLogoAttachUrl: function (e) {
this.logoImg.setSrc(e)
}
},
render: function () {
var t = this,
e = BI.Constants.getConstant("dec.constant.header.items");
t.combo = [];
var rootMenue = getWorkbenchSubDirectoryByPId(DecCst.DIRECTORY_TREE_ROOT_ID);
var items2 = [];
var index = {
type: "bi.text_button",
text: "首页",
height: 30,
css:{"color":"white","font-size":"13px"},
ref: function(_ref) {
menulist.push(_ref) ;
},
handler: function () {
if(!zdy){
zdy = true;
bodya.reset();
}
cancelSelect();
this.element.css({"color":"white","font-weight":"900","font-size":"15px"});
BI.Models.getModel("dec.model.menu").selectMenu("directory");
window.parent.BI.Services.getService("dec.service.frame.tab_pane").showTab("dec-tabs-homapage");
}
};
items2.push(index);
$.each(rootMenue,function(index,item){
var text = item.text;
var rootMenuObj ={
type: "bi.text_button",
text: text,
height: 30,
css:{"color":"white"},
ref: function(_ref) {
menulist.push(_ref) ;
},
handler: function () {
if(zdy){
zdy = false;
bodya.reset();
}
cancelSelect();
this.element.css({"color":"white","font-weight":"900","font-size":"15px"});
rootid = item.id;
BI.Models.getModel("dec.model.menu").selectMenu("directory");
if(typeof treeobj.reset == 'function'){
treeobj.reset();
}
openFirstTmp(item);
}
}
var isParent = item.isParent;
if(!isParent){
rootMenuObj ={
type: "bi.text_button",
text: text,
height: 30,
css:{"color":"white","font-size":"13px"},
ref: function(_ref) {
menulist.push(_ref) ;
},
handler: function () {
if(zdy){
zdy = false;
bodya.reset();
}
cancelSelect();
this.element.css({"color":"white","font-weight":"900","font-size":"15px"});
BI.Models.getModel("dec.model.menu").selectMenu("directory");
openTemplate(item);
}
}
}
items2.push(rootMenuObj)
});
if(hasManagement()){
//管理系统
var manageMentCombo ={
type: "bi.text_button",
text: "系统管理",
height: 30,
css:{"color":"white","font-size":"13px"},
ref: function(_ref) {
menulist.push(_ref) ;
},
handler: function () {
if(zdy){
zdy = false;
bodya.reset();
}
cancelSelect();
this.element.css({"color":"white","font-weight":"900","font-size":"15px"});
BI.Models.getModel("dec.model.menu").selectMenu("management");
}
}
items2.push(manageMentCombo);
}
var menue ={
type: "bi.vertical_adapt",
width:1200,
height:40,
scrollx:true,
lgap:40,
items: items2
};
var label = {
type:"bi.label",
text:'111'
}
//decision及图标
var title = {
type: "bi.button_group",
items: this._assertLogo(),
layouts: [{
type: "bi.vertical_adapt"
}
],
ref: function (e) {
t.logoContainer = e
}
};
//左边title+菜单
var headerLeft = {
el:{
type: "bi.vertical",
items: [{
type: "bi.vertical_adapt",
items: [title,menue]
}],
},
top: 0,
bottom: 0,
left: 0
}
//用户信息
var account ={
el: {
type: "bi.right_vertical_adapt",
items: BI.createItems(e, {}, {
rgap: 15
})
},
top: 100,
bottom: 0,
right: 0
};
//获取屏幕宽度
var width = document.documentElement.clientWidth || document.body.clientWidth;
return {
type: "bi.absolute",
ref: function (e) {
t.headWrapper = e
},
items:[{
el:{
type: "bi.horizontal_fill",
columnSize: ["fill", ""],
items:[headerLeft,account],
width:width,
},
top: 0,
bottom: 0,
right: 0
}]
}
},
created: function () {
BI.Services.getService("dec.service.main").registerGlobalComponent("Header", this)
},
_assertLogo: function () {
var t = this,
e = BI.Providers.getProvider("dec.provider.frame.header").getLogoConfig(),
e = this.model.headerType === DecCst.PlatformStyle.HeaderType.INTEGRATED ? {
el: {
type: "bi.img",
$testId: "dec-header-logo",
src: this.model.headerLogoAttachUrl,
height: e.imgHeight,
width: "auto",
ref: function (e) {
t.logoImg = e
}
},
hgap: 25
}
: BI.extend({
type: "dec.logo.img.button",
cls: "dec-pane dec-frame-panel",
ref: function (e) {
t.logoImg = e
},
src: this.model.headerLogoAttachUrl,
width: 70,
height: 40
}, e);
return [e, {
type: "bi.label",
$testId: "dec-header-platform-title",
ref: function (e) {
t.title = e
},
textAlign: "left",
height: 40,
lgap: this.model.headerType === DecCst.PlatformStyle.HeaderType.INTEGRATED ? 0 : 15,
cls: "dec-banner dec-frame-text",
text: this.model.platformTitle
}
]
},
_resizeWrapper: function () {
this.headWrapper.attr("items")[1].left = 1 === this.model.headerType ? 70 : 50,
this.headWrapper.resize()
}
});
BI.shortcut("dec.header", e);
var e = BI.inherit(BI.Widget, {
props: {
baseCls: ""
},
_store: function () {
return BI.Models.getModel("dec.model.frame.classic.aside.entry_tree_wink")
},
watch: {
selectedId: function () {
this.tree.setValue(this.model.selectedId)
},
entries: function () {
this.populate()
}
},
beforeInit: function (e) {
this.store.initEntryTrees(e)
},
render: function () {
var n = this;
this.options;
return {
type: "dec.common.scroll_view",
ref: function(_ref) {
treeobj = _ref;
},
content: {
el: {
type: "bi.vertical",
items: [{
type: "bi.custom_tree",
ref: function (e) {
n.tree = e
},
expander: {
el: {},
popup: {
type: "bi.custom_tree"
}
},
items: this.model.items,
el: {
type: "bi.loader",
next: !1,
isDefaultInit: !0,
el: {
type: "bi.button_tree",
chooseType: 0,
layouts: [{
type: "bi.vertical"
}
]
}
},
itemsCreator: function (e, t) {
e.node ? n.store.getSubItemsByPId(e.node.id, e.node.layer + 1, function (e) {
t(e)
}) : n.store.initRootNodes(function (e) {
t(e)
})
},
listeners: [{
eventName: BI.Controller.EVENT_CHANGE,
action: function (e, t, i) {
e === BI.Events.EXPAND && n.store.expandNode(i.getValue()),
e === BI.Events.COLLAPSE && n.store.collapseNode(i.getValue()),
e === BI.Events.CLICK && n.store.openTab(t)
}
}
]
}
]
}
}
}
},
populate: function () {
this.tree.populate()
}
});
BI.shortcut("dec.frame.classic.aside.entry_tree_wink", e);
var e = BI.inherit(Fix.Model, {
init: function () {
this.openStateMap = {}
},
state: function () {
return {
openRoot: null
}
},
context: ["isPin", "favorites", "entries", "selectedId", "loading"],
computed: {
selectedMenu: function () {
return Dec.globleModel.selectedMenu
}
},
watch: {
selectedMenu: function (e) {
"directory" === e && this.initEntryTrees(BI.emptyFn)
}
},
actions: {
initEntryTrees: function (t) {
var i = this;
this.toggleLoading(!0),
Dec.Utils.getFavoritesList(function (e) {
i.model.favorites = BI.Services.getService("dec.service.frame.entry").normalizeEntries(e.data, !1)
}),
Dec.Utils.getCompleteDirectoryTree(function (e) {
i.model.entries = BI.Services.getService("dec.service.frame.entry").normalizeEntries(e.data),
i.toggleLoading(!1),
t()
})
},
openTab: function (i) {
var e = BI.find(this.model.entries, function (e, t) {
return t && t.id === i
});
this.model.selectedId = i,
BI.Providers.getProvider("dec.provider.tab_pane").behaviour("addCardByName", e.id, {
text: e.text,
value: e.id,
entry: !0,
entryDetails: e,
cardType: {
src: e.iframeSrc
}
})
},
initRootNodes: function (e) {
if(rootid != ""){
this.getSubItemsByPId(rootid, 0, e)
}
},
getSubItemsByPId: function (e, t, i) {
e = this._getSubItemsByPId(e);
i(this._formatItems(e, t))
},
expandNode: function (e) {
this.openStateMap[e] = !0
},
collapseNode: function (e) {
this.openStateMap[e] = !1
},
toggleLoading: function (e) {
this.model.loading = e
}
},
_formatItems: function (e, n) {
var o = this,
e = BI.deepClone(e);
return BI.each(e, function (e, t) {
var i = {
layer: n,
$value: n + "-" + t.text,
height: DecCst.Entry_Node_Size.HEIGHT
};
BI.isNotNull(o.openStateMap[t.id]) && (i.open = !!o.openStateMap[t.id]),
!0 === t.isParent ? (i.type = "dec.common.img.icon_text_node", i.cls = "dec-frame-platform-list-item dec-font-size-14") : (i.type = "dec.common.img.icon_text_item", i.cls = "dec-frame-platform-list-item-active dec-font-size-14", t.selected = t.id === o.model.selectedId),
BI.extend(t, i)
}),
e
},
_getSubItemsByPId: function (i) {
var e = BI.filter(this.model.entries, function (e, t) {
return t.pId === i
});
return BI.sortBy(e, "sortIndex")
}
});
BI.model("dec.model.frame.classic.aside.entry_tree_wink", e);
BI.constant("dec.constant.workbench.panel.tabs", [{
value: "directory",
title: BI.i18nText("Dec-Directory"),
cls: "directory-font",
cardType: "dec.frame.classic.aside.entry_tree_wink"
}, {
value: "favorite",
title: BI.i18nText("Dec-Basic_Favorite"),
cls: "favorite-font",
cardType: "dec.frame.classic.aside.favorite_list"
}
])
//获取树列表同步方式
function getWorkbenchSubDirectoryByPId(pId)
{
var result = [];
var token = getToken();
$.ajax({
type:'GET',
async:false,
url:Dec.fineServletURL+"/v10/" + pId + "/entries",
beforeSend: function (XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Authorization","Bearer "+token );
},
success:function(data)
{
if(data.data != null)
{
result = data.data;
}
}
})
return result;
}
//获取token
function getToken(){
var strcookie = document.cookie;//获取cookie字符串
var arrcookie = strcookie.split("; ");//分割
//遍历匹配
for ( var i = 0; i < arrcookie.length; i++) {
var arr = arrcookie[i].split("=");
if (arr[0] == "fine_auth_token"){
return arr[1];
}
}
return "";
}
//模板打开方法
function openTemplate(item){
var src = Dec.fineServletURL+"/v10/entry/access/"+item.id;
if(item.entryType == 5){
src = item.path;
}
BI.Providers.getProvider("dec.provider.tab_pane").behaviour("addCardByName", item.id, {
text: item.text,
value: item.id,
entry: !0,
cardType: {
src: src
}
})
};
<!-- 隐藏左侧菜单 -->
BI.provider("dec.provider.layout", function () {
var i = function (e) {
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.absolute",
items: [{
el: {
type: "dec.body"
},
top: 0,
bottom: 0,
right: 0,
left: 0
}
]
},
top: e.north.invisible ? 0 : e.north.height,
left: 0,
right: 0,
bottom: 0
}, {
el: {
type: "dec.header",
height: e.north.height,
invisible: e.north.invisible
},
height: e.north.height,
top: 0,
left: 0,
right: 0
}
]
}
};
this.inject = function (t) {
(t = t || {}).layoutConfig && BI.config("dec.constant.config", function (e) {
return BI.extend(e.config4Frame, t.layoutConfig),
e
}),
t.layoutStrategy && (i = t.layoutStrategy)
},
this.setConfig = function (e) {
i = function () {
return e
}
},
this.$get = function () {
return function () {
this.getLayoutStrategy = function () {
var e = BI.Constants.getConstant("dec.constant.config").config4Frame;
return BI.isFunction(i) ? i(e) : i
},
this.getLayoutConfig = function () {
return BI.Constants.getConstant("dec.constant.config")
}
}
}
});
var inithome = false;
var e = BI.inherit(BI.Widget, {
props: {
baseCls: "dec-frame-classic dec-frame-popover",
$testId: "dec-frame-classic"
},
_store: function () {
return BI.Models.getModel("dec.model.frame.classic")
},
watch: {
isPin: function (e) {
this.resizer.setResizeable(e)
}
},
created: function () {
BI.Providers.getProvider("dec.provider.frame.classic").registerEntryPaneInstance(this)
},
mounted: function () {
if(!inithome){
this.store.initHomepage()
inithome = true;
}
},
render: function () {
var i = this,
e = BI.get(BI.Providers.getProvider("dec.provider.layout").getLayoutConfig(), "config4Frame.center");
return {
type: "dec.common.drag_resize",
ref: function (e) {
// bodya = e;
i.resizer = e
},
resizeable: this.model.isPin,
open: this.model.isPin,
leftWidth: zdy ? 15 : (e.left.width || 240),
maxSize: e.left.maxSize,
minSize: e.left.minSize,
content: BI.Providers.getProvider("dec.provider.tab_pane").getTabPaneComponent({
ref: function (e) {
i.container = e
},
listeners: [{
eventName: "EVENT_SHOW",
action: function (e) {
i.store.handleTabChange(e)
}
}, {
eventName: "EVENT_CLOSE",
action: function (e, t) {
i.store.handleTabClose(e, t)
}
}
]
}),
popup: {
type: "dec.frame.classic.aside",
pinedPane: this.model.isPin,
cls: this.model.isPin ? "pined" : "un-pined"
}
}
},
keepalive: function () {
return !0
}
});
BI.shortcut("dec.frame.classic", e);
var e = BI.inherit(BI.Widget, {
props: {
baseCls: "dec-frame-body"
},
_store: function () {
return BI.Models.getModel("dec.model.body")
},
watch: {
showCard: function (e) {
var t = BI.Providers.getProvider("dec.provider.router").checkHashAuthority();
this.tab.setSelect(t ? e : "ERROR_TAB")
}
},
render: function () {
var t = this;
return {
type: "bi.absolute",
ref: function (e) {
bodya = e;
t.tab = e;
},
items: [{
el: {
type: "bi.layout",
cls: "dec-frame-body-top-shadow",
height: 100,
invisible: BI.isIE() && BI.getIEVersion() < 11
},
top: 0,
left: 0,
right: 0
}, {
el: {
type: "dec.component.tabs",
ref: function (e) {
t.tab = e
},
layout: {
type: "bi.vertical",
scrolly: !1
},
single: !0,
showIndex: this.model.showCard,
cardCreator: BI.bind(this.store.createCard, this)
},
top: 0,
left: 0,
right: 0,
bottom: 0
}
]
}
},
created: function () {
BI.Services.getService("dec.service.main").registerGlobalComponent("Body", this)
}
});
BI.shortcut("dec.body", e);
var e = BI.inherit(BI.Pane, {
props: {
baseCls: "dec-frame-classic-aside dec-frame-popover bi-border-right dec-frame-split-border",
$testId: "dec-frame-classic-aside",
pinedPane: !1
},
_store: function () {
return BI.Models.getModel("dec.model.frame.classic.aside")
},
watch: {
activeNav: function (e) {
this.tab.setSelect(e)
},
isSearching: function (e) {
this.searcher.setValue(""),
this.searcher.setVisible(e),
this.navs.setVisible(!e),
e && this.searcher.focus()
},
isPin: function (e) {
this.pinIcon.setIcon(e ? "unpin-font" : "pin-font"),
e ? (this.element.addClass("pined").removeClass("un-pined"), this.element.addClass("bi-border-right")) : (this.element.removeClass("pined").addClass("un-pined"), this.element.removeClass("bi-border-right"))
},
loading: function () {
this.model.loading ? this.loading() : this.loaded()
}
},
mounted: function () {
BI.Services.getService("dec.service.style.configure").watchStyle(this)
},
render: function () {
var i = this,
e = this.options,
t = BI.get(BI.Constants.getConstant("dec.constant.config"), "config4EntryPane.pinable");
this.model.isPin ? this.element.addClass("bi-border-right") : this.element.removeClass("bi-border-right");
var n = {
type: "dec.closeable.editor",
ref: function (e) {
i.searcher = e
},
invisible: !0,
cls: "bi-border",
iconCls: "dec-frame-popover",
height: 22,
watermark: BI.i18nText("BI-Basic_Search"),
listeners: [{
eventName: "EVENT_CHANGE",
action: function () {
i.store.doSearch(this.getValue())
}
}, {
eventName: "EVENT_CLEAR",
action: function () {
i.store.stopSearch()
}
}
]
};
return {
type: "bi.absolute",
scrollable: !1,
items: [{
el: {
type: "bi.button_group",
ref: function (e) {
i.navs = e
},
height: 30,
cls: "pane-tabs-button-wrapper dec-frame-classic-nav",
layouts: [{
type: "bi.vertical_adapt"
}
],
items: this.model.tabs,
value: this.model.activeNav,
listeners: [{
eventName: BI.Controller.EVENT_CHANGE,
action: function (e, t) {
i.store.selectNav(t)
}
}
]
},
top: 15,
left: 15
}, {
el: {
type: "bi.icon_change_button",
$testId: "dec-icon-change-btn",
$value: "pin",
ref: function (e) {
i.pinIcon = e
},
width: 24,
height: 24,
invisible: !t,
iconCls: e.pinedPane ? "unpin-font" : "pin-font",
cls: "dec-frame-text",
title: function () {
return i.model.isPin ? BI.i18nText("Dec-Cancel_Pin_Panel") : BI.i18nText("Dec-Pin_Panel")
},
handler: function () {
i.store.pinPane()
}
},
top: 18,
right: 15
}, {
el: {
type: "bi.icon_button",
$value: "search",
cls: "platform-search-font platform-slide-pane-icon dec-frame-text",
width: 24,
height: 24,
ref: function (e) {
i.searchBtn = e
},
handler: function () {
i.store.startSearch()
}
},
top: 18,
right: 45
}, {
el: n,
top: 18,
left: 10,
right: 45
}, {
el: {
type: "bi.tab",
ref: function () {
i.tab = this
},
single: !1,
showIndex: this.model.activeNav,
cardCreator: BI.bind(this.store.createTab, this.store)
},
top: 60,
bottom: 0,
left: 0,
right: 0
}
]
}
},
created: function () {
BI.Services.getService("dec.service.main").registerGlobalComponent("WorkbenchPanel", this)
}
});
BI.shortcut("dec.frame.classic.aside", e);
Loading…
Cancel
Save