Как нарисовать собственную панель?

Место, где разработчики плагинов могут поделиться своим опытом.
Post Reply
_pavel
Posts: 9
Joined: Tue 05 Jul, 2011 16:08

Как нарисовать собственную панель?

Post by _pavel »

Подскажите пример плагина или вероятно какой то мануал как нарисовать собственную панель.
Что то наподобие информационной Ctrl-L
Глянул исходники infolist.cpp
но они пестрят функциями вроде
Box(X1,Y1,X2,Y2,ColorIndexToColor(COL_PANELBOX),DOUBLE_BOX);

которые, как я понимаю, недоступны для плагинов.
Yegor
Posts: 1329
Joined: Mon 04 Apr, 2005 13:41
Location: San Ramon, CA / Kharkov, UA
Has thanked: 32 times
Been thanked: 61 times

Re: Как нарисовать собственную панель?

Post by Yegor »

Ownerdraw панели пока не саппортятся. Предложение по созданию таковых было здесь, но было отвергнуто, надеюсь временно.
Мы не можем ждать милостей от Фара, взять их у него — наша задача! (C) Мичурин
User avatar
John Doe
Бюрократ
Posts: 13855
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

Re: Как нарисовать собственную панель?

Post by John Doe »

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

Т.е. не надеяться надо, а вносить предложения.
_pavel
Posts: 9
Joined: Tue 05 Jul, 2011 16:08

Re: Как нарисовать собственную панель?

Post by _pavel »

Спасибо за ответ.
Чтож, отрицательный результат - тоже результат
_pavel
Posts: 9
Joined: Tue 05 Jul, 2011 16:08

Re: Как нарисовать собственную панель?

Post by _pavel »

Ок.
Более простой вопрос.
Возможно ли изменить цвет Items в панели?
т.е. что то наподобие раскраски от расширения.

Заранее спасибо.
User avatar
HaRT
Moderator
Posts: 10865
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Re: Как нарисовать собственную панель?

Post by HaRT »

_pavel wrote: Возможно ли изменить цвет Items в панели?
т.е. что то наподобие раскраски от расширения.
Если плагин при создании своей панели выставит правильный флажок (что-то со словом Highlighting — не помню точно), то элементы на панели будут раскрашиваться в соответствии с общими правилами, заданными в настройках Фара.
Фар есть инструмент, а не нянька. © 2009 DrKnS
Yegor
Posts: 1329
Joined: Mon 04 Apr, 2005 13:41
Location: San Ramon, CA / Kharkov, UA
Has thanked: 32 times
Been thanked: 61 times

Re: Как нарисовать собственную панель?

Post by Yegor »

Было бы классно позволить плагину самому выставлять цвет. Передавать его как-то в GetFindDataW, может как часть структуры GetFindDataInfo или вообще в PluginPanelItem (но это уже мухи с котлетами будут).
Мы не можем ждать милостей от Фара, взять их у него — наша задача! (C) Мичурин
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

Re: Как нарисовать собственную панель?

Post by Max Rusov »

Самому выставлять цвет - это неудачно, при нестандартных палитрах получится фигня какая-нибудь. Вот самому регистрировать какие-нибудь логические типы цветов, которые потом можно настраивать - это да, было бы полезно...
_pavel
Posts: 9
Joined: Tue 05 Jul, 2011 16:08

Re: Как нарисовать собственную панель?

Post by _pavel »

HaRT wrote:
_pavel wrote: Возможно ли изменить цвет Items в панели?
т.е. что то наподобие раскраски от расширения.
Если плагин при создании своей панели выставит правильный флажок (что-то со словом Highlighting — не помню точно), то элементы на панели будут раскрашиваться в соответствии с общими правилами, заданными в настройках Фара.
Спасибо за ответ.
С флагом понятно.
Вопрос как контролировать это плагином явно.
Воркараунд через общие правила в общем случае возможен, но
1) неудобен
2) ввиду незамороженности 3го API может нести потенциальный слом в будущем.

P.S. Вот в "свежем" SVN сегодня "сломали" стандартную раскраску.
Last edited by _pavel on Tue 02 Aug, 2011 08:14, edited 1 time in total.
_pavel
Posts: 9
Joined: Tue 05 Jul, 2011 16:08

Re: Как нарисовать собственную панель?

Post by _pavel »

Max Rusov wrote:Самому выставлять цвет - это неудачно, при нестандартных палитрах получится фигня какая-нибудь. Вот самому регистрировать какие-нибудь логические типы цветов, которые потом можно настраивать - это да, было бы полезно...
Для статических задач - вероятно.
Для динамических (ну там поморгать другим цветом несколько секунд) - почему нет.
Yegor
Posts: 1329
Joined: Mon 04 Apr, 2005 13:41
Location: San Ramon, CA / Kharkov, UA
Has thanked: 32 times
Been thanked: 61 times

Re: Как нарисовать собственную панель?

Post by Yegor »

Max Rusov wrote:Самому выставлять цвет - это неудачно, при нестандартных палитрах получится фигня какая-нибудь. Вот самому регистрировать какие-нибудь логические типы цветов, которые потом можно настраивать - это да, было бы полезно...
У логических типов тоже должны быть цвета по умолчанию, поэтому проблема с палитрой все равно есть. Но никто не мешает в обоих случаях вычитывать дефолтные цвета из Фара через ACTL_GETCOLOR.
Мы не можем ждать милостей от Фара, взять их у него — наша задача! (C) Мичурин
Post Reply

Return to “Разработка плагинов”