ラベル Dashcode の投稿を表示しています。 すべての投稿を表示
ラベル Dashcode の投稿を表示しています。 すべての投稿を表示

2010年11月10日水曜日

Dashcode: jQueryのCross domain site requestで取得したJSONデータをlistで表示してみた(5分で)

動機
Cross domain site requestでやれた方が便利だろうということでやってみた.
前回のdatasourceは使えないが,datasourceでどういうJSONが取得されているのかを確認するのは便利かもしれない.


やってみた



一応手順も書いてみる
0.[0:00]listとboxを用意する.
1.[0:24]listのデータタイプを動的にしてデータソース名を入力する(データソースのテンプレートが生成される).
2.[0:42]jQueryが使えるようにする.
*.([1:20]データソースのテンプレートにある値は削除しておく.)
3.[1:35]Cross site requestでJSONデータを取得するコードの記述を行う.
4.[2:20]Callback関数の記述を行う.jsonデータのfeed.entryが配列となっていて個々のentryをlistDataSource内の配列へ格納する.最後にlistにデータの再読み込みを行わせる.
5.[4:00]listの各行に表示する値を指定する.entryのtitle.$tがその値となる文字列であるのでこれを設定する.
6.[4:17]listの行をクリックして選択した際の動作を記述する.box要素にentryのcontent.$tの値(文字列)を設定する.
7,[5:00]実行

JSONデータはこちらを参考にした.
参考のままだとcallback関数のフォーマットになるのでそのあたりは削除して以下のようにしている.
http://www.google.com/calendar/feeds/developer-calendar@google.com/public/full?alt=json&orderby=starttime&max-results=15&singleevents=true&sortorder=ascending&futureevents=true

DashcodeのDataSourceとStackLayoutをやってみた

動機
Listの使い方とかTransitionとかDashcodeっぽいのをやってみたかった.


やってみた

カーソルがふらふらしてますがやってみました.
最初の2ペインでの動作確認ができるまで100秒(1:40).

2010年11月8日月曜日

DashcodeのQuartz Composerにも外から値を与えられたりしないかな?と思ってやってみた

動機
タイトルのまま.


やってみた
0. 'PublishされたInput'のあるQuarz Composerプログラムを用意
Quartz ComposerのテンプレートであるRSS Visualizerを利用してみる.このとき'PublishされているInput'上でPopupをつかってその入力のOriginal Nameをおさえておく.その後保存('RSSFeed.qtz').




1. 前回の記事のようにこれをプロジェクトに追加,インスペクタで設定する

ちなみにこの時点で'パラメータを編集'で後から'PublishされたInput'に値を設定することもできる.


ちなみにこの時点ではこんな感じ

2. 関数('init')を追加し,ライブラリのコード タブから'QCに値を設定するコード'を引っ張ってくる



3. 値を編集し直し,この関数(init)をload関数呼びだし後100ms後に呼ぶようにする.
  • idはインスペクタの属性 タブに書いてあった(QC)に与えてあるものを用いる.

  • inputKeyはQuartz Composerの'PublishしたInput'のOriginal Nameを用いる.

  • 'setTimeout'を利用してload関数の呼び出し後に別途呼び出す.なぜかload中ではうまく設定できずにデフォルト値のままとなった(QCのロード時間とかの都合?).


4. 実行




配置してみた
http://y30.net/pg/cocoa_qc/sample/feedはapple.comのもの

DashcodeをのぞいていたらそういえばQuartz ComposerってEmbeddedでつかえるんだってきいたなぁって思ったのでやってみた

追記(2010/11/08):タイトルのEmbeddedの綴りがEmbededと間違っていたのを修正.

--
動機
タイトルどおり.ついでに先日こんなの動画をyutubeにあげてたので.


やってみた
0.プロジェクト作成
Safari, カスタム

1.ライブラリからQuartz Composerを選んで配置



2. インスペクタのメトリックス タブで位置とサイズを調整


3.ファイルツリーを表示してqtzファイルをインポート




4. インスペクタで属性 タブの'ソースURL'に値を設定

5. 実行



配置してみた
http://y30.net/pg/cocoa_qc/Heart/