Board.KolibriOS.org

Official KolibriOS board
It is currently Sat Apr 20, 2019 4:06 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 101 posts ]  Go to page Previous 1 2 3 4 5 6 7 Next
Author Message
 Post subject:
PostPosted: Thu Jan 11, 2007 7:19 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Рекомендую сверить giflib.inc с gif_lite.inc из дистрибутива K0600 или 0630. А то у меня есть вредная привычка исправлять глюки и никому об этом не говорить.


Top
   
 Post subject:
PostPosted: Mon Jan 22, 2007 5:32 pm 
Offline
User avatar

Joined: Thu May 19, 2005 4:43 pm
Posts: 896
Victor

Это один из глюков примитивного меню.Как я уже говорил,меню делалось для временного использования.Нужно писать нормальное полноценное меню(в общем библиотеку универсального и полноценного GUI).Как автор программы я знаю обовсех багах в ANIMAGE(в том числе и о тех,которые вы ещё не заметили :) ).



Mario79

Для того,чтобы KFM запускал ANIMAGE для редактирования BMP файлов, необходимо в KFM.INI файле написать строку:

bmp /rd/1/animage

Марат, сделать в KFM возможность выбора между MV и ANIMAGE - это уже к тебе. :)



diamond

Хорошо,проверю.


P.S.

На этих каникулах я хотел заниматься разработкой ANIMAGE, но по независящим от меня причинам(тяжёлые жизненные обстоятельства в семье) я не смогу этого сделать. :(


Top
   
 Post subject:
PostPosted: Mon Jan 22, 2007 5:43 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
andrew_programmer

Похоже что при выходе через меню редактор не удаляет курсоры.


Top
   
 Post subject:
PostPosted: Mon Jan 22, 2007 5:54 pm 
Offline
User avatar

Joined: Thu May 19, 2005 4:43 pm
Posts: 896
Проверю.
Я уже немного подзабыл код ANIMAGE.


Top
   
 Post subject:
PostPosted: Mon Jul 30, 2007 1:20 am 
Offline
Designer
User avatar

Joined: Thu Jan 25, 2007 3:33 pm
Posts: 4976
andrew_programmer
Извиняюсь за назойливость)), но мож у тебя появилось время доделать полосы прокрутки? Сейчас они большие, т.к. таскать можно только за них. Но в некоторых прогах (KFM например) уже реализован код когда можно сводить курсор с полос прокрутки.

Мм.. ещё. Если закрыть диалог "Открыть" или "Сохранить как...", то меню стаёт неактивным и рисовать уже нельзя.

В любом случае удачи.


Top
   
 Post subject:
PostPosted: Mon Jul 30, 2007 1:36 am 
Offline
User avatar

Joined: Thu May 19, 2005 4:43 pm
Posts: 896
Дела я всегда делаю в порядке степени приоритетности.
Leency, поверь, как только приоритет дойдёт до графического редактора - займусь им.

С появлением библиотеки libGUI набросать на форму скролер стало делом пяти минут. Вот только код ANIMAGE писался до появления libGUI, поэтому нужно значительно переделывать код ANIMAGE под libGUI. К тому-же надо переделывать работу с памятью под новый менеджер памяти Колибри.

А меню - тема для отдельного разговора. Надо несколько переделать оконную систему Колибри для его реализации.


Top
   
 Post subject:
PostPosted: Mon Jul 30, 2007 2:43 am 
Offline
User avatar

Joined: Thu Mar 01, 2007 4:16 pm
Posts: 426
А что с памятью kos, можно ссылку на акцент данного вопроса?

..bw


Top
   
 Post subject:
PostPosted: Mon Jul 30, 2007 11:46 am 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
bw
В MenuetOS и ранних версиях Колибри единственной возможностью работы с динамической памятью было изменение размера памяти функцией 64. После трудов Serge появилось действительно выделение/освобождение блоков памяти 68.11/12/13, но ещё не все программы об этом знают.


Top
   
 Post subject:
PostPosted: Mon Jul 30, 2007 9:08 pm 
andrew_programmer
Давно заметил такое дело (но все забывал написать): в Qemy 64 Мб памяти прописано, BMP файл размером 10 Мб не открывается – черный фон вместо файла, прописываю 128 Мб, все открывается. На реальном компере (старый Cyrix) памяти 32 Мб – файлы больше 1,5 Мб (приблизительно) тоже не открываются.
Вот у меня и возник вопрос – глюк программы или как? Даже если считать что программа резервирует двойной размер памяти под файл и откаты, все равно должно открываться, так как системе требуется не более 7-8 Мб всего, это с учетом всех приложений, запущенных лаунчером при старте.


Top
   
 Post subject:
PostPosted: Tue Jul 31, 2007 12:26 pm 
Offline
User avatar

Joined: Thu May 19, 2005 4:43 pm
Posts: 896
Mario79

Размер расходуемой ANIMAGE памяти = 5MB+6*размер_распакованного_файла(3*размер_по_x*размер_по_y)

С появлением новых возможностей работы с файлами и нового менеджера памяти Колибри - можно уменьшить размер расходуемой памяти. Но полное переписывание ANIMAGE на новый менеджер памяти, новый интерфейс через libGUI, новую работу с файлами, займёт дней 7-10 непрерывной работы(с утра до вечера).
Мне этим летом нужно ещё некоторую работу выполнить, которая облегчит мне жизнь во время тяжёлой учёбы. Незнаю, останеться ли у меня этим летом время для ANIMAGE.


Top
   
 Post subject:
PostPosted: Tue Jul 31, 2007 12:48 pm 
Offline
Designer
User avatar

Joined: Thu Jan 25, 2007 3:33 pm
Posts: 4976
andrew_programmer
Будим надеяться что удастцо, т.к. графический редактор - это очень важная составляющая операционной системы. Не дадим Менуетчикам (Вилле и ко) нас перегнать! :)


Top
   
 Post subject:
PostPosted: Tue Jul 31, 2007 1:12 pm 
andrew_programmer
6*размер_распакованного_файла ?!!!!!!!! Шесть!!!!!!
Челюсть валяется где-то под столом у соседа....
Это зачем такие "скромные" потребности в памяти? Я чего-то не понимаю...


Top
   
 Post subject:
PostPosted: Tue Jul 31, 2007 3:15 pm 
Offline
User avatar

Joined: Thu May 19, 2005 4:43 pm
Posts: 896
Mario79

64 функция крайне скудна на возможности работы с памятью, поэтому приходиться резервировать буферы размером с распакованную картинку.Даже если нужно скопировать часть картинки размером 2х2 пиксела, под это всёравно выделяется буфер размером с распакованную картику.
А память в ANIMAGE распределяется так:

5MB -статический экранный буфер под максимальное разрешение 1280*1024

дальше идут буферы размером с распакованную картинку(назовём это pak)

1 pak для самой картинки

2 pak-а для двух отмен последнего действия

1 pak для хранения скопированной выделенной части картинки

1 pak для хранения фона под скопированной картинкой, чтобы при его перемещении по картинке он не затирал основное изображение.

1 pak При сохранениии картинки она сначала упаковывается в этот буфер, а потом только записывается в файл(раньше небыло 70-ой функции).

Сейчас, когда есть настоящее динамическое выделение памяти, ненужно выделять статические буферы. Нужно выделять динамические буферы в зависимости от действий пользователя при редактировании картинки. Это позволит варьировать размер расходуемой памяти от 3-х распакованных картинок(минимум) до 5(максимум)(в зависимости от действий пользователя).


Top
   
 Post subject:
PostPosted: Tue Jul 31, 2007 4:21 pm 
andrew_programmer
Да нет, я в принципе ничего не имею против - просто удивил размер. В KFM я тоже использовал 64 функцию, а данные панелей в памяти таскаются туда сюда. Правда размер любой папки редко бывает больше размера BMP файла. Видимо мой подход оправдывается лишь при не очень больших объемах данных.


Top
   
 Post subject:
PostPosted: Fri Aug 24, 2007 4:00 pm 
Offline
Just Flooding

Joined: Sat Jan 06, 2007 2:30 pm
Posts: 269
1.Когда-то давно, когда я только учился програмировать, я писал на C++ под Винду, так вот в одной умной книжке я прочитал такую интересную вещь, что необязательно для отмены последних действий хранить всю картинку, альтернативный вариант - запоминать действия пользователя. В текстовом виде. Или в виде подобия опкодов. Когда буфер действий заполняется (а при таком виде заполнится он не скоро), то самое далёкое действие по дате выполняется над изображением, а остальные в буфере смещаются вниз. Действия, например, такие: MoveTo(x,y),LineTo(x,y),FloodFill(x,y)...

2.Я недавно на диске с учебниками математики обнаружил кучу литературы по обработке изображений(с примерами), с радостью, если есть время.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 101 posts ]  Go to page Previous 1 2 3 4 5 6 7 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited