diff options
author | Sarper Akdemir <sarper.akdemir.extern@allotropia.de> | 2024-04-04 07:18:38 +0300 |
---|---|---|
committer | Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de> | 2024-04-11 11:02:01 +0200 |
commit | 291919476294f62d7af9b8b7060d138728897ee7 (patch) | |
tree | fbefb7f2bf02ec5c2f9a333818af3bc918d1b60b /sd/source/ui/inc/TextObjectBar.hxx | |
parent | 8d85da5616bab28c1df226bcbf4fe777b14b363e (diff) |
tdf#33603: sd: rework notes panel
To be able to support various dispatch commands, sidebar, proper
user configuration, and more - reworked the previous notes panel
implementation as a sd::View/sd::ViewShell pair that plays nice
with Impress framework.
To be able to support TextObjectBar(Shell) functionality, without
having TextObjectBar as a SubShell (In the current sd::framework
implementation AFAICS, SubShells are only possible for the
MainViewShell - this doesn't work for notes panel which is never
used as the MainViewShell.).
A workaround is implemented where NotesPanel inherits dispatching
slots from TextObjectBar, and for these inherited slots forwards
the calls to TextObjectBar's implementation.
This workaround could be removed if/when, SubShell support
outside of MainViewShell is implemented.
Known issues/TODO:
- Drag & Drop crashes / doesn't work.
- Some notes placeholder syncing problems on page change, edit mode
change.
- A rendering issue related to resizing when ArrangeGUIElements
isn't called on resize.
Change-Id: I588a4854fbedf6556e001fee1693b32410cbc23f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165770
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
Diffstat (limited to 'sd/source/ui/inc/TextObjectBar.hxx')
-rw-r--r-- | sd/source/ui/inc/TextObjectBar.hxx | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sd/source/ui/inc/TextObjectBar.hxx b/sd/source/ui/inc/TextObjectBar.hxx index 61394834fbc2..aaa008f04f93 100644 --- a/sd/source/ui/inc/TextObjectBar.hxx +++ b/sd/source/ui/inc/TextObjectBar.hxx @@ -45,8 +45,11 @@ public: virtual ~TextObjectBar() override; void GetAttrState( SfxItemSet& rSet ); + static void GetAttrStateImpl(ViewShell* mpViewShell, ::sd::View* mpView, SfxItemSet& rSet, SfxShell* pTextObjectBar); void GetCharState( SfxItemSet& rSet ); + static void GetCharStateImpl(ViewShell* mpViewShell, ::sd::View* mpView, SfxItemSet& rSet); void Execute( SfxRequest &rReq ); + static void ExecuteImpl(ViewShell* mpViewShell, ::sd::View* mpView, SfxRequest& rReq, SfxShell* pTextObjectBar); private: ViewShell* mpViewShell; |