@@ -85,42 +78,44 @@ const PageLinkTo = props => {
const PageLink = props => {
const { t } = useTranslation();
const _t = t('View.Edit', {returnObjects: true});
- const storeFocusObjects = props.storeFocusObjects;
- const storeLinkSettings = props.storeLinkSettings;
- const linkObject = storeFocusObjects.linkObject;
-
- useEffect(() => {
- storeLinkSettings.initCategory(linkObject);
- }, [linkObject]);
+ const url = props.url;
+ const tooltip = props.tooltip;
+ const display = props.display;
+ const slideNum = props.slideNum;
+ const slideLink = props.slideLink;
+ const valueTypeLink = props.typeLink;
- const url = linkObject.get_Value();
- const tooltip = linkObject.get_ToolTip();
- const display = linkObject.get_Text();
- const slideNum = storeLinkSettings.slideNum;
- const slideLink = storeLinkSettings.slideLink;
- const typeLink = storeLinkSettings.typeLink;
-
- if(typeLink === 1) {
- storeLinkSettings.changeSlideName(_t.textNextSlide);
- storeLinkSettings.changeSlideLink(0);
- }
+ const typesDisplayTo = {
+ 0: `${_t.textNextSlide}`,
+ 1: `${_t.textPreviousSlide}`,
+ 2: `${_t.textFirstSlide}`,
+ 3: `${_t.textLastSlide}`,
+ 4: `${_t.textSlide} ${slideNum + 1}`
+ };
+ const [typeLink, setTypeLink] = useState(valueTypeLink);
const textType = typeLink === 1 ? _t.textExternalLink : _t.textSlideInThisPresentation;
+
+ const changeType = (newType) => {
+ setTypeLink(newType);
+ };
+
const [link, setLink] = useState(typeLink !== 0 ? url : '');
+ const [linkTo, setLinkTo] = useState(slideLink);
+ const [displayTo, setDisplayTo] = useState(typesDisplayTo[slideLink]);
+ const [numberTo, setNumberTo] = useState(slideNum);
- const changeTo = (slideLink, number) => {
- switch (slideLink) {
- case 0 : storeLinkSettings.changeSlideName(_t.textNextSlide); break;
- case 1 : storeLinkSettings.changeSlideName(_t.textPreviousSlide); break;
- case 2 : storeLinkSettings.changeSlideName(_t.textFirstSlide); break;
- case 3 : storeLinkSettings.changeSlideName(_t.textLastSlide); break;
- case 4 : storeLinkSettings.changeSlideName(`${_t.textSlide} ${number + 1}`); storeLinkSettings.changeSlideNum(number);
+ const changeTo = (type, number) => {
+ setLinkTo(type);
+ switch (type) {
+ case 0 : setDisplayTo(_t.textNextSlide); break;
+ case 1 : setDisplayTo(_t.textPreviousSlide); break;
+ case 2 : setDisplayTo(_t.textFirstSlide); break;
+ case 3 : setDisplayTo(_t.textLastSlide); break;
+ case 4 : setDisplayTo(`${_t.textSlide} ${number + 1}`); setNumberTo(number); break;
}
- }
+ };
- changeTo(slideLink, slideNum);
-
- const slideName = storeLinkSettings.slideName;
const [screenTip, setScreenTip] = useState(tooltip);
const displayDisabled = display !== false && display === null;
const [stateDisplay, setDisplay] = useState(display !== false ? ((display !== null) ? display : _t.textDefault) : "");
@@ -130,7 +125,9 @@ const PageLink = props => {
{typeLink !== 0 ?
{
value={link}
onChange={(event) => {setLink(event.target.value)}}
/> :
-
}
{
onClick={() => {
props.onEditLink(typeLink, (typeLink === 1 ?
{url: link, display: stateDisplay, tip: screenTip, displayDisabled: displayDisabled } :
- {linkTo: slideLink, numberTo: slideNum, display: stateDisplay, tip: screenTip, displayDisabled: displayDisabled}));
+ {linkTo: linkTo, numberTo: numberTo, display: stateDisplay, tip: screenTip, displayDisabled: displayDisabled}));
}}
/>
{
)
};
-const EditLink = inject("storeFocusObjects", "storeLinkSettings")(observer(PageLink));
-const LinkTo = inject("storeFocusObjects", "storeLinkSettings")(observer(PageLinkTo));
-const TypeLink = inject("storeFocusObjects", "storeLinkSettings")(observer(PageTypeLink));
-
-export {EditLink,
- LinkTo as PageLinkTo,
- TypeLink as PageTypeLink}
\ No newline at end of file
+export {PageLink as EditLink,
+ PageLinkTo,
+ PageTypeLink}
\ No newline at end of file
diff --git a/apps/presentationeditor/mobile/src/view/settings/PresentationSettings.jsx b/apps/presentationeditor/mobile/src/view/settings/PresentationSettings.jsx
index e6da2e822..7288657df 100644
--- a/apps/presentationeditor/mobile/src/view/settings/PresentationSettings.jsx
+++ b/apps/presentationeditor/mobile/src/view/settings/PresentationSettings.jsx
@@ -7,14 +7,13 @@ const PagePresentationSettings = props => {
const { t } = useTranslation();
const _t = t("View.Settings", { returnObjects: true });
props.initSlideSize();
- const store = props.storePresentationSettings;
- const slideSizeArr = store.getSlideSizes;
- const slideSizeIndex = store.slideSizeIndex;
+ const storePresentationSettings = props.storePresentationSettings;
+ const slideSizeArr = storePresentationSettings.slideSizes;
+ const slideSizeIndex = storePresentationSettings.slideSizeIndex;
return (
-
{_t.textSlideSize}
{
props.onSlideSize(slideSizeArr[1])} title={_t.mniSlideWide}>
-
{
const curScheme = props.initPageColorSchemes();
const [stateScheme, setScheme] = useState(curScheme);
const _t = t('View.Settings', {returnObjects: true});
- const store = props.storePresentationSettings;
- const allSchemes = store.allSchemes;
+ const storePresentationSettings = props.storePresentationSettings;
+ const allSchemes = storePresentationSettings.allSchemes;
return (