Название: DesktopUI Автор: SERGK393 Описание: эльф, заменяющий ГЭ на рабочий стол с мышкой. Значки запускают эльфы, файлы через эльфы, шорткаты, яву, номер телефона. Через контекстное меню можно создать значок, переместить/копировать (тот, который был последний раз редактирован или взят в буфер),удалить значок, закрыть эльф, выключить или перезагрузить телефон, поставить блок клавиш. Сделана работа с плагинами. Экран специально сделан как 640x480, для большей вместимости. Управление: Вверх/вниз/влево/вправо/2/8/4/6 - направление движения мыши. Левый софт/Центральная клавиша/5 - выбор. Правый софт/3 - контекстное меню. Установка: эльф поместить куда угодно, в архиве(DUI.zip) папку - в конфиг. DUI.pkg - для быстрой установки архива. Там эльфа нет.
3.7.15 [+] Добавил возможность скрывать по кнопке "назад" [+] Добавил во все км пункт настройки(bcfg), и в км от значка - блок клавиш 3.6.8 [?] Уже много времени прошло, могу что-то забыть [?] Кстати версия происходит от даты (6-июнь, 8-день) [*] Изменена система плагинов, теперь буков нет, но и утечек не должно быть [!] Старые плагины не пойдут! [*] Хитрю интерфейс в редакторе, похоже на яву [-] Забыл цвета в редакторе сделать [+] Сделал один плагин (дата) [?] Какие еще плагины сделать? [+++] Сделал умную мышь! [?] Проверьте насколько умная [*] Изменено отображение надписей, теперь однострочные будут закрвшиваться сколько надо, а не во всю ширину [+] Если на вторую строку еще будет один-два символа, то они на первой строке будут [*] Теперь рисуется все добавлением гуи в стендбай. Поэтому ничего не конфликтует с другими и редактор теперь без лишнего бука [-] У кого на центр джойстика что-то появляется, то и в редакторе так же будет [+] Настройки изменил немного, теперь сама расчитывается ширина км [+] Если в высоте шрифта 0, то будет автоматическая [?] Может что-то еще, всего не упомнишь [+] А, во, забыл, есть дуал ленг, англ и рус 3.1 [*] Изменено поле ввода текста [*] Плагин рисуется и обновляется, если он виден [+] Добавлена возможность отключения стирания главного экрана 3.0 [+] Реализована система плагинов [*] Поправлен код определения нужных папок 2.3 [+] Добавил графическую нижнюю панель [+] Обновление DUI по контекстному меню и при реконфиге [*] Изменен запуск явы 2.2 [+] Возможность добавлять надпись к значку [+] Побольше опций в конфиге 2.1 [+] Сделал нормальное редактирование значков, где их можно создавать, удалять, менять картинку значка, копировать, перемещать [+] Сделал быстрый доступ к шорткатам, явам и пр., кроме номеров телефона 1.4 [*] Немного изменен способ рисования (рисует ещё с помощью ивентов) [*] После слипмода кнопки должны нормально работать [+] Можно отключать управление цифрами [*] Ввод номера не убирается, причем если включено управление цифрами и если набрать номер с тех цифр, которые не влияют на эльф, то всё последующие кнопки будут работать как без эльфа [+] Добавил запуск папок [+] Добавил опции: показ статусбара, шрифт конт. меню, цвет часов 1.0 [*] Релиз
bayujember пишет: work fine on j105 .. But can you make the elf in english version
Спасибо! SERGK393 работ (w810 r3e031), я не получал никаких жалоб ...
Gracias! SERGK393 funciona bien (w810 r3e031), no he recibido quejas... Para bayujember: no soy bueno para el inglés, solo lo tengo en español a ver si te sirve! (yo lo traduje)
Thank you! SERGK393 works (w810 r3e031), I have not received any complaints ... To bayujember am not good at English, I have it in Spanish just to see if it helps! (I translated)
Важный тест! Сделана система плагинов! Скачиваем архив, в нем - папку DesktopUI - куда и тогда, DUIPlug - в ZBin на карту, эта папка с эльфами-плагинами. Хотя можно их класть куда угодно, но тогда надо поправить файлы в конфиге. Эти файлы находятся в DesktopUI/plg, там файлы с расширением duip, в них первая строка - координаты, вторая - путь к эльфу-плагину. Там можно прописать любой путь, я прописал их в отдельную папку. Пока плагины, да и сама система, не совсем полная, но хотелось чтобы вы протестили что есть. И пока на сайтах обновлять не надо, это не стабильная версия! Кстати ещё там подправил проверку наличия важных папок и файлов, минимум должен быть файл картинки мыши, один плагин, и один значок. При отсутствии ребутов не должно быть. Можете попробовать если что.
В общем зарелизил версию, сделал еще обновление некоторых данных в плагинах(когда мышка неподвижна), и теперь полный путь можно не прописывать, но тогда эльф будет лежать в папке plg. В архиве два плагина, один(testplug) можно удалить, там он ничего ценного не делает, просто образец, а второй - показывает заряд аккумулятора и температуру. Тестим, отписываемся. В архиве и в pkg эльфа нет!
Плагины:
Плагины позволяют выводить какую-нибудь информацию на экране, управлять им мышкой. Каждый плагин содержит файл .duip, лежат в папке DesktopUI/plg, в нем указывается координаты (формата XXX,XXX) и путь к эльфу (src: /usb/other/ZBin/testplug.elf) или только название эльфа (src: testplug.elf), но тогда эльф должен лежать в папке plg.
Я прикрепил исходники плагинов, вот пример:
Код:
#include "..\\include\Lib_Clara.h" #include "..\\include\Dir.h" #include "..\\deleaker\mem2.h" //деликер, можете и без него, только тогда нужен cpp2.cpp
typedef struct { BOOK book; PLUG_STRUCT*strct; //занесли куда-нибудь }MyBOOK;
MyBOOK*myBook; char*BookName="testplug";
#pragma segment="ELFBEGIN"
int TerminateElf(void * ,BOOK* bk) { MessageBox(EMPTY_TEXTID,STR("DUI плагин выгружаем через DesktopUI!"),NOIMAGE,1,1500,0); //лучше через букмэн не выгружать return(1); }
int isMyElfBook(BOOK * book){ if(!strcmp(book->xbook->name,BookName)) return(1); return(0); }
MyBOOK * CreateMYBook() { myBook= new MyBOOK; CreateBook(&(myBook->book),onCloseMYBook,&base_page,BookName,-1,0); return(myBook); }
void OnRedraw(GC*gc,int x,int y) //сама перерисовка: учитывайте положения x и y, а то рисунок не будет перемещаться { TEXTID SIDtime; SetFont(FONT_E_16B); SIDtime=TextID_Create(L"GO!!!",ENC_UCS2,TEXTID_ANY_LEN); DrawString(SIDtime,0,x,y,x+myBook->strct->width,y+myBook->strct->height,myBook->strct->height,0,clBlack,clBlack); TextID_Destroy(SIDtime); }
void OnClick(int x,int y) //нажатие на плагин { MessageBox(EMPTY_TEXTID,STR("YESSS!"),NOIMAGE,1,1500,0); }
void OnRefresh() //обновление {
}
int main(wchar_t*elfpath,void*,void*,PLUG_STRUCT*struc) //прием структуры(4-й аргумент!) { trace_init(); if(FindBook(isMyElfBook)){ SUBPROC(elf_exit); } else{ CreateMYBook(); if (struc){ //есть ли структура myBook->strct=struc; //запоминаем структуру myBook->strct->width=45; //записываем ширину плагина myBook->strct->height=16; //записываем высоту плагина myBook->strct->book=&(myBook->book); //записываем бук(для закрытия через DesktopUI) myBook->strct->draw=OnRedraw; //назначаем функцию рисования myBook->strct->click=OnClick; //ф-цию нажатия myBook->strct->refresh=OnRefresh; //ф-цию обновления }else MessageBox(EMPTY_TEXTID,STR("This elf is DUI plugin!"),NOIMAGE,1,1500,0); //ругаемся } return(0); }
Вы не можете начинать темы. Вы не можете редактировать свои сообщения. Вы не можете создавать опросы. Вы не можете вкладывать файлы в сообщения. Вы не можете отвечать на сообщения. Вы не можете удалять свои сообщения. Вы не можете голосовать.