お久しぶりです 一月も音沙汰なく、一体何をしていたかと言うと……何もしてなかったんだなコレが。
で某掲示板で名前が挙がるじゃない……実際、焦ったよ。いやホントに読まれてると思ってなかったから(爆) ちう訳で、とりあえず再開だ。
だが……何気に思いついた方法で、TRichEdit.Textにはプレーンなテキストが格納されているので、これをファイルとして保存すれば良かったのだ。TRichEdit.Lines.Textの方はRTFタグが含まれていて、これだけでもう諦めていたのだが。
かくして、着色に関しての大きな問題の一つは解決を見た。しかし、次の問題はこれまた難易度が高い様だ。
狙いは間違ってはいなかった。IW誌の記事を参考に、Delphiのソースコードを統合環境と同じように色分けして表示するサンプルを元に、コメント部分を少し書き換えただけでタグを色分けする事が出来た。俺って天才? だが……。
もちろんそれだけで満足はしていなかった。色分けが出来るだけならWzEditorでもいいのだ。しかしWZエディタでは、タグは中の構造に関わらず単色で表示するのだが、やはり数値や文字列は別の色を表示したい。したいしたいしたい!
色々と試したのだが、RTF形式そのものが「文字列の途中の部分だけ一時的にアトビリュートを替える」と言う事が出来ない事から、タグの中のダブルクォーテーションで囲まれた部分を着色すると、その後の属性を戻すのに大変なのである。HTMLタグであれば、</FONT>等として元の属性にも戻せるのだが……
ClassesユニットのTParserクラスや先のIW誌のサンプルなどをご覧になれば判るのだが、解析処理の構造上、直前の状態を記録しておくのが中々難しいので、この問題は当分棚上げである。
小さな問題としては、昔のテキストエディタのように改行文字(↓)を表示したいけど、そんなこと出来るのかなぁとか、アンダーラインも要るよねとか、そんな見た目だけの事でね
ブラウザとの切り替えはメニューだけでなく、ショートカットキーでもできるようになる。ただブラウザ側からの復帰がネックとなりそうだ。というのは要するにIE4ブラウザを貼り付けるのだからキー処理をそっちに奪われる可能性がある……最悪、Application.OnMessageを処理すれば何とかなるはずなのだが。出来ればそんな泥臭い事には手を出さないで済ませたいものだ(笑)
現在の進展状況