office-gobmx/vcl
2012-03-01 14:27:16 +00:00
..
android android: move DamageTracker concept into SvpSalFrame and try to use it 2012-02-25 14:17:57 +00:00
aqua/source can use Zip for this 2012-02-29 12:37:38 +01:00
generic Reduced duplicate code (simian) / vcl/generic/print/glyphset.cxx 2012-02-28 14:23:37 +00:00
headless android: move DamageTracker concept into SvpSalFrame and try to use it 2012-02-25 14:17:57 +00:00
inc String types have changed in base class 2012-03-01 15:28:25 +02:00
ios/source WaE: unused variable 2012-03-01 15:28:27 +02:00
null Put HEADLESS definition under LIBO namespace 2012-02-21 12:46:28 +02:00
prj
qa/complex
source I really only want to know if IsSymbolFont was toggled 2012-03-01 14:27:16 +00:00
test
unx SessionManagerClient is never instantiated 2012-02-29 10:09:44 +00:00
win/source vcl: fdo#46399 cleanup and share dummy virtual methods ... 2012-02-22 09:38:37 +00:00
workben
AllLangResTarget_vcl.mk Unify indentation 2012-02-23 22:59:55 +02:00
Library_desktop_detector.mk
Library_vcl.mk
Library_vclplug_gen.mk
Library_vclplug_gtk.mk
Library_vclplug_gtk3.mk
Library_vclplug_kde.mk disable warnigns as errors for KDE3 code 2012-02-27 14:10:59 +01:00
Library_vclplug_kde4.mk Typo fps_kde4 -> vclplug_kde4 2012-02-29 20:52:02 +01:00
Library_vclplug_svp.mk
Makefile
Module_vcl.mk can use Zip for this 2012-02-29 12:37:38 +01:00
Package_afmhash.mk
Package_inc.mk
Package_kde4moc.mk
README
StaticLibrary_vclmain.mk
vcl.android.component
vcl.headless.component
vcl.ios.component
vcl.macosx.component
vcl.unx.component
vcl.windows.component
WinResTarget_vcl.mk Unify indentation 2012-02-23 22:59:55 +02:00
Zip_osxres.mk can use Zip for this 2012-02-29 12:37:38 +01:00

Visual Components Library is responsible for the widgets (windowing, buttons, controls, 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.