Exemplo n.º 1
0
 /// <summary>
 /// Handles the event produced when a new node is going to be processed
 /// by the controller.
 /// </summary>
 /// <param name="sender">
 /// A <see cref="System.Object"/>
 /// </param>
 /// <param name="args">
 /// A <see cref="EventArgs"/>
 /// </param>
 private void OnControllerNodeBeingProcessed(object sender,
                                             NodeBeingProcessedArgs args)
 {
     Application.Invoke(delegate(object resender, EventArgs a)
     {
         if (controller.StepMode != ControllerStepMode.UntilEnd)
         {
             alignNextButtons.Sensitive = true;
         }
     });
 }
Exemplo n.º 2
0
        /// <summary>
        /// If sequencing, selects the next symbol of the list.
        /// </summary>
        /// <param name="sender">
        /// A <see cref="System.Object"/>
        /// </param>
        /// <param name="args">
        /// A <see cref="EventArgas"/>
        /// </param>
        private void OnControllerNodeBeingProcessed(object sender,
                                                    NodeBeingProcessedArgs _args)
        {
            Application.Invoke(sender, _args,
                               delegate(object resender, EventArgs args)
            {
                NodeBeingProcessedArgs a = args as NodeBeingProcessedArgs;

                if (!sequencingFinished)
                {
                    // We are sequencing.

                    // Selects the new first.
                    symbolsIV.SelectPath(processedPath);
                    symbolsIV.ScrollToPath(processedPath, 1, 0.5f);
                    processedPath.Next();
                }
                else
                {
                    // We are matching
                    SequenceNode node = (SequenceNode)a.Node;

                    node.Select();

                    Token t = Token.Join(node.Sequence, "");

                    sequenceNodeImage = t.Image.CreatePixbuf();

                    sequenceMatchingImageArea.Image = sequenceNodeImage.Copy();

                    sequenceNodeImage =
                        sequenceNodeImage.CompositeColorSimple(sequenceNodeImage.Width,
                                                               sequenceNodeImage.Height,
                                                               Gdk.InterpType.Nearest,
                                                               100, 1,
                                                               0xAAAAAA, 0xAAAAAA);

                    matchingResultLbl.Markup = "-";

                    tokenizingRulesTV.Selection.UnselectAll();

                    tokenizingRulesTV.ScrollToPoint(0, 0);


                    if (controller.StepMode == ControllerStepMode.StepByStep)
                    {
                        tokenizingNextButtonsAlign.Sensitive = true;
                    }
                }
            });
        }