diff --git a/.gitignore b/.gitignore index d49070a..00ef998 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,5 @@ -### Csharp ### ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. -## -## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore # User-specific files *.suo @@ -10,6 +7,9 @@ *.userosscache *.sln.docstates +!*.exe +!*.dll + # User-specific files (MonoDevelop/Xamarin Studio) *.userprefs @@ -18,12 +18,14 @@ [Dd]ebugPublic/ [Rr]elease/ [Rr]eleases/ -x64/ -x86/ +[Xx]64/ +[Xx]86/ +[Bb]uild/ bld/ [Bb]in/ [Oo]bj/ -[Ll]og/ + + # Visual Studio 2015 cache/options directory .vs/ @@ -43,11 +45,9 @@ TestResult.xml [Rr]eleasePS/ dlldata.c -# .NET Core +# DNX project.lock.json -project.fragment.lock.json artifacts/ -**/Properties/launchSettings.json *_i.c *_p.c @@ -86,7 +86,6 @@ ipch/ *.sdf *.cachefile *.VC.db -*.VC.VC.opendb # Visual Studio profiler *.psess @@ -114,10 +113,6 @@ _TeamCity* # DotCover is a Code Coverage Tool *.dotCover -# Visual Studio code coverage results -*.coverage -*.coveragexml - # NCrunch _NCrunch_* .*crunch*.local.xml @@ -149,18 +144,13 @@ publish/ # Publish Web Output *.[Pp]ublish.xml *.azurePubxml -# TODO: Uncomment the next line to ignore your web deploy settings. -# By default, sensitive information, such as encrypted password -# should be stored in the .pubxml.user file. + +# TODO: Un-comment the next line if you do not want to checkin +# your web deploy settings because they may include unencrypted +# passwords #*.pubxml -*.pubxml.user *.publishproj -# Microsoft Azure Web App publish settings. Comment the next line if you want to -# checkin your Azure Web App publish settings, but sensitive information contained -# in these scripts will be unencrypted -PublishScripts/ - # NuGet Packages *.nupkg # The packages folder can be ignored because of Package Restore @@ -169,7 +159,7 @@ PublishScripts/ !**/packages/build/ # Uncomment if necessary however generally it will be regenerated when needed #!**/packages/repositories.config -# NuGet v3's project.json files produces more ignorable files +# NuGet v3's project.json files produces more ignoreable files *.nuget.props *.nuget.targets @@ -181,11 +171,9 @@ csx/ ecf/ rcf/ -# Windows Store app package directories and files +# Windows Store app package directory AppPackages/ BundleArtifacts/ -Package.StoreAssociation.xml -_pkginfo.txt # Visual Studio cache files # files ending in .cache can be ignored @@ -195,19 +183,16 @@ _pkginfo.txt # Others ClientBin/ +[Ss]tyle[Cc]op.* ~$* *~ *.dbmdl *.dbproj.schemaview -*.jfm *.pfx *.publishsettings +node_modules/ orleans.codegen.cs -# Since there are multiple workflows, uncomment next line to ignore bower_components -# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) -#bower_components/ - # RIA/Silverlight projects Generated_Code/ @@ -222,7 +207,6 @@ UpgradeLog*.htm # SQL Server files *.mdf *.ldf -*.ndf # Business Intelligence projects *.rdl.data @@ -237,10 +221,6 @@ FakesAssemblies/ # Node.js Tools for Visual Studio .ntvs_analysis.dat -node_modules/ - -# Typescript v1 declaration files -typings/ # Visual Studio 6 build log *.plg @@ -248,9 +228,6 @@ typings/ # Visual Studio 6 workspace options file *.opt -# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) -*.vbw - # Visual Studio LightSwitch build output **/*.HTMLClient/GeneratedArtifacts **/*.DesktopClient/GeneratedArtifacts @@ -259,36 +236,12 @@ typings/ **/*.Server/ModelManifest.xml _Pvt_Extensions +# LightSwitch generated files +GeneratedArtifacts/ +ModelManifest.xml + # Paket dependency manager .paket/paket.exe -paket-files/ # FAKE - F# Make .fake/ - -# JetBrains Rider -.idea/ -*.sln.iml - -# CodeRush -.cr/ - -# Python Tools for Visual Studio (PTVS) -__pycache__/ -*.pyc - -# Cake - Uncomment if you are using it -# tools/** -# !tools/packages.config - -# Telerik's JustMock configuration file -*.jmconfig - -# BizTalk build output -*.btp.cs -*.btm.cs -*.odx.cs -*.xsd.cs - - -# End of \ No newline at end of file diff --git a/WinCCFlexArchViewer/Main.Designer.cs b/WinCCFlexArchViewer/Main.Designer.cs index 6053447..7069703 100644 --- a/WinCCFlexArchViewer/Main.Designer.cs +++ b/WinCCFlexArchViewer/Main.Designer.cs @@ -73,6 +73,7 @@ private void InitializeComponent() this.menuStrip1.Location = new System.Drawing.Point(0, 0); this.menuStrip1.Name = "menuStrip1"; this.menuStrip1.Padding = new System.Windows.Forms.Padding(6, 2, 2, 2); + this.menuStrip1.ShowItemToolTips = true; this.menuStrip1.Size = new System.Drawing.Size(846, 24); this.menuStrip1.TabIndex = 0; this.menuStrip1.Text = "menuStrip1"; @@ -83,6 +84,7 @@ private void InitializeComponent() this.fileToolStripMenuItem.Name = "fileToolStripMenuItem"; this.fileToolStripMenuItem.Size = new System.Drawing.Size(53, 20); this.fileToolStripMenuItem.Text = "File"; + this.fileToolStripMenuItem.ToolTipText = "Open data log file"; this.fileToolStripMenuItem.Click += new System.EventHandler(this.fileToolStripMenuItem_Click); // // togleTableToolStripMenuItem @@ -91,6 +93,7 @@ private void InitializeComponent() this.togleTableToolStripMenuItem.Name = "togleTableToolStripMenuItem"; this.togleTableToolStripMenuItem.Size = new System.Drawing.Size(98, 20); this.togleTableToolStripMenuItem.Text = "toggle table"; + this.togleTableToolStripMenuItem.ToolTipText = "Toggle table view"; this.togleTableToolStripMenuItem.Click += new System.EventHandler(this.togleTableToolStripMenuItem_Click); // // hideshowcurveMenuItem @@ -106,6 +109,7 @@ private void InitializeComponent() this.printMenuItem.Name = "printMenuItem"; this.printMenuItem.Size = new System.Drawing.Size(60, 20); this.printMenuItem.Text = "print"; + this.printMenuItem.ToolTipText = "Print Graph"; this.printMenuItem.Click += new System.EventHandler(this.printMenuItem_Click); // // lockunlockvzoomMenuItem @@ -115,6 +119,7 @@ private void InitializeComponent() this.lockunlockvzoomMenuItem.Name = "lockunlockvzoomMenuItem"; this.lockunlockvzoomMenuItem.Size = new System.Drawing.Size(131, 20); this.lockunlockvzoomMenuItem.Text = "lock vertical zoom"; + this.lockunlockvzoomMenuItem.ToolTipText = "Toggle Y-axis zoom lock"; this.lockunlockvzoomMenuItem.Click += new System.EventHandler(this.lockunlockvzoomMenuItem_Click); // // ExitStripMenuItem @@ -134,6 +139,7 @@ private void InitializeComponent() this.aboutMenuItem.Name = "aboutMenuItem"; this.aboutMenuItem.Size = new System.Drawing.Size(38, 20); this.aboutMenuItem.Text = " "; + this.aboutMenuItem.ToolTipText = "About"; this.aboutMenuItem.Click += new System.EventHandler(this.aboutMenuItem_Click); // // ControlsStripMenuItem @@ -142,6 +148,7 @@ private void InitializeComponent() this.ControlsStripMenuItem.Name = "ControlsStripMenuItem"; this.ControlsStripMenuItem.Size = new System.Drawing.Size(78, 20); this.ControlsStripMenuItem.Text = "controls"; + this.ControlsStripMenuItem.ToolTipText = "Toggle Control pad"; this.ControlsStripMenuItem.Click += new System.EventHandler(this.ControlsStripMenuItem_Click); // // fullscreenToolStripMenuItem @@ -150,6 +157,7 @@ private void InitializeComponent() this.fullscreenToolStripMenuItem.Name = "fullscreenToolStripMenuItem"; this.fullscreenToolStripMenuItem.Size = new System.Drawing.Size(86, 20); this.fullscreenToolStripMenuItem.Text = "fullscreen"; + this.fullscreenToolStripMenuItem.ToolTipText = "Toggle fullscreen mode"; this.fullscreenToolStripMenuItem.Click += new System.EventHandler(this.fullscreenToolStripMenuItem_Click); // // SaveCSVMenuItem @@ -158,6 +166,7 @@ private void InitializeComponent() this.SaveCSVMenuItem.Name = "SaveCSVMenuItem"; this.SaveCSVMenuItem.Size = new System.Drawing.Size(79, 20); this.SaveCSVMenuItem.Text = "Save csv"; + this.SaveCSVMenuItem.ToolTipText = "Save Table data to CSV file"; this.SaveCSVMenuItem.Click += new System.EventHandler(this.SaveCSVMenuItem_Click); // // openFileDialog1 diff --git a/WinCCFlexArchViewer/Main.cs b/WinCCFlexArchViewer/Main.cs index d49e98c..911dd2b 100644 --- a/WinCCFlexArchViewer/Main.cs +++ b/WinCCFlexArchViewer/Main.cs @@ -258,7 +258,7 @@ private void parse_data(object sender, DoWorkEventArgs e) } } //EndOfForeach - datapointCounter = timeList.Count; //немного оптимизации, получим число записей сразу, без цикла + datapointCounter = timeList.Count; // получим число записей сразу, без цикла table = new DataTable(); DataColumn dataColumn = new DataColumn(); dataColumn.DataType = Type.GetType("System.String"); @@ -320,7 +320,7 @@ private void parse_data(object sender, DoWorkEventArgs e) } } } //EndOfForeach - goodRecCounter = table.Rows.Count; //немного оптимизации, получим число записей сразу, без цикла + goodRecCounter = table.Rows.Count; // получим число записей сразу, без цикла } // @@ -441,6 +441,7 @@ private void toolMnuItemChSta(object sender, EventArgs e) { ((ToolStripMenuItem)sender).Checked = DTrend.GraphPane.CurveList[((ToolStripMenuItem)sender).OwnerItem.Text].IsVisible; } + // Event handler for Dropdown MenuItem "show/hide ALL Curves" private void toggleAllCurves(object sender, EventArgs e) { diff --git a/WinCCFlexArchViewer/NumTextBox.cs b/WinCCFlexArchViewer/NumTextBox.cs index 32db815..e9fd369 100644 --- a/WinCCFlexArchViewer/NumTextBox.cs +++ b/WinCCFlexArchViewer/NumTextBox.cs @@ -35,7 +35,7 @@ protected override void WndProc(ref Message m) { Text = value.ToString(); } - else MessageBox.Show("Error paste"); + else MessageBox.Show("Only Number Allowed", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } @@ -44,13 +44,13 @@ private double DblParse() double d = 0.0; if (Text == String.Empty) { - MessageBox.Show("Empty Value Not Allowed"); + MessageBox.Show("Empty Value Not Allowed", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning); ok = false; } else { ok = double.TryParse(this.Text, out d); - if (ok == false) MessageBox.Show("Only Number Allowed"); + if (ok == false) MessageBox.Show("Only Number Allowed", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning); } return d; } diff --git a/WinCCFlexArchViewer/WinCCFlexLogViewer.csproj b/WinCCFlexArchViewer/WinCCFlexLogViewer.csproj index a05e518..86b4f86 100644 --- a/WinCCFlexArchViewer/WinCCFlexLogViewer.csproj +++ b/WinCCFlexArchViewer/WinCCFlexLogViewer.csproj @@ -45,13 +45,14 @@ false - x86 + AnyCPU pdbonly true bin\Release\ TRACE prompt 4 + false diff --git a/WinCCFlexArchViewer/YScaleSettings.Designer.cs b/WinCCFlexArchViewer/YScaleSettings.Designer.cs index fbc7fc3..67a92b6 100644 --- a/WinCCFlexArchViewer/YScaleSettings.Designer.cs +++ b/WinCCFlexArchViewer/YScaleSettings.Designer.cs @@ -17,16 +17,17 @@ private void InitializeComponent() this.channel_name_label = new System.Windows.Forms.Label(); this.btnSet = new System.Windows.Forms.Button(); this.btnCancel = new System.Windows.Forms.Button(); - this.channel_Y_min_input = new NumTextBox(); - this.channel_Y_max_input = new NumTextBox(); this.channel_Y_min_label = new System.Windows.Forms.Label(); this.channel_Y_max_label = new System.Windows.Forms.Label(); + this.channel_Y_max_input = new WinCCFlexLogViewer.NumTextBox(); + this.channel_Y_min_input = new WinCCFlexLogViewer.NumTextBox(); this.SuspendLayout(); // // channel_name_label // this.channel_name_label.AutoSize = true; this.channel_name_label.Location = new System.Drawing.Point(5, 9); + this.channel_name_label.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); this.channel_name_label.Name = "channel_name_label"; this.channel_name_label.Size = new System.Drawing.Size(75, 13); this.channel_name_label.TabIndex = 0; @@ -52,26 +53,6 @@ private void InitializeComponent() this.btnCancel.UseVisualStyleBackColor = true; this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click); // - // channel_Y_min_input - // - this.channel_Y_min_input.Location = new System.Drawing.Point(55, 31); - this.channel_Y_min_input.Name = "channel_Y_min_input"; - this.channel_Y_min_input.Size = new System.Drawing.Size(100, 20); - this.channel_Y_min_input.TabIndex = 3; - this.channel_Y_min_input.Text = "0"; - this.channel_Y_min_input.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - this.channel_Y_min_input.WordWrap = false; - // - // channel_Y_max_input - // - this.channel_Y_max_input.Location = new System.Drawing.Point(55, 53); - this.channel_Y_max_input.Name = "channel_Y_max_input"; - this.channel_Y_max_input.Size = new System.Drawing.Size(100, 20); - this.channel_Y_max_input.TabIndex = 4; - this.channel_Y_max_input.Text = "0"; - this.channel_Y_max_input.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - this.channel_Y_max_input.WordWrap = false; - // // channel_Y_min_label // this.channel_Y_min_label.AutoSize = true; @@ -90,14 +71,34 @@ private void InitializeComponent() this.channel_Y_max_label.TabIndex = 6; this.channel_Y_max_label.Text = "Y Max:"; // + // channel_Y_max_input + // + this.channel_Y_max_input.Location = new System.Drawing.Point(55, 53); + this.channel_Y_max_input.Name = "channel_Y_max_input"; + this.channel_Y_max_input.Size = new System.Drawing.Size(100, 20); + this.channel_Y_max_input.TabIndex = 4; + this.channel_Y_max_input.Text = "0"; + this.channel_Y_max_input.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; + this.channel_Y_max_input.WordWrap = false; + // + // channel_Y_min_input + // + this.channel_Y_min_input.Location = new System.Drawing.Point(55, 31); + this.channel_Y_min_input.Name = "channel_Y_min_input"; + this.channel_Y_min_input.Size = new System.Drawing.Size(100, 20); + this.channel_Y_min_input.TabIndex = 3; + this.channel_Y_min_input.Text = "0"; + this.channel_Y_min_input.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; + this.channel_Y_min_input.WordWrap = false; + // // YScaleSettings // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(184, 112); this.Controls.Add(this.channel_Y_max_label); - this.Controls.Add(channel_Y_min_label); - this.Controls.Add(channel_Y_max_input); + this.Controls.Add(this.channel_Y_min_label); + this.Controls.Add(this.channel_Y_max_input); this.Controls.Add(this.channel_Y_min_input); this.Controls.Add(this.btnCancel); this.Controls.Add(this.btnSet); @@ -109,7 +110,7 @@ private void InitializeComponent() this.ShowIcon = false; this.ShowInTaskbar = false; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; - this.Text = "Y scale settings"; + this.Text = " Y scale settings"; this.ResumeLayout(false); this.PerformLayout(); diff --git a/WinCCFlexArchViewer/bin/Release/WinCCFlexLogViewer.exe b/WinCCFlexArchViewer/bin/Release/WinCCFlexLogViewer.exe index 1470616..7f1a563 100644 Binary files a/WinCCFlexArchViewer/bin/Release/WinCCFlexLogViewer.exe and b/WinCCFlexArchViewer/bin/Release/WinCCFlexLogViewer.exe differ diff --git a/changelog.txt b/changelog.txt index ea6e56d..9ad7a5f 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,4 +1,7 @@ 1.9.0 beta 3 +Added Tooltips for menu buttons. +Minor code improvements. +Removed unused code. 1.9.0 beta 2 Added export data from DataGrid to CSV file. @@ -16,7 +19,7 @@ Enabled "ReadOnly" property in the data grid. Minor bug fixes. 1.8.2 -Information on command-line options moved to the "Info" window (temporary solution). +Information on command-line options moved to the "About" window (temporary solution). Added ability to rearrange columns in the DataGrid. Fixed display error in fullscreen mode. Added "Full Screen" button.