SapphireSteel Forum
Welcome, Guest. Please login or register.
May 20, 2013, 05:29:26 AM

Login with username, password and session length
Search:     Advanced search
Welcome to the SapphireSteel forum - for discussion of the Ruby In Steel and Amethyst IDEs
3883 Posts in 799 Topics by 669 Members
Latest Member: m
* Home Help Search Login Register
+  SapphireSteel Forum
|-+  General
| |-+  Amethyst
| | |-+  Creating libraries for Flash projects
« previous next »
Pages: 1 [2] Print
Author Topic: Creating libraries for Flash projects  (Read 8065 times)
Dermot
Administrator
Hero Member
*****
Posts: 1005


« Reply #15 on: September 24, 2010, 11:50:50 AM »

OK - thanks - I've fixed them now.

Only the Config constants tab works correctly in this edge release (I forgot to initialize the other three with the Flash profile data - brain dead). These tabs, when they are working correctly, should identically follow the tabs in the Flash IDE 'Advanced ActionScript 3.0 Settings' page. The profile defined in the Amethyst project file is imported into the Flash IDE before compilation starts and so will replace any setting that are there - and this profile will remain active in the IDE until you change it or Amethyst loads another one.

Dermot
Logged
Jason King
Full Member
***
Posts: 159


« Reply #16 on: October 19, 2010, 09:43:14 PM »

Hi Dermot,

Regarding the SWF-based libraries as a reference... this isn't exactly working as I thought.  Recently I started up a new project and I now get...

Code:
Warning - library 'C:\Projects\Foo\flash\BarLib\..\..\release\BarLib.swc' does not exist. Check Project References.

I looked over my old project (which I used as the framework for my new project) and noticed that I had not cleaned up an old SWC when I had originally tested this new feature out.  Is this by design?  Do I need to still create the SWC even for SWF-based libraries?

Please advise.

Thanks,
Jason
Logged
Dermot
Administrator
Hero Member
*****
Posts: 1005


« Reply #17 on: October 20, 2010, 03:38:37 AM »

Hi Jason,

I think that all you need to do is remove the reference from the solution (right click on BarLib in References and select Remove).

All that is happening here is that the Intellisense system is attempting to open the swc to extract information.

Dermot
Logged
Jason King
Full Member
***
Posts: 159


« Reply #18 on: October 20, 2010, 09:09:10 AM »

Hi Dermot,

Actually I want to have my BarLib.swf be used as a reference.  What I need clarification on is whether it is required to have Export SWC toggled on to get the reference system to work with SWF-based libraries.

Please let me know.

Thanks,
Jason
Logged
Dermot
Administrator
Hero Member
*****
Posts: 1005


« Reply #19 on: October 20, 2010, 11:55:07 AM »

I think it depends on whether there is any ActionScript code inside the Flash FLA file. If you have a class 'A' defined entirely inside the FLA file, then the only way for the Amethyst IntelliSense system to know about A is to examine the output SWC from the Flash IDE compilation process. If you have a class B which is defined in a library or in the main Amethyst project, then Amethyst should know about it and you shouldn't need the export.

When you reference an SWC in the References folder, Amethyst extracts all the class and method info from the SWC and  includes it in its IntelliSense database.

However, I think Amethyst might get a bit confused if A is inside the FLA and B is outside - not sure here.

Dermot
Logged
Jason King
Full Member
***
Posts: 159


« Reply #20 on: October 20, 2010, 04:22:16 PM »

Hi Dermot,

You get a warning every time you load the amproj without the SWC.  So as far as I can tell it is required - unless you tell me it is not.  As it stands, I get the warning and the icon in the References shows a yellow ! warning sign.  Once I build the SWC and reload my amproj then the References show a blue icon.

Cheers,
Jason
Logged
san83
Newbie
*
Posts: 9


« Reply #21 on: October 23, 2010, 09:01:41 AM »

Hi Dermot,


The idea of compiling FLA files from Amethyst, with different profiles (Release | Debug) - it's cool!
When the test has encountered a problem.
There is a file test.fla. In Amethyst created a project such as Flash. In the project properties set ?Library?. Added to the project test.fla. In CS4 created two profiles and exported ?release.xml? and ?debug.xml?. Import them into Project Amethyst, respectively, for the Release configuration and Debug. I try to publish. CS4 error.

Found that at the publication of the Amethyst is incorrect transmission profile. Namely:
Publish settings → Flash → Settings → Library path = $ (AppConfig) / ActionScript 3.0/libs
In amethyst:
Properties → Flash IDE → Library path = $ (AppConfig) / ActionScript 3.0/libs
Following the publication of Amethyst, in CS4 changing the settings on:
Publish settings → Flash → Settings → Library path = / ActionScript 3.0/libs

This leads to errors in the publication. Moreover, after the publication changed the file test.fla. Although I did not green triangle icon in CS4. Change test.fla tested several times.
(It should be checked ?Enable profile?)
Version Amethyst: 1.1.0.1006

Thanks,
San
Logged
Dermot
Administrator
Hero Member
*****
Posts: 1005


« Reply #22 on: October 24, 2010, 03:32:24 AM »

Hi San,

What is happening is that $(AppConfig) is being treated as an MSBuild macro. MSBuild doesn't know about AppConfig so it sets it to null - and so it disappears.

There is a simple fix for this which is to change the '$' into '%x24' which MSBuild translates to '$' before it is sent to Flash CS4 so Flash is happy with it.

There are two ways of changing the '$':

1) Unload the project and edit the project file - locate '$(AppConfig)' and change it to '%x24(AppConfig)' the save and reload the project file.

2) use the 'Edit Profile XML' button and so the same - a bit easier.

However, I've noticed two  minor problems:

a) The Edit XML Profile doesn't refresh the properties display even though the values have been changed. You have to close the property page and reopen it to see the changes.

b) you can't edit the Library path directly. This would be the simplest way to do it if it worked.

I'll fix these two problems and see if I can come up with a reasonable way to doing the '$' -> '%x24' thing automatically.

Dermot

Logged
san83
Newbie
*
Posts: 9


« Reply #23 on: October 24, 2010, 11:52:44 AM »

Hi Dermot

Unfortunately I could not build the project without errors.
I manually changed in the project file '$(AppConfig)' to '%x24(AppConfig)' (<AS3LibraryPaths>). After restarting the project in the properties display the path of '%x24(AppConfig)/ActionScript 3.0/libs'.
Unfortunately when you publish the same path is passed to the CS4.
Publish settings → Flash → Settings → Library path =%x24(AppConfig)/ActionScript 3.0/libs
CS4 gives an error when publishing.
Can I do something wrong?

Thanks,
San
Logged
Dermot
Administrator
Hero Member
*****
Posts: 1005


« Reply #24 on: October 24, 2010, 12:42:16 PM »

Hi San,

Did you edit the correct configuration?

There are sections for each configuration - one for Release, one for Debug and so on.

In the project file make sure you have changed all $(AppConfig) to %x24(AppConfig)

Dermot

UPDATE:

Sorry - I've just realized that isn't the problem. The problem is there shouldn't be an 'x'

I have:

Code:
<AS3LibraryPaths>F:\Data\Test\Chapter12\source\Flash;%24(AppConfig)\AmethystLibrary1.swc</AS3LibraryPaths>

in my project file

and this works (for me).

Apologies again!

Dermot
« Last Edit: October 24, 2010, 01:26:49 PM by Dermot » Logged
san83
Newbie
*
Posts: 9


« Reply #25 on: October 25, 2010, 07:55:31 AM »

Hi, Dermot.

Ok.
With '%24' it worked. Thank you.

San.
Logged
Dermot
Administrator
Hero Member
*****
Posts: 1005


« Reply #26 on: October 25, 2010, 11:06:38 AM »

OK.

We've fixed Amethyst so that it does all the translations between %24 and $ without you needing to do anything. We should have a new release out soon.

Dermot
Logged
Dermot
Administrator
Hero Member
*****
Posts: 1005


« Reply #27 on: November 10, 2010, 12:13:42 PM »

The %24 thing was fixed in build 1060.
Logged
Pages: 1 [2] Print 
« previous next »
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!