summaryrefslogtreecommitdiff
path: root/migrationanalysis/src/driver_docs/sources/DocumentAnalysis.cls
blob: b4681eeb0163ffaa1a43760367a16353e719c46f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
END
Attribute VB_Name = "DocumentAnalysis"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
'/*************************************************************************
' *
' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
' 
' Copyright 2000, 2010 Oracle and/or its affiliates.
'
' OpenOffice.org - a multi-platform office productivity suite
'
' This file is part of OpenOffice.org.
'
' OpenOffice.org is free software: you can redistribute it and/or modify
' it under the terms of the GNU Lesser General Public License version 3
' only, as published by the Free Software Foundation.
'
' OpenOffice.org is distributed in the hope that it will be useful,
' but WITHOUT ANY WARRANTY; without even the implied warranty of
' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
' GNU Lesser General Public License version 3 for more details
' (a copy is included in the LICENSE file that accompanied this code).
'
' You should have received a copy of the GNU Lesser General Public License
' version 3 along with OpenOffice.org.  If not, see
' <http://www.openoffice.org/license.html>
' for a copy of the LGPLv3 License.
'
' ************************************************************************/
Option Explicit

Const CMAX_NUM_ISSUETYPES = 100

Private mName As String
Private mApplication As String
Private mPageCount As Long
Private mCreated As Date
Private mModified As Date
Private mAccessed As Date
Private mPrinted As Date
Private mSavedBy As String
Private mRevision As Long
Private mTemplate As String
Private mHasMacros As Boolean

Private mDocIssuesCosts As Long
Private mPreparableIssuesCosts As Long
Private mMacroCosts As Long

Private mReferences As Collection
Private mIssues As Collection
Private mIssuesCountArray(1 To CMAX_NUM_ISSUETYPES) As Long
Private mTotalIssueTypes As Long
Private mMinorIssuesCount As Long
Private mMacroIssuesCount As Long
Private mPreparableIssuesCount As Long

Private mDocOverallIssueClass As EnumDocOverallIssueClass

Private mMacroTotalNumLines As Long
Private mMacroNumUserForms As Long
Private mMacroNumUserFormControls As Long
Private mMacroNumUserFormControlTypes As Long
Private mMacroNumOLEControls As Long
Private mMacroNumFieldsUsingMacros As Long
Private mMacroNumExternalRefs As Long
Private mMacroOverallClass As EnumDocOverallMacroClass
Private mbBelowIssuesLimit As Boolean

Public Property Get BelowIssuesLimit() As Boolean
    BelowIssuesLimit = mbBelowIssuesLimit
End Property
Public Property Let BelowIssuesLimit(vNewValue As Boolean)
    mbBelowIssuesLimit = vNewValue
End Property

Public Property Get MacroOverallClass() As EnumDocOverallMacroClass
    MacroOverallClass = mMacroOverallClass
End Property
Public Property Let MacroOverallClass(vNewValue As EnumDocOverallMacroClass)
    mMacroOverallClass = vNewValue
End Property

Public Property Get MacroNumExternalRefs() As Long
    MacroNumExternalRefs = mMacroNumExternalRefs
End Property
Public Property Let MacroNumExternalRefs(vNewValue As Long)
    mMacroNumExternalRefs = vNewValue
End Property

Public Property Get MacroNumFieldsUsingMacros() As Long
    MacroNumFieldsUsingMacros = mMacroNumFieldsUsingMacros
End Property
Public Property Let MacroNumFieldsUsingMacros(vNewValue As Long)
    mMacroNumFieldsUsingMacros = vNewValue
End Property

Public Property Get MacroNumOLEControls() As Long
    MacroNumOLEControls = mMacroNumOLEControls
End Property
Public Property Let MacroNumOLEControls(vNewValue As Long)
    mMacroNumOLEControls = vNewValue
End Property

Public Property Get MacroNumUserFormControlTypes() As Long
    MacroNumUserFormControlTypes = mMacroNumUserFormControlTypes
End Property
Public Property Let MacroNumUserFormControlTypes(vNewValue As Long)
    mMacroNumUserFormControlTypes = vNewValue
End Property

Public Property Get MacroNumUserFormControls() As Long
    MacroNumUserFormControls = mMacroNumUserFormControls
End Property
Public Property Let MacroNumUserFormControls(vNewValue As Long)
    mMacroNumUserFormControls = vNewValue
End Property

Public Property Get MacroNumUserForms() As Long
    MacroNumUserForms = mMacroNumUserForms
End Property
Public Property Let MacroNumUserForms(vNewValue As Long)
    mMacroNumUserForms = vNewValue
End Property

Public Property Get MacroTotalNumLines() As Long
    MacroTotalNumLines = mMacroTotalNumLines
End Property
Public Property Let MacroTotalNumLines(vNewValue As Long)
    mMacroTotalNumLines = vNewValue
End Property

Public Property Get MacroCosts() As Long
    MacroCosts = mMacroCosts
End Property
Public Property Let MacroCosts(vNewValue As Long)
    mMacroCosts = vNewValue
End Property

Public Property Get DocIssuesCosts() As Long
    DocIssuesCosts = mDocIssuesCosts
End Property
Public Property Let DocIssuesCosts(vNewValue As Long)
    mDocIssuesCosts = vNewValue
End Property

Public Property Get PreparableIssuesCosts() As Long
    PreparableIssuesCosts = mPreparableIssuesCosts
End Property
Public Property Let PreparableIssuesCosts(vNewValue As Long)
    mPreparableIssuesCosts = vNewValue
End Property

Public Property Get DocOverallIssueClass() As EnumDocOverallIssueClass
    DocOverallIssueClass = mDocOverallIssueClass
End Property

Public Property Let DocOverallIssueClass(ByVal vNewValue As EnumDocOverallIssueClass)
    mDocOverallIssueClass = vNewValue
End Property

Public Property Get TotalIssueTypes() As Long
    TotalIssueTypes = mTotalIssueTypes
End Property

Public Property Let TotalIssueTypes(ByVal vNewValue As Long)
    mTotalIssueTypes = vNewValue
End Property
Public Property Get name() As String
    name = mName
End Property

Public Property Let name(ByVal vNewValue As String)
    mName = vNewValue
End Property

Public Property Get Application() As String
    Application = mApplication
End Property

Public Property Let Application(ByVal vNewValue As String)
    mApplication = vNewValue
End Property
Public Property Get PageCount() As Long
    PageCount = mPageCount
End Property

Public Property Let PageCount(ByVal vNewValue As Long)
    mPageCount = vNewValue
End Property

Public Property Get Created() As Date
    Created = mCreated
End Property

Public Property Let Created(ByVal vNewValue As Date)
    mCreated = vNewValue
End Property

Public Property Get Modified() As Date
    Modified = mModified
End Property

Public Property Let Modified(ByVal vNewValue As Date)
    mModified = vNewValue
End Property

Public Property Get Accessed() As Date
    Accessed = mAccessed
End Property

Public Property Let Accessed(ByVal vNewValue As Date)
    mAccessed = vNewValue
End Property
Public Property Get Printed() As Date
    Printed = mPrinted
End Property

Public Property Let Printed(ByVal vNewValue As Date)
    mPrinted = vNewValue
End Property

Public Property Get SavedBy() As String
    SavedBy = mSavedBy
End Property

Public Property Let SavedBy(ByVal vNewValue As String)
    mSavedBy = vNewValue
End Property

Public Property Get Revision() As Long
    Revision = mRevision
End Property

Public Property Let Revision(ByVal vNewValue As Long)
    mRevision = vNewValue
End Property

Public Property Get Template() As String
    Template = mTemplate
End Property

Public Property Let Template(ByVal vNewValue As String)
    mTemplate = vNewValue
End Property
Public Property Get HasMacros() As Boolean
    HasMacros = mHasMacros
End Property

Public Property Let HasMacros(ByVal vNewValue As Boolean)
    mHasMacros = vNewValue
End Property

Public Property Get References() As Collection
    Set References = mReferences
End Property

Public Property Let References(ByVal vNewValue As Collection)
    Set mReferences = vNewValue
End Property

Public Property Get Issues() As Collection
    Set Issues = mIssues
End Property

Public Property Let Issues(ByVal vNewValue As Collection)
    Set mIssues = vNewValue
End Property

Public Property Get IssuesCountArray(ByVal index As Integer) As Long
    If index >= LBound(mIssuesCountArray) And index <= UBound(mIssuesCountArray) Then
        IssuesCountArray = mIssuesCountArray(index)
    Else
        IssuesCountArray = Null
    End If
End Property

Public Property Let IssuesCountArray(ByVal index As Integer, ByVal vNewValue As Long)
    If index >= LBound(mIssuesCountArray) And index <= UBound(mIssuesCountArray) Then
        mIssuesCountArray(index) = vNewValue
    End If
End Property

Public Property Get IssuesCount() As Long
    IssuesCount = mIssues.count
End Property

Public Property Get ComplexIssuesCount() As Long
    Dim complexCount As Long
    complexCount = mIssues.count - mMinorIssuesCount - mMacroIssuesCount
    ComplexIssuesCount = IIf(complexCount > 0, complexCount, 0)
End Property

Public Property Get MacroIssuesCount() As Long
    MacroIssuesCount = mMacroIssuesCount
End Property

Public Property Let MacroIssuesCount(ByVal vNewValue As Long)
    mMacroIssuesCount = vNewValue
End Property

Public Property Get MinorIssuesCount() As Long
    MinorIssuesCount = mMinorIssuesCount
End Property

Public Property Let MinorIssuesCount(ByVal vNewValue As Long)
    mMinorIssuesCount = vNewValue
End Property

Public Property Get PreparableIssuesCount() As Long
    PreparableIssuesCount = mPreparableIssuesCount
End Property

Public Property Let PreparableIssuesCount(ByVal vNewValue As Long)
    mPreparableIssuesCount = vNewValue
End Property

Private Sub Class_Initialize()
    mApplication = ""
    mTotalIssueTypes = 0
    mHasMacros = False
    Set mIssues = New Collection
    Set mReferences = New Collection
    mPreparableIssuesCount = 0
    mMacroOverallClass = enNone
    mDocOverallIssueClass = enNone
    mDocIssuesCosts = 0
    mPreparableIssuesCosts = 0
    mMacroCosts = 0
    mbBelowIssuesLimit = False
End Sub
Private Sub Class_Terminate()
    Set mIssues = Nothing
    Set mReferences = Nothing
End Sub