### HaxeUI Getting Started Source: https://haxeui.org/api/haxe/ui/components/verticalrule Guides for getting started with HaxeUI, including installation and basic setup. ```APIDOC ## Getting Started with HaxeUI This section covers the initial steps to start using HaxeUI. ### Installation 1. **Install Haxe**: Ensure you have Haxe installed on your system. 2. **Install HaxeUI**: Use `haxelib install haxeui` to install the core library. ### Backends HaxeUI supports various backends for different platforms: * **Composite Backends**: `haxeui-html5`, `haxeui-kha`, `haxeui-openfl`, `haxeui-flixel`, `haxeui-nme`, `haxeui-heaps`, `haxeui-raylib` * **Native Backends**: `haxeui-hxwidgets` ### Hello World Create your first HaxeUI application by following the 'Hello World' guide. ### Next Steps Explore guides on Modules, Backends, Custom Components, Styling, Events, Scripting, Animation, and Themes. ``` -------------------------------- ### HaxeUI Getting Started Source: https://haxeui.org/api/getting-started/backends/index.html Guides for installing Haxe and HaxeUI, including setup for various backends. ```APIDOC ## Getting Started with HaxeUI ### Installation This section covers the installation of Haxe and HaxeUI, along with instructions for setting up different backends. #### Installing Haxe [Instructions for installing Haxe] #### Installing HaxeUI [Instructions for installing HaxeUI] ### Backends HaxeUI supports multiple backends for rendering. #### Composite Backends - haxeui-html5 - haxeui-kha - haxeui-openfl - haxeui-flixel - haxeui-nme - haxeui-heaps - haxeui-raylib #### Native Backends - haxeui-hxwidgets ### Hello World [Guide to creating a simple HaxeUI application] ### Next Steps [Guidance on further learning and development] ``` -------------------------------- ### HaxeUI Installation and Setup Source: https://haxeui.org/api/haxe/ui/core/componentcontainer Instructions on how to install Haxe and HaxeUI, including backend setup. ```APIDOC ## HaxeUI Installation and Setup ### Description This guide details the steps required to install Haxe and HaxeUI, along with instructions for setting up various backend targets. ### Installing Haxe Ensure you have Haxe installed on your system. Refer to the official Haxe website for installation instructions. ### Installing HaxeUI Use Haxe's package manager (haxelib) to install HaxeUI: ```bash haxelib install haxeui ``` ### Backends HaxeUI supports multiple backends for rendering. Choose and install the backend that suits your project: **Composite Backends:** - `haxeui-html5` - `haxeui-kha` - `haxeui-openfl` - `haxeui-flixel` - `haxeui-nme` - `haxeui-heaps` - `haxeui-raylib` **Native Backends:** - `haxeui-hxwidgets` Install a backend using: ```bash haxelib install [backend-name] ``` ### Hello World Once installed, you can create a simple HaxeUI application to verify the setup. ``` -------------------------------- ### Install OpenFL dependencies Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-openfl.html Install OpenFL and run the setup command. ```haxe haxelib install openfl haxelib run openfl setup ``` -------------------------------- ### Install NME Dependencies Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-nme.html Install the NME framework and run the setup command. ```haxe haxelib install nme haxelib run nme setup ``` -------------------------------- ### HaxeUI Installation Source: https://haxeui.org/api/haxe/ui/animation/animation Instructions for installing Haxe and HaxeUI, including backend setup. ```APIDOC ## HaxeUI Installation ### Description This guide details the steps required to install Haxe and HaxeUI, along with configuring different backends for rendering. ### Installing Haxe Ensure you have Haxe installed. Download the latest version from the official Haxe website. ### Installing HaxeUI Use Haxe's package manager, `haxelib`, to install HaxeUI: ```bash haxelib install haxeui ``` ### Backends HaxeUI requires a backend to render the UI. Choose and install a backend based on your target platform: **Composite Backends:** - `haxeui-html5` - `haxeui-kha` - `haxeui-openfl` - `haxeui-flixel` - `haxeui-nme` - `haxeui-heaps` - `haxeui-raylib` **Native Backends:** - `haxeui-hxwidgets` Install a backend using `haxelib`: ```bash haxelib install haxeui-[backend_name] ``` Example for HTML5 backend: ```bash haxelib install haxeui-html5 ``` ``` -------------------------------- ### HaxeUI Installation Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-kha.html Guide on how to install Haxe and HaxeUI, including setting up the necessary tools. ```APIDOC ## HaxeUI Installation ### Description This section details the steps required to install Haxe and HaxeUI to begin developing applications. ### Installing Haxe First, ensure you have Haxe installed on your system. Download the latest stable version from the official Haxe website. ### Installing HaxeUI Once Haxe is installed, you can install HaxeUI using the Haxe package manager (haxelib): ```bash haxelib install haxeui ``` Additional backend libraries can be installed similarly, for example: ```bash haxelib install haxeui-html5 ``` ``` -------------------------------- ### Install haxeui-kha Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-kha.html Install the haxeui-kha backend using haxelib. Ensure haxeui-core is installed first. ```bash haxelib install haxeui-kha ``` -------------------------------- ### Install haxeui-html5 Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-html5.html Install the haxeui-html5 library using haxelib. This requires haxeui-core to be installed first. ```bash haxelib install haxeui-html5 ``` -------------------------------- ### HaxeUI Installation Source: https://haxeui.org/api/haxe/ui/containers/dialogs/filedialogtypes Instructions for installing HaxeUI and its various backends. ```APIDOC ## Installing HaxeUI ### Description This guide covers the installation process for HaxeUI, including setting up Haxe and choosing a backend. ### Steps 1. **Install Haxe**: Follow the official Haxe installation guide. 2. **Install HaxeUI**: Use Haxe's package manager (`haxelib`) ```bash haxelib install haxeui-core ``` 3. **Install a Backend**: Choose and install a backend library. - **HTML5**: `haxelib install haxeui-html5` - **Kha**: `haxelib install haxeui-kha` - **OpenFL**: `haxelib install haxeui-openfl` - **hxWidgets**: `haxelib install haxeui-hxwidgets` - **Other backends**: Refer to specific backend documentation. ``` -------------------------------- ### HaxeUI Installation Source: https://haxeui.org/api/haxe/ui/graphics/componentgraphics Instructions for installing Haxe and HaxeUI. ```APIDOC ## HaxeUI Installation ### Description This guide covers the steps required to install Haxe and HaxeUI to begin developing applications. ### Prerequisites 1. **Install Haxe**: Download and install the latest stable version of Haxe from the official Haxe website. ### Installing HaxeUI Use Haxe's package manager, `haxelib`, to install HaxeUI and its desired backends: ```bash haxelib install haxeui-core haxelib install haxeui-[backend-name] ``` Replace `[backend-name]` with the specific backend you intend to use (e.g., `haxeui-html5`, `haxeui-openfl`). ### Example: Installing for HTML5 ```bash haxelib install haxeui-core haxelib install haxeui-html5 ``` ``` -------------------------------- ### HaxeUI Installation Source: https://haxeui.org/api/haxe/ui/constants/scalemode Instructions for installing Haxe and HaxeUI, including setting up the development environment. ```APIDOC ## HaxeUI Installation ### Description This guide provides step-by-step instructions for installing Haxe and HaxeUI to begin developing cross-platform applications. ### Installing Haxe First, ensure you have Haxe installed. Download the latest stable version from the official Haxe website ([https://haxe.org/download/](https://haxe.org/download/)). Follow the installation instructions for your operating system. ### Installing HaxeUI Once Haxe is installed, you can install HaxeUI using Haxelib, the Haxe package manager: ```bash haxelib install haxeui-core haxelib install haxeui-hxwidgets # Or your preferred backend, e.g., haxeui-html5 ``` ### Verifying Installation After installation, you can verify it by creating a simple Haxe project and including HaxeUI. **Example Project Setup:** 1. Create a new Haxe project: ```bash haxe -lib haxeui-core -lib haxeui-hxwidgets -main Main --interp ``` 2. Create a `Main.hx` file with basic HaxeUI code. ``` -------------------------------- ### Install haxeui-hxwidgets via HaxeLib Source: https://haxeui.org/api/getting-started/backends/native-backends/haxeui-hxwidgets.html Install the haxeui-hxwidgets library after installing its dependencies. ```bash haxelib install haxeui-hxwidgets ``` -------------------------------- ### Install haxeui-raylib Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-raylib.html Install the haxeui-raylib library via haxelib. ```haxe haxelib install haxeui-raylib ``` -------------------------------- ### Install haxeui-openfl Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-openfl.html Install the haxeui-openfl library via haxelib. ```haxe haxelib install haxeui-openfl ``` -------------------------------- ### Install Flixel Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-flixel.html Install and configure the Flixel library. ```haxe haxelib install flixel haxelib run lime setup flixel ``` -------------------------------- ### Install HaxeUI-Flixel Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-flixel.html Install the HaxeUI-Flixel library via haxelib. ```haxe haxelib install haxeui-flixel ``` -------------------------------- ### HaxeUI Guides Source: https://haxeui.org/api/getting-started/backends/index.html Detailed guides on various aspects of HaxeUI development. ```APIDOC ## HaxeUI Guides This section provides in-depth guides on specific HaxeUI features and concepts. ### Modules - Backends - Custom Components - Binding - Styling - Events - Scripting - Animation - Themes - Native ``` -------------------------------- ### Install haxeui-heaps via haxelib Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-heaps.html Install the haxeui-heaps library using the Haxe library manager. ```shell haxelib install haxeui-heaps ``` -------------------------------- ### Install Kha Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-kha.html Install the Kha dependency by initializing a git repository and adding Kha as a submodule. Alternatively, use the HaxeUI command line tools. ```bash git init git submodule add https://github.com/KTXSoftware/Kha git submodule update --init --recursive ``` -------------------------------- ### Install HaxeUI-NME via Haxelib Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-nme.html Install the HaxeUI-NME library after ensuring haxeui-core is present. ```haxe haxelib install haxeui-nme ``` -------------------------------- ### Install hxWidgets via HaxeLib Source: https://haxeui.org/api/getting-started/backends/native-backends/haxeui-hxwidgets.html Install the hxcpp and hxWidgets libraries required for the haxeui-hxwidgets backend. ```bash haxelib install hxcpp haxelib install hxWidgets ``` -------------------------------- ### Initialize HaxeUI Toolkit in Kha Application Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-kha.html Initialize the Kha system, load assets, initialize HaxeUI Toolkit, create a UI component, add it to the screen, and set up a render loop to display the UI. ```haxe class Main { public static function main() { kha.System.start({}, function ( _ ) { kha.Assets.loadEverything(function() { haxe.ui.Toolkit.init(); final screen = haxe.ui.core.Screen.instance; final ui = haxe.ui.ComponentBuilder.fromFile("ui.xml"); screen.addComponent(ui); kha.System.notifyOnFrames(function( framebuffers: Array ) { final fb = framebuffers[0]; final g2 = fb.g2; g2.begin(true, kha.Color.White); screen.renderTo(g2); g2.end(); }); }); }); } } ``` -------------------------------- ### Initialize hxWidgets Application Source: https://haxeui.org/api/getting-started/backends/native-backends/haxeui-hxwidgets.html Manual setup of the hxWidgets application, including frame creation and the event loop. ```haxe static function main() { var app = new App(); app.init(); var frame:Frame = new Frame(null, "My App"); frame.resize(800, 600); frame.show(); app.run(); app.exit(); } ``` -------------------------------- ### Toolkit Initialization and Configuration Source: https://haxeui.org/api/haxe/ui/toolkit Methods and properties for initializing the HaxeUI application and accessing global configuration settings. ```APIDOC ## Static Methods ### init - **Description**: Initializes the HaxeUI toolkit. - **Parameters**: options (Null<>) - Optional - Configuration options for the toolkit. ### build - **Description**: Builds the HaxeUI application components. ### callLater - **Description**: Schedules a function to be called later. - **Parameters**: fn (() -> Void) - Required - The function to execute. ## Static Properties - **assets** (ToolkitAssets) - Read-only - Access to toolkit assets. - **autoScale** (Bool) - Global auto-scaling setting. - **autoScaleDPIThreshold** (Int) - Read-only - DPI threshold for auto-scaling. - **backendProperties** (Properties) - Read-only - Backend-specific properties. - **initialized** (Bool) - Read-only - Indicates if the toolkit is initialized. - **nativeConfig** (GenericConfig) - Native configuration settings. - **pixelsPerRem** (Int) - Scaling factor for rem units. - **properties** (Properties) - General toolkit properties. - **roundScale** (Bool) - Whether to round scale values. - **scale** (Float) - Global scale factor. - **scaleX** (Float) - Horizontal scale factor. - **scaleY** (Float) - Read-only - Vertical scale factor. - **screen** (Screen) - Access to screen information. - **styleSheet** (CompositeStyleSheet) - Global stylesheet. - **theme** (String) - Current active theme. ``` -------------------------------- ### Create Kha Project with HaxeUI Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-kha.html Use the HaxeUI command line tools to create a new skeleton Kha application with HaxeUI support. ```bash haxelib run haxeui-core create kha ``` -------------------------------- ### Install Heaps dependency Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-heaps.html Install the required Heaps library dependency. ```shell haxelib install heaps ``` -------------------------------- ### Install wxWidgets on OSX Source: https://haxeui.org/api/getting-started/backends/native-backends/haxeui-hxwidgets.html Use Homebrew to install the wxWidgets library on macOS. ```bash brew update brew install wxwidgets ``` -------------------------------- ### Install raylib-haxe dependency Source: https://haxeui.org/api/getting-started/backends/composite-backends/haxeui-raylib.html Install the required raylib-haxe library via haxelib. ```haxe haxelib install raylib-haxe ``` -------------------------------- ### Create HaxeUI Backend with haxeui-hxwidgets Source: https://haxeui.org/api/getting-started/hello-world.html Run this command in your terminal to create the necessary files for the haxeui-hxwidgets backend. This command does not overwrite existing files. ```bash haxelib run haxeui-core create hxwidgets ``` -------------------------------- ### Install wxWidgets on Linux (Older versions) Source: https://haxeui.org/api/getting-started/backends/native-backends/haxeui-hxwidgets.html Install required wxWidgets development packages for older Debian or Ubuntu systems. ```bash apt-get install libwxgtk3.0-dev libwxbase3.0-dev libwxgtk-webview3.0-dev ``` -------------------------------- ### Install wxWidgets on Linux (Debian/Ubuntu 20.04+) Source: https://haxeui.org/api/getting-started/backends/native-backends/haxeui-hxwidgets.html Install required wxWidgets development packages for modern Debian or Ubuntu systems. ```bash apt-get install libwxgtk3.0-gtk3-dev libwxbase3.0-dev libwxgtk-webview3.0-gtk3-dev ```