Page 1 of 1

DI_TEXT + DIF_CENTERTEXT

Posted: Sat 17 Jun, 2017 05:01
by Dec
Документация о флаге DIF_CENTERTEXT гласит следующее: выравнивать текст по центру относительно координат X1 и X2. Если я правильно понял, то X1 и X2 - это координаты, переданные в FarDialogItem. Но по факту в моих экспериментах текст всегда выравнивается по центру диалога. Это ошибка документации/кода FAR/моих экспериментов? И еще одна особенность - для DIF_NONE или DIF_RIGHTTEXT текст всегда отображается полностью, независимо от X1 и X2, то для DIF_CENTERTEXT текст обрезается до размеров X2-X1+1 символов. Так и должно быть?

DI_TEXT + DIF_CENTERTEXT

Posted: Sat 17 Jun, 2017 14:48
by DrKnS
Наверное ошибка.

DI_TEXT + DIF_CENTERTEXT

Posted: Sat 17 Jun, 2017 15:05
by Dec
DrKnS wrote:
Sat 17 Jun, 2017 14:48
Наверное ошибка.
Это ошибка документации/кода FAR/моих экспериментов?

DI_TEXT + DIF_CENTERTEXT

Posted: Sat 17 Jun, 2017 16:54
by DrKnS
Кода.
Должно выравниваться в пределах элемента, текст должен обрезаться всегда.
Запишите на багтрекер.
Патчи тоже приветствуются.

DI_TEXT + DIF_CENTERTEXT

Posted: Wed 16 Aug, 2017 10:02
by DrKnS
Dec wrote:
Sat 17 Jun, 2017 05:01
Документация о флаге DIF_CENTERTEXT гласит следующее: выравнивать текст по центру относительно координат X1 и X2. Если я правильно понял, то X1 и X2 - это координаты, переданные в FarDialogItem. Но по факту в моих экспериментах текст всегда выравнивается по центру диалога.
Исправлено в 5007.
Dec wrote:
Sat 17 Jun, 2017 05:01
DIF_NONE или DIF_RIGHTTEXT текст всегда отображается полностью, независимо от X1 и X2, то для DIF_CENTERTEXT текст обрезается до размеров X2-X1+1 символов.
Здесь всё несколько хуже - десятилетиями и в Far, и в плагинах считалось не барским делом высчитывать X2 - ставили то же, что и в X1, а движок рисовал, не обрезая.
Начиная с 5008 будет обрезаться, если X2 != X1 (т. е. если у вас вдруг есть необходимость в DI_TEXT шириной в 1 символ - в нем это таки работать не будет).

DI_TEXT + DIF_CENTERTEXT

Posted: Thu 17 Aug, 2017 09:57
by John Doe
На мантисе по "DIF_CENTERTEXT" поиск находит несколько багов.