Меняем курсор

Операционная система, написанная на языке Оберон и проект её перевода на русский язык. Только технические вопросы.
Ответить
БудДен
Сообщения: 942
Зарегистрирован: 07.10.18 14:01

Меняем курсор

Сообщение БудДен » 29.06.20 20:42

Цель ветки "курсор-покажет-раскладку" - чтобы форма курсора показывала, включена ли кириллица или латиница.

Код: Выделить всё


WMTextView.Mod: 

	Cursor = OBJECT(PositionMarker)
	
WMEditor.Mod

        CursorWitdh := 2 (WTF?)
Второй вариант относится к "простому текстовому полю", например, Текст/Стили.
Там курсор всегда является просто квадратиком.
А где обычный курсор настраивается?
Последний раз редактировалось БудДен 30.06.20 23:26, всего редактировалось 1 раз.

БудДен
Сообщения: 942
Зарегистрирован: 07.10.18 14:01

Re: Меняем курсор

Сообщение БудДен » 29.06.20 21:05

WMTextViews.TextView.cursor,
инициализируется пр-рой CreateCursor(), к-рая не загружает никакой картинки.
Картинку может загружать PositionMarker.Load()

БудДен
Сообщения: 942
Зарегистрирован: 07.10.18 14:01

Re: Меняем курсор

Сообщение БудДен » 30.06.20 01:07

Кое-как сделал, для частных случаев. При включённой латинице загогулина внизу, а при не-латинице - вверху.

Самое страшное - при переключении раскладки нужно найти и перерисовать курсор. Часть курсоров мигает - они сами перерисуются.
А другие - не мигают. Что с ними делать? Я не знаю.
Вложения
два-курсора.png
два-курсора.png (13.2 КБ) 63 просмотра

БудДен
Сообщения: 942
Зарегистрирован: 07.10.18 14:01

Re: Меняем курсор

Сообщение БудДен » 30.06.20 23:25

Что-то наколдовал, вроде работает. Но при запуске иногда курсор не просыпается
и не начинает мигать до первого переключения в другое окно. В таком случае и перерисовка
по смене раскладки клавиатуры не происходит.

Ответить