beautypg.com

Adobe Extending Dreamweaver CS4 User Manual

Page 297

background image

291

EXTENDING DREAMWEAVER CS4

Data sources

3

Dreamweaver goes through each file in the appropriate server model folder, calling the

findDynamicSources()

function in each file. For each value in the returned array, Dreamweaver calls the

generateDynamicSourceBindings()

function in the same file. It is done to get a new list of all the fields in each

data source for the document of the user. Those fields are presented to the user as a tree control in the Dynamic
Data or the Dynamic Text dialog box or in the Bindings panel. The data source tree for an ASP document appears
as shown in the following example:

Recordset (Recordset1)

ColumnOneInRecordset
ColumnTwoInRecordset

Recordset (Recordset2)

ColumnOfRecordset

Request

NameOfRequestVariable
NameOfAnotherRequestVariable

Session

NameOfSessionVariable

4

If the user double-clicks a data source name in the Bindings panel, Dreamweaver calls the

editDynamicSource()

function to handle editing within the tree.

5

If the user clicks the Minus (-) button, Dreamweaver gets the current node selection from the tree and passes it to
the

deleteDynamicSource()

function. The function deletes the code that was added earlier with the

addDynamicSource()

function. If it cannot delete the current selection, the function returns an error message.

After the

deleteDynamicSource()

function returns, Dreamweaver refreshes the data source tree by calling the

findDynamicSources()

and the

generateDynamicSourceBindings()

functions.

6

If the user selects a data source and clicks OK in the Dynamic Data or the Dynamic Text dialog box, Dreamweaver
calls the

generateDynamicDataRef()

function. It does the same when the user clicks Insert or Bind in the

Bindings panel. The return value is inserted in the document at the current insertion point.

7

If the user edits a dynamic data object using the Dynamic Data, the selection in the data source tree must be
initialized to the object. Same is the case if the user edits a dynamic data object using the Dynamic Text dialog box.
To initialize the tree control, Dreamweaver goes through each file in the appropriate server model folder. For
example, the Configuration/DataSources/ASP_Js folder. Dreamweaver goes through each file calling the
implementation of the

inspectDynamicDataRef()

function.

Dreamweaver calls the

inspectDynamicDataRef()

function to convert the dynamic data object back from the

code in the user document to an item in the tree. (This process is the reverse of what occurs when the

generateDynamicDataRef()

function is called.) If the

inspectDynamicDataRef()

function returns an array that

contains two elements, Dreamweaver provides visual cues to the tree item that is bound to the current selection.

8

Every time the user changes the selection, Dreamweaver calls the

inspectDynamicDataRef()

function.

Dreamweaver does it to determine whether the new selection is dynamic text or a tag with a dynamic attribute. If
it is dynamic text, Dreamweaver displays the bindings for the current selection in the Bindings panel.

9

It is possible to change the data format for a dynamic text object or a dynamic attribute that the user has already
added to the page. To do it, use the Dynamic Data or the Dynamic Text dialog box or the Bindings panel. When
the format changes, Dreamweaver calls the

generateDynamicDataRef()

function to get the string to insert into

the document of the user. Then it passes that string to the

formatDynamicDataRef()

function (see

formatDynamicDataRef()

” on page 307). The string that the

formatDynamicDataRef()

function returns is

inserted in the document of the user.

This manual is related to the following products: