[x] Remove the optionsContainer attribute from XML and corresponding loader method.
EntityComboBox
[x] Add setOptionsContainer method
[ ] Get rid of setOptionsEnum (impossible).
Problem:setOptionsEnum, setOptionsList, setOptionsMap are inherited from the base OptionsField interface.
Possible solution: extract setOptionsEnum, setOptionsList, setOptionsMap methods to separate interfaces HasOptionsXXX | SupportsOptionsXXX (seems more suitable). Keep only the base setOptions method in the OptionsField interface.
Upd:
Methods are inherited from the base ComboBox interface, as a result OptionsField refactoring will have no effect.
Renaming
<grid>
→<gridLayout>
(XML only)PickerField
→EntityPicker
LookupField
→ComboBox
LookupPickerField
→EntityComboBox
SuggestionPickerField
→EntitySuggestionField
Legacy Components
PickerField
,LookupField
,LookupPickerField
,SuggestionPickerField
,SeachField
andSearchPickerField
to the compatibility module.SeachField
andSearchPickerField
from Jmix UI module.API Changes
EntityPicker
Change ID of EntityPicker related actions:
picker_clear
→entity_clear
picker_lookup
→entity_lookup
picker_open
→entity_open
picker_open_composition
→entity_open_composition
ComboBox
optionsContainer
attribute from XML and corresponding loader method.EntityComboBox
setOptionsContainer
methodsetOptionsEnum
(impossible).Problem:
setOptionsEnum
,setOptionsList
,setOptionsMap
are inherited from the baseOptionsField
interface.Possible solution: extract
setOptionsEnum
,setOptionsList
,setOptionsMap
methods to separate interfacesHasOptionsXXX
|SupportsOptionsXXX
(seems more suitable). Keep only the basesetOptions
method in theOptionsField
interface.Upd: Methods are inherited from the base
ComboBox
interface, as a resultOptionsField
refactoring will have no effect.OptionsField
optionsDatasource
attribute