Skip to main content

Native FileMaker & Structure

TheGoDraw3 is Native FileMaker, meaning the entire web application is run inside FileMaker with native FileMaker objects. Though it relies on the Zwibbler JavaScript library, everything is done inside FileMaker.

GoDraw3: Native FileMaker from Geist Interactive on Vimeo.

Native FileMaker

  1. The actual drawing is done in a web viewer object.
  2. Scripts can call functionality inside FileMaker
  3. Scripts contain options that are passed to the JavaScript library
  4. Buttons are used to call scripts
  5. GoDraw3 is a separate self-contained file.
  6. Card windows are used for the drawing canvas.

GoDraw3 Structure

GoDraw3 has a simple structure.

  1. The separate file named "GoDraw3" contains most the functionality. All you have to do is place this file along side your custom app, create an external reference inside your custom app to GoDraw3, and create a few scripts to call functionality from GoDraw3. This process is discussed in detail here.
  2. The drawing canvas is a window inside the GoDraw3 app that can be called from your custom app and can be opened. Our example calls it as a card window, which we recommend for the simple reason of being able to leverage the card window's features.
  3. The drawing canvas contains buttons which call FileMaker scripts. These scripts activate functionality in the web viewer application. 


The scripting structure is also straightforward. 

  1. A button on the drawing canvas calls a FileMaker script which are found in the Application Modules / Private / UI Scripts / ToolBars And Buttons folder.
    1. These scripts are simple in nature. They do three things:
      1. Set the options for the tool if applicable.
        1. This is the place to add options to the tool that override the default behavior. See here for more detail.
      2. Call a corresponding script starting with the word "Get". These are found in the Modules / GoDraw3 / Public / API / Editing Commands folder. These scripts add additional information to the options that are passed to the 
      3. Call the generic "Execute JavaScript ( { function, parameter, . . . } ) script. This script does the actual work of activating the web viewer application causing it to select the appropriate tool.