Page 6 of 30

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

Posted: Wed Dec 21, 2011 7:15 pm
by Mario
Комбинатор высшего полета, че. Остап Бендер завидует. :mrgreen:

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

Posted: Wed Dec 21, 2011 7:27 pm
by SoUrcerer
Это проблема отсутствия прямолинейных указаний. Я не удивлюсь, если в образ идет какой-нибудь старый macros.inc.

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

Posted: Thu Dec 22, 2011 12:51 pm
by ramiil-kun
IMHO в заголовке файла с исходным кодом неплохо бы написать комментарий типа:

; using MACROS.INC(v<version>),INCLUDE.INC(v<version>)

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

Posted: Thu Dec 22, 2011 1:10 pm
by Mario
Так нету версий у этих файлов.

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

Posted: Thu Dec 22, 2011 1:38 pm
by CleverMouse
SoUrcerer wrote:Я не удивлюсь, если в образ идет какой-нибудь старый macros.inc.
А я вот удивлюсь, если так. Потому что в образ идёт ровно тот же файл, который используется в автосборке всех программ - кроме тех, которые используют свой собственный macros.inc - и известно, что автосборка успешно работает.

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

Posted: Thu Dec 22, 2011 2:58 pm
by Mario
Вероятно подразумевается образ с 0770, который скачен с сайта.

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

Posted: Thu Dec 22, 2011 4:24 pm
by SoUrcerer
CleverMouse wrote:
SoUrcerer wrote:Я не удивлюсь, если в образ идет какой-нибудь старый macros.inc.
А я вот удивлюсь, если так. Потому что в образ идёт ровно тот же файл, который используется в автосборке всех программ - кроме тех, которые используют свой собственный macros.inc - и известно, что автосборка успешно работает.
Спасибо за пояснения. :)

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

Posted: Sat Mar 10, 2012 12:57 pm
by Mario
Чтобы в очередной раз не забыть (прошлый раз года 2 назад обратил внимание): при установке метода отображения фоновой картинки растягиванием достаточно давно используется билинейное (вроде) сглаживание, в то время как в ICON так и остался метод без сглаживания. В ночной сборке хорошо заметно как звезда на ночном небе превращается вместо размыто-сглаженной кляксы в лего-конструктор, та часть которая попадает на иконку. Не смертельно, но не приятно и такое чувство, что уже вроде фиксилось однажды, после выхода 0770.

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

Posted: Sat Mar 10, 2012 1:03 pm
by Leency
Очень заметно если в Эолайте выделить iconstr.gif и нажать Ctrl+D.

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

Posted: Thu Mar 15, 2012 11:26 pm
by Mario
SVN r. 2469 некоторые оптимизации кода (заменил статические умножения на более быстрые shl и lea, выравнивание меток на align 4) и рефакторинг исходного кода, делающий его более читабельным и коротким.

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

Posted: Sat Mar 17, 2012 9:44 pm
by Mario
SVN r. 2475
1. Глобальная оптимизация - теперь программ использует только 161 Кб, вместо 603 Кб в старом варианте.
2. Все задержки реализованные через ф.5.1 теперь реализованы посредством ф.68.1 - это снижает бездарно тратившееся время когда потоки ждут освобождения мьютексов.
3. Иконка выводится через маску заданную функцией 50. Это немного увеличивает скорость отрисовки. Соответственно кликать мышь теперь можно только по самой иконке и надписи.

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

Posted: Sun Mar 18, 2012 2:11 am
by art_zh
Mario
Оптимизация иконок - очень нужное дело, здорово что хоть кто-то за него наконец взялся.
Только не надо 50-й функции, она самая мутнонавороченная из всего window.inc

Я когда оконную карту хотел переделать на тайловую графику - споткнулся как раз на 50-й. Она вообще никак не вписывается ни в какие перспективные схемы, и почти нигде не используется.
И заоптимизирована так, что без двух стаканов не разберешься.
Кончать ее надо (имхо).

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

Posted: Sun Mar 18, 2012 2:21 am
by Mario
Я не конечно не смотрел код функции в ядре, но со стороны приложения получилось очень выгодно. Вместо тупой обработки и вывода прямоугольника 52*52. Обрабатывается и выводится только собственно область иконки 32*32 и область текста 52*8. Итого получаем в первом случае просчет 2704 точек, а в моей версии 1440 точек. Почти в 2 раза разница.

В Qemu разница на глаз заметна, по крайней мере для меня. Типичным примером является приложение Circle. Я не утверждаю что использование окон такого стиля оптимально для широкого применения, но в случае с Icon оно оправдано. Иконки не так часто перерисовываются.

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

Posted: Sun Mar 18, 2012 2:48 am
by art_zh
В том-то и дело, иконки не так уж часто используются, чтобы ради них завязываться на стремную функцию.

Просто реальный прорыв в ядерной графике возможен только если ее выкинуть нафиг (или эмулировать с очень заметным снижением скорости).
Но если на 50-ю будет завязана не демка какая-то, а сам Менеджер Иконок - тогда рука на нее не поднимется ни у кого и никогда.

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

Posted: Sun Mar 18, 2012 3:06 am
by Mario
С таким подходом 24 бита тоже в топку. Пофигу, что половину видюх выбрасываем - перебьются, да. :mrgreen: