forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Библиотеки (http://forum.boolean.name/forumdisplay.php?f=124)
-   -   Lib_rms - Новые грани Хранилища Записей (http://forum.boolean.name/showthread.php?t=6310)

odd 31.08.2008 03:28

Lib_rms - Новые грани Хранилища Записей
 
Вложений: 2
Последнее обновление 05.10.2009
Краткий перечень новых возможностей:
  • Возможность читать/писать строки на русском языке
  • Возможность читать/писать картинки (с поддержкой прозрачности и альфаканалов)
  • Чтение списка разделов хранилища
  • Возможность доступа к хранилищу из других мидлетов

Можно будет, к примеру, в будущем замутить так:
Скины окон, шрифты и проч. устанавливается и записывается в специальное общее хранилище.
Приложение просто читает всё это из общего хранилища при работе.
Таким образом мидлет будет меньше весить. Как вам такая идейка?

Kurdt 31.08.2008 13:23

Re: Lib_rms - Новые грани Хранилища Записей
 
а если рмс не буде то и шрифтов небудет у второй программы?

Strelok 31.08.2008 16:23

Ответ: Lib_rms - Новые грани Хранилища Записей
 
odd, а можешь сделать функцию чтоб при удаление записи из хранилища автоматом происходила дефрагментация? было бы очень удобно

odd 01.09.2008 08:17

Ответ: Lib_rms - Новые грани Хранилища Записей
 
Цитата:

Сообщение от Strelok (Сообщение 85456)
odd, а можешь сделать функцию чтоб при удаление записи из хранилища автоматом происходила дефрагментация? было бы очень удобно

Ладно, я попробую такое замутить...

odd 01.09.2008 08:20

Ответ: Re: Lib_rms - Новые грани Хранилища Записей
 
Цитата:

Сообщение от Kurdt (Сообщение 85450)
а если рмс не буде то и шрифтов небудет у второй программы?

Ну да. Зато если у тебя будет 2 или 3 программы с одним шрифтом, то соответственно будет экономия памяти. Хотя насчет экономии сильно сомнительно. Картинки в RMS пока хранятся в незапакованном виде, поэтому даже маленькая картинка 128х128 займет места 128*128*4 = 64 Кб :(

SoboLEFF 30.03.2009 19:19

Ответ: Lib_rms - Новые грани Хранилища Записей
 
походу в этой библиотеке не работают savestring и savepicture

так всё работает:

i:=AddString(rs, 'Всё сохранилось!');
s:=LoadString(rs, i);
DrawText(s, 5, 5);
i:=AddPicture(rs, LoadImage('/about.png'));
im:=LoadPicture(rs, i, 24, 24);
DrawImage(im, 50, 50);

а так нет:

SaveString(rs, 'Всё сохранилось!', 1);
s:=LoadString(rs, 1);
DrawText(s, 5, 5);
SavePicture(rs, LoadImage('/about.png'), 2);
im:=LoadPicture(rs, 2, 24, 24);
DrawImage(im, 50, 50);

просто выводится белый экран и всё, проверял на телефоне и на эмуляторах

Slezka 03.04.2009 17:36

Ответ: Lib_rms - Новые грани Хранилища Записей
 
А можешь сделать, что б не картинку сохроняло, а миди-очень нужно!!!!

odd 11.04.2009 02:24

Ответ: Lib_rms - Новые грани Хранилища Записей
 
Цитата:

Сообщение от Slezka (Сообщение 102713)
А можешь сделать, что б не картинку сохроняло, а миди-очень нужно!!!!

Всё это довольно странно. Можно конечно считать MIDI файл как строку текста и успешно сохранить его в RMS, но вот как потом плееру объяснить, что эту строку нужно воспроизводить?

odd 11.04.2009 02:27

Ответ: Lib_rms - Новые грани Хранилища Записей
 
Цитата:

Сообщение от SoboLEFF (Сообщение 102252)
походу в этой библиотеке не работают savestring и savepicture

так всё работает:

i:=AddString(rs, 'Всё сохранилось!');
s:=LoadString(rs, i);
DrawText(s, 5, 5);
i:=AddPicture(rs, LoadImage('/about.png'));
im:=LoadPicture(rs, i, 24, 24);
DrawImage(im, 50, 50);

а так нет:

SaveString(rs, 'Всё сохранилось!', 1);
s:=LoadString(rs, 1);
DrawText(s, 5, 5);
SavePicture(rs, LoadImage('/about.png'), 2);
im:=LoadPicture(rs, 2, 24, 24);
DrawImage(im, 50, 50);

просто выводится белый экран и всё, проверял на телефоне и на эмуляторах

Видимо, записи под номером 1 просто нет, вот и происходит зависание при попытке записи в несуществующий раздел.

SoboLEFF 11.04.2009 09:19

Ответ: Lib_rms - Новые грани Хранилища Записей
 
а как создать этот раздел?

odd 11.04.2009 22:31

Ответ: Lib_rms - Новые грани Хранилища Записей
 
Цитата:

Сообщение от SoboLEFF (Сообщение 103412)
а как создать этот раздел?

Да простым добавлением. Типа так:
PHP код:

i:=AddString(rs'#'); 

Перед записью чего-то в RMS можно в цикле позанимать энное количество записей таким оператором, а потом просто менять информацию на нужную. Это как при работе с обычным массивом. Пока ты не объявишь массив ты не можешь ничего туда записывать, а когда объявишь и заполнишь его хотя бы нулями, можно его использовать на всю катушку.

Olaola 29.04.2009 18:17

Ответ: Lib_rms - Новые грани Хранилища Записей
 
Цитата:

Сообщение от odd (Сообщение 103403)
Всё это довольно странно. Можно конечно считать MIDI файл как строку текста и успешно сохранить его в RMS, но вот как потом плееру объяснить, что эту строку нужно воспроизводить?

Строку загнать в InputStream, мне тоже очень нужна такая функция!!!
если сможешь сделай пожалуйста!!!

Olaola 29.04.2009 18:18

Ответ: Lib_rms - Новые грани Хранилища Записей
 
С InputSteam плеер будет работать..

GRAY_WOLF 29.09.2009 21:27

Ответ: Lib_rms - Новые грани Хранилища Записей
 
Как узнать была ли запись в хранилише? В описании ни чего про это не сказано.

odd 05.10.2009 14:52

Ответ: Lib_rms - Новые грани Хранилища Записей
 
По предложению GRAY_WOLF добавил функцию проверки есть ли запись под данным номером (без опасности зависания программы).
Функция isNotEmty - возвращает 1 или 0. Таким образом, можно даже перебирать всё хранилище перебором.


Часовой пояс GMT +4, время: 08:13.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot