LINUX.ORG.RU

widget at position on wibox

 , ,


1

2

суть такова - есть wibox на весь рс(почти - отступы по краям и панель снизу)

нужно определенный виджет ткнуть в нужную позицию.. к примеру распределить кнопки по кругу..

или же по диагонали.. при этом на самом вибоксе будет отрисовываться линии, круги и т.д. с помощью каиро

ЗЫ:: v3.2.5

★★

unlog1c, science

widget_at смотрел, но ничего не выводит.. ЧЯДНТ?? мож не в ту сторону смотрю??

TODD ★★ ()
Последнее исправление: TODD (всего исправлений: 1)

v3.2.5 Под такую древность точно не знаю, в 3.5 апи поменялось.

В любом случае, тебе понадобится widget layout, который разрешает четко задавать координаты. Может такой уже есть, может придется написать самому.

unlog1c ★★★ ()
Ответ на: комментарий от TODD

Ищи здесь /usr/share/awesome/lib/wibox/layout, если не найдешь - пиши свой расширяя base.lua

unlog1c ★★★ ()
Ответ на: комментарий от unlog1c

посмотрел.. ниче не понял.. по ходу функция делает не то, что нужно..

и как писать?? я в таких вещах не силен..

TODD ★★ ()
Ответ на: комментарий от unlog1c

легкий разбор flex и fixed провел

что нужно сделать??

(«по техническим вопросам я тебе может что и отвечу»)

логика подсказывает, что нужно сваять новый лайаут на основе fixed(там вроде попроще).. в функции add добавить параметры {x,y,w,h} и заливать их в массив вместе с тем, что там было по умолчанию (как там будет станет ясно при работе напильником)

далее в функции draw втиснуть парс етих параметров из массива и обработать их по усмотрению и отправить на отрисовку..

остальные функции прошерстить на предмет надобности, по необходимости вшить из других лайаутов..

ЗЫ:: мысля хороша, но выполнима ли?? пока в извилинах и на бумаге штрихи набросаны..

TODD ★★ ()
Ответ на: комментарий от TODD

ну никто за тебя не напишет. либо разбирайся, либо остановись на конфиге попроще.

я не уверен что копать нужно именно туда, но скорее всего, т.к. размещением виджетов занимаются лейауты с wibox.layout.*;

UPD: Не видел последний пост. Все ты походу правильно делаешь. Главное что? Отправить на отрисовку виджет с нужными координамтами к base.draw_widget. В своем лейауте уже химичь что отправлять.

unlog1c ★★★ ()
Последнее исправление: unlog1c (всего исправлений: 2)
Ответ на: комментарий от unlog1c

на конфиге попроще.

попроще никак не получается..

а вот мысля выполнима.. тольк одно но - размеры виджета надо подгонять под изо, ибо скаль работает.. растягивая иконку.. а так можно первоначально накидать кнопки, которые лежат в боксах на рс..

TODD ★★ ()
Ответ на: комментарий от TODD

заинтересовался..

Модуль scheduler объединяет повторяющиеся с определенным 
интервалом ивенты вместе, что уменьшает количество 
пробуждений CPU, которые делает awesome. Им пользуются 
практически все мои виджеты. 

а поподробней можно?? у меня несколько вопросов::

  • почему практически все?? есть какие-то ограничения??
  • обязательно ли писать свои виджеты, если я, допустим, хочу вваять уже существующие, но привязанные к vicious.. на это не предусмотрено??
  • насколько реально уменьшилось кол-во пробуждений?? процентов на 10-20 есть??
ЗЫ:: это хобби или реальный программист?? сколько я не смотрю 
на модули - создается такое ощущение, что поработал разраб осома..
TODD ★★ ()
Последнее исправление: TODD (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.