summaryrefslogtreecommitdiff
path: root/toolkit/doc/layout/vcl.txt
blob: dbafbc5b148d33ab0e4cd1d41e64ad8de9193a46 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
* How do very basic vcl widgets get peers:

    + toolkit/awt/ VCLXToolkit::ImplCreateWindow
	+ calls GetComponentInterface (sal_True) - if no comp. iface.

    + vcl's Window:
    virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > GetComponentInterface( BOOL bCreate = TRUE );

    + vcl/inc/vcl/unowrap.hxx:
	// Window
	virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer> GetWindowInterface( Window* pWindow, sal_Bool bCreate ) = 0;
	virtual void				SetWindowInterface( Window* pWindow, ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > xIFace ) = 0;

    + from svapp.cxx Application::SetUnoWrapper
	-> toolkit/awt 'ToolkitWorkerFunction' ( extern C / dlopen linkage )

    + from toolkit/source/helper/unowrapper.cxx:
	-> CreateXWindow -> 'return new VCLXWindow' 
	    ** FIXME: we need love in here too:
		+ METRICBOX eg.