/// <summary>
        /// Called to handle the "add" action.
        /// </summary>
        /// <param name="addedItems"></param>
        /// <returns>True if items were added, false otherwise.</returns>
        protected override bool AddItems(out IList <EnumValueAdminInfo> addedItems)
        {
            // Assign value to addedItems, but we actually don't use this
            // because the entire table need to be refreshed after changes to any enumValueInfo item
            addedItems = new List <EnumValueAdminInfo>();

            var component = new EnumerationEditorComponent(_selectedEnumeration.AssemblyQualifiedClassName, this.Table.Items);

            if (ApplicationComponentExitCode.Accepted == LaunchAsDialog(this.Host.DesktopWindow, component, SR.TitleEnumAddValue))
            {
                // refresh entire table
                LoadEnumerationValues();
                return(true);
            }

            return(false);
        }
        /// <summary>
        /// Called to handle the "edit" action.
        /// </summary>
        /// <param name="items">A list of items to edit.</param>
        /// <param name="editedItems">The list of items that were edited.</param>
        /// <returns>True if items were edited, false otherwise.</returns>
        protected override bool EditItems(IList <EnumValueAdminInfo> items, out IList <EnumValueAdminInfo> editedItems)
        {
            // Assign value to addedItems, but we actually don't use this
            // because the entire table need to be refreshed after changes to any enumValueInfo item
            editedItems = new List <EnumValueAdminInfo>();

            var item      = CollectionUtils.FirstElement(items);
            var title     = string.Format("{0} - {1}", SR.TitleEnumEditValue, item.Code);
            var component = new EnumerationEditorComponent(
                _selectedEnumeration.AssemblyQualifiedClassName,
                (EnumValueAdminInfo)item.Clone(),
                this.Table.Items);

            if (ApplicationComponentExitCode.Accepted == LaunchAsDialog(this.Host.DesktopWindow, component, title))
            {
                // refresh entire table
                LoadEnumerationValues();
                return(true);
            }

            return(false);
        }