diff --git a/apps/spreadsheeteditor/mobile/src/controller/edit/EditCell.jsx b/apps/spreadsheeteditor/mobile/src/controller/edit/EditCell.jsx
index a54d9ec070..8554350ce6 100644
--- a/apps/spreadsheeteditor/mobile/src/controller/edit/EditCell.jsx
+++ b/apps/spreadsheeteditor/mobile/src/controller/edit/EditCell.jsx
@@ -1,12 +1,33 @@
import React, {Component} from 'react';
import { f7 } from 'framework7-react';
import {Device} from '../../../../../common/mobile/utils/device';
+import {observer, inject} from "mobx-react";
import { EditCell } from '../../view/edit/EditCell';
class EditCellController extends Component {
constructor (props) {
super(props);
+ this.dateFormats = this.initFormats(Asc.c_oAscNumFormatType.Date, 38822);
+ this.timeFormats = this.initFormats(Asc.c_oAscNumFormatType.Time, 1.534);
+ }
+
+ initFormats(type, exampleVal) {
+ const api = Common.EditorApi.get();
+ let info = new Asc.asc_CFormatCellsInfo();
+
+ info.asc_setType(type);
+ info.asc_setDecimalPlaces(0);
+ info.asc_setSeparator(false);
+
+ let formatsArr = api.asc_getFormatCells(info),
+ data = [];
+
+ formatsArr.forEach(function(item) {
+ data.push({value: item, displayValue: api.asc_getLocaleExample(item, exampleVal)});
+ });
+
+ return data;
}
toggleBold(value) {
@@ -117,12 +138,6 @@ class EditCellController extends Component {
}
onCellFormat(format) {
- const api = Common.EditorApi.get();
- // let type = decodeURIComponent(atob(value));
- api.asc_setCellFormat(format);
- }
-
- onCurrencyCellFormat(format) {
const api = Common.EditorApi.get();
api.asc_setCellFormat(format);
}
@@ -187,11 +202,12 @@ class EditCellController extends Component {
onCellFormat={this.onCellFormat}
onTextOrientationChange={this.onTextOrientationChange}
onBorderStyle={this.onBorderStyle}
- onCurrencyCellFormat={this.onCurrencyCellFormat}
onAccountingCellFormat={this.onAccountingCellFormat}
+ dateFormats={this.dateFormats}
+ timeFormats={this.timeFormats}
/>
)
}
}
-export default EditCellController;
\ No newline at end of file
+export default inject("storeCellSettings")(observer(EditCellController));
\ No newline at end of file
diff --git a/apps/spreadsheeteditor/mobile/src/view/edit/EditCell.jsx b/apps/spreadsheeteditor/mobile/src/view/edit/EditCell.jsx
index 3a48110e84..282238517b 100644
--- a/apps/spreadsheeteditor/mobile/src/view/edit/EditCell.jsx
+++ b/apps/spreadsheeteditor/mobile/src/view/edit/EditCell.jsx
@@ -1,4 +1,4 @@
-import React, {Fragment, useState} from 'react';
+import React, {Fragment, useState, useEffect} from 'react';
import {observer, inject} from "mobx-react";
import {f7, List, ListItem, Icon, Row, Button, Page, Navbar, Segmented, BlockTitle, NavRight, Link, Toggle} from 'framework7-react';
import { useTranslation } from 'react-i18next';
@@ -90,7 +90,9 @@ const EditCell = props => {
{!isAndroid ?
: null
@@ -777,17 +779,19 @@ const PageFormatCell = props => {
@@ -851,19 +855,19 @@ const PageCurrencyFormatCell = props => {
props.onCurrencyCellFormat('[$$-409]#,##0.00')}>
+ onClick={() => props.onCellFormat('[$$-409]#,##0.00')}>
props.onCurrencyCellFormat('#,##0.00\ [$€-407]')}>
+ onClick={() => props.onCellFormat('#,##0.00\ [$€-407]')}>
props.onCurrencyCellFormat('[$£-809]#,##0.00')}>
+ onClick={() => props.onCellFormat('[$£-809]#,##0.00')}>
props.onCurrencyCellFormat('#,##0.00\ [$₽-419]')}>
+ onClick={() => props.onCellFormat('#,##0.00\ [$₽-419]')}>
props.onCurrencyCellFormat('[$¥-411]#,##0.00')}>
+ onClick={() => props.onCellFormat('[$¥-411]#,##0.00')}>
@@ -873,6 +877,7 @@ const PageCurrencyFormatCell = props => {
const PageDateFormatCell = props => {
const { t } = useTranslation();
const _t = t('View.Edit', {returnObjects: true});
+ const dateFormats = props.dateFormats;
return (
@@ -884,26 +889,12 @@ const PageDateFormatCell = props => {
}
- props.onCellFormat('TU0tZGQteXk=')}>
- props.onCellFormat('TU0tZGQteXl5eQ==')}>
-
- props.onCellFormat('ZGQtTU0teXk=')}>
-
- props.onCellFormat('ZGQtTU0teXl5eQ==')}>
-
- props.onCellFormat('ZGQtTU1NLXl5eXk=')}>
-
- props.onCellFormat('ZGQtTU1N')}>
-
- props.onCellFormat('TU1NLXl5')}>
-
+ {dateFormats.map((format, index) => {
+ return (
+ props.onCellFormat(format.value)}>
+ )
+ })}
)
@@ -912,6 +903,7 @@ const PageDateFormatCell = props => {
const PageTimeFormatCell = props => {
const { t } = useTranslation();
const _t = t('View.Edit', {returnObjects: true});
+ const timeFormats = props.timeFormats;
return (
@@ -923,21 +915,12 @@ const PageTimeFormatCell = props => {
}
- props.onCellFormat('aCUzQW1tJTNCJTQw')}>
-
- props.onCellFormat('aCUzQW1tJTNBc3MlM0IlNDA=')}>
-
- props.onCellFormat('aCUzQW1tJTIwQU0lMkZQTSUzQiU0MA==')}>
-
- props.onCellFormat('aCUzQW1tJTNBc3MlMjBBTSUyRlBNJTNCJTQw')}>
-
- props.onCellFormat('JTVCaCU1RCUzQW1tJTNBc3MlM0IlNDA=')}>
-
+ {timeFormats.map((format, index) => {
+ return (
+ props.onCellFormat(format.value)}>
+ )
+ })}
)