[SSE mobile] Change Encoding v.2
This commit is contained in:
parent
b7d44ced9f
commit
850359ca6d
|
@ -18,12 +18,13 @@ class EncodingController extends Component {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
onSaveFormat(mode, valueEncoding, valueDelimeter) {
|
async onSaveFormat(mode, valueEncoding, valueDelimeter) {
|
||||||
const api = Common.EditorApi.get();
|
const api = Common.EditorApi.get();
|
||||||
const storeEncoding = this.props.storeEncoding;
|
const storeEncoding = this.props.storeEncoding;
|
||||||
|
|
||||||
|
await this.closeModal();
|
||||||
|
|
||||||
if(mode === 2) {
|
if(mode === 2) {
|
||||||
this.closeModal();
|
|
||||||
const formatOptions = storeEncoding.formatOptions;
|
const formatOptions = storeEncoding.formatOptions;
|
||||||
formatOptions && formatOptions.asc_setAdvancedOptions(new Asc.asc_CTextOptions(valueEncoding, valueDelimeter));
|
formatOptions && formatOptions.asc_setAdvancedOptions(new Asc.asc_CTextOptions(valueEncoding, valueDelimeter));
|
||||||
api.asc_DownloadAs(formatOptions);
|
api.asc_DownloadAs(formatOptions);
|
||||||
|
@ -36,7 +37,7 @@ class EncodingController extends Component {
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
<Encoding onSaveFormat={this.onSaveFormat} />
|
<Encoding routes={this.props.routes} onSaveFormat={this.onSaveFormat} />
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,6 +17,19 @@ import {FunctionGroups} from "../controller/add/AddFunction";
|
||||||
import ContextMenu from '../controller/ContextMenu';
|
import ContextMenu from '../controller/ContextMenu';
|
||||||
import { Toolbar } from "../controller/Toolbar";
|
import { Toolbar } from "../controller/Toolbar";
|
||||||
import EncodingController from "../controller/Encoding";
|
import EncodingController from "../controller/Encoding";
|
||||||
|
import {PageEncodingList, PageDelimeterList} from '../view/Encoding';
|
||||||
|
|
||||||
|
|
||||||
|
const routes = [
|
||||||
|
{
|
||||||
|
path: '/encoding-list/',
|
||||||
|
component: PageEncodingList
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/delimeter-list/',
|
||||||
|
component: PageDelimeterList
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
class MainPage extends Component {
|
class MainPage extends Component {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
|
@ -121,7 +134,8 @@ class MainPage extends Component {
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
!this.state.encodingVisible && this.props.storeEncoding.mode ? null :
|
!this.state.encodingVisible && this.props.storeEncoding.mode ? null :
|
||||||
<EncodingController openOptions={this.handleClickToOpenOeptions} onclosed={this.handleOptionsViewClosed.bind(this, 'encoding')} />
|
<EncodingController routes={routes} openOptions={this.handleClickToOpenOeptions}
|
||||||
|
onclosed={this.handleOptionsViewClosed.bind(this, 'encoding')} />
|
||||||
}
|
}
|
||||||
|
|
||||||
<FilterOptionsController />
|
<FilterOptionsController />
|
||||||
|
|
|
@ -4,21 +4,6 @@ import { f7, Page, Navbar, List, ListItem, BlockTitle, ListButton, Popover, Popu
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Device } from '../../../../common/mobile/utils/device';
|
import { Device } from '../../../../common/mobile/utils/device';
|
||||||
|
|
||||||
const routes = [
|
|
||||||
{
|
|
||||||
path: '/encoding/',
|
|
||||||
component: PageEncoding
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: '/encoding-list/',
|
|
||||||
component: PageEncodingList
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: '/delimeter-list/',
|
|
||||||
component: PageDelimeterList
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
const PageEncoding = inject("storeEncoding")(observer(props => {
|
const PageEncoding = inject("storeEncoding")(observer(props => {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
const _t = t("View.Settings", { returnObjects: true });
|
const _t = t("View.Settings", { returnObjects: true });
|
||||||
|
@ -28,9 +13,10 @@ const PageEncoding = inject("storeEncoding")(observer(props => {
|
||||||
const valueDelimeter = storeEncoding.valueDelimeter;
|
const valueDelimeter = storeEncoding.valueDelimeter;
|
||||||
const nameEncoding = storeEncoding.nameEncoding;
|
const nameEncoding = storeEncoding.nameEncoding;
|
||||||
const mode = storeEncoding.mode;
|
const mode = storeEncoding.mode;
|
||||||
|
const routes = props.routes;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<View routes={routes} url="/encoding/">
|
<View routes={routes}>
|
||||||
<Page>
|
<Page>
|
||||||
<Navbar title={_t.textChooseCsvOptions} />
|
<Navbar title={_t.textChooseCsvOptions} />
|
||||||
<BlockTitle>{_t.textDelimeter}</BlockTitle>
|
<BlockTitle>{_t.textDelimeter}</BlockTitle>
|
||||||
|
@ -42,6 +28,9 @@ const PageEncoding = inject("storeEncoding")(observer(props => {
|
||||||
<ListItem title={nameEncoding} link="/encoding-list/"></ListItem>
|
<ListItem title={nameEncoding} link="/encoding-list/"></ListItem>
|
||||||
</List>
|
</List>
|
||||||
<List className="buttons-list">
|
<List className="buttons-list">
|
||||||
|
{mode === 2 ?
|
||||||
|
<ListButton className='button-fill button-raised' title={_t.textCancel}></ListButton>
|
||||||
|
: null}
|
||||||
<ListButton className='button-fill button-raised' title={mode === 2 ?_t.textDownload : _t.txtOk} onClick={() => props.onSaveFormat(mode, valueEncoding, valueDelimeter)}></ListButton>
|
<ListButton className='button-fill button-raised' title={mode === 2 ?_t.textDownload : _t.txtOk} onClick={() => props.onSaveFormat(mode, valueEncoding, valueDelimeter)}></ListButton>
|
||||||
</List>
|
</List>
|
||||||
</Page>
|
</Page>
|
||||||
|
@ -102,10 +91,6 @@ const PageDelimeterList = inject("storeEncoding")(observer(props => {
|
||||||
)
|
)
|
||||||
}));
|
}));
|
||||||
|
|
||||||
// const Encoding = inject("storeEncoding")(observer(PageEncoding));
|
|
||||||
// const EncodingList = inject("storeEncoding")(observer(PageEncodingList));
|
|
||||||
// const DelimeterList = inject("storeEncoding")(observer(PageDelimeterList));
|
|
||||||
|
|
||||||
class EncodingView extends Component {
|
class EncodingView extends Component {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
super(props);
|
super(props);
|
||||||
|
@ -121,10 +106,12 @@ class EncodingView extends Component {
|
||||||
return (
|
return (
|
||||||
show_popover ?
|
show_popover ?
|
||||||
<Popover id="encoding-popover" className="popover__titled" onPopoverClosed={() => this.props.onclosed()}>
|
<Popover id="encoding-popover" className="popover__titled" onPopoverClosed={() => this.props.onclosed()}>
|
||||||
<PageEncoding inPopover={true} openOptions={this.props.openOptions} onOptionClick={this.onoptionclick} onSaveFormat={this.props.onSaveFormat} />
|
<PageEncoding inPopover={true} openOptions={this.props.openOptions} onOptionClick={this.onoptionclick} routes={this.props.routes}
|
||||||
|
onSaveFormat={this.props.onSaveFormat} />
|
||||||
</Popover> :
|
</Popover> :
|
||||||
<Popup className="encoding-popup" onPopupClosed={() => this.props.onclosed()}>
|
<Popup className="encoding-popup" onPopupClosed={() => this.props.onclosed()}>
|
||||||
<PageEncoding onOptionClick={this.onoptionclick} openOptions={this.props.openOptions} />
|
<PageEncoding onOptionClick={this.onoptionclick} openOptions={this.props.openOptions} routes={this.props.routes}
|
||||||
|
onSaveFormat={this.props.onSaveFormat} />
|
||||||
</Popup>
|
</Popup>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -146,8 +133,7 @@ const Encoding = props => {
|
||||||
props.onclosed();
|
props.onclosed();
|
||||||
};
|
};
|
||||||
|
|
||||||
return <EncodingView usePopover={!Device.phone} onclosed={onviewclosed} openOptions={props.openOptions} onSaveFormat={props.onSaveFormat} />
|
return <EncodingView usePopover={!Device.phone} onclosed={onviewclosed} openOptions={props.openOptions} onSaveFormat={props.onSaveFormat} routes={props.routes} />
|
||||||
};
|
};
|
||||||
|
|
||||||
// export {EncodingList, Encoding, DelimeterList}
|
|
||||||
export {Encoding, PageEncodingList, PageDelimeterList}
|
export {Encoding, PageEncodingList, PageDelimeterList}
|
Loading…
Reference in a new issue