public GnosisContainerTreeViewItemController(GnosisVisibleController controller) { SourceController = controller; TreeViewItemImplementation = GnosisControlCreator.CreateGnosisContainerTreeViewItem(); TreeViewItemImplementation.GnosisTag = SourceController; SetIconAndCaption(); //Add child nodes if (controller is GnosisParentWindowController) { GnosisContainerTreeViewItemController primary = new GnosisContainerTreeViewItemController(GlobalData.Singleton.PrimarySplitController); TreeViewItemImplementation.AddItem(primary.TreeViewItemImplementation); } else if (controller is GnosisPrimarySplitController || controller is GnosisSplitController) { foreach (GnosisContainerController child in ((GnosisSplitController)controller).ChildControllers.OrderBy(x => x.ControlImplementation.Order)) { GnosisContainerTreeViewItemController childItem = new GnosisContainerTreeViewItemController(child); TreeViewItemImplementation.AddItem(childItem.TreeViewItemImplementation); } } }
public void AddFrameController(GnosisFrameController frameController) { if (((IGnosisTileTabImplementation)ControlImplementation).CurrentTileTabItem == null) { if (tabItemControllers.Count == 0) { Setup(); } else { GlobalData.Singleton.ErrorHandler.HandleError("No tab item selected", "GnosisTileTabController.AddFrameController"); } } //Find the selected tab item and pass it the frame GnosisTileTabItemController controller = tabItemControllers.Find(i => i.ControlImplementation == ((IGnosisTileTabImplementation)ControlImplementation).CurrentTileTabItem); controller.LoadFrame(frameController); controller.IsDummyTabItem = false; //string caption = frameController.Caption; //if (frameController.InstanceController != null) //{ // if (frameController.InstanceController.Instance.InstanceName != null && frameController.InstanceController.Instance.InstanceName.Length > 0) // { // caption += " - " + frameController.InstanceController.Instance.InstanceName; // } //} //((IGnosisTileTabItemImplementation)ControlImplementation).SetCaption(caption); //((IGnosisTileTabImplementation)ControlImplementation).CurrentTileTabItem.LoadFrame((IGnosisFrameImplementation)frameController.ControlImplementation, caption); //check if there is a '+' tab item GnosisTileTabItemController dummy = tabItemControllers.Find(i => i.IsDummyTabItem); if (dummy == null) { //create dummy tabitem GnosisTileTabItem tabItem = GnosisControlCreator.CreateGnosisTabItem(1); // IGnosisTileTabItemImplementation tabItemImp = GlobalData.Singleton.ImplementationCreator.GetGnosisTabItemImplementation(); GnosisTileTabItemController itemController = new GnosisTileTabItemController(tabItem, EntityController, this); itemController.IsDummyTabItem = true; itemController.ControlImplementation.Order = tabItemControllers.Count + 1; tabItemControllers.Add(itemController); GnosisToggleButton headerButton = GnosisControlCreator.CreateGnosisToggleButton(1, "+"); GlobalData.Singleton.StyleHelper.ApplyStyle(headerButton, frameController.EntityController.GetNormalStyle()); // headerButton.SetCaption("+"); headerButton.Order = itemController.ControlImplementation.Order; tabItem.SetHeaderButton(headerButton); ((IGnosisTileTabImplementation)ControlImplementation).LoadTabItem(tabItem); //headerButtons.Add(headerButton); } }
public void LoadData(GnosisInstance instance, bool expanded) { //Get the data rows from the instance IEnumerable <XElement> dataRows = instanceController.GetDataRows(galleryDatasetItem.Dataset); //Find the attribute to use for the caption GnosisGallerySearchAttribute captionGalleryAttribute = galleryDatasetItem.GalleryAttributes.Where(a => a.GalleryRole.Equals("Caption")).First(); string captionAttributeName = instanceController.GetTargetAttributeName(captionGalleryAttribute.Dataset, captionGalleryAttribute.DatasetItem); int order = 1; int index = 0; foreach (var row in dataRows) { GnosisGalleryItem galleryItem = GnosisControlCreator.CreateGnosisGalleryItem(order++, expanded); // IGnosisGalleryItemImplementation galleryItemImplementation = GlobalData.Singleton.ImplementationCreator.GetGnosisGalleryItemImplementation(); GnosisGalleryItemController itemController = new GnosisGalleryItemController(galleryItem, instanceController, parent); itemController.Setup(); galleryItem.Caption = row.Attribute(captionAttributeName).Value; foreach (GnosisGallerySearchItem searchItem in galleryDatasetItem.GallerySearchItems) { GnosisGallerySearchItem searchItemClone = GnosisControlCreator.CreateGnosisGallerySearchItem(searchItem); // IGnosisGalleryItemImplementation childImplementation = GlobalData.Singleton.ImplementationCreator.GetGnosisGalleryItemImplementation(); GnosisGallerySearchItemController childController = new GnosisGallerySearchItemController(searchItemClone, instanceController, itemController, index); childController.Setup(); itemController.AddGalleryItemController(childController); // galleryItem.GnosisAddChild(searchItemClone); //galleryItemImplementation.AddGalleryItem(childImplementation); } foreach (GnosisGalleryDocumentItem docItem in galleryDatasetItem.GalleryDocumentItems) { // IGnosisGalleryItemImplementation childImplementation = GlobalData.Singleton.ImplementationCreator.GetGnosisGalleryItemImplementation(); GnosisGalleryDocumentItem docItemClone = GnosisControlCreator.CreateGnosisGalleryDocumentItem(docItem); GnosisGalleryDocumentItemController childController = new GnosisGalleryDocumentItemController(docItemClone, instanceController, itemController, index); childController.Setup(); itemController.AddGalleryItemController(childController); // galleryItem.GnosisAddChild(docItemClone); } // itemController.LoadGalleryItems(); index++; parent.AddGalleryItemController(itemController); // ((GnosisGalleryItem)parent.ControlImplementation).GnosisAddChild(itemController.ControlImplementation); // ((IGnosisGalleryImplementation)parent.ControlImplementation).AddGalleryItem(galleryItemImplementation); } // parent.LoadGalleryItems(); }
private GnosisDocumentFrameController New() { GnosisDocumentFrame docFrame = GnosisControlCreator.CreateGnosisDocFrame( GlobalData.Singleton.Connection.System, GlobalData.Singleton.Connection.VersionNo, GlobalData.Singleton.Connection.URL); // IGnosisDocFrameImplementation docFrameImp = GlobalData.Singleton.ImplementationCreator.GetGnosisDocFrameImplementation(); GnosisDocumentFrameController newController = new GnosisDocumentFrameController(docFrame, InstanceController, (GnosisContainerController)Parent); newController.Setup(); return(newController); }
protected override void Setup() { //content is derived from ToggleMenuItemControllers = new List <GnosisGenericToggleMenuItemController>(); string value = GlobalData.Singleton.SystemController.GetEnvironmentVariableValue( ((GnosisGenericMenuGroup)ControlImplementation).VariableSystemID, ((GnosisGenericMenuGroup)ControlImplementation).VariableControlID); int code = Convert.ToInt32(value); //GnosisEnvironmentVariable variable = GlobalData.Singleton.SystemController.GetEnvironmentVariable(VariableSystemID, VariableControlID); //variableName = variable.GnosisName; //GlobalData.Singleton.SystemController.PropertyChanged += SystemController_PropertyChanged; List <GnosisDataItem> values = GlobalData.Singleton.SystemController.GetDataItemList( ((GnosisGenericMenuGroup)ControlImplementation).VariableSystemID, ((GnosisGenericMenuGroup)ControlImplementation).VariableControlID); foreach (GnosisDataItem dataItem in values) { GnosisGenericToggleMenuItem toggleItem = GnosisControlCreator.CreateGenericToggleMenuItem( dataItem.GnosisName, dataItem.Order, dataItem.GnosisIcon, dataItem.Tooltip, ((GnosisGenericMenuGroup)ControlImplementation).VariableSystemID, ((GnosisGenericMenuGroup)ControlImplementation).VariableControlID, dataItem.Code); ((GnosisGenericMenuGroup)ControlImplementation).GnosisAddChild(toggleItem); GnosisGenericToggleMenuItemController controller = new GnosisGenericToggleMenuItemController(toggleItem, this); toggleItem.PropertyChanged += Child_PropertyChanged; ToggleMenuItemControllers.Add(controller); if (toggleItem.Code == code) { toggleItem.Active = true; } else { toggleItem.Active = false; } } }
public void Setup() { GnosisTileTabItem tabItem = GnosisControlCreator.CreateGnosisTabItem(1); // IGnosisTileTabItemImplementation tabItemImp = GlobalData.Singleton.ImplementationCreator.GetGnosisTabItemImplementation(); GnosisTileTabItemController itemController = new GnosisTileTabItemController(tabItem, EntityController, this); tabItemControllers.Add(itemController); itemController.IsDummyTabItem = true; itemController.ControlImplementation.Order = 1; //IGnosisToggleButtonImplementation headerButton = GlobalData.Singleton.ImplementationCreator.GetGnosisToggleButtonImplementation(); //GlobalData.Singleton.StyleHelper.ApplyStyle(headerButton, tabItemImp, itemController, frameController.EntityController.GetNormalStyle()); // headerButton.SetCaption("+"); // headerButton.Order = 1; // tabItemImp.SetHeader(headerButton); ((IGnosisTileTabImplementation)ControlImplementation).LoadTabItem(tabItem); //headerButtons.Add(headerButton); currentTabItemController = tabItemControllers[0]; }
//private void LoadFrame() //{ // if (frameControllers.Count > 0) // { // GnosisFrameController lastFrame = frameControllers[frameControllers.Count - 1]; // ((IGnosisTileImplemenation)ControlImplementation).LoadFrameImplementation((IGnosisFrameImplementation)lastFrame.ControlImplementation); // } //} private void CreateTabs() { //create a tab controller // IGnosisTileTabImplementation tabImp = GlobalData.Singleton.ImplementationCreator.GetGnosisTabImplementation(); GnosisTileTab tab = GnosisControlCreator.CreateGnosisTab(); tabController = new GnosisTileTabController(tab, EntityController, this); tabController.Setup(); //pass the frames to the tab controller foreach (GnosisFrameController frameController in frameControllers) { tabController.AddFrameController(frameController); } //update the UI ((GnosisTile)ControlImplementation).LoadTabImplementation((IGnosisTileTabImplementation)tabController.ControlImplementation); frameControllers = new List <GnosisFrameController>(); currentFrameController = null; }
public void LoadFrame(GnosisFrameController frameController) { showLoadingAnimation = false; frameControllers.Add(frameController); currentFrameController = frameController; ((GnosisTileTabItem)ControlImplementation).Clear(); //((IGnosisTileTabItemImplementation)ControlImplementation).SetHeader(headerButton); string caption = ((IGnosisFrameImplementation)frameController.ControlImplementation).Caption; if (frameController.InstanceController != null) { if (frameController.InstanceController.Instance.InstanceName != null && frameController.InstanceController.Instance.InstanceName.Length > 0) { caption += " - " + frameController.InstanceController.Instance.InstanceName; } } ((IGnosisFrameImplementation)frameController.ControlImplementation).Caption = caption; //Create a toggle button for the tab item header. Apply the style of the frame to it //Use the tile tab item as the binding source for the toggle button so that it changes with mouse over of tab item etc GnosisToggleButton headerButton = GnosisControlCreator.CreateGnosisToggleButton( this.ControlImplementation.Order, caption); GlobalData.Singleton.StyleHelper.ApplyStyle(headerButton, frameController.EntityController.GetNormalStyle()); frameController.TabHeaderButton = headerButton; if (loaded) { ((IGnosisTileTabItemImplementation)ControlImplementation) .LoadFrame((IGnosisFrameImplementation)currentFrameController.ControlImplementation, headerButton); } }
//public virtual IGnosisGridFieldImplementation GetFieldClone() //{ // IGnosisGridFieldImplementation gridFieldImp = fieldController.GetClone(); // gridFieldImp.Order = columnModel.Order; // fields.Add(gridFieldImp); // return gridFieldImp; //} public virtual IGnosisGridFieldImplementation GetFieldClone() { IGnosisGridFieldImplementation gridField = null; if (ColumnModel is GnosisTextColumn) { gridField = GnosisControlCreator.CreateGnosisGridTextField((GnosisTextColumn)ColumnModel); } else if (ColumnModel is GnosisCheckColumn) { gridField = GnosisControlCreator.CreateGnosisGridCheckField((GnosisCheckColumn)ColumnModel); } else if (ColumnModel is GnosisDateColumn) { gridField = GnosisControlCreator.CreateGnosisGridDateField((GnosisDateColumn)ColumnModel); } else if (ColumnModel is GnosisDateTimeColumn) { gridField = GnosisControlCreator.CreateGnosisGridDateTimeField((GnosisDateTimeColumn)ColumnModel); } else if (ColumnModel is GnosisComboColumn) { gridField = GnosisControlCreator.CreateGnosisGridComboField((GnosisComboColumn)ColumnModel); } else if (ColumnModel is GnosisLinkColumn) { gridField = GnosisControlCreator.CreateGnosisGridLinkField((GnosisLinkColumn)ColumnModel); } else if (ColumnModel is GnosisNumberColumn) { gridField = GnosisControlCreator.CreateGnosisGridNumberField((GnosisNumberColumn)ColumnModel); } else if (ColumnModel is GnosisTextResults) { gridField = GnosisControlCreator.CreateGnosisResultsTextField((GnosisTextResults)ColumnModel); } else if (ColumnModel is GnosisCheckResults) { gridField = GnosisControlCreator.CreateGnosisResultsCheckField((GnosisCheckResults)ColumnModel); } else if (ColumnModel is GnosisDateResults) { gridField = GnosisControlCreator.CreateGnosisResultsDateField((GnosisDateResults)ColumnModel); } else if (ColumnModel is GnosisDateTimeResults) { gridField = GnosisControlCreator.CreateGnosisResultsDateTimeField((GnosisDateTimeResults)ColumnModel); } else if (ColumnModel is GnosisNumberResults) { gridField = GnosisControlCreator.CreateGnosisResultsNumberField((GnosisNumberResults)ColumnModel); } if (gridField != null) { GlobalData.Singleton.StyleHelper.ApplyStyle(gridField, instanceController.EntityController.GetNormalStyle()); return(gridField); } else { GlobalData.Singleton.ErrorHandler.HandleError("Unknown column type: " + ColumnModel.GetType().ToString(), "GnosisGridColumnController.GetFieldClone"); return(null); } }
//public GnosisGridFieldController FieldController //{ // get { return fieldController; } //} public GnosisGridColumnController( GnosisGridColumn column, GnosisInstanceController _instanceController, GnosisGridController _parent) { columnModel = column; instanceController = _instanceController; parent = _parent; fields = new List <IGnosisGridFieldImplementation>(); //header header = GnosisControlCreator.CreateGnosisGridHeaderField(); GnosisStyle captionStyle = _instanceController.EntityController.GetCaptionStyle(); GlobalData.Singleton.StyleHelper.ApplyCaptionStyle(header, captionStyle); double height = GlobalData.Singleton.StyleHelper.GetFieldHeight(header, captionStyle.Font, captionStyle.FontSize); ((GnosisGridHeaderField)header).Height = height; header.Caption = column.Caption; //columnar header columnarHeader = GnosisControlCreator.CreateGnosisCaptionLabel(); GlobalData.Singleton.StyleHelper.ApplyCaptionStyle(columnarHeader, _instanceController.EntityController.GetCaptionStyle()); SetDisplayWidths(); ////field for cloning //if (column is GnosisTextColumn) //{ // // IGnosisGridTextFieldImplementation textFieldImp = GlobalData.Singleton.ImplementationCreator.GetGnosisGridTextFieldImplementation(); // ModelCreator.CreateGnosisGridTextField(1); // fieldController = new GnosisGridTextFieldController(this, textFieldImp, instanceController, parent, 0); // GlobalData.Singleton.StyleHelper.ApplyStyle(textFieldImp, fieldController, instanceController.EntityController.GetNormalStyle()); //} //else if (column is GnosisTextResults) //{ // IGnosisTextResultsFieldImplementation textFieldImp = GlobalData.Singleton.ImplementationCreator.GetGnosisTextResultsFieldImplementation(); // fieldController = new GnosisTextResultsFieldController(this, textFieldImp, instanceController, (GnosisSearchResultsGridController)parent, 0); // GlobalData.Singleton.StyleHelper.ApplyStyle(textFieldImp, fieldController, instanceController.EntityController.GetNormalStyle()); //} //else if (column is GnosisCheckColumn) //{ // IGnosisGridCheckFieldImplementation checkFieldImp = GlobalData.Singleton.ImplementationCreator.GetGnosisGridCheckFieldImplementation(); // fieldController = new GnosisGridCheckFieldController(this, checkFieldImp, instanceController, parent, 0); // GlobalData.Singleton.StyleHelper.ApplyStyle(checkFieldImp, fieldController, instanceController.EntityController.GetNormalStyle()); //} //else if (column is GnosisCheckResults) //{ // IGnosisCheckResultsFieldImplementation checkFieldImp = GlobalData.Singleton.ImplementationCreator.GetGnosisCheckResultsFieldImplementation(); // fieldController = new GnosisCheckResultsFieldController(this, checkFieldImp, instanceController, (GnosisSearchResultsGridController)parent, 0); //} //else if (column is GnosisComboColumn) //{ // IGnosisGridComboFieldImplementation comboFieldImp = GlobalData.Singleton.ImplementationCreator.GetGnosisGridComboFieldImplementation(); // fieldController = new GnosisGridComboFieldController(this, comboFieldImp, instanceController, parent, 0); //} //else if (column is GnosisDateColumn) //{ // IGnosisGridDateFieldImplementation dateFieldImp = GlobalData.Singleton.ImplementationCreator.GetGnosisGridDateFieldImplementation(); // fieldController = new GnosisGridDateFieldController(this, dateFieldImp, instanceController, parent, 0); //} //else if (column is GnosisDateResults) //{ // IGnosisDateResultsFieldImplementation dateResultsImp = GlobalData.Singleton.ImplementationCreator.GetGnosisDateResultsFieldImplementation(); // fieldController = new GnosisDateResultsFieldController(this, dateResultsImp, instanceController, (GnosisSearchResultsGridController)parent, 0); //} //else if (column is GnosisDateTimeColumn) //{ // IGnosisGridDateTimeFieldImplementation dateTimeFieldImp = GlobalData.Singleton.ImplementationCreator.GetGnosisGridDateTimeFieldImplementation(); // fieldController = new GnosisGridDateTimeFieldController(this, dateTimeFieldImp, instanceController, parent, 0); //} //else if (column is GnosisDateTimeResults) //{ // IGnosisDateTimeResultsFieldImplementation dateTimeResultsImp = GlobalData.Singleton.ImplementationCreator.GetGnosisDateTimeResultsFieldImplementation(); // fieldController = new GnosisGridFieldController(this, dateTimeResultsImp, instanceController, (GnosisSearchResultsGridController)parent, 0); //} //fieldController.ControlImplementation.Order = column.Order; //get min and max field width }
public override void LoadData(int rowNo) { if (InstanceController != null) { string datasetName = ((GnosisComboField)ControlImplementation).Dataset; string datasetItemName = ((GnosisComboField)ControlImplementation).DatasetItem; XElement optionsXML = InstanceController.GetOptionsXML(datasetName, datasetItemName); string valueAttribute = InstanceController.GetSourceAttributeName(datasetName, datasetItemName); string selected = InstanceController.GetDataString(datasetName, datasetItemName, rowNo); comboOptionImplementations = new Dictionary <GnosisComboOption, List <GnosisKey> >(); //IGnosisComboOptionImplementation selectedOption = null; int i = 1; foreach (var row in optionsXML.Descendants()) { GnosisComboOption comboOptionImp = GnosisControlCreator.CreateGnosisComboOption(i);//GlobalData.Singleton.ImplementationCreator.GetGnosisComboOptionImplementation(); string display = row.Attribute(valueAttribute).Value; comboOptionImp.SetText(display); if (display.Equals(selected)) { currentComboOptionImplementation = comboOptionImp; } List <GnosisKey> keys = new List <GnosisKey>(); if (((GnosisComboField)ControlImplementation).ComboAttributes != null) { foreach (GnosisComboAttribute comboAttribute in ((GnosisComboField)ControlImplementation).ComboAttributes.Where(a => a._ComboRole == GnosisComboAttribute.ComboRoleType.KEY)) { string targetAttribute = InstanceController.GetTargetAttributeName(comboAttribute.Dataset, comboAttribute.DatasetItem); string sourceAttribute = InstanceController.GetKeyOptionSourceAttributeName(comboAttribute.Dataset, comboAttribute.DatasetItem); string keyString = row.Attribute(sourceAttribute).Value; GnosisKey key = new GnosisKey(comboAttribute.Dataset, comboAttribute.DatasetItem, sourceAttribute, targetAttribute, keyString); keys.Add(key); } } comboOptionImplementations.Add(comboOptionImp, keys); i++; } //List<string> values = InstanceController.GetOptionsList(datasetName, datasetItemName); //string selected = InstanceController.GetDataString(datasetName, datasetItemName, rowNo); //comboOptionImplementations = new List<IGnosisComboOptionImplementation>(); //IGnosisComboOptionImplementation selectedOption = null; //foreach (string option in values) //{ // IGnosisComboOptionImplementation comboOptionImp = GlobalData.Singleton.ImplementationCreator.GetGnosisComboOptionImplementation(); // comboOptionImplementations.Add(comboOptionImp); // //comboOptionImp.LoadItem(option); // comboOptionImp.SetText(option); // if (option.Equals(selected)) // { // selectedOption = comboOptionImp; // } //} List <GnosisComboOption> comboOptions = new List <GnosisComboOption>(); foreach (GnosisComboOption option in comboOptionImplementations.Keys) { comboOptions.Add(option); } ((GnosisComboField)ControlImplementation).LoadComboOptionImplementations(comboOptions); if (currentComboOptionImplementation != null) { ((GnosisComboField)ControlImplementation).SetSelectedOption(currentComboOptionImplementation); } } }
public void Setup() { toolbarButtonControllers = new List <object>(); try { //Find the GnosisGenericMenu which this toolbar points at genericMenuController = (GnosisGenericMenuController)GlobalData.Singleton.FindController(((GnosisToolbar)ControlImplementation).MenuSystemID, ((GnosisToolbar)ControlImplementation).MenuControlID); //create toolbar buttons for each generic menu item if (genericMenuController.GenericMenuItemControllers != null && genericMenuController.GenericMenuItemControllers.Count > 0) { foreach (GnosisGenericMenuItemController menuItemController in genericMenuController.GenericMenuItemControllers.OrderBy(x => x.ControlImplementation.Order)) { object btnController; if (menuItemController.ChildControllers.Count > 0) { GnosisMenuButton menuButton = GnosisControlCreator.CreateGnosisMenuButton(); //btn = CreateDropDownButton(menuItemController); // IGnosisToolbarMenuButtonImplementation menuBtnImplementation = // GlobalData.Singleton.ImplementationCreator.GetGnosisToolbarMenuButtonImplementation(); btnController = new GnosisToolbarMenuButtonController(menuItemController, menuButton, EntityController, this); ((GnosisToolbarMenuButtonController)btnController).Setup(); toolbar.AddMenuButton(menuButton); toolbarButtonControllers.Add(btnController); } else if (menuItemController is GnosisGenericToggleMenuItemController) { // IGnosisToggleButtonImplementation toggleButton = GlobalData.Singleton.ImplementationCreator.GetGnosisToggleButtonImplementation(); GnosisToggleButton toggleButton = new GnosisToggleButton(); GnosisGenericToggleMenuItem menuItem = (GnosisGenericToggleMenuItem)menuItemController.ControlImplementation; toggleButton.Active = menuItem.Active; toggleButton.Caption = menuItem.Caption; toggleButton.GnosisIcon = menuItem.GnosisIcon; toggleButton.ToolTip = menuItem.Tooltip; toggleButton.Disabled = menuItem.Disabled; toggleButton.Hidden = menuItem.Hidden; btnController = new GnosisToolbarToggleButtonController((GnosisGenericToggleMenuItemController)menuItemController, toggleButton, EntityController, this); //((GnosisToolbarToggleButtonController)btnController).Setup(); toolbar.AddToggleButton(toggleButton); toolbarButtonControllers.Add(btnController); } else if (menuItemController is GnosisGenericMenuGroupController) { GnosisGenericMenuGroupController groupController = (GnosisGenericMenuGroupController)menuItemController; foreach (GnosisGenericToggleMenuItemController toggleMenuItemController in groupController.ToggleMenuItemControllers) { // IGnosisToggleButtonImplementation toggleButton = GlobalData.Singleton.ImplementationCreator.GetGnosisToggleButtonImplementation(); GnosisToggleButton toggleButton = new GnosisToggleButton(); GnosisGenericToggleMenuItem menuItem = (GnosisGenericToggleMenuItem)toggleMenuItemController.ControlImplementation; toggleButton.Active = menuItem.Active; toggleButton.Caption = menuItem.Caption; toggleButton.GnosisIcon = menuItem.GnosisIcon; toggleButton.ToolTip = menuItem.Tooltip; toggleButton.Disabled = menuItem.Disabled; toggleButton.Hidden = menuItem.Hidden; btnController = new GnosisToolbarToggleButtonController(toggleMenuItemController, toggleButton, EntityController, this); toolbar.AddToggleButton(toggleButton); toolbarButtonControllers.Add(btnController); } } else { GnosisButton toolbarButton = new GnosisButton();// ((GnosisGenericMenuItem)menuItemController.ControlImplementation); GnosisGenericMenuItem menuItem = (GnosisGenericMenuItem)menuItemController.ControlImplementation; toolbarButton.Caption = menuItem.Caption; toolbarButton.GnosisIcon = menuItem.GnosisIcon; toolbarButton.ToolTip = menuItem.Tooltip; toolbarButton.Disabled = menuItem.Disabled; toolbarButton.Hidden = menuItem.Hidden; // IGnosisButtonImplementation btnImplementation = // GlobalData.Singleton.ImplementationCreator.GetGnosisButtonImplementation(); btnController = new GnosisToolbarButtonController(menuItemController, toolbarButton, EntityController, this); ((GnosisToolbarButtonController)btnController).Setup(); toolbar.AddToolbarButton(toolbarButton); toolbarButtonControllers.Add(btnController); } //genericMenuItemControllers.Add(menuItemController); } } if (((GnosisGenericMenu)genericMenuController.ControlImplementation).SystemAddressField != null) { // IGnosisSystemAddressFieldImplementation systemAddressFieldImp = // GlobalData.Singleton.ImplementationCreator.GetGnosisSystemAddressFieldImplementation(); GnosisSystemAddressController systemAddressController = new GnosisSystemAddressController( ((GnosisGenericMenu)genericMenuController.ControlImplementation).SystemAddressField, EntityController, this); toolbar.AddSystemAddressField(((GnosisGenericMenu)genericMenuController.ControlImplementation).SystemAddressField); } } catch (Exception ex) { GlobalData.Singleton.ErrorHandler.HandleError(ex.Message, ex.StackTrace); } }