создать новую тему раскрыть все
 
Уже довольно давно (наверное после перехода на 3.x версию) заметил что программа стала пересохранять базу после каждого открытия. Даже если ничего не вносить, не менять никаких настроек страниц.
Раньше это как-то не беспокоило, пока не появилась необходимость работать в офлайн. Т.к. использую программу не единолично - база лежит в облаке. Соответственно, нельзя открыть базу "просто посмотреть" Облачный клиент видит, что файл изменился и в следующем онлайне сделает конфликт.
Собственно вопрос - зачем это сделано и можно ли будет поправить такое поведение программы?
 
...когда программа начала сохранять состояние всех страниц (закладок) между сеансами работы. Делается это весьма незамысловато: программа просто выбирает настройки каждой из открытых (просмотренных) страниц и сохраняет их в файле данных.
 
Можно ли это исправить? Думаю, такое исправление имело бы смысл, но я пока не знаю, как лучше это сделать. Может быть, предложите вариант?
свернуть/развернуть ветвь например, так [Meinfin 13/07/2016 16:54] # написать ответ
 
программа просто выбирает настройки каждой из открытых (просмотренных) страниц, сравнивает их с сохраненными в файле данных и сохраняет их только в том случае, если обнаруживает изменения.
свернуть/развернуть ветвь Можно и так. [Dervish 13/07/2016 17:28] # написать ответ
 
Но тогда нужно понимать, что изменением будет считаться любой мелкий "чих", например, чуть-чуть изменили ширину столбца. Если это не проблема, могу так сделать.
 
Но я так понимаю появление дополнительного чекбокса "сохранять настройки страниц" рассмотрено не будет, тогда конечно лучше хотя бы так. Я зашел в настройки и, вы не поверите, увидел чекбокс "Сохранять настройки страниц после каждого изменения"! Но к сожалению снятие/установка никак не влияет на постоянное пересохранение. Что делает эта настройка?
 
Видимо, что-то отвлекло и вот... Думаю, если ее доделать и сделать проверку, изменились ли настройки, проблема будет снята.
 
добавил в доработки: http://dervish.ru/bugs-item.483/
Если настройка планировалась, то, вероятно, тема уже есть, но я не нашел.
 
Причина была в том, что указанная настройка работала только на этапе загрузки данных и использовалась для выбора, какие настройки страницы загружать, рабочие из прошлого сеанса или сохраненные. А при закрытии файла данных, настройки все равно сохранялись. То есть, настройка работала верно при запуске программы. Но все равно записывала.
 
Что я сделал:
 
1. Доработал сохранение данных. Теперь если в настройках не установлен флажок "Сохранять настройки после каждого изменения", программа не будет сохранять настройки. То есть, вообще не будет даже пытаться это сделать. Соответственно, никакого изменения файла не будет.
 
2. Если флажок установлен и настройки во время сеанса работы не изменились, то программа тоже не будет обновлять файл. Сделано это путем простого сравнения настроек. Если настройки всех страниц точно такие же, как при открытии файла, то ничего не пишем. Однако, если на некоторой странице изменилась, например, ширина столбца или если пользователь раскрыл элемент дерева статей, то это будет считаться изменением и файл данных будет обновлен.
 
Ждем следующую 260-ю сборку.