Further development TooBars

Day after day, all my free time devote further develop this plugin.
What is being done or being done:

  1. Found and corrected some errors, which do not affect the plugin, but can clog up a debug console.
  2. Another attempt to delete a memory leak after switching off the plugin (though just now noticed that some plugins stop after not even quit! ;)) – The result has not been verified.
  3. Added ability to disable in the interface menu …
    Faced with the problem that simply borrowing the code from the plug blistops not rent – I have a different structure of the contact list, and the solution of the problem lasted 3 days. Make switching the menu button on the toolbar, as suggested by Konrad, did not want. I want to and when you hover the mouse menu pops up, and by pressing the F10… At the moment trying to figure out how to remove the menu when focus is lost window contacts list.

What is planned:

  1. Context menu from scratch list of contacts, which could adjust the appearance of the list and get access to some client settings.

Теги: , , ,

Tuesday, 06 Apr 2010 Linux

Отзывов: 8 на Further development TooBars

  1. Здаров. Спасибо за плагин, глунул исходники – молодец.
    С сам недавно писал плагин https://launchpad.net/fchat Он проще твоего и никому не нужный (это просто было желание доделать начатое ещё в молодости до конца).
    Теперь по делу несколько советов.

    #include “internal.h”

    #include “glib.h”
    #include “gtkblist.h”
    #include “gtkaccount.h”
    #include “gtkstatusbox.h”
    #include “gtkplugin.h”
    #include “gtkpluginpref.h”
    #include “gtkprefs.h”
    #include “gtkutils.h”
    #include “pidginstock.h”
    #include “version.h”
    #include “debug.h”
    Замени на
    #include
    #include

    Директиву IS_DEBUGGING можешь убрать. Все модули пишут вообще всё в дебаг так что не сцы.

    У тебя там чатсо используется типа char а какбы желательно использовать gchar из glib. Разницы никакой но есть.

    У тебя в названиях функций используется camel caps например CreateToolBox. Вместо этого нужно писать всё маленькими разделяя слова нижним_подчёркиванием.
    Camel caps нужно использовать для обьявления типов.
    Ну например из твоего же плагина:
    PidginBuddyList *gtkblist = PIDGIN_BLIST (purple_get_blist ());

    При инициализации плагина у тебя есть такой код:
    #ifdef ENABLE_NLS
    bindtextdomain(GETTEXT_PACKAGE, LOCALEDIR);
    bind_textdomain_codeset(GETTEXT_PACKAGE, “UTF-8”);
    #endif

    Я могу ошибаться но вроде как этот код в модулях делать не нужно – это делается в самом пиджене.

    У тебя тут структура объявлена:
    struct _TooBars_interface
    {
    GtkToolItem *AddBuddy_btn;

    GtkWidget *ShowStatusbar_item;
    } TooBars_interface;

    Карочи опять боюсь ошиьится но так тоже не желательно. Типа принцип такой: все структуры объявлять через typedef (потому что это тип).

    typedef struct
    {
    GtkToolItem *AddBuddy_btn;

    GtkWidget *ShowStatusbar_item;
    } TooBars_interface;

    В PurplePluginInfo info, похоже тебе нужно убрать префикс PURPLE
    PURPLE_PLUGIN_MAGIC,
    PURPLE_MAJOR_VERSION,
    PURPLE_MINOR_VERSION,
    Хотя это всё годно только в случае если твой плагин станадртный (а это не так).

    Закинь исходники на https://launchpad.net/ как я со своим проетком сделал. Ты получишь: хостинг проекта с системой контроля версий (Базар). И там есть PPA – короче хрень в которую ты закидываешь исходники а она сама их компилит и делает дебиановские пакеты под все архитектуры. Потом все убунтовцы смогут из твоего PPA обновлятся – очень удобно.

    Вообщем я сейчас попробую на PPA закинуть.

    З.Ы. Сделай возможность комментировтаь без регистрации 🙂

  2. stokito on 08 Apr 2010
  3. УУУуууу сколько всего!!!
    Спасибо, чуть позже почитаю и отвечу.
    Я ж не программист особо, так что любым советам рад 🙂

  4. VaYurik on 09 Apr 2010
  5. парсер лох
    Замени на
    #include
    #include

  6. stokito on 08 Apr 2010
  7. 1. Про инклуды – так и не понял 🙁 Видимо, содержимое обрезалось, да?
    2. IS_DEBBUGING (это директива? А я думал – переменная :D) включает или выключает вывод названия процедуры функцией Debugging () в окно отладки. Эта информация штатно туда не выводится.
    3. Про char и gchar – поменять-то можно, не проблема. Но можешь объяснить отличия? В большинстве случаев я нахожу в инете схожие фрагменты кода и их использую, в итоге и получается такая мешанина 🙁
    4. Названия функций я использую такие намерено, в меру ряда факторов. Т.к. это ни на что, я бы хотел сохранить текущее форматирование кода.
    5. Про структуру – изучу этот вопрос снова. Насколько я помню, предыдущие попытки что-либо изменить в её описании приводили к тому, что всё переставало работать. В итоге я всё оставил, как есть, работает – не трожь! 🙂 Если дашь ссылку или объяснишь разницу в текущем и предлагаемом описании и использовании структуры данных – буду благодарен.
    6. Про PURPLE. Работает, трогать не буду 🙂
    7. Закидывать проект на сторонний сервер я не хочу. Отсюда, хоть, я могу попросить на баннеры покликать, а там я не уверен, что это разрешено. А мне хоть хостинг за несколько лет окупить – всяко приятно. Кроме того, начнётся бардак, появятся сторонние авторы, за которыми надо будет всё проверять… Как показывает мой опыт общения с разработчиками, их надо полностью и постоянно контролировать. Некоторые господа шлют патчи мне в почту, я их разбираю, анализирую, что-то потом реализую, но всегда – в сильно измененном виде. И такой подход считаю правильным.

  8. VaYurik on 09 Apr 2010
  9. Ладно не хочу тебя задалбывать.
    Короче смотри я скомпилил deb пакеты через Launchpad. Они сейчас лежат в репозитории на ланчпаде. Ты можешь установить свой плагин добавив ppa:stokito/pidgin-toobars в список репозиториев.

    Нравится тебе или нет – пользователям нужен репозиторий. Каждый раз лазить на твой хомяк за обновлениями, потом компилить это гемор даже для меня.
    Если хочешь – ты можешь реализовать репозиторий у себя на сайте. Никакого доп. софта не нужно – просто в определёном порядке ложишь папки.

    Ты можешь скачать deb пакеты. Кстати внутри deb пакета всё уже заархивировано (архиватором ar) так что не надо deb пакет дополнитольно архивировать zip’ом.

    Пакеты для Ubuntu 9.04 Karmic тут:
    https://launchpad.net/~stokito/+archive/pidgin-toobars/+sourcepub/1073908/+listing-archive-extra

    Пакеты для Ubuntu 9.10 lucid
    https://launchpad.net/~stokito/+archive/pidgin-toobars/+sourcepub/1074328/+listing-archive-extra

    Ты можешь на своём сайте дать прямую ссылку на закачку пакетов. Съекономишь трафик на хостинге.

  10. stokito on 11 Apr 2010
  11. Спасибо.
    Подумаю в эту сторону после релиза.

  12. VaYurik on 16 Apr 2010
  13. Товарищ автор! Хотелось попробовать ваш модуль — но вот незадача, он есть или в исходниках (не для того я променял Gentoo на Ubuntu, чтобы исходники собирать), или в пакетах для i386.

    Компьютер, который я покупал лет 6 назад, был 64-битным. и тот, что у меня сейчас, конечно, тоже. Ставить 32-бит Pidgin для такого модуля совершенно не хочется. Тупик. Кстати, на PPA парой комментариев выше был предложен PPA-репозитарий, там 64-бит версия есть. Но версия, как я понял, старая. Решите эту проблему, прошу вас.

    Кстати, было бы очень полезно опубликоваться на http://developer.pidgin.im/wiki/ThirdPartyPlugins

  14. drasserman on 04 Jun 2010
  15. После пары лет жизни под 64-битной версией я вернулся к 32-битной, т.к. объективных предпосылок в 64-битной версии в моём случае нет, а определённые проблемы имели место быть.
    Я не разбирался с этим PPA. Я не против, если кто-то им займётся.
    На указанной Вами странице ссылка на мои плагины уже давно есть.

  16. VaYurik on 18 Jun 2010

Ваш отзыв

Вы должны войти, чтобы оставлять комментарии.

Поддержите меня!

Если вы хотите отблагодарить меня, можете закинуть денег мне на хостинг.
Делается это просто: в любом терминале ищем провайдера "Masterhost" и указываем лицевой счёт c123759 (обычно без первой буквы).

А я уж постараюсь и дальше стараться! :D

Яндекс.Деньги

41001543226857