Flowgraph References Window
Provides a node reference browser for the flowgraph editor, showing usage statistics across all flowgraph projects.
Provides a node reference browser for the flowgraph editor, showing usage statistics across all flowgraph projects.
Overview
This module implements a flowgraph manager window that catalogs all available node types, tracks their usage across .flow.json files, and provides detailed inspection of individual nodes including pin layouts and behaviour metadata.
Window Properties
| Property | Value |
|---|---|
C.windowName | "fg_references" |
C.windowDescription | "References" |
Key Functions
| Function | Description |
|---|---|
C:init() | Registers the window and initializes search/filter state |
C:createNodeTable() | Builds the full node catalog from available templates |
C:findNodesRecursive(nodeDirectory) | Recursively discovers all node types from template tree |
C:checkFilesForNodes(initialCheck) | Scans .flow.json files in levels/gameplay/examples for node usage |
C:fillNodeTable(flowgraphDirectory) | Parses flowgraph JSON files and tallies node occurrences |
C:updateNodeOccurrence(nodeName, fileName) | Increments usage counters per node and per project |
C:filterNodes() | Applies filter mode (All / Current / Unused) and search text |
C:sortCategories() | Sorts category statistics by node type count descending |
C:sortProjects() | Sorts projects for the inspected node by occurrence count |
C:addPinsAndBehavioursForCategory(nodeName, category) | Adds runtime-only pins (flow, incomplete, complete, reset) based on node category |
C:pinExists(nodeName, direction, pinName) | Checks if a pin already exists on a node entry |
C:highlightText(label, highlightText) | Renders text with search matches highlighted in orange |
C:draw() | Main draw entry; switches between view mode 1 (list) and 2 (detail) |
C:drawViewMode1() | Draws the searchable node list with occurrence/project/category columns |
C:drawViewMode2() | Draws detailed node inspection: pin table, behaviours, project list |
Filter Modes
| Mode | Description |
|---|---|
All | Shows all known node types |
Current | Shows only nodes used in the currently open project |
Unused | Shows only node types with zero occurrences |
Usage Example
-- The references window is created as a flowgraph manager window
-- and registered during flowgraph editor initialization.
-- Users click "Load Data" to scan all projects for node usage.
-- Internally the window scans these directories:
-- /levels/**/*.flow.json
-- /gameplay/**/*.flow.json
-- /lua/ge/extensions/flowgraph/examples/**/*.flow.jsonNode Statistics
The window tracks:
- usedNoteTypeAmount - Number of unique node types found in projects
- usedNodeInstances - Total node instances across all projects
- categories - Per-category breakdown of type count and instance count
See Also
- Flowgraph Editor - Parent editor module
- Flowgraph Search - Text search within current project
- Flowgraph Variables - Variable management window
Flowgraph Properties
Flowgraph Properties panel for inspecting and editing selected node data, pin configurations, hardcoded values, custom properties, and graph metadata.
Flowgraph Search Window
Provides project-wide search for nodes, graphs, and pins inside the flowgraph editor with frecency-based ranking.