Ejemplo n.º 1
0
        void OnKeysTreeViewSelectionChange(object sender, EventArgs e)
        {
            TreeSelection sel = sender as TreeSelection;
            TreeModel     model;
            TreeIter      iter;
            Command       selCommand = null;

            if (sel.GetSelected(out model, out iter) && model.GetValue(iter, commandCol) != null)
            {
                selCommand = model.GetValue(iter, commandCol) as Command;
                if (CurrentSelectedBinding?.Command == selCommand)                 // command is already selected
                {
                    return;
                }

                accelComplete = false;
                var binding = model.GetValue(iter, bindingCol) as string;
                iter = filterModel.ConvertIterToChildIter(iter);
                CurrentSelectedBinding = new KeyBindingSelectedEventArgs(binding.Split(new char [] { ' ' }, StringSplitOptions.RemoveEmptyEntries), 0, selCommand, iter);
                accelIncomplete        = false;
                accelComplete          = true;
                accelEntry.Sensitive   = true;
            }
            else
            {
                accelEntry.Sensitive   = updateButton.Sensitive = addButton.Sensitive = false;
                CurrentSelectedBinding = null;
            }
        }
Ejemplo n.º 2
0
        void BindingRenderer_KeyBindingSelected(object sender, KeyBindingSelectedEventArgs e)
        {
            accelComplete = false;

            accelEntry.Sensitive   = true;
            CurrentSelectedBinding = e;
            //grab focus AFTER the event, or focus gets screwy
            GLib.Timeout.Add(10, delegate {
                accelEntry.GrabFocus();
                return(false);
            });
            accelIncomplete = false;
            accelComplete   = true;
        }
Ejemplo n.º 3
0
            void HandleKeyTreeButtonPressEvent(object o, ButtonPressEventArgs args)
            {
                if (KeyBindingSelected == null)
                {
                    return;
                }
                var hit = HitTest(args.Event.X, args.Event.Y);

                if (hit.Command == null)
                {
                    return;
                }
                var a = new KeyBindingSelectedEventArgs(hit.AllKeys, hit.SelectedKey, hit.Command, hit.Iter);

                KeyBindingSelected(this, a);
            }
Ejemplo n.º 4
0
			void HandleKeyTreeButtonPressEvent (object o, ButtonPressEventArgs args)
			{
				if (KeyBindingSelected == null)
					return;
				var hit = HitTest (args.Event.X, args.Event.Y);
				if (hit.Command == null)
					return;
				var a = new KeyBindingSelectedEventArgs (hit.AllKeys, hit.SelectedKey, hit.Command, hit.Iter);
				KeyBindingSelected (this, a);
			}
Ejemplo n.º 5
0
		void OnKeysTreeViewSelectionChange (object sender, EventArgs e)
		{
			TreeSelection sel = sender as TreeSelection;
			TreeModel model;
			TreeIter iter;
			Command selCommand = null;
			if (sel.GetSelected (out model, out iter) && model.GetValue (iter, commandCol) != null) {
				selCommand = model.GetValue (iter, commandCol) as Command;
				if (CurrentSelectedBinding?.Command == selCommand) // command is already selected
					return;

				accelComplete = false;
				var binding = model.GetValue (iter, bindingCol) as string;
				iter = filterModel.ConvertIterToChildIter (iter);
				CurrentSelectedBinding = new KeyBindingSelectedEventArgs (binding.Split (new char [] { ' ' }, StringSplitOptions.RemoveEmptyEntries), 0, selCommand, iter);
				accelIncomplete = false;
				accelComplete = true;
				accelEntry.Sensitive = true;
			} else {
				accelEntry.Sensitive = updateButton.Sensitive = addButton.Sensitive = false;
				CurrentSelectedBinding = null;
			}
		}
Ejemplo n.º 6
0
		void BindingRenderer_KeyBindingSelected (object sender, KeyBindingSelectedEventArgs e)
		{
			accelComplete = false;

			accelEntry.Sensitive = true;
			CurrentSelectedBinding = e;
			//grab focus AFTER the event, or focus gets screwy
			GLib.Timeout.Add (10, delegate {
				accelEntry.GrabFocus ();
				return false;
			});
			accelIncomplete = false;
			accelComplete = true;
		}