سلام .در مورد اونهایی که توی ویندوز هستن تا اونجا که میدونم این ادیتور ها معمولا از کنترل های پیشفرض ویندوز مثل Edit یا RichEdit واسه نشون دادن و درست کردن محیط تایپ استفاده نمیکنن.یعنی کل عملیات مربوط به یک TextBox رو بر اساس نیازی که دارن باز سازی میکنن.(یک کلاس Custom برای این کار Register میکنن)
مثلا شما یه متنی رو توی ادیتور ِ ویژوال استادیو به عنوان کد cpp وارد میکنی.
توی ساده ترین حالت این ادیتور یک Parser داره که میاد کد رو کلمه به کلمه و کاراکتر به کاراکتر بررسی میکنه.بعد مثلا میاد از بالا به پایین تک تک کلمه ها رو چاپ میکنه.قبل از چاپ میاد کلمه ها رو با تک تک Keyword های موجود مثل if چک میکنه و اگه اون کلمه keyword بود اون رو با رنگ مربوط به keyword چاپ میکنه و الی آخر...
نمونه Open Source یه همچین برنامه ای البته به شکل سادش که با Visual CPP نوشته شده(بوسیله MFC) رو من از
http://quincy.codecutter.org دانلود کردم.