Archive for Mrz. 2010

Flash VS. Marc

Flash hat mir die letzte Woche wahrlich den Nerv geraubt. Und ich hoffe, ich muss mich das nächste mal nicht mit schon vorhandenen (AS2)- Quellen rumschlagen.
Mittlerweile habe ich Workarounds gefunden, trotzdem sind die eigentlichen Probleme noch nicht gelöst, weswegen ich diese nun kurz skizzieren möchte:

1. Codepage-Problem bei Bearbeitung von Win-FLA’s unter OSX
Ich habe eine unter Win erstellte FLA zur Nachbearbeitung erhalten.
Darin enthalten sind auch dynamische Textfelder mit eingebetteter Schrift (überall wurde ‘Helvetica Neue’ verwendet).
Meine Aufgabe war, das Flash mit rumänischen Übersetzungen zu versehen. Die festen Texte konnte ich durch Copy&Paste einfach ersetzen – bei den dynamischen Einträgen allerdings werden die Zentraleuropäischen Sonderzeichen (z.B. ţ und ă ) nur als Kästchen dargestellt.
Die anfänglichen Verdächte nach falscher Konvertierung (utf8/ iso-mix) oder aber vergessener Einbettung der zusätzlichen Glyphen haben sich nicht bestätigt.

Ich habe zum Überprüfen ein Testflash mit Dynamic-Feld angelegt und als Basis-Aktion

label1.text = "AB: \u0163 Selectează o ţară";

benutzt. Hier gab es keinerlei Probleme. Auch ein Ändern der Schriftart bewirkte Kästchen bei dem einen und saubere Zeichen bei dem anderen Flash.
Nur Helvetica (nicht Helvetica Neue) hat die Zeichen in beiden Filmen sauber dargestellt.

Meine Vermutung ist nun, dass Windows eine falsche Codepage oder eine falsche 2-Byte-Zuordnung der Sonderzeichen in den Tiefen einer FLA speichert – und OSX diese versucht, weiterzuverwenden.

Falls hier jemand eine Lösung kennt: Bitte melden!!

onRelease-Callback-Funktionen mit aus einer separaten Klasse heraus
Das zweite Problem ist sehr ActionScript-Lastig.
Ich möchte über eine separat eingebundene Klasse einem Button ein spezifisches Link-Verhalten geben. Ins besondere möchte ich das Frame-Target (also z.B. _blank oder _self) verändern und den Link dann nach einem Klick öffnen. Die Besonderheit ist hierbei, dass ich eine dynamische onRelease-Funktion schreibe und einen Inner-Class-Methodenaufruf durchführe. Dieser wird allerdings nicht ausgeführt und es hinterlässt auch keinerlei Fehlermeldung.

Das Script sieht so aus:

class scripts.classes.TestClass {

private var __target:String;

public function TestClass(){
trace("init TestClass");

}

public function returnTarget():String
{
if (__target == undefined) __target = "_self";
trace("__target => " + __target);
return __target;
}

public function createLink():Void
{

_root["link"].txt.text = "hello";
_root["link"].link = "http://www.google.de";
_root["link"].onRelease = function(){
var target = returnTarget();
trace ("target => " + target);
getUrl(this.link, target);
}

}
}

Die createLink() Methode ist der Problembereich. In der OnRelease-Callback-Funktion wird die Methode returnTarget() dem Link auf _root zugeordnet. Dieser kennt offensichtlich die Instanz nicht. Anstatt hier einen Fehler auszuspucken arbeitet er mit einem undefinierten String weiter.

Nun meine Frage: welche Möglichkeiten gibt es, dieses Script trotzdem noch zum Funktionieren zu bringen?

Import/ Include-Unterschiede zw. CS3 und CS4?

WARUM bekomm ich einen Compiler-Fehler in CS3, welcher behauptet, die Dateien sowohl von import als auch von #include wären nicht vorhanden, obwohl sie im relativen Pfad existieren?

Und interessanter: Warum funktioniert alles reibungslos in CS4?

Update:

Es lag nicht an CS4 — auf anderen Rechnern funktionierte es (die hatten CS4 installiert) — und bei mir funktionierte es nach einer CS4-Installation nicht mehr.

Nach nun knapp 6 Stunden  CS3-Neuinstallationen, Fehlersuche, Gespräche mit mehreren Leuten – auch hier im Büro – habe ich den Fehler schlussendlich gefunden.

Einer meiner Verzeichnisnamen hatte ein Doppel-Slash ( // ) im Namen, was Adobe Flash un-encodiert (also nicht \/\/ oder \:\: ) verwendet und dann denkt, es sei ein weiterer Verzeichnis-Trenner.

Also definitiv ein Adobe-Bug.
Dazu gibt’s nun Böhse Onkelz – Wieder mal ‘nen Tag verschenkt.
Ich kann heute endlich anfangen zu arbeiten…

Greg Holden – Following steps

Following steps like water in lines
I can walk through the streets – but I can’t turn back in time
I imagine the life that I’m starting to leave
I open my mind and I start to believe

I buy me a drink, a whiskey on ice
It’ll help me to live but it won’t save my life
I’ve traveled so far from my great british home
I envy myself but I won’t feel alone

Which way should I turn?
Wanna see, wanna feel, wanna learn

The mystery blows, it’s hard and it’s cold — but it works

egal.. ich lass das jetzt so

ansonsten ist das hier mal mein erster Post. Vom Handy geschrieben. Ob das nun zum guten Sozialkompetenz-Ton gehört, weiß ich noch nicht. Aber ich werde es erörtern. Derweil denk ich über meine Tochter nach – die braucht ein gutes iPhone-Spiel. Sie ist 1 1/2.