Pull to refresh

Почти виндикаторы — замена статус-бару

Reading time2 min
Views1.1K
Недавно Марк Шаттлворт писал в своем блоге о «виндикаторах», перспективном механизме, который должен заменить панель состояния во многих приложениях готовящейся Ubuntu 10.10. В перспективе виндикаторы должны предоставить единый механизм оповещения пользователя о состоянии работы программы и взаимодействия с ней. Пару месяцев назад мы также столкнулись с проблемой избыточности статус-бара. Одно из наших приложений имело специфичного вида статусную строку (ее хорошо видно на скриншотах в этом топике), которая занимала много места, принося при этом мало пользы. К сожалению, тогда Марк еще не опубликовал своих планов, и решение пришлось искать самим, разумеется, с учетом существующих образцов.


Нам понравилось, как оповещают пользователя о состоянии сети Kde4, Gnome2 и Windows 7: все их «апплеты» имеют меню с крупными двухстрочными элементами доступных действий и текущего состояния. В своей программе мы отвели правый верхний угол под панель состояния и разместили в ней набор иконок (каждая отдельная программа использует свое подмножество из этого набора).
  • Каждая иконка соответсвует своей подсистеме.
    Панель состояния для четырех подсистем


  • Поверх каждой иконки может отображаться суб-иконка статуса подсистемы (Марк предложил мнохромные иконки и цветовое кодирование статуса).
  • По нажатию на панель состояния отображается более подробная информация по всем подсистемам (в Gnome нажатие инициализирует показ меню для элемента под курсором, но у нас элементы не имею меню, поэтомы все статусы отображаются вместе).
    Статус с детализацией


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


Итоговый вид панели состояния в окне



Такое решение позволило нам сэкономить драгоценное место и постоянное держать пользователя в курсе работы системы.

Набор иконок — Oxygen. Проект — fo2rist. Реализация — enemy.
Tags:
Hubs:
+10
Comments25

Articles