Разработка Unity-совместимых приложений на Python - с чего начать?
Я опытный программист, который заинтересован в разработке приложений для Linux, в частности, GTK, и, более конкретно, приложений, совместимых с Unity. Помимо очевидного шага в изучении Python, как лучше всего изучить такие вещи, как:
- Как разработать графический интерфейс (возможно, с использованием Glade)? Есть ли хорошие учебники по Glade2?
- Где специфичные для Unity API-вызовы? (например, размещение значка уведомления на верхней панели и использование "значков" на значках запуска (как подсчет сообщений Unity Mail).
Кроме того, есть ли хорошие Python IDE, которые похожи на Xcode или Visual Studio, где вы можете создать свой интерфейс, а затем дважды щелкнуть по кнопкам и виджетам, чтобы привязать к ним код?
Спасибо за любую помощь.
2 ответа
Хороший вопрос.
Прежде всего, аппендикаторы никак не связаны с Unity. На самом деле, они так же хорошо работают на Xfce или KDE. Это очень, очень, просто в использовании. Вы создадите объект-индикатор, зададите имя значков, которые будут использоваться, когда он требует внимания, и т. Д., И просто прикрепите к нему меню. Затем индикаторы передаются по шине dbus и отображаются надлежащим образом, подходящим для текущей среды рабочего стола. В Unity, Gnome Shell, Xfce и LXDE он будет отображаться как меню GTK, а в KDE он будет отображаться как меню Qt и т. Д. Очень аккуратно. Вы можете найти больше информации об этом здесь: http://unity.ubuntu.com/projects/appindicators/
На правой панели Glade у вас есть страница Signals в разделе Properties. Здесь вы можете просто ввести имя метода для использования в качестве обработчика для этого сигнала. В своем коде вы просто создадите объект gtk.Builder, загрузите XML, который создает Glade, и используете метод gtk.Builder.connect_signals, чтобы связать все ваши сигналы с их методами. Это означает, что вы можете использовать интерфейсы Glade практически на любом языке программирования. Поскольку это так просто, а языки по своей природе различны, нет смысла добавлять кодирование в сам Glade. Для кодирования Python (и других языков) я рекомендую взглянуть на Geany ( http://apt.ubuntu.com/p/geany). Это очень хороший редактор /IDE.
Другие вещи в Unity настолько новы, что документации мало, кроме примеров кода. Некоторые из API только сейчас становятся стабильными, например, для Scopes и Lenses, которые еще даже не называли так. Как новичок, я бы немного подождал, прежде чем изучать эти вещи.
Записи в модуле запуска фактически называются в коде LauncherEntry и могут использовать индикатор выполнения, счетчик и QuickLists. Я на самом деле не кодировал это сам, но на этой странице есть пример, и он кажется очень простым, как и остальные API-интерфейсы Unity: http://bazaar.launchpad.net/~unity-team/libunity/trunk/view/head:/examples/launcher.py