Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Victor Wagner                        2:5020/400     16 Feb 2002  13:04:58
 To : Zahar Kiselev
 Subject : Re: Языковые оболочки...
 -------------------------------------------------------------------------------- 
 
  Zahar Kiselev <Zahar.Kiselev@p1.f382.n5030.z2.fidonet.org>
  wrote:
  
 ZK> Hello Dmitry! 
  
 ZK> Feb 15 18:43 02, Dmitry Kochkin wrote to All: 
  
  >>> В том, что не моя программа вызывает функции библиотеки, а
  >>> сама  библиотека решает как и когда передать управление
  >>> функциям моей  программы. 
  DK>> Hу и что? Тебя беспокоит, что твоя функция вызывается не
  DK>> сообщением  от ОС,  а библиотечной оберткой над этим
  DK>> сообщением? А какая существенная  разница? 
 ZK> Мы похоже не понимаем друг друга. Вот что я имею в виду.
 ZK> Моя программа вызывает функцию получения кода клавиши(или
 ZK> события мыши). Функция возвращает некоторое значение,
 
 Захар, ты не задумыввался о том, что в многооконных системах
 жизнь бывает несколько сложнее, чем описанная тобой модель.
 
 Тебе действительно хочется самому обрабатывать все эти
 Expose, MappingNotify, SubstructureNotify, Resize, Configure, Circulate,
 ICCCM запросы от других программ, и прочие события
 определенные в X-протоколе. А если немного подумать,
 то дисплей является далеко не единственным источником событий.
 Есть еще пайпы в дочерние процессы, и, если ты не будешь обрабатывать
 их в том же цикле, то на время запуска дочернего процесса у тебя
 интерфейс "замерезнет", есть сокет, ведущий к audio-серверу,
 на котором время от времени возникает событие "а кинь-ка мне
 еще кусок wav-а", есть другие сокеты, которые постоянно становятся
 то readable, то writable.
 
 Система с callback-ами позволяет легко разнести логику обработки
 этих событий как по видгетам, так и по функциональным блокам программы.
 Более того, примерно для трех четвертей событий библиотеки предоставляют
 обработчики по умолчанию, и если ты создал, скажем поле ввода текста,
 то нажатие алфавитно-цифровых клавиш на нем - уже не твоя забота 
 (если ты конечно, не хочешь туда валидатор повесить. Если хочешь,
 то ты работаешь в терминах валидации вводимой строки, а не в терминах
 событий протокола)
 
 ZK> так. А во иксовых интерфейсных библиотеках этот цикл и
 ZK> функция получения события(клавиши или мыши) - упрятаны
 ZK> внутрь библиотеки и соответственно я лишен возможности
 ZK> контроля над этим.  
 
 Вообще говоря, есть pure Xlib, которая устроена точно так, как
 ты описал. Почему-то большинство программистов предпочитает
 пользоваться высокоуровневыми обертками. А те, кто этого
 не делает, редко пишут программы, имеющие приемлемый look & feel.
 Постоянно, то WM_DELETE_WINDOW забывают обработать, то еще что.
  
 -- 
 ... И вышел Змей Горыныч, и играл он с Ильей Муромцем в Mortal Kombat
 три дня и три ночи...
 
 Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru
 --- ifmail v.2.15dev5
  * Origin: Free Net of Leninsky,45 (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: =?KOI8-R?B?8drZy8/X2cUgz8LPzM/ey8kuLi4=?=   Dmitry Kochkin   13 Feb 2002 17:34:05 
 Re: =?KOI8-R?B?8drZy8/X2cUgz8LPzM/ey8kuLi4=?=   Zahar Kiselev   14 Feb 2002 03:55:02 
 Re: =?KOI8-R?B?8drZy8/X2cUgz8LPzM/ey8kuLi4=?=   Dmitry Kochkin   14 Feb 2002 21:00:58 
 Re: =?KOI8-R?B?8drZy8/X2cUgz8LPzM/ey8kuLi4=?=   Zahar Kiselev   14 Feb 2002 22:05:26 
 Re: =?KOI8-R?B?8drZy8/X2cUgz8LPzM/ey8kuLi4=?=   Dmitry Kochkin   15 Feb 2002 19:43:58 
 Re: =?KOI8-R?B?8drZy8/X2cUgz8LPzM/ey8kuLi4=?=   Zahar Kiselev   16 Feb 2002 02:52:44 
 Re: Языковые оболочки...   Vladimir Bormotov   16 Feb 2002 11:08:16 
 Re: Языковые оболочки...   Victor Wagner   16 Feb 2002 13:04:58 
 Re: Языковые оболочки...   Zahar Kiselev   26 Feb 2002 22:55:12 
 Re: Языковые оболочки...   Eugene Karpachov   27 Feb 2002 16:47:45 
 Re: Языковые оболочки...   Victor Wagner   27 Feb 2002 16:58:00 
 Re: Языковые оболочки...   Eugene Karpachov   27 Feb 2002 19:57:36 
 Re: Языковые оболочки...   Zahar Kiselev   27 Feb 2002 22:33:50 
 GTK и все такое...   Andrey Rudyavsky   18 Feb 2002 14:48:54 
 Re: GTK и все такое...   Victor Wagner   19 Feb 2002 17:17:10 
 Re: Языковые оболочки...   Boris Tobotras   22 Feb 2002 07:06:05 
 Re: Языковые оболочки...   Victor Wagner   14 Feb 2002 10:31:19 
 Re: Языковые оболочки...   Zahar Kiselev   14 Feb 2002 20:22:50 
 Re: Языковые оболочки...   Victor Wagner   14 Feb 2002 23:22:01 
 ёЪЩЛПЧЩЕ ПВПМПЮЛЙ...   Dmitrij Volkov   15 Feb 2002 15:53:50 
 Re: Языковые оболочки...   Vitaly Lugovsky   13 Feb 2002 17:55:50 
 Re: Языковые оболочки...   Vladimir Bormotov   14 Feb 2002 03:59:26 
Архивное /ru.linux/64889c1d3251.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional