da86bfd89e
A temporary (ugly, but appropriate) icon has been assigned. The toggle can be customize-assigned to keyboard, menu, and toolbar, and can be found by searching for "Dark Mode". In the menu, it is checked when in Dark mode, and in the toolbar it is "depressed" or highlighted as active. Dark mode has been added to the view tab of notebookbar.ui. I added it as NOT VISIBLE, for several reasons. - dark mode is rather new and not so stable, so don't over-promote it. - notebookbars cannot be infinitely customized by the end user, so developers have to add all items. Users only enable or disable. - toggling dark mode really ought to be done at the OS level, and typically should be a one-time setting, therefore not appropriate to waste precious toolbar space. The primary benefit of making it available in the menu is for QA testers who want to easily switch back and forth. WARNING: by customizing the notebookbar, you prevent seeing any future NBB changes made to the program (until you reset to defaults or blow away the user profile). Dark Mode can easily be added to a menu, toolbar or keyboard shortcut by the end user, so I didn't bother adding it anywhere else. To avoid completely cluttering up this commit, I only added Dark mode to the main notebookbar. Once this commit has been finalized, the other writer-apps and notebookbars can also gain this command. Change-Id: Ia7594ad81e305ead922abd0ad7b41d6fc0413053 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166781 Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com> |
||
---|---|---|
.. | ||
classification | ||
doc | ||
inc | ||
qa | ||
sdi | ||
source | ||
uiconfig/ui | ||
util | ||
AllLangMoTarget_sfx2.mk | ||
CppunitTest_sfx2_classification.mk | ||
CppunitTest_sfx2_controlleritem.mk | ||
CppunitTest_sfx2_dialogs_test.mk | ||
CppunitTest_sfx2_doc.mk | ||
CppunitTest_sfx2_metadatable.mk | ||
CppunitTest_sfx2_misc.mk | ||
CppunitTest_sfx2_view.mk | ||
CustomTarget_classification.mk | ||
IwyuFilter_sfx2.yaml | ||
JunitTest_sfx2_complex.mk | ||
JunitTest_sfx2_unoapi.mk | ||
Library_sfx.mk | ||
Makefile | ||
Module_sfx2.mk | ||
Package_classification.mk | ||
PythonTest_sfx2_python.mk | ||
README.md | ||
UIConfig_sfx.mk | ||
UITest_sfx2_doc.mk |
Legacy Framework
SFX
is the "old" framework, used for historical reasons.
An attempt of documentation of this module is located in [git:sfx2/doc]
.
It contains base classes for document model, view and controller, used
by "old" applications like sw
, sc
, sd
(while "new" applications
are based on the "new" UNO based framework in "framework").
The SFX framework is based on dispatching slots identified by integers
(SlotIDs
) to SfxShells
, and there is a dedicated IDL compiler (svidl
)
involved that generates C++ slot headers from SDI files in modules' sdi/
subdirectory.
Documentation about SFX dispatch, SDI etc.: https://wiki.openoffice.org/wiki/Framework/Article/Implementation_of_the_Dispatch_API_In_SFX2
Document load/save code is maintained in [git:sfx2/source/doc/docfile.cxx
]
SfxMedium
class, which handles all the twisty load and save corner cases.
[git:sfx2/source/appl/sfxhelp.cxx]
Start procedure for the online
help viewer top level window; handling of help URL creation and
dispatch.
There are also some UNO services here that could really be implemented
anywhere, e.g. the DocumentProperties
or DocumentMetadataAccess
.
Notable files:
sfx2/source/dialog/backingwindow.cxx
Startcenter
buttons and the corresponding event handler.