今日はいろいろ進展があった。その1
先日の検討結果よりtoggleの実装をやめたのですが、
親子孫の関係の中で孫の世代の操作を親の世代が無視するという
現象がう生まれたんです。操作情報を保持できない問題にぶつかってうーん。
って成ってました。
エクスプローラとかExcelのグループ化って子の状態を保持してるじゃないですか。
あれをやりたいなぁと。
もちろんExt本体も参考にって思ったんですが
親子のexpand、collapse制御は階層別に隣接する制御を実装して
関数を再帰呼び出し(fireevent)してるみたい。
それと同じじゃちょっと面白みにかけるしパス情報もってるんだからもっと簡単に
なんとかならないかな?ともおもった。
この階層構造、ファイル管理機能を作成するときにもしようしたいので
できればファイルパスをそのままちょこっといじくるだけでそれとなくできないかな?
と通勤時間にうーん。ってちょいちょい考えてました。
でこうなりました。
「キーワード」でロックすることで回避しました。
わかりづらいけどまとめると、、、
各要素は親子孫のパス情報をある特定の区切りで保持しておくこと
①ある特殊なキーワードが含まれている場合は処理は行わない。
②ある特殊なキーワードは一意性のあるIDと合成される
③ある特殊なキーワードは一意性のあるIDの処理の結果子孫へは反映されない
④ある特殊なキーワードは一意性のあるIDの処理と対となり削除、追加の操作を可能とする。
すると
親ID
親ID 子ID
親ID 子ID 孫ID
親ID 子ID-2
親ID 子ID-2 孫ID-2
とあり、
子IDが圧縮した場合、_KEYを付与
親ID
親ID 子ID_KEY
(親ID 子ID_KEY 孫ID)←表現上見えていない
親ID 子ID-2
親ID 子ID-2 孫ID-2
となる
で、この状態で親が圧縮した場合
親ID_KEY
(親ID_KEY 子ID_KEY)←表現上見えていない
(親ID_KEY 子ID_KEY 孫ID)←表現上見えていない
(親ID_KEY 子ID-2)←表現上見えていない
(親ID_KEY 子ID-2 孫ID-2)←表現上見えていない
となる
親の展開処理のとき_KEYを利用して制御を行う。
まず、
①親ID_KEYを親IDに戻す
親ID
(親ID 子ID_KEY)←表現上見えていない
(親ID 子ID_KEY 孫ID)←表現上見えていない
(親ID 子ID-2)←表現上見えていない
(親ID 子ID-2 孫ID-2)←表現上見えていない
②KEYが含まれていない行を復元する
親ID
(親ID 子ID_KEY)←表現上見えていない:KEYが含まれているので復元せず
(親ID 子ID_KEY 孫ID)←表現上見えていない:KEYが含まれているので復元せず
親ID 子ID-2←復元
親ID 子ID-2 孫ID-2←復元
とやると
親子孫、子孫、。。。とある特殊なキーワードによって
縛ることが可能で前の状態の簡便な保持の実装が行える。
という仕組み。
形になってきた。
転職用の日記だったのですが趣味でExtJsを使用して遊んでます。 いろいろと作業期間があく為、そのための備忘録ブログです。記事内容等で問題等があっても責任は取りません。とうとう趣味プログラマになりました。
登録:
コメントの投稿 (Atom)
node + ejs + Socket.io のサンプル
まずい。。 一年間、一回も更新してない!!! つまり、、 趣味の時間がほぼ皆無ということの現れです。 業務と子育てに追われた一年でしたね。。。。。 危なく年をこすところだった。あぶない。なぶあい。 話を変えて。 今月初旬に 社内でちょっとしたプレゼンをする事に...
-
bakeでBancha用のモデルとコントローラの作成 bakeで自動生成します。 まず、カレントディレクトリをappにして cd UserDir/public_html/app ./Console/cake bake を実行。 DB設定 Welcome...
-
banchaを使ってみる banchaのサイトは こちら から インストールから まずはCakeの設置。 (bancha:0.9.5はcake2.1.X(現在は2.1.5)に対応しています。 Dispacherの実装が2.2.Xだとことなるため、Banch...
-
Scaffoldを Banchaをググってたらフォーラムに到着して 出会いました。 見てみたら、マーケットにありますね。。 早速ソースをDLしてざっと眺めるとどうやら Banchaの仕様に適した(サンプルをデフォルトで実装してくれる様な) コンフィグビルダ的なプ...
0 件のコメント:
コメントを投稿