import dxui from '../../../../dxmodules/dxUi.js' import std from '../../../../dxmodules/dxStd.js' import viewUtils from '../../viewUtils.js' import topView from '../../topView.js' import configView from '../configView.js' import i18n from '../../i18n.js' import screen from '../../../screen.js' const dockingSettingView = {} dockingSettingView.init = function () { /**************************************************创建屏幕*****************************************************/ const screenMain = dxui.View.build('dockingSettingView', dxui.Utils.LAYER.MAIN) dockingSettingView.screenMain = screenMain screenMain.scroll(false) screenMain.bgColor(0xffffff) screenMain.on(dxui.Utils.ENUM.LV_EVENT_SCREEN_LOADED, () => { topView.changeTheme(true) const configAll = screen.getConfig() httpGasSettingInput.text(configAll['http.gas'] || '') httpStatusSettingInput.text(configAll['http.status'] || '') gasUpdateTimeSettingInput.text((configAll['update.gasTime'] || 5) + '') statusUpdateTimeSettingInput.text((configAll['update.statusTime'] || 5) + '') }) const titleBox = viewUtils.title(screenMain, configView.screenMain, 'dockingSettingViewTitle', 'dockingSettingView.title') titleBox.align(dxui.Utils.ALIGN.TOP_MID, 0, 70) const httpGasSettingBox = dxui.View.build('httpGasSettingBox', screenMain) viewUtils._clearStyle(httpGasSettingBox) httpGasSettingBox.align(dxui.Utils.ALIGN.TOP_MID, 0, 140) httpGasSettingBox.setSize(750, 76) httpGasSettingBox.borderWidth(1) httpGasSettingBox.setBorderColor(0xDEDEDE) httpGasSettingBox.obj.setStyleBorderSide(dxui.Utils.ENUM.LV_BORDER_SIDE_BOTTOM, 0) const httpGasSettingLbl = dxui.Label.build('httpGasSettingLbl', httpGasSettingBox) httpGasSettingLbl.text('HTTP_气体') httpGasSettingLbl.align(dxui.Utils.ALIGN.LEFT_MID, 0, 0) httpGasSettingLbl.textFont(viewUtils.font(26)) const httpGasSettingInput = viewUtils.input(httpGasSettingBox, 'httpGasSettingInput', undefined, undefined, 'dockingSettingView.input') httpGasSettingInput.align(dxui.Utils.ALIGN.RIGHT_MID, 0, 0) httpGasSettingInput.setSize(320, 60) const httpStatusSettingBox = dxui.View.build('httpStatusSettingBox', screenMain) viewUtils._clearStyle(httpStatusSettingBox) httpStatusSettingBox.align(dxui.Utils.ALIGN.TOP_MID, 0, 216) httpStatusSettingBox.setSize(750, 76) httpStatusSettingBox.borderWidth(1) httpStatusSettingBox.setBorderColor(0xDEDEDE) httpStatusSettingBox.obj.setStyleBorderSide(dxui.Utils.ENUM.LV_BORDER_SIDE_BOTTOM, 0) const httpStatusSettingLbl = dxui.Label.build('httpStatusSettingLbl', httpStatusSettingBox) httpStatusSettingLbl.text('HTTP_状态') httpStatusSettingLbl.align(dxui.Utils.ALIGN.LEFT_MID, 0, 0) httpStatusSettingLbl.textFont(viewUtils.font(26)) const httpStatusSettingInput = viewUtils.input(httpStatusSettingBox, 'httpStatusSettingInput', undefined, undefined, 'dockingSettingView.input') httpStatusSettingInput.align(dxui.Utils.ALIGN.RIGHT_MID, 0, 0) httpStatusSettingInput.setSize(320, 60) // 气体浓度更新时间设置 const gasUpdateTimeSettingBox = dxui.View.build('gasUpdateTimeSettingBox', screenMain) viewUtils._clearStyle(gasUpdateTimeSettingBox) gasUpdateTimeSettingBox.align(dxui.Utils.ALIGN.TOP_MID, 0, 292) gasUpdateTimeSettingBox.setSize(750, 76) gasUpdateTimeSettingBox.borderWidth(1) gasUpdateTimeSettingBox.setBorderColor(0xDEDEDE) gasUpdateTimeSettingBox.obj.setStyleBorderSide(dxui.Utils.ENUM.LV_BORDER_SIDE_BOTTOM, 0) const gasUpdateTimeSettingLbl = dxui.Label.build('gasUpdateTimeSettingLbl', gasUpdateTimeSettingBox) gasUpdateTimeSettingLbl.text('气体浓度更新时间') gasUpdateTimeSettingLbl.align(dxui.Utils.ALIGN.LEFT_MID, 0, 0) gasUpdateTimeSettingLbl.textFont(viewUtils.font(26)) const gasUpdateTimeSettingUnitLbl = dxui.Label.build('gasUpdateTimeSettingUnitLbl', gasUpdateTimeSettingBox) gasUpdateTimeSettingUnitLbl.text('秒') gasUpdateTimeSettingUnitLbl.align(dxui.Utils.ALIGN.RIGHT_MID, 0, 0) gasUpdateTimeSettingUnitLbl.textFont(viewUtils.font(26)) const gasUpdateTimeSettingInput = viewUtils.input(gasUpdateTimeSettingBox, 'gasUpdateTimeSettingInput', 2, undefined, 'dockingSettingView.input') gasUpdateTimeSettingInput.align(dxui.Utils.ALIGN.RIGHT_MID, -45, 0) gasUpdateTimeSettingInput.setSize(150, 60) // 状态信息更新时间设置 const statusUpdateTimeSettingBox = dxui.View.build('statusUpdateTimeSettingBox', screenMain) viewUtils._clearStyle(statusUpdateTimeSettingBox) statusUpdateTimeSettingBox.align(dxui.Utils.ALIGN.TOP_MID, 0, 368) statusUpdateTimeSettingBox.setSize(750, 76) statusUpdateTimeSettingBox.borderWidth(1) statusUpdateTimeSettingBox.setBorderColor(0xDEDEDE) statusUpdateTimeSettingBox.obj.setStyleBorderSide(dxui.Utils.ENUM.LV_BORDER_SIDE_BOTTOM, 0) const statusUpdateTimeSettingLbl = dxui.Label.build('statusUpdateTimeSettingLbl', statusUpdateTimeSettingBox) statusUpdateTimeSettingLbl.text('状态信息更新时间') statusUpdateTimeSettingLbl.align(dxui.Utils.ALIGN.LEFT_MID, 0, 0) statusUpdateTimeSettingLbl.textFont(viewUtils.font(26)) const statusUpdateTimeSettingUnitLbl = dxui.Label.build('statusUpdateTimeSettingUnitLbl', statusUpdateTimeSettingBox) statusUpdateTimeSettingUnitLbl.text('秒') statusUpdateTimeSettingUnitLbl.align(dxui.Utils.ALIGN.RIGHT_MID, 0, 0) statusUpdateTimeSettingUnitLbl.textFont(viewUtils.font(26)) const statusUpdateTimeSettingInput = viewUtils.input(statusUpdateTimeSettingBox, 'statusUpdateTimeSettingInput', 2, undefined, 'dockingSettingView.input') statusUpdateTimeSettingInput.align(dxui.Utils.ALIGN.RIGHT_MID, -45, 0) statusUpdateTimeSettingInput.setSize(150, 60) const saveBtn = viewUtils.bottomBtn(screenMain, screenMain.id + 'saveBtn', 'dockingSettingView.save', () => { const saveConfigData = { http: { gas: httpGasSettingInput.text(), status: httpStatusSettingInput.text() }, update: { gasTime: parseInt(gasUpdateTimeSettingInput.text()) || 5, statusTime: parseInt(statusUpdateTimeSettingInput.text()) || 5 } } const res = screen.saveConfig(saveConfigData) if (res === true) { dockingSettingView.statusPanel.success() std.setTimeout(() => { // 成功返回上一层界面 dxui.loadMain(configView.screenMain) }, 500) } else { dockingSettingView.statusPanel.fail() } }) saveBtn.align(dxui.Utils.ALIGN.BOTTOM_MID, 0, -83) dockingSettingView.statusPanel = viewUtils.statusPanel(screenMain, 'dockingSettingView.success', 'dockingSettingView.fail') } export default dockingSettingView