Skip to main navigation Skip to main content Skip to page footer

Open-Source, Data-Driven Dialog Design for Java & Installer Applications

Wise Dialog Architect is an open-source, modular system for designing, editing, and running dialogs using a structured, property-driven model.

It combines a visual dialog designer with a runtime execution engine, allowing dialogs to be authored visually, stored as data (such as JSON), and rendered dynamically at runtime, without hard-coding layouts or UI logic.

Built for installer authors, platform engineers, and tool developers, Wise Dialog Architect cleanly separates design-time tooling from runtime execution, making it ideal for modern, extensible Java applications.

Why Wise Dialog Architect?

Traditional dialog builders often:

  • Lock UI definitions into code
  • Tie layouts directly to implementation logic
  • Make reuse, versioning, and automation difficult

Wise Dialog Architect takes a fundamentally different approach.

Dialogs are data.
The editor is just one way to create them.

Because the entire dialog is model-driven, you can:

  • Design dialogs visually
  • Generate or modify them programmatically
  • Store and version them like any other asset
  • Render them anywhere the runtime is embedded

And because it’s open source, you stay in control, no proprietary formats, no vendor lock-in.

Key Features

Visual Dialog Layout

  • Compose dialogs from a palette of controls
  • Click-to-place, drag, resize, and align on a live design surface
  • Dialog chrome (title, size, frame) is editable just like controls

Property- and Event-Driven Architecture

  • Control attributes and behavior are stored as structured key/value data
  • Properties and events live in the model, not in UI code
  • Design-time and runtime stay perfectly synchronized

Fully Extensible

  • Register custom control types using ToolRegistry
  • Define how properties bind to Swing components
  • Define how events are wired and dispatched
  • Provide custom property dialogs, or fall back to the built-in generic editor

Runtime Dialog Execution

  • Render dialogs directly from the dialog model
  • No designer dependency required at runtime
  • Events are dispatched to your application via a clean, structured API
  • Ideal for installers, setup flows, admin tools, and embedded utilities

Modular Architecture

Wise Dialog Architect is delivered as a clean Maven multi-module project, so you only ship what you need.

ModuleArtifactDescription
Runtimedialogeditor-runtimeCore dialog model, property/event binding, and runtime dialog execution
Designerdialogeditor-designerVisual design surface, selection, resize handles, and design-time behavior
Appdialogeditor-appSample full editor, minimal editor, and launcher

You can:

  • Embed the runtime only to render dialogs
  • Embed designer + runtime to build your own editor
  • Extend or customize without forking the core

Design-Time Experience

The Designer module provides a complete visual editing experience while remaining UI-agnostic and host-driven.

Design Surface

  • Live dialog preview with chrome and client area
  • Transparent overlay for selection and resize handles
  • Tool-driven behavior (pointer vs placement)

Selection & Interaction

  • Select dialogs or individual controls
  • Resize via edge and corner handles
  • Move controls via drag gestures
  • Keyboard focus is managed to avoid accidental component activation

Property Editing

  • Dialog-level properties editor (title, size, layout)
  • Generic control properties editor (properties + events)
  • Host applications can override with control-specific property dialogs

Runtime Model

At the core of Wise Dialog Architect is a simple, explicit, and serializable dialog model.

Dialog Model

  • Dialog title and dimensions
  • List of controls
  • Serializable (e.g. JSON via application layer)

Control Model

Each control defines:

  • Control type (label, button, etc.)
  • Identity (id and name)
  • Property map (layout and control-specific attributes)
  • Event map (event slot → event identifier)

This makes dialogs:

  • Portable
  • Versionable
  • Scriptable
  • Easy to generate or transform outside the editor

Property & Event Binding

Wise Dialog Architect uses explicit bindings, no hidden magic.

Property Sets

  • Bind model properties to Swing component state
  • Handle layout (x, y, width, height) and behavior
  • Keep model and UI synchronized automatically

Event Sets

  • Declare event slots (e.g. onClick)
  • Wire listeners at runtime
  • Dispatch structured events back to the application

Each runtime event includes:

  • Source control
  • Event type
  • Event identifier
  • Optional contextual data

Intended Use Cases

  • Installer and setup dialog authoring
  • Visual tooling inside Java applications
  • Data-driven configuration dialogs
  • Embeddable dialog editors
  • Replacing hard-coded Swing dialogs with maintainable models

Built for Platform Builders

Wise Dialog Architect isn’t a toy GUI builder, it’s a dialog architecture.

If you need:

  • Long-term maintainability
  • Data-driven UI
  • Clean separation between design and execution
  • An open-source foundation you can trust

Wise Dialog Architect delivers!

Get the Source Code

Checkout the Wise Dialog Architect source code from the Wise Pantheon and start developing with it today.

Wise Dialog Architect is a open-source project licensed under the Apache License. Want to contribute, visit the Wise Dialog Architect Page @ the Wise Pantheon