見出し画像

【projectItemRenamer.jsx】二次調整 32【開発記】


今回の概略

layout.layout() は window でやれば全部計算してくれるのかと思ったらむしろ計算してくれない件に関して😞

#jsx #開発記
#ExtendScript #AfterEffects

作業準備
忘却分実装
定義新式化
Event,EventTarget
ライブラリ調整
一次調整
UI 定義 obj 調整
UI 生成再構築
二次調整 ←今ココ
UI 追加
結果一覧 CSV
ラベル対応
第2層改装
ローカライズ対応
OTSParser 改
総合試験
最終調整
公開準備

----備忘録
optname と options をもっと上位で定義してその参照に置き換える
「いくない」(及び要修正)の排除
MAIN,EXE の配置再考
背面に送れない…?
plist を MAIN プロパティに足す
jsx 再実行で閉じれない
ボタンタイトルクリック及びショートカットESCによる終了の実装
_debug とかのグローバル変数消す
UI オブジェクトの登録方法が忘れるとどうにもならないのでもう少し高級化したい
UI 生成方法の改善
 環境読込でパネルを表示してから状態復帰する件
UI とかの app 固有は collect みたいな BridgeTalk の振り分け
BridgeTalk.appName をどこか共通で使える場所に確保( global 参照と関連)
global に定義した UI の参照いくない
nameReplacer が candidate を呼ぶ為の options 設定を UI 設定側と一元化
PrefsRestorater と NRHistories の連携が取りにくい
restoreList のクラス化
インスタンス参照可能にしている辞書を辞める
 escapeDic のインスタンス参照廃止
 tokenTypeDic のインスタンス参照廃止
 FileState.errCode のインスタンス参照廃止
 FileState.errDic のインスタンス参照廃止
所属ライブラリの調整
ファイル系は PREF から FILE へ
イベント駆動型でスコープ外変数の参照を減らす
ラベルカラー対応
第2層 3D レイヤー
ソロスイッチ
機能ボタン配置 ( ver 20230317_00 で断念した margine 問題)
第2層ラジオボタン化
listToCsv
ローカライズテキスト対応?
ローカライズの書式を一般的な物に修正したい
OTSParser 改
OTSPElement の property の幾つかが [PNAME.????] になってるので直値にする
 全部やる必要は無いけど nodeValue とかは直の名前なので統一するという意図

UUI 整備が一段落したらここで全体の構成に手を入れようかな🤤
現在では jsx 用の、プロジェクト名変数に全部突っ込んで obj に参照を入れて賄っていたけれどオブジェクトとして new して走らせる形に変更🤔
このオブジェクトに _debug だとか _global の参照だとか BridgeTalk.appName だとかを持たせる、と🤤
所謂いわゆる main プロセス用オブジェクトかな🤔
それとは系譜を別として _zlib が有って2系統のオブジェクトやライブラリが有って _zlib は main は参照しない様に作る😑(当然ね
STAT,INFO のコールバック統合、イベント駆動型のスコープ外参照削減とかもここでできると良いかな🤤
題目は「二次調整」🤤
ここは一次調整よりも時間掛かると思う😑


前回の粗筋

古いパネル生成の影響で環境設定項目の名前が不統一だったのを是正できてすっきり🤤



パネル復元

「いくない」より UI の認識が生きてるうちに復元の修正するぽ😑

【projectItemRenamer.jsx】環境読込 69【開発記】
https://note.com/sayka/n/n1b96a4ace762

この、初期位置に出てから復元されるの、なんとかしたいってヤツね😞
UI の話を先にしようと思ったのは前回 windowsObj.update() を調べる時に layout.resize() と layout.layout() の確認しててとある記事に layout について書かれてたのが発端かな🤔

自動レイアウト
layout()メソッドの使用方法
https://sites.google.com/view/youuu4/HowToWrite/automaticlayout#h.p_P7GFc9xZef5b

layout()直後からbounds値が存在する。
Windowをshow()した時にも自動で実行される。なのでWindowの時は実は書かなくても表示できちゃう。

layout.layout() はかなり古い jsx には残ってるんだけどこのツールprojectItemRenamerには無いのよね😑
どこだったかの工程で「無くても出るじゃん」で削ったのは覚えてるけどそれがいつだったのか、この開発だったかのかさえももう覚えてない🤪

で、以前 "環境読込" 辺りで「 window の bounds が show() 前に無くて…」ってなって現在の "一度表示してから復元" に落ち着いてるんだったと思う😑
これ、 layout() 挟めば bounds が現れて show() するまえに環境読込できるのでは?と気付いたので急遽「いくない」を後回しにしたというオチ🤤
まず show() 前に window に bounds が無いのを確認するぽ🤔

bounds は確かに無い🤔

show() したら bounds が算出されてて初期位置だお🤤
読込終わったら復元された値になってたので layout() で bounds が出れば show() の実行位置を変更すれば目的達成?🤔

どこ入れよう😑

………😞
layout() やっても算出されないんだけど🙄
update も入れてみる?🤪

………ダメぽ…😞ナンデ

………

………

………

"JavaScript Tools Guide CS6.pdf" を見る限りだとどうも window 以外にも有る様でもしかして下層から順に全部やらないとならないのでは…🙄


次回は

buildUI の中で layout 有るヤツ片っ端から layout.layout() を実行するように改造してみようかしらね🤤

この記事が気に入ったらサポートをしてみませんか?