Ga terug   FlashFocus.nl > Scripting & Development > Flash ActionScript 3.0
Registreren! of Wachtwoord vergeten?
Registreer Weblogs Netwerk Kalender Berichten van vandaag Zoeken

Flash ActionScript 3.0 Post hier al je vragen over ActionScript 3.0 en de AIR API. Voor Flex ActionScript API vragen, ga naar Flex Framework

Reageren
 
Discussietools Weergave
Oud 15-10-2007, 16:52   #1
theFlashWizard
Insane member
179 - theFlashWizard gebruikt al meerdere instanties179 - theFlashWizard gebruikt al meerdere instanties
 
theFlashWizard's schermafbeelding
 
Geregistreerd: Jun 2005
Locatie: Nederland
Leeftijd: 24
Berichten: 8.637
AS3.0 in Eclipse + FDT + Subclipse
Stuur een bericht via MSN naar theFlashWizard
AS3.0 code generation in StarUML

Beste mensen,
Ik ben van UML tool overgestapt op StarUML.
Dit omdat hij veel stabieler is dan argoUML en na wat trucjes te leren kennen net zo handig werkt.
Ook heb ik hier een generate functie gevonden.
Je kan met behulp van een template dus code genereren aan de hand van je UML class/design diagram.
Omdat zo'n template in een mij vreemde taal (gedeeltelijk javascript) geschreven wordt heb ik heel wat moeite gehad om een pseudo code voorbeeld om te bouwen naar as.
Gelukkig vond ik later een php5 generatie voorbeeld en heb ik deze nu kunnen ombouwen tot een redelijke as3.0 generator.

Functies
  • Bouwt automatisch folders aan de hand van packages.
  • Bouwt de class bestanden.
  • Bouwt de interface bestanden.
  • Neemt de package beschrijving, class name, implements beschrijvingen, superclass mee.
  • Neemt alle properties (attributes) over.
    Met visibility (public/private/package/protected) en datatype (Number, uint enz).
    Ook zet hij voor alle properties een _. Om instance variabelen/properties van de andere variabelen te scheiden.
  • Neemt alle methods over. Met visibility, return type en parameters.
  • Neemt zelfs alle methods/properties over vanaf de bijbehorende interface.
  • Hij maakt automatisch, werkende, get set methods voor alle public properties.
    Hierbij maakt hij ook een private versie met een _ ervoor.
    (Iets dat mij persoonlijk makkelijk leek.)
    Voorbeeld:
    ActionScript 3 Code:
    private var _fillColor:uint;
    
    public function get fillColor():uint{
    	return this._fillColor;
    };
    
    public function set fillColor(newValue:uint):void{
    	_fillColor = newValue;
    };

Missende functies
Hij heeft helaas alleen nog niet deze functies:
  • Hij neemt geen initial values over.
    Ik kan namelijk geen attribute vinden waarmee ik dit op kan vragen. Is ook erg lastig aangezien er (bijna) geen documentatie is.
  • Neemt de documentatie niet mee.
    Kan je eventueel ophalen met de Documentation propertie.

Hoe te gebruiken
Stappen 3 t/m 15 kun je overslaan als je het bijgevoegde voorbeeld pakt.
  1. Download StarUML:
    http://staruml.sourceforge.net/en/download.php
  2. kopieer de map AS3.0 (met daarin template.cot en template description.tdf) naar de volgende folder:
    C:\Program Files\StarUML\modules\staruml-generator\templates\
  3. Start StarUML.
  4. Kies default approach.
  5. Registreer de template
    1. Ga naar: Tools -> StarUML Generator...
    2. Druk op Register Template
    3. Kies achter file name het template description.tdf bestand.
    4. Geef de volgende gegevens op:
      Template naam: AS3.0.
      Group: StarUML.
      Category: Implementation
      Document Type: CODE.
      Format: TXT.
      Translator Type: TEXT.
    5. Druk op OK.
    6. Druk op Cancel.
  6. Maak een package.
    Selecteer links package en klik in beeld, geef een naam op.
  7. Maak een class.
    Selecteer links class en klik in beeld, geef een naam op.
  8. Beschrijf een propertie.
    1. Klik op het blauwe icoontje,
    2. Beschrijf je de propertie, bijv:
      ActionScript 3 Code:
      +age:uint;
      (Publieke propertie genaakt age met datatype uint).
      ActionScript 3 Code:
      -lover:String;
      (private propertie genaamd lover met datatype String).
      (Zie Sneltoetsen)
  9. Beschrijf methods.
    1. Dubbelklik op het diagram item
    2. Druk op het rode icoontje
    3. Beschrijf de method, bijv:
      ActionScript 3 Code:
      +walk(target:String,speed:Number):void
    (Zie sneltoetsen)
  10. Sleep de class (in het model explorer venster), in de package.
  11. Maak nog een class.
  12. Selecteer de generalization pijl links en sleep deze vanaf de 1ste class naar de nieuwe class. De nieuwe class is nu de super class van de 1ste class.
  13. Maak een interface.
    Selecteer Interface links, klik in het scherm, geef een naam op.
  14. Geef deze properties en methods mee.
    Deze zijn default verborgen, haal ze tevoorschijn met ctrl-schift-o en ctrl-schift-a.
  15. Laad de 1ste class deze class implementeren.
    Sleep een Dependency pijl vanaf de 1ste class naar de interface.
  16. Zet de superclass en de interface ook in de package (Doe dit in het model explorer venter).
  17. Genereer de bestanden:
    1. Ga naar Tools->StarUML generator...
    2. Zet een vinkje voor de AS3.0 generator
    3. Druk op next
    4. Selecteer een doelmap voor de bestanden
    5. druk op next
    6. Druk op generate
  18. Bekijk je nieuwe, auto gegenereerde as-bestanden.

Sneltoetsen
Wanneer je een propertie/method beschrijft:
ctrl-enter: propertie toevoegen
ctrl-insert: propertie ervoor toevoegen
ctrl-del: propertie verwijderen
ctrl-omhoog/omlaag: propertie verplaatsen
omhoog/omlaag: andere propertie selecteren

Tips
  • Dubbel klik op een diagram/pijl type om meerdere achter elkaar te kunnen neerzetten.
  • Selecteer links ipv class annotation en je kan aantekeningen voor jezelf achterlaten

Veel plezier ermee
Bijgevoegde bestanden
Bestandstype: zip Voorbeeld.zip‎ (20,3 KB, 713x geopend)
Bestandstype: zip AS3.zip‎ (4,7 KB, 1154x geopend)
theFlashWizard is offline   Met citaat reageren Naar boven
Oud 15-10-2007, 18:26   #2
Dauntless
FlashFocus Vicevoorzitter
671 - Dauntless staat in iedereens library671 - Dauntless staat in iedereens library671 - Dauntless staat in iedereens library671 - Dauntless staat in iedereens library671 - Dauntless staat in iedereens library671 - Dauntless staat in iedereens library
 
Dauntless's schermafbeelding
 
Geregistreerd: May 2005
Locatie: Antwerp, Belgium
Leeftijd: 21
Berichten: 16.032
FCS3 - FB3 - FDT
Weblogartikelen: 2
showcaseshowcase
Stuur een bericht via MSN naar Dauntless
Re: AS3.0 code generation in StarUML

Het lukt me niet om AS3 in het lijstje van templates te krijgen bij de code generator... Ik heb een AS3.0 folder aangemaakt met die bestanden er in (dus C:\Program Files\StarUML\modules\staruml-generator\templates\AS3.0), maar hij staat er niet tussen ?
__________________
Open Source Extensible AS3 Astar (A*) implementation - Local Livedocs for Flex & Flash
-- Ik antwoord niet op Flash-vragen via PM/Mail/MSN. --
Dauntless is offline   Met citaat reageren Naar boven
Oud 15-10-2007, 19:13   #3
theFlashWizard
Insane member
179 - theFlashWizard gebruikt al meerdere instanties179 - theFlashWizard gebruikt al meerdere instanties
 
theFlashWizard's schermafbeelding
 
Geregistreerd: Jun 2005
Locatie: Nederland
Leeftijd: 24
Berichten: 8.637
AS3.0 in Eclipse + FDT + Subclipse
Stuur een bericht via MSN naar theFlashWizard
Re: AS3.0 code generation in StarUML

Niet vergeten opnieuw op te starten he, dat vergat ik in het begin ook
theFlashWizard is offline   Met citaat reageren Naar boven
Oud 15-10-2007, 19:48   #4
Dauntless
FlashFocus Vicevoorzitter
671 - Dauntless staat in iedereens library671 - Dauntless staat in iedereens library671 - Dauntless staat in iedereens library671 - Dauntless staat in iedereens library671 - Dauntless staat in iedereens library671 - Dauntless staat in iedereens library
 
Dauntless's schermafbeelding
 
Geregistreerd: May 2005
Locatie: Antwerp, Belgium
Leeftijd: 21
Berichten: 16.032
FCS3 - FB3 - FDT
Weblogartikelen: 2
showcaseshowcase
Stuur een bericht via MSN naar Dauntless
Re: AS3.0 code generation in StarUML

Toch niet heel m'n computer? StarUML heb ik alleszinds herstart. (Zowel op Vista als XP geprobeerd).
__________________
Open Source Extensible AS3 Astar (A*) implementation - Local Livedocs for Flex & Flash
-- Ik antwoord niet op Flash-vragen via PM/Mail/MSN. --
Dauntless is offline   Met citaat reageren Naar boven
Oud 15-10-2007, 20:10   #5
theFlashWizard
Insane member
179 - theFlashWizard gebruikt al meerdere instanties179 - theFlashWizard gebruikt al meerdere instanties
 
theFlashWizard's schermafbeelding
 
Geregistreerd: Jun 2005
Locatie: Nederland
Leeftijd: 24
Berichten: 8.637
AS3.0 in Eclipse + FDT + Subclipse
Stuur een bericht via MSN naar theFlashWizard
Re: AS3.0 code generation in StarUML

Excuses, ik ben inderdaad een stap vergeten. Ik schrijf het even uit en dan voeg ik het boven toe.
theFlashWizard is offline   Met citaat reageren Naar boven
Oud 15-10-2007, 20:21   #6
theFlashWizard
Insane member
179 - theFlashWizard gebruikt al meerdere instanties179 - theFlashWizard gebruikt al meerdere instanties
 
theFlashWizard's schermafbeelding
 
Geregistreerd: Jun 2005
Locatie: Nederland
Leeftijd: 24
Berichten: 8.637
AS3.0 in Eclipse + FDT + Subclipse
Stuur een bericht via MSN naar theFlashWizard
Re: AS3.0 code generation in StarUML

Owke, zo moet hij lukken
Damn, wel ernstig hoe hij die lijsten uit hun verband trekt hoor. Terwijl het wel werkt in preview mode
theFlashWizard is offline   Met citaat reageren Naar boven
Oud 23-10-2007, 10:04   #7
theFlashWizard
Insane member
179 - theFlashWizard gebruikt al meerdere instanties179 - theFlashWizard gebruikt al meerdere instanties
 
theFlashWizard's schermafbeelding
 
Geregistreerd: Jun 2005
Locatie: Nederland
Leeftijd: 24
Berichten: 8.637
AS3.0 in Eclipse + FDT + Subclipse
Stuur een bericht via MSN naar theFlashWizard
Re: AS3.0 code generation in StarUML

Update:
Hij accepteert nu keywords als final, static en const.
Heb eindelijk gevonden hoe ik initial/default values kan meenemen.

Als je geen datatype meegeeft aan een method krijgt hij automatisch void.
Als je dit niet doet bij een property / parameter dan krijgt hij een *.

(Heb het bestand in de 1ste post geupdate)
theFlashWizard is offline   Met citaat reageren Naar boven
Oud 25-10-2007, 23:56   #8
theFlashWizard
Insane member
179 - theFlashWizard gebruikt al meerdere instanties179 - theFlashWizard gebruikt al meerdere instanties
 
theFlashWizard's schermafbeelding
 
Geregistreerd: Jun 2005
Locatie: Nederland
Leeftijd: 24
Berichten: 8.637
AS3.0 in Eclipse + FDT + Subclipse
Stuur een bericht via MSN naar theFlashWizard
Re: AS3.0 code generation in StarUML

Update:
  • Documentatie
  • Grote reorganisatie in het script.
    Waardoor het voor anderen hopelijk een stuk leesbaarder wordt.
  • Meer gecentraliseerd script.
    Hij beschrijft methods (class en interface) op dezelfde plek.
    Meer methods als getName, getKeyWords enz.

(Heb het bestand in de 1ste post geupdate)
theFlashWizard is offline   Met citaat reageren Naar boven
Oud 17-11-2007, 18:44   #9
roygarnaat
Member
10 - roygarnaat is nieuw op FlashFocus
 
roygarnaat's schermafbeelding
 
Geregistreerd: Nov 2007
Leeftijd: 27
Berichten: 1
Flex Builder 3
Re: AS3.0 code generation in StarUML

Ik ben nieuw met StarUML en kan sowieso wat tips gebruiken maar krijg een error wanneer ik het AS3.0 profiel test.

Ik heb alles geinstalleerd en ik zie het AS3.0 profiel in de StarUML Generator. Wanneer ik het voorbeeld probeer genereren krijg ik de volgende foutmelding van StarUML:

Errors uccurs for generating document.
Reason: Format '%T' invalidor incompatible with argument.


De rest van de export profielen in StarUML werken prima. Ik gebruik staruml-5.0-with-cm.exe voor de installatie.

Iemand een wat deze idee foutmelding betekend en hoe het is op te lossen?
roygarnaat is offline   Met citaat reageren Naar boven
Oud 17-11-2007, 20:13   #10
theFlashWizard
Insane member
179 - theFlashWizard gebruikt al meerdere instanties179 - theFlashWizard gebruikt al meerdere instanties
 
theFlashWizard's schermafbeelding
 
Geregistreerd: Jun 2005
Locatie: Nederland
Leeftijd: 24
Berichten: 8.637
AS3.0 in Eclipse + FDT + Subclipse
Stuur een bericht via MSN naar theFlashWizard
Re: AS3.0 code generation in StarUML

Probeer het template anders nog eens opnieuw te downloaden en te gebruiken. Misschien heb je een oude versie.
Kun je anders je uml bestand opsturen? Want ik heb met deze versie geen problemen.
theFlashWizard is offline   Met citaat reageren Naar boven
Oud 27-11-2007, 10:29   #11
cksachdev
Member
10 - cksachdev is nieuw op FlashFocus
 
Geregistreerd: Nov 2007
Leeftijd: 25
Berichten: 1
Flash CS3
Re: AS3.0 code generation in StarUML

I am also getting the same error.

Error occurs for generating document.
Reason: Format '%T' invalid or incompatible with argument

I am using StarUML 5.0.2.1570
When I run the UML file provided to download and try to generate the AS3 code then this error is displayed. Do you use any specific StarUML version. I found there is no other release version available to download.
cksachdev is offline   Met citaat reageren Naar boven
Oud 27-11-2007, 23:26   #12
theFlashWizard
Insane member
179 - theFlashWizard gebruikt al meerdere instanties179 - theFlashWizard gebruikt al meerdere instanties
 
theFlashWizard's schermafbeelding
 
Geregistreerd: Jun 2005
Locatie: Nederland
Leeftijd: 24
Berichten: 8.637
AS3.0 in Eclipse + FDT + Subclipse
Stuur een bericht via MSN naar theFlashWizard
Re: AS3.0 code generation in StarUML

Bizar. Omdat ik me laptop ter reperatie heb moeten inleveren wissel ik nu nogal veel van pc (op me werk vooral).
Het is op ondertussen 4/5 pc's al gewoon gelukt.

Ik blijf het duister vinden dat template systeem.
theFlashWizard is offline   Met citaat reageren Naar boven
Oud 07-12-2007, 11:24   #13
theFlashWizard
Insane member
179 - theFlashWizard gebruikt al meerdere instanties179 - theFlashWizard gebruikt al meerdere instanties
 
theFlashWizard's schermafbeelding
 
Geregistreerd: Jun 2005
Locatie: Nederland
Leeftijd: 24
Berichten: 8.637
AS3.0 in Eclipse + FDT + Subclipse
Stuur een bericht via MSN naar theFlashWizard
Re: AS3.0 code generation in StarUML

Owke, ik bleek toch met een oudere versie te werken. Gelukkig had ik nog ergens een backup.
Ik heb het bestand nu hersteld en een klein beetje verbeterd.
Hopelijk lukt het meer mensen nu.
theFlashWizard is offline   Met citaat reageren Naar boven
Oud 20-05-2008, 13:49   #14
ntadesign
Member
10 - ntadesign is nieuw op FlashFocus
 
ntadesign's schermafbeelding
 
Geregistreerd: Sep 2005
Leeftijd: 29
Berichten: 15
Flash CS3
Re: AS3.0 code generation in StarUML

ik krijg nog steeds dezelfde foutmelding bij het voorbeeld, weet je zeker dat je de aangepaste versie heb geupload?

melding:
Errors uccurs for generating document.
Reason: Format '%T' invalidor incompatible with argument.


gr. Niels
ntadesign is offline   Met citaat reageren Naar boven
Reageren

Favorieten/bladwijzers


Er zijn 1 actieve gebruikers die momenteel deze discussie bekijken (0 leden en 1 gasten)
 

Regels voor berichten
Forumnavigatie