>とりあえず"動いた"ようなのでupします。
まず検索文字列の色分けがおかしいような...
試しにCEditApp.cppから検索してみたところ
・検索文字列の位置にかかわらず常に行頭から検索文字列色になる.
・検索文字列の選択範囲がずれる
という現象が見られます.
次に文字列の色分け.ダブルクォート中のシングルクォート文字列がシングルクォート色になります.逆は大丈夫.
シングルクォートを閉じたあとの色がダブルクォートの終わりが文字列中にあれば通常の文字色,無ければダブルクォート色になるのでおかしいなりにうまく動いているようではありますが.
文字列をコメントより優先しているためかコメント中の文字列も色分けされますね.
優先度という点では検索文字列とそれ以外の2段階のみで,通常の色分けルールは優先度だけでは表現できないと思います.
あと様々な描画関数に渡しているたくさんの引数を全部統一した構造体にする方が速度と見やすさの点から良いと思うのですが.どうでしょうか.