|
ArcaOS 5.0 Русская версия
Пакет русификации ArcaOS 5.0 OS/2 давно доступен.
Поддерживается любая версия: 5.0, 5.0.1, 5.0.2.
eCo Software может выпустить и другие пакеты
(Немецкий, Голландский, Бразильский Португальский, Испанский, Шведский и т.д.)
|
Третье поколение eComStation: TouchPM интерфейс |
TITLE: Третье поколение eComStation: TouchPM интерфейс
DATE: 2011-07-01 02:37:38
AUTHOR: eCo Software
Редакция: 2011/11/16
1.0. Введение
Задача - развивать графический интерфейс операционной системы.
В каком направлении? По крайней мере для поддержки сенсорных экранов.
Назовем новый интерфейс: "TouchPM interface".
Что мы видим сегодня?
- Пользователи всё чаще покупают сенсорные экраны
- Одно из направлений развития eComStation - киоски / кассовые аппараты,
для которых и потребуется новый интерфейс (упростит разработку решений).
Мнение участников проекта
- Wizard: хм, ладно попробуем. Хотя я сейчас не очень представляю как можно объединить эти два типа интерфейсов.
Простого увеличения иконок и кнопочек, наверное, будет не достаточно. Надо думать.
A.0. Ланчпад и список задач
При обсуждении Touch PM, также нужно обратить внимание на:
Оба контрола могут прятаться за краем экрана.
Что на площадках? - Крупные иконки программ.
2.0. Переключение между стандартным интерфейсом и новым интерфейсом
Предлагается сделать два режимы работы окон
- (1) обычный, для десктоп компьютера
- (2) режим для маленьких экранов / сенсорных экранов / ..
Переключается, например, через виджет eCenter. или утилиткой в Настройках.
Итак, (1)-ый режим - это как сейчас. Обычный Presentation Manager.
(2)-ой режим:
- MsgBox на весь экран или на всё окно программы.
Кнопки большие, 20% площади экрана. Чтобы удобно попадать. Надписи крупнее.
- Сообщения крупнее.
- Контейнеры крупнее всё рисуют.
3.0. Элементы интерфейса
Название | Пример | С каким стандартным контролом совместить |
Элемент управления "Тулбар 2D" |
Тулбар из eToolkit можно оставить без изменений.
В режиме TouchPM_ACTIVE - кнопки автоматически делать макс.размера.
В составе eCo Software toolkit уже есть тулбар. Можно оставить тот же API.
В режиме TouchPM_ACTIVE - кнопки автоматически делать макс.размера.
| OK |
Кликабельный баннер |
Вместо MsgBox в программах показываются баннеры вида:
|
Интегрировать в eToolkit, совместить с MsgBox, PBar.
(т.е. те же вызовы. Но другой вид в случае TouchPM_ACTIVE)
|
Элемент управления "Выбери Меня"
|
(Fullscreen) выбор из нескольких картинок.
Выбор из нескольких картинок.
Диалоговое окно, на входе картинки и надписи. На выходе результат.
|
Элемент нужен и в стандартном PM, и в TouchPM. |
URL Link |
Если есть ссылки, то как их помечать?
подвешивать круглую кнопку для пальца?
| - |
Слайд (Slide) |
Fullscreen плакаты с информацией.
В обычном PM это соответствует такому: большое окно с текстом / картинками + кнопка OK внизу.
|
Это можно рядом с MsgBox.. |
Элемент управления "Матрица" (Matrix) |
Fullscreen выбор из матрицы MxN.
У нас уже есть заготовка матрицы.
|
Нужен в стандартном PM и TouchPM |
Система баннеров с уведомлениями |
Нужен в CRC, USB Widget, ..
|
Нужен в стандартном PM и TouchPM |
Элемент: Индикатор |
Можно выбрать внешний вид:
- калькулятор
- денежная сумма
- текстовая фраза
- блок текста
- + картинка
| |
| | |
B.0. Как изменяется PM в режиме TouchPM?
B.1: Фрейм-контролы
В режиме TouchPM, фрейм-контролы можно изменить.
Вот окно PM-программы:
Вопрос:
как изменить TITLE окна?
т.е. левую иконку. можно ли туда PNG иконку рисовать? 40x40, 50x50?
а главное - кнопки закрытия, минимизации, maximize?
просто их увеличить? промежутки между кнопками?
[hidden: Задание для дизайнера]
B.2: Message box
Как изменяется в режиме TouchPM? Кнопки крупнее, для пальца?
В режиме Touch PM все должно стать удобнее для сенсорного экрана.
для нетбука => крупнее?
Попробуй приложить палец к экрану. Какого размера должно быть окно?
Кнопки? Расстояние между кнопками?
Может быть кнопку Continue / Yes - надо справа. Квадратик справа.
А кнопки отмены - слева?
т.е. сейчас:
************
**Текст*****
************
****xxx*xxx*
а я предлагаю сделать окно уже, кнопки разместить слева и справа:
*****************
xxx**Текст****xxx
*****************
Wizard:
просто увеличение кнопок и заголовков.
PIC:
B.3: Merlin notebook
{TouchPM, PM}
мерлиновский ноутбук,
Вопрос: как он будет выглядеть для TouchPM? т.е. для нажатий пальцев.
Представь, что программа кассового аппарата. и там 10 страничек,
как выглядит такие язычки?
4.0. Большой курсор
Возможно нужно реализовать режим "Огромный курсор":
Wizard: Идея такова - реализовать большой курсор, которым собственно и
будем управлять с помощью пальца.
Рядом можно кнопочки показывать берущие на себя функционал левой и
правой кнопки мыши, и управляемые большим пальцем.
-
screenshot 1
screenshot 2
e-co: Курсор закрывает часть экрана, может закрывать важную информацию (числа или картинку).
Имхо, он не нужен. Что на практике: как только пользователь подведет палец -
кнопка или другой элемент подсветится - Дальше его можно кликнуть.
5.0. Медиа-центр
Если компьютер переключен в режим TouchPM,
то запускается оболочка Медиа-центра (в составе CRC уже есть Menu).
Медиа-центр можно вызвать, выбрать одну из мультимедия-программ
(аудио-проигрыватель, видео-плейер, просмотр фотографий).
5.1. Состояния
Состояния - это описаие дерева состояний медиа-центра.
Часть элементов не требуют карты состояний.
А какие-то требуют. Выбери меню (меню) - чтобы юзер мог ходить по
сложному (вложенным) меню
Path, Home, Back / Forward - в любой момент времени определено состояние. Где юзер.
В какой программе. Вызов меню для изменения состояния.
5.2. eCenter для TouchPM
eCenter внутри можно оставить как есть, но переключить его в режим
TouchPM:
Wizard: eCenter. Так будет удобнее, компактнее, и хорошо для сенсорного управления.
6.0. dpi, размеры шрифтов
?!?! нет идей
- юзать свежие TTF шрифты т.к. надписи обычно будут крупные
9.0. Область применения сегодня / Area of usage
Зачем нужен режим TouchPM?
Он будет использоваться (повлияет на развитие) в областях:
- simple utilities for Touch screen
- Media Center
- POS (Point of Sale)
10.0. Модернизировать программы
Какие программы можно перевести на новый интерфейс?
IBM Peers |
Уведомление о том, что
MsgBox: "LOGON: One or more of your connections failed - OK"
Описание проблемы
|
USB Widget |
Перевести на систему уведомлений.
|
11.0. Средства интерфейса
- в какой-о момент нужно подгрузить xml файл описывает список состояния
- описание Slide - xml
- описание матрицы - xml
12.0. Внутренняя организация
- Наверное всегда загружен какой-то демон TouchPM.
по крайней мере для баннерных уведомлений
- Во всю используется ecomedia для показа картинок.
13.0. Настройки
Есть конфиг с настройками TouchPM.
- EnableTouchPM = 1 - - значит активировать эти TouchPM особенности.
0 -- значит показывать стандартные PM контролы вместо их Touch-вариантов.
14.0. Совместимость с обычным PM
Если сделать набор библиотек TouchPM, то мало кто ими будет пользоваться.
Они будут жить отдельно.. 2-5 утилит и всё?!
Обязательно нужно совмещать Новые PM контролы с TouchPM.
15.0. Структуры данных
// ? e-co: Joseph говорит про тулбары с круглыми кнопками, про баннеры?
В каком виде описывать их кнопки, события от них?
Joseph:
имхо. любой сервис должен интегрироваться с похожим. в этом плане, следует сделать ресурс
хранения описаний прямоугольников с сообщением, которое должно быть послано в результате тыканья в него.
фактически, этого достаточно. Глассман добавит соображений тулкитовости. Я таким образом добавил к тренажеру
управление мышкой уложив всё в список прямоугольников и 20 строк кода в готовую
прогу. В описатели можно добавить ID окна для которо.. ???
на этой основе можно уже развивать прикладной уровень.
Click_item ={ // для управления с помощью мышки
Click_item ={ // для управления с помощью мышки
int x=0
int y=0
int dx=0
int dy=0
int offset=0
int pult=0
int resourceID=0
int signal=32 // для кнопок, 48 - для чекбоксов и радиобутонов
такая штука накладывает внешнее управление на диалоги POST'я
соответствующий сигнал соответствующемцу ресурсу
16.0. Использование OpenGL
Q: А давайте сделаем всё это на базе OpenGL?
A: Применять 3D библиотеку здесь не требуется.
17.0. Взаимодействие TouchPM с VirtualKeyboard/2
Потребуется взаимодействие с virtual keyboard. как ее могут вызывать PM программы?
и как они могут принимать введенные символы?
Capricorn: Вызывать её можно через Open Object
А принимать введённые символы... Зачем им это?
Для этого в системе есть такая замечательная штука, как фокус ввода!
18.0. PM-элементы управления для кассовых аппаратов
Также нужно создать несколько PM-контролов для приложений,
требующих сенсорный экран. Возьмем как пример, Кассовый аппарат.
Какие PM-контролы нужны для него?
- Выбор из матрицы NxM
- MsgBox
- Блоконт из N подстраниц (как Merlin notebook)
19.0. Вспомогательные библиотеки
- Спецэффекты:
- Перекраска greyscale-шаблона в нужную цветовую гамму
(например, базовый цвет = синий, тогда перекрасить greyscale в синие тона)
- Удобный выбор размера шрифта:
- Для кнопок в MsgBox нужны крупные надписи.
- Для медиа-центра нужны:
- Чтение карты состояний (xmllib уже есть)
Appendix A: История
- Концепция TouchPM сформулирована 2011/02/19
- Идея про два режима - была сформулирована в 2010 году
- Обрывки идей появились в 2008? 2009? 2010 году? Кликабельный баннер, ..
Appendix B: Участники проекта
- Wizard - дизайнер
- Joseph Shrago - cc
- Eugene Gorbunoff
Попробуй программу:
|
Как создать зашифрованный диск? NDCrypt - плагин для NetDrive.
|
Комментарии: Алексей 2011-07-01 20:17:24 | ИМХО работа с сенсорными экранами это одна из самых важных задач. В всех своих проектах я собираюсь использовать сенсокрные экраны в обязательном порядке. То что описано в этой статье только вершина айсберга. Стоит внимательно изучить управление сенсорными телефонами и иными гаджетами. В особенности яблоковидными. Интерфейс там развивается уже несколько лет, а размеры экрана более чем соизмеримы с компьютерными. |
Прокомментируйте эту статью (напоминаем, автор работал над текстом несколько недель, уважайте мнение других).
|
eComStation - это система для домашних пользователей: a) нет вирусов, b) Нативный софт + портированный софт + возможность запускать другие ОС внутри вирт.машин, c) Тысяча REXX-скриптов для автоматизации и мелких задач, d) возможность играть в любимые DOS-игрушки |
|
|