Files
libreoffice/vcl
Luboš Luňák 4708aede26 TDE is certainly not a preferred fallback over KDE4
Change-Id: Iebfe536f228e7831d81d59ea3c3692f8906f72ad
2012-05-18 14:31:30 +02:00
..
2012-04-11 19:10:44 +03:00
2012-05-13 08:51:39 +09:00
2012-05-11 11:45:43 +03:00
2012-05-14 20:09:41 -05:00
2012-05-14 20:09:41 -05:00
2012-05-14 20:09:41 -05:00
2012-05-14 20:09:41 -05:00
2012-04-14 01:35:00 +02:00

Visual Components Library is responsible for the widgets (windowing, buttons, controls, file-pickers etc.) operating system abstraction, including basic rendering (e.g. the output device).

Welcome to the Visual Class Libraries (vcl) code

source/
	+ the main cross-platform chunk of source
inc/
	+ cross-platform abstraction headers / definition
	vcl/
		+ external headers
generic/
	+ shared helper code for backends,
	  actually built into vcl
headless/
	+ a backend renderer that draws to bitmaps
aqua/
	+ OS/X backend
ios/
	+ skeleton Android backend
win/
	+ windows backend
unx/
	+ unix specific platform backend code and its' sub-platforms
	plugadapt/
		+ pluggable framework to select correct unx backend
	gtk/
		+ gtk2 support
	gtk3/
		+ gtk3.2+ support
	kde/
		+ kde3 support
	kde4/
		+ kde4 support
	generic/
		+ raw X support


How the platform abstraction works

	+ InitVCL calls 'CreateSalInstance'
		+ ths is implemented by the compiled-in platform backend
		+ it stores various bits of global state in the
		  'SalData' (inc/saldatabasic.hxx) structure but:
	+ the SalInstance vtable is the primary outward facing gateway
	  API for platform backends
		+ It is a factory for:
		  SalFrames, SalVirtualDevices, SalPrinters,
		  Timers, the SolarMutexe, Drag&Drop and other
		  objects, as well as the primary event loop wrapper.