SASGIS - SAS.Планета
View Issue Details
0002631SAS.ПланетаРефакторингpublic16-02-2015 07:5230-12-2021 08:59
vdemidov 
 
lowtweakhave not tried
confirmedopen 
141212 
26xxxx 
0002631: Использовать более простые типы в качестве базовых
Я в свое время слишком многое завязал на наследников TConfigData, а это весьма тяжелый класс с кучей лишнего. Вполне возможно, что хватит использования TChangeableBase. Или может сделать отдельный класс наследник TChangeableBase с простым синхронизатором и списком активных подписок.
Нужно подумать.

TMarksDrawOrderConfig - TConfigDataElementWithStaticBase
TTrackColorerConfig - TConfigDataElementWithStaticBase
TZmpConfig - TConfigDataElementWithStaticBase
TSensorListBase - TChangeableBase
TInternalBrowserLastContent - TChangeableBase
TLastSearchResult - TChangeableBase
TPointOnMapEdit - TChangeableBase
TLastResponseInfo - TChangeableBase
TPathDetalizeProviderListBase - TChangeableBase
TSensorBase - TChangeableBase
TStorageStateProxy - TChangeableBase
TBitmapPostProcessingChangeableByConfig - TChangeableBase
TLocalCoordConverterChangeable - TChangeableBase
TImageResamplerFactoryChangeableByConfig - TChangeableBase
TActiveMapsLicenseList - TChangeableBase
TMapTypeListChangeableByActiveMapsSet - TChangeableBase
TMapTypeSetChangeableBySourceSetWithFilter - TChangeableBase
TMapVersionFactoryChangeable - TChangeableBase
No tags attached.
parent of 0002888confirmed  Избавиться от наследования TConfigDataElementBaseEmptySaveLoad в реализации базы меток mORMot 
parent of 0002889confirmed  Избавиться от наследования TConfigDataElementBaseEmptySaveLoad в реализации базы меток SML 
child of 0002365confirmed  Убрать из конфигов сложные типы данных 
Not all the children of this issue are yet resolved or closed.
Issue History
16-02-2015 07:52vdemidovNew Issue
16-02-2015 07:55vdemidovRelationship addedchild of 0002365
16-02-2015 07:55vdemidovStatusnew => confirmed
16-02-2015 07:57vdemidovDescription Updatedbug_revision_view_page.php?rev_id=6407#r6407
16-02-2015 08:17vdemidovDescription Updatedbug_revision_view_page.php?rev_id=6408#r6408
16-02-2015 08:21vdemidovDescription Updatedbug_revision_view_page.php?rev_id=6409#r6409
16-02-2015 08:36vdemidovDescription Updatedbug_revision_view_page.php?rev_id=6410#r6410
26-02-2015 14:58vdemidovNote Added: 0015328
16-09-2015 14:52vdemidovTarget Version150915 => 151010
04-10-2015 15:28vdemidovTarget Version151010 => 151111
04-11-2015 11:11vdemidovRelationship addedparent of 0002888
04-11-2015 11:13vdemidovRelationship addedparent of 0002889
06-11-2015 08:19vdemidovTarget Version151111 => 191221
21-12-2019 09:15zedTarget Version191221 => 211230
30-12-2021 08:59zedTarget Version211230 => 26xxxx

Notes
(0015328)
vdemidov   
26-02-2015 14:58   
Мда. Похоже список не полный.
Почти всех наследников классов вида TConfigData*BaseEmptySaveLoad можно переделывать в наследников TChangeableBase с добавлением простейшего синхронизатора.
Можно конечно сделать общий базовый класс (TChangeableWithLockBase), но смысла особого я не вижу.
Осталось переделать еще 23 файла.