>> сравнивать изначально сдизайненый для сетевой прозрачности протокол и прибитый гвоздями
> То есть по дизайну подразумевается вариант, что именно клиент берёт на себя
> задачу отождествления окон с локальными данными (в частности указателями), я правильно
> понял?это данные клиента — он об этом и заботится. никто, впрочем, не запрещает прикрепить оный указатель как значение свойства. малоосмысленно, но можно.
> Ну Вы же сами пишете, что свойства, которые важны _для_сервера_ это другое,
где? я такого не писал. серверу вообще наплевать, какие свойства к окну прикреплены.
> что использовать те свойства для хранения данных, которые имеют смысл только
> для клиента -- не стоит.
это вопрос конкретных применений. всё равно у софта сложнее приветмира есть структура данных об окне — в которой и хранятся данные, очень специфичные для кода приложения. идея лепить указатель на это в специально выделеные системой слоты (что и делает `SetWindowLong()`) — такая себе. никакого механизма резервирования этих слотов нет, так что минное поле.
впрочем, в винде это появилось скорее от того, что обработчики оконных событий сделаны колбэками, которые вызывает сама система (скажем так: это рекомендуемое поведение, легитимизированое на уровне системного API). один костыль потянул за собой и другой костыль.
>> p.s.: фанаты XCB — скажите, вы реально упарываетесь по BDSM?
> А что, у этой штуки есть фанаты?
ну используют же её зачем-то. кроме как большой любви к BSDM — я других причин особо не вижу.
> И вообще был удивлён ситуацией: интерфейс разработан давно, но документация в
> незавершённом состоянии.
потому что далеко не всем нравится программировать на уровне протокола иксов. разработчики иксов это отлично понимали, и сделали xlib. а потом пришли Стильные Современные Молодёжные, и оказалось, что деды были глупые, надо совсем не так. как и происходит почти всегда в подобных ситуациях — отчего-то Новое Стильное и так далее решение взлетать не очень торопится.
> При том что якобы XCB уже заменила XLib (она и заменила
да как-то не особо. вон, у меня xlib вполне наличествует. и софт её активно использует. что-то не очень с заменой сложилось, как я посмотрю.