office-gobmx/sfx2
Caolán McNamara 99860a1fbf Related: tdf#152266 open 'event' page by default for SID_CONFIGEVENT
Change-Id: I7a3f6def8bda00588ef2846e5d3b5ed5d1da04de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143899
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-12-10 10:06:26 +00:00
..
classification
doc
inc loplugin:unusedfields 2022-11-22 05:39:20 +01:00
qa sfx2: extend .uno:SetDocumentProperties to update custom doc props 2022-11-30 16:51:00 +01:00
sdi tdf#152078 Add a Zoom slider to the Basic IDE 2022-12-01 12:33:45 +01:00
source Related: tdf#152266 open 'event' page by default for SID_CONFIGEVENT 2022-12-10 10:06:26 +00:00
uiconfig/ui tdf#151197: Remove EmojiControl 2022-09-29 14:39:17 +02:00
util tdf#151197: Remove EmojiControl 2022-09-29 14:39:17 +02:00
AllLangMoTarget_sfx2.mk
CppunitTest_sfx2_classification.mk UnoApiTest: factor out common code 2022-11-09 19:08:32 +01:00
CppunitTest_sfx2_controlleritem.mk
CppunitTest_sfx2_dialogs_test.mk
CppunitTest_sfx2_doc.mk move password handling from SwModelTestBase to UnoApiTest 2022-11-11 20:09:41 +01:00
CppunitTest_sfx2_metadatable.mk
CppunitTest_sfx2_misc.mk UnoApiTest: factor out common code 2022-11-09 19:08:32 +01:00
CppunitTest_sfx2_view.mk move password handling from SwModelTestBase to UnoApiTest 2022-11-11 20:09:41 +01:00
CustomTarget_classification.mk
IwyuFilter_sfx2.yaml Move tools/diagnose_ex.h to comphelper/diagnose_ex.hxx 2022-08-18 17:10:19 +02:00
JunitTest_sfx2_complex.mk
JunitTest_sfx2_unoapi.mk
Library_sfx.mk tdf#151197: Remove EmojiControl 2022-09-29 14:39:17 +02:00
Makefile
Module_sfx2.mk tdf#151197: Remove EmojiControl 2022-09-29 14:39:17 +02:00
Package_classification.mk
PythonTest_sfx2_python.mk
README.md
UIConfig_sfx.mk tdf#151197: Remove EmojiControl 2022-09-29 14:39:17 +02:00
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.