Задержка для двойного клика мышью

Internal structure and you change requests/suggestions
  • > CleverMouse « Пн авг 03, 2015 10:03 pm » в ядре вообще нет понятия двойного щелчка
    > CleverMouse « Пн авг 03, 2015 10:03 pm » я не знаю, чего Leency хочет
    Суть проста - иметь в ядре переменную, обозначающую длительность дойного щелчка мышью.
    Двойнок клик сам по себе можно не реализовывать, пока что. Нужно по крайней мере иметь его длительность для начала.
    Из хаоса в космос
  • Для реализации double click, нужно реализовать down, up, и + за счет длительности времени можно и double click реализовать. Будет очень здорово, если кто нибудь сможет это в ядре реализовать. Но переменную я думаю проще сделать, а она бы сейчас уже бы пригодилась для Eolite, ну и для будущих программ на CMM.
    Технологии меняют мир, а я - меняю технологии.
  • Хм. Тогда уж лучше вообще сделать функцию: установить значение глобально переменной с заданным id(или ещё как их обозначить) ну и прочитать его. Как в DOS. Или может проще сделать ini со стандартными настройками системы? Заодно параметры SETUP туда же. Пусть и он с ini работает, а не со своим setup.dat
    Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!
  • Можно и через глобальный settings.ini, но по-моему не разумно для получения интервала двойного клика подключать io.obj и libini.obj.

    Потому я прошу добавить сисфункцию.
    Из хаоса в космос
  • Один байт под задержку в сотых секунды. Двойной щелчёк устанавливает бит 7 (8-я кнопка мыши). Двойной щелчёк по заголовку тоже зависит от задержки.
  • Pathoswithin wrote:Один байт под задержку в сотых секунды. Двойной щелчёк устанавливает бит 7 (8-я кнопка мыши). Двойной щелчёк по заголовку тоже зависит от задержки.
    а есть события down (при нажатии кнопки мыши), up (при отжатии), move (при изменении координат или при перемещении мыши) ?
    Технологии меняют мир, а я - меняю технологии.
  • Или даже так: 37.2 возвращает еах, где биты 0-4 — состояние кнопок 1-5, биты 8-10 — нажатие кнопок 1-3, биты 16-18 — отпускание кнопок 1-3, бит 24 — двойной щелчок левой кнопкой, биты 7 и 15 — вертикальный и горизонтальный скролл. Если 0 после события, то движение мыши.
    Можно добавить ещё, например двойной щелчок колёсиком или... скролл туда сюда?

    1234500V 123xx00H 123xx000 1xxxx0rr
  • Спасибо! Я потестю и если ок залью.

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

    1234500V 123xx00H 123xx000 1xxxx0rr
    Спасибо, тоже потестю.
    А еще можешь так же и для клавиатуры сделать (нажатие кнопки, отпускание)?
    Технологии меняют мир, а я - меняю технологии.
  • Pathoswithin wrote:Или даже так: 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. А при отпускании кнопки мыши сбрасывать биты нажатой. При нажатии, сбрасывать отжатые. При движении мыши сбрасывать отжатые.
    Технологии меняют мир, а я - меняю технологии.
  • pavelyakov wrote:при отпускании кнопки мыши, срабатывает событие движение мыши
    Не понял, подробней.
    Сам драйвер мыши устанавливает только первые 5 бит, они означают состояние кнопок. Остальные биты означают событие, которое произошло только что, и сбрасываются при следующем событии от драйвера. Событие "движение мыши" будет расцениваться текущими программами как нажатие какой-то кнопки, поэтому его нет и не будет.
    А главное, что я всего лишь вывел то, что было в ядре. Кажется, у проекта есть проблема... всемпохуй.
  • pavelyakov wrote: А еще можешь так же и для клавиатуры сделать (нажатие кнопки, отпускание)?
    Это уже и так реализованно. Читай скан код нажатой клавиши, он разный для нажатия и для отпускания. Все комбинации клавишь в Eolite тоже необходимо перевести на скан-кода (как раз этим занимаюсь).
    to infinity and beyond
  • Большинство, из того что нужно, можно и нужно реализовать в userspase, тобишь в библиотеках (написать тот же тулкит для построения GUI). Это одна сторона проблемы (которую могут решить и многие прикладники). С другой стороны, необходимо улучшить эту самую систему библиотек и процедуру их загрузки (этим как раз и занимается CleverMouse, работая над реализацией DLL, это так же даст то, что библиотеки будут единожды загружены в память, и доступными всем приложениям, если я не прав, то поправте). Так что утверждение что всем всеравно, не совсем правильное. Яркий пример правильного подхода, библиотека http.obj от hidnplayr, которая предоставляет высокоуровневый нтерфейс для работы с протоколов http. Ядро должно предоставлять лишь необходимый минимум, для всего остального есть библиотеки. Но да, каждый предпочитает в основном изобретать велосипеды, или переосить их с одной программы в другую, вместо того, чтобы вынести это в общую библиотеку.
    to infinity and beyond
  • : в Википедии или ещё где задокументировать библиотеки и их API (в Вики есть, но там далеко не всё и устарело) . Авось пользоваться чаще будут. Лень же копаться в форуме и исходниках. Да и не всегда найдёшь эти описания-то.
  • Who is online

    Users browsing this forum: No registered users and 10 guests