| Author |
Message |
Egres

Joined: 10 Nov 2004
Posts: 244
Location: Санкт-Петербург
|
Posted:
21.02.06 16:18 |
  |
У меня тут feature request созрел... Нельзя ли сделать возможность кэширования более, чем одного документа? Просто единственным нормальным способом чтения документа с большим количеством примечаний является хранение этих самых примечаний в отдельном файле и наблюдать распаковку каждый раз очень скучно.
Если это сложно реализовать, предложение снимается :-) |
_________________ < Sony TH55 / Sony SJ22 > |
|
| 193.124.83.* |
   |
 |
alexhemp

Joined: 29 Oct 2004
Posts: 820
|
Posted:
21.02.06 17:49 |
  |
Egres
Давай Feature Request в другом топике будем делать...
У меня тоже созрел маленький реквест - это поворачивать экран в направлении заданном в настройках Handendess. Я например делаю лево-ручный вариант, но читаю в Portrait в транспорте и в landscape дома.
Или же сделать запоминание режима поворота и при повторном его вызове менять обратно на 0 град.
Я просто назначаю поворот на долгое нажатие Nav, на T5 не так много кнопок, чтобы еще одну назначать на возврат к 0 град.
Добавлено через 42 мин.:
А все, понял! Этого всего не надо, а достаточно в список действий добавить "системный поворот экрана". Тогда в полноэкранном режиме я назначу его на кнопку (как назначено "меню" на верхнюю четверть экрана) и оно отлично будет поворачивать экран!
Вроде это просто, только никак не могу найти какой символ нужно в очередь запостить, по аналогии с vchrMenu и vchrFind :-( |
_________________ Palm Tungsten|T5 |
|
| 213.59.94.* |
   |
 |
PalmFiction

Joined: 25 Oct 2004
Posts: 454
|
Posted:
22.02.06 11:51 |
  |
| Quote: |
| У меня тоже созрел маленький реквест - это поворачивать экран в направлении заданном в настройках Handendess. Я например делаю лево-ручный вариант, но читаю в Portrait в транспорте и в landscape дома. |
Не выйдет, сильно завязано с положением кнопок
| Quote: |
Или же сделать запоминание режима поворота и при повторном его вызове менять обратно на 0 град.
Я просто назначаю поворот на долгое нажатие Nav, на T5 не так много кнопок, чтобы еще одну назначать на возврат к 0 град. |
Вообще-то так оно сейчас и работает. Первое нажатие поворачивает, второе возвращает
| Quote: |
А все, понял! Этого всего не надо, а достаточно в список действий добавить "системный поворот экрана". Тогда в полноэкранном режиме я назначу его на кнопку (как назначено "меню" на верхнюю четверть экрана) и оно отлично будет поворачивать экран!
Вроде это просто, только никак не могу найти какой символ нужно в очередь запостить, по аналогии с vchrMenu и vchrFind :-( |
Нет такого символа, система просто обрабатывает pendown в области статус-бара
Можно использовать SysSetOrientation и SysGetOrientation для системного поворота, но кнопки в таком случае вертеть не буду
Добавлено через 4 мин.:
| Quote: |
У меня тут feature request созрел... Нельзя ли сделать возможность кэширования более, чем одного документа?
|
Принято к рассмотрению |
|
|
| 217.13.215.* |
  |
 |
alexhemp

Joined: 29 Oct 2004
Posts: 820
|
Posted:
22.02.06 15:46 |
  |
PalmFiction
С вращением тогды не надо ничего менять, извиняй, я не доизучал... Через меню вызывал на 0.13b-test, а меню ведет себя не так как кнопка... |
_________________ Palm Tungsten|T5 |
|
| 213.59.94.* |
   |
 |
PalmFiction

Joined: 25 Oct 2004
Posts: 454
|
Posted:
22.02.06 16:41 |
  |
| Quote: |
С вращением тогды не надо ничего менять, извиняй, я не доизучал... Через меню вызывал на 0.13b-test, а меню ведет себя не так как кнопка...
|
Думаю, что если повторный тычок в меня "90 град" приведет к возврату на "0 град", то народ будет жаловаться.
А системный поворот в принципе может иметь смысл, если скорость отрисовки выше, к тому же памяти под буфер поворота выделять не надо, сам поворот делать не надо, т.е. экономия энергии
Добавлено через 9 мин.:
2 Egres
Предлагайте как ограничить кэширование. По колличеству файлов точно не пройдет, разные размеры у файлов |
|
|
| 217.13.215.* |
  |
 |
Egres

Joined: 10 Nov 2004
Posts: 244
Location: Санкт-Петербург
|
Posted:
23.02.06 1:15 |
  |
2PalmFiction: И что? В смысле, почему влияет "разность" размеров? Просто пока я не уловлю какая связь, я ничего предложить не смогу :-(
Я-то как раз думал про параметр "количество кэшируемых файлов" :-(.
Предлагаю промежуточный вариант - иметь возможность кэшировать zip-архив _целиком_ с ограничением общего количествоа памяти под кэш. Хотя как-то это криво :-( |
_________________ < Sony TH55 / Sony SJ22 > |
|
| 81.211.110.* |
   |
 |
PalmFiction

Joined: 25 Oct 2004
Posts: 454
|
Posted:
23.02.06 8:12 |
  |
| Quote: |
| Я-то как раз думал про параметр "количество кэшируемых файлов" |
Ограничивать на обязательно. Пользователи мало думают о принципах работы программы, да и по большому счету, это и не должно из волновать.
Имееем 2Mb свободной storage памяти. Файлов с размером распакованного текста в 100Kb можно закэшировать максимум 20 штук. Файлов с размером распакованного текста в 1Mb можно закэшировать максимум 2 штуки. Какой тогда смысл делать ограничение по кол-ву кэшируемых файлов?
Забивать кэшем всю память до предела, тоже не выход, другим программам тоже ведь надо работать.
Ограничивать кэш в Kb-Mb тоже плохо. Есть свободной 8Mb, ограничиваем кэш 6-ю Mb, ставим Legacy, осталось свободным 2Mb, ограничение стало большим чем есть свободного места.
Эти вариации, я за пару минут надумал, а подумать лучше, то еще больше можно найти. |
|
|
| 217.13.215.* |
  |
 |
Egres

Joined: 10 Nov 2004
Posts: 244
Location: Санкт-Петербург
|
Posted:
23.02.06 13:12 |
  |
Ну хорошо, а какая тогда разница один файл или пять? В смысле, один файл на 5М точно так же забьёт все как и два по 2.5. Как сейчас ограничивается? Почему не оставить так же?
Ну а вообще можно тогда ввести (для общего спокойствия) параметр "количество памяти под кэш" с двумя вариантами - количество в К/Мб или процент от свободной памяти. Определять что именно введено как раз по знаку '%'. Тут же полезно выводить максимальное (на данный момент) значение.
Я тут же поставлю 90% и мне станет хорошо :-). |
_________________ < Sony TH55 / Sony SJ22 > |
|
| 81.211.110.* |
   |
 |
PalmFiction

Joined: 25 Oct 2004
Posts: 454
|
Posted:
24.02.06 9:00 |
  |
| Quote: |
Ну хорошо, а какая тогда разница один файл или пять? В смысле, один файл на 5М точно так же забьёт все как и два по 2.5. Как сейчас ограничивается? Почему не оставить так же?
|
Разница в том, что делать если нет места для кэша, при открытии
1.Если файл кэшируется единственный, то ничего делать не надо. Ничего не поможет.
2.Если кэшируем несколько и при открытии возникает недостаток места, то если оставить как сейчас, то для очистки кэша надо выйти в список и оттуда в лаунчер. В реальности же надо выяснить объем всех файлов кэша и удалять то кол-во которое позволит открыть документ. Сколько надо под кэш документа, не вегда можно вычислить точно. Какие кэши удалять, самые старые или в зависимости от размера.
Вообщем проблема не в кэшировании нескольких файлов.
Проблема как сделать, чтобы кэширование не создавало проблем пользователям.
| Quote: |
| Я тут же поставлю 90% и мне станет хорошо :-). |
Хотелось бы сделать так, чтобы хорошо было для всех
Добавлено через 1 час. 46 мин.:
| Quote: |
2. Если при чтении какого-то файла PF ушел в ресет, то не открывать файл при входе в программу.
Сделать например файл-маркер, при входе в режим чтения создавать его, а при закрытии режима чтения - удалять.
И если он есть в памяти при старте программы - то значит был аномальный выход и нужно открывать список.
|
Для NVFS файл-маркер бесполезен.
Что если использовать FtrSet? |
|
|
| 217.13.215.* |
  |
 |
Egres

Joined: 10 Nov 2004
Posts: 244
Location: Санкт-Петербург
|
Posted:
24.02.06 12:40 |
  |
Если памяти для открытия не хватает - удалять самый старый кэш. Точнее, не самый старый, а к которому дольше всего не было обращений. |
_________________ < Sony TH55 / Sony SJ22 > |
|
| 81.211.110.* |
   |
 |
PalmFiction

Joined: 25 Oct 2004
Posts: 454
|
Posted:
24.02.06 14:02 |
  |
| Quote: |
| Если памяти для открытия не хватает - удалять самый старый кэш. Точнее, не самый старый, а к которому дольше всего не было обращений. |
Распространненый метод. Но удалив кэш одного большого файла, можно сохранить кэш нескольких небольших
| Quote: |
| Ну а вообще можно тогда ввести (для общего спокойствия) параметр "количество памяти под кэш" с двумя вариантами - количество в К/Мб или процент от свободной памяти. Определять что именно введено как раз по знаку '%'. Тут же полезно выводить максимальное (на данный момент) значение. |
Как работет кэширование
1. При закрытии PF из списка док-тов все кэш-файлы удаляются.
2. При закрытии PF из режима чтения, кэш-файлы не удаляются.
Т.е. во время работы PF, можно заполнять всю свободную память (прибивая старые кэши при нехватке памяти).
Объем кэша наверняка будут ставить или 0 или 100%. Но при закрытии PF из режима чтения выяснится, что памяти свободной нет, что приведет к жалобам. |
|
|
| 217.13.215.* |
  |
 |
alexhemp

Joined: 29 Oct 2004
Posts: 820
|
Posted:
24.02.06 14:49 |
  |
Кэш в памяти и сейчас некоторых смущает...
Я думаю с кэшем не нужно ничего менять, ибо рациональное управление им будет сложным. В любом случае по дефолту думаю нужно оставить поведение идентичное тому что есть.
Если делать - то размер кэша можно ставить в % и количеству файлов. Т.е. - кэшировать N файлов не более M% общей памяти (показывать в скобках сколько мегабайт это будет)
Если включено то один файл кэшируется всегда, но при выходе он удаляется если занимает места больше указанных %. (ведь распаковывать все равно нужно куда-то).
Еще вариант - кэш на карте. Ведь текстовые файлы с карты не нужно распаковывать. Тогда этот кэш легко будет просмотреть и уничтожить в случае чего любым файл-менеджером, ну и на картах места больше. Т.е. 2 режима - кэш в памяти как сейчас или кэш на карте с настройками объема.
ZIP целиком не надо кэшировать, у меня некоторые содержат по паре сотен рассказов...
Насчет FtrSet - думаю да, идея хорошая!
Ну а если сделать DmSyncDatabase - она разве не запишется? Настройки же сохраняются без проблем? Ведь позиция в тексте сохраняется... |
_________________ Palm Tungsten|T5 |
|
| 84.204.120.* |
   |
 |
PalmFiction

Joined: 25 Oct 2004
Posts: 454
|
Posted:
24.02.06 15:51 |
  |
| Quote: |
| Ну а если сделать DmSyncDatabase - она разве не запишется? Настройки же сохраняются без проблем? Ведь позиция в тексте сохраняется... |
Ошибка с MainPref.Crash который пишется в PalmFictionMainPref. К конце сбрасывается, но не устанавливается в начале. |
|
|
| 217.13.215.* |
  |
 |
Egres

Joined: 10 Nov 2004
Posts: 244
Location: Санкт-Петербург
|
Posted:
24.02.06 18:19 |
  |
А может отдельную команду сделать? Закэшировать файл/архив на диск/в память? Хотя вопрос с ограничением/чисткой кэша остаётся :-( |
_________________ < Sony TH55 / Sony SJ22 > |
|
| 81.211.110.* |
   |
 |
alexhemp

Joined: 29 Oct 2004
Posts: 820
|
Posted:
24.02.06 20:41 |
  |
Egres
Дык есть такая команда - копировать в память. Любые документы копирует, и даже в zTxt жмет - для экономии.
Выделяешь, копируешь и вставляешь на девайс... Даже ZIP туда можно засунуть(например для копирования с карты на карту). В процессе распаковывает из ZIP. Нет проблем сделать из txt файла в zip - txt файл в памяти например.
Это и есть "Принудительное кэширование" :-)
Кэш ручной вообще не нужен, будут только вопросы "Почему памяти мало" и "Почему я кэширую, а PF все равно распаковывает". |
_________________ Palm Tungsten|T5 |
|
| 84.204.111.* |
   |
 |
|
|