Fixed a couple UI issues with toggling optional discrete value item
Fixed a crash while switching enum entries of a value item, which is caused by null reference to a child widget. This commit refactored how the qtInputItems references its potential child widgets in the discrete enum case. Now we just store the layout for potential child widgets and manage them through the layout. This also fixed the children-still-visible issue when the optional item is unchecked.