UserFlow Class

Used to determine the user flow within the UIController

Definition

Namespace: Firefly.Box.Flow
Assembly: Firefly.Box (in Firefly.Box.dll) Version: debug-master-v:33791
C#
public class UserFlow
Inheritance
Object    UserFlow

Remarks

This interface is returned by calling the UseUserFlow method.
For more information see UseUserFlow. Each Actions added to the flow will be executed according to the order in which they were added, and according to the user navigation between the selected columns.

Example

Basic usage of Flow UIController
This example is based on test data. The code for the entities included in this test data can be found in the documentation of Entity
This example uses automatic tools to generate parts of the user interface. Those tools can be found in the example of the documentation of Form
C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Firefly.Box;

namespace TestFirefly.Box.Documentation
{
    class FlowUIControllerDemo
    {
        public void Run()
        {
            var jobs = new Pubs.Jobs();
            jobs.InitializeWithTestData();

            var settings = new UIController.AdvancedSettings();
            var flow = settings.UseUserFlow();

            var uic = new UIController(settings)
            {
                From = jobs,
                View = UITools.GenerateFormWithGridFor("Demonstrate UseUserFlow",
                                                       "Notice that the first parked control is \"Description\". That is because \n"+
                                                       "the \"Description\" column was added first to the Columns Array.\n"+
                                                       "Move to the \"Min Level\" column, and press tab. You'll see that a \n"+
                                                       "MessageBox appears, as was specified by the \"Flow.Add\" method that was called \n"+
                                                       "between the \"Min Level\" and the \"Max Level\" columns. ",
                                                       jobs.Id,
                                                       jobs.Description,
                                                       jobs.MinLevel,
                                                       jobs.MaxLevel)
            };
            uic.Columns.Add(jobs.Description);
            uic.Columns.Add(jobs.Id);
            uic.Columns.Add(jobs.MinLevel);
            flow.Add(()=>System.Windows.Forms.MessageBox.Show("I happen between min level, and max level"));
            uic.Columns.Add(jobs.MaxLevel);


            uic.Run();
        }
    }
}

Methods

Add(Action)Adds an Action to the flow.
Add(Control)Adds a regular windows control, as part of the flow
Add(SubForm) 
Add(Action, Direction)Adds an Action to the flow.
Add(Action, FlowMode)Adds an Action to the flow.
Add(Action, FuncBoolean)Adds an Action to the flow.
Add(Action, FlowMode, Direction)Adds an Action to the flow.
Add(Action, FuncBoolean, Direction)Adds an Action to the flow.
Add(Action, FuncBoolean, FlowMode)Adds an Action to the flow.
Add(Action, FuncBoolean, FlowMode, Direction)Adds an Action to the flow.
AddtaskType(CachedTasktaskType, Action) Registers a task that is stored by CachedTasktaskClass to be executed as part of the flow.
AddtaskType(CachedTasktaskType, Action, Direction) 
AddtaskType(CachedTasktaskType, Action, FlowMode) 
AddtaskType(CachedTasktaskType, Action, FuncBoolean) 
AddtaskType(CachedTasktaskType, Action, FlowMode, Direction) 
AddtaskType(CachedTasktaskType, Action, FuncBoolean, Direction) 
AddtaskType(CachedTasktaskType, Action, FuncBoolean, FlowMode) 
AddtaskType(CachedTasktaskType, Action, FuncBoolean, FlowMode, Direction) 
AddMandatoryColumns 
EndBlock Ends a block started by the StartBlock(FuncBoolean, FlowMode, Direction) method or the StartBlockElse method
EqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
FinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
GetHashCodeServes as the default hash function.
(Inherited from Object)
GetTypeGets the Type of the current instance.
(Inherited from Object)
MemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
RunExpandEventOfParkedColumnEvenIfRaisedByOtherControls 
StartBlockBegins a block of flow items
StartBlock(Direction)Begins a block of flow items
StartBlock(FlowMode)Begins a block of flow items
StartBlock(FuncBoolean)Begins a block of flow items
StartBlock(FlowMode, Direction)Begins a block of flow items
StartBlock(FuncBoolean, Direction)Begins a block of flow items
StartBlock(FuncBoolean, FlowMode)Begins a block of flow items
StartBlock(FuncBoolean, FlowMode, Direction)Begins a block of flow items
StartBlockElse Begins an else section of the block. This section will only be executed if the previous StartBlock(FuncBoolean, FlowMode, Direction)'s or StartBlockElse(FuncBoolean)'s condition returned false.
StartBlockElse(FuncBoolean) Begins an else section of the block. This section will only be executed if the previous StartBlock(FuncBoolean, FlowMode, Direction)'s or StartBlockElse(FuncBoolean)'s condition returned false.
SuppressSavingRowInExitAsSoonAsPossibleBeforeFirstControlFocused 
ToStringReturns a string that represents the current object.
(Inherited from Object)

See Also