Maptitude GISDK Help

User Interaction

GISDK provides a set of functions for user interaction with the map display. These GISDK functions return scopes, points, circles, rectangles, and other regions marked by the user. Many of these same GISDK functions can be used in layout windows as well.

 

GISDK Function

Summary

ClickAndDragLayout()

Allows the user to pan around in a layout by dragging it to a new position

ClickCircle()

Awaits user input from the system pointer and returns a circle

ClickCoord()

Awaits user input from the system pointer and returns a coordinate

ClickCurve()

Awaits user input of control points from the system pointer and returns an array of coordinates that define a curve

ClickDragAndShow()

Allows a user to pan a map by dragging it to a new position

ClickEllipse()

Awaits user input from the system pointer and returns coordinates that define an ellipse

ClickEllipseScope()

Awaits user input from the system pointer, accepts an ellipse, and returns a scope

ClickLayout()

Allows user to edit annotations in the current map or layout

ClickLine()

Awaits user input from the system pointer and returns two coordinates that define a line

ClickPolyline()

Awaits user input from the system pointer and returns an array of coordinates that define a line

ClickRect()

Awaits user input from the system pointer and return two coordinates that define a rectangle

ClickRectScope()

Awaits user input from the system pointer, accepts a rectangle whose center is a valid world point, and returns a scope

ClickScope()

Awaits user input from the system pointer, accepts a rectangle, and returns a scope

ClickShape()

Awaits user input from the system pointer and returns an array of coordinates that define a closed polygon

ClickText()

Allows the user to enter text on the current map or layout

GetClickControl()

Determines whether the Ctrl key was pressed during a prior "Click" function

GetClickShift()

Determines whether the Shift key was pressed during a prior "Click" function

 

These GISDK functions should be called only from a macro that is activated from the menus, or from tools in toolboxes and toolbars, which are modeless dialog boxes that stay on the screen and are available for use at any time but permit other user activities. Calling one of these GISDK functions from any other type of dialog box often causes confusion about which window is active (the dialog box, versus the map); these modal dialog boxes require the user to respond before continuing the program.

 

When you use these GISDK functions, you can also use GetClickShift()and GetClickControl()to test the status of the Shift and Ctrl keys at the time the mouse was clicked. This enables you to distinguish a click from a Shift-click, Ctrl-click, or Ctrl-Shift-click. In the example shown below, dragging a circle creates a new selection set, while holding the Shift key and dragging a circle adds records to a selection set.

 

// Here is the definition of a selection tool

Tool "select by radius" 0, 0 icons: "select.bmp" do

     // Get the circle from the user

     c = ClickCircle("")

 

     // Check the Shift key...

     shift_key = GetClickShift()

 

     // Select as needed...

     if shift_key = "True" then

          SelectByCircle("Selection", "More", c)

     else

          SelectByCircle("Selection", "Several", c)

     endItem

 

 

©2025 Caliper Corporation www.caliper.com