ツリーコントロールとツリー構造のデータとのリンク
ツリーコントロールとツリー構造のデータとのリンク
私が開発しているソフトウェアは、データ構造として
ツリー構造を使っています。このツリー構造のデータ
を表示するためにツリーコントロールを使って
いますが、データとツリーコントロールのリンクする
方法として良い方法を探しています。
ここでいう「リンク」とは、例えば
ツリー構造のデータにデータの追加や削除が
おこなわれた場合、該当するツリーコントロールの
データも追加と削除をおこなう。ことです。
現時点では、ツリー構造のデータにデータの追加や
削除がおこなわれたら、ツリーコントロールに
SendMessageを送ってツリーコントロール側の
データの追加や削除をおこなっています。この場合、
ツリー構造のデータのクラスに、GUIのクラスの
ポインタを保持しています(ツリーコントロール
へのSendMessageのためにCWnd*を保持している)。
データにGUIに関わるコードが存在するので、
GUIに依存しない方法に変えたいのですが、みなさんは
このような場合はどうしていますか?
ちなみに現時点では、Design PatternのObserver
Patternを採用してみようと思っています。
他に良い方法があれば教えてください。
よろしくお願いします。
開発環境:VC++6.0, MFC