/// <summary> /// Handles event whenever target changes /// </summary> /// <param name="aAdaptor"> /// Adaptor <see cref="IAdaptor"/> /// </param> private void HandleTargetChanged(IAdaptor aAdaptor) { if (adaptor == null) { return; } if (adaptor.DestroyInProgress == true) { return; } if ((internalAdaptor.Mappings == "") || (internalAdaptor.Mapping(0) == null)) { DataWidget = null; return; } System.Type type = null; if (Adaptor.Adaptor.FinalTarget == null) { if (Adaptor.Adaptor.DataSourceType == null) { DataWidget = null; return; } type = Adaptor.Adaptor.DataSourceType; } else { type = Adaptor.Adaptor.FinalTarget.GetType(); } FactoryInvocationArgs args; PropertyDefinition def = internalAdaptor.Mapping(0).OriginalRWFlags.GetPropertyDefinition(); if (Editable == false) { def = PropertyDefinition.ReadOnly; } args = new GtkFactoryInvocationArgs(def, type, internalAdaptor.Mapping(0).Name); args.AddDefaultTheme(); if ((WidgetFilter.Trim() != "") && (WidgetFilter.Trim().ToLower() != "gtk")) { args.AddFilter(WidgetFilter); } DataWidget = GtkWidgetFactory.CreateWidget(args); }
/// <summary> /// Returns MappedProperty by Index /// </summary> public MappedProperty this [int aIdx] { get { return(Adaptor.Mapping(aIdx)); } }