View unanswered posts | View active topics



Reply to topic  [ 9 posts ] 
Specific/General Haxe Project Type Guidelines 
Author Message
Member

Joined: Fri Jan 21, 2011 5:17 am
Posts: 75
Reply with quote
I am trying to get up to speed in Haxe development. I have been happily using FD for ActionScript, Flex and AIR applications for several years so I think I understand how the compile/test cycle works in those environments well enough to be able to construct/debug most of those configuration issues.

As I am jumping into Haxe in the deep end -- needing to get my AGAL/Molehill stuff working -- I have mostly gotten started by following the nice documentation/tutorials for those advanced applications, which means I have not earned my stripes by working up from "Hello Haxe World". So, I have managed to locate/download/install the necessary libraries with the powerful haxelib utility, but that has left me with several different .hxproj files whose provenance I know not. By looking at the Properties , I can see that the two different types of projects I seem to have inherited mostly share the same properties -- differing primarily with regards to Additional Compiler Options.

What I am missing is the familiar context menu option in the Project Panel for specifying the Document Class to be targeted for compilation/test. In one type of .hxproj, I am able to select from a set of .hx files, the one I would like to test, but in the other type of .hxproj, that option is not present. Correspondingly, it looks, from the suite of directories and files, that some Haxe projects have been forced to produce a separate directory with a separate project file for each test program. That would not be nice. Nice would be a single project that can simply use Document Class to move from target program to target program.

A. Can someone tell me, using New Project, which type of Project I should choose to make sure I can use the Document Class way of doing business?
B. Can someone tell me whether or not there is any document/tutorial anywhere either in FlashDevelop-land or Haxe-land that describes what the results are for each of the 9 Haxe Project Types?


Fri Oct 04, 2013 4:29 am
Profile
Admin

Joined: Wed Aug 31, 2005 7:27 am
Posts: 12172
Location: London
Reply with quote
So you want to target Flash?

Haxe AS3 and JS project templates should be straightforward to use and you can choose the document class as in AS3.

OpenFL (replaces NME) is a bit more complicated as the actual project configuration should be modified in the application.xml/.nmml file and not in FD Project properties. It's a bit like AIR's application descriptor.


Sat Oct 05, 2013 10:13 pm
Profile WWW
Member

Joined: Fri Jan 21, 2011 5:17 am
Posts: 75
Reply with quote
Thanks for the information, Philippe, it gives me some clues.

I am not sure how the examples I have downloaded came to be -- what type of Haxe Project was chosen from which a particular .hxproj file was generated -- but I assumed, as with ActionScript projects, editing that file would NOT be the way to make manual changes to affect the fdbuild process. I did not see any documentation concerning the .hxml file whose behavior seemed more like what you throw off in the obj sub-directory with the clear comment that editing that temporary file would be fruitless.

The Haxe documentation does describe how you can discover the various compiler options they support, so knowing that the .hxml file is something the developer should use to control the build/test process, helps a lot. By looking at the various samples and playing around I will eventually discover what the best practice is for maintaining a large project with different executables in some reasonable directory structure without having to create/maintain separate projects per executable.

Your helpful reply suggests that I have yet to discover that maintaining a single project while targeting multiple platforms, probably is not possible. Where I do that today, for ActionScript applications, I manage to live in a single directory structure with a single FD project, but I admit I do make the target platform distinction in ant; so if that turns out to be the way to handle the matter in Haxe, I just hope they provide a similar suite of anttasks.


Sun Oct 06, 2013 2:13 am
Profile
Admin

Joined: Wed Aug 31, 2005 7:27 am
Posts: 12172
Location: London
Reply with quote
In general you should imagine that FD generates a hxml file from your project properties.
OpenFL also generates a hxml from your application.xml.

In any case, properly configuring your FD project is still recommended for optimal code completion. Especially if you try to leverage the Compilation Server.

OpenFL is designed to target multiple platforms (for games) and you'll have a drop-down in the main toolbar to choose the target.

In any case you can copy&paste the .hxproj project file and set a different platform for each. In which other case would you want to target multiple platforms?


Sun Oct 06, 2013 6:04 pm
Profile WWW
Member

Joined: Fri Jan 21, 2011 5:17 am
Posts: 75
Reply with quote
Unfair question, exposing this old geek that way!

The fact of the matter is that I have zero interest in games. My target is still the old fashioned desktop which is actually quite well served by AIR with Flex UI controls. My primary interest is in seeing what sort of 3D performance I can get via Haxe's ability to work with OpenGL in comparison with AGAL and Stage3D.


Sun Oct 06, 2013 7:28 pm
Profile
Admin

Joined: Wed Aug 31, 2005 7:27 am
Posts: 12172
Location: London
Reply with quote
Well that's why I asked ;)

OpenFL is what offers desktop openGl, but it's game orientated and not really UI.
There are a few UI libraries (like https://github.com/RealyUniqueName/StablexUI) but nothing up to comparison with Flex.

Alternatively there is Waxe project which offers native UI (wxWidget) and where you can mix an openGl view.


Mon Oct 07, 2013 10:18 am
Profile WWW
Member

Joined: Fri Jan 21, 2011 5:17 am
Posts: 75
Reply with quote
At this point I'm not sure exactly which platforms it will let me address, nor how difficult skinning will be, but I think the widgets in the HaxeUI package have been well done.

It gets a little confusing, especially if you have not consumed five years of the haxe/neko/nme jargon, and I know it is not your job to clarify it. The Haxe community owes you a deep debt of gratitude for supporting them. Indeed, as I have said previously, when one looks at all aspects of languages, tools, documentation, frameworks, infrastructures, etc., necessary to the business of building robust business applications with cross-platform capabilities, I am not sure but what the loss of whatever IDE you've settled upon is not the single most important consideration.

Thanks for the recommendations.


Mon Oct 07, 2013 5:20 pm
Profile
Admin

Joined: Wed Aug 31, 2005 7:27 am
Posts: 12172
Location: London
Reply with quote
Haxe doesn't automatically give you something universal (Flash/HTML/native desktop/native mobile/neko VM/etc. targets), but a common language and target-specific APIs that each framework/library must support, hopefully hiding the details.

You can think similarly of JavaScript: one language, multiple targets (browser, node.js,...).

OpenFL (formerly known as NME) is similar to AIR and tries to hide platform differences by re-implementing the Flash API for other targets - it comes at a price in terms of hidden complexity and occasional inconsistencies.

And Haxe UI libraries aren't very mature so it's difficult to give a good advice, but HaxeUI seems to be the closest to what you are looking for, with CSS styling and XML declarative layout.


Mon Oct 07, 2013 6:27 pm
Profile WWW
Member

Joined: Wed Apr 12, 2017 8:51 am
Posts: 1
Reply with quote
Java requires that every variable be introduced. Some more established dialects, for example, C, permit factors to go uninitialized, which can bring about arbitrary disappointments with secretive bugs. Java accompanies an extensive arrangement of classes and methods.Java is at present a standout amongst the most java programming pdf prominent programming dialects being utilized. It has around 10 million users.The most recent form is Java 8, the main bolstered form starting at 2016. Prophet (and others) has reported that utilizing more seasoned adaptations (than Java 8) of their JVM usage presents genuine dangers because of uncertain security issues.The Java dialect has experienced a few changes since the arrival of JDK (Java Development Kit) 1.0 on January 23, 1996, and in addition various increments of classes and bundles to the standard library.

JavaScript is a translated PC programming dialect formalized in the ECMAScript dialect standard. JavaScript motors translate and execute JavaScript. Java has a broad gathering of libraries javascript tutorials pdf that can be foreign made for use in projects. JavaScript does not give any way to import libraries or outer JavaScript code. JavaScript has no connection to Java beside having a C-like punctuation. JavaScript is likewise utilized as a part of conditions that are not Web-based. The JavaScript dialect itself (ECMAScript) is genuinely cross-program good. The primary employments of JavaScript are the accompanying.


Wed Apr 12, 2017 8:54 am
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 9 posts ] 

Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.