summaryrefslogtreecommitdiff
path: root/sfx2
diff options
context:
space:
mode:
authorRodolfo Ribeiro Gomes <rodolforg@gmail.com>2013-05-28 11:22:05 -0300
committerLuboš Luňák <l.lunak@suse.cz>2013-05-30 15:44:47 +0000
commitffc2e5be1f712b09710e2096ad2f7eb81b80118d (patch)
tree7f4fa2234c3b41d49d12f1d1760b4e6d73e5c7ea /sfx2
parent615b3c8425fa0c5e91f61c434cd03f94897b2cac (diff)
Clean zoom redundances in Math and fix fdo#55929
Zoom can be handled by sfx2 in many ways: - 50%, 75%, 100%, 150%, 200% - Optimal view (fit in window) - Entire page - Page width The math module was doing the first two by itself. Remove it. Strange enough, state methods for zoom interface definitions on sfx2's appslots.sdi were needed. I thought 'Container' property in sfx.sdi should do the job. It seems to do nothing, though. (The zoom should be disabled only if the object is an OLE/Container). The Help-Ids from pop-up menu in Math/Formula were kept, because they doesn't exist in sfx2. Change-Id: Ie1ae413780551b34aa36b338f9a9df79a198319c Reviewed-on: https://gerrit.libreoffice.org/4076 Reviewed-by: Luboš Luňák <l.lunak@suse.cz> Tested-by: Luboš Luňák <l.lunak@suse.cz>
Diffstat (limited to 'sfx2')
-rw-r--r--sfx2/sdi/appslots.sdi8
-rw-r--r--sfx2/source/appl/appserv.cxx16
2 files changed, 24 insertions, 0 deletions
diff --git a/sfx2/sdi/appslots.sdi b/sfx2/sdi/appslots.sdi
index aa1da36faebf..320a75e121d2 100644
--- a/sfx2/sdi/appslots.sdi
+++ b/sfx2/sdi/appslots.sdi
@@ -182,34 +182,42 @@ interface Application
SID_ZOOM_ENTIRE_PAGE
[
ExecMethod = MiscExec_Impl ;
+ StateMethod = MiscState_Impl ;
]
SID_ZOOM_OPTIMAL
[
ExecMethod = MiscExec_Impl ;
+ StateMethod = MiscState_Impl ;
]
SID_ZOOM_PAGE_WIDTH
[
ExecMethod = MiscExec_Impl ;
+ StateMethod = MiscState_Impl ;
]
SID_ZOOM_50_PERCENT
[
ExecMethod = MiscExec_Impl ;
+ StateMethod = MiscState_Impl ;
]
SID_ZOOM_75_PERCENT
[
ExecMethod = MiscExec_Impl ;
+ StateMethod = MiscState_Impl ;
]
SID_ZOOM_100_PERCENT
[
ExecMethod = MiscExec_Impl ;
+ StateMethod = MiscState_Impl ;
]
SID_ZOOM_150_PERCENT
[
ExecMethod = MiscExec_Impl ;
+ StateMethod = MiscState_Impl ;
]
SID_ZOOM_200_PERCENT
[
ExecMethod = MiscExec_Impl ;
+ StateMethod = MiscState_Impl ;
]
SID_HELP_TUTORIALS
[
diff --git a/sfx2/source/appl/appserv.cxx b/sfx2/source/appl/appserv.cxx
index 80a380ff0552..825125d0d48f 100644
--- a/sfx2/source/appl/appserv.cxx
+++ b/sfx2/source/appl/appserv.cxx
@@ -827,6 +827,22 @@ void SfxApplication::MiscState_Impl(SfxItemSet &rSet)
}
break;
+ case SID_ZOOM_50_PERCENT:
+ case SID_ZOOM_75_PERCENT:
+ case SID_ZOOM_100_PERCENT:
+ case SID_ZOOM_150_PERCENT:
+ case SID_ZOOM_200_PERCENT:
+ case SID_ZOOM_OPTIMAL:
+ case SID_ZOOM_ENTIRE_PAGE:
+ case SID_ZOOM_PAGE_WIDTH:
+ {
+ const SfxPoolItem *pItem;
+ SfxItemState aState = SfxViewFrame::Current()->GetDispatcher()->QueryState(SID_ATTR_ZOOM, pItem);
+ if ( aState == SFX_ITEM_DISABLED )
+ rSet.DisableItem( nWhich );
+ }
+ break;
+
default:
break;
}