background image

244

Third-Party Add-Ins

At start-up, the program executes any scripts it finds listed in these Windows Registry 
keys:

HKEY_CURRENT_USER\Software\Allaire\HomeSite45\RunOnce
HKEY_CURRENT_USER\Software\Allaire\Studio45\RunOnce 
HKEY_CURRENT_USER\Software\Allaire\JRStudio3\RunOnce

If you want to distribute an add-in for one or more of these programs, you can use the 
appropriate key to run a script that, for example, creates a toolbar for your application 
the next time the program starts. For HomeSite, you would add a string entry whose 
value contains the full path to the script you want executed, like this:

"MyAppScript"="c:\\MyApp\\MyAppScript.bas"

Sub Main

const

 TB_NAME = "MyApp"

Dim

 app

set

 app = Application

’ delete toolbar if it already exists

if

 app.ToolbarExists(TB_NAME) 

then

app.DeleteToolbar(TB_NAME)

end if

’ recreate toolbar
app.CreateToolbar TB_NAME

’ dock it to the bottom
app.SetToolbarDockPos TB_NAME, 2

’ add app toolbutton
app.AddAppToolbutton TB_NAME, "c:\MyApp\MyApp.exe", "", "Click to run

MyApp"

’ add tag toolbutton
app.AddTagToolbutton TB_NAME, "<div>", "</div>", "DIV Toolbutton",

"DV", ""
’ add script toolbutton

app.AddScriptToolbutton TB_NAME, app.A "test.bas" , "Script

Toolbutton", "SC", ""
’ add VTM toolbutton

app.AddVTMToolbutton TB_NAME, app.A

"Extensions\TagDefs\HTML\div.vtm" , "VTM Toolbutton", "VT", ""

End Sub

After these keys are read, the program deletes the entries so that they won’t be 
executed again.

Scripting support opens up numerous possibilities for third-party developers. For the 
latest news on third-party add-ins, check the Allaire Developer site.

Содержание COLDFUSION STUDIO 4.5-USING COLDFUSION...

Страница 1: ...Allaire Corporation Using ColdFusion Studio ColdFusion Studio 4 5 for Windows 95 98 NT4 2000...

Страница 2: ...ability for any errors or inaccuracies that may appear in this book Except as permitted by such license no part of this publication may be reproduced stored in a retrieval system or transmitted in any...

Страница 3: ...es xvi Making Web sites accessible to visually impaired visitors xvi Contacting Allaire xvii Chapter 1 Exploring the Workspace 19 The Workspace Areas 20 Setting workspace options 21 Working in the Res...

Страница 4: ...7 Configuring the Internal Browser 38 Setting the internal browser options 38 Configuring External Browsers 40 Selecting a save option 40 Using the external browser 40 Chapter 4 Connecting to Servers...

Страница 5: ...Document Content 59 Using Keyboard Shortcuts 60 Saving Code Blocks as Snippets 61 Sharing snippets 62 Adding snippet shortcut keys 62 Chapter 7 Accessing Data Sources 63 Introduction to Database Tools...

Страница 6: ...ree 82 Editing code in the Tag Inspector 84 Creating and editing event handler script blocks 85 Preserving Code Formats with CodeSweepers 86 Selecting a CodeSweeper 86 Running a CodeSweeper 87 Managin...

Страница 7: ...ystems 111 Setting up a project in source control 112 Chapter 12 Deploying Projects 113 Setting Project Level Deployment 114 Setting Folder Level Deployment 114 Relative to the Parent Folder Deploymen...

Страница 8: ...ynamic expressions in tags 157 Bound controls 158 Creating Wizard Output Templates 161 Parameters 161 Expressions and functions 161 WIZ Tags 162 WIZML reference 163 Wizard Definition Page Library 165...

Страница 9: ...ons It is also an easy to use tool to create and edit Web content with support for a variety of scripting languages Contents Intended Audience x Introduction to the ColdFusion 4 5 Web Application Serv...

Страница 10: ...ernet server operating system While optimizing the core server we also enhanced fundamental features including email integration server side FTP and HTTP advanced security scheduling and database conn...

Страница 11: ...x as you type Code validation Configurable for multiple versions of HTML CFML SMIL and browser specific tags Image Map Editor Create image maps right in ColdFusion Studio with a new easy to use visual...

Страница 12: ...nformation about ColdFusion Allaire support options and Allaire products and services For ColdFusion Studio users you can access the Documentation Update page in the Allaire Support folder in Help Ref...

Страница 13: ...you don t have a product CD you can download ColdFusion documentation from the Allaire web site by visiting http www allaire com developer and clicking the Documentation link ColdFusion Studio online...

Страница 14: ...Journal online version of the popular print journal at http www sys con com coldfusion index2 cfm Making Web sites accessible to visually impaired visitors The W3C Web Accessibility Initiative at http...

Страница 15: ...e and product information and an Allaire username and password Hours 8 00 AM to 8 00 PM Eastern time Toll Free US Canada 888 939 2545 Local International 617 219 2100 Email info allaire com Sales Toll...

Страница 16: ...xvi Contacting Allaire...

Страница 17: ...give you some pointers on customizing the workspace to make all your development work as productive as possible Contents The Workspace Areas 18 Working in the Resource Windows 19 Creating and Browsing...

Страница 18: ...s that provide one click access to commands and application tools To the right is the QuickBar a tabbed toolbar for inserting JSP HTML and other language elements Resources window Tabs for file manage...

Страница 19: ...ccess point for working with ColdFusion data sources The Projects tab helps you manage site content by organizing pages and supporting files You have the option of adding projects to your version sour...

Страница 20: ...ab in the Document window Browse tab Click the Browse tab or press F12 to process the current document in the internal browser The Browse toolbar displays at the top of the Document window when you se...

Страница 21: ...sensitive syntax and usage information To view Help text in a tag editor or in Tag Chooser 1 Click the Toggle Embedded Help button Alt H to see Help text in a pane at the bottom of the dialog box 2 Cl...

Страница 22: ...bar and select from the list You can maintain bookmarks by selecting Organize Bookmarks from the Help Bookmarks drop down list To bookmark an external document 1 Click the Bookmark button in the Help...

Страница 23: ...search_tips pdf is installed in the Help Allaire Support folder of your installation directory If you have Adobe Acrobat Reader on your system you can open this file by double clicking it in Windows E...

Страница 24: ...lder name in the box and press Enter to save the new folder You might need to press F5 to refresh the Help display You have several options for adding documents to the Help system To add documents to...

Страница 25: ...se the path attribute in the book and chapter tags to specify the folder location To add a folder to the Help structure 1 Copy the new folder into the Help root directory 2 Open the Help directory fro...

Страница 26: ...ocuments One approach is to create a file structure in the Help tree that conforms to the media file references in your documents Alternately you can supply a URL or accessible file location for remot...

Страница 27: ...o work with folders and files Contents About the Files Tab 28 Working with Files 29 Changing the File List Display 31 Dragging Files from Windows Explorer 31 Building a Favorite Folders List 32 Workin...

Страница 28: ...ping a Web site or Web applications see Using Projects for Site Management on page 91 but for general file management chores you work in the Files tab on the Resources window The Files tab gives you a...

Страница 29: ...a default folder to open Opening files Use the procedures below to open a file in the file list To open a file 1 On the Files tab use the Drive List and the Directory List to navigate to the directory...

Страница 30: ...the file list and use the File options in the shortcut menu to delete move copy or rename the file Saving files Unsaved changes in a document are indicated by an X next to the file name in the Documen...

Страница 31: ...included for Web documents and Web images To change the file list view 1 Right click in the file list and choose View from the menu 2 From the View submenu you can toggle the display of the document t...

Страница 32: ...er submenu choose the folder you want to see The folder is opened in the Directory List and its files are displayed in the file list To organize your favorite folders 1 Right click in the file list an...

Страница 33: ...nfigured remote servers See Connecting to Servers via FTP and HTTP on page 39 for setup procedures If you set the Drive list to My Computer you can easily access all your drives plus Allaire FTP RDS s...

Страница 34: ...he server name and port number 4 You can optionally set a time out limit for the connection 5 Click OK to open the file as an untitled document To copy Web page content Use Windows copy and paste comm...

Страница 35: ...T E R 3 Configuring Web Browsers This chapter contains the procedures for configuring Web browsers for use by ColdFusion Studio Contents Configuring the Internal Browser 36 Configuring External Brows...

Страница 36: ...nstalled on your system you can use it as the internal browser Go to http www microsoft com downloads to get the latest version If the Mozilla browser NGLayout Gecko control is installed you can selec...

Страница 37: ...ontrol will not be able to create Gecko components and will not work 4 Open a DOS prompt change to the Mozilla bin directory and type regsvr32 mozctl dll If regsvr32 exe is not in you path use the Win...

Страница 38: ...n the external browser For example the Browse using a temporary copy option is handy if you are making many edits to a page and don t want to use the Undo command If you selected the Use External Brow...

Страница 39: ...Services RDS You can perform file transfers and other file management tasks using either FTP or RDS To access data sources and to run the debugger an RDS server connection is required Contents Require...

Страница 40: ...Allaire FTP RDS feature provides an interface for connecting to an FTP server When the connection has been established you can access files on remote servers and maintain Web sites located anywhere on...

Страница 41: ...ld is left blank Password The password for the account used to access the remote server You will be prompted for a password at login if this field is left blank Root URL Enter the http address of the...

Страница 42: ...building Remote file access CFML debugging Managing ColdFusion security The ColdFusion installation configures basic security for the server and by default requires a password for the ColdFusion Admin...

Страница 43: ...select the Add RDS Server command to open the Configure RDS Server dialog box 4 In the Configure RDS Server dialog box make these entries Description a label for the server connection Host name localh...

Страница 44: ...DS list and select Properties from the menu 2 Make any changes necessary in the Configure Server dialog box and click OK To delete a server 1 Right click the server name in the Allaire FTP RDS list an...

Страница 45: ...ing Server Mappings Development mappings are essential for working with files via Remote Development Services RDS Contents Understanding Development Mappings 46 Understanding RDS Mappings 47 Defining...

Страница 46: ...r further processing then return it to the browser This is valuable for previewing applications and site elements in a test environment before deploying the site You establish this routing by associat...

Страница 47: ...ldFusion server using drive mappings ColdFusion Studio debugging on remote server using Network Neighborhood ColdFusion Studio debugging on a remote server using RDS file access Using local paths Debu...

Страница 48: ...the server you need to create a mapping for the App1 directory as follows Using UNC paths Network Neighborhood Developers can debug code against remote ColdFusion servers across an internal network Th...

Страница 49: ...s App1 index cfm The browser might view it using the URL path http 215 180 21 1 App1 index cfm Although the server path can be inferred from the local RDS path you still need to create a mapping In sp...

Страница 50: ...pping tab on the Remote Development Settings dialog box 4 Select a server from the drop down list of configured servers If a server is not on the list add it using the procedure described above 5 Ente...

Страница 51: ...testing and deploying complex dynamic sites This chapter describes some basic techniques for creating Web content and application code Contents Inserting Code 52 Selecting a Color Coding Scheme 53 Us...

Страница 52: ...ge the QuickBar display and organize toolbuttons To change the tab order right click the QuickBar select Organize QuickBar and use the arrow buttons to set the tab order To move a toolbar click and ho...

Страница 53: ...s Select for the highlighted tag or double click it Tags that are inserted directly into a document are listed with brackets in the right pane such as HTML HTML All other tags have individual editors...

Страница 54: ...display It is easy to implement a custom code scheme by changing the default colors and font styles To change a color scheme 1 Open Options Settings Editor Color Coding 2 Select the scheme you want to...

Страница 55: ...he spacebar 2 Select from the drop down attribute lists as needed 3 Press Esc to close a list Tip If you just want to see the attributes and values associated with a tag place the cursor inside the ta...

Страница 56: ...ull phrase in this case DOCTYPE HTML PUBLIC W3C DTD HTML 4 0 Transitional EN Extended characters To enter special characters and Latin 1 extended characters you can either type the ASCII code or selec...

Страница 57: ...o select a different template or a wizard You can easily add a link from an HTML CFML JSP or other HTML embedded document to a URL To add a hyperlink use one of these commands Drag files from the File...

Страница 58: ...esize it or you can switch to Edit mode to work directly in the code Using Keyboard Shortcuts Keyboard shortcuts are active for many file management editing and debugging commands Select Options Custo...

Страница 59: ...In the Start Text window type or paste an opening code block You can set a default spacing between the blocks by pressing the Enter key at the end of the start text and at the beginning of the end tex...

Страница 60: ...k OK The new folder appears in the Snippets list Anyone with access to the shared folder can now add edit and delete snippets Adding snippet shortcut keys Open the Options Customize dialog box and sel...

Страница 61: ...ly accelerate development of data driven ColdFusion applications Contents Introduction to Database Tools 62 Registering Data Sources 62 Connecting to Data Sources 63 Viewing Data Sources 63 Using SQL...

Страница 62: ...ed with the Professional and Enterprise versions To register a data source 1 Open the ColdFusion Administrator 2 Select the ODBC or native drivers page under the data sources heading 3 Name the data s...

Страница 63: ...To open a data source 1 Open the Database tab and select a server from the dropdown list in the top pane Accessing a large database on a remote servers may take a few moments 2 Click the plus sign ne...

Страница 64: ...le pane and choose from the Query Type list To open SQL Builder choose one of these methods Right click on a database or a table in the Database tab and choose New Query Click Tools SQL Builder select...

Страница 65: ...being selected or the columns that are being updated SQL pane Shows you the SQL statement as it is built Writing SQL statements SQL Builder opens a SELECT statement by default since this is the most...

Страница 66: ...onal query attributes in the Properties pane 7 Save or insert the query into your page To use a CFML variable in a SQL WHERE clause 1 In the Properties pane click in the Criteria column for the column...

Страница 67: ...ery you can edit it later Pages that contain the edited query are not automatically updated so you will need to re insert the query for the changes to take effect To edit a query 1 Open the query fold...

Страница 68: ...To insert the SQL statement within a CFQUERY tag click the Copy CFQUERY button Close the SQL Builder and paste the query into your page You will be prompted to save the query To insert a saved query...

Страница 69: ...ated in the CFWDDX tag While WDDX is a valuable tool for ColdFusion developers it s utility is not limited to CFML WDDX serialization of common programming data structures such as arrays record sets a...

Страница 70: ...lication on one system to find invoke and maintain state with objects on a remote system Communication between objects on remote systems uses an efficient special purpose wire protocol But these servi...

Страница 71: ...rally more complex and ad hoc with dynamic structure WDDX allows developers to work with this data without the overhead of setting up a datasource for every type of data needed Therefore it integrates...

Страница 72: ...need to worry about the details of time zone conversions However during deserialization to JavaScript expressions time zone information is not taken into account Complications arise because of the dif...

Страница 73: ...registered ColdFusion 4 0 datasource and can be run from ColdFusion Server Create a simple query CFQUERY NAME q DATASOURCE snippets SELECT Message_Id Thread_id Username Posted from messages CFQUERY s...

Страница 74: ...lNames length i o td colNames i td o tr for row 0 row nRows row o tr for i 0 i colNames length i o td r getField row colNames i td o tr o table Write the table to the HTML stream document write o Dump...

Страница 75: ...nction serializeData data formField wddxSerializer new WddxSerializer wddxPacket wddxSerializer serialize data if wddxPacket null formField value wddxPacket else alert Couldn t serialize data Person i...

Страница 76: ...xtarea name wddxPacket rows 10 cols 80 wrap Virtual textarea form Server side processing hr p b Server side processing b p CFIF isdefined form wddxPacket CFIF form wddxPacket neq Deserialize the WDDX...

Страница 77: ...and content Contents Setting Options on the Editor Toolbar 70 Selecting Code and Text Blocks 70 Saving Text to the Multiple Entry Clipboard 70 Using Collapsing Text 71 Using Tag Editors 72 Using the T...

Страница 78: ...ing Text to the Multiple Entry Clipboard This feature allows you to copy multiple text block and store them as separate entries in the Windows Clipboard Entries can be pasted in later as needed You mu...

Страница 79: ...he marker may vary if a proportional font is used Enable a popup display of the full text when you move your mouse over the collapsed text marker You can set the maximum number of lines to display in...

Страница 80: ...tag editor to view syntax and usage Help Using the Tag Tree and Tag Inspector The Tag Inspector panel of the Resources window contains two integrated tools the Tag Tree and the Tag Inspector By using...

Страница 81: ...rofile Editor dialog box Before making changes to a profile it s a good idea to make a backup of the original file To configure Outline Profiles 1 Click the Configure Outline Profiles button at the to...

Страница 82: ...t ColdFusion Studio installs includes a definition file written in VTML that specifies the valid attributes for that tag and the content and formatting of the tag s editor Working with tag definition...

Страница 83: ...e selected tag or edit the event directly To add an event handler script block 1 Select a tag in the Tag Tree to display a list of supported attributes and events in the Tag Inspector pane 2 You can e...

Страница 84: ...yntax only WEB XML Java EJB code used in deployment descriptor files Allaire Default HTML Tidy Settings Code formatting plus additional features HTML Tidy HTML Tidy a tool developed by Dave Ragget und...

Страница 85: ...e default CodeSweeper 1 Open Options Settings CodeSweeper 2 Highlight a CodeSweeper entry in the list and click the Set as Default button 3 Click OK to save the change To run a CodeSweeper automatical...

Страница 86: ...en the Options Settings CodeSweeper pane General settings Set the case for tag attribute and event names You can select to preserve the case as it is found in the document or change to all upper or al...

Страница 87: ...generation tools To set rules for a tag 1 Select a CodeSweeper from the list 2 Edit the General Settings as needed 3 Switch to the Tag Specific Settings tab and highlight a tag name in the list Note t...

Страница 88: ...ess to all the supported settings but you can also edit a profile directly This can be useful in a couple of situations If you want to remove an option from the settings pane so that it does not displ...

Страница 89: ...reedom and more time to achieve design goals A site can be retrofitted with CSS although this requires deleting tag based formatting code About the Style Editor TopStyle Lite provides an integrated in...

Страница 90: ...82...

Страница 91: ...debug window gives you views of breakpoints variables recordsets tag and page hierarchies and page output From these panes you can set watches change disable and delete breakpoints and evaluate varia...

Страница 92: ...ng Specify the first page in the application to be debugged Configuring RDS from the Debugger To access a remote server from Studio first configure the server and provide security login information if...

Страница 93: ...usion Server list box at the top of the dialog box choose the ColdFusion server against which you ll run the debugging session 3 In the Studio Path box enter the file path ColdFusion Studio uses for t...

Страница 94: ...by clicking in the gutter on the left side of the editor window The breakpoint lines are colored red Choose Debug Toggle Breakpoints to turn breakpoints on and off Use Debug Clear Breakpoints to dele...

Страница 95: ...End This allows you to debug across multiple pages Debug windows Choose View Debug Window to open the Debug window There are several panes to this window Variables Displays all scopes of local variabl...

Страница 96: ...ide a block of included code and want to step back to the point in your original page where you entered the included code Use Run to Cursor to execute up to the cursor position without having to set a...

Страница 97: ...g the page 4 Select Watch to add the expression in the evaluator list box to the list of watched expressions The Watch area shows the values of watched expressions and any error messages in resolving...

Страница 98: ...mmand Key Start Continue Ctrl F5 End Alt F5 Step into Ctrl F8 Step over Ctrl F9 Step out Ctrl F10 Run to cursor Ctrl F11 Variables Alt Q Watches Alt W Recordsets Alt R Stack Alt K Breakpoints Alt B To...

Страница 99: ...ols in ColdFusion Studio to create and maintain Web sites Contents What is a Project 92 Creating a Project 92 Working in the Project Resources Window 93 About Project Folders 93 Managing Project Files...

Страница 100: ...u create a new project you must specify a folder to hold the project file This folder must already exist somewhere on your computer If the existing folder has files and subfolders you can add them to...

Страница 101: ...lobe Path settings for the project structure can also be opened from Projects Properties Project root folder the top folder in the project tree Project folder type and deployment settings Subfolders I...

Страница 102: ...o or delete files from the mapped directory Changing a folder from auto inclusive to manual inclusive retains all files by default Note The location of a manual inclusive folder cannot be changed The...

Страница 103: ...one of the following To open all project documents right click the project root select Open All Documents in Project from the menu All of the text based files in the entire project are opened in the...

Страница 104: ...just need to know that they exist There are some limitations to where you can add virtual folders Virtual folders can only be added to the project root or to another virtual folder You cannot add a v...

Страница 105: ...Click Auto Include Files Using Filter and select a filter from the drop down menu a filter limits the files that will be included based on the extension types that you specify Alternatively you can ma...

Страница 106: ...add files to or remove files from an auto inclusive folder with these methods To add files to a manual inclusive or virtual folder 1 Right click the folder and select Add Files to Folder The Add File...

Страница 107: ...with Resources The Resources tree provides a view of the project files based on the file type This is useful for isolating application files media files and other content You can easily edit the defau...

Страница 108: ...ces tree You can right click a resource in the tree to edit or remove it Additional Project Features There are additional project features that are described in other sections of this manual These fea...

Страница 109: ...ly are about control they are designed to control file management in application development and related work Common terms such as check in check out lock and unlock accurately describe the security p...

Страница 110: ...4 Right click on the project root in the Projects tab and select Source Control Choose Source Control Provider A list of source control application detected on your system appears 5 Select from the P...

Страница 111: ...more host servers You can specify a deployment path for the entire project or for individual folders This chapter describes how to specify options and to deploy a project Contents Setting Project Leve...

Страница 112: ...er to a location that is relative to its parent folder or project For example Parent Folder MyDirectory ParentFolder Child Folder MyDirectory ParentFolder ChildFolder If the parent folder s deployment...

Страница 113: ...Click OK Your deployment settings are applied to the folder Tip The project deployment information is in the project apf file By uploading the apf file along with a project you can maintain the same d...

Страница 114: ...een mapped to in the Files panel are also included in this list You can deploy your project to any of these servers however only information for the Deployment Servers is included in the apf file for...

Страница 115: ...lly then the project is closed The Project wide Upload Script generates a script that is identical in functionality to deploying the project directly During a project wide upload the project is opened...

Страница 116: ...the last deployment by selecting View Results Deployment Right click in the Deployment pane to select display options Each succeeding deployment overwrites the Results window contents but the informat...

Страница 117: ...y need to make changes and test its accuracy completeness and efficiency HomeSite provides a full set of tools to accomplish these necessary tasks Contents Working in the Results Window 110 Using the...

Страница 118: ...operations are preserved when you move from panel to panel and when you close the Results window They are not saved if you repeat an operation or exit HomeSite You can open the Results window at any t...

Страница 119: ...y saved in the basic search Open the drop down list for the Find what text box to enter a saved string You can selectively save search text in extended operations Click the arrow button next to the Fi...

Страница 120: ...tion of RegExp syntax in HomeSite see Searching with regular expressions on page 113 Select the Skip tags while searching option to exclude tags from the search This option is not available when the R...

Страница 121: ...e combined with special characters to define the pattern for the search The RegExp parser evaluates the selected files and returns each matching pattern When you select the Find option the matching pa...

Страница 122: ...ches an a k or m Note that if you want to include closing square bracket in square brackets it must be the first character Otherwise it won t work even if you use Any regular expression can be followe...

Страница 123: ...concatenation of regular expressions creates a regular expression that matches the corresponding concatenation of strings For example A Z a z matches any capitalized word The OR character allows a cho...

Страница 124: ...is code searches for words that are all letters A Za z followed by one or more spaces followed by the first matched subexpression in parentheses The parser detects the two occurrences of is as well as...

Страница 125: ...rcase DOS Windows full path that a is not the root of a drive and b has only letters numbers and underscores in its text A Za z A Za z0 9_ A ColdFusion variable with no qualifier A Za z A Za z0 9_ A Z...

Страница 126: ...oft products are not used by HomeSite If the Microsoft Office spell checker is enabled you can optionally select from the drop down list of available languages Integrated spell checker options An Engl...

Страница 127: ...To run the validator select one of these commands Click the Validate current document toolbutton or select Tools Validate Document Shift F6 The Validation Results pane displays either a No errors or w...

Страница 128: ...P address of the link Status Initially set to Untested 2 Each link is checked in order The Status column displays OK for successful links and returns a File not found message or the server generated c...

Страница 129: ...he project files 3 Optional Set a timeout value for the processing of each link 4 Click OK to run the verification routine The Results appear in the Links panel Note To prevent slow execution of proje...

Страница 130: ...122...

Страница 131: ...dialogs for editing HTML CFML JSP JavaScript and ASP language elements Contents The Visual Tools Markup Language VTML 140 Customizing Tag Chooser and Expression Builder 140 Dialog Definition Files 142...

Страница 132: ...n the Studio products are marked accordingly You use VTML to control and customize the following interface elements Tag Inspector Tag Tips Tag Insight Tag Editing Dialogs Tag Outline Profiles Wizards...

Страница 133: ...141 Two VTML tags CAT and E let you customize the content of these dialog boxes...

Страница 134: ...the category Notice that the HELPFILE attribute can be used to specify the Help as a separate file HELPFILE The relative path to the HTML Help for the category HELPFILE Docs MyTag htm ICON Folder Elem...

Страница 135: ...n various markup languages Note Whenever you make changes to a VTM file or create a new one save the file then press Ctrl Alt Shift C to apply the changes The following features use tag definition fil...

Страница 136: ...TEGORIES Defines logical grouping for tag attributes ATTRIBCATEGORIES EDITORLAYOUT Defines the layout of a tag editor EDITORLAYOUT TAGLAYOUT Defines the tag generation template TAGLAYOUT TAGDESCRIPTIO...

Страница 137: ...ALIGN attribute Defining attribute value types The value type for a specific attribute can be specified using the TYPE attribute in the ATTRIB tag ATTRIBUTES ATTRIB NAME VALUE TYPE text ATTRIB NAME B...

Страница 138: ...bute The following table describes the ATTRIB tag ATTRIB Tag Attributes NAME Name of the attribute CONTROL Optional Use to populate the attribute value to a specific tag editor control when editing ex...

Страница 139: ...rs ELEMENTS BGCOLOR VLINK ALINK LINK TEXT ATTRIBGROUP NAME Misc ELEMENTS GIZMO ATTRIBCATEGORIES CACHEFAMILY Optional The name of the cache family associated with the attribute Colors FontFaces FilePat...

Страница 140: ...efinition of how to populate controls with tag attributes Definition of the tag generation template Open the Extensions TagDefs mytag vtm file to see how these tasks are coded The following section wi...

Страница 141: ...YTAG tag The tag editor looks like this The example displays a single Panel CONTAINER containing Label and TextBox controls Only a few controls can be containers TabDialog A tab dialog control capable...

Страница 142: ...rea ActiveX ListBox ImageMapTextArea StyleTextBox StyleTextArea NAME Name of the control ANCHOR Optional The name of the control relative to which control is positioned If omitted control is positione...

Страница 143: ...In pixels for example WIDTH 200 As the name of another control for example WIDTH SomeControl In this case the width of the specified control is used The control must be already positioned Set to maxi...

Страница 144: ...into the editor controls The tag generation logic is stored in the TAGLAYOUT block This block contains a short template used to generate the final tag string The markup language used the TAGLAYOUT tem...

Страница 145: ...based on user preferences Here is a version of the MYTAG layout template responding to case preferences TAGLAYOUT WIZIF OPTIONLowerCaseTags EQ true mytag color colorBGColor WIZELSE MYTAG COLOR colorBG...

Страница 146: ...ibutes for example onCLick In order not to lose these unknown attributes during the editing process the editor engine creates the TAGDATAUnknownAttributes variable containing a list of unknown attribu...

Страница 147: ...used in the Application cfm file to set defaults for a specific ColdFusion application TAGDESCRIPTION Providing Help from an external file As the Help content grows it may become cumbersome to specif...

Страница 148: ...NTAINER NAME TabPage2 TYPE TabPage CAPTION Content embedded controls CONTAINER CONTAINER CONTAINER TYPE TabDialog TabDialog control is a special container control because it can only contain CONTAINER...

Страница 149: ...AINER CONTAINER CONTAINER TYPE TabPage TabPage control is also special because it can only be contained inside a TabDialog CONTAINER control NAME In the ATTRIBUTES section of a Tag Definition a TabDia...

Страница 150: ...DTH 50 CONTROL NAME txtSource TYPE TextBox ANCHOR lblSource CORNER NE WIDTH MAXIMUM CONTROL NAME lblAlign TYPE Label CAPTION Align ANCHOR lblSource CORNER SW DOWN 11 WIDTH 50 CONTROL NAME dropAlign TY...

Страница 151: ...NTAINER EDITORLAYOUT Label control The following table describes the Label control CONTROL TYPE Label A label can serve as a caption for an input control and can display extra information about the di...

Страница 152: ...the text box AUTOSIZE YES NO Automatically sizes the control to the text it contains This option is overridden if WIDTH or HEIGHT are explicitly specified EDITABLE YES NO Enables or disables editing A...

Страница 153: ...YPE DropDown A drop down list box This tag requires ITEM subtags which specify the list of items in the drop down list The item tag has CAPTION and VALUE attributes CAPTION specifies the visible item...

Страница 154: ...tBox control The following table describes the ListBox control FontPicker control The following table describes the FontPicker control CONTROLTYPE ListBox MULTISELECT The MULTISELECT attribute decides...

Страница 155: ...Color ANCHOR lblFace CORNER SW DOWN 11 WIDTH 50 CONTROL NAME colorColor TYPE ColorPicker ANCHOR lblColor CORNER NE WIDTH MAXIMUM CONTROL NAME lblColor TYPE Label CAPTION Color ANCHOR lblFace CORNER S...

Страница 156: ...ntrol The following table describes the CheckBox control CONTROL TYPE CheckBox A simple check box control Returns true or false CAPTION Caption displayed next to the check box CHECKED YES NO Specifies...

Страница 157: ...r SELECTED TRUE ITEM VALUE SKIP CAPTION SKIP Neither saves the file nor throws an error ITEM VALUE OVERWRITE CAPTION OVERWRITE CONTROL TYPE RadioGroup A set of radio buttons This tag requires ITEM sub...

Страница 158: ...the Text Area control CONTROL TYPE TextArea A simple multiline text entry control SCROLLBAR NONE HORIZONTAL VERTICAL BOTH Specifies which scrollbars should be displayed WRAP YES NO Enables wrapping of...

Страница 159: ...entry control that allows the user to execute an SQL statement The control contains a button that the user can use to invoke the query builder SCROLLBAR NONE HORIZONTAL VERTICAL BOTH Specifies which s...

Страница 160: ...ION Max Rows ANCHOR txtQueryName CORNER NE DOWN 0 RIGHT 10 WIDTH 70 CONTROL NAME lblTimeout TYPE Label CAPTION Timeout ANCHOR txtDataSource CORNER NE DOWN 0 RIGHT 10 WIDTH 70 CONTROL NAME numMaxRows T...

Страница 161: ...essibility to local and remote file directory browsing FILTER The file filter that should be used by the file directory browsing dialog boxes For example FILTER gif jpeg jpg DIRONLY YES NO Specifies t...

Страница 162: ...le is specified in a local or remote file dialog box By default the entire path would be pasted The attribute is irrelevant when the DIRONLY attribute is used RELATIVE YES NO Instructs the control to...

Страница 163: ...tion is overridden if WIDTH or HEIGHT are explicitly specified TRANSPARENT YES NO Controls transparency CENTER YES NO Centers the image CONTROL TYPE ImageMapTextArea An image control capable of contai...

Страница 164: ...s The default mode of the Style Editor when called from a Tag Editor is as an in line style editor so this attribute must be defined and set to No to allow editing of multiple style sheet rules Since...

Страница 165: ...worked with VTML to create or edit tag dialog boxes you are familiar with building interface containers and controls and with defining page layout You can now add the Wizard Markup Language WIZML to y...

Страница 166: ...ets the behavior of a page class This is useful for standard pages which are intended to be re used across multiple wizards INPUT Defines an input control on a wizard page If the NAME attribute of the...

Страница 167: ...plate OUTPUTPATH Optional Output directory for the file Defaults to the value of the variable LOCATION Note that you must provide a wizard page where the user can specify this value DESCRIPTION Option...

Страница 168: ...s whether a value for the parameter is required The Wizard manager will not enable the Finish button until all required parameters are entered Attribute Description NAME Name of the form control to wh...

Страница 169: ...ing sure that the NAME attribute of the INPUT tag matches the Name property of the control All controls specified in the layout can be bound Wizard definition page example This sample wizard creates a...

Страница 170: ...UM CONTROL NAME tbMetaDescr TYPE TextBox ANCHOR chkMetaDescr CORNER SW DOWN 8 WIDTH MAXIMUM CONTAINER PAGELAYOUT INPUT NAME ddDocType PARAM sDocType INPUT NAME tbTitle PARAM sTitle REQUIRED yes VALIDA...

Страница 171: ...width MAXIMUM PAGELAYOUT INPUT NAME chkMetaKeywords PARAM bMetaKeywords INPUT NAME taMetaKeywords PARAM sMetaKeywords PAGE OUTPUT TEMPLATE TEMPLATE NAME Custom wml OUTPUTFILE MyFile cfm DESCRIPTION Ne...

Страница 172: ...e used to customize the type of output generated The values of these wizard parameters can originate from several locations From a value set by a PARAM tag provided by the wizard From an embedded tag...

Страница 173: ...takes a string argument rather than a direct variable reference WIZ Tags The behavior of wizard output templates is controlled by the use of WIZ tags in the template These tags are like ColdFusion tag...

Страница 174: ...r example WIZSET Color Red WIZSET Pi 7 22 WIZSET ShortName Left LongName 5 The following table describes the WIZINCLUDE tag WIZLOOP WIZBREAK and WIZCONTINUE The WIZLOOP tag supports several types of l...

Страница 175: ...EN wizelse sDocType eq HTML 2 0 DOCTYPE HTML PUBLIC IETF DTD HTML 2 0 EN WIZIF HTML HEAD TITLE sTitle TITLE WIZIF bMetaDescr eq true META NAME description CONTENT sMetaDescr WIZIF WIZIF bMetaKeywords...

Страница 176: ...Location textbox This control should be bound to the Location parameter The value of this parameter is preset to the directory opened in the left pane Example PAGE name SelectWizardNameAndLocation typ...

Страница 177: ...required yes validationMsg You did not select the data source Please select one before proceeding PAGE SelectTables This page displays a list of tables in the specified data source and lets the user...

Страница 178: ...lue SearchFields ResultFields DetailFields UniqueIdentifier INPUT name lstTables param Tables required yes validationMsg You did not select any tables Please select at least one before proceeding PAGE...

Страница 179: ...he page lets the user select fields from multiple tables for table joins Exposes controls lstJoins dropdown The control lists field pairs as selected from the dropdown field lists This list can be pre...

Страница 180: ...e of the data source Tables required Comma delimited list of the tables ListBoxLabel Caption for the dropdown control ListBoxDescription More detailed description for the dropdown control MultiSelect...

Страница 181: ...rol Example PAGE name IDField type SelectField caption Unique Identifier image images UniqueIDDetail bmp PARAM name DataSource value DataSource PARAM name Tables value Tables PARAM name ListBoxLabel v...

Страница 182: ...190...

Страница 183: ...ol HomeSite ColdFusion Studio and JRun Studio functions Contents Writing and Executing Scripts in Allaire Visual Tools 192 Application Object 194 Table of CommandID Values 206 Table of SettingID Value...

Страница 184: ...file If the file extension is bas vb or vbs then the VBScript engine is used to execute the script Otherwise it is assumed that the file contains JScript source To automate visual tools tasks you will...

Страница 185: ...File box 5 Make selections in the Button Image Button Caption and Button Hint boxes You can optionally create script hot keys on the Script Shortcuts tab and then click the Show keyboard shortcuts in...

Страница 186: ...g script code can be used to test for the application type Tests Application ApplicationType property 0 HomeSite 1 CF Studio 2 JRun Studio function Main var iAppType var sMessage with Application if I...

Страница 187: ...ad only Number of open documents ExeName OleString read only Filename of application executable including path Height integer Height in pixels of main window HInstance integer read only Instance handl...

Страница 188: ...ve paths For local files BaseHREF should be the folder the file is in CloseAll function CloseAll wbPromptToSave WordBool WordBool Closes all open documents If wbPromptToSave is True the user will be p...

Страница 189: ...3 General memory used 4 Total physical memory bytes 5 Available physical memory bytes 6 Total swap file storage space bytes 7 Available swap file storage space bytes 8 Total virtual space bytes 9 Avai...

Страница 190: ...e the case of attribute values HTMLGetAttribute function HTMLGetAttribute const wsInTag wsAttr WideString WideString Returns the value for a particular attribute of a tag For example HTMLGetAttribute...

Страница 191: ...t does not exist otherwise appends status to the file wsDescrip text description text for the entry MessageBox MessageBox const wsText wsCaption WideString nType Integer Integer Displays a message dia...

Страница 192: ...wraps to the first PreviousDoc procedure PreviousDoc Moves to the previous document in the Document tab If the first document is showing wraps to the last Quit procedure Quit This method will attempt...

Страница 193: ...yed in the status area ShellToApp function ShellToApp const wsAppFileName WideString WordBool Executes an external application Returns True if application launched successfully Note that command lines...

Страница 194: ...ds Integer Pauses for given number of milliseconds Use Wait to enable scripts to execute loops yet still allow access to the UI Without the call to Wait in the loop the application will appear locked...

Страница 195: ...yNewer wbEncryptCFML WordBool WordBool Uploads a project based on the passed criteria Note that wbEncryptCFML is specific to ColdFusion Studio Toolbar methods Each toolbar is identified by a unique na...

Страница 196: ...VTM toolbutton displays passed VTM dialog box when clicked to the passed toolbar Fails if toolbar doesn t exist Returns True if Toolbutton already exists but doesn t add duplicate button CreateToolbar...

Страница 197: ..._NAME app AddAppToolbutton TB_NAME c windows explorer exe Explorer app AddAppToolbutton TB_NAME c windows explorer exe app CurrentFolder Explorer Current Folder Here s the same code in VBScript Sub Ma...

Страница 198: ...DID_cmdFileSaveAs 9 CMDID_cmdFileSaveAsTemplate 10 CMDID_cmdFileSaveAll 11 CMDID_cmdFileReload 12 CMDID_cmdFileInsert 13 CMDID_cmdFileConvertTextFile 14 CMDID_cmdFilePrint 15 CMDID_cmdFileOpenFromWeb...

Страница 199: ...EOL 47 CMDID_cmdEditDeleteWordLeft 48 CMDID_cmdEditDeleteWordRight 49 CMDID_cmdEditSelectAll 50 CMDID_cmdEditConvertTagCase 51 CMDID_cmdEditGotoLine 52 CMDID_cmdEditGotoPreviousStartTag 53 CMDID_cmdEd...

Страница 200: ...81 CMDID_cmdToolsSpellMark 82 CMDID_cmdToolsDocumentWeight 83 CMDID_cmdToolsThumbnails 84 CMDID_cmdToolsVerifyLinks 85 CMDID_cmdToolsValidateDoc 86 CMDID_cmdToolsValidateTag 87 CMDID_cmdToolsPalette...

Страница 201: ...dViewTagInsight 107 CMDID_cmdViewTagTip 108 CMDID_cmdViewEditorToolbar 109 CMDID_cmdViewEditorTab 110 CMDID_cmdViewToggleQuickBar 111 CMDID_cmdViewResults 112 CMDID_cmdOptionsSettings 113 CMDID_cmdOpt...

Страница 202: ...esources tab alignment deprecated in 4 5 SET_RESTAB_TABPOS 9 tab position top bottom SET_RESTAB_WIDTH 10 set Resource tab width SET_PALETTE_FILE 11 set current palette file SET_DYNAMIC_REFRESH 12 dyna...

Страница 203: ...ad of vsList SET_USER_DICTIONARY_FILE 37 user dictionary for integrated spell checker SET_SPELLCHECK_SKIPTAGS 38 skip tags and script blocks when spell checking SET_SHOW_QUICKBAR 39 show quickbar SET_...

Страница 204: ...INSTANCES 79 only for debugging multiple instances use same reg settings and would conflict SET_CLOSE_PARA_TAGS 80 add p when p toolbutton hit SET_PROMPT_ON_UNKNOWN_FILES 81 show warning before openin...

Страница 205: ..._COLS_ACTIVE 122 set remote columns as active SET_REMOTE_FILELIST_COL_SIZES 123 remote FileList Column Size Settings SET_REMOTE_FPTREE_HEIGHT 125 set height for remote file list deprecated in 4 5 SET_...

Страница 206: ..._HTML_HELP 170 set location ofhtml help files directory SET_DIR_THUMBNAILS 199 set location of stored thumbnails deleted at close SET_TAGCHOOSER_FILE 200 set location of tag chooser file SET_EXPBUILDE...

Страница 207: ...ET_EDITOR_USE_TABS 310 set editor SET_EDITOR_AUTOREPLACE 311 set editor SET_EDITOR_AUTOREPLACE_TRIGGERS 312 set editor SET_EDITOR_AUTOQUOTE 313 automatically close quotes SET_EDITOR_AUTOCLOSE_ASP 314...

Страница 208: ...PROJECT_LAST_OPENED 501 full path to last opened project SET_PROJECT_CLOSE_ALL_ON_OPEN 502 close all files when another project is opened SET_AUTOFORMAT_AFTER_DESIGN 600 run codesweeper when leaving d...

Страница 209: ...che idx Filename Here s the same code in VBScript set app Application for idx 0 to app DocumentCount 1 sFile app DocumentCache idx Filename next If you know the filename of an open document you can re...

Страница 210: ...ecially for large documents Allaire recommends that you only use Lines to evaluate single lines of text If you must use Lines to update many lines you can boost performance by wrapping the update in a...

Страница 211: ...all text from the active document Close function Close wbPromptToSave WordBool WordBool Closes the active document If wbPromptToSave is True the user is prompted to save any changes Returns True if th...

Страница 212: ...oves the next starting tag selecting it if wbSelect is True Returns False if no tag found GotoPreviousEndTag function GotoPreviousEndTag wbSelect WordBool WordBool Moves the previous end tag selecting...

Страница 213: ...ave is True ReplaceAll function ReplaceAll strSearch strReplace OleVariant bMatchCase WordBool Integer Replaces all occurrences of strSearch with strReplace matching case if bMatchCase is True Returns...

Страница 214: ...rrent selection Cursor Movement Procedures Use these methods to position the cursor If wbSelect is True then the current selection will be extended to the new cursor position procedure CursorDocEnd wb...

Страница 215: ...ad write Allows you to perform a local deployment by overriding the assigned deployment server list Instead the actual deployment path names assigned to the folders are used directly ServerCount Integ...

Страница 216: ...ideString const TargetFile WideString Integer Copies the source file to the target file location CopyFileExtended function CopyFileExtended const SourceFile WideString const TargetFile WideString Crea...

Страница 217: ...sed folder name This path can be used in conjunction with the GetDeployServer and GetFolderName methods GetFolderFileCount function GetFolderFileCount const sFolderName String Integer Returns the numb...

Страница 218: ...WideString bServerStatus WordBool Enable disables the deployment server specified by sServerName during deployment This allows some servers to be turned on or off during the deployment process SetLogF...

Страница 219: ...rmat Project Folder Subfolder1 SubFolder2 SubFolderN where Project represents the name of the project Folder represents the topmost folder in the project SubFolder1 represents a folder stored relative...

Страница 220: ...onse header field This field is included in 401 unauthorized response messages The field value consists of at least one challenge that indicates the authentication scheme s and parameters applicable t...

Страница 221: ...r field Password OleVariant Sets gets the Web server access password Proxy OleVariant Sets gets the proxy server You can use the GetApplicationSetting function with the following setting constants 50...

Страница 222: ...s gets the RECEIVED stream as a string Use SaveReceivedStreamToFile to save the received stream into a file Reference OleVariant Sets gets the Referer request header field This field allows the client...

Страница 223: ...hodistobeapplied Username OleVariant Sets gets the Web server access username Methods Abort procedure Abort Abort the current HTTP operation Get procedure Get Performs an HTTP GET method request Uses...

Страница 224: ...ttpPro State n ContentLength httpPro ContentLength n ContentType httpPro ContentType n RcvdCount httpPro RcvdCount n SentCount httpPro SentCount n StatusCode httpPro StatusCode n ReasonPhrase httpPro...

Страница 225: ...httpPro Post var sOutput httpPro ReceivedStreamAsString app activeDocument Text sOutput PostAsync procedure PostAsync Performs an HTTP POST method request asynchronously SaveReceivedStreamToFile proce...

Страница 226: ...ttp 127 0 0 1 test zip httpPro Get var bOverwrite false var sErrorMsg httpPro SaveReceivedStreamToFile d downloads test zip bOverwrite if sErrorMsg app MessageBox A error occured sErrorMsg HTTPProvide...

Страница 227: ...d FileCount Integer readonly The number of elements in the archive Overwrite WordBool Sets gets whether the newly extracted files overwrite any existing file in the ExtractionDir directory Password Ol...

Страница 228: ...tion should be stored in the archive Use bIncludeHiddenFiles and bIncludeVolumeLabels to restrict the inclusion of hiddenfilesorvolumelabels DonotsetthebIncludeVolumeLabelsparametertotrue unless you s...

Страница 229: ...de 210 sMessage ErrorZeroTested else if nStatusCode 240 sMessage ErrorDLLNotFound else if nStatusCode 250 sMessage ErrorInternalLogic else if nStatusCode 280 sMessage ErrorTempFile else if nStatusCode...

Страница 230: ...o determine whether the operation succeeded FileDate function FileDate nIndex Integer WideString Returns the datetime of an existing archive file element file directory volume by index The index value...

Страница 231: ...d zipfiles test zip Loop through the contents of the ZIP file for x 0 x lt ZIPPro FileCount x if ZIPPro FileName x cfabort vtm app MessageBox quot File found in the archive quot quot ZIPProvider quot...

Страница 232: ...l script use CreateObject AllaireClientApp TAllaireClientApp var app Application save the index of the current document so it can be returned to var nCurrentIdx app DocumentIndex start the table var s...

Страница 233: ...he ActiveDocument will be the new document created above app ActiveDocument InsertText sTable false switch to browse mode app CurrentView 2 wait for user to re enter edit mode while app CurrentView 1...

Страница 234: ...reClientApp set app Application save the index of the current document so it can be returned to nCurrentIdx app DocumentIndex start the table sTable b font color Blue Names of all open _ documents fon...

Страница 235: ...ocument created above app ActiveDocument InsertText sTable False switch to browse mode app CurrentView 2 wait for user to re enter edit mode while app CurrentView 1 Wait is a home grown routine to mak...

Страница 236: ...ME MyApp Dim app set app Application delete toolbar if it already exists if app ToolbarExists TB_NAME then app DeleteToolbar TB_NAME end if recreate toolbar app CreateToolbar TB_NAME dock it to the bo...

Отзывы: