[DE PE] Render icons through canvas
This commit is contained in:
parent
40061edafa
commit
c4d35e03a8
|
@ -167,6 +167,11 @@
|
||||||
color: @fill-black;
|
color: @fill-black;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.item-number, .item-marker, .item-multilevellist {
|
||||||
|
width: 68px;
|
||||||
|
height: 68px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -193,6 +193,14 @@ class EditTextController extends Component {
|
||||||
if (api) api.put_ListType(2, parseInt(type));
|
if (api) api.put_ListType(2, parseInt(type));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getIconsBulletsAndNumbers(arrayElements, type) {
|
||||||
|
const api = Common.EditorApi.get();
|
||||||
|
const arr = [];
|
||||||
|
|
||||||
|
arrayElements.forEach( item => arr.push(item.id));
|
||||||
|
if (api) api.SetDrawImagePreviewBulletForMenu(arr, type);
|
||||||
|
}
|
||||||
|
|
||||||
onLineSpacing(value) {
|
onLineSpacing(value) {
|
||||||
const api = Common.EditorApi.get();
|
const api = Common.EditorApi.get();
|
||||||
if (api) {
|
if (api) {
|
||||||
|
@ -221,6 +229,7 @@ class EditTextController extends Component {
|
||||||
onParagraphMove={this.onParagraphMove}
|
onParagraphMove={this.onParagraphMove}
|
||||||
onBullet={this.onBullet}
|
onBullet={this.onBullet}
|
||||||
onNumber={this.onNumber}
|
onNumber={this.onNumber}
|
||||||
|
getIconsBulletsAndNumbers={this.getIconsBulletsAndNumbers}
|
||||||
onMultiLevelList={this.onMultiLevelList}
|
onMultiLevelList={this.onMultiLevelList}
|
||||||
onLineSpacing={this.onLineSpacing}
|
onLineSpacing={this.onLineSpacing}
|
||||||
/>
|
/>
|
||||||
|
|
|
@ -136,14 +136,14 @@
|
||||||
.swiper-pagination-bullet-active{
|
.swiper-pagination-bullet-active{
|
||||||
background: @black;
|
background: @black;
|
||||||
}
|
}
|
||||||
.multilevels {
|
// .multilevels {
|
||||||
li:not(:first-child){
|
// li:not(:first-child){
|
||||||
border:none;
|
// border:none;
|
||||||
.item-content {
|
// .item-content {
|
||||||
min-height: 70px;
|
// min-height: 70px;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
// Skeleton table
|
// Skeleton table
|
||||||
|
|
|
@ -181,41 +181,41 @@ const PageAdditionalFormatting = props => {
|
||||||
};
|
};
|
||||||
|
|
||||||
const PageBullets = observer( props => {
|
const PageBullets = observer( props => {
|
||||||
const { t } = useTranslation();
|
|
||||||
const bulletArrays = [
|
|
||||||
[
|
|
||||||
{type: -1, thumb: ''},
|
|
||||||
{type: 1, thumb: 'bullet-01.png'},
|
|
||||||
{type: 2, thumb: 'bullet-02.png'},
|
|
||||||
{type: 3, thumb: 'bullet-03.png'}
|
|
||||||
],
|
|
||||||
[
|
|
||||||
{type: 4, thumb: 'bullet-04.png'},
|
|
||||||
{type: 5, thumb: 'bullet-05.png'},
|
|
||||||
{type: 6, thumb: 'bullet-06.png'},
|
|
||||||
{type: 7, thumb: 'bullet-07.png'}
|
|
||||||
]
|
|
||||||
];
|
|
||||||
const storeTextSettings = props.storeTextSettings;
|
const storeTextSettings = props.storeTextSettings;
|
||||||
const typeBullets = storeTextSettings.typeBullets;
|
const typeBullets = storeTextSettings.typeBullets;
|
||||||
|
const bulletArrays = [
|
||||||
|
[
|
||||||
|
{ type: 0, subtype: -1 },
|
||||||
|
{ type: 0, subtype: 1 },
|
||||||
|
{ type: 0, subtype: 2 },
|
||||||
|
{ type: 0, subtype: 3 }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ type: 0, subtype: 4 },
|
||||||
|
{ type: 0, subtype: 5 },
|
||||||
|
{ type: 0, subtype: 6 },
|
||||||
|
{ type: 0, subtype: 7 }
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
props.getIconsBulletsAndNumbers($$('.item-marker'), 0);
|
||||||
|
}, []);
|
||||||
|
|
||||||
return(
|
return(
|
||||||
<View className='bullets dataview'>
|
<View className='bullets dataview'>
|
||||||
{bulletArrays.map((bullets, index) => (
|
{bulletArrays.map((bullets, index) => (
|
||||||
<List className="row" style={{listStyle: 'none'}} key={'bullets-' + index}>
|
<List className="row" style={{listStyle: 'none'}} key={'bullets-' + index}>
|
||||||
{bullets.map((bullet) => (
|
{bullets.map((bullet) => (
|
||||||
<ListItem key={'bullet-' + bullet.type} data-type={bullet.type} className={(bullet.type === typeBullets) &&
|
<ListItem key={'bullet-' + bullet.subtype} data-type={bullet.subtype} className={(bullet.subtype === typeBullets) &&
|
||||||
(storeTextSettings.listType === 0 || storeTextSettings.listType === -1) ? 'active' : ''}
|
(storeTextSettings.listType === 0 || storeTextSettings.listType === -1) ? 'active' : ''}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
storeTextSettings.resetBullets(bullet.type);
|
storeTextSettings.resetBullets(bullet.subtype);
|
||||||
props.onBullet(bullet.type);
|
props.onBullet(bullet.subtype);
|
||||||
}}>
|
}}>
|
||||||
{bullet.thumb.length < 1 ?
|
<div id={`id-markers-${bullet.subtype}`} className='item-marker'>
|
||||||
<Icon className="thumb" style={{position: 'relative'}}>
|
|
||||||
<label>{t('Edit.textNone')}</label>
|
</div>
|
||||||
</Icon> :
|
|
||||||
<Icon className="thumb" style={{backgroundImage: `url('resources/img/bullets/${bullet.thumb}')`}}></Icon>
|
|
||||||
}
|
|
||||||
</ListItem>
|
</ListItem>
|
||||||
))}
|
))}
|
||||||
</List>
|
</List>
|
||||||
|
@ -225,42 +225,41 @@ const PageBullets = observer( props => {
|
||||||
});
|
});
|
||||||
|
|
||||||
const PageNumbers = observer( props => {
|
const PageNumbers = observer( props => {
|
||||||
const { t } = useTranslation();
|
const storeTextSettings = props.storeTextSettings;
|
||||||
|
const typeNumbers = storeTextSettings.typeNumbers;
|
||||||
const numberArrays = [
|
const numberArrays = [
|
||||||
[
|
[
|
||||||
{type: -1, thumb: ''},
|
{ type: 1, subtype: -1},
|
||||||
{type: 4, thumb: 'number-01.png'},
|
{ type: 1, subtype: 4 },
|
||||||
{type: 5, thumb: 'number-02.png'},
|
{ type: 1, subtype: 5 },
|
||||||
{type: 6, thumb: 'number-03.png'}
|
{ type: 1, subtype: 6 }
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{type: 1, thumb: 'number-04.png'},
|
{ type: 1, subtype: 1 },
|
||||||
{type: 2, thumb: 'number-05.png'},
|
{ type: 1, subtype: 2 },
|
||||||
{type: 3, thumb: 'number-06.png'},
|
{ type: 1, subtype: 3 },
|
||||||
{type: 7, thumb: 'number-07.png'}
|
{ type: 1, subtype: 7 }
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
|
|
||||||
const storeTextSettings = props.storeTextSettings;
|
useEffect(() => {
|
||||||
const typeNumbers = storeTextSettings.typeNumbers;
|
props.getIconsBulletsAndNumbers($$('.item-number'), 1);
|
||||||
|
}, []);
|
||||||
|
|
||||||
return(
|
return(
|
||||||
<View className='numbers dataview'>
|
<View className='numbers dataview'>
|
||||||
{numberArrays.map((numbers, index) => (
|
{numberArrays.map((numbers, index) => (
|
||||||
<List className="row" style={{listStyle: 'none'}} key={'numbers-' + index}>
|
<List className="row" style={{listStyle: 'none'}} key={'numbers-' + index}>
|
||||||
{numbers.map((number) => (
|
{numbers.map((number) => (
|
||||||
<ListItem key={'number-' + number.type} data-type={number.type} className={(number.type === typeNumbers) &&
|
<ListItem key={'number-' + number.subtype} data-type={number.subtype} className={(number.subtype === typeNumbers) &&
|
||||||
(storeTextSettings.listType === 1 || storeTextSettings.listType === -1) ? 'active' : ''}
|
(storeTextSettings.listType === 1 || storeTextSettings.listType === -1) ? 'active' : ''}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
storeTextSettings.resetNumbers(number.type);
|
storeTextSettings.resetNumbers(number.subtype);
|
||||||
props.onNumber(number.type);
|
props.onNumber(number.subtype);
|
||||||
}}>
|
}}>
|
||||||
{number.thumb.length < 1 ?
|
<div id={`id-numbers-${number.subtype}`} className='item-number'>
|
||||||
<Icon className="thumb" style={{position: 'relative'}}>
|
|
||||||
<label>{t('Edit.textNone')}</label>
|
</div>
|
||||||
</Icon> :
|
|
||||||
<Icon className="thumb" style={{backgroundImage: `url('resources/img/numbers/${number.thumb}')`}}></Icon>
|
|
||||||
}
|
|
||||||
</ListItem>
|
</ListItem>
|
||||||
))}
|
))}
|
||||||
</List>
|
</List>
|
||||||
|
@ -270,33 +269,31 @@ const PageNumbers = observer( props => {
|
||||||
});
|
});
|
||||||
|
|
||||||
const PageMultiLevel = observer( props => {
|
const PageMultiLevel = observer( props => {
|
||||||
const { t } = useTranslation();
|
|
||||||
|
|
||||||
const arrayMultiLevel = [
|
|
||||||
{type: -1, thumb: ''},
|
|
||||||
{type: 1, thumb: 'multi-bracket.png'},
|
|
||||||
{type: 2, thumb: 'multi-dot.png'},
|
|
||||||
{type: 3, thumb: 'multi-bullets.png'},
|
|
||||||
];
|
|
||||||
|
|
||||||
const storeTextSettings = props.storeTextSettings;
|
const storeTextSettings = props.storeTextSettings;
|
||||||
const typeMultiLevel = storeTextSettings.typeMultiLevel;
|
const typeMultiLevel = storeTextSettings.typeMultiLevel;
|
||||||
|
const arrayMultiLevel = [
|
||||||
|
{ type: 2, subtype: -1 },
|
||||||
|
{ type: 2, subtype: 1 },
|
||||||
|
{ type: 2, subtype: 2 },
|
||||||
|
{ type: 2, subtype: 3 },
|
||||||
|
];
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
props.getIconsBulletsAndNumbers($$('.item-multilevellist'), 2);
|
||||||
|
}, []);
|
||||||
|
|
||||||
return(
|
return(
|
||||||
<View className='multilevels dataview'>
|
<View className='multilevels dataview'>
|
||||||
<List className="row" style={{listStyle: 'none'}}>
|
<List className="row" style={{listStyle: 'none'}}>
|
||||||
{arrayMultiLevel.map((item) => (
|
{arrayMultiLevel.map((item) => (
|
||||||
<ListItem
|
<ListItem
|
||||||
key={'multi-level-' + item.type}
|
key={'multi-level-' + item.subtype}
|
||||||
data-type={item.type}
|
data-type={item.subtype}
|
||||||
className={item.type === typeMultiLevel && storeTextSettings.listType === -1 ? 'active' : ''}
|
className={item.subtype === typeMultiLevel && storeTextSettings.listType === -1 ? 'active' : ''}
|
||||||
onClick={() => props.onMultiLevelList(item.type)}>
|
onClick={() => props.onMultiLevelList(item.subtype)}>
|
||||||
{item.thumb.length < 1 ?
|
<div id={`id-multilevellists-${item.subtype}`} className='item-multilevellist'>
|
||||||
<Icon className="thumb" style={{position: 'relative'}}>
|
|
||||||
<label>{t('Edit.textNone')}</label>
|
</div>
|
||||||
</Icon> :
|
|
||||||
<Icon className="thumb" style={{backgroundImage: `url('resources/img/multilevels/${item.thumb}')`}}></Icon>
|
|
||||||
}
|
|
||||||
</ListItem>
|
</ListItem>
|
||||||
))}
|
))}
|
||||||
</List>
|
</List>
|
||||||
|
@ -322,13 +319,25 @@ const PageBulletsAndNumbers = props => {
|
||||||
</Navbar>
|
</Navbar>
|
||||||
<Swiper pagination>
|
<Swiper pagination>
|
||||||
<SwiperSlide>
|
<SwiperSlide>
|
||||||
<PageNumbers storeTextSettings={storeTextSettings} onNumber={props.onNumber} />
|
<PageNumbers
|
||||||
|
storeTextSettings={storeTextSettings}
|
||||||
|
onNumber={props.onNumber}
|
||||||
|
getIconsBulletsAndNumbers={props.getIconsBulletsAndNumbers}
|
||||||
|
/>
|
||||||
</SwiperSlide>
|
</SwiperSlide>
|
||||||
<SwiperSlide>
|
<SwiperSlide>
|
||||||
<PageBullets storeTextSettings={storeTextSettings} onBullet={props.onBullet} />
|
<PageBullets
|
||||||
|
storeTextSettings={storeTextSettings}
|
||||||
|
onBullet={props.onBullet}
|
||||||
|
getIconsBulletsAndNumbers={props.getIconsBulletsAndNumbers}
|
||||||
|
/>
|
||||||
</SwiperSlide>
|
</SwiperSlide>
|
||||||
<SwiperSlide>
|
<SwiperSlide>
|
||||||
<PageMultiLevel storeTextSettings={storeTextSettings} onMultiLevelList={props.onMultiLevelList} />
|
<PageMultiLevel
|
||||||
|
storeTextSettings={storeTextSettings}
|
||||||
|
onMultiLevelList={props.onMultiLevelList}
|
||||||
|
getIconsBulletsAndNumbers={props.getIconsBulletsAndNumbers}
|
||||||
|
/>
|
||||||
</SwiperSlide>
|
</SwiperSlide>
|
||||||
</Swiper>
|
</Swiper>
|
||||||
</Page>
|
</Page>
|
||||||
|
@ -604,7 +613,8 @@ const EditText = props => {
|
||||||
<ListItem title={t('Edit.textBulletsAndNumbers')} link='/edit-bullets-and-numbers/' routeProps={{
|
<ListItem title={t('Edit.textBulletsAndNumbers')} link='/edit-bullets-and-numbers/' routeProps={{
|
||||||
onBullet: props.onBullet,
|
onBullet: props.onBullet,
|
||||||
onNumber: props.onNumber,
|
onNumber: props.onNumber,
|
||||||
onMultiLevelList: props.onMultiLevelList
|
onMultiLevelList: props.onMultiLevelList,
|
||||||
|
getIconsBulletsAndNumbers: props.getIconsBulletsAndNumbers,
|
||||||
}}>
|
}}>
|
||||||
<div className="preview">{previewList}</div>
|
<div className="preview">{previewList}</div>
|
||||||
{!isAndroid && <Icon slot="media" icon="icon-bullets"></Icon>}
|
{!isAndroid && <Icon slot="media" icon="icon-bullets"></Icon>}
|
||||||
|
|
|
@ -235,6 +235,11 @@ class EditTextController extends Component {
|
||||||
api.put_ListType(1, parseInt(type));
|
api.put_ListType(1, parseInt(type));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getIconsBulletsAndNumbers(arrayElements, type) {
|
||||||
|
const api = Common.EditorApi.get();
|
||||||
|
if (api) api.SetDrawImagePreviewBulletForMenu(arrayElements, type);
|
||||||
|
}
|
||||||
|
|
||||||
onLineSpacing(value) {
|
onLineSpacing(value) {
|
||||||
const api = Common.EditorApi.get();
|
const api = Common.EditorApi.get();
|
||||||
const LINERULE_AUTO = 1;
|
const LINERULE_AUTO = 1;
|
||||||
|
@ -263,6 +268,7 @@ class EditTextController extends Component {
|
||||||
changeLetterSpacing={this.changeLetterSpacing}
|
changeLetterSpacing={this.changeLetterSpacing}
|
||||||
onBullet={this.onBullet}
|
onBullet={this.onBullet}
|
||||||
onNumber={this.onNumber}
|
onNumber={this.onNumber}
|
||||||
|
getIconsBulletsAndNumbers={this.getIconsBulletsAndNumbers}
|
||||||
onLineSpacing={this.onLineSpacing}
|
onLineSpacing={this.onLineSpacing}
|
||||||
/>
|
/>
|
||||||
)
|
)
|
||||||
|
|
|
@ -143,6 +143,8 @@ const EditText = props => {
|
||||||
<ListItem title={_t.textBulletsAndNumbers} link='/edit-bullets-and-numbers/' routeProps={{
|
<ListItem title={_t.textBulletsAndNumbers} link='/edit-bullets-and-numbers/' routeProps={{
|
||||||
onBullet: props.onBullet,
|
onBullet: props.onBullet,
|
||||||
onNumber: props.onNumber,
|
onNumber: props.onNumber,
|
||||||
|
getIconsBulletsAndNumbers: props.getIconsBulletsAndNumbers
|
||||||
|
|
||||||
}}>
|
}}>
|
||||||
<div className="preview">{previewList}</div>
|
<div className="preview">{previewList}</div>
|
||||||
{!isAndroid && <Icon slot="media" icon="icon-bullets"></Icon>}
|
{!isAndroid && <Icon slot="media" icon="icon-bullets"></Icon>}
|
||||||
|
@ -491,24 +493,43 @@ const PageAdditionalFormatting = props => {
|
||||||
};
|
};
|
||||||
|
|
||||||
const PageBullets = observer(props => {
|
const PageBullets = observer(props => {
|
||||||
const { t } = useTranslation();
|
|
||||||
const _t = t('View.Edit', {returnObjects: true});
|
|
||||||
const bulletArrays = [
|
|
||||||
[
|
|
||||||
{type: -1, thumb: ''},
|
|
||||||
{type: 1, thumb: 'bullet-01.png'},
|
|
||||||
{type: 2, thumb: 'bullet-02.png'},
|
|
||||||
{type: 3, thumb: 'bullet-03.png'}
|
|
||||||
],
|
|
||||||
[
|
|
||||||
{type: 4, thumb: 'bullet-04.png'},
|
|
||||||
{type: 5, thumb: 'bullet-05.png'},
|
|
||||||
{type: 6, thumb: 'bullet-06.png'},
|
|
||||||
{type: 7, thumb: 'bullet-07.png'}
|
|
||||||
]
|
|
||||||
];
|
|
||||||
const storeTextSettings = props.storeTextSettings;
|
const storeTextSettings = props.storeTextSettings;
|
||||||
const typeBullets = storeTextSettings.typeBullets;
|
const typeBullets = storeTextSettings.typeBullets;
|
||||||
|
const markersArr = [
|
||||||
|
{type: Asc.asc_PreviewBulletType.text, text: 'None'},
|
||||||
|
{type: Asc.asc_PreviewBulletType.char, char: String.fromCharCode(0x00B7), specialFont: 'Symbol'},
|
||||||
|
{type: Asc.asc_PreviewBulletType.char, char: 'o', specialFont: 'Courier New'},
|
||||||
|
{type: Asc.asc_PreviewBulletType.char, char: String.fromCharCode(0x00A7), specialFont: 'Wingdings'},
|
||||||
|
{type: Asc.asc_PreviewBulletType.char, char: String.fromCharCode(0x0076), specialFont: 'Wingdings'},
|
||||||
|
{type: Asc.asc_PreviewBulletType.char, char: String.fromCharCode(0x00D8), specialFont: 'Wingdings'},
|
||||||
|
{type: Asc.asc_PreviewBulletType.char, char: String.fromCharCode(0x00FC), specialFont: 'Wingdings'},
|
||||||
|
{type: Asc.asc_PreviewBulletType.char, char: String.fromCharCode(0x00A8), specialFont: 'Symbol'},
|
||||||
|
];
|
||||||
|
|
||||||
|
const bulletArrays = [
|
||||||
|
[
|
||||||
|
{ type: 0, subtype: -1 },
|
||||||
|
{ type: 0, subtype: 1 },
|
||||||
|
{ type: 0, subtype: 2 },
|
||||||
|
{ type: 0, subtype: 3 }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ type: 0, subtype: 4 },
|
||||||
|
{ type: 0, subtype: 5 },
|
||||||
|
{ type: 0, subtype: 6 },
|
||||||
|
{ type: 0, subtype: 7 }
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
const arrayItemNumber = $$('.item-marker');
|
||||||
|
const arr = [];
|
||||||
|
|
||||||
|
arrayItemNumber.forEach( (item, index) => {
|
||||||
|
arr.push({...markersArr[index], divId: item.id});
|
||||||
|
});
|
||||||
|
props.getIconsBulletsAndNumbers(arr, 0);
|
||||||
|
}, []);
|
||||||
|
|
||||||
const paragraph = props.storeFocusObjects.paragraphObject;
|
const paragraph = props.storeFocusObjects.paragraphObject;
|
||||||
const shapeObj = props.storeFocusObjects.shapeObject;
|
const shapeObj = props.storeFocusObjects.shapeObject;
|
||||||
|
@ -522,18 +543,15 @@ const PageBullets = observer(props => {
|
||||||
{bulletArrays.map((bullets, index) => (
|
{bulletArrays.map((bullets, index) => (
|
||||||
<List className="row" style={{listStyle: 'none'}} key={'bullets-' + index}>
|
<List className="row" style={{listStyle: 'none'}} key={'bullets-' + index}>
|
||||||
{bullets.map((bullet) => (
|
{bullets.map((bullet) => (
|
||||||
<ListItem key={'bullet-' + bullet.type} data-type={bullet.type} className={(bullet.type === typeBullets) &&
|
<ListItem key={'bullet-' + bullet.subtype} data-type={bullet.subtype} className={(bullet.subtype === typeBullets) &&
|
||||||
(storeTextSettings.listType === 0 || storeTextSettings.listType === -1) ? 'active' : ''}
|
(storeTextSettings.listType === 0 || storeTextSettings.listType === -1) ? 'active' : ''}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
storeTextSettings.resetBullets(bullet.type);
|
storeTextSettings.resetBullets(bullet.subtype);
|
||||||
props.onBullet(bullet.type);
|
props.onBullet(bullet.subtype);
|
||||||
}}>
|
}}>
|
||||||
{bullet.thumb.length < 1 ?
|
<div id={`id-markers-${bullet.subtype}`} className='item-marker'>
|
||||||
<Icon className="thumb" style={{position: 'relative'}}>
|
|
||||||
<label>{_t.textNone}</label>
|
</div>
|
||||||
</Icon> :
|
|
||||||
<Icon className="thumb" style={{backgroundImage: `url('resources/img/bullets/${bullet.thumb}')`}}></Icon>
|
|
||||||
}
|
|
||||||
</ListItem>
|
</ListItem>
|
||||||
))}
|
))}
|
||||||
</List>
|
</List>
|
||||||
|
@ -543,25 +561,43 @@ const PageBullets = observer(props => {
|
||||||
});
|
});
|
||||||
|
|
||||||
const PageNumbers = observer(props => {
|
const PageNumbers = observer(props => {
|
||||||
const { t } = useTranslation();
|
const storeTextSettings = props.storeTextSettings;
|
||||||
const _t = t('View.Edit', {returnObjects: true});
|
const typeNumbers = storeTextSettings.typeNumbers;
|
||||||
|
const numbersArr = [
|
||||||
|
{type: Asc.asc_PreviewBulletType.text, text: 'None'},
|
||||||
|
{type: Asc.asc_PreviewBulletType.number, numberingType: Asc.asc_oAscNumberingLevel.UpperLetterDot_Left},
|
||||||
|
{type: Asc.asc_PreviewBulletType.number, numberingType: Asc.asc_oAscNumberingLevel.LowerLetterBracket_Left},
|
||||||
|
{type: Asc.asc_PreviewBulletType.number, numberingType: Asc.asc_oAscNumberingLevel.LowerLetterDot_Left},
|
||||||
|
{type: Asc.asc_PreviewBulletType.number, numberingType: Asc.asc_oAscNumberingLevel.DecimalDot_Right},
|
||||||
|
{type: Asc.asc_PreviewBulletType.number, numberingType: Asc.asc_oAscNumberingLevel.DecimalBracket_Right},
|
||||||
|
{type: Asc.asc_PreviewBulletType.number, numberingType: Asc.asc_oAscNumberingLevel.UpperRomanDot_Right},
|
||||||
|
{type: Asc.asc_PreviewBulletType.number, numberingType: Asc.asc_oAscNumberingLevel.LowerRomanDot_Right},
|
||||||
|
];
|
||||||
const numberArrays = [
|
const numberArrays = [
|
||||||
[
|
[
|
||||||
{type: -1, thumb: ''},
|
{type: 1, subtype: -1},
|
||||||
{type: 4, thumb: 'number-01.png'},
|
{type: 1, subtype: 4},
|
||||||
{type: 5, thumb: 'number-02.png'},
|
{type: 1, subtype: 5},
|
||||||
{type: 6, thumb: 'number-03.png'}
|
{type: 1, subtype: 6}
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{type: 1, thumb: 'number-04.png'},
|
{type: 1, subtype: 1},
|
||||||
{type: 2, thumb: 'number-05.png'},
|
{type: 1, subtype: 2},
|
||||||
{type: 3, thumb: 'number-06.png'},
|
{type: 1, subtype: 3},
|
||||||
{type: 7, thumb: 'number-07.png'}
|
{type: 1, subtype: 7}
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
|
|
||||||
const storeTextSettings = props.storeTextSettings;
|
useEffect(() => {
|
||||||
const typeNumbers = storeTextSettings.typeNumbers;
|
const arrayItemNumber = $$('.item-number');
|
||||||
|
const arr = [];
|
||||||
|
|
||||||
|
arrayItemNumber.forEach( (item, index) => {
|
||||||
|
arr.push({...numbersArr[index], divId: item.id});
|
||||||
|
});
|
||||||
|
|
||||||
|
props.getIconsBulletsAndNumbers(arr, 1);
|
||||||
|
}, []);
|
||||||
|
|
||||||
const paragraph = props.storeFocusObjects.paragraphObject;
|
const paragraph = props.storeFocusObjects.paragraphObject;
|
||||||
const shapeObj = props.storeFocusObjects.shapeObject;
|
const shapeObj = props.storeFocusObjects.shapeObject;
|
||||||
|
@ -575,18 +611,15 @@ const PageNumbers = observer(props => {
|
||||||
{numberArrays.map((numbers, index) => (
|
{numberArrays.map((numbers, index) => (
|
||||||
<List className="row" style={{listStyle: 'none'}} key={'numbers-' + index}>
|
<List className="row" style={{listStyle: 'none'}} key={'numbers-' + index}>
|
||||||
{numbers.map((number) => (
|
{numbers.map((number) => (
|
||||||
<ListItem key={'number-' + number.type} data-type={number.type} className={(number.type === typeNumbers) &&
|
<ListItem key={'number-' + number.subtype} data-type={number.subtype} className={(number.subtype === typeNumbers) &&
|
||||||
(storeTextSettings.listType === 1 || storeTextSettings.listType === -1) ? 'active' : ''}
|
(storeTextSettings.listType === 1 || storeTextSettings.listType === -1) ? 'active' : ''}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
storeTextSettings.resetNumbers(number.type);
|
storeTextSettings.resetNumbers(number.subtype);
|
||||||
props.onNumber(number.type);
|
props.onNumber(number.subtype);
|
||||||
}}>
|
}}>
|
||||||
{number.thumb.length < 1 ?
|
<div id={`id-numbers-${number.subtype}`} className='item-number'>
|
||||||
<Icon className="thumb" style={{position: 'relative'}}>
|
|
||||||
<label>{_t.textNone}</label>
|
</div>
|
||||||
</Icon> :
|
|
||||||
<Icon className="thumb" style={{backgroundImage: `url('resources/img/numbers/${number.thumb}')`}}></Icon>
|
|
||||||
}
|
|
||||||
</ListItem>
|
</ListItem>
|
||||||
))}
|
))}
|
||||||
</List>
|
</List>
|
||||||
|
@ -613,8 +646,24 @@ const PageBulletsAndNumbers = props => {
|
||||||
}
|
}
|
||||||
</Navbar>
|
</Navbar>
|
||||||
<Swiper pagination>
|
<Swiper pagination>
|
||||||
<SwiperSlide> <PageNumbers f7router={props.f7router} storeFocusObjects={storeFocusObjects} storeTextSettings={storeTextSettings} onNumber={props.onNumber}/></SwiperSlide>
|
<SwiperSlide>
|
||||||
<SwiperSlide> <PageBullets f7router={props.f7router} storeFocusObjects={storeFocusObjects} storeTextSettings={storeTextSettings} onBullet={props.onBullet}/></SwiperSlide>
|
<PageNumbers
|
||||||
|
f7router={props.f7router}
|
||||||
|
storeFocusObjects={storeFocusObjects}
|
||||||
|
storeTextSettings={storeTextSettings}
|
||||||
|
onNumber={props.onNumber}
|
||||||
|
getIconsBulletsAndNumbers={props.getIconsBulletsAndNumbers}
|
||||||
|
/>
|
||||||
|
</SwiperSlide>
|
||||||
|
<SwiperSlide>
|
||||||
|
<PageBullets
|
||||||
|
f7router={props.f7router}
|
||||||
|
storeFocusObjects={storeFocusObjects}
|
||||||
|
storeTextSettings={storeTextSettings}
|
||||||
|
onBullet={props.onBullet}
|
||||||
|
getIconsBulletsAndNumbers={props.getIconsBulletsAndNumbers}
|
||||||
|
/>
|
||||||
|
</SwiperSlide>
|
||||||
</Swiper>
|
</Swiper>
|
||||||
</Page>
|
</Page>
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue