Invalid Embed directive in stylesheet

Květen 15th, 2009

Pomalý nájezd od stavby k programování mě neustále něčím překvapuje. Poslední nepříjemností bylo po otevření jednoho projektu se zhruba 100 chybových hlášek v CSS souboru projektu. Co se za tu dobu, kdy byl projekt uzavřen, mohlo sakra stát? Začal jsem znovu linkovat objekty ze SWC knihovny, ale stále se chyby objevovaly a co hůře, vůbec nemizely. Zapátral jsem tedy přes Google a naleznul cestu k řešení problému. Stačí, aby jediný soubor embedovaný nebo jinak nalinkovaný v CSS byl přesunut a ihned může vyskočit řada chyb typu "Invalid Embed directive in stylesheet". Podíval jsem se detailně na CSS soubor a opravdu našel jeden soubor, který změnil umístění a nebyla opravená jeho cesta. Po nápravě zmizel i zbytek zhruba stovky chybových hlášek.

Error #2044: Unhandled securityError:. text=Error #2048: Security sandbox violation

Květen 9th, 2009

Po delší době strávené na stavbě jsem se dostal zase k práci a hned mě u jednoho projektu přivítala tahle klasická hláška, která se objevuje v okamžiku, kdy načítáme data z jiné domény a není to povoleno přes crossdomain.xml.  Jaké bylo ale moje překvapení, když se hláška objevila při načítání dat ze stejné úrovně - domény. Žádný háček v podobě subdomény nebo nadřazeného adresáře zde nebyl.

Situace byla ale zajímavější, než se zdálo. Externímy daty byl PHP soubor, jehož cesta byla brána relativně vůči SWF souboru aplikace, tento PHP soubor byl umístěn v podadresáři. Načítání fungovalo pouze v IE, Mozilla hlásila uvedenou chybu. Po zpěšném zapátrání v Googlu jsem nic rozumného nenašel, nicméně jsem při testování zkusil uvést úplnou cestu k PHP souboru. A ejhle, zafungovalo to! Takže místo relativní cesty pomohlo uvedení absolutní cesty. Snad se časem dopátrám důvodu, proč se tak stalo.

flashplayer 10 na 74%

Duben 24th, 2009

Sice teď nestíhám moc pročítat novinky kolem flashových aplikací, ale jedna mě přeci jenom zaujala, když byly nedávno zveřejněny statistiky flashplayeru 10, který se za 5 měsíců dostal už na necelých 75%, pěkná práce: http://www.adobe.com/products/player_census/flashplayer/version_penetration.html

a teď kratší přestávka

Duben 20th, 2009

Protože moje působiště vypadá momentálně takhle, tak se zde pár dní neobjeví nějaká větší "vychytávka", protože aktuálně potřebuji tlačit dělníky, aby pracovali jak mají. Tak snad se to povede :)

PS: krytina, krov, zdi, příčky, instalce, vše půjde pryč a celé hezky od znovu

Spící flashová komunita

Duben 14th, 2009

Spíme, nebo jen necháváme plynout bez povšimnutí informace týkající se flashové technologie, které se objevují na českém webu? Nemělo by být jednou z našich funkcí větší popularizace flashové technologie jako takové?

Máme tady záslužné akce kolem české Adobe User Group , máme zde RSS agregátor od českých vývojářů, kteří jsou ochotni veřejně publikovat zajímavé články pro flashovou komunitu, to jsou všechno skvělé počiny. Uvedné zdroje a setkání jsou navštěvovány těmi, kteří se už rozhodli s flashovou technologií začít a nebo je něco spojuje s Adobe produkty ( grafika, video ...).

Co ale zbytek? Máme zájem o napravovávní pověsti flashové technologie mezi ostatními vývojáři? Máme zájem na tom, aby u pr článků konkurenčních technologií byly uváděny objektivní informace?

Jakmile se pod články objevují kritické komentáře, které vycházejí ze zkreslených informací, které navíc platily někdy před 6 lety, bez adekvátní reakce kohokoliv z flashové komunity, není to dobře.

Jakmile se na Lunixovém serveru, kde se dbá na open source řešení, objevují v sekci RIA několik měsíců články o Silverlightu (Flex Builder byl zmíněj jednou na začátku, aby se neřeklo) , je něco špatně.

Když je při rozhovoru s Java programátorem terčem posměchu ActionScript 3.0, je to chyba na straně toho programátora, nebo na naší straně - flashové komunity?

Nemůže toho naše komunita udělat více a výrazněji se angažovat v online médiích? Já si myslím že ano, odborníků zde máme celou řadu...

BatchLoader pro textové soubory

Duben 10th, 2009

Poměrně často se setkávám s nutností stahování většího množství souborů najednou, jehož řešením je postupné načítání souborů jeden po druhém. Bylo by tedy určitě dobré mít nějakou třídu, která se o načtení souborů postará například v této podobě:

//instance objektu
var bLoader:BatchLoader = new BatchLoader(pole_souboru);
//načtení souborů z předaného pole
bLoader.load();
//doplnění listenerů
bLoader.addEventListener(BatchEvent.ALL_COMPLETE,loadCompl);
bLoader.addEventListener(BatchEvent.IO_ERROR,err);
function loadCompl(evt:Event):void{
  var pole_nactenych:Array = bLoader.getLoadedArray();
}

Jednoduchou třídu, která toto splňuje nalezneme v detailu článku.

Read the rest of this entry »

Včerejší a zítřejší den

Duben 7th, 2009

Po delší době jsem opět použil při práci s kalendářem malou třídu, která vrací předchozí a následující den:

package
{
public class TimeUtil
{
private static var oneDayMs:uint = (1000*60*60*24);
public static function yesterday():Date{
var today:Date = new Date();
var yest:Date = new Date();
yest.setTime(today.getTime()-oneDayMs);
return yest;
}
public static function tomorrow():Date{
var today:Date = new Date();
var tom:Date = new Date();
tom.setTime(today.getTime()+oneDayMs);
return tom;
}
}
}

Použití je snadné:

var vcera:Date = TimeUtil.yesterday();

Ve spojení s komponentou DateChooser pak můžeme omezit výběr starších dnů:

var yest:Date = TimeUtil.yesterday();
calendarComp.disabledRanges = [{rangeEnd:yest}];

Google mapy 3d

Duben 4th, 2009

Nedávno mě napadlo využít Google mapy a zkusit jejich 3d zobrazení pomocí Flashe CS4. Obával jsem se crossdomain zabezpečení, kdy nebude možné provádět 3d transformaci externích objektů, ale povedlo se:

Ovládání je jednoduché:

+ přiblížení
- oddálení
šipka vlevo/vpravo rotace
šipka nahoru/dolů pohybuje mapou
A,D pohybuje vlevo/vpravo mapkou
W,S rotuje mapu v X-ovém směru

Po zveřejnění článku na Flash.cz, který bude obsahovat jednodušší verzi mapky, tady zveřejním zroják.

Zdrojový soubor ukázky zde.

Flash CS4 - Break apart bug

Duben 1st, 2009

V české verzi Flashe CS4 jsem narazil na chybu, která se projevuje v okamžiku, kdy u celého MovieClipu zvolíme možnost rozbití na křivky - Break apart (Ctrl+B). Pokud rozbíjený MovieClip obsahuje jiné MovieClipy, jsou u nich odstraněny případné názvy instancí... nevím, jestli se to neprojevuje i v EN verzi Flashe CS4, zatím nemohu vyzkoušet.

Tour de Flex a Facebook API

Duben 1st, 2009

Nedávno byla aktulizovaná výborná aplikace Tour de Flex: http://www.adobe.com/devnet/flex/tourdeflex/web/#

Další zajímovou novinkou je zveřejnění API pro Facebook:  http://code.google.com/p/facebook-actionscript-api/ To se ale zatím do aktualizace Tour de Flex nedostalo.