//################################################################################ #region Private Members private void InitializeComponent() { ContainerPanel.SuspendLayout(); SuspendLayout(); #region Container Panel ContainerPanel.Margin = new Padding(0); ContainerPanel.Padding = new Padding(0); ContainerPanel.Location = new Point(0, 0); ContainerPanel.FlowDirection = FlowDirection.LeftToRight; #endregion #region Name Label NameLabel.Name = "NameLabel"; NameLabel.Text = Formatter.FormatString(StockService.GetStockInfo.Name, Pad.Right, 9); //NameLabel.Width = 90; NameLabel.AutoSize = true; NameLabel.Margin = new Padding(0, 0, Style.PanelSpacing, 0); NameLabel.Padding = new Padding(Style.PanelPadding); NameLabel.TextAlign = ContentAlignment.MiddleLeft; NameLabel.Font = new Font(new FontFamily(Style.FontName), Style.PanelFontSize, FontStyle.Bold); Painter <Black> .Paint(NameLabel, PaintMode.Normal); #endregion #region Value Label ValueLabel.Name = "ValueLabel"; ValueLabel.Text = Formatter.FormatString("#,#### TL", Pad.Left, 12); //ValueLabel.Width = 100; ValueLabel.AutoSize = true; ValueLabel.Margin = new Padding(0, 0, Style.PanelSpacing, 0); ValueLabel.Padding = new Padding(Style.PanelPadding); ValueLabel.TextAlign = ContentAlignment.MiddleRight; ValueLabel.Font = new Font(new FontFamily(Style.FontName), Style.PanelFontSize, FontStyle.Bold); Painter <Green> .Paint(ValueLabel, PaintMode.Light); #endregion #region Function Button void SlideAction(Control button) { button.Click += (sender, args) => { }; } FunctionButton = new ImageButton(SlideAction, Resources.Options) { Margin = new Padding(0) }; FunctionButton.SetToolTip("Open panel"); FunctionButton.SetBackgroundColor(Color.FromArgb(38, 124, 181)); #endregion #region Stock Panel Name = $"StockPanel_{StockService.GetStockInfo.Tag}"; AutoSize = true; Margin = new Padding(0, 0, 0, Style.PanelSpacing); BackColor = Color.FromArgb(100, 100, 100); BorderStyle = BorderStyle.FixedSingle; AutoScaleMode = AutoScaleMode.Font; #endregion ContainerPanel.Controls.Add(NameLabel); ContainerPanel.Controls.Add(ValueLabel); ContainerPanel.Controls.Add(FunctionButton); Controls.Add(ContainerPanel); ContainerPanel.ResumeLayout(false); ContainerPanel.PerformLayout(); ResumeLayout(false); }
//################################################################################ #region Private Members private void InitializeComponent() { ContainerPanel.SuspendLayout(); SuspendLayout(); #region Container Panel ContainerPanel.Margin = new Padding(0); ContainerPanel.Padding = new Padding(0); ContainerPanel.Location = new Point(0, 0); ContainerPanel.FlowDirection = FlowDirection.LeftToRight; #endregion #region Logo Button void HideAction(Control button) { button.DoubleClick += (sender, arg) => { ParentControl.Visible = false; }; } LogoButton = new ImageButton(HideAction, Resources.Logo) { Margin = new Padding(0, 0, Style.PanelSpacing, 0) }; LogoButton.SetToolTip("Handy Box App v2.4"); LogoButton.SetBackgroundColor(Color.FromArgb(226, 87, 76)); #endregion #region Title Label TitleLabel.Name = $"TitleLabel"; TitleLabel.Text = $@"Handy Box App v2.4 "; //TitleLabel.Width = 190 - LogoButton.Width; TitleLabel.AutoSize = true; TitleLabel.Margin = new Padding(0, 0, Style.PanelSpacing, 0); TitleLabel.Padding = new Padding(Style.PanelPadding); TitleLabel.TextAlign = ContentAlignment.MiddleLeft; TitleLabel.Font = new Font(new FontFamily(Style.FontName), Style.PanelFontSize, FontStyle.Bold); Painter <Black> .Paint(TitleLabel, PaintMode.Dark); TitleLabel.MouseDown += DragAndDrop; #endregion #region Close Button void CloseAction(Control button) { button.Click += (sender, args) => { ((MainForm)ParentControl).Close(); CustomApplicationContext.Exit(); }; } CloseButton = new ImageButton(CloseAction, Resources.Close) { Margin = new Padding(0) }; CloseButton.SetToolTip("Close"); CloseButton.SetBackgroundColor(Color.FromArgb(201, 54, 54)); #endregion #region Title Panel Name = "TitlePanel"; AutoSize = true; Margin = new Padding(0, 0, 0, Style.PanelSpacing); BackColor = Color.FromArgb(100, 100, 100); BorderStyle = BorderStyle.FixedSingle; AutoScaleMode = AutoScaleMode.Font; #endregion ContainerPanel.Controls.Add(LogoButton); ContainerPanel.Controls.Add(TitleLabel); ContainerPanel.Controls.Add(CloseButton); Controls.Add(ContainerPanel); ContainerPanel.ResumeLayout(false); ContainerPanel.PerformLayout(); ResumeLayout(false); }
//################################################################################ #region Private Members #region Timer Panel Initialization private void InitializeComponent() { ContainerPanel.SuspendLayout(); SuspendLayout(); #region Container Panel ContainerPanel.Margin = new Padding(0); ContainerPanel.Padding = new Padding(0); ContainerPanel.Location = new Point(0, 0); ContainerPanel.FlowDirection = FlowDirection.LeftToRight; #endregion #region Timer TextBox FunctionText.Name = $"TimerText"; FunctionText.Text = Formatter.FormatMode($"{TimerMode.Stopped}"); FunctionText.AutoSize = true; FunctionText.BorderStyle = BorderStyle.None; FunctionText.Padding = new Padding(Style.PanelPadding); FunctionText.Margin = new Padding(0, 0, Style.PanelSpacing, 0); FunctionText.Font = new Font(new FontFamily(Style.FontName), Style.PanelFontSize, FontStyle.Bold); Painter <Black> .Paint(FunctionText, PaintMode.Normal); FunctionText.DoubleClick += FunctionText_DoubleClick; var hourTextGuideLabel = new Label { AutoSize = true, Text = new string(' ', 12), Margin = new Padding(0), Padding = new Padding(Style.PanelPadding), Font = new Font(new FontFamily(Style.FontName), Style.PanelFontSize, FontStyle.Bold) }; TimerText.Text = c_InitialTime; TimerText.ReadOnly = true; TimerText.AutoSize = false; TimerText.TabStop = false; TimerText.Margin = new Padding(0); TimerText.BorderStyle = BorderStyle.None; TimerText.Size = hourTextGuideLabel.PreferredSize; TimerText.TextAlign = HorizontalAlignment.Center; TimerText.Font = new Font(new FontFamily(Style.FontName), Style.PanelFontSize + 2, FontStyle.Bold); Painter <Blue> .Paint(TimerText, PaintMode.Normal); TimerText.DoubleClick += TimerText_DoubleClick; TimerText.KeyPress += TimerText_KeyPress; TimerText.LostFocus += TimerText_LostFocus; TimerContainer.Width = FunctionText.PreferredWidth + Style.PanelSpacing + TimerText.Width; TimerContainer.Height = FunctionText.PreferredHeight; TimerContainer.Padding = new Padding(0); TimerContainer.Margin = new Padding(0, 0, Style.PanelSpacing, 0); TimerContainer.BorderStyle = BorderStyle.None; TimerContainer.FlowDirection = FlowDirection.LeftToRight; TimerContainer.Controls.Add(FunctionText); TimerContainer.Controls.Add(TimerText); #endregion #region Function Button void PauseAction(Control button) { button.Click += FunctionButton_Click; } void ManualStopAction(object sender, EventArgs args) { Log.Info("Stop has been triggered manually. WorkTimer will stop."); StopTimer(); } FunctionButton = new ImageButton(PauseAction, Resources.Stop) { Margin = new Padding(0), ContextMenu = new ContextMenu { MenuItems = { new MenuItem("Stop", (s, a) => ManualStopAction(s, a)) } } }; FunctionButton.SetToolTip("Pause/Resume timer"); FunctionButton.SetBackgroundColor(Color.FromArgb(152, 0, 47)); #endregion #region Timer Panel Name = "TimerPanel"; AutoSize = true; Margin = new Padding(0, 0, 0, Style.PanelSpacing); BackColor = Color.FromArgb(100, 100, 100); BorderStyle = BorderStyle.FixedSingle; AutoScaleMode = AutoScaleMode.Font; #endregion ContainerPanel.Controls.Add(TimerContainer); ContainerPanel.Controls.Add(FunctionButton); Controls.Add(ContainerPanel); ContainerPanel.ResumeLayout(false); ContainerPanel.PerformLayout(); ResumeLayout(false); }