office-gobmx/vcl
Jan Holesovsky 9b10ef9fc3 Revert the TOPBOTTOM border window type, this needs another approach.
This reverts commit 51fdf273e9.

In order to be able to draw the toolbars docked on the left or on the right
nicely and reliably, we have to avoid any border in the shell; instead, the
docking areas will draw the separating lines (when finished).

Change-Id: I74c18a7e471a66ac0a436c2bf01f5be016280d22
2012-08-23 17:53:59 +02:00
..
android
aqua/source Replace usage of rtl/memory.h in vcl with equivalent from string.h 2012-08-14 16:18:05 +02:00
generic -Werror,-Wunused-private-field (Clang towards 3.2) 2012-08-14 10:39:13 +02:00
headless
inc Revert the TOPBOTTOM border window type, this needs another approach. 2012-08-23 17:53:59 +02:00
ios/source
null
prj
qa/complex
source Revert the TOPBOTTOM border window type, this needs another approach. 2012-08-23 17:53:59 +02:00
test
unx Revert the TOPBOTTOM border window type, this needs another approach. 2012-08-23 17:53:59 +02:00
win/source Replace usage of rtl/memory.h in vcl with equivalent from string.h 2012-08-14 16:18:05 +02:00
workben
AllLangResTarget_vcl.mk
CustomTarget_afm_hash.mk
CustomTarget_kde4_moc.mk
CustomTarget_kde_moc.mk do not make Qt3 moc mix KDE3 and TDE slots 2012-08-20 17:16:06 +02:00
CustomTarget_tde_moc.mk do not make Qt3 moc mix KDE3 and TDE slots 2012-08-20 17:16:06 +02:00
Executable_kdefilepicker.mk
Executable_tdefilepicker.mk
Library_desktop_detector.mk
Library_vcl.mk add more runtime deps on resource files for unit-tests 2012-08-21 02:06:01 +02:00
Library_vclplug_gen.mk
Library_vclplug_gtk.mk
Library_vclplug_gtk3.mk
Library_vclplug_kde.mk
Library_vclplug_kde4.mk
Library_vclplug_svp.mk
Library_vclplug_tde.mk
Makefile
Module_vcl.mk
Package_inc.mk
README
StaticLibrary_headless.mk
StaticLibrary_vclmain.mk
vcl.android.component
vcl.headless.component
vcl.ios.component
vcl.macosx.component
vcl.unx.component
vcl.windows.component
WinResTarget_vcl.mk
Zip_osxres.mk

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.