1*b1cdbd2cSJim Jagielski<?xml version="1.0" encoding="UTF-8"?> 2*b1cdbd2cSJim Jagielski<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3*b1cdbd2cSJim Jagielski<!--*********************************************************** 4*b1cdbd2cSJim Jagielski * 5*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 6*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 7*b1cdbd2cSJim Jagielski * distributed with this work for additional information 8*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 9*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 10*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 11*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 14*b1cdbd2cSJim Jagielski * 15*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 16*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 17*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 18*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 19*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 20*b1cdbd2cSJim Jagielski * under the License. 21*b1cdbd2cSJim Jagielski * 22*b1cdbd2cSJim Jagielski ***********************************************************--> 23*b1cdbd2cSJim Jagielski<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Embed" script:language="StarBasic">' *** MODULE EMBED *** 24*b1cdbd2cSJim Jagielski 25*b1cdbd2cSJim JagielskiDim oDialog AS Object 26*b1cdbd2cSJim JagielskiDim oBrowseDialog As Object 27*b1cdbd2cSJim JagielskiDim document AS Object 28*b1cdbd2cSJim JagielskiDim arParas(0) As String 29*b1cdbd2cSJim JagielskiDim arSecs(0) As String 30*b1cdbd2cSJim JagielskiDim arVars(0) As String 31*b1cdbd2cSJim Jagielski 32*b1cdbd2cSJim Jagielski'======================================================= 33*b1cdbd2cSJim Jagielski' Main 34*b1cdbd2cSJim Jagielski'------------------------------------------------------- 35*b1cdbd2cSJim Jagielski' Embeds a variable or a section 36*b1cdbd2cSJim Jagielski'======================================================= 37*b1cdbd2cSJim JagielskiSub Main(optional bCR As Boolean) 38*b1cdbd2cSJim Jagielski 39*b1cdbd2cSJim Jagielski If not IsHelpFile Then 40*b1cdbd2cSJim Jagielski msgbox(strErr_NoHelpFile) 41*b1cdbd2cSJim Jagielski Exit Sub 42*b1cdbd2cSJim Jagielski End If 43*b1cdbd2cSJim Jagielski 44*b1cdbd2cSJim Jagielski GlobalScope.BasicLibraries.loadLibrary("Tools") 45*b1cdbd2cSJim Jagielski 46*b1cdbd2cSJim Jagielski document = StarDesktop.CurrentComponent 47*b1cdbd2cSJim Jagielski 48*b1cdbd2cSJim Jagielski BasicLibraries.LoadLibrary("HelpAuthoring") 49*b1cdbd2cSJim Jagielski oDialog = LoadDialog("HelpAuthoring", "dlgEmbed") 50*b1cdbd2cSJim Jagielski oDialogModel = oDialog.Model 51*b1cdbd2cSJim Jagielski 52*b1cdbd2cSJim Jagielski oTxtFilePath = oDialog.GetControl("txtFilePath") ' path to file, rel to Docroot 53*b1cdbd2cSJim Jagielski oTxtID = oDialog.GetControl("txtID") ' anchor 54*b1cdbd2cSJim Jagielski oTxtHidFName = oDialog.GetControl("txtHidFName") ' pure filename 55*b1cdbd2cSJim Jagielski oOpVariable = oDialog.GetControl("opVariable") 56*b1cdbd2cSJim Jagielski oOpSection = oDialog.GetControl("opSection") 57*b1cdbd2cSJim Jagielski 58*b1cdbd2cSJim Jagielski DocRoot = ReadConfig("HelpPrefix") 59*b1cdbd2cSJim Jagielski EmbedFolder = ReadConfig("LastEmbedDir") 60*b1cdbd2cSJim Jagielski EmbedFile = ReadConfig("LastEmbedFile") 61*b1cdbd2cSJim Jagielski EmbedID = ReadConfig("LastEmbedAnchor") 62*b1cdbd2cSJim Jagielski EmbedType = ReadConfig("LastEmbedType") 63*b1cdbd2cSJim Jagielski If EmbedType = "Variable" Then 64*b1cdbd2cSJim Jagielski oOpVariable.State = TRUE 65*b1cdbd2cSJim Jagielski Else 66*b1cdbd2cSJim Jagielski oOpVariable.State = FALSE 67*b1cdbd2cSJim Jagielski End If 68*b1cdbd2cSJim Jagielski SetLabel 69*b1cdbd2cSJim Jagielski 70*b1cdbd2cSJim Jagielski If IsSubDir(EmbedFolder,DocRoot) Then 71*b1cdbd2cSJim Jagielski RelDir = Right(EmbedFolder,Len(EmbedFolder)-Len(DocRoot)) 72*b1cdbd2cSJim Jagielski If Dir(DocRoot+RelDir+EmbedFile) > "" Then 73*b1cdbd2cSJim Jagielski oTxtFilePath.Text = RelDir+EmbedFile 74*b1cdbd2cSJim Jagielski oTxtHidFName.Text = DocRoot+RelDir+EmbedFile 75*b1cdbd2cSJim Jagielski oTxtID.Text = EmbedID 76*b1cdbd2cSJim Jagielski End If 77*b1cdbd2cSJim Jagielski End If 78*b1cdbd2cSJim Jagielski 79*b1cdbd2cSJim Jagielski 80*b1cdbd2cSJim Jagielski GoForIt = 1 81*b1cdbd2cSJim Jagielski 82*b1cdbd2cSJim Jagielski If (oDialog.Execute() = 1 AND oTxtFilePath.Text <> "") Then 83*b1cdbd2cSJim Jagielski' msgbox (oTxtFilePath.Text) 84*b1cdbd2cSJim Jagielski 85*b1cdbd2cSJim Jagielski If oTxtID.Text = "" Then 86*b1cdbd2cSJim Jagielski msgbox "You did not specify a section or variable to embed.",256 87*b1cdbd2cSJim Jagielski Else 88*b1cdbd2cSJim Jagielski WriteConfig("LastEmbedAnchor",oTxtID.Text) 89*b1cdbd2cSJim Jagielski If oOpVariable.State Then 90*b1cdbd2cSJim Jagielski txtEmbed = oTxtFilePath.Text + "#" + oTxtID.Text 91*b1cdbd2cSJim Jagielski InsertTag("EMBEDVAR","<EMBEDVAR var=""" + txtEmbed + """>","hlp_aux_tag") 92*b1cdbd2cSJim Jagielski SetCharStyle("Default") 93*b1cdbd2cSJim Jagielski WriteConfig("LastEmbedType","Variable") 94*b1cdbd2cSJim Jagielski Else 95*b1cdbd2cSJim Jagielski txtEmbed = oTxtFilePath.Text + "#" + oTxtID.Text 96*b1cdbd2cSJim Jagielski CR 97*b1cdbd2cSJim Jagielski SetParaStyle("hlp_aux_embed") 98*b1cdbd2cSJim Jagielski SetCharStyle("hlp_aux_tag") 99*b1cdbd2cSJim Jagielski InsertTag("EMBED","<EMBED href=""" + txtEmbed + """>","hlp_aux_tag") 100*b1cdbd2cSJim Jagielski CR 101*b1cdbd2cSJim Jagielski WriteConfig("LastEmbedType","Section") 102*b1cdbd2cSJim Jagielski End If 103*b1cdbd2cSJim Jagielski End If 104*b1cdbd2cSJim Jagielski End If 105*b1cdbd2cSJim Jagielski oDialog.dispose 106*b1cdbd2cSJim JagielskiEnd Sub 107*b1cdbd2cSJim Jagielski 108*b1cdbd2cSJim Jagielski'======================================================= 109*b1cdbd2cSJim Jagielski' SetLabel 110*b1cdbd2cSJim Jagielski'------------------------------------------------------- 111*b1cdbd2cSJim Jagielski' Changes the text field label in the dialog 112*b1cdbd2cSJim Jagielski'======================================================= 113*b1cdbd2cSJim JagielskiSub SetLabel 114*b1cdbd2cSJim Jagielski olblID = oDialog.GetControl("lblID") 115*b1cdbd2cSJim Jagielski oOpVariable = oDialog.GetControl("opVariable") 116*b1cdbd2cSJim Jagielski If oOpVariable.getState Then 117*b1cdbd2cSJim Jagielski olblID.setText("Variable ID") 118*b1cdbd2cSJim Jagielski oDialog.Title = "Embed Variable" 119*b1cdbd2cSJim Jagielski Else 120*b1cdbd2cSJim Jagielski olblID.setText("Section or Paragraph ID") 121*b1cdbd2cSJim Jagielski oDialog.Title = "Embed Section" 122*b1cdbd2cSJim Jagielski End If 123*b1cdbd2cSJim JagielskiEnd Sub 124*b1cdbd2cSJim Jagielski 125*b1cdbd2cSJim JagielskiSub GetFile 126*b1cdbd2cSJim JagielskiDim ListAny(0) as Long 127*b1cdbd2cSJim Jagielski ListAny(0) = com.sun.star.ui.dialogs.TemplateDescription.FILEOPEN_SIMPLE 128*b1cdbd2cSJim Jagielski oFileDialog = CreateUnoService("com.sun.star.ui.dialogs.FilePicker") 129*b1cdbd2cSJim Jagielski oFileDialog.Initialize(ListAny()) 130*b1cdbd2cSJim Jagielski 131*b1cdbd2cSJim Jagielski DocRoot = ReadConfig("HelpPrefix") 132*b1cdbd2cSJim Jagielski sLastEmbedDir = ReadConfig("LastEmbedDir") 133*b1cdbd2cSJim Jagielski sLastEmbedFile = ReadConfig("LastEmbedFile") 134*b1cdbd2cSJim Jagielski 135*b1cdbd2cSJim Jagielski If IsSubDir(sLastEmbedDir,DocRoot) Then 136*b1cdbd2cSJim Jagielski oFileDialog.setDisplayDirectory(sLastEmbedDir) 137*b1cdbd2cSJim Jagielski If sLastEmbedFile <> "" AND Dir(sLastEmbedDir+sLastEmbedFile) > "" Then 138*b1cdbd2cSJim Jagielski oFileDialog.setDefaultName(sLastEmbedFile) 139*b1cdbd2cSJim Jagielski End If 140*b1cdbd2cSJim Jagielski Else 141*b1cdbd2cSJim Jagielski oFileDialog.setDisplayDirectory(DocRoot) 142*b1cdbd2cSJim Jagielski End If 143*b1cdbd2cSJim Jagielski 144*b1cdbd2cSJim Jagielski oMasterKey = GetRegistryKeyContent("org.openoffice.TypeDetection.Types/") 145*b1cdbd2cSJim Jagielski oTypes() = oMasterKey.Types 146*b1cdbd2cSJim Jagielski oFileDialog.AppendFilter("Help", "*.xhp") 147*b1cdbd2cSJim Jagielski 148*b1cdbd2cSJim Jagielski oFileDialog.SetTitle("Embed From Help File") 149*b1cdbd2cSJim Jagielski iAccept = oFileDialog.Execute() 150*b1cdbd2cSJim Jagielski If iAccept = 1 Then 151*b1cdbd2cSJim Jagielski sPath = oFileDialog.Files(0) 152*b1cdbd2cSJim Jagielski sCurDir = oFileDialog.getDisplayDirectory +"/" 153*b1cdbd2cSJim Jagielski WriteConfig("LastEmbedDir",sCurDir) 154*b1cdbd2cSJim Jagielski LastFile = Right(sPath, Len(sPath) - Len(sCurDir)) 155*b1cdbd2cSJim Jagielski WriteConfig("LastEmbedFile",LastFile) 156*b1cdbd2cSJim Jagielski 157*b1cdbd2cSJim Jagielski oTxtPath = oDialog.GetControl("txtFilePath") 158*b1cdbd2cSJim Jagielski oTxtHidFName = oDialog.GetControl("txtHidFName") 159*b1cdbd2cSJim Jagielski oTxtHidFName.Text = sPath 160*b1cdbd2cSJim Jagielski 161*b1cdbd2cSJim Jagielski If IsSubDir(sCurDir,DocRoot) Then 162*b1cdbd2cSJim Jagielski oTxtPath.Text = GetRelPath(sPath, DocRoot) 163*b1cdbd2cSJim Jagielski Else 164*b1cdbd2cSJim Jagielski oTxtPath.Text = sPath 165*b1cdbd2cSJim Jagielski msgbox("File is outside of your Document Root",48,"Warning") 166*b1cdbd2cSJim Jagielski End If 167*b1cdbd2cSJim Jagielski 168*b1cdbd2cSJim Jagielski oButBrowseIDs = oDialog.GetControl("butBrowseIDs") 169*b1cdbd2cSJim Jagielski oButBrowseIDs.Enable = true 170*b1cdbd2cSJim Jagielski End If 171*b1cdbd2cSJim Jagielski 172*b1cdbd2cSJim JagielskiEnd Sub 173*b1cdbd2cSJim Jagielski 174*b1cdbd2cSJim JagielskiSub UpdateFileName 175*b1cdbd2cSJim Jagielski oTxtPath = oDialog.GetControl("txtFilePath") 176*b1cdbd2cSJim Jagielski ShortFName = oTxtPath.Text 177*b1cdbd2cSJim Jagielski 178*b1cdbd2cSJim Jagielski If ShortFName > "" Then 179*b1cdbd2cSJim Jagielski 180*b1cdbd2cSJim Jagielski oTxtHidFName = oDialog.GetControl("txtHidFName") 181*b1cdbd2cSJim Jagielski FName = oTxtHidFName.Text 182*b1cdbd2cSJim Jagielski 183*b1cdbd2cSJim Jagielski If Right(FName, Len(ShortFName)) <> ShortFName Then 184*b1cdbd2cSJim Jagielski ' oTxtHidFName.Text = MakeAbsPath(ShortFName) 185*b1cdbd2cSJim Jagielski oTxtHidFName.Text = ShortFName 186*b1cdbd2cSJim Jagielski End If 187*b1cdbd2cSJim Jagielski 188*b1cdbd2cSJim Jagielski oButBrowseIDs = oDialog.GetControl("butBrowseIDs") 189*b1cdbd2cSJim Jagielski If not(FileExists(oTxtHidFName.Text)) Then 190*b1cdbd2cSJim Jagielski msgbox oTxtHidFName.Text+" cannot be found.",48,"D'oh!" 191*b1cdbd2cSJim Jagielski oButBrowseIDs.Enable = false 192*b1cdbd2cSJim Jagielski Else 193*b1cdbd2cSJim Jagielski oButBrowseIDs.Enable = true 194*b1cdbd2cSJim Jagielski End If 195*b1cdbd2cSJim Jagielski End If 196*b1cdbd2cSJim JagielskiEnd Sub 197*b1cdbd2cSJim Jagielski 198*b1cdbd2cSJim JagielskiSub BrowseEmbed 199*b1cdbd2cSJim Jagielski BasicLibraries.LoadLibrary("HelpAuthoring") 200*b1cdbd2cSJim Jagielski oBrowseDialog = LoadDialog("HelpAuthoring", "dlg_BrowseEmbed") 201*b1cdbd2cSJim Jagielski oOpVariable = oDialog.GetControl("opVariable") 202*b1cdbd2cSJim Jagielski oTxtPath = oDialog.GetControl("txtFilePath") 203*b1cdbd2cSJim Jagielski oTxtHidFName = oDialog.GetControl("txtHidFName") 204*b1cdbd2cSJim Jagielski filename = oTxtHidFName.Text 205*b1cdbd2cSJim Jagielski 206*b1cdbd2cSJim Jagielski ReDim arParas(0) 207*b1cdbd2cSJim Jagielski ReDim arVars(0) 208*b1cdbd2cSJim Jagielski ReDim arSecs(0) 209*b1cdbd2cSJim Jagielski 210*b1cdbd2cSJim Jagielski' msgbox(filename) 211*b1cdbd2cSJim Jagielski 212*b1cdbd2cSJim Jagielski iNumber = Freefile 213*b1cdbd2cSJim Jagielski If FileExists(filename) Then 214*b1cdbd2cSJim Jagielski Dim arLines(0) As String 215*b1cdbd2cSJim Jagielski Open filename For Input As iNumber 216*b1cdbd2cSJim Jagielski Do While (not eof(iNumber)) 217*b1cdbd2cSJim Jagielski Line Input #iNumber, sLine 218*b1cdbd2cSJim Jagielski sDim = ubound(arLines())+1 219*b1cdbd2cSJim Jagielski ReDim Preserve arLines(sDim) 220*b1cdbd2cSJim Jagielski arLines(sDim) = sLine 221*b1cdbd2cSJim Jagielski Loop 222*b1cdbd2cSJim Jagielski Close #iNumber 223*b1cdbd2cSJim Jagielski sContent = join(arLines()," ") 224*b1cdbd2cSJim Jagielski 225*b1cdbd2cSJim Jagielski arTmp() = split(sContent,"<paragraph") 226*b1cdbd2cSJim Jagielski For n=1 to ubound(arTmp()) 227*b1cdbd2cSJim Jagielski If arTmp(n) <> "" Then 228*b1cdbd2cSJim Jagielski arTmp(n) = Right(arTmp(n),Len(arTmp(n))-Instr(arTmp(n),"id=")-3) 229*b1cdbd2cSJim Jagielski sId = Left(arTmp(n),Instr(arTmp(n),"""")-1) 230*b1cdbd2cSJim Jagielski arTmp(n) = Right(arTmp(n),Len(arTmp(n))-Instr(arTmp(n),">")) 231*b1cdbd2cSJim Jagielski arTmp(n) = Left(arTmp(n),Instr(arTmp(n),"</paragraph>")-1) 232*b1cdbd2cSJim Jagielski If Len(arTmp(n) > 100) Then 233*b1cdbd2cSJim Jagielski arTmp(n) = Left(arTmp(n),100)+"..." 234*b1cdbd2cSJim Jagielski End If 235*b1cdbd2cSJim Jagielski sDim = ubound(arParas()) 236*b1cdbd2cSJim Jagielski arParas(sDim) = sId+": "+arTmp(n) 237*b1cdbd2cSJim Jagielski sDim = ubound(arParas())+1 238*b1cdbd2cSJim Jagielski ReDim Preserve arParas(sDim) 239*b1cdbd2cSJim Jagielski End If 240*b1cdbd2cSJim Jagielski Next n 241*b1cdbd2cSJim Jagielski 242*b1cdbd2cSJim Jagielski arTmp() = split(sContent,"<section") 243*b1cdbd2cSJim Jagielski For n=1 to ubound(arTmp()) 244*b1cdbd2cSJim Jagielski If arTmp(n) <> "" Then 245*b1cdbd2cSJim Jagielski arTmp(n) = Right(arTmp(n),Len(arTmp(n))-Instr(arTmp(n),"id=")-3) 246*b1cdbd2cSJim Jagielski sId = Left(arTmp(n),Instr(arTmp(n),"""")-1) 247*b1cdbd2cSJim Jagielski arTmp(n) = Right(arTmp(n),Len(arTmp(n))-Instr(arTmp(n),">")) 248*b1cdbd2cSJim Jagielski If Instr(arTmp(n),"</section>")>0 Then 249*b1cdbd2cSJim Jagielski arTmp(n) = Left(arTmp(n),Instr(arTmp(n),"</section>")-1) 250*b1cdbd2cSJim Jagielski End If 251*b1cdbd2cSJim Jagielski If Len(arTmp(n) > 100) Then 252*b1cdbd2cSJim Jagielski arTmp(n) = Left(arTmp(n),100)+"..." 253*b1cdbd2cSJim Jagielski End If 254*b1cdbd2cSJim Jagielski sDim = ubound(arSecs()) 255*b1cdbd2cSJim Jagielski arSecs(sDim) = sId+": "+arTmp(n) 256*b1cdbd2cSJim Jagielski sDim = ubound(arSecs())+1 257*b1cdbd2cSJim Jagielski ReDim Preserve arSecs(sDim) 258*b1cdbd2cSJim Jagielski End If 259*b1cdbd2cSJim Jagielski Next n 260*b1cdbd2cSJim Jagielski 261*b1cdbd2cSJim Jagielski arTmp() = split(sContent,"<variable") 262*b1cdbd2cSJim Jagielski For n=1 to ubound(arTmp()) 263*b1cdbd2cSJim Jagielski If arTmp(n) <> "" Then 264*b1cdbd2cSJim Jagielski arTmp(n) = Right(arTmp(n),Len(arTmp(n))-Instr(arTmp(n),"id=")-3) 265*b1cdbd2cSJim Jagielski sId = Left(arTmp(n),Instr(arTmp(n),"""")-1) 266*b1cdbd2cSJim Jagielski arTmp(n) = Right(arTmp(n),Len(arTmp(n))-Instr(arTmp(n),">")) 267*b1cdbd2cSJim Jagielski arTmp(n) = Left(arTmp(n),Instr(arTmp(n),"</variable>")-1) 268*b1cdbd2cSJim Jagielski If Len(arTmp(n) > 100) Then 269*b1cdbd2cSJim Jagielski arTmp(n) = Left(arTmp(n),100)+"..." 270*b1cdbd2cSJim Jagielski End If 271*b1cdbd2cSJim Jagielski sDim = ubound(arVars()) 272*b1cdbd2cSJim Jagielski arVars(sDim) = sId+": "+arTmp(n) 273*b1cdbd2cSJim Jagielski sDim = ubound(arVars())+1 274*b1cdbd2cSJim Jagielski ReDim Preserve arVars(sDim) 275*b1cdbd2cSJim Jagielski End If 276*b1cdbd2cSJim Jagielski Next n 277*b1cdbd2cSJim Jagielski 278*b1cdbd2cSJim Jagielski ShowSecs 279*b1cdbd2cSJim Jagielski 280*b1cdbd2cSJim Jagielski If oBrowseDialog.Execute() = 1 Then 281*b1cdbd2cSJim Jagielski olbElements = oBrowseDialog.GetControl("lbElements") 282*b1cdbd2cSJim Jagielski sSelected = olbElements.SelectedItem 283*b1cdbd2cSJim Jagielski sSelected = Left(sSelected,Instr(sSelected,":")-1) 284*b1cdbd2cSJim Jagielski oTxtID = oDialog.GetControl("txtID") 285*b1cdbd2cSJim Jagielski oTxtID.Text = sSelected 286*b1cdbd2cSJim Jagielski End If 287*b1cdbd2cSJim Jagielski Else 288*b1cdbd2cSJim Jagielski msgbox "Cannot open "+filename,48,"Error" 289*b1cdbd2cSJim Jagielski End If 290*b1cdbd2cSJim JagielskiEnd Sub 291*b1cdbd2cSJim Jagielski 292*b1cdbd2cSJim JagielskiSub UpdateLIst 293*b1cdbd2cSJim Jagielski oOpSections = oBrowseDialog.GetControl("opSections") 294*b1cdbd2cSJim Jagielski oOpVariables = oBrowseDialog.GetControl("opVariables") 295*b1cdbd2cSJim Jagielski oOpParas = oBrowseDialog.GetControl("opParas") 296*b1cdbd2cSJim Jagielski If oOpSections.getState Then 297*b1cdbd2cSJim Jagielski ShowSecs 298*b1cdbd2cSJim Jagielski ElseIf oOpVariables.getState Then 299*b1cdbd2cSJim Jagielski ShowVars 300*b1cdbd2cSJim Jagielski ElseIf oOpParas.getState Then 301*b1cdbd2cSJim Jagielski ShowParas 302*b1cdbd2cSJim Jagielski End If 303*b1cdbd2cSJim JagielskiEnd Sub 304*b1cdbd2cSJim Jagielski 305*b1cdbd2cSJim JagielskiSub ShowSecs 306*b1cdbd2cSJim Jagielski olbElements = oBrowseDialog.GetControl("lbElements") 307*b1cdbd2cSJim Jagielski olbElements.RemoveItems(0,olbElements.ItemCount) 308*b1cdbd2cSJim Jagielski olbElements.AddItems(arSecs(),ubound(arSecs())) 309*b1cdbd2cSJim Jagielski oOpSection = oDialog.GetControl("opSection") 310*b1cdbd2cSJim Jagielski oOpSection.setState(TRUE) 311*b1cdbd2cSJim Jagielski SetLabel 312*b1cdbd2cSJim JagielskiEnd Sub 313*b1cdbd2cSJim Jagielski 314*b1cdbd2cSJim JagielskiSub ShowVars 315*b1cdbd2cSJim Jagielski olbElements = oBrowseDialog.GetControl("lbElements") 316*b1cdbd2cSJim Jagielski olbElements.RemoveItems(0,olbElements.ItemCount) 317*b1cdbd2cSJim Jagielski olbElements.AddItems(arVars(),ubound(arVars())) 318*b1cdbd2cSJim Jagielski oOpVariable = oDialog.GetControl("opVariable") 319*b1cdbd2cSJim Jagielski oOpVariable.setState(TRUE) 320*b1cdbd2cSJim Jagielski SetLabel 321*b1cdbd2cSJim JagielskiEnd Sub 322*b1cdbd2cSJim Jagielski 323*b1cdbd2cSJim JagielskiSub ShowParas 324*b1cdbd2cSJim Jagielski olbElements = oBrowseDialog.GetControl("lbElements") 325*b1cdbd2cSJim Jagielski olbElements.RemoveItems(0,olbElements.ItemCount) 326*b1cdbd2cSJim Jagielski olbElements.AddItems(arParas(),ubound(arParas())) 327*b1cdbd2cSJim Jagielski oOpVariable = oDialog.GetControl("opSection") 328*b1cdbd2cSJim Jagielski oOpVariable.setState(TRUE) 329*b1cdbd2cSJim Jagielski SetLabel 330*b1cdbd2cSJim JagielskiEnd Sub 331*b1cdbd2cSJim Jagielski 332*b1cdbd2cSJim JagielskiSub CheckButton 333*b1cdbd2cSJim Jagielski olbElements = oBrowseDialog.GetControl("lbElements") 334*b1cdbd2cSJim Jagielski obutSelect = oBrowseDialog.GetControl("butSelect") 335*b1cdbd2cSJim Jagielski sSelected = olbElements.SelectedItem 336*b1cdbd2cSJim Jagielski If sSelected = "" Then 337*b1cdbd2cSJim Jagielski oButSelect.enable = false 338*b1cdbd2cSJim Jagielski Else 339*b1cdbd2cSJim Jagielski oButSelect.enable = true 340*b1cdbd2cSJim Jagielski End If 341*b1cdbd2cSJim JagielskiEnd Sub 342*b1cdbd2cSJim Jagielski 343*b1cdbd2cSJim Jagielski 344*b1cdbd2cSJim JagielskiFunction IsSubDir(D as String, R as String) 345*b1cdbd2cSJim Jagielski IsSubDir = (Left(D,Len(R)) = R) 346*b1cdbd2cSJim JagielskiEnd Function 347*b1cdbd2cSJim Jagielski</script:module> 348