Quintiq file version 2.0
Component ListActiveGoal
{
  #keys: '[112884.0.700844712]'
  BaseType: 'List'
  Children:
  [
    #child: ColumnTitles
    Component popupList
    {
      #keys: '[112884.0.700844713]'
      BaseType: 'popupList'
      Children:
      [
        Component PopupParent
        {
          #keys: '[514.0.129466]'
          BaseType: 'PopupParent'
          IsDerived: true
          Children:
          [
            Component Menu1 { #keys: '[112884.0.705686565]' BaseType: 'Menu' Properties: [ Separator: true ] }
            Component MenuIncreaseWeight { #keys: '[112884.0.705689586]' BaseType: 'Menu' Properties: [ Image: 'LM_HOR_FIX_PLUS' Shortcut: '+' Text: 'Increase weight' ] }
            Component MenuDecreaseWeight { #keys: '[112884.0.705692493]' BaseType: 'Menu' Properties: [ Image: 'LM_HOR_FIX_MINUS' Shortcut: '-' Text: 'Decrease weight' ] }
            Component Menu3 { #keys: '[112884.0.705694114]' BaseType: 'Menu' Properties: [ Separator: true ] }
            Component MenuEdit { #keys: '[112884.0.705696845]' BaseType: 'Menu' Properties: [ BindDoubleClick: true Image: 'DOCUMENT_EDIT' Shortcut: 'Enter' Text: '&Edit...' ] }
            Component Menu4 { #keys: '[112884.0.705699567]' BaseType: 'Menu' Properties: [ Separator: true ] }
            Component MenuDeactivate { #keys: '[112884.0.705706292]' BaseType: 'Menu' Properties: [ Image: 'TRASH' Shortcut: 'Del' Text: '&Deactivate' ] }
            Component MenuIncreaseLevel { #keys: '[112884.0.705709700]' BaseType: 'Menu' Properties: [ Image: 'DOWN_PLUS' Shortcut: 'Ctrl+Down' Text: 'Increase level' ] }
            Component MenuDecreaseLevel { #keys: '[112884.0.705710781]' BaseType: 'Menu' Properties: [ Image: 'UP_MINUS' Shortcut: 'Ctrl+Up' Text: 'Decrease level' ] }
          ]
          Properties:
          [
            ModeledStringList ChildOrdering
            {
              c: MenuActions
              c: MenuFilter
              c: menuListQuintiqSetQuantor
              c: Menu1
              c: MenuEdit
              c: MenuDeactivate
              c: Menu4
              c: MenuIncreaseLevel
              c: MenuDecreaseLevel
              c: Menu3
              c: MenuIncreaseWeight
              c: MenuDecreaseWeight
            }
          ]
        }
      ]
      Properties:
      [
        PosX: 2
        PosY: 25
        SizePosition: 'lt2 28 25 51'
      ]
    }
    Component GUIDataExtractorUserGroupDefinition
    {
      #keys: '[112884.0.700844714]'
      BaseType: 'GUIDataExtractor'
      Properties:
      [
        Component: 'DataHolderActiveKPIs'
        DataType: 'structured[shadow[KPIWeight]]'
        FixedFilter: 'object.KPI().IsUsedByOptimizer() and object.Level() > 0'
        PosX: 3
        PosY: 56
        SizePosition: 'lt2 28 57 83'
        Transformation: 'Elements'
      ]
    }
    Component GUIDataSetLevelActiveKPIWeight
    {
      #keys: '[112884.0.700844715]'
      BaseType: 'GUIDataSetLevel'
      Properties:
      [
        AutoSelectColumns: false
        Columns: 'KPIWeightColumns1'
        DataExtractor: 'GUIDataExtractorUserGroupDefinition'
        PosX: 2
        PosY: 89
        SizePosition: 'lt2 28 89 115'
        SortCriteria: 'Level;DisplayIndex'
      ]
    }
    Component UserConfigurableInformation
    {
      #keys: '[112884.1.258364182]'
      BaseType: 'UserConfigurableInformation'
      Properties:
      [
        Identification: 'KPIWeightActiveGoal'
        ObjectType: 'shadow[KPIWeight]'
        PosX: 239
        PosY: 80
        Precondition: "not object.KPIName() = 'Campaign'"
        TooltipText:
        [*
          VALUE(object.KPI().DescriptionUOM())
          VALUE(ifexpr( object.KPI().IsMaximize() and object.Level()=1, 'Having this bonus-driven goal on the first level may result in an unbounded and potentially infeasible plan.', ''))
        *]
      ]
    }
    Component DataHolderActiveKPIs
    {
      #keys: '[113402.0.1062734750]'
      BaseType: 'DataHolder'
      Databinding: 'structured[shadow[KPIWeight]]*'
      Children:
      [
        Component GUIDataExtractorListActiveKPI
        {
          #keys: '[113402.0.1062736111]'
          BaseType: 'GUIDataExtractor'
          Properties:
          [
            Component: 'ScenarioManager_DialogCreateEditStrategy'
            DataType: 'shadow[Strategy]'
            FixedFilter: 'object.KPI().IsUsedByOptimizer() and object.Level() > 0'
            PosX: 59
            PosY: 53
            Transformation: 'KPIWeight'
          ]
        }
      ]
      Properties:
      [
        PosX: 234
        PosY: 160
      ]
    }
    Component UserConfigurableInformationCampaign
    {
      #keys: '[146140.2.136473077]'
      BaseType: 'UserConfigurableInformation'
      Properties:
      [
        Identification: 'KPIWeightActiveGoal'
        ObjectType: 'shadow[KPIWeight]'
        PosX: 271
        PosY: 81
        Precondition: "object.KPIName() = 'Campaign'"
        TooltipText:
        [*
          VALUE(ifexpr( object.KPI().IsMaximize() and object.Level()=1, 'The campaign goal contains both penalty-driven and bonus-driven sub-goals. Placing it on the same level as other penalty-driven goals, such as unity capacity, might result in an unbounded or infeasible plan.',object.KPI().DescriptionUOM()))
          VALUE(ifexpr( object.KPI().IsMaximize() and object.Level()=1, 'Suggest prioritizing penalty-driven constraints and placing the campaign goal on a separate level.', ''))
        *]
      ]
    }
  ]
  Properties:
  [
    AutoDrag: true
    BackgroundColor: 'White'
    ContextMenu: 'popupList'
    FullRowSelect: true
    NumberColumns: 0
    NumberLines: 0
    SizePosition: 'ss0 0 0 0'
    ModeledStringList ChildOrdering
    {
      c: ColumnTitles
      c: popupList
      c: GUIDataExtractorUserGroupDefinition
      c: GUIDataSetLevelActiveKPIWeight
      c: UserConfigurableInformation
      c: DataHolderActiveKPIs
      c: UserConfigurableInformationCampaign
    }
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListActiveGoal_Menu_OnClick
    {
      #keys: '[11122.0.41582911]'
      Initiator: 'Menu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[11122.0.41582912]'
          Binding: 'this.Selection()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_ListActiveGoal_GUIButtonBase_OnClick
    {
      #keys: '[11122.0.41582919]'
      Initiator: 'GUIButtonBase'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[11122.0.41582920]'
          Binding: 'this.Selection()'
        }
      ]
    }
  ]
}
