diff options
author | Jean-Pierre Ledure <jp@ledure.be> | 2017-08-05 15:52:00 +0200 |
---|---|---|
committer | Jean-Pierre Ledure <jp@ledure.be> | 2017-08-05 15:52:00 +0200 |
commit | 39a6524625a3a682cf53128b5544cd7f2f75f3f1 (patch) | |
tree | fe1685a089a43e276d099ca24f70a89fb5a58c84 /wizards/source/access2base/Application.xba | |
parent | e371ec501db0c473bea7ef7325d9a9049f913b5e (diff) |
Access2Base - Dialog on event properties
Forms and dialogs events are stored differently.
New code manages correctly dialog events.
Additionally performance improvement in Control class:
the list of properties is buffered in a private variable
Change-Id: I9d3e2cf3853f8caa043fc4a84c67d323cea44ffe
Diffstat (limited to 'wizards/source/access2base/Application.xba')
-rw-r--r-- | wizards/source/access2base/Application.xba | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/wizards/source/access2base/Application.xba b/wizards/source/access2base/Application.xba index 2c38590136d8..41c9a1d42e4f 100644 --- a/wizards/source/access2base/Application.xba +++ b/wizards/source/access2base/Application.xba @@ -193,7 +193,7 @@ Const cstThisSub = "AllDialogs" Dim iMode As Integer, vDialogs() As Variant, i As Integer, j As Integer, iCount As Integer Dim oMacLibraries As Object, vAllDialogs As Variant, oLibrary As Object, vNames() As Variant, bFound As Boolean -Dim oLibDialog As Object, sLibrary As String, oDocLibraries As Object +Dim oLibDialog As Object, sLibrary As String, oDocLibraries As Object, bLocalStorage As Boolean Dim vLibraries() As Variant, vMacLibraries() As Variant, vDocLibraries() As Variant, oDocMacLib As Object Const cstCount = 0 Const cstByIndex = 1 @@ -209,7 +209,7 @@ Const cstSepar = "!" Set vAllDialogs = Nothing - Set oDocLibraries = ThisComponent.DialogLibraries + Set oDocLibraries = _A2B_.CurrentDocument.Document.DialogLibraries ' ThisComponent.DialogLibraries vDocLibraries = oDocLibraries.getElementNames() Set oMacLibraries = DialogLibraries vMacLibraries = oMacLibraries.getElementNames() @@ -236,11 +236,13 @@ Const cstSepar = "!" bFound = False If i <= UBound(vDocLibraries) Then sLibrary = vDocLibraries(i) + bLocalStorage = True Set oDocMacLib = oDocLibraries ' Sometimes library not loaded as should ?? If Not oDocMacLib.IsLibraryLoaded(sLibrary) Then oDocMacLib.loadLibrary(sLibrary) Else sLibrary = vMacLibraries(i - UBound(vDocLibraries) - 1) + bLocalStorage = False Set oDocMacLib = oMacLibraries End If If oDocMacLib.IsLibraryLoaded(sLibrary) Then @@ -280,9 +282,13 @@ Const cstSepar = "!" If iMode = cstByIndex Then Goto Trace_Error_Index Else Goto Trace_Not_Found End If Set vAllDialogs = New Dialog - vAllDialogs._Name = vDialogs(j) - vAllDialogs._Shortcut = "Dialogs!" & vDialogs(j) - Set vAllDialogs._Dialog = oLibDialog + With vAllDialogs + ._Name = vDialogs(j) + ._Shortcut = "Dialogs!" & vDialogs(j) + Set ._Dialog = oLibDialog + ._Library = sLibrary + ._Storage = Iif(bLocalStorage, "DOCUMENT", "GLOBAL") + End With End If Exit_Function: @@ -447,7 +453,7 @@ Const cstDot = "." Set vAllModules = Nothing - Set oDocLibraries = ThisComponent.BasicLibraries + Set oDocLibraries = _A2B_.CurrentDocument.Document.BasicLibraries ' ThisComponent.BasicLibraries vDocLibraries = oDocLibraries.getElementNames() If pbAllModules Then Set oMacLibraries = GlobalScope.BasicLibraries |