From 9f4a1cf5f91f85c49d3e609f19c9e833a08ca8ee Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期五, 22 三月 2024 08:29:48 +0800
Subject: [PATCH] #
---
zy-asrs-flow/src/pages/map/components/settings.jsx | 106 ++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 92 insertions(+), 14 deletions(-)
diff --git a/zy-asrs-flow/src/pages/map/components/settings.jsx b/zy-asrs-flow/src/pages/map/components/settings.jsx
index a3b122e..4409fd7 100644
--- a/zy-asrs-flow/src/pages/map/components/settings.jsx
+++ b/zy-asrs-flow/src/pages/map/components/settings.jsx
@@ -1,45 +1,123 @@
import React, { useState, useRef, useEffect } from 'react';
-import { Col, Form, Modal, Row, Checkbox, Image, Tree, Drawer, Space, Button, Card, Divider } from 'antd';
+import { Col, Form, Input, Row, Checkbox, Slider, Select, Drawer, Space, Button, InputNumber, Card } from 'antd';
import { FormattedMessage, useIntl, useModel } from '@umijs/max';
-import * as PIXI from 'pixi.js';
+import {
+ BranchesOutlined,
+ BorderOuterOutlined,
+} from '@ant-design/icons';
import { createStyles } from 'antd-style';
-import './index.css'
+import * as Utils from '../utils'
+import Http from '@/utils/http';
+import MapSettings from './mapSettings';
+import ConfigSettings from './configSettings';
const useStyles = createStyles(({ token, css }) => {
})
-const SpriteSettings = (props) => {
+const Settings = (props) => {
+ const intl = useIntl();
const { styles } = useStyles();
+ const [activeTabKey, setActiveTabKey] = useState('map');
- useEffect(() => {
+ const [mapForm] = Form.useForm();
+ const [configForm] = Form.useForm();
- }, []);
+ const finishSettings = (values, fn) => {
+ fn();
+ }
+ const handleCancel = () => {
+ props.onCancel();
+ };
+
+ const handleOk = () => {
+ if (activeTabKey === 'map') {
+ mapForm.submit();
+ }
+ if (activeTabKey === 'config') {
+ configForm.submit();
+ }
+ }
+
+ const contentList = {
+ map: (
+ <MapSettings
+ refCurr={props.refCurr}
+ curSprite={props.curSprite}
+ setSpriteBySettings={props.setSpriteBySettings}
+ setDidClickSprite={props.setDidClickSprite}
+ onSubmit={finishSettings}
+ mapForm={mapForm}
+ />
+ ),
+ config: (
+ <ConfigSettings
+ refCurr={props.refCurr}
+ curSprite={props.curSprite}
+ setSpriteBySettings={props.setSpriteBySettings}
+ setDidClickSprite={props.setDidClickSprite}
+ onSubmit={finishSettings}
+ configForm={configForm}
+ />
+ ),
+ };
return (
<>
<Drawer
open={props.open}
- onClose={() => {
- props.onCancel();
- }}
+ onClose={handleCancel}
getContainer={props.refCurr}
rootStyle={{ position: "absolute" }}
mask={false}
- width={378}
+ width={570}
extra={
<Space>
- <Button onClick={() => props.onCancel()}><FormattedMessage id='common.cancel' defaultMessage='鍙栨秷' /></Button>
+ <Button onClick={handleCancel}>
+ <FormattedMessage id='common.cancel' defaultMessage='鍙栨秷' />
+ </Button>
+ <Button hidden={activeTabKey === 'map' || activeTabKey === 'config'} onClick={handleOk} type="primary">
+ <FormattedMessage id='common.submit' defaultMessage='淇濆瓨' />
+ </Button>
</Space>
}
>
- <Card>
+ <Card
+ hoverable
+ bordered={false}
+ type='inner'
+ tabList={[
+ {
+ key: 'map',
+ tab: intl.formatMessage({ id: 'map.settings.map.param', defaultMessage: '鍦板浘鍙傛暟' }),
+ icon: <BorderOuterOutlined />
+ },
+ {
+ key: 'config',
+ tab: intl.formatMessage({ id: 'map.settings.config.param', defaultMessage: '绯荤粺鍙傛暟' }),
+ icon: <BranchesOutlined />
+ },
+ ]}
+ activeTabKey={activeTabKey}
+ onTabChange={(key) => {
+ setActiveTabKey(key)
+ }}
+ tabProps={{
+ centered: true,
+ size: 'large',
+ type: "card",
+ style: {
+ }
+ }}
+ >
+ {contentList[activeTabKey]}
</Card>
- </Drawer>
+
+ </Drawer >
</>
)
}
-export default SpriteSettings;
\ No newline at end of file
+export default Settings;
\ No newline at end of file
--
Gitblit v1.9.1