View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0001751 | SAS.Планета | Рефакторинг / Refactoring | public | 29-12-2012 09:44 | 30-12-2021 08:59 |
| Reporter | vdemidov | Assigned To | vdemidov | ||
| Priority | normal | Severity | minor | Reproducibility | have not tried |
| Status | assigned | Resolution | open | ||
| Product Version | 121010 | ||||
| Target Version | 42xxxx | ||||
| Summary | 0001751: Вынести операции из пунктов главного меню главной формы в TActionList | ||||
| Description | Вынести операции из пунктов главного меню главной формы в TActionList, желательно лежащий в датамодуле. Датамодуль создвать в конструкторе главной формы и передавать ему все что надо через параметры конструктора. Не уверен насколько просто это получиться сделать, но уже давно пора. | ||||
| Tags | No tags attached. | ||||
| parent of | 0003143 | assigned | vdemidov | Переделать генерацию меню со списком карт |
| child of | 0001271 | confirmed | Возможность вынести на панель инструментов кнопки "поставить метку" и "сохранить трек в базе меток" | |
| child of | 0002580 | confirmed | Настройка горячих клавиш для пунктов контекстного меню | |
| Not all the children of this issue are yet resolved or closed. | ||||
|
|
Т.е. ты предлагаешь половину кода из frmMain перенести в датамодуль? Хотя, там наверное даже не половина, а процентов 80 - различные обработчики OnClick. |
|
|
В общем именно это и предлагаю. Сейчас файл главной формы просто таки несоразмерно огромный. Почти 8000 строк. |
|
|
И это будет где-то половина кода. Там еще много инициализации. |
|
|
Да, достаточно грандиозная задача. Можешь начать и перенести пару пунктов для примера? А потом я подключусь и буду по-немного копи-пастить. |
|
|
Там ещё оно как-то должно быть завязано на TShortcutManager, чтобы он учитывал и ActionList. По крайней мере в переходный период, пока не перенесутся все пункты меню. А в последствии ShortcutManager должен будет ориентироваться только на этот лист и не зависеть от менюшки. |
|
|
Легко сказать начать. Я пока к этому не готов. :) Но если ты займешься, то буду только рад. Я сейчас глубоко в матрицы тайлов закопался. |
|
|
И что делать с TShortcutManager я еще тоже не решил. Точнее делать что-то нужно, и возможно даже до начала миграции в ActionList. Но как это лучше сделать я тоже не знаю. В общем вопросов дофига, а ответов у меня нет и пока не предвидится. |
|
|
Обнадёжил :) |
|
|
Вполне может быть, что я вообще все усложняю, и достаточно просто копировать пункты меню в ActionList и просто потом назначать пуктам меню нужные действия и не париться. У меня просто очень мало опыта работы с такими вещами как ActionList и менюшки. Я больше по бекенду, а не по ГУИ специалист :) |
|
|
Начал наполнять ActionList. Вроде бы проблем быть не должно, но будем смотреть. |
|
|
А что специфичного у нас из TBX используется? Может реально обойтись стандартными TActionManager, TActionMainMenuBar и TActionToolBar? Zed, Garl подскажите, а то я что-то не уверен в этом вопросе? |
|
|
Без понятия. |
|
|
Zed, ты писал: > Можешь начать и перенести пару пунктов для примера? А потом я подключусь и буду по-немного копи-пастить. Начал. Можно продолжать. Предлагаю давать экшенам по возможности понятные имена с префиксом act как у тех что я уже сделал. Пока никакого дата модуля - пока будет проще просто TActionList. Думаю потом перенести все в более навороченный TActionManager будет уже не сложно. Код по возможности причесывать. Заменять проверку и установку Checked пунктов меню и тулбаров на соответствующее обращение к экшену. Генерируемые програмно пункты и подменю пока не трогаем. Для сокращения конфликтов предлагаю коммитить и пушить максимально часто - в идеале после каждого пункта меню. Я буду идти по главному меню слева направо, но будет это не быстро. |
|
|
Да, писал. Только это было полтора года назад и у предложения уже истёк срок действия. Так что можешь рефакторить без опаски, конфликтов не будет. |
|
|
Печально. |
|
|
Забыл удалить NanimateClick |
|
|
а теперь на закрытие панельки результатов поиска нельзя прикрепить хоткей? или я проглядел? |
|
|
Да, судя по всему, потерялась такая возможность в процессе борьбы с лишними пунктами в списке хоткеев. Там добавилось условие, что у пункта меню должен быть обработчик или экшен, а у этих пунктов видимости панелей ни того ни другого нет. |
|
|
Но как мне надоел уже этот ГУЙ. Судя по всему нужно отвлечься. Займусь пока наработкой заготовок для реализации конвейеров подготовки видимого изображеня описанных здесь: http://www.sasgis.org/wikisasiya/doku.php/sasdev:конвейер_подготовки_видимого_изображения |
|
|
Вернул хоткеи для панелек. И для результатов поиска в том числе. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 29-12-2012 09:44 | vdemidov | New Issue | |
| 29-12-2012 09:45 | vdemidov | Status | new => confirmed |
| 29-12-2012 09:45 | vdemidov | Product Version | => 121010 |
| 29-12-2012 09:45 | vdemidov | Target Version | 121010 => 43xxxx |
| 29-12-2012 09:47 | vdemidov | Relationship added | child of 0001271 |
| 23-01-2015 11:04 | vdemidov | Relationship added | child of 0002580 |
| 12-02-2015 19:34 | zed | Note Added: 0015236 | |
| 12-02-2015 19:41 | vdemidov | Note Added: 0015237 | |
| 12-02-2015 19:42 | vdemidov | Note Added: 0015238 | |
| 12-02-2015 19:48 | zed | Note Added: 0015240 | |
| 12-02-2015 20:09 | zed | Note Added: 0015241 | |
| 12-02-2015 20:17 | vdemidov | Note Added: 0015242 | |
| 12-02-2015 20:18 | vdemidov | Note Added: 0015243 | |
| 12-02-2015 20:19 | zed | Note Added: 0015244 | |
| 12-02-2015 20:31 | vdemidov | Note Added: 0015245 | |
| 06-09-2016 20:18 | vdemidov | Note Added: 0017645 | |
| 08-09-2016 12:06 | vdemidov | Note Added: 0017647 | |
| 09-09-2016 05:40 | zed | Note Added: 0017648 | |
| 09-09-2016 07:47 | vdemidov | Note Added: 0017650 | |
| 09-09-2016 08:36 | zed | Note Added: 0017651 | |
| 09-09-2016 09:47 | vdemidov | Note Added: 0017652 | |
| 27-09-2016 08:58 | vdemidov | Note Added: 0017656 | |
| 27-09-2016 12:44 | vdemidov | Target Version | 43xxxx => 181221 |
| 27-09-2016 12:50 | vdemidov | Assigned To | => vdemidov |
| 27-09-2016 12:50 | vdemidov | Status | confirmed => assigned |
| 17-10-2016 07:56 | vdemidov | Relationship added | parent of 0003143 |
| 26-11-2016 08:36 | Garl | Note Added: 0017698 | |
| 01-12-2016 08:28 | vdemidov | Note Added: 0017709 | |
| 01-12-2016 08:30 | vdemidov | Note Added: 0017710 | |
| 01-12-2016 08:31 | vdemidov | Note Edited: 0017710 | |
| 17-12-2016 17:21 | vdemidov | Note Added: 0017747 | |
| 01-12-2017 07:25 | vdemidov | Target Version | 181221 => 190707 |
| 23-07-2019 14:16 | vdemidov | Target Version | 190707 => 191221 |
| 23-07-2019 17:04 | vdemidov | Target Version | 191221 => 211230 |
| 30-12-2021 08:59 | zed | Target Version | 211230 => 42xxxx |
| 08-08-2025 13:25 | zed | Category | Рефакторинг => Рефакторинг / Refactoring |