ooo-build r12635 - trunk/doc
- From: noelpwer svn gnome org
- To: svn-commits-list gnome org
- Subject: ooo-build r12635 - trunk/doc
- Date: Thu, 22 May 2008 17:14:24 +0000 (UTC)
Author: noelpwer
Date: Thu May 22 17:14:24 2008
New Revision: 12635
URL: http://svn.gnome.org/viewvc/ooo-build?rev=12635&view=rev
Log:
some more detail
Modified:
trunk/doc/BasicLibraryModuleNotes.txt
Modified: trunk/doc/BasicLibraryModuleNotes.txt
==============================================================================
--- trunk/doc/BasicLibraryModuleNotes.txt (original)
+++ trunk/doc/BasicLibraryModuleNotes.txt Thu May 22 17:14:24 2008
@@ -13,34 +13,25 @@
o SfxScriptLibraryContainer - is the Library container ( it's the "com.sun.star.script.ScriptLibraryContainer" service
XInitialization
- ^
|
XStorageBasedLibraryContainer
- ^
|
XLibraryContainerPassword
- ^
|
XLibraryContainerExport
- ^
|
XContainer
- ^
|
XServiceInfo
- ^
|
LibraryContainerHelper ::utl::OEventListenerAdapter
- ^ ^
- \ /
- \ /
- \ /
- \/
+ | |
+ -----------------------------
+ |
SfxLibraryContainer OldBasicPassword
- ^ ^
- \ /
- \ /
- \/
+ | |
+ -------------------
+ |
SfxScriptLibraryContainer
basic/source/uno/namecont.cxx
@@ -104,14 +95,70 @@
What are all these other classes for e.g. BasicManagerImpl, BasMgrContainerListenerImpl, BasicLibInfo, BasicLibs, BasicManager
+BasicManagerImpl ( basmgr.cxx )
+ - internal structure
+struct LibraryContainerInfo
+{
+ ::com::sun::star::uno::Reference< com::sun::star::script::XPersistentLibraryContainer > mxScriptCont;
+ ::com::sun::star::uno::Reference< com::sun::star::script::XPersistentLibraryContainer > mxDialogCont;
+ OldBasicPassword* mpOldBasicPassword;
+};
+
+struct BasicManagerImpl
+{
+ LibraryContainerInfo maContainerInfo;
+
+ // Save stream data
+ SvMemoryStream* mpManagerStream;
+ SvMemoryStream** mppLibStreams;
+ sal_Int32 mnLibStreamCount;
+ sal_Bool mbModifiedByLibraryContainer;
+ sal_Bool mbError;
+};
+
+BasicLibInfo - class storing the following info
+
+ StarBASICRef xLib; - the library
+ String aLibName; - the name
+ String aStorageName; - ?
+ String aRelStorageName; - ?
+ String aPassword; - self explanitory
+ BOOL bDoLoad; - preload?
+ BOOL bReference; - link?
+ BOOL bPasswordVerified; -
+ BOOL bFoundInPath; - ?
+ Reference< XLibraryContainer > mxScriptCont; - uno library storage
+
+BasicLibs derived for ( list of library BasicLibInfo ) - with aBasicLibPath memeber. e.g. a list of BasicLibInfo associated with a path.
+
+The BasicManager holds instance(s) of the BasicManagerImp & BasicLibs classes
+
+so, in the case of a BasicManager created for the document
+ a) SfxObjectShell::InitBasicManager_Impl calls basic::BasicManagerRepository::getDocumentBasicManager( xModel ) which for the initial call actually creates the basic manager ( passing in the storage and pAppBasic )
+**note** pAppBasic is actually a pointer to the StdLibrary of application basic
+ b) BasicManager::BasicManger called
+ c) Init() is called, simply just creates instances of BasicLibs and BasicManagerImpl
+ d) ImpCreateStdLib( pParentFromStdLib ) is called to create the standard library. Basically its created, populated and added to the pLibs instance
+ e) after basic::BasicManagerRepository::getDocumentBasicManager( xModel ) creates the basicmanager it tries to bind the library containers ( the uno ones ) if they exist by calling BasicManager::SetLibraryContainerInfo(...)
+**Note** SetLibraryContainerInfo also creates the listeners etc. to get notified of any changes via the api
+
Excel/Import & Basic
=====================
-svx/source/msfilter/svxmsbas.cxx ( etc. etc. ) - I might have some sketchy notes for this somewhere ( perhaps out of date though )
+The basic stack is as follows
+
+ SfxObjectShell::DoLoad
+ ScDocShell::ConvertFrom sc/source/ui/docshell/docsh.cxx
+* SvxImportMSVBasic::ImportCode_Impl svx/source/msfilter/svxmsbas.cxx
+ SvxImportMSVBasic::Import
+ ImportExcel8::ReadBasic sc/source/filter/excel/excimp8.cxx:310
+ ImportExcel8::Read sc/source/filter/excel/read.cxx:998
+ ScImportExcel sc/source/filter/excel/excel.cxx:193
+[*] import of dialog is initialted from SvxImportMSVBasic::ImportForms_Impl
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]