При управлении редактором из диалога вызываем ECTL_SETPOSITION, затем ECTL_REDRAW.
Проблема в том, что ECTL_REDRAW не перерисовывает часть экрана, закрытую диалогом, и при сдвиге диалога мышью можно наблюдать прежнее (до ECTL_SETPOSITION) содержимое экрана.
1. Это нормально или баг?
2. Как лечить?
Вызов ECTL_REDRAW из диалога
- zg
- zero-gravity
- Posts: 6035
- Joined: Tue 15 Mar, 2005 17:36
- Location: riga
- Been thanked: 185 times
- Contact:
Вызов ECTL_REDRAW из диалога
это баг. даже скорее недоделка.Shmuel wrote:1. Это нормально или баг?
удалить class SaveScreen и переписать нормально те участки кода, которые его используют.Shmuel wrote:2. Как лечить?
-
- Posts: 6834
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
Вызов ECTL_REDRAW из диалога
Поскольку неизвестно, когда это будет сделано, нашёл обходной путь: вызываю DM_SHOWDIALOG(0) до перерисовки редактора и DM_SHOWDIALOG(1) - после.zg wrote:удалить class SaveScreen и переписать нормально те участки кода, которые его используют.Shmuel wrote:2. Как лечить?
Mantis: http://bugs.farmanager.com/view.php?id=3051
- John Doe
- Бюрократ
- Posts: 13851
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 428 times
- Contact:
Вызов ECTL_REDRAW из диалога
Столкнулся с той же проблемой, и могу добавить некоторые детали:
То же самое, если изменить текст другим образом.
То же при использовании DM_MOVEDIALOG.
-
- Posts: 6834
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
Вызов ECTL_REDRAW из диалога
1. Сегодня обнаружил весьма странное и непонятное мне явление: если файл в редакторе открыт из архива, то это "временное прятание" диалога приводит к тому, что выделение, сделанное при спрятанном диалоге, становится невидимым.
2. Если диалог не прятать, всё нормально.
3. Если файл открыт не из архива, всё нормально.
Даже не знаю, как это всё связать.
-
- Posts: 6834
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
Вызов ECTL_REDRAW из диалога
Проблема неперерисовки "файла, открытого из архива" проявляется в любом модальном редакторе.
zg, насколько я понимаю, это то изменение в manager.cpp, где стоит коммент
Может откатишь этот кусок?
zg, насколько я понимаю, это то изменение в manager.cpp, где стоит коммент
//если одно из окон заблокировано, большого смысла в перерисовке пока нет
.Может откатишь этот кусок?
- zg
- zero-gravity
- Posts: 6035
- Joined: Tue 15 Mar, 2005 17:36
- Location: riga
- Been thanked: 185 times
- Contact:
Вызов ECTL_REDRAW из диалога
там баг. в немодальном редакторе тоже не должно перерисовываться.Shmuel wrote:Даже не знаю, как это всё связать.
что именно там нужно откатить?Shmuel wrote:Может откатишь этот кусок?