office-gobmx/sdext
Noel b624b13b3d loplugin:flatten
Change-Id: Ib7a895fba66f8dc9b6501e61631c02694053b7fc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113157
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-26 18:02:19 +01:00
..
inc
source loplugin:flatten 2021-03-26 18:02:19 +01:00
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 Using .md extension/Markdown syntax for modules README 2021-03-24 11:46:14 +01:00

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 "Panes" 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.