db3a61cd95
...instead of by listing the content somewhat redundantly in the Rdb_*.mk files, to avoid duplication of logic for components that are only built conditionally (and thus should only be included conditionally in the corresponding Rdb). To achieve that, add an "rdb" parameter to gb_ComponentTarget_ComponentTarget (and to the gb_*_set_componentfile macros that internally call gb_ComponentTarget_ComponentTarget), which is used to make the appropriate gb_Rdb_add_component call internally from within gb_ComponentTarget_ComponentTarget. (As a special case, gb_CppunitTest_set_componentfile shall not call gb_Rdb_add_component, as that has already been done by the corresponding gb_Library_set_componentfile call, so allow the gb_ComponentTarget_ComponentTarget "rdb" parameter to be empty to support that special case.) Most Rdb_*.mk files are thus mostly empty now. One exception is i18npool/Rdb_saxparser.mk, which duplicates some of the Rdb_services content as needed during the build in CustomTarget_i18npool/localedata. |
||
---|---|---|
.. | ||
inc | ||
source | ||
CppunitTest_sdext_pdfimport.mk | ||
CustomTarget_pdfimport.mk | ||
Executable_pdf2xml.mk | ||
Executable_pdfunzip.mk | ||
Executable_xpdfimport.mk | ||
IwyuFilter_sdext.yaml | ||
Library_pdfimport.mk | ||
Library_PresentationMinimizer.mk | ||
Library_PresenterScreen.mk | ||
Makefile | ||
Module_sdext.mk | ||
Package_pdfimport_xpdfimport.mk | ||
README.md |
Extensions for the Impress and Draw Applications
source/pdfimport/
- PDF import
Uses an external poppler process to parse and handle PDF import as draw shapes.
source/minimizer/
- Presentation Minimizer
Shrinks presentations by down-scaling images, and removing extraneous eg. embedded OLE content.
source/presenter/
- Impress / Presenter Console.
This couples to sd/
in rather strange ways. Its design is
heavily mangled by an attempt to use only UNO interfaces
which are highly inadequate. This leads to somewhat
ridiculous situations. Activating in response to
configuration keys (for example), and the XPresenterHelper
interface inside sd/
used to create and manage windows.
The main screen uses a hardware-accelerated
canvas (e.g. cairo canvas), while the entire secondary screen
uses a VCL-canvas that is created in
sd::framework::FullScreenPane::CreateCanvas()
.
The secondary screen contains 3 Pane
s which each have
2 XWindows
for the border area & the actual content,
and each content Pane is backed by a sd::presenter::PresenterCanvas
that wraps the FullScreenPane
's canvas and does clipping.