#| Example for User-Defined Attribute - Column Type Enumeration Note: This is an example file showing concepts of the Integration Kit. The code itself is not supported and will never be supported.

Load this file and switch to browser view named "UDA Enumeration Column". Open the tool box menu to start the dialog.

|#
(oli:sd-defdialog 'add_uda_enum
  :dialog-title "Add User-def. Attr"
  :variables
  '(
     (A_PART
       :value-type :part
       :title "Part:"
     )
     ("Add")
     (ADD_ENUM
       :range ("Enum 1" "Enum 2" "Enum 3" "Enum 4")
       :title "Enumerators:"
     )
     (ADD_ATTRIBUTE
       :title "Add Attribute"
       :toggle-type :wide-toggle
       :push-action (add-uda a_part)
     )
   )
  :local-functions
  '(
     (add-uda (part)
       (oli:sd-attach-item-attribute
         part
         "ENUM-COLUMN"
         :attachment :instance
         :values `( :enum-value ,add_enum )
       )
       (g-browser::rebuild-browser-tree "parcel-gbrowser")
     )
   )
)

(oli:sd-create-uda-enum-column-definition
  :uda-enum-column
  :attribute "ENUM-COLUMN"
  :value-list-key :enum-value
  :title "Enumeration Column"
  :enumerators '("Enum 1" "Enum 2" "Enum 3" "Enum 4")
  :mapping '( ("Enum 1" "Enumerator 1") )
  :attachment :instance
)

(oli:sd-create-browser-view
  "UDA-ENUM-COLUMN"
  :title "UDA Enumeration Column"
  :tree-config '( :instance-name "[ " :uda-enum-column " ]")
  :detail-config '( :uda-enum-column )
)
#|
|#