1*b1cdbd2cSJim JagielskiAttribute VB_Name = "ApplicationSpecific" 2*b1cdbd2cSJim Jagielski'************************************************************************* 3*b1cdbd2cSJim Jagielski' 4*b1cdbd2cSJim Jagielski' Licensed to the Apache Software Foundation (ASF) under one 5*b1cdbd2cSJim Jagielski' or more contributor license agreements. See the NOTICE file 6*b1cdbd2cSJim Jagielski' distributed with this work for additional information 7*b1cdbd2cSJim Jagielski' regarding copyright ownership. The ASF licenses this file 8*b1cdbd2cSJim Jagielski' to you under the Apache License, Version 2.0 (the 9*b1cdbd2cSJim Jagielski' "License"); you may not use this file except in compliance 10*b1cdbd2cSJim Jagielski' with the License. You may obtain a copy of the License at 11*b1cdbd2cSJim Jagielski' 12*b1cdbd2cSJim Jagielski' http://www.apache.org/licenses/LICENSE-2.0 13*b1cdbd2cSJim Jagielski' 14*b1cdbd2cSJim Jagielski' Unless required by applicable law or agreed to in writing, 15*b1cdbd2cSJim Jagielski' software distributed under the License is distributed on an 16*b1cdbd2cSJim Jagielski' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 17*b1cdbd2cSJim Jagielski' KIND, either express or implied. See the License for the 18*b1cdbd2cSJim Jagielski' specific language governing permissions and limitations 19*b1cdbd2cSJim Jagielski' under the License. 20*b1cdbd2cSJim Jagielski' 21*b1cdbd2cSJim Jagielski'************************************************************************* 22*b1cdbd2cSJim JagielskiOption Explicit 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim Jagielski'** Issue Categories 25*b1cdbd2cSJim JagielskiPublic Const CID_INFORMATION_REFS = 0 26*b1cdbd2cSJim JagielskiPublic Const CID_CHANGES_AND_REVIEWING = 1 'no issue logged 27*b1cdbd2cSJim JagielskiPublic Const CID_CONTENT_AND_DOCUMENT_PROPERTIES = 2 28*b1cdbd2cSJim JagielskiPublic Const CID_CONTROLS = 3 'no issue logged 29*b1cdbd2cSJim JagielskiPublic Const CID_FIELDS = 4 30*b1cdbd2cSJim JagielskiPublic Const CID_FORMAT = 5 31*b1cdbd2cSJim JagielskiPublic Const CID_INDEX_AND_REFERENCES = 6 32*b1cdbd2cSJim JagielskiPublic Const CID_OBJECTS_GRAPHICS_FRAMES = 7 33*b1cdbd2cSJim JagielskiPublic Const CID_PORTABILITY = 8 34*b1cdbd2cSJim JagielskiPublic Const CID_TABLES = 9 35*b1cdbd2cSJim JagielskiPublic Const CID_VBA_MACROS = 10 36*b1cdbd2cSJim JagielskiPublic Const CID_WRITING_AIDS = 11 37*b1cdbd2cSJim JagielskiPublic Const CTOTAL_CATEGORIES = 11 38*b1cdbd2cSJim Jagielski 39*b1cdbd2cSJim Jagielski'** Word - XML Issue and SubIssue strings 40*b1cdbd2cSJim JagielskiPublic Const CSTR_ISSUE_CHANGES_AND_REVIEWING = "ChangesAndReviewing" 41*b1cdbd2cSJim JagielskiPublic Const CSTR_ISSUE_CONTROLS = "Controls" 42*b1cdbd2cSJim JagielskiPublic Const CSTR_ISSUE_FIELDS = "Fields" 43*b1cdbd2cSJim JagielskiPublic Const CSTR_ISSUE_INDEX_AND_REFERENCES = "IndexesAndReferences" 44*b1cdbd2cSJim JagielskiPublic Const CSTR_ISSUE_TABLES = "Tables" 45*b1cdbd2cSJim Jagielski 46*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_APPEARANCE = "Appearance" 47*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_BORDER_STYLES = "BorderStyles" 48*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_CELL_SPAN_PAGE = "CellSpanningPage" 49*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_COMMENT = "Comment" 50*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_CUSTOM_BULLET_LIST = "CustomBulletList" 51*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_FORM_FIELD = "FormField" 52*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_MAILMERGE_DATASOURCE = "MailMergeDatasource" 53*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_MAILMERGE_FIELD = "MailMergeField" 54*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_NESTED_TABLES = "NestedTables" 55*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_TABLE_OF_AUTHORITIES = "TableOfAuthorities" 56*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_TABLE_OF_AUTHORITIES_FIELD = "TableOfAuthoritiesField" 57*b1cdbd2cSJim JagielskiPublic Const CSTR_SUBISSUE_TABLE_OF_CONTENTS = "TableOfContents" 58*b1cdbd2cSJim Jagielski'** END Word - XML Issue and SubIssue strings 59*b1cdbd2cSJim Jagielski 60*b1cdbd2cSJim JagielskiPublic Const CAPPNAME_WORD = "Word" 61*b1cdbd2cSJim JagielskiPublic Const CAPPNAME_WORD_DOC = ".doc" 62*b1cdbd2cSJim JagielskiPublic Const CAPPNAME_WORD_DOT = ".dot" 63*b1cdbd2cSJim Jagielski 64*b1cdbd2cSJim JagielskiPublic Const CAPPNAME_EXCEL = "Excel" 65*b1cdbd2cSJim JagielskiPublic Const CAPPNAME_EXCEL_DOC = ".xls" 66*b1cdbd2cSJim JagielskiPublic Const CAPPNAME_EXCEL_DOT = ".xlt" 67*b1cdbd2cSJim Jagielski 68*b1cdbd2cSJim JagielskiPublic Const CAPPNAME_POWERPOINT = "PowerPoint" 69*b1cdbd2cSJim JagielskiPublic Const CAPPNAME_PP_DOC = ".ppt" 70*b1cdbd2cSJim JagielskiPublic Const CAPPNAME_PP_DOT = ".pot" 71*b1cdbd2cSJim Jagielski 72*b1cdbd2cSJim JagielskiPublic CAPP_DOCPROP_LOCATION As String 73*b1cdbd2cSJim Jagielski'Public Const CAPP_DOCPROP_LOCATION = RID_STR_COMMON_RESULTS_LOCATION_TYPE_WORKBOOK 74*b1cdbd2cSJim Jagielski'Public Const CAPP_DOCPROP_LOCATION = RID_STR_COMMON_RESULTS_LOCATION_TYPE_PRESENTATION 75*b1cdbd2cSJim Jagielski 76*b1cdbd2cSJim JagielskiPublic Const CAPP_XMLDOCPROP_LOCATION = "Document" 77*b1cdbd2cSJim Jagielski'Public Const CAPP_XMLDOCPROP_LOCATION = "Workbook" 78*b1cdbd2cSJim Jagielski'Public Const CAPP_XMLDOCPROP_LOCATION = "Presentation" 79*b1cdbd2cSJim Jagielski 80*b1cdbd2cSJim JagielskiPublic Const CTHIS_DOCUMENT = "ThisDocument" 81*b1cdbd2cSJim JagielskiPublic Const CTOPLEVEL_PROJECT = "Project" 82*b1cdbd2cSJim Jagielski 83*b1cdbd2cSJim JagielskiPublic Function getAppSpecificDocExt() As String 84*b1cdbd2cSJim Jagielski getAppSpecificDocExt = CAPPNAME_WORD_DOC 85*b1cdbd2cSJim JagielskiEnd Function 86*b1cdbd2cSJim JagielskiPublic Function getAppSpecificTemplateExt() As String 87*b1cdbd2cSJim Jagielski getAppSpecificTemplateExt = CAPPNAME_WORD_DOT 88*b1cdbd2cSJim JagielskiEnd Function 89*b1cdbd2cSJim JagielskiPublic Function getAppSpecificPath() As String 90*b1cdbd2cSJim Jagielski getAppSpecificPath = ActiveDocument.path 91*b1cdbd2cSJim JagielskiEnd Function 92*b1cdbd2cSJim JagielskiPublic Function getAppSpecificApplicationName() As String 93*b1cdbd2cSJim Jagielski getAppSpecificApplicationName = CAPPNAME_WORD 94*b1cdbd2cSJim JagielskiEnd Function 95*b1cdbd2cSJim Jagielski 96*b1cdbd2cSJim JagielskiPublic Function getAppSpecificCustomDocProperties(currDoc As Document) As DocumentProperties 97*b1cdbd2cSJim Jagielski Set getAppSpecificCustomDocProperties = currDoc.CustomDocumentProperties 98*b1cdbd2cSJim JagielskiEnd Function 99*b1cdbd2cSJim JagielskiPublic Function getAppSpecificCommentBuiltInDocProperty(currDoc As Document) As DocumentProperty 100*b1cdbd2cSJim Jagielski Set getAppSpecificCommentBuiltInDocProperty = currDoc.BuiltInDocumentProperties(wdPropertyComments) 101*b1cdbd2cSJim JagielskiEnd Function 102*b1cdbd2cSJim Jagielski 103*b1cdbd2cSJim JagielskiPublic Function getAppSpecificVBProject(currDoc As Document) As VBProject 104*b1cdbd2cSJim Jagielski Set getAppSpecificVBProject = currDoc.VBProject 105*b1cdbd2cSJim JagielskiEnd Function 106*b1cdbd2cSJim Jagielski 107*b1cdbd2cSJim JagielskiPublic Function getAppSpecificOLEClassType(aShape As Shape) As String 108*b1cdbd2cSJim Jagielski Dim objType As String 109*b1cdbd2cSJim Jagielski 110*b1cdbd2cSJim Jagielski If aShape.OLEFormat.ProgID = "" Then 111*b1cdbd2cSJim Jagielski objType = aShape.OLEFormat.ClassType 112*b1cdbd2cSJim Jagielski Else 113*b1cdbd2cSJim Jagielski objType = aShape.OLEFormat.ProgID 114*b1cdbd2cSJim Jagielski End If 115*b1cdbd2cSJim Jagielski 116*b1cdbd2cSJim Jagielski getAppSpecificOLEClassType = objType 117*b1cdbd2cSJim JagielskiEnd Function 118*b1cdbd2cSJim Jagielski 119*b1cdbd2cSJim JagielskiPublic Sub SetAppToMinimized() 120*b1cdbd2cSJim Jagielski Application.WindowState = wdWindowStateMinimize 121*b1cdbd2cSJim Jagielski Application.Visible = False 122*b1cdbd2cSJim JagielskiEnd Sub 123*b1cdbd2cSJim Jagielski 124*b1cdbd2cSJim JagielskiPublic Sub LocalizeResources() 125*b1cdbd2cSJim Jagielski Dim wrdStrings As StringDataManager 126*b1cdbd2cSJim Jagielski Set wrdStrings = New StringDataManager 127*b1cdbd2cSJim Jagielski 128*b1cdbd2cSJim Jagielski wrdStrings.InitStringData (GetResourceDataFileName(ThisDocument.path)) 129*b1cdbd2cSJim Jagielski LoadCommonStrings wrdStrings 130*b1cdbd2cSJim Jagielski LoadWordStrings wrdStrings 131*b1cdbd2cSJim Jagielski LoadResultsStrings wrdStrings 132*b1cdbd2cSJim Jagielski Set wrdStrings = Nothing 133*b1cdbd2cSJim Jagielski 134*b1cdbd2cSJim Jagielski 'SetWordDriverText 135*b1cdbd2cSJim JagielskiEnd Sub 136*b1cdbd2cSJim Jagielski 137*b1cdbd2cSJim Jagielski' Set the loaded string variable into the fields in the document 138*b1cdbd2cSJim JagielskiPrivate Sub SetWordDriverText() 139*b1cdbd2cSJim Jagielski On Error Resume Next 140*b1cdbd2cSJim Jagielski CAPP_DOCPROP_LOCATION = RID_STR_COMMON_RESULTS_LOCATION_TYPE_DOCUMENT 141*b1cdbd2cSJim Jagielski ThisDocument.FormFields.item("RID_STR_WDVR_SOANA").Result = RID_STR_WDVR_SOANA 142*b1cdbd2cSJim Jagielski ThisDocument.FormFields.item("RID_STR_WDVR_INTRO").Result = RID_STR_WDVR_INTRO 143*b1cdbd2cSJim Jagielski ThisDocument.FormFields.item("RID_STR_WDVR_TITLE").Result = RID_STR_WDVR_TITLE 144*b1cdbd2cSJim Jagielski ThisDocument.FormFields.item("RID_STR_WDVR_PURPO").Result = RID_STR_WDVR_PURPO 145*b1cdbd2cSJim Jagielski ThisDocument.FormFields.item("RID_STR_WDVR_PARA1").Result = RID_STR_WDVR_PARA1 146*b1cdbd2cSJim Jagielski ThisDocument.FormFields.item("RID_STR_WDVR_ISSUE").Result = RID_STR_WDVR_ISSUE 147*b1cdbd2cSJim Jagielski ThisDocument.FormFields.item("RID_STR_WDVR_PARA2").Result = RID_STR_WDVR_PARA2 148*b1cdbd2cSJim JagielskiEnd Sub 149*b1cdbd2cSJim Jagielski 150