Update git submodules
[libreoffice.git] / sfx2 / README.md
blob3b91584759eb5330c5af941dc12eb1535c372d8d
1 # Legacy Framework
3 `SFX` is the "old" framework, used for historical reasons.
5 An attempt of documentation of this module is located in `[git:sfx2/doc]`.
7 It contains base classes for document model, view and controller, used
8 by "old" applications like `sw`, `sc`, `sd` (while "new" applications
9 are based on the "new" UNO based framework in "framework").
11 The SFX framework is based on dispatching slots identified by integers
12 (`SlotIDs`) to `SfxShells`, and there is a dedicated IDL compiler (`svidl`)
13 involved that generates C++ slot headers from SDI files in modules' `sdi/`
14 subdirectory.
16 Documentation about SFX dispatch, SDI etc.:
17 <https://wiki.openoffice.org/wiki/Framework/Article/Implementation_of_the_Dispatch_API_In_SFX2>
19 Document load/save code is maintained in `[git:sfx2/source/doc/docfile.cxx`]
20 `SfxMedium` class, which handles all the twisty load and save corner cases.
22 `[git:sfx2/source/appl/sfxhelp.cxx]` Start procedure for the online
23 help viewer top level window; handling of help URL creation and
24 dispatch.
26 There are also some UNO services here that could really be implemented
27 anywhere, e.g. the `DocumentProperties` or `DocumentMetadataAccess`.
29 Notable files:
30 `sfx2/source/dialog/backingwindow.cxx` `Startcenter` buttons and the corresponding event handler.