SetModelValue() public static method

public static SetModelValue ( Gtk.ITreeModel store, Gtk it, int column, Type type, object value ) : void
store Gtk.ITreeModel
it Gtk
column int
type System.Type
value object
return void
Esempio n. 1
0
        void HandleEdited(object o, Gtk.EditedArgs args)
        {
            Gtk.TreeIter iter;
            if (!CellRendererTarget.Model.GetIterFromString (out iter, args.Path))
                return;

            LoadData (CellRendererTarget.Model, iter);
            SetCurrentEventRow ();

            var view = (IComboBoxCellViewFrontend)Frontend;

            if (!view.RaiseSelectionChanged ()) {
                if (view.SelectedItemField != null || view.SelectedIndexField != null) {
                    var source = view.ItemsSource;
                    var rowCount = source.RowCount;
                    for (int n = 0; n < rowCount; n++) {
                        if (args.NewText == source.GetValue (n, 0).ToString ()) {
                            if (view.SelectedItemField != null)
                                CellUtil.SetModelValue (TreeModel, CurrentIter, view.SelectedItemField.Index, typeof (object), source.GetValue (n, 1));
                            if (view.SelectedIndexField != null)
                                CellUtil.SetModelValue (TreeModel, CurrentIter, view.SelectedIndexField.Index, typeof (int), n);
                            break;
                        }
                    }
                }
                if (view.SelectedTextField != null)
                    CellUtil.SetModelValue (TreeModel, CurrentIter, view.SelectedTextField.Index, typeof (string), args.NewText);
            }
        }
Esempio n. 2
0
 protected override void OnToggled(string path)
 {
     if (!view.RaiseToggled() && view.ActiveField != null)
     {
         Gtk.TreeIter iter;
         if (treeModel.GetIterFromString(out iter, path))
         {
             CellUtil.SetModelValue(treeModel, iter, view.ActiveField.Index, view.ActiveField.FieldType, !Active);
         }
     }
     base.OnToggled(path);
 }
Esempio n. 3
0
 protected override void OnEdited(string path, string new_text)
 {
     if (!view.RaiseTextChanged() && view.TextField != null)
     {
         Gtk.TreeIter iter;
         if (treeModel.GetIterFromString(out iter, path))
         {
             CellUtil.SetModelValue(treeModel, iter, view.TextField.Index, view.TextField.FieldType, new_text);
         }
     }
     base.OnEdited(path, new_text);
 }
Esempio n. 4
0
        void HandleEdited(object o, EditedArgs args)
        {
            SetCurrentEventRow();
            var view = (ITextCellViewFrontend)Frontend;

            if (!view.RaiseTextChanged() && view.TextField != null)
            {
                Gtk.TreeIter iter;
                if (TreeModel.GetIterFromString(out iter, args.Path))
                {
                    CellUtil.SetModelValue(TreeModel, iter, view.TextField.Index, view.TextField.FieldType, args.NewText);
                }
            }
        }
Esempio n. 5
0
        protected override void OnToggled(string path)
        {
            CellUtil.SetCurrentEventRow(treeBackend, path);

            IDataField field = (IDataField)view.StateField ?? view.ActiveField;

            if (!view.RaiseToggled() && (field != null))
            {
                Type type = field.FieldType;

                Gtk.TreeIter iter;
                if (treeModel.GetIterFromString(out iter, path))
                {
                    CheckBoxState newState;

                    if (view.AllowMixed && type == typeof(CheckBoxState))
                    {
                        if (Inconsistent)
                        {
                            newState = CheckBoxState.Off;
                        }
                        else if (Active)
                        {
                            newState = CheckBoxState.Mixed;
                        }
                        else
                        {
                            newState = CheckBoxState.On;
                        }
                    }
                    else
                    {
                        if (Active)
                        {
                            newState = CheckBoxState.Off;
                        }
                        else
                        {
                            newState = CheckBoxState.On;
                        }
                    }

                    object newValue = type == typeof(CheckBoxState) ?
                                      (object)newState : (object)(newState == CheckBoxState.On);

                    CellUtil.SetModelValue(treeModel, iter, field.Index, type, newValue);
                }
            }
            base.OnToggled(path);
        }
        void HandleToggled(object o, ToggledArgs args)
        {
            SetCurrentEventRow();

            var        view  = (IToggleCellViewFrontend)Frontend;
            IDataField field = (IDataField)(view as ICheckBoxCellViewFrontend)?.StateField ?? view.ActiveField;

            if (!view.RaiseToggled() && (field != null))
            {
                Type type = field.FieldType;

                Gtk.TreeIter iter;
                if (TreeModel.GetIterFromString(out iter, args.Path))
                {
                    CheckBoxState newState;

                    if (type == typeof(CheckBoxState) && ((ICheckBoxCellViewFrontend)view).AllowMixed)
                    {
                        if (renderer.Inconsistent)
                        {
                            newState = CheckBoxState.Off;
                        }
                        else if (renderer.Active)
                        {
                            newState = CheckBoxState.Mixed;
                        }
                        else
                        {
                            newState = CheckBoxState.On;
                        }
                    }
                    else
                    {
                        if (renderer.Active)
                        {
                            newState = CheckBoxState.Off;
                        }
                        else
                        {
                            newState = CheckBoxState.On;
                        }
                    }

                    object newValue = type == typeof(CheckBoxState) ?
                                      (object)newState : (object)(newState == CheckBoxState.On);

                    CellUtil.SetModelValue(TreeModel, iter, field.Index, type, newValue);
                }
            }
        }
 public void SetValue(Gtk.TreeIter it, int column, object value)
 {
     CellUtil.SetModelValue(Store, it, column, ColumnTypes [column], value);
 }