/// <summary> /// Creates a IxxxContainerCellView object. /// </summary> private protected override IFrameContainerCellView CreateFrameCellView(IFrameNodeStateView stateView, IFrameCellViewCollection parentCellView, IFrameNodeStateView childStateView, IFramePlaceholderFrame frame) { ControllerTools.AssertNoOverride(this, typeof(LayoutVerticalPanelFrame)); return(new LayoutContainerCellView((ILayoutNodeStateView)stateView, (ILayoutCellViewCollection)parentCellView, (ILayoutNodeStateView)childStateView, (ILayoutPlaceholderFrame)frame)); }
private protected override IFrameCellView BuildBlockCellsForPlaceholderFrame(IFrameCellViewTreeContext context, IFramePlaceholderFrame frame, IFrameCellViewCollection embeddingCellView, IFrameBlockState blockState) { Type OldSelectorType = null; string OldSelectorName = null; ((IFocusCellViewTreeContext)context).AddOrReplaceSelectors(((IFocusPlaceholderFrame)frame).Selectors, out OldSelectorType, out OldSelectorName); IFrameCellView ItemCellView = base.BuildBlockCellsForPlaceholderFrame(context, frame, embeddingCellView, blockState); bool HasVisibleCellView = ItemCellView.HasVisibleCellView; Debug.Assert(((IFocusCellViewTreeContext)context).IsVisible || !HasVisibleCellView); ((IFocusCellViewTreeContext)context).RemoveOrRestoreSelectors(((IFocusPlaceholderFrame)frame).Selectors, OldSelectorType, OldSelectorName); return(ItemCellView); }
/// <summary> /// Creates a IxxxContainerCellView object. /// </summary> private protected virtual IFrameContainerCellView CreateFrameCellView(IFrameNodeStateView stateView, IFrameCellViewCollection parentCellView, IFrameNodeStateView childStateView, IFramePlaceholderFrame frame) { ControllerTools.AssertNoOverride(this, Type.FromTypeof <FramePanelFrame>()); return(new FrameContainerCellView(stateView, parentCellView, childStateView, frame)); }
private protected virtual IFrameCellView BuildPlaceholderCells(IFrameCellViewTreeContext context, IFrameCellViewCollection parentCellView, IFrameNodeState childState, IFramePlaceholderFrame frame) { FrameNodeStateViewDictionary StateViewTable = context.ControllerView.StateViewTable; Debug.Assert(StateViewTable.ContainsKey(childState)); IFrameNodeStateView StateView = context.StateView; IFrameNodeStateView ChildStateView = (IFrameNodeStateView)StateViewTable[childState]; Debug.Assert(ChildStateView.RootCellView == null); context.SetChildStateView(ChildStateView); ChildStateView.BuildRootCellView(context); context.RestoreParentStateView(StateView); Debug.Assert(ChildStateView.RootCellView != null); IFrameContainerCellView Result = CreateFrameCellView(context.StateView, parentCellView, ChildStateView, frame); ChildStateView.SetContainerCellView(Result); return(Result); }
private protected virtual IFrameCellView BuildBlockCellsForPlaceholderFrame(IFrameCellViewTreeContext context, IFramePlaceholderFrame frame, IFrameCellViewCollection embeddingCellView, IFrameBlockState blockState) { IFrameCellView ItemCellView = null; bool IsHandled = false; if (frame.PropertyName == nameof(IBlock.ReplicationPattern)) { ItemCellView = BuildPlaceholderCells(context, embeddingCellView, blockState.PatternState, frame); IsHandled = true; } else if (frame.PropertyName == nameof(IBlock.SourceIdentifier)) { ItemCellView = BuildPlaceholderCells(context, embeddingCellView, blockState.SourceState, frame); IsHandled = true; } Debug.Assert(IsHandled); return(ItemCellView); }
/// <summary> /// Creates a IxxxContainerCellView object. /// </summary> private protected override IFrameContainerCellView CreateFrameCellView(IFrameNodeStateView stateView, IFrameCellViewCollection parentCellView, IFrameNodeStateView childStateView, IFramePlaceholderFrame frame) { ControllerTools.AssertNoOverride(this, Type.FromTypeof <FocusHorizontalPanelFrame>()); return(new FocusContainerCellView((IFocusNodeStateView)stateView, (IFocusCellViewCollection)parentCellView, (IFocusNodeStateView)childStateView, (IFocusPlaceholderFrame)frame)); }