public static string GetValue <T>(this IViewComponent instance, string name, T value) { ModelState state; string formattedValue = string.Empty; ViewDataDictionary viewData = instance.ViewContext.ViewData; object valueFromViewData = name.HasValue() ? viewData.Eval(name) : null; if (name.HasValue() && viewData.ModelState.TryGetValue(name, out state) && (state.Value != null)) { formattedValue = state.Value.AttemptedValue; if (viewData.ModelState.IsValidField(name)) { formattedValue = "{0}".FormatWith(state.Value.ConvertTo(typeof(T), state.Value.Culture)); } } else if (value != null) { formattedValue = "{0}".FormatWith(value); } else if (valueFromViewData != null && valueFromViewData.GetType().IsPredefinedType()) { formattedValue = "{0}".FormatWith(valueFromViewData); } return(formattedValue); }
private void AddFieldView(int currRow, IViewComponent childView, ViewBuildersCollection viewBuilders) { if (childView.UiHint == "RowsPanel") { var newCtrl = new RowsPanelView(); newCtrl.SetViewComponent((IPanelViewModel)childView, viewBuilders); Grid.SetRow(newCtrl, currRow); Grid.SetColumn(newCtrl, 1); Grid.SetColumnSpan(newCtrl, 4); ChildrenViewsContainer.Children.Add(newCtrl); } else { var viewBuilder = viewBuilders.GetBuilder(childView.UiHint); if (viewBuilder != null) { var newCtrl = viewBuilder.ViewFactory(childView); if (newCtrl != null) { Grid.SetRow(newCtrl, currRow); Grid.SetColumn(newCtrl, 1); if (childView.UiHint == "PivotGridList") { Grid.SetColumnSpan(newCtrl, 4); } ChildrenViewsContainer.Children.Add(newCtrl); } } } }
private Xamarin.Forms.View CreateSetDataContext <TView>(Type viewType, IViewComponent childView) where TView : Xamarin.Forms.View { var newCtrl = Activator.CreateInstance <TView>(); newCtrl.BindingContext = childView; return(newCtrl); }
private static UserControl CreateField(IViewComponent childView, ViewBuildersCollection viewBuilders, Grid ChildrenViewsContainer) { UserControl newCtrl; if (childView.UiHint == "RowsPanel") { newCtrl = new RowsPanelView(); ((RowsPanelView)newCtrl).SetViewComponent((IPanelViewModel)childView, viewBuilders); ChildrenViewsContainer.Children.Add(newCtrl); } else if (childView.UiHint == "ColumnsPanel") { newCtrl = new ColumnsPanelView(); ((ColumnsPanelView)newCtrl).SetViewComponent((IPanelViewModel)childView, viewBuilders); ChildrenViewsContainer.Children.Add(newCtrl); } else { newCtrl = viewBuilders.GetBuilder(childView.UiHint).ViewFactory(childView); if (newCtrl != null) { ChildrenViewsContainer.Children.Add(newCtrl); } } return(newCtrl); }
private UserControl CreateSetDataContext <TView>(Func <TView> constructor, IViewComponent childView) where TView : UserControl { var newCtrl = constructor(); newCtrl.DataContext = childView; return(newCtrl); }
private UserControl CreateSetDataContext <TView>(Type viewType, IViewComponent childView) where TView : UserControl { var newCtrl = Activator.CreateInstance <TView>(); newCtrl.DataContext = childView; return(newCtrl); }
public static bool IsValid(this IViewComponent instance) { if (instance.ViewContext != null) { return(instance.ViewContext.ViewData.ModelState.IsValidField(instance.Name ?? string.Empty)); } return(true); }
public void Add(string text, IViewComponent component, Bitmap?image = null) { var item = new ToolStripMenuItemFormat(this, text, component); item.ImageScaling = ToolStripItemImageScaling.None; item.Image = image; _tool.DropDownItems.Add(item); }
public static void AddFieldViewAsRow(int currRow, IViewComponent childView, ViewBuildersCollection viewBuilders, Grid ChildrenViewsContainer) { UserControl newCtrl = null; newCtrl = CreateField(childView, viewBuilders, ChildrenViewsContainer); if (newCtrl != null) { Grid.SetRow(newCtrl, currRow); Grid.SetColumn(newCtrl, 1); } }
public static string GetValueFromViewDataByName(this IViewComponent instance) { string result = instance.ViewContext.Controller.ValueOf <string>(instance.Name); if (result.HasValue()) { return(result); } object value = instance.ViewContext.ViewData.Eval(instance.Name); return(value != null && value.GetType().IsPredefinedType() ? Convert.ToString(value) : string.Empty); }
private void AddLabelView(int currRow, IViewComponent childView) { var label = new Label() { Text = childView.Label }; Grid.SetRow(label, currRow); Grid.SetColumn(label, 0); //label.VerticalAlignment = VerticalAlignment.Center; //label.HorizontalAlignment = HorizontalAlignment.Right; label.Margin = new Thickness(16, 0, 8, 0); ChildrenViewsContainer.Children.Add(label); }
private void Awake() { viewComponent = ViewObject.GetComponent <IViewComponent>(); viewComponent.ViewChanged += UpdateView; }
public ToolStripMenuItemFormat(TextFormatTool tool, string text, IViewComponent component) : base(text) { _tool = tool; Component = component; }
}//UpdateView public void RegisterForUpdate(IViewComponent component) { if (!registeredForUpdates[m_model].Contains(component.IViewHelper)) { registeredForUpdates[m_model].Add(component.IViewHelper); } }
static void Main(string[] args) { int portStart = int.Parse(args[0]); int capacity = int.Parse(args[1]); var tickRate = TimeSpan.FromMilliseconds(10); // 100 ticks per second var world = new World(); var timeComponent = new World.Entity.TimeComponent(new World.Entity(world)) { deltaTime = tickRate.TotalSeconds }; _ = new World.Entity.ConsoleBufferComponent(new World.Entity(world)) { consoleBuffer = new byte[120, 32] }; var server = new Server <(World, int), (float, float)>( initialClientState: (0f, 0f), serverStatesByTick: world, serverStateDiffer: new World.Differ(), clientStateDiffer: new Vector2Differ(), portStart: portStart, capacity: capacity, sendInterval: TimeSpan.FromSeconds(0.1)); var velocityComponents = new IVelocityComponent[capacity]; var positionComponents = new IPositionComponent[capacity]; var viewComponents = new IViewComponent[capacity]; FixedTimer(tick => { lock (world) { for (int i = 0; i < capacity; ++i) { int port = portStart + i; if (server.GetClientConnected(port)) { if (velocityComponents[i] == null) { var entity = new World.Entity(world); velocityComponents[i] = new World.Entity.VelocityComponent(entity) { speed = 10f }; positionComponents[i] = new World.Entity.PositionComponent(entity) { x = Console.WindowWidth / 2, y = Console.WindowHeight / 2 }; viewComponents[i] = new World.Entity.ViewComponent(entity) { avatar = new[] { '@', '#', '$', '%' }[i] }; } var input = server.GetClientState(port); velocityComponents[i].deltaX = input.Item1; velocityComponents[i].deltaY = input.Item2; Console.SetCursorPosition(0, i * 2); Console.Write($@"velocity: ({velocityComponents[i].deltaX}, {velocityComponents[i].deltaY}) position: ({positionComponents[i].x}, {positionComponents[i].y})"); } else { if (velocityComponents[i] != null) { velocityComponents[i].Dispose(); velocityComponents[i] = null; } if (positionComponents[i] != null) { positionComponents[i].Dispose(); positionComponents[i] = null; } if (viewComponents[i] != null) { viewComponents[i].Dispose(); viewComponents[i] = null; } } } ((IServerWorld)world).Tick(tick); server.serverTick = tick; } }, tickRate, new CancellationToken()); }
// custom case - specify options public Boolean Import(IController validatingController, XmlDocument document, IViewComponent waitingFor, Form topLevelForm, Boolean pClearDB, Boolean pShowDialog , String title, String message) { clearDB = pClearDB; //document = new XmlDocument(); //document.Load(@"C:\testFile.xml"); if (!document.InnerXml.Equals(String.Empty) && validate(validatingController, document)) { // Turn off all controller updates navDoc = document.CreateNavigator(); XPathNodeIterator itConfigurations = navDoc.Select("/database/configuration"); while (itConfigurations.MoveNext()) { String configuration = itConfigurations.Current.GetAttribute("name", itConfigurations.Current.NamespaceURI); IController controller = AMEManager.Instance.Get(configuration); if (controller == null) return false; updateStatus = controller.ViewUpdateStatus; if (updateStatus) { controller.TurnViewUpdateOff(); } controller.AllowProgrammaticCreation = false; controller.UseDelayedValidation = true; controller.CacheIndexLinkTypes(); } if (pShowDialog) { topLevelForm.Invoke(new DialogDelegate(CreateDialog), new object[] { title, message }); } if (waitingFor != null) { waitingComponent = waitingFor; } backgroundWorker.RunWorkerAsync(document.InnerXml); return true; } else { return false; } }
public void RegisterForUpdate(IViewComponent component, List<String> parameterCategories) { component.IViewHelper.ParameterCategories = parameterCategories; RegisterForUpdate(component); }
public static IDictionary <string, object> GetUnobtrusiveValidationAttributes(this IViewComponent instance) { #if MVC3 var viewContext = instance.ViewContext; if (viewContext.UnobtrusiveJavaScriptEnabled) { var name = instance.Name; var viewData = viewContext.ViewData; var htmlPrefix = viewData.TemplateInfo.HtmlFieldPrefix; if (name.HasValue() && htmlPrefix.HasValue() && name != htmlPrefix && name.StartsWith(htmlPrefix, StringComparison.Ordinal)) { name = name.Substring(htmlPrefix.Length + 1); } var metadata = ModelMetadata.FromStringExpression(name, viewData); var htmlHelper = new HtmlHelper(viewContext, new ViewComponentViewDataContainer { ViewData = viewData }); if (metadata.ContainerType == null) { metadata = viewContext.ViewData.ModelMetadata; } return(htmlHelper.GetUnobtrusiveValidationAttributes(name, metadata)); } #endif return(null); }
private Xamarin.Forms.View CreateSetDataContext <TView>(Func <TView> constructor, IViewComponent childView) where TView : Xamarin.Forms.View { var newCtrl = constructor(); newCtrl.BindingContext = childView; return(newCtrl); }
public void UnregisterForUpdate(IViewComponent component) { if (registeredForUpdates[m_model].Contains(component.IViewHelper)) { registeredForUpdates[m_model].Remove(component.IViewHelper); } }
public static string GetValue <T>(this IViewComponent instance, T value) { return(instance.GetValue <T>(instance.Name, value)); }
public ViewComponentHelper(IViewComponent iv, UpdateType updateType) : this(iv) { myUpdateType = updateType; }
public ViewComponentHelper(IViewComponent iv) { myIView = iv; }
public NonControlViewComponentHelper(IViewComponent iv) : base(iv) {}
public NonControlViewComponentHelper(IViewComponent iv, UpdateType updateType) : base(iv, updateType) {}