From e8edfdadb561cd83bf6e1c3e00d55b8cc2aee6d5 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 17 十月 2022 17:57:34 +0800
Subject: [PATCH] 2022-10-17

---
 src/mob/components/menubar/normal-menubar/menucomponent/index.jsx |   51 ++++++++++++++++++++++++---------------------------
 1 files changed, 24 insertions(+), 27 deletions(-)

diff --git a/src/mob/components/menubar/normal-menubar/menucomponent/index.jsx b/src/mob/components/menubar/normal-menubar/menucomponent/index.jsx
index 4999373..53aa073 100644
--- a/src/mob/components/menubar/normal-menubar/menucomponent/index.jsx
+++ b/src/mob/components/menubar/normal-menubar/menucomponent/index.jsx
@@ -1,12 +1,14 @@
 import React, {Component} from 'react'
 import PropTypes from 'prop-types'
 import { is, fromJS } from 'immutable'
-import { Popover, Icon, Col } from 'antd'
+import { Popover, Col } from 'antd'
+import { SwapOutlined, ArrowLeftOutlined, ArrowRightOutlined, EditOutlined, FontColorsOutlined, DeleteOutlined, RightOutlined } from '@ant-design/icons'
 
 import asyncIconComponent from '@/utils/asyncIconComponent'
 import Utils from '@/utils/utils.js'
 import getSettingForm from './options'
 import { resetStyle } from '@/utils/utils-custom.js'
+import MkIcon from '@/components/mk-icon'
 import MKEmitter from '@/utils/events.js'
 import './index.scss'
 
@@ -15,7 +17,6 @@
 
 class MenuBoxComponent extends Component {
   static propTpyes = {
-    offset: PropTypes.any,           // 鍋忕Щ閲�
     cards: PropTypes.object,         // 鍗$墖琛岄厤缃俊鎭�
     card: PropTypes.object,          // 鍗$墖閰嶇疆淇℃伅
     move: PropTypes.func,            // 鍗$墖绉诲姩
@@ -35,10 +36,6 @@
     })
   }
 
-  componentDidMount () {
-    MKEmitter.addListener('submitStyle', this.getStyle)
-  }
-
   shouldComponentUpdate (nextProps, nextState) {
     return !is(fromJS(this.state), fromJS(nextState))
   }
@@ -50,14 +47,10 @@
     this.setState = () => {
       return
     }
-    MKEmitter.removeListener('submitStyle', this.getStyle)
   }
 
-  getStyle = (comIds, style) => {
-    const { cards } = this.props
+  getStyle = (style) => {
     const { card } = this.state
-
-    if (comIds.length !== 2 || comIds[0] !== cards.uuid || comIds[1] !== card.uuid) return
 
     let _card = fromJS(card).toJS()
     _card.style = style
@@ -70,13 +63,12 @@
   }
 
   changeStyle = () => {
-    const { cards } = this.props
     const { card } = this.state
 
     let _style = card.style ? fromJS(card.style).toJS() : {}
-    let options = ['font', 'border', 'padding']
+    let options = ['font', 'border', 'padding', 'margin', 'background']
 
-    MKEmitter.emit('changeStyle', [cards.uuid, card.uuid], options, _style)
+    MKEmitter.emit('changeStyle', options, _style, this.getStyle)
   }
 
   getSettingForms = () => {
@@ -108,14 +100,14 @@
       MKEmitter.emit('changeEditMenu', {
         MenuID: card.setting.type === 'linkmenu' ? card.setting.linkMenuId : card.uuid,
         copyMenuId: card.setting.type === 'menu' ? card.setting.copyMenuId : '',
-        MenuNo: card.setting.MenuNo || '',
+        clearMenu: card.setting.clearMenu || 'true',
+        // MenuNo: card.setting.MenuNo || '',
         MenuName: card.setting.name,
       })
     }
   }
 
   render() {
-    const { offset } = this.props
     const { card } = this.state
 
     let _style = {...card.style}
@@ -123,40 +115,45 @@
     _style = resetStyle(_style)
 
     return (
-      <Col span={card.setting.width || 6} offset={offset || 0}>
+      <Col span={card.setting.width || 6}>
         <Popover overlayClassName="mk-popover-control-wrap" mouseLeaveDelay={0.2} mouseEnterDelay={0.2} content={
           <div className="mk-popover-control">
             <NormalForm title="鑿滃崟缂栬緫" width={900} update={this.updateSetting} getForms={this.getSettingForms}>
-              <Icon type="edit" style={{color: '#1890ff'}} title="缂栬緫"/>
+              <EditOutlined style={{color: '#1890ff'}} title="缂栬緫"/>
             </NormalForm>
             <CopyComponent type="menucell" card={card}/>
-            <Icon className="style" title="璋冩暣鏍峰紡" onClick={this.changeStyle} type="font-colors" />
+            <FontColorsOutlined className="style" title="璋冩暣鏍峰紡" onClick={this.changeStyle}/>
             <Popover overlayClassName="mk-popover-control-wrap" mouseLeaveDelay={0.2} mouseEnterDelay={0.2} content={
               <div className="mk-popover-control">
-                <Icon className="plus" title="宸︾Щ" type="arrow-left" onClick={() => this.props.move(card, 'left')} />
-                <Icon className="close" title="鍙崇Щ" type="arrow-right" onClick={() => this.props.move(card, 'right')} />
+                <ArrowLeftOutlined className="plus" title="宸︾Щ" onClick={() => this.props.move(card, 'left')} />
+                <ArrowRightOutlined className="close" title="鍙崇Щ" onClick={() => this.props.move(card, 'right')} />
               </div>
             } trigger="hover" getPopupContainer={() => document.getElementById(card.uuid + 'swap')}>
-              <Icon type="swap" id={card.uuid + 'swap'}/>
+              <SwapOutlined id={card.uuid + 'swap'}/>
             </Popover>
-            <Icon className="close" title="鍒犻櫎鑿滃崟" type="delete" onClick={() => this.props.deleteElement(card)} />
+            <DeleteOutlined className="close" title="鍒犻櫎鑿滃崟" onClick={() => this.props.deleteElement(card)} />
           </div>
         } trigger="hover">
           <div className="menu-item" onDoubleClick={() => this.changeMenu()} style={_style}>
             {card.setting.sign === 'icon' ? <div className="menu-sign">
-              <Icon style={{
+              <MkIcon style={{
                 fontSize: card.setting.iconFont || 20,
                 padding: card.setting.padding,
                 background: card.setting.background,
                 color: card.setting.color,
-                borderRadius: card.setting.borderRadius || '15%'
-              }} type={card.setting.icon}/>
+                borderRadius: card.setting.borderRadius || '15%',
+                opacity: !card.setting.icon ? 0 : 1
+              }} type={card.setting.icon || 'cloud'}/>
               {card.setting.tip ? <sup className="am-badge-text"></sup> : null}
             </div> : <div className="menu-sign">
               <img style={{width: card.setting.imgWidth, height: card.setting.imgWidth, borderRadius: card.setting.borderRadius || '15%'}} src={card.setting.url} alt=""/>
               {card.setting.tip ? <sup className="am-badge-text"></sup> : null}
             </div>}
-            <div className="menu-name">{card.setting.name}</div>
+            <div className="menu-name" style={{opacity: !card.setting.name ? 0 : 1}}>{card.setting.name || '鏄庣'}</div>
+            <RightOutlined className="menu-right" />
+            {!card.setting.name || (card.setting.type === 'linkmenu' && card.setting.linkMenuId === '') ? <NormalForm title="鑿滃崟缂栬緫" width={900} update={this.updateSetting} cancel={() => this.props.deleteElement(card, 'direct')} getForms={this.getSettingForms}>
+              <span id={card.uuid}></span>
+            </NormalForm> : null}
           </div>
         </Popover>
       </Col>

--
Gitblit v1.8.0