Мягкая часть тела с Edit’ами

January 10th, 2008 Begemot Posted in Uncategorized

Просто какая-то отвратительная ситуация с эдитами в мире, причем не  в wxWidgets а в целом. Не могу подобрать идеальный Edit Control для своей задачи, хотя требования у меня довольно простые, без особых наворотов.

Чего хочется:

  1. Функциональность обычного простого эдита (notepad)
  2. _Обязательно_ множественное undo\redo.
  3. _Желательно_ подсветка и клик на ссылках.
  4. Корректная работа с точки зрения пользователя.
  5. Хотелось бы иметь возможность в будущем (опционально) перейти на RTF если стукнет в голову.

Собственно если говорить про MSW и wxWidgets, есть 4 варианта:

  1. Обычный edit control (CEdit, wxTextCtrl, Notepad) – (2) обязательное условие не выполняется.
  2. RTF контрол (CRichTextCtrl, wxTextCtrl+wxTE_RICH, WordPad) – все пункты кроме (4) выполняются. На скорость работы и совместимость версией под линукс можно забить пока, но (4) условие не выполняется. Для пользователя контрол должен выглядеть простым (не ртф) – соответвенно вставять и копировать _только_ plain text, этого добиться не получается.
  3. wxWidgets версию RTF контрола wxRichTextCtrl (generic, ground-up implementation of a text control capable of showing multiple styles and images.) – Как-то она вообще не внушает доверия в плане работы, к тому же пункт (5) вызывает определенные проблемы.
  4. Scintilla – там что-то непонятное с RTF, с одной стороны он умеет с ним работать – сохранять файлы как RTF, копировать в буфер – но полноценной работы я не нашел.

Наверное забью я в итоге на пользователей (и на себя самого, потому что от отсутствия ундо я сам страдаю) и возьму для начала обычный edit.


Если пост полезен для вас вы можете подписаться на RSS или мы можем доставлять вам новые посты прямо в ваш почтовый ящик.

Related:
    No matches

Posted in Uncategorized | Tags:

One Response to “Мягкая часть тела с Edit’ами”

  1. Как оказалось в юниксе все еще хуже, Julian Smart, в рассылке ответил мне

    “The wxGTK implementation of wxTextCtrl doesn’t have undo/redo”

    вообщем пойду wxRichTextCtrl помучаю, может окажется подходящим.