(Назад к списку заданий eCo Labs)

http://ecomstation.ru/ecolabs/583-MarketGUI.html

Название: eCo Market
Заказчик: eCo Software


Срок: -
Вознаграждение: -

http://ecomstation.ru/ecolabs/583-MarketGUI.html

Дополнение 2010/11

  • Сроки: декабрь, январь
  • вознаграждение: полный рабочий день

План cat (20100826)

Мммм... Можно и так, но в нормальном GUI надо выбор пакетов делать. Я думал так:

  • вертикальный сплиттер,
  • слева - дерево пакетов,
  • справа - лог для текстовых сообщений.
  • Прогрессбар, когда в нём возникает необходимость, всплывает отдельным модальным окошком по центру.
  • В дереве каждый элемент красится каким-то цветом, отображающим состояние:
    • есть скачанный, на сервере та же версия
    • есть скачанный, на сервере другая версия
    • пакет не обновляется (по правой кнопке всплывает меню, в котором можно запретить скачивание этого пакета, запрет запоминается между запусками. Что ещё в меню - не знаю, а из одного пункта - неприлично)
    • (?) есть скачанный, на сервере нету.


 


Stage 2

Вопрос 1 - Удобный список программ

Уже есть пример такого списка - Vivid listbox (скриншот, исходники - в eToolkit). Там есть все - OWNER DRAW листбокс, пример как рисовать прозрачный PNG.

Как рисовать строчку про программу?

Веб-браузер Firefox v.3.5 / 20100918
Веб-браузер для прогулок по интернету. Умеет то и это.

 

Вопрос 2

Модернизировать:

  • XIO.DLL для скачивания
  • -

Вопрос 3 - Главное окно программы, категории

кнопка [В начало каталога]
"Графические"

//ListBox с подразделами:

  • Редакторы
  • Конверторы
  • ..
ListBox с программами
Статус-строка

Как рисовать дерево?

что делать с вложенными категориями? можно сделать ".." (т.е. если спустился в Apps -> Graphics -> Editors, то чтобы вернутся к Graphics, в начале списка есть ".." или "вернуться к полному каталогу" + упростит внешний вид + достаточно использовать Vivid ListBox, не нужно создавать новый контрол

?????

  • Как и где описать, к какой категории относится программа?

Вопрос 4 - Взаимодействие с WarpIn

Для чего это надо?

  • В списке программ нужно рисовать: "уже установлена" ИЛИ "не установлена"
  • Чтобы знать, установлен ли нужный рантайм?

Облом.. не найти пример, как парсить warpin .ini файл

Вопрос 5 - Управление программой - всё через строчку

Вот есть строчка про программу.

Индикаторы Нужны индикаторы (идея: справа от иконки программы выделяем место для индикатора):
  • программа не установлена, не скачена, ничего..

    Идея: серый круг пунктирной линией

  • программа скачена, но не установлена (на диске лежит файл). Рисуем коробочку закрытую.
  • программа установлена на этом компутере. Рисуем плюсик. или ракету. или ОК или ..

    a) "установлена" = "installed" b) или лучше какую-то иконку.

  • программа будет удалена. Черный крестик или красный.
Операции

  • Старт установки

    Если программа скачена, если это .wpi, то клик по программе => старт установки.

    Также хочу отсюда открыть WPS-папку, где лежит файл.

  • Скачивание:

    Как поставить программу на скачивание? Раз не установлена, то клик => В очередь на скачивание. Какой индикатор рисовать?

    А если программа установлена, а хачу опять скачать? Значит должно быть popup-меню, в котором все операции собраны.

Вопрос 6 - Зависимости

Если в очереди на скачивание есть программы, у которых есть REQUIRES, то

  • Пока что просто MsgBox "Также вам понадобятся рантаймы, Скачать?". Если ДА, то добавить в очередь на скачивание
  • ПОТОМ: Через WarpIN посмотреть, установлены ли эти REQUIRES пакеты.
  • ПОТОМ: Показать ListBox в который добавить все рантаймы и предложить их скачать. Если ДА, то добавить их в очередь.

Вопрос 7 - Цикл работы с программой

  • Юзер помечат какие программы скачать. Вопрос: они сразу же в очередь становятся? Сразу же скачиваются? Или навыбирал и Дальше надо нажать кнопку [Download selected] ?
  • ?

Вопрос 8 - Сортировка программ в списке

Выводить список:

  • сортировка по имени (по умолчанию)
  • свежие - в начало
  • коммерческие - в начало
  • еще?

Вопрос 9 - Поиск

У конкурентов всегда мощный поиск. Вводишь слова - в окне ListBox с подходящими результатами.

Вывод: надо делать ListBox универсальным. На входе данные.

  • Как сортировать? ListBox все сам сортирует? или Функция-фильтр?
  • А если надо открыть 2 окна ListBox?


Stage 3

Подробное описание

  • Здесь опять рисование Иконку, Название
  • подробно по-русски, какое состояние программы? Установлена? Скачена?
  • Автор программы - это важно!
  • описание программы - есть HTML вьювер

Просмотр скриншотов

Есть ID -> с ecomstation.ru можно скачать скриншоты. http://...id=1650

Кладем в состав программы вьювер FrImage. вызываем его frimage -только-одна-картинка -путь-к-картинке

откуда брать скриншоты? выкачивать если юзер запросил.

требует модифицикации FrImage: ввести такой параметр ^

Поле для рекламы

!!! это важно. смысл всего проекта - рекламу на рабочий стол!

ИДЕЯ 1:

скачать с http:// текущий баннер. показать его в нижней части окна программы. это иконка например, 64x64 и просто текст + в конце URL

ИДЕЯ 2: - лучше

скачать .xml, в котором N баннеров там url на иконку, тексты ENG/RUS/DE, URL с подробностями

Подсчет пользователей

Надо считать пользователей, надо считать сколько скачиваний, сколько просмотров, ..

(в boutique есть подсчет кол-ва подключений)


Stage 4

Всякие разные идеи:

e-co, 20100909

Записывать короткое описание пакета в EA файла .wpi

Просмотр этого описания из WPFolderEx.


-----------------------

Glassman, 20100909

> Вопросы:
> * какие еще программы добавить в каталог?
> http://ru.ecomstation.ru/projects/essentials/?action=queue
> * что улучшить в программе?

Хмм... Ну очередная бредовая идея: а вы не думали ученить что-то типа стима, 
который для игрушек. Т.е. пользователь регается в eCoMarket, и когда 
покупает программу, этот факт фиксируется где то в базе с рег ключем 
и т.д. и т.п. Т.е. потом он к примеру ставит голую eCS, ставит eCoMarket 
и ставит все нужные ему программы, не заморачиваясь, что где-то нужно 
искать ключи и прочие безобразия...

Это ужас, конечно, сколько работы. Зато такого ни у кого нет ;)