Flash Builder - Photoshop Panel Problem


hi,

 

ich habe ein flash panel bekommen (swf und jsx), welches auch super funktioniert.

ich muss aber etwas panel ändern, kann ich aber nicht, da ich nur die swf habe. ich mithilfe von flash builder ein neues panel kreieren und die alte jsx verwenden.

das ist mein erstes mal mit flash builder und co und ich komme irgendwie nicht wirklich vorran.

es funktioniert nicht und ich weiss nicht weiter

das skript macht folgendes:

- system aussuchen aus einer dropdownliste, bzw. ich musste eine combo box nehmen...

- spielnamen eingeben

- system + spielnamen einen vorher definierten pfad anhängen und dort einen ordner erstellen mit dem spielnamen. ( beispielsweise ist der vordefinierte teil "d:\test", dahinter dann das system + spielnamen -> "d:\test\supernintendo\tetris")

- dann werden dateien in den ordner kopiert und ebenfalls umbenannt.

 

mein erstes problem war, dass ich die exportierte swf öffnen konnte und auch die combo cox funktioniert hat. sobald ich in photoshop öffne, geht die combo box nichtmehr auf, bzw ich sehe nur den ersten eintrag.

und der rest funktioniert natürlich auch nicht :b

 

hier mal der code der mxml:

 

<?xml version="1.0" encoding="utf-8"?>

<mx:application xmlns:mx="http://www.adobe.com/2006/mxml"

                width="418" height="232" layout="absolute">

   

    <mx:script>

        <![cdata[

            import com.adobe.csxs.core.csxsinterface;

           

            import mx.collections.arraycollection;

            import mx.events.listevent;

           

           

           

            public function calladddocument():void{

                csxsinterface.instance.evalscript("adddocument");

            }

            public function callclosedocument():void{

                csxsinterface.instance.evalscript("closedocument");

            }

           

           

            public function init(){

               

                var gamename= document.getelementbyid("game").value;

                var type= document.getelementbyid("sys").value;

                arguments = new array (type+"=",gamename);         //???

           

            }

           

            public function callcreatefolder():void{

                csxsinterface.instance.evalscript("createfolder");

            }

           

            public function callcopyrenamefile():void{

                csxsinterface.instance.evalscript("copyrenamefile");

            }

           

           

            public function callcopyallfolder():void{

                csxsinterface.instance.evalscript("copyallfolder");

            }

           

           

           

            protected function sys_changehandler(event:listevent):void

            {

                // todo auto-generated method stub

               

            }

           

        ]]>

    </mx:script>

    <mx:label x="20" y="81" fontsize="16" fontweight="bold" text="system:"/>

    <mx:label x="20" y="120" fontsize="16" fontweight="bold" text="gamename:"/>

    <mx:image x="118" y="10" width="175" height="43"

              source="file:///e:/x/y/z/a/b.png"/>

    <mx:textinput id="game" x="171" y="119"/>

    <mx:combobox id="sys" x="171" y="81" change="sys_changehandler(event)" editable="false"

                 enabled="true">

   

        <mx:string>bla</mx:string>

        <mx:string>blubb</mx:string>

        <mx:string>bluuu</mx:string>

        <mx:string>ble</mx:string>

       

           

   

    </mx:combobox>

    <mx:button x="171" y="178" label="button" click="init();calladddocument();callcreatefolder();callcopyallfolder();callcopyrenamefile ();callclosedocument()"/> // ???

   

   

   

   

</mx:application>

 

und die dazugehörige jsx:

 

 

// javascript document

function adddocument() {

    app.documents.add();

}

 

function closedocument() {

    app.activedocument.close();

}

 

function createfolder(path) {

    var osspecificprepath = "";

 

    if ($.os.search(/windows/i) != -1) {

        filelinefeed = "windows";

        osspecificprepath = "e:/";  //m:/

    } else {

        filelinefeed = "macintosh";

        osspecificprepath = "";  //bla/xxx/yyy/xxx/

    }

 

    var arguments = path.split("=");

 

    var type = arguments[0];

    var gamename = arguments[1];

    gamename = gamename.replace(/\s/g, "");

    gamename = gamename.replace(/\,/g, "");

    gamename = gamename.replace(/\&/g, "");

    gamename = gamename.replace(/\-/g, "");

    gamename = gamename.replace(/\´/g, "");

    gamename = gamename.replace(/\_/g, "");

    gamename = gamename.replace(/\./g, "");

 

    // templates

   

    var commondesigntemplatespath = osspecificprepath

            + "bla/blubb/blah/";

 

   

 

    //target

 

    var gamedesignpagepath = osspecificprepath + "bla/bla/blub/blah/" + type + "/" + gamename;

 

    copyallfolder(commondesigntemplatespath, gamedesignpagepath, type, gamename);

    remsign(gamename);

 

}

 

function copyallfolder(copyfrom, copyto, type, gamename) {

 

    var foldercopyfrom = new folder(copyfrom);

    var foldercopyto = new folder(copyto);

 

    foldercopyto.create();

 

    var filelist = foldercopyfrom.getfiles();

 

 

    ( var = 0; < filelist.length; i++) {

        foldercopyto.create();

        if (filelist[i] instanceof folder) {

            copyallfolder(copyfrom + "/" + filelist[i].name, copyto + "/"

                    + filelist[i].name, type, gamename);

 

        } else {

            if (filelist[i].hidden == false) {

                var file = filelist[i];

                file.open("r");

                copyrenamefile(file, copyto, type, gamename);

                file.close();

            }

        }

    }

}

 

 

 

 

 

 

ich weiss, dass ich bestimmt die noobigsten fehler mache, aber ich habe den auftrag bekommen, ohne ahnung davon zu haben und habe auch kaum noch zeit...

wie gesagt, die jsx war und hat auch funktioniert. ich muss nur die mxml dazu anpassen.

angefangen habe ich mit dem tutorial von adobe.(shortcutbuttons).

da in der jsx

var arguments = path.split("=");

 

    var type = arguments[0];

    var gamename = arguments[1];

stand, ging ich davon aus, es wurden die werte vorher in den array geschrieben und jeweils mit einem "=" getrennt.

wenn mir jemand helfen könnte, wäre das traumhaft

 

vielen dank im voraus

 

uebel



More discussions in Deutsche Foren


adobe

Comments

Popular posts from this blog

How to change text Component easybook reloaded *newbee* - Joomla! Forum - community, help and support

After Effect warning: A problem occurred when processing OpenGL commands

Preconditions Failed. - Joomla! Forum - community, help and support