2011-06-22 6 views
2

how to compile itを知っているので、私たちはデモを見て、それを愛しています。おそらくそれに基づいてone real life opensource projectしか見ていません。だから私はサンプルを見て、非常に長い3つのC++アプリケーションしか見ることができません。ASL\test\adam_tutorial\ASL\test\adam_smoke\ASL\test\eve_smoke\です。私はかなり行うにはどのように何tutorialonをアダムないと確認するためにイブをバインドする方法を得ることはありませんので、アダム・ファイルは、理論的には(それに結合することでAdob​​e Adam and Eve(C++ ASL):Eve変数をバインドしてC++アプリケーション内で更新する方法は?

dialog(name: "Clipping Path") 
{ 
column(child_horizontal: align_fill) 
{ 
    popup(name: "Path:", bind: @path, items: 
    [ 
    { name: "None", value: empty }, 
    { name: "Path 1", value: 1 }, 
    { name: "Path 2", value: 2 } 
    ]); 
    edit_number(name: "Flatness:", digits: 9, bind: @flatness); 
    } 
button(name: "OK", default: true, bind: @result); 
} 

:しかし、私はまだで、単純なイブファイルをhtvingどのように得ることはありませんそれには、その都度flatnessを作る

sheet clipping_path 
{ 
output: 
result   <== { path: path, flatness: flatness }; 

interface: 
unlink flatness : 0.0 <== (path == empty) ? 0.0 : flatness; 
path   : 1; 
} 

で)これは、(例えば新しいflatness値をcouting簡単なもの)のAdobeアダムとそのようなことを実現するためにどのように

と呼ばれる私のいくつかのC++の機能を変更しvariableis EveとBoost ofcourse?

更新

我々はそれをhereを行うことを試みたが、それがライブフィードバックの方法で働いていたが、ない - だけでダイアログを閉じるアクションに。 hereよりも我々のcompile evrething on linux absessionのため、私たちはASLプログラミングの開発を中断し、Linux OSのASLコンパイルに時間を投資し始めました。

+1

私はWxでもQtでも遊んでいません。私はその構造、ロジック、アイデア、サイズ、メーカー、ライセンス(MIT)、クロスプラットフォームスタイル、少なくとも理論上のシンボリックスが好きなので、Adobe A&Eのチュートリアルを本当に好きです。=) – Rella

+1

良いASLリソース/チュートリアルで何か起こったら、私も非常に興味があるので、ここに投稿してください。 : - ] – ildjarn

答えて

3

ASLに関する質問は、ASLデベロッパーメーリングリストにお願いします。

"Begin"テストアプリを見てください。これはMacとWinのみを実行しますが、物事を結ぶ方法を示しています。

基本的な考え方は、レイアウトの説明(Eve)が解析されるときに、add_view_proc http://stlab.adobe.com/structadobe_1_1eve__callback__suite__t.html#a964b55af7417ae24aacbf552d1efbda4を引数式で呼び出すことです。通常、あなたのための引数評価を扱うコールバックのためにbind_layout_procを使い、引数付きの辞書を取る単純化されたコールバックを呼び出します。

コールバックが呼び出されると、通常、適切なウィジェットを作成し、辞書をウィジェットに関連付けるか、または関心のある引数を辞書から抽出して構造体に格納します。バインド引数を使用すると、sheet_tのmonitor_xxxx関数を使用して、関連付けられたシート(Adam)でコールバックを設定できます。通常は、monitor_valueとmonitor_enabledを使用します。呼び出されると、ウィジェットで値または有効な状態を設定します。ウィジェットの値がユーザによって変更され、ウィジェットが呼び出されると(イベントハンドラやコールバック、UIツールキットがサポートするメカニズムなど)、sheet_t :: set()を呼び出してセルの値を設定しますsheet_t :: update()を実行してシートを再計算します。

これはそれです。新しいUIフレームワークでAdam/Eveを使用しようとするときは、まず小さくしてください。私は通常、2つのチェックボックスを含むウィンドウから始まり、Eveを最初に接続します。一度それがアダムと2つのブールセルを接続する簡単なシートを追加するので、事が正しく起こっているかどうかを見ることができます。一度これを行うと、はるかに複雑なUIを配線するのはかなりシンプルです。

関連する問題