Я определил для себя некоторые задачи по улучшению графического интерфейса Kolibri в связи с чем есть планы по некоторым изменениям в ядре, которые хочу обсудить.
Итак - первая:
Основная цель: возможность создания иконок, которые не будут накладываться поверх окошек.
Способ выполнения - Создать функции ядра, способные выводить графику на область не занятую приложениями, но не затрагивающие открытых окошек (Это вывод текста, точки, рисунка, прямоугольника, отрезка, возможно в урезанных вариантах) . Затем создание программ не рисующих собственного окна но выводящих иконки сразу на область фона (не в изображение фона а на точки процесса 1 - OS\IDLE)
Кроме того в качестве побочного эффекта, можно будет создавать проги, выводящие анимацию или эффекты на рабочий стол в фоновом режиме ( например визуализацию к музыке как в Winamp.
Мнения, проблемы, советы, пожелания пожалуйста?
Графический интерфейс Kolibri OS
есть одно пожелание.. удачи! =)
Какое там удачи. Это же непонятно что, а не идея.
- бросается в глаза то, что способ выполнения как-то мало связан, собственно, с проблемой: "рисование на рабочем столе" и "не накладывающиеся на другие окна иконки"
- создание дополнительных дублирующих функций ядра - откуда это взялось? у нас и так говнофункций хватает, так ещё и эти появятся, специально для любителей рисовать на рабочем столе (надеюсь, хоть две программы появятся, этим занимающиеся)
- что должна делать ОС, когда она перемещает окно? правильно - перерисовывать рабочий стол. в данном случае, или нужен дополнительный буфер для того, что нарисовали программы, или ОС должна сообщать программам о том, что они должны обновить рабочий стол, что в принципе лично для меня является нарушением принципов построения ОС и не может привести ни к чему хорошему
- иконки по своей сути - не просто рисунки на рабочем столе. они должны реагировать на активацию. и тут опять ОС должна будет просить отреагировать программу? то есть, предложение заключается в том, чтобы добавить возможность создавать кнопки в чужих окнах?
- были, и есть, люди, которым хочется полупрозрачных окон, супер-пупер графических эффектов и винампов, которые рисуют на рабочем столе. так вот: это всё херня и никому на самом деле не нужно. что действительно нужно - так это программы, несущие в себе функциональность, а они, в свою очередь, не могут быть некрасивыми
Alver
1. Не самая актуальная вещь.
2. Система будет перегружена, особенно в связи с наличием лишь Vesa (нет видеодрайверов).
3. Проблему с иконками можно решить, если реализовать функцию, перемещающую окно на вершину и вниз оконного стека, после клика по иконке.
1. Не самая актуальная вещь.
2. Система будет перегружена, особенно в связи с наличием лишь Vesa (нет видеодрайверов).
3. Проблему с иконками можно решить, если реализовать функцию, перемещающую окно на вершину и вниз оконного стека, после клика по иконке.
Alver
Я согласен с ребятами...
Ленин
Mario79
ЗЫ. Надеюсь вернусь скоро.....
Я согласен с ребятами...
Ленин
Позволь с тобой не согласится. Технологии не стоят на месте, и теперешнее железо, которое у большей части (покрайней мере моего окружения) людей, позволяет делать красивые весчи, как полупрозрачности, супер-пупер графические эффекты и прочую лабуду, без особых тормозов. Не надо? не скажи... я знаю много людей которые себе линух ставили только из-за берила, на ХР ставят VistaTransformationPack и т.д. Да, это может нам, простым програмистам не нужны эти причуды (у меня, например, ХР с классическим оформлением), но зачем заранее сужать круг пользователей колибри? Выход я уже описывал, нужно переделать оконную систему колибри, а точнее оконный менеджер вынести из ядра. Ты и сам это знаешь. Помню тебя посещали идеи насчет оконной системы (по подобию GTK или что-то вроде системы widget'ов). Мне они нравятся, вот думаю не присоеденится ли к твоей идее и начать ее воплощать??? Но только когда вернусь5. были, и есть, люди, которым хочется полупрозрачных окон, супер-пупер графических эффектов и винампов, которые рисуют на рабочем столе. так вот: это всё херня и никому на самом деле не нужно. что действительно нужно - так это программы, несущие в себе функциональность, а они, в свою очередь, не могут быть некрасивыми
Mario79
Если я правильно понял, то лучше это решить хотябы 3-х уровневым стеком (ниже всех, стандартные, выше всех).3. Проблему с иконками можно решить, если реализовать функцию, перемещающую окно на вершину и вниз оконного стека, после клика по иконке.
ЗЫ. Надеюсь вернусь скоро.....
Цель благородная и нужная Это самый видный баг Колибри. Неприятно...Alver wrote:Основная цель: возможность создания иконок, которые не будут накладываться поверх окошек.
Как это сделать я не знаю. ИМХО реализовать надо вначале функцию окон всегда сверху\всегда снизу.
Людям: не набрасывайтесь вы так на человека. Лучше просто выскажитесь как лучше реализовать.
Пожелания самые хорошие - с успехом добиццо всего что очень хочеццо Удачи.Мнения, проблемы, советы, пожелания
Ленин
Иконки должны реагировать на нажатие кнопки мыши, на их рисунке, будет ли это активацией окна, или обработчик мыши это техническая деталь. У нас есть приложение @rb которое реагирует на нажатие правой кнопки мыши на области рабочего стола, если доработать это приложение определением позиции иконки, при клике левой кнопкой, и обработкой события 5 (перерисовка фона рабочего стола), можно создать обработчик иконок на одном процессе, вместо кучи потоков @ICON.
Но я был не прав, любая прога, кроме самой проги иконок, рисующая на рабочем столе, будет убивать иконки, и создавать муть, поэтому для спецэффектов остаются только стандартные способы.
Mario79
В общем если чего сварганю, выложу на своем сайте, если получится, тогда и можно будет решить.
иконки по своей сути - не просто рисунки на рабочем столе. они должны реагировать на активацию. и тут опять ОС должна будет просить отреагировать программу?
Иконки должны реагировать на нажатие кнопки мыши, на их рисунке, будет ли это активацией окна, или обработчик мыши это техническая деталь. У нас есть приложение @rb которое реагирует на нажатие правой кнопки мыши на области рабочего стола, если доработать это приложение определением позиции иконки, при клике левой кнопкой, и обработкой события 5 (перерисовка фона рабочего стола), можно создать обработчик иконок на одном процессе, вместо кучи потоков @ICON.
В чужих окнах ничего рисовать и создавать нельзя.то есть, предложение заключается в том, чтобы добавить возможность создавать кнопки в чужих окнах?
Но я был не прав, любая прога, кроме самой проги иконок, рисующая на рабочем столе, будет убивать иконки, и создавать муть, поэтому для спецэффектов остаются только стандартные способы.
Ну здесь ты не прав. Каждый решает сам что ему нужно. А по мне лучший вариант это сбалансированность между примочками интерфейса, его функциональностью и производительностью системы.были, и есть, люди, которым хочется полупрозрачных окон, супер-пупер графических эффектов и винампов, которые рисуют на рабочем столе. так вот: это всё херня и никому на самом деле не нужно.
Mario79
Самые актуальные - самым опытным.Не самая актуальная вещь.
От дополнительных прог я уже отказался, по причине изложенной выше. Однако для иконок пока еще считаю лучшим вариантом один процесс с отрисовкой в рабочем столе, вместо кучи с собственными окошками.Система будет перегружена...
Идея хорошая, надо будет попытаться разобраться как работает код оконного стека.Проблему с иконками можно решить, если реализовать функцию, перемещающую окно на вершину и вниз оконного стека, после клика по иконке.
В общем если чего сварганю, выложу на своем сайте, если получится, тогда и можно будет решить.
Оффтоп: пожалуйста, напиши в профиле адрес твоего сайта
Атауальпа
Написал.
Написал.
Mario79
Не факт, что тормоза будут. Сегодня гонял Ubuntu в разрешении 1280*1024 c Vesa драйвером и никаких тормозов при отрисовке.
Не факт, что тормоза будут. Сегодня гонял Ubuntu в разрешении 1280*1024 c Vesa драйвером и никаких тормозов при отрисовке.
Нужно сделать чтоб рабочий стол был отдельным приложением (а не частью ядра), которое будет ниже всех. Вот оно уже и будет рисовать фон, а на нем иконки, и реагировать на клики левой и правой (ну и средней) кнопок мыши. Можно (и наверно нужно) чтоб он же и отрисовывал панель. ИМХО.Alver wrote:Однако для иконок пока еще считаю лучшим вариантом один процесс с отрисовкой в рабочем столе, вместо кучи с собственными окошками.
Но как сказал Serge нужно сначала реализовать слои окон.
PS+OFFTOP. А как реализовано разворачивание окна на весь экран? Насколько помню, развернутое окно не перекрывает панель. Панель выставляет какие-то системные параметры по размеру развернутых окон?
k@sTIg@r
я считаю так же, за исключением отрисовки панели. а то получится Винданутый эксплоэр, и если ЭТО полетит/повиснет, то полетит/повиснет все и сразу.. // Колибри не винда, однако.. // а в целом ты прав, картинка на рабочем столе ИМХО не удел ядра.. да и куча процессов-иконок напрягают, и производительность снижают (ИМХО).Нужно сделать чтоб рабочий стол был отдельным приложением (а не частью ядра), которое будет ниже всех. Вот оно уже и будет рисовать фон, а на нем иконки, и реагировать на клики левой и правой (ну и средней) кнопок мыши. Можно (и наверно нужно) чтоб он же и отрисовывал панель.
Лично я мечтаю, чтобы можно было создавать иконки таким же образом, как в Aston Shell... Там это делается очень просто и удобно, как мне кажется.
И ещё, чтобы можно было свободно перетаскивать иконки мышкой по рабочему столу, и выстраивать их по имени и так далее...
Но, понятное дело, не наступая на виндовые грабли.
И ещё, чтобы можно было свободно перетаскивать иконки мышкой по рабочему столу, и выстраивать их по имени и так далее...
Но, понятное дело, не наступая на виндовые грабли.
Атауальпа
это будет возможно если вынести иконки (из отд. процессов) и картинку рабочего стона (из ядра, где, повторюсь, ей не место) в одно приложение..Лично я мечтаю, чтобы можно было создавать иконки таким же образом, как в Aston Shell... Там это делается очень просто и удобно, как мне кажется.
И ещё, чтобы можно было свободно перетаскивать иконки мышкой по рабочему столу, и выстраивать их по имени и так далее...
В современных видеокартах уйма памяти, которая используется "на полную" только в играх и соответствующих программах. При обычной, "офисной", работе ее тоже нужно использовать. Пусть приносит пользу! Пусть хранит у себя окно рабочего стола, пусть хранит хоть десять окон! Разгружайте ядро где это возможно! НО! Найдите способ быстро проверить, что отображается на экране в действительности. В первых "операционках" очень часто были сбои такого характера.
Что касается иконок, то Alver прав на 100%! На моем рабочем столе нет ни одной иконки! Мне так удобно! Я их не запрещал, просто я их все перенес в "нужные места" (по моему мнению). Но "оперативные иконки" на свой стол я кладу и, после решения таких оперативных задач эти иконки удаляю. Поэтому мне всегда видно, что еще осталось сделать. Но когда ко мне приходят гости, то мне нужны разные рабочие столы, со своими набором иконок. Более того, есть такие гости - маленькие дети, которым будет понятнее и удобнее, если при наведении на иконки курсора мышки, они станут анимированными и, более того, я могу превратить курсор мышки в "увеличительное стекло" и еще более наглядно показать такую иконку-картинку. Со звуком, маленьким демо-роликом -чтоб наглядно было видно, что делает "та" программа и как выглядит "эта" игрушка.
И вы уж определитесь пожалуйста - на себя вы работаете или для народа? Если вы работаете только на себя (и на таких как вы, крутых программистов) то вам и рабочего стола, вообще, не надо! А если для народа, то не стесняйтесь перенимать лучшее, наработанное в этот еще непродолжительный отрезок времени развития компьютеров.
Что касается иконок, то Alver прав на 100%! На моем рабочем столе нет ни одной иконки! Мне так удобно! Я их не запрещал, просто я их все перенес в "нужные места" (по моему мнению). Но "оперативные иконки" на свой стол я кладу и, после решения таких оперативных задач эти иконки удаляю. Поэтому мне всегда видно, что еще осталось сделать. Но когда ко мне приходят гости, то мне нужны разные рабочие столы, со своими набором иконок. Более того, есть такие гости - маленькие дети, которым будет понятнее и удобнее, если при наведении на иконки курсора мышки, они станут анимированными и, более того, я могу превратить курсор мышки в "увеличительное стекло" и еще более наглядно показать такую иконку-картинку. Со звуком, маленьким демо-роликом -чтоб наглядно было видно, что делает "та" программа и как выглядит "эта" игрушка.
И вы уж определитесь пожалуйста - на себя вы работаете или для народа? Если вы работаете только на себя (и на таких как вы, крутых программистов) то вам и рабочего стола, вообще, не надо! А если для народа, то не стесняйтесь перенимать лучшее, наработанное в этот еще непродолжительный отрезок времени развития компьютеров.
Who is online
Users browsing this forum: No registered users and 1 guest