Page 28 of 30

Re: Icon - менеджер иконок рабочего стола

Posted: Mon Nov 04, 2013 4:06 pm
by e-andrew
Я конечно понимаю, что полностью копировать другие оси нельзя и фраза "Так в других крупных системах" меня немного ... эм.. взбесила. Но в данном случае Mario и Leency правы - делать пустые иконки - бред. Если так уж кому то нужно, то можно сделать поле в ini и чекбокс в окошке "Скрыть имя"

Re: Icon - менеджер иконок рабочего стола

Posted: Mon Nov 04, 2013 4:09 pm
by Mario_r4
0CodErr wrote:всё элементарно же
Однако автору почему то такое не пришло в голову с самого начала.
Вместо этого "хотеть пустые идентификаторы, говно этот ваш libini, буду мстит, УПИФАТ всех мерзких людев".

Re: Icon - менеджер иконок рабочего стола

Posted: Mon Nov 04, 2013 10:44 pm
by GerdtR
Mario_r4 wrote:
0CodErr wrote:всё элементарно же
Однако автору почему то такое не пришло в голову с самого начала.
Вместо этого "хотеть пустые идентификаторы, говно этот ваш libini, буду мстит, УПИФАТ всех мерзких людев".
Хотите смейтесь, хотите нет, но использовать ИД как имя секции, а имя иконки - лишь ключ, я хотел первоначально, но потом прикинул, что мне придётся думать над тем, как создавать уникальное имя секции для создания иконки и решил, что имя - как заголовок секции и больше не парится над этим вопросом. Сейчас же я заметил ещё один баг - если создать одинаковые имена у двух иконок, то после перезапуска останется только одна иконка. И первоначальная идея приобрела новый смысл. Так что так и сделаю. Останется придумать как придумывать уникальные имена иконкам, но это уже моя проблема и не такая уж проблема :)
PS: и пустые имена будут и две иконки с одинаковым именем будут, незачем обижать юзеров виндовыми ограничениями. Вин7 видите ли, хех :)

Re: Icon - менеджер иконок рабочего стола

Posted: Tue Nov 05, 2013 9:22 am
by Akyltist
GerdtR wrote:Останется придумать как придумывать уникальные имена иконкам, но это уже моя проблема и не такая уж проблема :)
Spoiler:

Code: Select all

;-----------------------------------------------------------------------------+
; Функция генерации случайного числа в диапозоне 0..99999                     |
;-----------------------------------------------------------------------------+
; На выходе  : eax - случайное число                                          |
;-----------------------------------------------------------------------------+
_random:
    push    edx ecx ebx
    mov     eax,ebx
    or      eax,eax
    jnz     @f
    rdtsc
    xor     eax,edx
    mov     ebx,eax
@@:
    xor     edx,edx
    mov     ecx,127773
    div     ecx
    mov     ecx,eax
    mov     eax,16807
    mul     edx
    mov     edx,ecx
    mov     ecx,eax
    mov     eax,2836
    mul     edx
    sub     ecx,eax
    xor     edx,edx
    mov     eax,ecx
    mov     ebx,ecx
    mov     ecx,100000
    div     ecx
    mov     eax,edx
    pop     ebx ecx edx
    ret
;->

;-----------------------------------------------------------------------------+
; Функция генерации случайного числа в диапозоне [min...max]                  |
;-----------------------------------------------------------------------------+
; На входе   : edi - указатель на [max] значение                              |
; На входе   : edi - указатель на [min] значение                              |
; На выходе  : eax - случайное число                                          |
;-----------------------------------------------------------------------------+
_randomrange:
    push    esi edi edx ecx
    mov     ecx,edi
    sub     ecx,esi
    inc     ecx
    call    _random
    xor     edx,edx
    div     ecx
    mov     eax,edx
    add     eax,esi
    pop     ecx edx edi esi
    ret
;->

Re: Icon - менеджер иконок рабочего стола

Posted: Tue Nov 05, 2013 12:10 pm
by 0CodErr
GerdtR wrote:Останется придумать как придумывать уникальные имена
Если мы сохраняем все элементы от первого до последнего, то уникальное имя может быть просто номером этого элемента, и этот номер может измениться после сохранения(например, был id1, а стал id15), но в этом ничего страшного нет — главное, что он уникальный для каждого элемента.

Re: Icon - менеджер иконок рабочего стола

Posted: Tue Nov 05, 2013 1:44 pm
by GerdtR
Тогда нужно при сохранении в ini либо переписывать весь файл(ну точнее удалить все секции с иконками и создать заново), либо научить libini переименовывать секции. Хотя думаю просто добавить функцию, которая будет сообщать, есть такое имя секции, либо нет. И тогда: генератор + есть ли такое имя секции -> если есть, то всё ок, иначе в начало цикла.
PS: Akyltist, спасибо за ГСЧ.

Re: Icon - менеджер иконок рабочего стола

Posted: Tue Nov 19, 2013 9:54 pm
by DmitrySokolowsky
После одной из перезагрузок с сохранением образа некоторые иконки сместились, хотя до этого были на дефолтных местах.
Spoiler:
6.jpg
6.jpg (207.81 KiB)
Viewed 10993 times

Re: Icon - менеджер иконок рабочего стола

Posted: Thu Nov 21, 2013 9:36 pm
by 0CodErr
Вызываем меню правой кнопкой мыши.
Теперь, не закрывая меню, нажимаем левой кнопкой на иконку:
Spoiler:
kfm_snake.PNG
kfm_snake.PNG (3.1 KiB)
Viewed 10950 times
Такое происходит с разными иконками.

Re: Icon - менеджер иконок рабочего стола

Posted: Thu Nov 21, 2013 10:03 pm
by DmitrySokolowsky
Не подтверждаю, повторить не удалось

Re: Icon - менеджер иконок рабочего стола

Posted: Thu Nov 28, 2013 2:17 am
by GerdtR
Выкладываю пробную версию(ещё не рискую в svn кидать - толком не тестил). Теперь имя секции - уникальное шестнадцетиричное число от 00 до FF (именно большие буквы и именно 2 символа). Буферы в icon расчитаны максимум под 100 иконок, потому запаса в 256 вариаций хватает. В архиве новый @icon и icon.ini . Вот. Проверяйте старые баги, ищите новые...

Re: Icon - менеджер иконок рабочего стола

Posted: Tue Dec 10, 2013 12:12 am
by GerdtR
Ещё поправил немного код, вроде багов не добавил, но баг, который нашёл 0CodErr с ... опять с маранием иконок, только по другому, остался. DmitrySokolowsky, этот баг в виртуальной машине видно, если точнее, то там, где скорость отрисовки очень медленная.

Re: Icon - менеджер иконок рабочего стола

Posted: Tue Dec 10, 2013 12:37 am
by Mario_r4
Новые баги:
1) Начиная с ревизии 4336 иконки не отрисовываются совсем. По крайней мере в Qemu.
2) Ревизия 4335, если прописать параметр к иконке (например, для BOARD прописать параметром путь /hd0/1/boardlog12345.txt), а потом сохранить образ при помощи RDSAVE (например, на /fd0/1), то после перезагрузки иконка с параметром не отрисуется.

Re: Icon - менеджер иконок рабочего стола

Posted: Tue Dec 10, 2013 1:17 am
by GerdtR
1) А icon хоть запускается? Надо в VirtuelBox попробовать, в реальной работает.
2) Это с каждой иконкой или только с некоторыми? И скиньте icon.ini, когда иконка уже пропала.

Re: Icon - менеджер иконок рабочего стола

Posted: Tue Dec 10, 2013 1:19 am
by GerdtR
Mario_r4, эмм... icon.ini изменился с последней правкой. Вы не забыли его заменить на новый?

Re: Icon - менеджер иконок рабочего стола

Posted: Tue Dec 10, 2013 1:45 am
by Mario_r4
GerdtR wrote:1) А icon хоть запускается? Надо в VirtuelBox попробовать, в реальной работает.
В VirtuelBox иконки тоже не рисуются. Оба процесса в CPU присутствуют, менюшка ПКМ работает.
GerdtR wrote:2) Это с каждой иконкой или только с некоторыми? И скиньте icon.ini, когда иконка уже пропала.
С любой.
ICON.INI (1.94 KiB)
Downloaded 360 times
GerdtR wrote:Mario_r4, эмм... icon.ini изменился с последней правкой. Вы не забыли его заменить на новый?
Я просто взял сборку ревизии 4336. Ничего в ней не менял.