работа с компонентами CS3

задача: организовать комфортную работу со стандартными компонентами Flash CS3 в haxe-проекте
чтобы пользовать символы из библиотеки внешней свф нужны две вещи:

  • директива компилятора -swf-lib assets.swf
  • заголовок класса, на который этот символ залинкован:

extern class MySymbol extends MovieClip{},
тогда new MySymbol() и будет экземпляр этого символа

а вот как быть с компонентами, которым нужна вся иерархия классов фреймворка, не вдруг сообразил, но оказалось тоже просто:
на помощь приходит опция haxe --gen-hx-classes assets.swf, с которой он генерит заголовки всех классов assets.swf и складывает их в папочку hxclasses, нам остается указать эту папочку в classPath проекта и пожалуйста: с компонентами (ну или что-там было в библиотеке assets.swf) теперь можно работать как с 'родными'.., FlashDevelop выдает нормальный автокомплит для этого добра и прочие радости.

есть одно мелкое но: компилятор ругается на "An interface cannot have a constructor", но это легко лечится просто удалением function new() в интерфейсах..

итого: для включения компонентов CS3 в haxe-проект ничего особо и не нужно:

  • файл swf с нужными компонентами в библиотеке ;
  • файлы заголовков классов этого swf, которые легко генерит тот же haxe;
  • настройка classpath компилятора (ну и редактора для комфортной работы) на эти файлы;
  • директива компилятора -swf-lib assets.swf.

примерчик