editor/idl
のカオス
初回投稿日時: 2010年05月08日17時36分13秒
カテゴリ: Mozilla Core
SNS:
Tweet (list)
editor/idl
にあるインターフェースが中々にカオスです。前からですが。
- nsIEditor.idl
nsEditor
にアクセスするための外部インターフェース。- nsIEditorIMESupport.idl
- IME関連の機能にアクセスするための外部インターフェース。
nsEditor
で実装。 - nsIEditorMailSupport.idl
- 引用して貼り付け、等のメール関連に特化した機能だけを集めた外部インターフェース。
nsPlaintextEditor
で実装。 - nsIHTMLEditor.idl
nsHTMLEditor
にアクセスするための外部インターフェース。- nsIPlaintextEditor.idl
nsPlaintextEditor
にアクセスするための外部インターフェース。
エディタの実装と、その利用に関してはこれらのインターフェースが利用されますが、まず問題の一点目は、実装をもとにインターフェースがデザインされているため、利用者からはさっぱり分からないこの分け方。また、二点目は無駄にnsIEditor
からQIが必要なため、コードが無駄に読みにくくなっていることです。
ひとまず、nsIEditorIMESupport
はnsIEditor
に統合しようと企んでいます。
それが終われば、nsIEditorMailSupport.idl
も同様にできるかなぁとは思いますが、ユーザ次第というところでしょうか(拡張レベルでもこの辺にアクセスしてくるのは希だとは思いますので、そこまでは考えていませんが)。
これをやってしまうと、今度はnsIEditor
がふくれあがってきますが、ここには実装に必要なだけのメソッドが大量にあります。これらを別のインターフェースに移して、もうちょっとわかりやすくできないかなぁと考えてるところです。