Exemplo n.º 1
0
        /// <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>
		/// 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);
		}