Quintiq file version 2.0
#parent: #root
Method EditSetting (shadow[LibSE_Setting] s_setting) id:Method_DialogSettingsEngine_EditSetting
{
  #keys: '[139164.3.1812403374]'
  Body:
  [*
    ontype( s_setting )
    {
      //shadow[LibSE_SettingBinaryValue] as setting:
      //{
        // How to update this?
      //}
      shadow[LibSE_SettingBoolean] as setting:
      {
        setting.Value( not setting.Value() );
      }
      shadow[LibSE_SettingChar] as setting:
      {
        dialog := construct( DialogLibSE_SettingChar );
        dialog.Edit( this, setting );
      }
      shadow[LibSE_SettingDate] as setting:
      {
        dialog := construct( DialogLibSE_SettingDate );
        dialog.Edit( this, setting );
      }
      shadow[LibSE_SettingDateTime] as setting:
      {
        dialog := construct( DialogLibSE_SettingDateTime );
        dialog.Edit( this, setting );
      }
      shadow[LibSE_SettingDuration] as setting:
      {
        dialog := construct( DialogLibSE_SettingDuration );
        dialog.Edit( this, setting );
      }
      shadow[LibSE_SettingKey] as setting:
      {
        dialog := construct( DialogLibSE_SettingKey );
        dialog.Edit( this, setting );
      }
      shadow[LibSE_SettingNumber] as setting:
      {
        dialog := construct( DialogLibSE_SettingNumber );
        dialog.Edit( this, setting );
      }
      shadow[LibSE_SettingReal] as setting:
      {
        dialog := construct( DialogLibSE_SettingReal );
        dialog.Edit( this, setting );
      }
      shadow[LibSE_SettingString] as setting:
      {
        dialog := construct( DialogLibSE_SettingString );
        dialog.Edit( this, setting );
      }
    }
    
    this.PropagateSettingAttributes( s_setting );
  *]
}
