Показать полную графическую версию : [Проект] TweakMaster (база твиков и Gui конфигуратор для сборки Аддона)
saavaage
24-12-2009, 03:13
SOLON7, посмотрел только, что и сразу же напоролся на такое - см. приаттаченный файл. Такое окно возникает при попытке сохранить текущий профиль. После выхода из программы и входа обратно, настройки последнего профиля грузятся по умолчанию (это нормально). Однако, при попытке неоднократной загрузки других профилей происходит какая-то мистика- такое ощущение, что все сохраненные профили очищаются...
Насчет размещения кнопок - имхо, лучше кнопку загрузки и выпадающий список конфигураций визуально объединить (либо сделать вокруг них рамку, либо визуально сделать из них единый блок) Лучше всего, конечно, было бы сделать так, чтобы при нажатии на кнопку "загрузить" появлялся выпадающий список и при выборе определенного конфига, грузился выбранный конфиг, имхо...
Параллельно возник вопрос по работе с базой конфигов - предусмотрен ли механизм по удалению ненужных конфигов?
saavaage
24-12-2009, 03:24
SOLON7, посмотрел еще на работу F4:
Спасибо за дабл-клик и, в принципе, все работает уже лучше (сохранение изменений заработало).
Правда есть один нюанс, вернее 3:
1. если ставлю галочку в поле "выбран", то при сохранении этот параметр не сохраняется;
2. можно ли сделать так, чтобы при нажатии кнопки "сохранить" выскакивало уведомление о том, что сохранение прошло успешно (что-то вроде "текущие изменения сохранены")? Так будет более интуитивно понятно для пользователя, что все сохранилось;
3. смущает отсутствие кнопки "Закрыть". Понятно, что достаточно кликнуть на крестик в верхнем правом углу окна, но, возможно, было бы проще разместить дополнительную кнопку. Предлагаю сделать 3 кнопки: 1. Сохранить (сохраняет текущие изменения, без выхода) 2. Отменить (отменяет все изменения после последнего сохранения, без выхода), 3. Выйти (конец редактирования, закрытие окна) - здесь неплохо было бы встроить диалог "Желаете сохранить последние изменения?" и выбор "да" или "нет". Это важно на тот случай, если пользователь забудет сделать сохранение последних изменений нажатием кнопки "Сохранить".
Заметил, что Вы добавили возможность удаления папок (спасибо), но пока эта функция не действует (выскакивает окно создания).
Еще раз спасибо за труд. Вырисовывается полезная и гибкая программа..
saavaage
24-12-2009, 04:57
Насчет размещения кнопок - имхо, лучше кнопку загрузки и выпадающий список конфигураций визуально объединить (либо сделать вокруг них рамку, либо визуально сделать из них единый блок) Лучше всего, конечно, было бы сделать так, чтобы при нажатии на кнопку "загрузить" появлялся выпадающий список и при выборе определенного конфига, грузился выбранный конфиг, имхо... » - Есть еще более простой вариант. Можно просто производить загрузку путем выбора нужного профиля из выпадающего списка, т.е. при выборе требуемого профиля будет происходить автоматическая его загрузка без дополнительного нажатия клавиши "загрузить профиль". В данном случае "Загрузить профиль" будет просто пояснительным текстом к выпадающему списку профилей.
saavaage, Вот свежая версия, там было реализовано удаление папок + некоторые ошибки устраненны !!
Теперь надо подумать над оргранизацией удаления и создания твиков !!
Есть советы, давайте их сюда !!
Еще плиз протестируйте эту версию на ТЕст-краш, правильно ли работает !!
Программа медленно и оперативно набирает стабильность и функциональность !! Интересно скольки писали Семерку !!
saavaage
25-12-2009, 00:06
SOLON7, смотрю последний релиз.
Сразу хочу спросить - ввиду сложности проекта не лучше ли будет составить детальный план работ, где будут перечислены основные задачи по проекту? Разделим их условно на 2 группы - 1. базовый функциона, 2. дополнительный функционал, 3. доводка интерфейса программы. По мере выполнения будем их вычеркивать. Так будет и тебе проще работать и народ будет дополнять дельными советами (если появятся). Я бы мог сделать это завтра с утра в excel и выслать на твой e-mail для рассмотрения и утверждения. Потом закинешь его в шапку для общего доступа... Если согласен - маякни....
Теперь о релизе. Из положительных моментов:
1. работает функция удаление папки
2. устранен баг с не сохранением при редактировании галочки в параметре "выбран"
3. в функционале работы с профилями появилась возможность удаления. Работает без багов.
Вопрос для рассмотрения на отдаленную перспективу - необратимость операции удаления - можно ли предусмотреть автоматический бекапинг базы конфигов (бэкапинг делать на основе сессий работы с прогой, т.е. прога должна при новом входе в программу автоматически сохранять бэкап состояния на начало работы). Это позволит избежать обидных потерь.
Кроме того, неплохо было бы предусмотреть следующее: что будет при выходе нового релиза - как пользователь сможет перекинуть свою старую, хорошо проработанную базу в новый релиз программы? Будет ли какая-то преемственность и возможность интеграции/импорта старой базы в новую с сохранением структуры папок и прочих нюансов?
4. изменен интерфейс выбора конфигурации. На мой взгляд кнопка "выбрать" не нужна, т.к. выбирая из выпадающего списка нужный профиль, мы и делаем сам выбор (извини за тавтологию). Проще ее сделать в виде комментария к выпадающему списку.
saavaage
25-12-2009, 00:44
SOLON7, теперь о багах:
1. осталась болячка предыдущего релиза с сохранением профилей. При попытке добавить новый после ввода названия и нажатия на кнопку ОК вываливается то же самое окно, что и тогда. Само сохранение проходит нормально. Однако, при создании еще одной конфигурации происходит странная вещь: 1. при новой загрузке программы загружается последняя выбранная конфигурация, хотя в окне выбора находится первая по списку; 2. при попытке загрузить любую конфигурацию, отличную от последней, ничего не изменяется (на экране всегда отображается последний конфиг)
2. при попытке в окне списка твиков проставить галочку напротив нужного твика, который уже визуально выбран, ничего не происходит. Буквально: если я выделяю твик "скрыть апллет..." (см. скрин) и после этого хочу поставить напротив него галочку выбора, ничего не получается.
3. не знаю баг ли это, но в окне редактирования твика при нажатии на кнопку "Выйти" происходит простое закрытие окна без запроса о сохранении последних изменений. Если пользователь сделал изменения и выходит, забыв нажать на кнопку "Сохранить", то все изменения будут потеряны. Если не сложно, добавь этот запрос...
4. чтобы уже закончить с окном редактирования - как ты смотришь насчет внесения следующего дополнения в функционал (уже писал раньше):
1. пользователь должен иметь возможность ставить галочку не только в чекбоксе "выбран" (сейчас находится напротив поля "название твика")- если выбирает твик, но и в чекбоксе "выбран откат" - в случае если мы выбираем откат. Я предлагаю размещать эти чекбоксы прямо напротив самих названий кодов. Естественно, если проставлена галочка напротив кода твика, то проставить такую же напротив кода отката для юзера уже должно быть не возможно ( и наоборот);
2. добавить возможность выбора группы твиков (папки в дереве твиков) прямо из окна редактирования;
3. заметил, что при выходе из окна редактирования твика в окне программы визуально не видно, какой твик мы редактировали. Можешь сделать выделение редактируемого твика, а то очень тяжело потом сориентироваться, какой твик ты только, что изменил..
saavaage
25-12-2009, 01:55
SOLON7, похоже отловил еще один баг - при перетаскивании твиков из папки в папку:
1. при перетаскивании твиков из папки в папку, находящиеся на одном уровне, происходит перетаскивание всей папки (и всех ее твиков), в которой находится твик, в папку назначения;
2. если же нами перетаскивается твик из папки, находящейся на более низком уровне, в папку, находящуюся на более высоком уровне, то после запроса на подтверждение операции, выскакивает ошибка (см. скрин 3), но перетаскивание происходит;
3. при перетаскивании твика, расположенного в папке на более высоком уровне в папку более низкого уровня, происходит удаления как папки твика, так и папки назначения. Данная операция проходит только при перемещении твика с корневого уровня в папку более низкого уровня
Пришел к выводу, что с этой функцией сплошной баг. Более или менее она работает, когда речь идет о исходной - корневой папке и в случае 2. Все остальные варианты - баг
saavaage
25-12-2009, 02:29
Даешь добро на составление небольшого плана работ?
кстати, я сейчас в аси...
Интересно скольки писали Семерку »
Там программисты уже давно знают своё дело, отталкиваться от достигнутого проще чем начинать с нуля.
К сожалению потестить не могу, у меня всё та же ошибка, по ходу нужно разобраться с плагом для LiveCD, который добавить поддержку необходимых модулей, тогда станет ясно, чего не хватает моей системе.
При переходе на base.mdb должны быть реализованы все фичи предыдущей версии, иначе какой смысл переходить на новую версию. В старой твики редактируются, переносить и сортировать твики можно обычным перекидыванием твиков по каталогам. Поиск тоже возможен - обычный поиск файлов по имени. Поиск нужных твиков по описанию или параметру тоже возможен - прогой "Search and Replace 5".
Сформировать твик на основе выбранных твиков допускает сама программа ну и как вариант не трудно скрипт сделать, который суммирует твики в один reg-файл. В общем "открытый код" имеет много преимуществ перед закрытой базой base.mdb.
забыв нажать на кнопку "Сохранить", то все изменения будут потеряны. » Это всё второстепенное, кому нужно не забудут, а вот если нет определённых функций, то их уже не добавить. На счёт кнопки "Выбрать" тоже второстепенное. Главное сделать сердце программы, а интерфейсные штучки можно доработать после. На счёт сохранения твиков для обмена между пользователями, вот это по делу... Нужна возможность чтобы выложить конфиги по отдельности а не общей кучей, включая конфиги знакомых...
Кстати, я тоже на днях сделал скриптик (http://rghost.ru/756352) связанный с реестром. Скрипт на 3 кб, но весит 245кб, так как внутри интерпретатор AutoIt3. Скрипт делает бэкап веток из текущего реестра для выбранного reg-файла. То есть он делает бэкап только тех веток, которые указаны в reg-файле.
у ПРОГРАММИСТОВ ВСЕГДА ЧТО-ТО НЕ ПАШЕТ..
Придется перейти на компонент TLISTVIEW.
Заморочки с кликом на чекбоксу вылились боком. Так как там используется Drag and drop из-за это и не пашет эта фигня !!
Вообщем спасибо Savage тут работы на две недели ))
Потверждаю баги есть !!
Подождите господа, дайте отойти, у меня уже уши кипят !! Пару дней наверное передохну !!
ДА SAVAGE ДАЮ !!!
andsok,
Смысл задумки новой версии в том чтобы организовать Рациональное хранение твиков..
Выбранность твиков, конфигурации, типы ОС, код отката, код твика невозможны без базы данных
Рекомендую ВАМ почитать ПОСТ, там обьесняется что и зачем и как хранить твики !! http://forum.oszone.net/post-1025973-199.html
Мы уже разбирали вопросы про хранение!
Смысл задумки новой версии в том чтобы организовать Рациональное хранение твиков.. » Мне почему то важно не то, как хранится база в одном файле или в нескольких, важно чтобы программа выполняла необходимое, и если формат базы легче поддаётся обработке и составлении алгоритмов обработки, то пускай так.
Можно направить силы на удобство в управлении. Подцветка твиков тоже удобство управления, например отмеченные твики подсвечиваются светло-зелёным фоном, неотмеченные белым, откат - светло-красным. Возможно плюсом будет возможность сортировки конфигов по состоянию чекбокса, то есть отмеченные первые в списке, далее по списку откаты и далее не отмеченные. Возможность отобразить все конфиги в одном окне, то есть без учёта каталогов.
Конфиги, если содержаться в базе, всё равно нужно иметь возможность сохранить конфиг как отдельный файл, не важно в каком формате, главное чтоб можно было выложить свой конфиг на форуме, и другой человек его скачал, открыл в своём твикере и применил его. Думаю появятся конфиги типа игровой, безопасность, блокировка и т.д.
saavaage
25-12-2009, 07:53
Конфиги, если содержаться в базе, всё равно нужно иметь возможность сохранить конфиг как отдельный файл, не важно в каком формате, главное чтоб можно было выложить свой конфиг на форуме, и другой человек его скачал, открыл в своём твикере и применил его. ». Вопрос, что делать, если база твиков одного пользователя не совпадает с базой другого ни по структуре, ни по составу? Как тогда применять конфиг одного к базе другого? Возможность обмена конфигами без возможности интеграции базы твиков, имхо, проблематичная затея.... проще обмениваться рег-файлами, которые должны содержать достаточно полную информацию по твикам. И иметь возможность импортировать такие файлы с одновременной проверкой на дубли в твоей базе и под новым названием конфига (чтобы не сбить свои настройки)..
saavaage
25-12-2009, 08:23
SOLON7, немного откоректировал прежнюю редакцию. Если успел скачать - перекачни, плиз. Если, что буду в доступе сегодня на связи с 12-00 до 14-00 и после 22-00... (по Минскому времени)
saavaage Вопрос, что делать, если база твиков одного пользователя не совпадает с базой другого ни по структуре, ни по составу? Так я об этом уже запарился говорить. Либо все используют стандартную версию для использования твиков, либо как я выше описывал добавить второй идентификатор, база увеличится на одну колонку, но при этом состояние чекбокса записывается не по номеру, а по ветке-параметру и ему будет по барабану какая там база и как отсортирована, он принимает состояние чекбокса на конкретный уникальный твик. А тех твиков которых нету при несовпадении баз просто игнорируются.
Видете ли господа.. Главный прикол в том что это не WINDOWS или NLITE.
А своего рода Линукс. Потомучто тут не будет стандартизации. Стандартизация должна проходить на сервере !!
Из-за того что база твиков у каждого может быть разной то является больше преимуществом чем недостатком !!
но при этом состояние чекбокса записывается не по номеру, а по ветке-параметру и ему будет по барабану какая там база и как отсортирована »
Как именно вы себе это представляете ?? Опишете это как это можно реализовать программно !!
SOLON7, думаю как составить регулярное выражение примерно с таким смыслом: ищем первый попавшийся текст [HK до закрытой скобки ], это первая группа регулярного выражения, и далее строка с символом = всё что перед этим символом это вторая группа регулярного выражения, получаем две группы символов и отправляем их в массив или в переменную, на их основе создаём индивидуальный код. Например из этого
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoInstrumentation"=dword:00000001
получим две группы:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
и
"NoInstrumentation"
ветка и параметр позволяют классифицировать неповторимый твик. Возможно для разных Windows понадобится добавить идентификаторы X, V, 7. К примеру запись в базе такая:
X|HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer|"NoInstrumentation"
может идентификатор версии Windows добавить первой строкой в описание?
регулярное выражение для выделения, проверь в RegexBuddy, хотя нужно сделать однократное выделение.
[^\[]*(HK.*)[]][^"\\n]*([^=]*)
saavaage
26-12-2009, 01:19
andsok, мне, все же, лучшим путем кажется экспорт твиков определенного конфига твоей базы в рег-файл и импорт в базу другого пользователя под новым конфигом. При этом проверка импортируемых твиков на дубли обязательна: если дубли есть, то используется твик, находящийся в базе-импортере, если нет - каждый такой твик импортируется под непосредственным контролем пользователя (вкл. разнесение в конкретную группу твиков).
saavaage, импорт рег-файла целиком наверно не получится. У меня есть несколько твиков содержащих не один параметр. Как прога вполнит разделение? Всё равно и в этом случае придётся делать в рег-файле разделяющую метку и пользоваться регулярным выражением для разделения твиков.
Проверка на дубли - прожорливый процесс, нужно каждый отдельно взятый добавляемый твик проверить на дубль со всей базой твиков, и опять же не без участия регулярного выражения. Ну и в рег-файле не указано состояние твика, то есть придётся ещё вычислять значение ключа твика и сравнивать с оригиналом, чтобы понять какое это состояние выключено или включено или не то ни другое.
andsok, Вы не учитываете что параметров в твике может быть огромное количество.
И тем более разных ветвей !!
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\11.0\Common]
"DWNeverUpload"=dword:00000001
"DWNoExternalURL"=dword:00000001
"DWNoFileCollection"=dword:00000001
"DWNoSecondLevelCollection"=dword:00000001
Вот последняя версия где исправленны баги !!
Смотрим Отписываемся о багах !!
Позже начну функции по редактированию ,созданию и удалению твиков!!
Возник вопрос, какие функции выделения и помечания твиков нужны ??
Нажмите на правой кнопки на мышь и посмотрите что там есть !!
Теперь учитывайте ТО ЧТО ОТКАТ ВЫБИРАЕТСЯ КАК ПРЕЖДЕ !!
ЕСТЬ ТРИ ВАРИАНТА ВЫБОРА CHECKBOX в СПИСКЕ ТВИКОВ!!
Ничего не выбрано, выбран твик, выбран откат !!
http://i048.radikal.ru/0912/74/0e26ce709b9at.jpg (http://radikal.ru/F/i048.radikal.ru/0912/74/0e26ce709b9a.jpg.html)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC