忍者ブログ
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
プロフィール
HN:
[-_-;] (みかん)
性別:
男性
趣味:
プログラミング、XOPS
自己紹介:
中部地方在住です。
最新コメント
[11/30 NONAME]
[11/22 NONAME]
[09/24 NONAME]
[06/10 NONAME]
[01/29 NONAME]
XOPS関連サイト「みかん箱」の運営や、OpenXOPSの開発などを行う[-_-;](みかん)のブログ。近状報告や独り言などを書きます。
Prev Month123456789101112131415161718192021222324252627282930Next Month
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

category :
PR
「XopsAddonCreator」の開発 -37
前回言ったXopsAddonCreatorの作り直し計画の件、適当に勢いに任せて
突き進んでいます。

とりあえずウインドウ周りの処理を作り込んでいました。
色がメチャクチャですが。

(クリックで拡大)


以下、中身の技術ネタです。

Windowsアプリケーションなので、ウィンドウプロシージャの処理が味噌
となります。
ウィンドウプロシージャ自体は難しくはないのですが、無計画に組み立てて
行くと、あっという間にスパゲッティソースになるので要注意です。

ウィンドウプロシージャの処理については、まだ設計・実装がFIXしているわけ
ではなく、全体をイベント駆動型にするか、指定関数を直接実行する構造に
するか、迷っています。

最初に思いついたのはイベント駆動を用いた設計でしたが、
ウインドウサイズを変更する際にウィンドウプロシージャが連続で実行される
ため、外でイベントがキャッチできず、ウインドウサイズ変更に期待通り対応
できませんでした。
どうしたものかと困りましたが、サイズ変更時にWM_SIZEをキャッチして、
関数ポインタを用いて指定関数を直接実行する構造にすれば、期待通り動作する
ことが分かりました。

現状は、イベント駆動と関数実行機能が両方載っていますが、将来的には関数
実行機能だけで良いかとは思い始めています。
せっかく作ったイベント駆動を消すのは勿体ない気持ちもありますが、まぁ
要らないものは要らないですからね。他で使えれば良いのですが。
あと、今回初めて自発的に関数ポインターを設計に組み込んで活用しましたが、
自信の中で実績がなく、デメリットや注意点が完全に把握できてないです。。
とりあえずNULL判定だけすればよい??(^^;
実績が皆無な技術を過信したまま、設計の中心に入れて良いものなのか全く
分かりません。

なお、今回色々調べた中で「メッセージクラッカー」というMicrosoft公式の
ラッパー・マクロもあることを知りましたが、結局のところはSwitch文が多少
綺麗になる程度で、目当ての使い方はできないようなので辞めました。

いやー、これはこれでOpenXOPSとは違う難しさがありますなー。


それにしても、現行XopsAddonCreatorは2012~2013年頃に作り始めており、
(現行品の系統は)もう10年前に開発したことになります。
他所でも呟きましたが、このレベルのエディタを1年程度で作り上げるって、
今思えば信じられない話です。
まだXOPS界隈に人が居る時代で周囲からの期待もありモチベーションも
高かったり、今と比べて平日も時間があったり、当時は ただただ無計画に
勢いで進めていた節もありますが、
一番大きいのは今よりも10歳若いという事実だろうなぁ。。 若いは強い。
category : ソフト・ツール開発 comment [0]
COMMENTS
【本文以外は任意項目です】
SUBJECT(タイトル)
NAME(お名前)
MAIL(メールアドレス)
HOME(サイトURL)
COMMENT(本文)
PASS(削除パスワード)
Secret?(管理者へのみ表示)

※スパム防止のため「Hello!」「website」「ブランド」「みかんの戦闘ブログ」
「http」などの一部キーワードを禁止しています。ご了承ください。

※過去のブログ記事は 原則として編集・修正していません。
 各記事の内容は投稿時のものであり、現在では異なる場合があります。
 最新の情報は、関係する内容について書かれた 最新の記事をご覧ください。

TOP