Incari Studio
2021.5
2021.5
  • Incari HMI Development Platform
  • Demo Projects
    • Overview
    • 4 Methods of Animation
    • Using APIs to Pull Dynamic Data
    • An Analog Clock
    • Image Sequence Button Animation
  • Getting Started
    • Requirements
    • What's New
    • Installation
    • Project Objects
      • Scene
      • Screen
    • Scene Objects
      • Camera
      • Group
      • Lights
      • List
      • Mesh
      • Sprite
      • Text
      • Web Sprite
      • Primitives
      • Screen Space Elements
    • Attributes
      • Attribute Types
        • Asset/Object Attribute
        • Boolean Attribute
        • Color Attribute
        • Numerical Attribute
      • Common Attributes
        • Object
        • Camera
        • Rotation Pivot
        • Sprite
        • Transformation
    • Data Types
      • Bool
      • Byte
      • Float
      • Int
      • String
      • Vector2
      • Vector3
      • Vector4
    • Terminology
  • Modules
    • Asset Manager
    • Animation Editor
    • Attribute Editor
    • Code Editor
    • Console
    • Exporter
    • Image Sequence Editor
    • Logic Editor
    • Global Preferences
    • Material Editor
    • Model Editor
    • Profiler View
    • Project Outliner
    • Project Settings
    • Scene Outliner
  • Toolbox
    • Actions
      • Delay Action
      • FadeFromTo Action
      • FadeTo Action
      • MoveBy Action
      • MoveTo Action
      • RotateBy Action
      • RotateTo Action
      • RotateFromTo Action
      • ScaleBy Action
      • ScaleTo Action
    • Array
      • Array Value
      • Clear Array
      • Concat Arrays
      • Get Array Element
      • Length of Array
      • Pop Array Element
      • Push Array Element
      • Set Array Element
    • Binary
      • Binary (Hex) Value
      • Concat Binaries
    • Communication
      • CAN
        • Events
          • On CAN Start
          • On CAN Stop
          • On CAN Packet Received
        • CAN Start
        • CAN Stop
        • CAN Send Packet
      • HTTP
        • Events
          • On HTTP Route
          • On HTTP Server Start
          • On HTTP Server Stop
        • HTTP Client
        • HTTP Response
        • HTTP Server Start
        • HTTP Server Stop
      • MQTT
        • Events
          • On MQTT Start
          • On MQTT Stop
          • On MQTT Topic
        • MQTT Start
        • MQTT Stop
        • MQTT Subscribe
        • MQTT Publish
      • Serial
        • Events
          • On Serial Start
          • On Serial Stop
          • On Serial Packet Receive
          • On Serial Error
        • Serial Start
        • Serial Stop
        • Serial Send Packet
    • DateTime
      • Date Time Formatter
      • Now (UTC)
      • System Time
      • Timezone Value
    • Development
      • Assert
      • Benchmark Get
      • Benchmark Start
      • Benchmark Stop
      • Clear Console
      • Console
      • Profiler Start
      • Profiler Stop
    • Dictionary
      • Clear Dictionary
      • Dictionary Value
      • Erase Dictionary Element
      • Get Dictionary Element
      • Get Dictionary Keys
      • Get Dictionary Values
      • Merge Dictionaries
      • Set Dictionary Element
      • Size of Dictionary
    • Events
      • Custom
        • Event Listener
        • Event Trigger
      • Gestures
        • On Swipe
        • On Tap
      • ImageSequence
        • On ImageSequence Frame Changed
        • On ImageSequence Pause
        • On ImageSequence Play
        • On ImageSequence Stop
      • Keyboard
        • On Key Press
        • On Key Release
      • List
        • On List Current Index Change
        • On List Entry Select
        • On List Load
      • Mouse
        • On Hover Enter
        • On Hover Leave
        • On Mouse Button Down
        • On Mouse Button Up
        • On Mouse Click
        • On Mouse Double Click
        • On Mouse Enter
        • On Mouse Leave
        • On Mouse Move
        • On Mouse Scroll
      • Object
        • On Alpha Change
        • On Opacity Change
        • On Position Change
        • On Rotation Change
        • On Scale Change
        • On Visibility Change
      • On-Screen Keyboard
        • On On-Screen Keyboard Arrow Down Pressed
        • On On-Screen Keyboard Arrow Up Pressed
        • On On-Screen Keyboard Enter Pressed
        • On On-Screen Keyboard Input Changed
        • On On-Screen Keyboard Key Pressed
      • Variables
        • On Variable Change
        • On Variable Set
      • Video
        • On Video Play
        • On Video Finish
      • Web
        • On Javascript Callback
      • WebSprite
        • On WebSprite Load
    • Flow Control
      • Branch
      • For Each Loop
      • For Loop
      • Index Switch
      • Is Equal
      • Is Greater Equal
      • Is Less Equal
      • Select Data
      • Sequential
      • Switch
      • Toggle
    • Functions
      • Function
        • Function Input
        • Function Output
    • Incari
      • Animation
        • Pause Animation
        • Play Animation
        • Stop Animation
      • ImageSequence
        • Play ImageSequence
        • Pause ImageSequence
        • Stop ImageSequence
        • Resume ImageSequence
        • Get Current ImageSequence Frame
        • Get ImageSequence Duration
        • Get ImageSequence FPS
        • Get ImageSequence Total Frames
        • Go To Next ImageSequence Frame
        • Go To Previous ImageSequence Frame
        • Show ImageSequence Frame
        • This Scene
      • List
        • Generate List
        • Next List Entry
        • Previous List Entry
        • Select List Entry
        • Set Active
        • Set Current Index
      • Object
        • Get Alpha
        • Get Material
        • Get Opacity
        • Get Position
        • Get Position Pixel
        • Get Rotation
        • Get Rotation 2D
        • Get Scale
        • Get Size Pixel
        • Get Tint
        • Get Visibility
        • Set Alpha
        • Set Material
        • Set Position
        • Set Position Pixel
        • Set Rotation
        • Set Rotation 2D
        • Set Scale
        • Set Size Pixel
        • Set Text
        • Set Tint
        • Set Visibility
        • Set Opacity
      • On-Screen Keyboard
        • On-Screen Keyboard Clear Input
        • On-Screen Keyboard Get Input
        • On-Screen Keyboard Move Selection
        • On-Screen Keyboard Press Button
      • Vector
        • Arc
          • Set ArcStart
          • Set ArcEnd
          • Get ArcStart
          • Get ArcEnd
        • Label
          • Get LabelText
        • Line
          • Set LineWidth
          • Get LineWidth
        • Pie
          • Set PieStart
          • Set PieEnd
          • Get PieStart
          • Get PieEnd
        • Rectangle
          • Set RectangleCorners
          • Get RectangleCorners
        • Set BackgroundColor
        • Get BackgroundColor
        • Set FillColor
        • Get FillColor
        • Set StrokeWidth
        • Get StrokeWidth
      • Video
        • Is Video Playing
        • Pause Video
        • Play Video
        • Seek Video
        • Stop Video
      • WebSprite
        • Get Remote URL
        • Set Remote URL
        • Web Sprite Reload
    • IO
      • Load File
      • Save File
    • Math
      • Absolute
      • Add
      • Average
      • Boolean
        • AND
        • Bool Value
        • Negate
        • OR
      • Ceil
      • Clamp
      • Decrement
      • Divide
      • Floor
      • Increment
      • Interpolate
      • Logarithm
      • Math Constant
      • Maximum
      • Minimum
      • Modulo
      • Multiply
      • Numerical Value
      • Power
      • Random
      • Range Mapper
      • Root
      • Rotation Matrix
      • Subtract
      • Trigonometry
        • Arc Cosine
        • Arc Sine
        • Arc Tangent
        • Cosine
        • Radian-Degree Converter
        • Sine
        • Tangent
      • Vector Value
    • String
      • Capitalize
      • CharCodeAt
      • Compare
      • Concat Strings
      • Contains
      • EndsWith
      • CryptoHash
      • Flatten
      • Format
      • IndexOf
      • Join
      • JSON Parse
      • JSON Stringify
      • LastIndexOf
      • Length
      • Lower
      • IsLower
      • MatchRegex
      • PaddingLeft
      • PaddingRight
      • RandomString
      • RemoveCharacters
      • Replace
      • ReplaceRegex
      • Reverse
      • Split
      • StartsWith
      • String Value
      • Trim
      • TrimLeft
      • TrimRight
      • Upper
      • IsUpper
    • Utilities
      • Color Value
      • Conversion
      • Create CustomID
      • Create Object
      • Get Command Line Option
      • Group
      • Interval
        • Reset Interval
        • Start Interval
      • Is Data Type
      • Is Object Type
      • System Call
      • Timeout
        • Cancel Timeout
        • Start Timeout
    • Variables
      • Variable Getter
      • Variable Setter
    • Web
      • Call JavaScript Function
Powered by GitBook
On this page
  • Introduction
  • External Links

Was this helpful?

  1. Toolbox

Events

PreviousSize of DictionaryNextCustom

Last updated 3 years ago

Was this helpful?

Introduction

Although many branches of Logic can be defined in Incari's Logic Editor, a branch will never be executed without being initiated by an Event. They define when, and under what conditions, functionality should be triggered. In both Incari and computer science in general, event systems define a relationship between the fulfillment of criteria and the set of instructions to be performed once those criteria are met, and are made up of two parts: triggers and listeners.

Triggers can be thought of as being like announcements. A real-world example of a trigger is a school teacher announcing that an exam's time limit has been reached. The other staff members and students are the listeners in this case, whereby the Event occurring prompts the staff members to begin collecting exam papers, while students stop writing and put down their pencils.

Events in Incari can be directly triggered by the user's input, as is the case with Keyboard and Mouse Events, or triggered automatically when something happens relating to an Object, Variable, Scene, or Screen. One of the most powerful aspects of Incari's Events is that you can even define your own custom triggers and listeners, to establish the criteria under which one part of your Logic causes the execution of others.

External Links

on Musing Mortoray.

What is event programming?