Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Вт сен 19, 2017 9:56 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 19 сообщений ]  На страницу 1 2 След.
Автор Сообщение
СообщениеДобавлено: Пн авг 03, 2015 6:16 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4165
Нужно добавить в ядро две сисфункции. Кто может это сделать?

Код:
=================================================
=== Функция 18, подфункция 19 - получить/установить настройки мыши. ==
=================================================
Подподфункция 6 - получить задержку для двойного нажатия мышью.
Подподфункция 7 - установить задержку для двойного нажатия мышью.

_________________
Через тернии к звездам


Вернуться к началу
СообщениеДобавлено: Вт авг 04, 2015 1:34 am 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4165
> CleverMouse « Пн авг 03, 2015 10:03 pm » в ядре вообще нет понятия двойного щелчка
> CleverMouse « Пн авг 03, 2015 10:03 pm » я не знаю, чего Leency хочет
Суть проста - иметь в ядре переменную, обозначающую длительность дойного щелчка мышью.
Двойнок клик сам по себе можно не реализовывать, пока что. Нужно по крайней мере иметь его длительность для начала.

_________________
Через тернии к звездам


Вернуться к началу
СообщениеДобавлено: Вт авг 04, 2015 1:43 am 
Не в сети
Аватара пользователя

Зарегистрирован: Ср апр 15, 2015 11:13 pm
Сообщения: 156
Для реализации double click, нужно реализовать down, up, и + за счет длительности времени можно и double click реализовать. Будет очень здорово, если кто нибудь сможет это в ядре реализовать. Но переменную я думаю проще сделать, а она бы сейчас уже бы пригодилась для Eolite, ну и для будущих программ на CMM.


Вернуться к началу
СообщениеДобавлено: Вт авг 04, 2015 1:54 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пн ноя 19, 2012 5:22 pm
Сообщения: 429
Хм. Тогда уж лучше вообще сделать функцию: установить значение глобально переменной с заданным id(или ещё как их обозначить) ну и прочитать его. Как в DOS. Или может проще сделать ini со стандартными настройками системы? Заодно параметры SETUP туда же. Пусть и он с ini работает, а не со своим setup.dat

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!


Вернуться к началу
СообщениеДобавлено: Вт авг 04, 2015 11:19 am 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4165
Можно и через глобальный settings.ini, но по-моему не разумно для получения интервала двойного клика подключать io.obj и libini.obj.

Потому я прошу добавить сисфункцию.

_________________
Через тернии к звездам


Вернуться к началу
СообщениеДобавлено: Пт авг 07, 2015 9:27 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1174
Один байт под задержку в сотых секунды. Двойной щелчёк устанавливает бит 7 (8-я кнопка мыши). Двойной щелчёк по заголовку тоже зависит от задержки.


Вернуться к началу
СообщениеДобавлено: Пт авг 07, 2015 9:35 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Ср апр 15, 2015 11:13 pm
Сообщения: 156
Pathoswithin писал(а):
Один байт под задержку в сотых секунды. Двойной щелчёк устанавливает бит 7 (8-я кнопка мыши). Двойной щелчёк по заголовку тоже зависит от задержки.

а есть события down (при нажатии кнопки мыши), up (при отжатии), move (при изменении координат или при перемещении мыши) ?


Вернуться к началу
СообщениеДобавлено: Сб авг 08, 2015 6:15 am 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1174
Или даже так: 37.2 возвращает еах, где биты 0-4 — состояние кнопок 1-5, биты 8-10 — нажатие кнопок 1-3, биты 16-18 — отпускание кнопок 1-3, бит 24 — двойной щелчок левой кнопкой, биты 7 и 15 — вертикальный и горизонтальный скролл. Если 0 после события, то движение мыши.
Можно добавить ещё, например двойной щелчок колёсиком или... скролл туда сюда?

1234500V 123xx00H 123xx000 1xxxx0rr


Вернуться к началу
СообщениеДобавлено: Сб авг 08, 2015 9:39 am 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4165
Спасибо! Я потестю и если ок залью.

> двойной щелчок колёсиком
по-моему излишний

_________________
Через тернии к звездам


Вернуться к началу
СообщениеДобавлено: Сб авг 08, 2015 2:25 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Ср апр 15, 2015 11:13 pm
Сообщения: 156
Pathoswithin писал(а):
Или даже так: 37.2 возвращает еах, где биты 0-4 — состояние кнопок 1-5, биты 8-10 — нажатие кнопок 1-3, биты 16-18 — отпускание кнопок 1-3, бит 24 — двойной щелчок левой кнопкой, биты 7 и 15 — вертикальный и горизонтальный скролл. Если 0 после события, то движение мыши.
Можно добавить ещё, например двойной щелчок колёсиком или... скролл туда сюда?

1234500V 123xx00H 123xx000 1xxxx0rr

Спасибо, тоже потестю.
А еще можешь так же и для клавиатуры сделать (нажатие кнопки, отпускание)?


Вернуться к началу
СообщениеДобавлено: Сб авг 08, 2015 3:21 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Ср апр 15, 2015 11:13 pm
Сообщения: 156
Pathoswithin писал(а):
Или даже так: 37.2 возвращает еах, где биты 0-4 — состояние кнопок 1-5, биты 8-10 — нажатие кнопок 1-3, биты 16-18 — отпускание кнопок 1-3, бит 24 — двойной щелчок левой кнопкой, биты 7 и 15 — вертикальный и горизонтальный скролл. Если 0 после события, то движение мыши.
Можно добавить ещё, например двойной щелчок колёсиком или... скролл туда сюда?

1234500V 123xx00H 123xx000 1xxxx0rr

при отпускании кнопки мыши, срабатывает событие движение мыши, так не должно..
на счет двойного щелчка, лишним не будет для всех 3 кнопок сделать
при движении мыши, во время нажатия мыши, сбрасывается бит, что тоже не удобно при перемещении элементов, я думаю лучше событие move поместить как отдельный бит, при 1 событие move -- 0 не move. А при отпускании кнопки мыши сбрасывать биты нажатой. При нажатии, сбрасывать отжатые. При движении мыши сбрасывать отжатые.


Вернуться к началу
СообщениеДобавлено: Сб авг 08, 2015 10:22 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1174
pavelyakov писал(а):
при отпускании кнопки мыши, срабатывает событие движение мыши
Не понял, подробней.
Сам драйвер мыши устанавливает только первые 5 бит, они означают состояние кнопок. Остальные биты означают событие, которое произошло только что, и сбрасываются при следующем событии от драйвера. Событие "движение мыши" будет расцениваться текущими программами как нажатие какой-то кнопки, поэтому его нет и не будет.
А главное, что я всего лишь вывел то, что было в ядре. Кажется, у проекта есть проблема... всемпохуй.


Вернуться к началу
СообщениеДобавлено: Сб авг 08, 2015 10:53 pm 
Не в сети

Зарегистрирован: Вт апр 12, 2011 11:19 pm
Сообщения: 1073
pavelyakov писал(а):
А еще можешь так же и для клавиатуры сделать (нажатие кнопки, отпускание)?

Это уже и так реализованно. Читай скан код нажатой клавиши, он разный для нажатия и для отпускания. Все комбинации клавишь в Eolite тоже необходимо перевести на скан-кода (как раз этим занимаюсь).

_________________
я лишь учусь


Вернуться к началу
СообщениеДобавлено: Сб авг 08, 2015 11:07 pm 
Не в сети

Зарегистрирован: Вт апр 12, 2011 11:19 pm
Сообщения: 1073
Большинство, из того что нужно, можно и нужно реализовать в userspase, тобишь в библиотеках (написать тот же тулкит для построения GUI). Это одна сторона проблемы (которую могут решить и многие прикладники). С другой стороны, необходимо улучшить эту самую систему библиотек и процедуру их загрузки (этим как раз и занимается CleverMouse, работая над реализацией DLL, это так же даст то, что библиотеки будут единожды загружены в память, и доступными всем приложениям, если я не прав, то поправте). Так что утверждение что всем всеравно, не совсем правильное. Яркий пример правильного подхода, библиотека http.obj от hidnplayr, которая предоставляет высокоуровневый нтерфейс для работы с протоколов http. Ядро должно предоставлять лишь необходимый минимум, для всего остального есть библиотеки. Но да, каждый предпочитает в основном изобретать велосипеды, или переосить их с одной программы в другую, вместо того, чтобы вынести это в общую библиотеку.

_________________
я лишь учусь


Вернуться к началу
СообщениеДобавлено: Вс авг 09, 2015 3:48 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пн ноя 19, 2012 5:22 pm
Сообщения: 429
Оффтопик: в Википедии или ещё где задокументировать библиотеки и их API (в Вики есть, но там далеко не всё и устарело) . Авось пользоваться чаще будут. Лень же копаться в форуме и исходниках. Да и не всегда найдёшь эти описания-то.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 19 сообщений ]  На страницу 1 2 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB