+TMenuItemAutoFlag is an enumerated type with values that represent +the line reduction modes available for maintaining menu item instances. +TMenuItemAutoFlag controls when a menu or menu items are checked and +updated to eliminate redundant separators between adjacent menu items. +
++TMenuItemAutoFlag is the type used for the AutoLineReduction +property in TMenuItem. +
++TMenuAutoFlag is the type used for the AutoLineReduction +property in TMenu and descendent classes. +
++GetAutoLineReduction ensures that the setting in the +AutoLineReduction property is translated to either maAutomatic or maManual when +it contains maParent. +
++InternalRethinkLines is called from the RethinkLines and +CheckChildrenHandles methods. The return value indicates whether the visibility +of child menu items which are leading or trailing separators has been updated. +
++True indicates that the visibility for one or more of the child menu +items was changed in the method. +
++To maintain compatibility with the Delphi VCL behavior, all menu separators are +visible when GetAutoLineReduction returns False. +
++RethinkLines calls the InternalRethinkLines method to toggle the +visibility of examine or update the visible child menu items. If any of the +child Items was changed, the MenuChanged method is called to signal the +OnChange event handler (when assigned) and rebuild (re-display) the submenu. +
++AutoLineReduction is a TMenuItemAutoFlag property which +controls if redundant separators on child Items are automatically hidden on the +submenu. Line reduction causes leading, trailing, or adjacent menu separators +to be hidden. +
++maAutomatic and maParent cause redundant separators to be maintained by the +Parent menu item (or menu). Use maManual if line reduction is performed only +when the RethinkLines method is explicitly called. The default value for the +property is maParent and causes the line reduction setting in the Parent to be +applied to the menu item. +
++See TMenuItemAutoFlag for more information about the valid values for the +property. +
++Changing the value for the property causes the MenuChanged method to be called +to signal the OnChange event handler and to build (display) the menu and its +child Items at run-time. +
++GetAutoLineReduction ensures that the property contains a value +which is valid for the menu. maParent in the child Items is translated to +maAutomatic. +
++Stores the property value to AutoLineReduction in the Items member. +
++AutoLineReduction is a TMenuAutoFlag property which +controls if redundant separators on the menu or its child Items are +automatically hidden. Line reduction causes leading, trailing, or adjacent menu +separators to be hidden. +
++maAutomatic causes redundant separators to be automatically removed for the +menu. The default value for the property is maAutomatic and causes the line +reduction top be performed automatically. Use maManual if line reduction is +performed only when the RethinkLines method in a child menu item is explicitly +called. +
++See TMenuAutoFlag for more information about the valid values for the property. +
++The value in AutoLineReduction is used by child menu Items when their +AutoLineReduction property is set to maParent or maAutomatic. +
+