The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Разработчики KDE размышляют о судьбе отдельной строки меню в..., opennews (ok), 29-Мрт-11, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


66. "Разработчики KDE размышляют о судьбе отдельной строки меню в..."  +1 +/
Сообщение от sndevemail (ok), 29-Мрт-11, 13:33 
Например по той простой причине, что :

а) Рендерится не приложение а тулкитом (в данном случае кутёй)
б) Меню это внутренний элемент окна, а не окно как таковое. Поэтому оно уже изначально
   не попадает под юрисдикцию оконного менеджера.
в) оконный менеджер работает с окнами, а не с их содержимым (не путайте с эхсплорер), поэтому, то что, находится внутри окна ложиться на плечи самого приложения. Как нарисуете,
так и будет. Можете хоть сферическое меню рисовать. Тут уже что тулкит умеет, то и получаем.

Ответить | Правка | Наверх | Cообщить модератору

67. "Разработчики KDE размышляют о судьбе отдельной строки меню в..."  +1 +/
Сообщение от JL2001 (ok), 29-Мрт-11, 13:45 
> б) Меню это внутренний элемент окна, а не окно как таковое

именно вот это меня удивляет всю жизнь - почему оно "внутренний элемент" а не элемент "приложение поддерживает такие пункты меню" ? видь приложение может поддерживать растягиваемость окна а может не поддерживать - тоже видь "внутреннее свойство" приложения

Ответить | Правка | Наверх | Cообщить модератору

71. "Разработчики KDE размышляют о судьбе отдельной строки меню в..."  +/
Сообщение от sndevemail (ok), 29-Мрт-11, 13:57 
> именно вот это меня удивляет всю жизнь - почему оно "внутренний элемент" а не элемент
> "приложение поддерживает такие пункты меню" ? видь приложение может поддерживать
> растягиваемость окна а может не поддерживать - тоже видь "внутреннее свойство"
> приложения

Теоретически да. Но есть нюанс. Внутренне представление окна, и расположение в нем
элементов - это привилегия самого приложения (и программиста пишущего его). Поэтому если
приложение кладет большой

Ответить | Правка | Наверх | Cообщить модератору

75. "Разработчики KDE размышляют о судьбе отдельной строки меню в..."  +/
Сообщение от sndevemail (ok), 29-Мрт-11, 14:04 
> именно вот это меня удивляет всю жизнь - почему оно "внутренний элемент" а не элемент
> "приложение поддерживает такие пункты меню" ?

потому что универсальных меню нет. и меню - это контекст приложения - каких-то специфичных его функций. Если вы сможете описать все возможные опции меню - ну тогда
можно будет попытаться говорить о "поддерживает пункты меня". Как не крути, а пункт
меня "сделай мне заи...сь" есть только в моем приложении, а никак не в м$ ворд.

Вопрос : как мне теперь объяснить оконному менеджеру что мое окно поддерживает
такой пункт меню ?

> видь приложение может поддерживать
> растягиваемость окна а может не поддерживать - тоже видь "внутреннее свойство"
> приложения

Теоретически да. Но есть нюанс. Внутренне представление окна, и расположение в нем
элементов - это привилегия самого приложения (и программиста пишущего его). Поэтому если
приложение кладет большой и толстый на изменения размера окна, и не реорганизует
расположение элементов в зависимости от размеров окна, то получим огромное пустое окно,
где в уголке одиноко красуется несколько элементов управления. Поэтому если вы желаете, что
бы приложение работало красиво то :

1) вы поддерживаете изменения размера окна, и соответственно реорганизуете элементы в нем.
2) либо не поддерживаете. Но тогда запрещаете менять геометрию окна. А вот на это, оконный менеджер и должен отреагировать. Что он и сделает.

В конечном итоге, для оконного менеджера, все что находится внутри окна - это один большой бляк бокс. И его это не должно волновать.

Ответить | Правка | К родителю #67 | Наверх | Cообщить модератору

105. "Разработчики KDE размышляют о судьбе отдельной строки меню в..."  +/
Сообщение от JL2001 (ok), 30-Мрт-11, 03:02 
> Вопрос : как мне теперь объяснить оконному менеджеру что мое окно поддерживает такой пункт меню ?

точно так же как сейчас объясняете это тулкитам - вы не сами ручками меню рисуете

> В конечном итоге, для оконного менеджера, все что находится внутри окна -
> это один большой бляк бокс. И его это не должно волновать.

собсно вы и должны описать тупую структурку
пункт главного меню = {пункты меню+подменю}+иконки к ним и клавишы для выбра при открытом меню которые предлагает ваше приложение

точно так же вы отписываете структурку с иконкой для окна вашего приложения

Ответить | Правка | Наверх | Cообщить модератору

125. "Разработчики KDE размышляют о судьбе отдельной строки меню в..."  +/
Сообщение от тоже Анонимemail (ok), 31-Мрт-11, 19:10 
Оконный менеджер все-таки должен заниматься только окнами, тогда он будет заменяем.
Если от него будет зависеть еще и отрисовка контролов (а меню - это контрол, такой же, как кнопка) - он станет тулкитом. А оконный менеждер, монолитный с тулкитом - это винвэй...

Ответить | Правка | Наверх | Cообщить модератору

79. "Разработчики KDE размышляют о судьбе отдельной строки меню в..."  +/
Сообщение от Аноним (-), 29-Мрт-11, 14:37 
>б) Меню это внутренний элемент окна, а не окно как таковое. Поэтому оно уже изначально не попадает под юрисдикцию оконного менеджера.

http://standards.freedesktop.org/wm-spec/1.3/ar01s05.html#id...

_NET_WM_WINDOW_TYPE_TOOLBAR and _NET_WM_WINDOW_TYPE_MENU indicate toolbar and pinnable menu windows, respectively (i.e. toolbars and menus "torn off" from the main application). Windows of this type may set the WM_TRANSIENT_FOR hint indicating the main application window.

Ответить | Правка | К родителю #66 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру