CHAOS UI Framework HX

Made a Github for my framework. It’s still buggie but I’m hashing everything out now. I started developing this framework in 07 in AS3 and just ported it over to Haxe using OpenFL this weekend. There is a lot of clean up and testing that needs to be done but I wanted to get it out there. It’s pretty much another UI Framework much like HaxeUI. I’ve used it in a lot of freelance projects, games and work projects at the current company I work at now. Everything is created using the OpenFL Drawing API. Filters aren’t working right now but it is something you can skin.

1 Like

Some of the UI Classes I got working.

AS3 Kids game I worked on in the past that use the framework. Giving an example of what it looks like skinned.

I’m doing a lot of bug fixes and things are starting to work better. Plus one of my friends already folk to code best to help me do fixes. We have plans to do some light mobile and smart device UI classes as well.

Very cool! What platforms are you testing/targeting?

We’ve had some issues with android/ios keyboards in form inputs.

1 Like

Pretty much all the platforms that OpenFL work on. I’m not going to go out of the way to be like HaxeUI in anyway, shape or form. I’ve never tested this on mobile but I want to make some mobile classes because it was one of the most requested things when I open source the AS3 code base.

You can always look at the UIDemo.hx class on how to put together stuff. You can even create a new OpenFL project and extend the UIDemo class just to see how things work. Trust me I would love for people to help me with this framework and grow it.

Just a little update, I got everything up and running at this point without crashing at all. The HTML5 target is kind of slow but everything else works great.

Since you are mentioning HaxeUI, where do you see the advantages of your framework compared to HaxeUI or StablexUI?

I never used HaxeUI and I never heard of StablexUI until this post. HaxeUI is able to run on different backends and frameworks including OpenFL while CHAOS UI only runs on OpenFL. I want to focus on getting CHAOS to be one of the best frameworks you can use for OpenFL. In CHAOS you can get UI Elements on the screen with very little effort because it only use one backend.

// List var list:ListBox = new ListBox();

list.addItem(new ListObjectData(“Erick”, “E”));
list.addItem(new ListObjectData(“Nick”, “N”));
list.addItem(new ListObjectData(“Bobby”, “B”));
list.addItem(new ListObjectData(“Danny”, “D”));
list.addItem(new ListObjectData(“Thomas”, “T”));

addChild(list);

Pretty much an example on how to use all the UI classes are in GitHub. Here are some of the classes that are used in the CHAOS UI Framework.

UI Elements

Toggle Button
Button
Radio Button
Check Box
ScrollBar
Slider Bar
ComboBox
ListBox
ScrollPane
TabPane
ItemPane
ToolTip
Label
Input
GridPane
AlertBox
Window
Bubble
LoaderBar
Menu

Layout

GridContainer
HorizontalContainer
VerticalContainer
FitContainer

Media

SoundManger
2D Panorama
DisplayVideo
DisplayImage

Now the way you layout an interface isn’t with XML you have to do it by hand. I do have another project called the CHAOS Engine that use JSON to display, update and remove items on screen but it’s still in AS3. As for look and feel of the elements you can use the UIBitmapManager and UIStyleManager.

Sounds nice :slight_smile: Do you have any interactive demos posted somewhere online?

The best way to see a live demo is to use the UIDemo.hx class. You can extend it by doing this:

package;

class Main extends UIDemo
{

public function new() 
{
	super();
	
	// Write code to adjust UI class here
}

}

That will pretty much put all of the main classes being use on the screen. This is how I would test my framework in AS3 and now Haxe. You can write some code right after the super(); call to do things like change values of a Button or ComboBox for example. Or like I state above use the UIBitmapManager and UIStyleManager to change the over all look and feel of the components on screen.

I’ll work on getting a SWF or HTML5 example online at a later date. However if you understand GitHub you can pull down the source code and give what I did above a shot.

Now runs on Flash/Air target

Nice job, sorry for old thread to open.

Chaos Frameworks looks like rich ui components wow.

How do you can build real menu and menuitem. But where is “Menubar” or “MenuStrip”

Thanks

The last picture that say TopLevel is the Menubar or MenuStrip you are looking for. You can look at the UIDemo.hx file and see how I create the menu. Let me know if that helps.

1 Like

Thanks I will check. Don’t worry! Great job! but I thought lime.ui.Window like alternative of Adobe Air NativeWindow to Lime/OpenFl.

PS: I have tried to build simple NativeWindow for Chaos Frameworks and it works only OpenFL/Lime. - If you know how does Window from lime.ui.Window works?

I am very hopeful to your next release with native window and native application

PS: Visual Studio 2015 Community can make static. yay I have tested with your frameworks into whole application over 5 mb ( just lime.ndl ) was embedded by VS 2015 Community.

It is finished binary for Windows 7 / 8 / 10 only

Thanks for giving the framework a try. I use a CHAOS Framework Draw class to draw all the UI elements. I was trying to focus on getting it running well in OpenFL/Lime first. Maybe I could look into updating the draw class to use different low level APIs later on down the line but right now this framework heavily use OpenFL There is also HaxeUI if you need something to be native. I’m all about giving the Haxe community more choice. The reason I use OpenFL because our framework at the company I work for plus a side project needs to run in HTML5. All the other platforms at this point is a bonus.

Yes good idea! If you have to get help. If I will fix it than I test chaos framework example functions like Halo MX ( created by Adobe System ).

Mdi canvas and mdi windows and docker ( if you drag dockedwindow to outside of application. I will try to code. Don’t worry me! Do you like html5?

You know HaxeUI has released next version like haxeui-core and haxeui-openfl and it works fine but it crashes if I open 2. Window . It is not good because framework freezes if it loads much embedded resources. So sad.

Chaos framework is like Aspire UI by Ghostwrite ( died website ) - I miss Aspire UI because it has a lot of components like button, combobox, checkbox, window and built-in alert and tab or navigator and more.

If you have idea than I can help you to write codes…

Hi, sorry to interject, but what do you mean exactly HaxeUI2 crashes when opening 2 windows? Do you mean opening the application twice? If so, it doesnt seem to be an issue for me:

Maybe you could explain and/or open an issue here: https://github.com/haxeui/haxeui-core/issues (as to not hijack this thread).

Cheers,
Ian

I mean i want create window like lime.ui.Window();

example:

var win:Window = new Window();
win.width = 400;
win.height = 300;
win.x = 300;
win.y = 200;
win.title = “2. Test Window”;
win.stage.addChild(new WindowScreen());
win.visible = false;

var btn:Button = new Button("Open Window);
btn.onclick = function(e){
win.visible = true
}
this.addChild(btn);

That is just example if i open 2. window from current application.