protected override void DoBuildChildren(LayoutPanelBase Layout) { base.DoBuildChildren(Layout); CaptionLabel.Dock = DockStyle.Top; CaptionLabel.SuspendLayout(); if (null != dataSource) { } else { NewMessage.Show(Loc.Instance.GetString("CreateParent: You have a null datasource")); lg.Instance.Line("NoteDataXML_Table->CreateParent", ProblemType.WARNING, Loc.Instance.GetString("You have a null table which should not happen. This usually occurs only during UNIT TESTING because proper create constructor is not used")); BuildDefaultColumns(); } lg.Instance.Line("NoteDataXML_Table-CreateParent", ProblemType.MESSAGE, String.Format("Passing {0} columns into new TablePanel", Columns.Length)); Table = new TablePanel(dataSource, HandleCellBeginEdit, Columns, GoToNote, this.Caption, GetRandomTableResults); lg.Instance.Line("NoteDataXML_Table->CreateParent", ProblemType.MESSAGE, String.Format("Before HANDLEDATABINING my name is {0}", this.Caption)); Table.Parent = ParentNotePanel; Table.Dock = DockStyle.Fill; Table.BringToFront(); Table.ReadOnly = this.ReadOnly; ToolStripMenuItem TableCaptionLabel = LayoutDetails.BuildMenuPropertyEdit(Loc.Instance.GetString("Table Caption: {0}"), TableCaption, Loc.Instance.GetString("When generating random data this caption will be used to present the results."), HandleNoteLinkNameChange); ToolStripMenuItem NextTableLabel = LayoutDetails.BuildMenuPropertyEdit(Loc.Instance.GetString("Next Table: {0}"), NextTable, Loc.Instance.GetString("Set a value here and if the random results of this table resolve without finding a 'NextTable' in the table itself, it will proceed with randomization on the table specified here."), HandleNextTableKeyDown); useHeadingStyleOption = new ToolStripButton(); useHeadingStyleOption.Text = Loc.Instance.GetString("Use Heading Styled Captions"); useHeadingStyleOption.CheckOnClick = true; useHeadingStyleOption.Checked = useHeadingStyleForCaption; useHeadingStyleOption.Click += (object sender, EventArgs e) => { SetSaveRequired(true); useHeadingStyleForCaption = useHeadingStyleOption.Checked; }; properties.DropDownItems.Add(new ToolStripSeparator()); properties.DropDownItems.Add(TableCaptionLabel); properties.DropDownItems.Add(NextTableLabel); properties.DropDownItems.Add(useHeadingStyleOption); CaptionLabel.ResumeLayout(); }
protected override void DoBuildChildren(LayoutPanelBase Layout) { base.DoBuildChildren (Layout); if (Columns.Length < 5) { PropertyInfo[] propertiesInfo = typeof(Market).GetProperties (); // rebuild Submision Market Table DataTable Table2 = CreateDataTable (propertiesInfo); // NewMessage.Show (Table.Columns.Count.ToString ()); //ForceTableUpdate (Table2); dataSource = Table2; Table = new TablePanel (dataSource, HandleCellBeginEdit, Columns, GoToNote, this.Caption, GetRandomTableResults); Table.Dock = DockStyle.Fill; Table.BringToFront (); dashboardMarketEdit.AddMarketRow (propertiesInfo, Table2, Market.DefaultMarket ()); } //ToolTip Tipster = new ToolTip (); CaptionLabel.Dock = DockStyle.Top; Tabs = new TabControl (); Tabs.Margin = new Padding(5); Tabs.Dock = DockStyle.Fill; TabPage SubmissionPage = new TabPage (Loc.Instance.GetString ("Submissions")); TabPage MarketList = new TabPage (Loc.Instance.GetString ("Markets")); TabPage MarketAdvanced = new TabPage (Loc.Instance.GetString ("Advanced")); Tabs.SelectedIndexChanged += HandleSelectedIndexTabPagesChanged; Tabs.TabPages.Add (SubmissionPage); Tabs.TabPages.Add (MarketList); Tabs.TabPages.Add (MarketAdvanced); // // SUBMISSION PAGE SETUP // SubmissionPanel = new dashboardSubs (dashBoardsSubmissionsIsUpdatingProject, true); SubmissionPanel.SupressRefresh= true; SubmissionPanel.Dock = DockStyle.Fill; SubmissionPage.Controls.Add (SubmissionPanel); SubmissionPanel.BringToFront (); ToggleBetweenListAndEditSubmissions = new Button (); ToggleBetweenListAndEditSubmissions.Dock = DockStyle.Bottom; ToggleBetweenListAndEditSubmissions.Enabled = false; // we use tag to disctate the text 0 = pressme to get list of submission // 1 mean sgo back to Submission Overview ToggleBetweenListAndEditSubmissions.Tag = 0; UpdateToggleButtonText(); ToggleBetweenListAndEditSubmissions.Click += HandleToggleBetweenListAndEditingClick; SubmissionPage.Controls.Add (ToggleBetweenListAndEditSubmissions); LastQuery = new ComboBox (); ViewOfProjectSubmissions = new ViewProjectSubmissions (GetProjectGUID, GetMarketObjectByGUID, this.Layout); ViewOfProjectSubmissions.Visible = false; ViewOfProjectSubmissions.Dock = DockStyle.Fill; SubmissionPage.Controls.Add (ViewOfProjectSubmissions); ViewOfProjectSubmissions.BringToFront (); // // MARKET // if (dataSource == null) throw new Exception("null datasource"); MarketEdit = new dashboardMarketEdit (dataSource, dashBoardsMarketUpdating, this.Layout); MarketEdit.Dock = DockStyle.Fill; MarketList.Controls.Add (MarketEdit); MarketEdit.BringToFront (); // // Market Page (Advanced) Setup // ParentNotePanel.Controls.Remove (this.Table); MarketAdvanced.Controls.Add (this.Table); // // Submit Footer // SubmitPanel = new GroupBox (); SubmitPanel.BackColor = Color.Lavender; SubmitPanel.ForeColor = Color.Black; SubmitPanel.Height = 150; SubmitPanel.Padding = new Padding(5); SubmitPanel.Dock = DockStyle.Bottom; SubmitPanel.Text = Loc.Instance.GetString ("ADD A SUBMISSION"); // LabelProject = new Label (); // LabelProject.Text = DefaultProjectLabel; //Loc.Instance.GetString ("Current Project: "); // LabelProject.Dock = DockStyle.Top; // // LabelMarket = new Label (); // LabelMarket.Text = Loc.Instance.GetString ("Current Market: "); // LabelMarket.Dock = DockStyle.Top; Warnings = new Label (); Warnings.Text = Loc.Instance.GetString ("Warnings "); Warnings.Dock = DockStyle.Fill; AddSubmission = new Button (); AddSubmission.Text = Loc.Instance.GetStringFmt ("Submit {0} to {1}", DefaultProjectLabel,SelectedMarket); AddSubmission.Click += HandleAddSubmissionClick; AddSubmission.Dock = DockStyle.Bottom; // SubmitPanel.Controls.Add (LabelMarket); // SubmitPanel.Controls.Add (LabelProject); SubmitPanel.Controls.Add (Warnings); SubmitPanel.Controls.Add (AddSubmission); System.Collections.Generic.List<string> queries = LayoutDetails.Instance.TableLayout.GetListOfStringsFromSystemTable (LayoutDetails.SYSTEM_QUERIES, 1); queries.Sort (); LastQuery.DropDownStyle = ComboBoxStyle.DropDownList; foreach (string s in queries) { LastQuery.Items.Add (s); } //LastQuery.SelectedItem = CurrentFilter; int lastQueryIndex =queries.IndexOf(CurrentFilter);// queries.Find(s=>s==CurrentFilter); LastQuery.SelectedIndex = lastQueryIndex; LastQuery.SelectedIndexChanged+= HandleSelectedIndexLastQueryChanged; SubmissionPanel.CurrentFilter = CurrentFilter; //LastQuery.Text = "LastQuery"; LastQuery.Dock = DockStyle.Top; //LastQuery.Enabled = false; SubmissionPage.Controls.Add (LastQuery); ParentNotePanel.Controls.Add (SubmitPanel); ParentNotePanel.Controls.Add (Tabs); Tabs.BringToFront(); // Had to remove this because the table lookups require // the presence of the accessory tables which might not exist // at this point in the load cycle // SubmissionPanel.RefreshMe(); SubmissionPanel.SupressRefresh= false; Table.ReadOnly = this.ReadOnly; LayoutDetails.Instance.UpdateAfterLoadList.Add (this); }