Для синхронизации с официальным wine пришлось временно откатить все наши изменения, связанные с диалогом About. Патч, откатывающий наши изменения: commit 038543baeb23cf695a9d19ac8327febf5b478a87 Author: Vitaly Perov <vitperov@etersoft.ru> Date: Thu Nov 18 16:20:26 2010 +0300 shell32: revert all etersoft code in about dialog Откатить пришлось потому, что в официальном wine теперь другой механизм добавления авторов. Переделать пока нет времени, а обновляться до pure надо. Новый механизм добавляется коммитом: commit 40977bf1d2f0f11a24fd9330dffac264fced2306 Author: Alexandre Julliard <julliard@winehq.org> Date: Thu Nov 11 12:24:46 2010 +0100 shell32: Store the raw AUTHORS file in resources instead of trying to convert to a C array. Требуется вернуть прежнюю систему. Для проверки можно сравнить с eter-1.0.12. Для этого можно в любой бутылке запустить winecfg. Обратить внимание на вкладку "О программе" и на открывающиеся окно при нажатии на "Подробнее".
Где расположены эти патчи?
> Где расположены эти патчи? В репозитории git.office:/projects/eterhack.git в ветке eterhack.
Начал возврат прежней системы (восстановление изменений связанных с диалогом About)
Произвожу добавление списка авторов с учетом нового механизма добавления
Изменил механизма добавления, произвожу формирование списка авторов
Переделал добавление авторов etersoft, внес все необходимые изменения. Патч прилагается.
Произвожу оптимизацию текста программы.
Вынес прорисовку формы и добавление авторов в отдельный файл. Оптимизирую код.
Начинаю структурирование кода, отвечающее за прорисовку окна.
Завершил оптимизацию кода.Сделал необходимый коммит.Произвожу обновление ветки.
Обновил ветку, проверил работоспособность внесенных изменений; по сделанному коммиту создал файл и выполнил массовую рассылку. Приступаю к решению проблемы по отрисовке кнопки "About" на вкладке "О программе".
Внес изменения по сделанным замечаниям. Произвожу вычисление размера файла.
Где распологается модуль с прорисовкой окна и вкладок winecfg?
> Где распологается модуль с прорисовкой окна и вкладок winecfg? programs/winecfg
Исправил сделанные замечания. Сделал коммит по сделанным изменениям и выполнил массовую рассылку.
Выяснил проблему отрисовки кнопки "Подробнее..." на вкладке "О программе" программы winecfg. Области отрисовки выходила за рамки определения области диалогового окна, вследствие чего и возникла данная проблема. Решением данной проблемы может служить определение новых размеров области отрисовки кнопки "Подробнее...".
Проверил работоспособность внесенных изменений, сделал рассылку.
По последним замечаниям сделал изменения, сделал рассылку. Задача решена.
*** Bug 5697 has been marked as a duplicate of this bug. ***
Бутылка <wine@cellar bottle bugs/6494> WINE@Etersoft 1.0 SQL 1.0.12-eter8.21/19 $ winecfg вкладкa "О программе" , окно при нажатии на "Подробнее" Все в порядке.
(В ответ на comment #20) > WINE@Etersoft 1.0 SQL 1.0.12-eter8.21/19 А должно быть в eterhack и eterschool все в порядке быть.
бут.<wine@eterschool bottle bugs/6494 WINE@Etersoft 1.0 School 1.7.1-eter1/1 бут. wine@eterhack bottle bugs/6494 WINE@Etersoft 1.0 SQL 1.7.1-eter1/1 все красиво и четко
Проверить перед релизом, когда появится что-нибудь вроде rc-сборки.
Все в порядке.
(В ответ на comment #22) > бут.<wine@eterschool bottle bugs/6494 > WINE@Etersoft 1.0 School 1.7.1-eter1/1 > > бут. wine@eterhack bottle bugs/6494 > WINE@Etersoft 1.0 SQL 1.7.1-eter1/1 > > все красиво и четко Должно быть не всё красиво и чётко, а так же, как в 1.0.12 Пожалуйста, трудитесь описывать критерии проверки: что проверяли, что получилось. А то «я проверил, всё хорошо». Чего проверял, чего хорошо, что значит «хорошо»... Почему я должен ходить за вами и перепроверять? Смотрел wine-etersoft-1.3.27-alt1.15 всё красиво и чётко, и не то, что нужно.
приступил. нашел 4 патча, которые отправлялись grosso по этой баге. коммиты в них в настоящей версии eterhack не присутствуют.
в библиотеке shell32 отсутствует файл shres.rc. пока не удалось собрать все части из патчей в единую систему, отсутствуют прототипы некоторых функций.
правлю файл прорисовки окна и добавления списка авторов
сделал вкладку. внес изменения в файлы ресурсов. сделал перевод в po файлах. отправил патч на wine-patches@
переделал функцию etersoft_picture_load(), но она, в первоначальном виде, каким-то образом влияла на функцию etersoft_text_info(HWND hWnd, LPCWSTR szApp), пока не удалось понять как именно. решаю проблему.
видимо проблема в том, что поток в который загружается картинка и поток, в который загружаются имена вкладок, как-то неважно взаимодействуют друг с другом. пока не удалось решить проблему.
исправил создание вкладок. переделал функцию загрузки картинки. отправил патч на wine-patches@
внес изменения. отправил патч на wine-patches@.
переделываю загрузку.
переделал загрузку при помощи функций wine_get_dos_file_name и LoadImageW отправил патч на wine-patches@.
работаю над багой
переделываю патч
ошибка возникала из-за неверной записи в ru.po. проблема устранена. отправил патч на wine-patches@.
внес изменения в etersoft_about.c и etersoft_about.h. отправил патч на wine-patches@.
Приложил патч к eterhack
Кривовато как-то всё.. 1) Картинка Wine не по размеру окна. 2) Непонятно, зачем нужны стрелки-переключатели разработчиков? Если посмотреть разработчиков Etersoft, то разработчики Wine пропадают. Вернуть их можно только этими самыми стрелками, наверное для этого они и были прикручены=) 3) Etersoft License при открытии прорисовывается дважды. И скопировать что-то оттуда проблематично - тормозит... 4) Следует как-то обозначить возможность нажать на ссылку проверки подлинности.
занимаюсь доработкой. странно, но у меня логотип отображается в размер окна.
на самом деле, стрелки не были прикручены искусственно. это как и то, что первая вкладка пропадает при нажатии на вторую, результат того, что окошко слишком маленькое. поправил. работаю над ссылкой.
переделал панельс вкладками. добавил изменение вида курсора над ссылкой. дело в том, что в отличие от простых окон, для которых if (GetDlgCtrlID((HWND)wParam) == IDC_ABOUT_STATIC_LINK) { SetCursor(LoadCursorW(0, (LPWSTR)IDC_HAND)); return TRUE; } break; для диалоговых окон перед return добавляется SetWindowLongW(hWnd, 0, TRUE); отправил патч на wine-patches@
сделал для eter-2.0.0 отправил патч на wine-patches@