Compare commits
8 Commits
013aa87d3d
...
44841453e9
| Author | SHA1 | Date | |
|---|---|---|---|
| 44841453e9 | |||
| 9bf6a38f6d | |||
| 760ce6abc2 | |||
| 7be92b315a | |||
| 7603deef0d | |||
| 907d61ec1e | |||
| cc42695fd8 | |||
| 5e26c490b8 |
120
Config.cs
Normal file
@@ -0,0 +1,120 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public static class Config
|
||||
{
|
||||
static string m_strPath = "";
|
||||
|
||||
static Config()
|
||||
{
|
||||
string strPrjName = System.Reflection.Assembly.GetEntryAssembly().GetName().Name;
|
||||
string strFolder = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), strPrjName);
|
||||
m_strPath = strFolder + "\\config.ini";
|
||||
if (!Directory.Exists(strFolder))
|
||||
Directory.CreateDirectory(strFolder);
|
||||
|
||||
Load();
|
||||
}
|
||||
|
||||
public static void Init()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
[DllImport("kernel32")]
|
||||
private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);
|
||||
[DllImport("kernel32")]
|
||||
private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);
|
||||
|
||||
private static void Load()
|
||||
{
|
||||
StringBuilder temp = new StringBuilder(10240);
|
||||
int iRes = GetPrivateProfileString("Option", "recent", "", temp, 10240, m_strPath);
|
||||
|
||||
if(temp.Length > 0)
|
||||
{
|
||||
string[] astrList = temp.ToString().Split(new string[] { "//" }, StringSplitOptions.None);
|
||||
foreach (string strFile in astrList)
|
||||
OPTION.AddRecentFile(strFile);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
private static void Save()
|
||||
{
|
||||
WritePrivateProfileString("Option", "recent", OPTION.GetRecentAll(), m_strPath);
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static class OPTION
|
||||
{
|
||||
public static List<string> m_RecentList = new List<string>();
|
||||
|
||||
public static void AddRecentFile(string strPath)
|
||||
{
|
||||
if(m_RecentList.Find(s => s==strPath) != null)
|
||||
m_RecentList.Remove(strPath);
|
||||
|
||||
m_RecentList.Add(strPath);
|
||||
Save();
|
||||
}
|
||||
|
||||
public static string GetRecentAll()
|
||||
{
|
||||
return string.Join("//", m_RecentList);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static class ANALYSIS
|
||||
{
|
||||
public enum RISK
|
||||
{
|
||||
NO,
|
||||
POTENTIAL,
|
||||
HIGH
|
||||
}
|
||||
|
||||
public enum DEPENDANCY
|
||||
{
|
||||
NO,
|
||||
POTENTIAL,
|
||||
HIGH,
|
||||
NOT_ENNOUGH_DATA
|
||||
}
|
||||
|
||||
public static RISK GetRisk(float fAvg)
|
||||
{
|
||||
if (fAvg <= 3)
|
||||
return RISK.NO;
|
||||
else if (fAvg <= 5)
|
||||
return RISK.POTENTIAL;
|
||||
else
|
||||
return RISK.HIGH;
|
||||
}
|
||||
|
||||
public static DEPENDANCY GetDependancy(float fStdev, int iTestCnt)
|
||||
{
|
||||
if (iTestCnt <= 3)
|
||||
return DEPENDANCY.NOT_ENNOUGH_DATA;
|
||||
else if (fStdev < 3.5f)
|
||||
return DEPENDANCY.NO;
|
||||
else if (fStdev < 5.5f)
|
||||
return DEPENDANCY.POTENTIAL;
|
||||
else
|
||||
return DEPENDANCY.HIGH;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
86
DataExcel.cs
@@ -1,86 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using OfficeOpenXml;
|
||||
using System.IO;
|
||||
using System.Data;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public class DataHandler
|
||||
{
|
||||
DataTable m_Data = new DataTable();
|
||||
|
||||
List<string> m_Material1 = new List<string>();
|
||||
List<string> m_Material2 = new List<string>();
|
||||
|
||||
public void LoadData2(string strFileName)
|
||||
{
|
||||
FileInfo newFile = new FileInfo(strFileName);
|
||||
ExcelPackage package = new ExcelPackage(newFile);
|
||||
ExcelWorksheet Sheet = package.Workbook.Worksheets[1];
|
||||
|
||||
m_Data.Clear();
|
||||
|
||||
// read column
|
||||
for (int iCol = Sheet.Dimension.Start.Column; iCol <= Sheet.Dimension.End.Column; iCol++)
|
||||
{
|
||||
string strCol = (string)Sheet.Cells[Sheet.Dimension.Start.Row, iCol].Value;
|
||||
m_Data.Columns.Add(new DataColumn(strCol));
|
||||
}
|
||||
|
||||
// read data
|
||||
for (int iRow = Sheet.Dimension.Start.Row + 1; iRow <= Sheet.Dimension.End.Row; iRow++)
|
||||
{
|
||||
DataRow newRow = m_Data.NewRow();
|
||||
|
||||
for (int iCol = Sheet.Dimension.Start.Column; iCol <= Sheet.Dimension.End.Column; iCol++)
|
||||
{
|
||||
var value = Sheet.Cells[iRow, iCol].Value;
|
||||
|
||||
if (value is double)
|
||||
{
|
||||
float fData = (float)(double)value;
|
||||
newRow[iCol-1] = fData;
|
||||
}
|
||||
else
|
||||
{
|
||||
string strData = "";
|
||||
if (value != null)
|
||||
strData = (string)value;
|
||||
|
||||
newRow[iCol-1] = strData;
|
||||
}
|
||||
}
|
||||
|
||||
m_Data.Rows.Add(newRow);
|
||||
}
|
||||
|
||||
m_Material1 = (from r in m_Data.AsEnumerable()
|
||||
select r["Material spring"]).Distinct().Cast<string>().ToList();
|
||||
|
||||
m_Material2 = (from r in m_Data.AsEnumerable()
|
||||
select r["material 2 table"]).Distinct().Cast<string>().ToList();
|
||||
|
||||
|
||||
Console.WriteLine("end");
|
||||
}
|
||||
|
||||
public List<string> GetMaterial1()
|
||||
{
|
||||
return m_Material1;
|
||||
}
|
||||
|
||||
public List<string> GetMaterial2()
|
||||
{
|
||||
return m_Material2;
|
||||
}
|
||||
|
||||
public DataTable GetData()
|
||||
{
|
||||
return m_Data;
|
||||
}
|
||||
}
|
||||
}
|
||||
287
DataHandler.cs
Normal file
@@ -0,0 +1,287 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using OfficeOpenXml;
|
||||
using System.IO;
|
||||
using System.Data;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public class DataHandler
|
||||
{
|
||||
public struct CalcResult
|
||||
{
|
||||
public int m_iCnt;
|
||||
public float m_fAvgRPN;
|
||||
public float m_fStdRPN;
|
||||
public float m_fDiffByForce;
|
||||
public float m_fDiffByTemp;
|
||||
public float m_fDiffByHumid;
|
||||
public float m_fDiffByVel;
|
||||
}
|
||||
|
||||
public struct CHART
|
||||
{
|
||||
public float HUMIDITY;
|
||||
public float TEMPERATURE;
|
||||
public float RPN;
|
||||
|
||||
override public string ToString()
|
||||
{
|
||||
return string.Format("Humi({0}) Temp({1}) RPN({2})", HUMIDITY, TEMPERATURE, RPN);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
DataTable m_Data = new DataTable();
|
||||
|
||||
string m_strFileName = "";
|
||||
string m_strFilePath = "";
|
||||
|
||||
string m_strCurSpring = "";
|
||||
string m_strCurTable = "";
|
||||
|
||||
List<string> m_ColumnsNames = new List<string>();
|
||||
List<string> m_ActiveColumns = new List<string>();
|
||||
List<string> m_NonactiveColumns = new List<string>();
|
||||
List<string> m_SpringList = new List<string>();
|
||||
List<string> m_TableList = new List<string>();
|
||||
|
||||
Dictionary<string, string> m_ColumnMap = new Dictionary<string, string>();
|
||||
|
||||
public DataHandler()
|
||||
{
|
||||
m_ColumnMap["spring"] = "Material spring";
|
||||
m_ColumnMap["table"] = "material 2 table";
|
||||
m_ColumnMap["rpn"] = "Risk priority number";
|
||||
m_ColumnMap["force"] = "normal force";
|
||||
m_ColumnMap["temp"] = "Temperature";
|
||||
m_ColumnMap["humidity"] = "Relative humidity";
|
||||
m_ColumnMap["velocity"] = "Relative velocity";
|
||||
}
|
||||
|
||||
bool IsNumberColumn(string strColumn)
|
||||
{
|
||||
return (strColumn == m_ColumnMap["rpn"] ||
|
||||
strColumn == m_ColumnMap["force"] ||
|
||||
strColumn == m_ColumnMap["temp"] ||
|
||||
strColumn == m_ColumnMap["humidity"] ||
|
||||
strColumn == m_ColumnMap["velocity"]);
|
||||
}
|
||||
|
||||
public void LoadData(string strFilePath)
|
||||
{
|
||||
using (ExcelPackage package = new ExcelPackage())
|
||||
{
|
||||
using (var stream = new FileStream(strFilePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
|
||||
package.Load(stream);
|
||||
ExcelWorksheet Sheet = package.Workbook.Worksheets[1];
|
||||
|
||||
m_Data.Columns.Clear();
|
||||
m_Data.Rows.Clear();
|
||||
|
||||
// read column
|
||||
for (int iCol = Sheet.Dimension.Start.Column; iCol <= Sheet.Dimension.End.Column; iCol++)
|
||||
{
|
||||
string strCol = (string)Sheet.Cells[Sheet.Dimension.Start.Row, iCol].Value;
|
||||
m_Data.Columns.Add(new DataColumn(strCol, IsNumberColumn(strCol) ? typeof(float) : typeof(string)));
|
||||
}
|
||||
|
||||
// read data
|
||||
for (int iRow = Sheet.Dimension.Start.Row + 1; iRow <= Sheet.Dimension.End.Row; iRow++)
|
||||
{
|
||||
DataRow newRow = m_Data.NewRow();
|
||||
|
||||
for (int iCol = Sheet.Dimension.Start.Column; iCol <= Sheet.Dimension.End.Column; iCol++)
|
||||
{
|
||||
var value = Sheet.Cells[iRow, iCol].Value;
|
||||
if (m_Data.Columns[iCol-1].DataType == typeof(float))
|
||||
{
|
||||
float fData = 0;
|
||||
if (value != null)
|
||||
{
|
||||
if (value is string)
|
||||
float.TryParse((string)value, out fData);
|
||||
else
|
||||
fData = (float)(double)value;
|
||||
}
|
||||
|
||||
newRow[iCol - 1] = fData;
|
||||
}
|
||||
else
|
||||
{
|
||||
string strData = "";
|
||||
if (value != null)
|
||||
{
|
||||
strData = value.ToString();
|
||||
strData = strData.Trim();
|
||||
}
|
||||
|
||||
newRow[iCol - 1] = strData;
|
||||
}
|
||||
}
|
||||
|
||||
m_Data.Rows.Add(newRow);
|
||||
}
|
||||
|
||||
m_strFilePath = strFilePath;
|
||||
int iSeperate = strFilePath.LastIndexOf('\\');
|
||||
m_strFileName = strFilePath.Substring(iSeperate+1);
|
||||
}
|
||||
|
||||
|
||||
m_SpringList = (from r in m_Data.AsEnumerable()
|
||||
select r[m_ColumnMap["spring"]]).Distinct().Cast<string>().ToList();
|
||||
|
||||
m_TableList = (from r in m_Data.AsEnumerable()
|
||||
select r[m_ColumnMap["table"]]).Distinct().Cast<string>().ToList();
|
||||
|
||||
m_ColumnsNames = (from c in m_Data.Columns.Cast<DataColumn>()
|
||||
select c.ColumnName).ToList<string>();
|
||||
|
||||
|
||||
m_ActiveColumns.Clear();
|
||||
m_NonactiveColumns.Clear();
|
||||
for (int i=0; i< m_ColumnsNames.Count; i++)
|
||||
{
|
||||
if(m_Data.Columns[i].DataType == typeof(string))
|
||||
{
|
||||
if(m_Data.AsEnumerable().Any(r => (string)r[i] != ""))
|
||||
m_ActiveColumns.Add(m_ColumnsNames[i]);
|
||||
else
|
||||
m_NonactiveColumns.Add(m_ColumnsNames[i]);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_ActiveColumns.Add(m_ColumnsNames[i]);
|
||||
}
|
||||
}
|
||||
|
||||
SetSelectedMaterial("", "");
|
||||
}
|
||||
|
||||
public void SetSelectedMaterial(string strSpring, string strTable)
|
||||
{
|
||||
m_strCurSpring = strSpring;
|
||||
m_strCurTable = strTable;
|
||||
}
|
||||
|
||||
public string GetCurSpring()
|
||||
{
|
||||
return m_strCurSpring;
|
||||
}
|
||||
|
||||
public string GetCurTable()
|
||||
{
|
||||
return m_strCurTable;
|
||||
}
|
||||
|
||||
public List<CHART> GetHumidityChart(string strSpring, string strTable)
|
||||
{
|
||||
string strQuery = string.Format("[{0}]='{1}' and [{2}]='{3}'", m_ColumnMap["spring"], strSpring, m_ColumnMap["table"], strTable);
|
||||
DataRow[] rows = m_Data.Select(strQuery);
|
||||
|
||||
List<CHART> result = new List<CHART>();
|
||||
foreach(DataRow r in rows)
|
||||
{
|
||||
result.Add(new CHART
|
||||
{
|
||||
HUMIDITY = (float)r[m_ColumnMap["humidity"]],
|
||||
TEMPERATURE = (float)r[m_ColumnMap["temp"]],
|
||||
RPN = (float)r[m_ColumnMap["rpn"]],
|
||||
});
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
#region calculation
|
||||
float CalcDependency(DataRow[] rows, string strColumn)
|
||||
{
|
||||
// 각 그룹의 평균들의 표준편차
|
||||
var AvgOfGroup = rows
|
||||
.GroupBy(r => r[m_ColumnMap["force"]])
|
||||
.Select(t => t.Average(k => (float)k[m_ColumnMap["rpn"]]));
|
||||
var Avg = AvgOfGroup.Average();
|
||||
var Squares = AvgOfGroup.Select(r => (r - Avg) * (r - Avg));
|
||||
var result = (float)Math.Sqrt(Squares.Average());
|
||||
return result;
|
||||
}
|
||||
|
||||
public CalcResult GetCalc(string strSpring, string strTable)
|
||||
{
|
||||
CalcResult result = new CalcResult();
|
||||
|
||||
string strQuery = string.Format("[{0}]='{1}' and [{2}]='{3}'", m_ColumnMap["spring"], strSpring, m_ColumnMap["table"], strTable);
|
||||
DataRow[] rows = m_Data.Select(strQuery);
|
||||
|
||||
if(rows.Length > 0)
|
||||
{
|
||||
result.m_iCnt = rows.Length;
|
||||
result.m_fAvgRPN = rows.Average(r => (float)r[m_ColumnMap["rpn"]]);
|
||||
result.m_fStdRPN = rows.Average(r => (float)Math.Pow((float)r[m_ColumnMap["rpn"]] - result.m_fAvgRPN, 2));
|
||||
result.m_fStdRPN = (float)Math.Sqrt(result.m_fStdRPN);
|
||||
|
||||
result.m_fDiffByForce = CalcDependency(rows, "force");
|
||||
result.m_fDiffByTemp = CalcDependency(rows, "temp");
|
||||
result.m_fDiffByHumid = CalcDependency(rows, "humidity");
|
||||
result.m_fDiffByVel = CalcDependency(rows, "velocity");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
#region get
|
||||
public DataTable GetData()
|
||||
{
|
||||
return m_Data;
|
||||
}
|
||||
|
||||
public string GetFilePath()
|
||||
{
|
||||
return m_strFilePath;
|
||||
}
|
||||
|
||||
public string GetFileName()
|
||||
{
|
||||
return m_strFileName;
|
||||
}
|
||||
|
||||
public List<string> GetSpringList()
|
||||
{
|
||||
return m_SpringList;
|
||||
}
|
||||
|
||||
public List<string> GetTableList()
|
||||
{
|
||||
return m_TableList;
|
||||
}
|
||||
|
||||
public List<string> GetColumns()
|
||||
{
|
||||
return m_ColumnsNames;
|
||||
}
|
||||
|
||||
public List<string> GetActiveColumns()
|
||||
{
|
||||
return m_ActiveColumns;
|
||||
}
|
||||
|
||||
public List<string> GetNonactiveColumns()
|
||||
{
|
||||
return m_NonactiveColumns;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
253
MainForm.Designer.cs
generated
@@ -31,22 +31,52 @@
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
|
||||
this.toolStripMain = new System.Windows.Forms.ToolStrip();
|
||||
this.toolStripButtonOpen = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.toolStripButtonMaterial = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.toolStripButtonResult = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripButtonAnalysis = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.toolStripButtonRadarGraph = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripButtonTrendGraph = new System.Windows.Forms.ToolStripButton();
|
||||
this.statusStrip = new System.Windows.Forms.StatusStrip();
|
||||
this.toolStripStatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.menuStrip = new System.Windows.Forms.MenuStrip();
|
||||
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.openDBToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.recentToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.tableToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.resultTableToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.analysisTableToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.graphToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.radarGraphToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.trendGraphToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.reportToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.allToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.dockPanel = new WeifenLuo.WinFormsUI.Docking.DockPanel();
|
||||
this.toolStripMain.SuspendLayout();
|
||||
this.statusStrip.SuspendLayout();
|
||||
this.menuStrip.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// toolStripMain
|
||||
//
|
||||
this.toolStripMain.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
|
||||
this.toolStripMain.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.toolStripButtonOpen});
|
||||
this.toolStripMain.Location = new System.Drawing.Point(0, 0);
|
||||
this.toolStripButtonOpen,
|
||||
this.toolStripSeparator1,
|
||||
this.toolStripButtonMaterial,
|
||||
this.toolStripSeparator3,
|
||||
this.toolStripButtonResult,
|
||||
this.toolStripButtonAnalysis,
|
||||
this.toolStripSeparator2,
|
||||
this.toolStripButtonRadarGraph,
|
||||
this.toolStripButtonTrendGraph});
|
||||
this.toolStripMain.Location = new System.Drawing.Point(0, 24);
|
||||
this.toolStripMain.Name = "toolStripMain";
|
||||
this.toolStripMain.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
|
||||
this.toolStripMain.Size = new System.Drawing.Size(947, 25);
|
||||
this.toolStripMain.Size = new System.Drawing.Size(1184, 25);
|
||||
this.toolStripMain.TabIndex = 0;
|
||||
this.toolStripMain.Text = "toolStrip1";
|
||||
//
|
||||
@@ -57,16 +87,87 @@
|
||||
this.toolStripButtonOpen.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButtonOpen.Name = "toolStripButtonOpen";
|
||||
this.toolStripButtonOpen.Size = new System.Drawing.Size(23, 22);
|
||||
this.toolStripButtonOpen.Text = "toolStripButton1";
|
||||
this.toolStripButtonOpen.Text = "Open DB";
|
||||
this.toolStripButtonOpen.ToolTipText = "Open DB (Ctrl+O)";
|
||||
this.toolStripButtonOpen.Click += new System.EventHandler(this.toolStripButtonOpen_Click);
|
||||
//
|
||||
// toolStripSeparator1
|
||||
//
|
||||
this.toolStripSeparator1.Name = "toolStripSeparator1";
|
||||
this.toolStripSeparator1.Size = new System.Drawing.Size(6, 25);
|
||||
//
|
||||
// toolStripButtonMaterial
|
||||
//
|
||||
this.toolStripButtonMaterial.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.toolStripButtonMaterial.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButtonMaterial.Image")));
|
||||
this.toolStripButtonMaterial.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButtonMaterial.Name = "toolStripButtonMaterial";
|
||||
this.toolStripButtonMaterial.Size = new System.Drawing.Size(23, 22);
|
||||
this.toolStripButtonMaterial.Text = "toolStripButton1";
|
||||
this.toolStripButtonMaterial.ToolTipText = "Material Pair (Ctrl+M)";
|
||||
this.toolStripButtonMaterial.Click += new System.EventHandler(this.toolStripButtonMaterial_Click);
|
||||
//
|
||||
// toolStripSeparator3
|
||||
//
|
||||
this.toolStripSeparator3.Name = "toolStripSeparator3";
|
||||
this.toolStripSeparator3.Size = new System.Drawing.Size(6, 25);
|
||||
//
|
||||
// toolStripButtonResult
|
||||
//
|
||||
this.toolStripButtonResult.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.toolStripButtonResult.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButtonResult.Image")));
|
||||
this.toolStripButtonResult.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButtonResult.Name = "toolStripButtonResult";
|
||||
this.toolStripButtonResult.Size = new System.Drawing.Size(23, 22);
|
||||
this.toolStripButtonResult.Text = "toolStripButton1";
|
||||
this.toolStripButtonResult.ToolTipText = "Result Table (Ctrl+R)";
|
||||
this.toolStripButtonResult.Click += new System.EventHandler(this.toolStripButtonResult_Click);
|
||||
//
|
||||
// toolStripButtonAnalysis
|
||||
//
|
||||
this.toolStripButtonAnalysis.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.toolStripButtonAnalysis.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButtonAnalysis.Image")));
|
||||
this.toolStripButtonAnalysis.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButtonAnalysis.Name = "toolStripButtonAnalysis";
|
||||
this.toolStripButtonAnalysis.Size = new System.Drawing.Size(23, 22);
|
||||
this.toolStripButtonAnalysis.Text = "toolStripButton2";
|
||||
this.toolStripButtonAnalysis.ToolTipText = "Analysis Table (Ctrl+A)";
|
||||
this.toolStripButtonAnalysis.Click += new System.EventHandler(this.toolStripButtonAnalysis_Click);
|
||||
//
|
||||
// toolStripSeparator2
|
||||
//
|
||||
this.toolStripSeparator2.Name = "toolStripSeparator2";
|
||||
this.toolStripSeparator2.Size = new System.Drawing.Size(6, 25);
|
||||
//
|
||||
// toolStripButtonRadarGraph
|
||||
//
|
||||
this.toolStripButtonRadarGraph.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.toolStripButtonRadarGraph.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButtonRadarGraph.Image")));
|
||||
this.toolStripButtonRadarGraph.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButtonRadarGraph.Name = "toolStripButtonRadarGraph";
|
||||
this.toolStripButtonRadarGraph.Size = new System.Drawing.Size(23, 22);
|
||||
this.toolStripButtonRadarGraph.Text = "toolStripButton3";
|
||||
this.toolStripButtonRadarGraph.ToolTipText = "Radar Graph (Ctrl+D)";
|
||||
this.toolStripButtonRadarGraph.Click += new System.EventHandler(this.toolStripButtonRadarGraph_Click);
|
||||
//
|
||||
// toolStripButtonTrendGraph
|
||||
//
|
||||
this.toolStripButtonTrendGraph.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.toolStripButtonTrendGraph.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButtonTrendGraph.Image")));
|
||||
this.toolStripButtonTrendGraph.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButtonTrendGraph.Name = "toolStripButtonTrendGraph";
|
||||
this.toolStripButtonTrendGraph.Size = new System.Drawing.Size(23, 22);
|
||||
this.toolStripButtonTrendGraph.Text = "toolStripButton4";
|
||||
this.toolStripButtonTrendGraph.ToolTipText = "Trend Graph (Ctrl+T)";
|
||||
this.toolStripButtonTrendGraph.Click += new System.EventHandler(this.toolStripButtonTrendGraph_Click);
|
||||
//
|
||||
// statusStrip
|
||||
//
|
||||
this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.toolStripStatusLabel});
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 623);
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 739);
|
||||
this.statusStrip.Name = "statusStrip";
|
||||
this.statusStrip.Size = new System.Drawing.Size(947, 22);
|
||||
this.statusStrip.Size = new System.Drawing.Size(1184, 22);
|
||||
this.statusStrip.TabIndex = 1;
|
||||
this.statusStrip.Text = "statusStrip1";
|
||||
//
|
||||
@@ -76,30 +177,139 @@
|
||||
this.toolStripStatusLabel.Size = new System.Drawing.Size(122, 17);
|
||||
this.toolStripStatusLabel.Text = "Please open database";
|
||||
//
|
||||
// menuStrip
|
||||
//
|
||||
this.menuStrip.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.menuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.fileToolStripMenuItem,
|
||||
this.tableToolStripMenuItem,
|
||||
this.graphToolStripMenuItem,
|
||||
this.reportToolStripMenuItem});
|
||||
this.menuStrip.Location = new System.Drawing.Point(0, 0);
|
||||
this.menuStrip.Name = "menuStrip";
|
||||
this.menuStrip.Size = new System.Drawing.Size(1184, 24);
|
||||
this.menuStrip.TabIndex = 3;
|
||||
this.menuStrip.Text = "menuStrip1";
|
||||
//
|
||||
// fileToolStripMenuItem
|
||||
//
|
||||
this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.openDBToolStripMenuItem,
|
||||
this.recentToolStripMenuItem,
|
||||
this.exitToolStripMenuItem});
|
||||
this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
|
||||
this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20);
|
||||
this.fileToolStripMenuItem.Text = "File";
|
||||
//
|
||||
// openDBToolStripMenuItem
|
||||
//
|
||||
this.openDBToolStripMenuItem.Name = "openDBToolStripMenuItem";
|
||||
this.openDBToolStripMenuItem.Size = new System.Drawing.Size(123, 22);
|
||||
this.openDBToolStripMenuItem.Text = "Open DB";
|
||||
this.openDBToolStripMenuItem.Click += new System.EventHandler(this.openDBToolStripMenuItem_Click);
|
||||
//
|
||||
// recentToolStripMenuItem
|
||||
//
|
||||
this.recentToolStripMenuItem.Name = "recentToolStripMenuItem";
|
||||
this.recentToolStripMenuItem.Size = new System.Drawing.Size(123, 22);
|
||||
this.recentToolStripMenuItem.Text = "Recent";
|
||||
//
|
||||
// exitToolStripMenuItem
|
||||
//
|
||||
this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
|
||||
this.exitToolStripMenuItem.Size = new System.Drawing.Size(123, 22);
|
||||
this.exitToolStripMenuItem.Text = "Exit";
|
||||
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
|
||||
//
|
||||
// tableToolStripMenuItem
|
||||
//
|
||||
this.tableToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.resultTableToolStripMenuItem,
|
||||
this.analysisTableToolStripMenuItem});
|
||||
this.tableToolStripMenuItem.Name = "tableToolStripMenuItem";
|
||||
this.tableToolStripMenuItem.Size = new System.Drawing.Size(47, 20);
|
||||
this.tableToolStripMenuItem.Text = "Table";
|
||||
//
|
||||
// resultTableToolStripMenuItem
|
||||
//
|
||||
this.resultTableToolStripMenuItem.Name = "resultTableToolStripMenuItem";
|
||||
this.resultTableToolStripMenuItem.Size = new System.Drawing.Size(149, 22);
|
||||
this.resultTableToolStripMenuItem.Text = "Result Table";
|
||||
this.resultTableToolStripMenuItem.Click += new System.EventHandler(this.resultTableToolStripMenuItem_Click);
|
||||
//
|
||||
// analysisTableToolStripMenuItem
|
||||
//
|
||||
this.analysisTableToolStripMenuItem.Name = "analysisTableToolStripMenuItem";
|
||||
this.analysisTableToolStripMenuItem.Size = new System.Drawing.Size(149, 22);
|
||||
this.analysisTableToolStripMenuItem.Text = "Analysis Table";
|
||||
this.analysisTableToolStripMenuItem.Click += new System.EventHandler(this.analysisTableToolStripMenuItem_Click);
|
||||
//
|
||||
// graphToolStripMenuItem
|
||||
//
|
||||
this.graphToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.radarGraphToolStripMenuItem,
|
||||
this.trendGraphToolStripMenuItem});
|
||||
this.graphToolStripMenuItem.Name = "graphToolStripMenuItem";
|
||||
this.graphToolStripMenuItem.Size = new System.Drawing.Size(51, 20);
|
||||
this.graphToolStripMenuItem.Text = "Graph";
|
||||
//
|
||||
// radarGraphToolStripMenuItem
|
||||
//
|
||||
this.radarGraphToolStripMenuItem.Name = "radarGraphToolStripMenuItem";
|
||||
this.radarGraphToolStripMenuItem.Size = new System.Drawing.Size(140, 22);
|
||||
this.radarGraphToolStripMenuItem.Text = "Radar Graph";
|
||||
this.radarGraphToolStripMenuItem.Click += new System.EventHandler(this.radarGraphToolStripMenuItem_Click);
|
||||
//
|
||||
// trendGraphToolStripMenuItem
|
||||
//
|
||||
this.trendGraphToolStripMenuItem.Enabled = false;
|
||||
this.trendGraphToolStripMenuItem.Name = "trendGraphToolStripMenuItem";
|
||||
this.trendGraphToolStripMenuItem.Size = new System.Drawing.Size(140, 22);
|
||||
this.trendGraphToolStripMenuItem.Text = "Trend Graph";
|
||||
this.trendGraphToolStripMenuItem.Click += new System.EventHandler(this.trendGraphToolStripMenuItem_Click);
|
||||
//
|
||||
// reportToolStripMenuItem
|
||||
//
|
||||
this.reportToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.allToolStripMenuItem});
|
||||
this.reportToolStripMenuItem.Name = "reportToolStripMenuItem";
|
||||
this.reportToolStripMenuItem.Size = new System.Drawing.Size(54, 20);
|
||||
this.reportToolStripMenuItem.Text = "Report";
|
||||
//
|
||||
// allToolStripMenuItem
|
||||
//
|
||||
this.allToolStripMenuItem.Name = "allToolStripMenuItem";
|
||||
this.allToolStripMenuItem.Size = new System.Drawing.Size(88, 22);
|
||||
this.allToolStripMenuItem.Text = "All";
|
||||
//
|
||||
// dockPanel
|
||||
//
|
||||
this.dockPanel.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.dockPanel.DocumentStyle = WeifenLuo.WinFormsUI.Docking.DocumentStyle.DockingWindow;
|
||||
this.dockPanel.Location = new System.Drawing.Point(0, 25);
|
||||
this.dockPanel.Location = new System.Drawing.Point(0, 49);
|
||||
this.dockPanel.Name = "dockPanel";
|
||||
this.dockPanel.ShowDocumentIcon = true;
|
||||
this.dockPanel.Size = new System.Drawing.Size(947, 598);
|
||||
this.dockPanel.Size = new System.Drawing.Size(1184, 690);
|
||||
this.dockPanel.TabIndex = 2;
|
||||
//
|
||||
// MainForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(947, 645);
|
||||
this.ClientSize = new System.Drawing.Size(1184, 761);
|
||||
this.Controls.Add(this.dockPanel);
|
||||
this.Controls.Add(this.statusStrip);
|
||||
this.Controls.Add(this.toolStripMain);
|
||||
this.Controls.Add(this.menuStrip);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.MainMenuStrip = this.menuStrip;
|
||||
this.Name = "MainForm";
|
||||
this.Text = "Form1";
|
||||
this.Text = "Material Stick-Slip Analysis";
|
||||
this.toolStripMain.ResumeLayout(false);
|
||||
this.toolStripMain.PerformLayout();
|
||||
this.statusStrip.ResumeLayout(false);
|
||||
this.statusStrip.PerformLayout();
|
||||
this.menuStrip.ResumeLayout(false);
|
||||
this.menuStrip.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
@@ -112,6 +322,27 @@
|
||||
private System.Windows.Forms.StatusStrip statusStrip;
|
||||
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel;
|
||||
private WeifenLuo.WinFormsUI.Docking.DockPanel dockPanel;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
|
||||
private System.Windows.Forms.ToolStripButton toolStripButtonResult;
|
||||
private System.Windows.Forms.ToolStripButton toolStripButtonAnalysis;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
|
||||
private System.Windows.Forms.ToolStripButton toolStripButtonRadarGraph;
|
||||
private System.Windows.Forms.ToolStripButton toolStripButtonTrendGraph;
|
||||
private System.Windows.Forms.MenuStrip menuStrip;
|
||||
private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem openDBToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem recentToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem tableToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem resultTableToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem analysisTableToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem graphToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem radarGraphToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem trendGraphToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem reportToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem allToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripButton toolStripButtonMaterial;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator3;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
183
MainForm.cs
@@ -4,6 +4,7 @@ using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
@@ -14,46 +15,192 @@ namespace friction
|
||||
public partial class MainForm : Form
|
||||
{
|
||||
string m_DBFileName = "";
|
||||
DataHandler m_DataLoader = new DataHandler();
|
||||
TablePanel m_TablePanel = null;
|
||||
RowPanel m_RowPanel = null;
|
||||
DataHandler m_DataHandler = new DataHandler();
|
||||
PanelMaterial m_MaterialPanel = null;
|
||||
PanelResult m_ResultPanel = null;
|
||||
PanelAnalysis m_AnalysisPanel = null;
|
||||
PanelRadarGraph m_RadarGraphPanel = null;
|
||||
PanelTrendGraph m_TrendGraphPanel = null;
|
||||
|
||||
public MainForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
dockPanel.Theme = new VS2015DarkTheme();
|
||||
m_TablePanel = new TablePanel(this);
|
||||
m_RowPanel = new RowPanel(this);
|
||||
m_MaterialPanel = new PanelMaterial(this);
|
||||
m_ResultPanel = new PanelResult(this);
|
||||
m_AnalysisPanel = new PanelAnalysis(this);
|
||||
m_RadarGraphPanel = new PanelRadarGraph(this);
|
||||
m_TrendGraphPanel = new PanelTrendGraph(this, m_DataHandler);
|
||||
|
||||
Theme.Apply(this);
|
||||
Theme.Apply(menuStrip);
|
||||
Theme.Apply(toolStripMain);
|
||||
Theme.Apply(statusStrip);
|
||||
|
||||
Config.Init();
|
||||
UpdateRecentFile();
|
||||
}
|
||||
|
||||
private void toolStripButtonOpen_Click(object sender, EventArgs e)
|
||||
void UpdateRecentFile()
|
||||
{
|
||||
recentToolStripMenuItem.DropDownItems.Clear();
|
||||
|
||||
foreach (string file in Enumerable.Reverse(Config.OPTION.m_RecentList))
|
||||
{
|
||||
ToolStripItem item = recentToolStripMenuItem.DropDownItems.Add(file);
|
||||
item.BackColor = Theme.Backcolor;
|
||||
item.ForeColor = Theme.Forecolor;
|
||||
item.Click += RecentToolStripMenuItem_Click;
|
||||
}
|
||||
}
|
||||
|
||||
private void RecentToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
string strFile = ((ToolStripItem)sender).Text;
|
||||
OpenDB(strFile);
|
||||
}
|
||||
|
||||
private void OpenDB(string strFile=null)
|
||||
{
|
||||
if (strFile == null)
|
||||
{
|
||||
OpenFileDialog ofd = new OpenFileDialog();
|
||||
ofd.Filter = "엑셀 파일 (*.xlsx)|*.xlsx|엑셀 파일 (*.xls)|*.xls|전체|*";
|
||||
DialogResult result = ofd.ShowDialog();
|
||||
if (result == DialogResult.OK)
|
||||
{
|
||||
m_DBFileName = ofd.FileName;
|
||||
m_DataLoader.LoadData2(m_DBFileName);
|
||||
UpdateTablePanel();
|
||||
}
|
||||
else
|
||||
{
|
||||
m_DBFileName = strFile;
|
||||
}
|
||||
|
||||
|
||||
m_DataHandler.LoadData(m_DBFileName);
|
||||
|
||||
toolStripButtonTrendGraph.Enabled = false;
|
||||
toolStripButtonRadarGraph.Enabled = true;
|
||||
|
||||
m_MaterialPanel.UpdateData(m_DataHandler);
|
||||
OpenPanel(m_MaterialPanel);
|
||||
|
||||
m_ResultPanel.UpdateData(m_DataHandler);
|
||||
OpenPanel(m_ResultPanel);
|
||||
|
||||
m_AnalysisPanel.Reset();
|
||||
m_AnalysisPanel.UpdateData(m_DataHandler);
|
||||
OpenPanel(m_AnalysisPanel);
|
||||
|
||||
toolStripStatusLabel.Text = m_DBFileName;
|
||||
|
||||
Config.OPTION.AddRecentFile(m_DBFileName);
|
||||
UpdateRecentFile();
|
||||
}
|
||||
|
||||
private void OpenPanel(DockContent panel)
|
||||
{
|
||||
if (panel.Visible == false)
|
||||
panel.Show(dockPanel);
|
||||
if (panel.IsHidden == true)
|
||||
panel.IsHidden = false;
|
||||
|
||||
if(panel.DockState == DockState.DockTopAutoHide ||
|
||||
panel.DockState == DockState.DockBottomAutoHide ||
|
||||
panel.DockState == DockState.DockLeftAutoHide ||
|
||||
panel.DockState == DockState.DockRightAutoHide)
|
||||
{
|
||||
dockPanel.ActiveAutoHideContent = panel;
|
||||
}
|
||||
}
|
||||
|
||||
private void UpdateTablePanel()
|
||||
#region Events from menu
|
||||
private void openDBToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
m_TablePanel.UpdateData(m_DataLoader);
|
||||
if(m_TablePanel.Visible == false)
|
||||
m_TablePanel.Show(dockPanel);
|
||||
OpenDB();
|
||||
}
|
||||
|
||||
public void OnApplyData()
|
||||
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
m_RowPanel.UpdateData(m_DataLoader);
|
||||
if (m_RowPanel.Visible == false)
|
||||
m_RowPanel.Show(dockPanel);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void resultTableToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenPanel(m_ResultPanel);
|
||||
}
|
||||
|
||||
private void analysisTableToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenPanel(m_AnalysisPanel);
|
||||
}
|
||||
|
||||
private void radarGraphToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenPanel(m_RadarGraphPanel);
|
||||
}
|
||||
|
||||
private void trendGraphToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenPanel(m_TrendGraphPanel);
|
||||
m_TrendGraphPanel.UpdateGraph();
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Events from toolbox
|
||||
private void toolStripButtonOpen_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenDB();
|
||||
}
|
||||
|
||||
private void toolStripButtonMaterial_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenPanel(m_MaterialPanel);
|
||||
}
|
||||
|
||||
private void toolStripButtonResult_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenPanel(m_ResultPanel);
|
||||
}
|
||||
|
||||
private void toolStripButtonAnalysis_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenPanel(m_AnalysisPanel);
|
||||
}
|
||||
|
||||
private void toolStripButtonRadarGraph_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenPanel(m_RadarGraphPanel);
|
||||
}
|
||||
|
||||
private void toolStripButtonTrendGraph_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenPanel(m_TrendGraphPanel);
|
||||
m_TrendGraphPanel.UpdateGraph();
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Events from panels
|
||||
public void OnApplyData(string strSpring, string strTable)
|
||||
{
|
||||
if (strTable == "All")
|
||||
{
|
||||
trendGraphToolStripMenuItem.Enabled = toolStripButtonTrendGraph.Enabled = false;
|
||||
radarGraphToolStripMenuItem.Enabled = toolStripButtonRadarGraph.Enabled = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
trendGraphToolStripMenuItem.Enabled = toolStripButtonTrendGraph.Enabled = true;
|
||||
radarGraphToolStripMenuItem.Enabled = toolStripButtonRadarGraph.Enabled = false;
|
||||
|
||||
if (m_TrendGraphPanel.Visible == true)
|
||||
m_TrendGraphPanel.UpdateGraph();
|
||||
}
|
||||
|
||||
m_DataHandler.SetSelectedMaterial(strSpring, strTable);
|
||||
m_AnalysisPanel.UpdateData(m_DataHandler);
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
6328
MainForm.resx
232
PanelAnalysis.Designer.cs
generated
Normal file
@@ -0,0 +1,232 @@
|
||||
namespace friction
|
||||
{
|
||||
partial class PanelAnalysis
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.dgvAnalysis = new System.Windows.Forms.DataGridView();
|
||||
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.lbInfo11 = new System.Windows.Forms.Label();
|
||||
this.lbInfo12 = new System.Windows.Forms.Label();
|
||||
this.lbInfo13 = new System.Windows.Forms.Label();
|
||||
this.lbInfo21 = new System.Windows.Forms.Label();
|
||||
this.lbInfo22 = new System.Windows.Forms.Label();
|
||||
this.lbInfo23 = new System.Windows.Forms.Label();
|
||||
this.lbInfo24 = new System.Windows.Forms.Label();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dgvAnalysis)).BeginInit();
|
||||
this.tableLayoutPanel1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// dgvAnalysis
|
||||
//
|
||||
this.dgvAnalysis.AllowUserToAddRows = false;
|
||||
this.dgvAnalysis.AllowUserToDeleteRows = false;
|
||||
this.dgvAnalysis.AllowUserToOrderColumns = true;
|
||||
this.dgvAnalysis.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.dgvAnalysis.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||
this.dgvAnalysis.Location = new System.Drawing.Point(12, 12);
|
||||
this.dgvAnalysis.Name = "dgvAnalysis";
|
||||
this.dgvAnalysis.ReadOnly = true;
|
||||
this.dgvAnalysis.RowTemplate.Height = 23;
|
||||
this.dgvAnalysis.Size = new System.Drawing.Size(856, 567);
|
||||
this.dgvAnalysis.TabIndex = 0;
|
||||
//
|
||||
// tableLayoutPanel1
|
||||
//
|
||||
this.tableLayoutPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.tableLayoutPanel1.ColumnCount = 4;
|
||||
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 20F));
|
||||
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
|
||||
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 20F));
|
||||
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
|
||||
this.tableLayoutPanel1.Controls.Add(this.label1, 0, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.label2, 2, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.lbInfo11, 1, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.lbInfo12, 1, 1);
|
||||
this.tableLayoutPanel1.Controls.Add(this.lbInfo13, 1, 2);
|
||||
this.tableLayoutPanel1.Controls.Add(this.lbInfo21, 3, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.lbInfo22, 3, 1);
|
||||
this.tableLayoutPanel1.Controls.Add(this.lbInfo23, 3, 2);
|
||||
this.tableLayoutPanel1.Controls.Add(this.lbInfo24, 3, 3);
|
||||
this.tableLayoutPanel1.Location = new System.Drawing.Point(12, 585);
|
||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
this.tableLayoutPanel1.RowCount = 5;
|
||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tableLayoutPanel1.Size = new System.Drawing.Size(856, 62);
|
||||
this.tableLayoutPanel1.TabIndex = 1;
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label1.Location = new System.Drawing.Point(3, 0);
|
||||
this.label1.Name = "label1";
|
||||
this.tableLayoutPanel1.SetRowSpan(this.label1, 5);
|
||||
this.label1.Size = new System.Drawing.Size(165, 62);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "For smaller than 10 number of tests (marked red) results should be considered car" +
|
||||
"efully";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(430, 0);
|
||||
this.label2.Name = "label2";
|
||||
this.tableLayoutPanel1.SetRowSpan(this.label2, 5);
|
||||
this.label2.Size = new System.Drawing.Size(135, 60);
|
||||
this.label2.TabIndex = 1;
|
||||
this.label2.Text = "For large standard deviations indicating a possible change of Stick-Slip Risk Cla" +
|
||||
"ss (marked red)";
|
||||
//
|
||||
// lbInfo11
|
||||
//
|
||||
this.lbInfo11.AutoSize = true;
|
||||
this.lbInfo11.BackColor = System.Drawing.Color.LimeGreen;
|
||||
this.lbInfo11.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.lbInfo11.ForeColor = System.Drawing.Color.Silver;
|
||||
this.lbInfo11.Location = new System.Drawing.Point(174, 0);
|
||||
this.lbInfo11.Name = "lbInfo11";
|
||||
this.lbInfo11.Size = new System.Drawing.Size(250, 12);
|
||||
this.lbInfo11.TabIndex = 2;
|
||||
this.lbInfo11.Text = "No Stick-Slip Risk";
|
||||
//
|
||||
// lbInfo12
|
||||
//
|
||||
this.lbInfo12.AutoSize = true;
|
||||
this.lbInfo12.BackColor = System.Drawing.Color.Gold;
|
||||
this.lbInfo12.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.lbInfo12.ForeColor = System.Drawing.Color.Silver;
|
||||
this.lbInfo12.Location = new System.Drawing.Point(174, 12);
|
||||
this.lbInfo12.Name = "lbInfo12";
|
||||
this.lbInfo12.Size = new System.Drawing.Size(250, 12);
|
||||
this.lbInfo12.TabIndex = 2;
|
||||
this.lbInfo12.Text = "Potential S-Slip Risk";
|
||||
//
|
||||
// lbInfo13
|
||||
//
|
||||
this.lbInfo13.AutoSize = true;
|
||||
this.lbInfo13.BackColor = System.Drawing.Color.OrangeRed;
|
||||
this.lbInfo13.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.lbInfo13.ForeColor = System.Drawing.Color.Silver;
|
||||
this.lbInfo13.Location = new System.Drawing.Point(174, 24);
|
||||
this.lbInfo13.Name = "lbInfo13";
|
||||
this.lbInfo13.Size = new System.Drawing.Size(250, 12);
|
||||
this.lbInfo13.TabIndex = 2;
|
||||
this.lbInfo13.Text = "High Stick-Slip Risk";
|
||||
//
|
||||
// lbInfo21
|
||||
//
|
||||
this.lbInfo21.AutoSize = true;
|
||||
this.lbInfo21.BackColor = System.Drawing.Color.LimeGreen;
|
||||
this.lbInfo21.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.lbInfo21.ForeColor = System.Drawing.Color.Silver;
|
||||
this.lbInfo21.Location = new System.Drawing.Point(601, 0);
|
||||
this.lbInfo21.Name = "lbInfo21";
|
||||
this.lbInfo21.Size = new System.Drawing.Size(252, 12);
|
||||
this.lbInfo21.TabIndex = 2;
|
||||
this.lbInfo21.Text = "No Dependancy";
|
||||
//
|
||||
// lbInfo22
|
||||
//
|
||||
this.lbInfo22.AutoSize = true;
|
||||
this.lbInfo22.BackColor = System.Drawing.Color.Gold;
|
||||
this.lbInfo22.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.lbInfo22.ForeColor = System.Drawing.Color.Silver;
|
||||
this.lbInfo22.Location = new System.Drawing.Point(601, 12);
|
||||
this.lbInfo22.Name = "lbInfo22";
|
||||
this.lbInfo22.Size = new System.Drawing.Size(252, 12);
|
||||
this.lbInfo22.TabIndex = 2;
|
||||
this.lbInfo22.Text = "Potential Dependancy";
|
||||
//
|
||||
// lbInfo23
|
||||
//
|
||||
this.lbInfo23.AutoSize = true;
|
||||
this.lbInfo23.BackColor = System.Drawing.Color.OrangeRed;
|
||||
this.lbInfo23.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.lbInfo23.ForeColor = System.Drawing.Color.Silver;
|
||||
this.lbInfo23.Location = new System.Drawing.Point(601, 24);
|
||||
this.lbInfo23.Name = "lbInfo23";
|
||||
this.lbInfo23.Size = new System.Drawing.Size(252, 12);
|
||||
this.lbInfo23.TabIndex = 2;
|
||||
this.lbInfo23.Text = "Obvious Dependancy";
|
||||
//
|
||||
// lbInfo24
|
||||
//
|
||||
this.lbInfo24.AutoSize = true;
|
||||
this.lbInfo24.BackColor = System.Drawing.Color.DarkGray;
|
||||
this.lbInfo24.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.lbInfo24.ForeColor = System.Drawing.Color.Silver;
|
||||
this.lbInfo24.Location = new System.Drawing.Point(601, 36);
|
||||
this.lbInfo24.Name = "lbInfo24";
|
||||
this.lbInfo24.Size = new System.Drawing.Size(252, 12);
|
||||
this.lbInfo24.TabIndex = 2;
|
||||
this.lbInfo24.Text = "Not Enough Data";
|
||||
//
|
||||
// PanelAnalysis
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(880, 649);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.tableLayoutPanel1);
|
||||
this.Controls.Add(this.dgvAnalysis);
|
||||
this.HideOnClose = true;
|
||||
this.Name = "PanelAnalysis";
|
||||
this.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.Document;
|
||||
this.TabText = "Analysis Table";
|
||||
this.Text = "Analysis Table";
|
||||
((System.ComponentModel.ISupportInitialize)(this.dgvAnalysis)).EndInit();
|
||||
this.tableLayoutPanel1.ResumeLayout(false);
|
||||
this.tableLayoutPanel1.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.DataGridView dgvAnalysis;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label lbInfo11;
|
||||
private System.Windows.Forms.Label lbInfo12;
|
||||
private System.Windows.Forms.Label lbInfo13;
|
||||
private System.Windows.Forms.Label lbInfo21;
|
||||
private System.Windows.Forms.Label lbInfo22;
|
||||
private System.Windows.Forms.Label lbInfo23;
|
||||
private System.Windows.Forms.Label lbInfo24;
|
||||
}
|
||||
}
|
||||
136
PanelAnalysis.cs
Normal file
@@ -0,0 +1,136 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public partial class PanelAnalysis : DockContent
|
||||
{
|
||||
MainForm m_Owner = null;
|
||||
|
||||
string m_CurSpring = "";
|
||||
|
||||
public PanelAnalysis(MainForm owner)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
m_Owner = owner;
|
||||
|
||||
Theme.Apply(this);
|
||||
Theme.Apply(dgvAnalysis);
|
||||
|
||||
typeof(DataGridView).InvokeMember("DoubleBuffered",
|
||||
BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.SetProperty,
|
||||
null, dgvAnalysis, new object[] { true });
|
||||
|
||||
lbInfo11.BackColor = Theme.Green;
|
||||
lbInfo12.BackColor = Theme.Yellow;
|
||||
lbInfo13.BackColor = Theme.Red;
|
||||
lbInfo21.BackColor = Theme.Green;
|
||||
lbInfo22.BackColor = Theme.Yellow;
|
||||
lbInfo23.BackColor = Theme.Red;
|
||||
lbInfo24.BackColor = Theme.Gray;
|
||||
}
|
||||
|
||||
public void Reset()
|
||||
{
|
||||
m_CurSpring = "";
|
||||
}
|
||||
|
||||
private Color GetDependancyColor(float fValue, int iCnt)
|
||||
{
|
||||
Config.ANALYSIS.DEPENDANCY Type = Config.ANALYSIS.GetDependancy(fValue, iCnt);
|
||||
switch(Type)
|
||||
{
|
||||
case Config.ANALYSIS.DEPENDANCY.NO:
|
||||
return Theme.Green;
|
||||
|
||||
case Config.ANALYSIS.DEPENDANCY.POTENTIAL:
|
||||
return Theme.Yellow;
|
||||
|
||||
case Config.ANALYSIS.DEPENDANCY.HIGH:
|
||||
return Theme.Red;
|
||||
|
||||
case Config.ANALYSIS.DEPENDANCY.NOT_ENNOUGH_DATA:
|
||||
return Theme.Gray;
|
||||
}
|
||||
|
||||
return Theme.White;
|
||||
}
|
||||
|
||||
public void UpdateData(DataHandler data)
|
||||
{
|
||||
string strSpring = data.GetCurSpring();
|
||||
|
||||
if (strSpring == m_CurSpring)
|
||||
return;
|
||||
|
||||
dgvAnalysis.Columns.Clear();
|
||||
dgvAnalysis.Rows.Clear();
|
||||
|
||||
dgvAnalysis.DefaultCellStyle.Format = "N2";
|
||||
|
||||
dgvAnalysis.Columns.Add("chTable", "Table");
|
||||
dgvAnalysis.Columns.Add("chNoTest", "No. of Tests");
|
||||
dgvAnalysis.Columns.Add("chAvg", "Average RPN");
|
||||
dgvAnalysis.Columns.Add("chSTD", "Standard Deviation");
|
||||
dgvAnalysis.Columns.Add("chForce", "Normal Force");
|
||||
dgvAnalysis.Columns.Add("chTemp", "Temperature");
|
||||
dgvAnalysis.Columns.Add("chHumi", "Rel. Humidity");
|
||||
dgvAnalysis.Columns.Add("chVel", "Velocity");
|
||||
|
||||
foreach (string strTable in data.GetTableList())
|
||||
{
|
||||
DataHandler.CalcResult result = data.GetCalc(strSpring, strTable);
|
||||
|
||||
int iIdx = dgvAnalysis.Rows.Add(strTable, result.m_iCnt, result.m_fAvgRPN, result.m_fStdRPN, result.m_fDiffByForce, result.m_fDiffByTemp, result.m_fDiffByHumid, result.m_fDiffByVel);
|
||||
|
||||
|
||||
Config.ANALYSIS.RISK RiskType = Config.ANALYSIS.GetRisk(result.m_fAvgRPN);
|
||||
Config.ANALYSIS.DEPENDANCY DependancyType = Config.ANALYSIS.GetDependancy(result.m_fStdRPN, result.m_iCnt);
|
||||
|
||||
if(DependancyType == Config.ANALYSIS.DEPENDANCY.NOT_ENNOUGH_DATA)
|
||||
{
|
||||
for (int i = 2; i <= 7; i++)
|
||||
{
|
||||
dgvAnalysis.Rows[iIdx].Cells[i].Style.BackColor = Theme.Gray;
|
||||
dgvAnalysis.Rows[iIdx].Cells[i].Style.ForeColor = Theme.Backcolor;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (RiskType)
|
||||
{
|
||||
case Config.ANALYSIS.RISK.NO:
|
||||
dgvAnalysis.Rows[iIdx].Cells[2].Style.BackColor = Theme.Green;
|
||||
break;
|
||||
|
||||
case Config.ANALYSIS.RISK.POTENTIAL:
|
||||
dgvAnalysis.Rows[iIdx].Cells[2].Style.BackColor = Theme.Yellow;
|
||||
break;
|
||||
|
||||
case Config.ANALYSIS.RISK.HIGH:
|
||||
dgvAnalysis.Rows[iIdx].Cells[2].Style.BackColor = Theme.Red;
|
||||
break;
|
||||
}
|
||||
|
||||
dgvAnalysis.Rows[iIdx].Cells[3].Style.BackColor = GetDependancyColor(result.m_fStdRPN, result.m_iCnt);
|
||||
dgvAnalysis.Rows[iIdx].Cells[4].Style.BackColor = GetDependancyColor(result.m_fDiffByForce, result.m_iCnt);
|
||||
dgvAnalysis.Rows[iIdx].Cells[5].Style.BackColor = GetDependancyColor(result.m_fDiffByTemp, result.m_iCnt);
|
||||
dgvAnalysis.Rows[iIdx].Cells[6].Style.BackColor = GetDependancyColor(result.m_fDiffByHumid, result.m_iCnt);
|
||||
dgvAnalysis.Rows[iIdx].Cells[7].Style.BackColor = GetDependancyColor(result.m_fDiffByVel, result.m_iCnt);
|
||||
}
|
||||
}
|
||||
|
||||
m_CurSpring = strSpring;
|
||||
}
|
||||
}
|
||||
}
|
||||
126
PanelMaterial.Designer.cs
generated
Normal file
@@ -0,0 +1,126 @@
|
||||
namespace friction
|
||||
{
|
||||
partial class PanelMaterial
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.cbMaterialTable = new System.Windows.Forms.ComboBox();
|
||||
this.cbMaterialSpring = new System.Windows.Forms.ComboBox();
|
||||
this.btApply = new System.Windows.Forms.Button();
|
||||
this.lbFileName = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// cbMaterialTable
|
||||
//
|
||||
this.cbMaterialTable.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.cbMaterialTable.FormattingEnabled = true;
|
||||
this.cbMaterialTable.Location = new System.Drawing.Point(32, 122);
|
||||
this.cbMaterialTable.Name = "cbMaterialTable";
|
||||
this.cbMaterialTable.Size = new System.Drawing.Size(121, 20);
|
||||
this.cbMaterialTable.TabIndex = 1;
|
||||
//
|
||||
// cbMaterialSpring
|
||||
//
|
||||
this.cbMaterialSpring.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.cbMaterialSpring.FormattingEnabled = true;
|
||||
this.cbMaterialSpring.Location = new System.Drawing.Point(32, 61);
|
||||
this.cbMaterialSpring.Name = "cbMaterialSpring";
|
||||
this.cbMaterialSpring.Size = new System.Drawing.Size(121, 20);
|
||||
this.cbMaterialSpring.TabIndex = 2;
|
||||
//
|
||||
// btApply
|
||||
//
|
||||
this.btApply.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.btApply.Location = new System.Drawing.Point(32, 179);
|
||||
this.btApply.Name = "btApply";
|
||||
this.btApply.Size = new System.Drawing.Size(75, 23);
|
||||
this.btApply.TabIndex = 3;
|
||||
this.btApply.Text = "Apply";
|
||||
this.btApply.UseVisualStyleBackColor = true;
|
||||
this.btApply.Click += new System.EventHandler(this.btApply_Click);
|
||||
//
|
||||
// lbFileName
|
||||
//
|
||||
this.lbFileName.AutoSize = true;
|
||||
this.lbFileName.Font = new System.Drawing.Font("Malgun Gothic", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
|
||||
this.lbFileName.Location = new System.Drawing.Point(7, 9);
|
||||
this.lbFileName.Name = "lbFileName";
|
||||
this.lbFileName.Size = new System.Drawing.Size(0, 25);
|
||||
this.lbFileName.TabIndex = 4;
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(30, 46);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(90, 12);
|
||||
this.label2.TabIndex = 5;
|
||||
this.label2.Text = "Material Spring";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(30, 107);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(86, 12);
|
||||
this.label3.TabIndex = 6;
|
||||
this.label3.Text = "Material Table";
|
||||
//
|
||||
// PanelMaterial
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(284, 261);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.lbFileName);
|
||||
this.Controls.Add(this.btApply);
|
||||
this.Controls.Add(this.cbMaterialSpring);
|
||||
this.Controls.Add(this.cbMaterialTable);
|
||||
this.HideOnClose = true;
|
||||
this.Name = "PanelMaterial";
|
||||
this.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.DockLeft;
|
||||
this.TabText = "Material Pair";
|
||||
this.Text = "Material Pair";
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ComboBox cbMaterialTable;
|
||||
private System.Windows.Forms.ComboBox cbMaterialSpring;
|
||||
private System.Windows.Forms.Button btApply;
|
||||
private System.Windows.Forms.Label lbFileName;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label3;
|
||||
}
|
||||
}
|
||||
57
PanelMaterial.cs
Normal file
@@ -0,0 +1,57 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public partial class PanelMaterial : DockContent
|
||||
{
|
||||
MainForm m_Owner = null;
|
||||
|
||||
public PanelMaterial(MainForm owner)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
m_Owner = owner;
|
||||
this.ApplyTheme();
|
||||
|
||||
Theme.Apply(this);
|
||||
Theme.Apply(cbMaterialSpring);
|
||||
Theme.Apply(cbMaterialTable);
|
||||
Theme.Apply(btApply);
|
||||
}
|
||||
|
||||
public void UpdateData(DataHandler data)
|
||||
{
|
||||
var SpringList = data.GetSpringList();
|
||||
var TableList = data.GetTableList();
|
||||
|
||||
cbMaterialSpring.Items.Clear();
|
||||
foreach (var x in SpringList)
|
||||
cbMaterialSpring.Items.Add(x);
|
||||
cbMaterialSpring.SelectedIndex = 0;
|
||||
|
||||
cbMaterialTable.Items.Clear();
|
||||
cbMaterialTable.Items.Add("All");
|
||||
foreach (var x in TableList)
|
||||
cbMaterialTable.Items.Add(x);
|
||||
cbMaterialTable.SelectedIndex = 0;
|
||||
|
||||
lbFileName.Text = data.GetFileName();
|
||||
|
||||
m_Owner.OnApplyData((string)cbMaterialSpring.SelectedItem, (string)cbMaterialTable.SelectedItem);
|
||||
}
|
||||
|
||||
private void btApply_Click(object sender, EventArgs e)
|
||||
{
|
||||
m_Owner.OnApplyData((string)cbMaterialSpring.SelectedItem, (string)cbMaterialTable.SelectedItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
50
PanelRadarGraph.Designer.cs
generated
Normal file
@@ -0,0 +1,50 @@
|
||||
namespace friction
|
||||
{
|
||||
partial class PanelRadarGraph
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// PanelRadarGraph
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(284, 261);
|
||||
this.ControlBox = false;
|
||||
this.HideOnClose = true;
|
||||
this.Name = "PanelRadarGraph";
|
||||
this.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.Document;
|
||||
this.TabText = "Radar Graph";
|
||||
this.Text = "Radar Graph";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
@@ -11,21 +11,15 @@ using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public partial class RowPanel : DockContent
|
||||
public partial class PanelRadarGraph : DockContent
|
||||
{
|
||||
MainForm m_Owner = null;
|
||||
|
||||
public RowPanel(MainForm owner)
|
||||
public PanelRadarGraph(MainForm owner)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
m_Owner = owner;
|
||||
}
|
||||
|
||||
public void UpdateData(DataHandler dataHandler)
|
||||
{
|
||||
dgvData.DataSource = dataHandler.GetData();
|
||||
dgvData.Update();
|
||||
}
|
||||
}
|
||||
}
|
||||
120
PanelRadarGraph.resx
Normal file
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
57
RowPanel.Designer.cs → PanelResult.Designer.cs
generated
@@ -1,6 +1,6 @@
|
||||
namespace friction
|
||||
{
|
||||
partial class RowPanel
|
||||
partial class PanelResult
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
@@ -28,13 +28,18 @@
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.Windows.Forms.ListViewGroup listViewGroup1 = new System.Windows.Forms.ListViewGroup("Active Columns", System.Windows.Forms.HorizontalAlignment.Left);
|
||||
System.Windows.Forms.ListViewGroup listViewGroup2 = new System.Windows.Forms.ListViewGroup("Nonactive Columns", System.Windows.Forms.HorizontalAlignment.Left);
|
||||
this.dgvData = new System.Windows.Forms.DataGridView();
|
||||
this.lbColumn = new System.Windows.Forms.CheckedListBox();
|
||||
this.lvColumn = new System.Windows.Forms.ListView();
|
||||
this.lvchColumns = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
|
||||
((System.ComponentModel.ISupportInitialize)(this.dgvData)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// dgvData
|
||||
//
|
||||
this.dgvData.AllowUserToAddRows = false;
|
||||
this.dgvData.AllowUserToDeleteRows = false;
|
||||
this.dgvData.AllowUserToOrderColumns = true;
|
||||
this.dgvData.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
@@ -42,31 +47,54 @@
|
||||
this.dgvData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||
this.dgvData.Location = new System.Drawing.Point(3, 3);
|
||||
this.dgvData.Name = "dgvData";
|
||||
this.dgvData.ReadOnly = true;
|
||||
this.dgvData.RowTemplate.Height = 23;
|
||||
this.dgvData.Size = new System.Drawing.Size(713, 724);
|
||||
this.dgvData.TabIndex = 0;
|
||||
//
|
||||
// lbColumn
|
||||
// lvColumn
|
||||
//
|
||||
this.lbColumn.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
this.lvColumn.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.lbColumn.FormattingEnabled = true;
|
||||
this.lbColumn.Location = new System.Drawing.Point(719, 3);
|
||||
this.lbColumn.Name = "lbColumn";
|
||||
this.lbColumn.Size = new System.Drawing.Size(200, 724);
|
||||
this.lbColumn.TabIndex = 1;
|
||||
this.lvColumn.CheckBoxes = true;
|
||||
this.lvColumn.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||
this.lvchColumns});
|
||||
this.lvColumn.FullRowSelect = true;
|
||||
listViewGroup1.Header = "Active Columns";
|
||||
listViewGroup1.Name = "lvgActiveColumn";
|
||||
listViewGroup2.Header = "Nonactive Columns";
|
||||
listViewGroup2.Name = "lbgNonactiveColumn";
|
||||
this.lvColumn.Groups.AddRange(new System.Windows.Forms.ListViewGroup[] {
|
||||
listViewGroup1,
|
||||
listViewGroup2});
|
||||
this.lvColumn.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
||||
this.lvColumn.Location = new System.Drawing.Point(722, 3);
|
||||
this.lvColumn.MultiSelect = false;
|
||||
this.lvColumn.Name = "lvColumn";
|
||||
this.lvColumn.Size = new System.Drawing.Size(199, 724);
|
||||
this.lvColumn.TabIndex = 1;
|
||||
this.lvColumn.UseCompatibleStateImageBehavior = false;
|
||||
this.lvColumn.View = System.Windows.Forms.View.Details;
|
||||
this.lvColumn.ItemChecked += new System.Windows.Forms.ItemCheckedEventHandler(this.lvColumn_ItemChecked);
|
||||
//
|
||||
// RowPanel
|
||||
// lvchColumns
|
||||
//
|
||||
this.lvchColumns.Text = "Columns";
|
||||
this.lvchColumns.Width = 175;
|
||||
//
|
||||
// PanelResult
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(922, 723);
|
||||
this.Controls.Add(this.lbColumn);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.lvColumn);
|
||||
this.Controls.Add(this.dgvData);
|
||||
this.HideOnClose = true;
|
||||
this.Name = "RowPanel";
|
||||
this.Name = "PanelResult";
|
||||
this.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.Document;
|
||||
this.Text = "Row Data";
|
||||
this.TabText = "Result Table";
|
||||
this.Text = "Result Table";
|
||||
((System.ComponentModel.ISupportInitialize)(this.dgvData)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
@@ -75,6 +103,7 @@
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.DataGridView dgvData;
|
||||
private System.Windows.Forms.CheckedListBox lbColumn;
|
||||
private System.Windows.Forms.ListView lvColumn;
|
||||
private System.Windows.Forms.ColumnHeader lvchColumns;
|
||||
}
|
||||
}
|
||||
93
PanelResult.cs
Normal file
@@ -0,0 +1,93 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public partial class PanelResult : DockContent
|
||||
{
|
||||
MainForm m_Owner = null;
|
||||
|
||||
public PanelResult(MainForm owner)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
m_Owner = owner;
|
||||
|
||||
Theme.Apply(this);
|
||||
Theme.Apply(dgvData);
|
||||
Theme.Apply(lvColumn);
|
||||
|
||||
typeof(DataGridView).InvokeMember("DoubleBuffered",
|
||||
BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.SetProperty,
|
||||
null, dgvData, new object[] { true });
|
||||
dgvData.CellFormatting += DgvData_CellFormatting;
|
||||
}
|
||||
|
||||
private void DgvData_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
|
||||
{
|
||||
DataGridViewRow row = dgvData.Rows[e.RowIndex];
|
||||
if(e.ColumnIndex == row.Cells["Risk priority number"].ColumnIndex)
|
||||
{
|
||||
if ((float)e.Value <= 3)
|
||||
e.CellStyle.BackColor = Theme.Green;
|
||||
else if ((float)e.Value <= 5)
|
||||
e.CellStyle.BackColor = Theme.Yellow;
|
||||
else
|
||||
e.CellStyle.BackColor = Theme.Red;
|
||||
}
|
||||
}
|
||||
|
||||
public void UpdateData(DataHandler data)
|
||||
{
|
||||
dgvData.DataSource = data.GetData();
|
||||
dgvData.DefaultCellStyle.Format = "N2";
|
||||
|
||||
Dictionary<string, bool> CacheChecked = new Dictionary<string, bool>();
|
||||
foreach (ListViewItem item in lvColumn.Items)
|
||||
{
|
||||
string key = item.SubItems[0].Text;
|
||||
bool bChecked = item.Checked;
|
||||
CacheChecked.Add(key, bChecked);
|
||||
}
|
||||
|
||||
lvColumn.Groups[0].Items.Clear();
|
||||
lvColumn.Groups[1].Items.Clear();
|
||||
lvColumn.Items.Clear();
|
||||
|
||||
List<List<string>> Columns = new List<List<string>>() { data.GetActiveColumns(), data.GetNonactiveColumns() };
|
||||
for(int iGroup=0; iGroup<Columns.Count; iGroup++)
|
||||
{
|
||||
foreach(string col in Columns[iGroup])
|
||||
{
|
||||
ListViewItem item = new ListViewItem(new string[] { col });
|
||||
item.Text = col;
|
||||
if (CacheChecked.ContainsKey(col) == true)
|
||||
item.Checked = CacheChecked[col];
|
||||
else if (iGroup == 0)
|
||||
item.Checked = true;
|
||||
else
|
||||
item.Checked = false;
|
||||
lvColumn.Items.Add(item);
|
||||
lvColumn.Groups[iGroup].Items.Add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void lvColumn_ItemChecked(object sender, ItemCheckedEventArgs e)
|
||||
{
|
||||
string strColName = e.Item.SubItems[0].Text;
|
||||
bool bShow = e.Item.Checked;
|
||||
|
||||
dgvData.Columns[strColName].Visible = bShow;
|
||||
}
|
||||
}
|
||||
}
|
||||
120
PanelResult.resx
Normal file
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
115
PanelTrendGraph.Designer.cs
generated
Normal file
@@ -0,0 +1,115 @@
|
||||
namespace friction
|
||||
{
|
||||
partial class PanelTrendGraph
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.trendChart = new LiveCharts.WinForms.CartesianChart();
|
||||
this.rbHumidity = new System.Windows.Forms.RadioButton();
|
||||
this.rbTemp = new System.Windows.Forms.RadioButton();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// trendChart
|
||||
//
|
||||
this.trendChart.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.trendChart.Location = new System.Drawing.Point(8, 59);
|
||||
this.trendChart.Name = "trendChart";
|
||||
this.trendChart.Size = new System.Drawing.Size(742, 603);
|
||||
this.trendChart.TabIndex = 0;
|
||||
this.trendChart.Text = "trendChart";
|
||||
//
|
||||
// rbHumidity
|
||||
//
|
||||
this.rbHumidity.Appearance = System.Windows.Forms.Appearance.Button;
|
||||
this.rbHumidity.AutoSize = true;
|
||||
this.rbHumidity.Checked = true;
|
||||
this.rbHumidity.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.rbHumidity.Location = new System.Drawing.Point(6, 19);
|
||||
this.rbHumidity.Name = "rbHumidity";
|
||||
this.rbHumidity.Size = new System.Drawing.Size(66, 24);
|
||||
this.rbHumidity.TabIndex = 1;
|
||||
this.rbHumidity.TabStop = true;
|
||||
this.rbHumidity.Text = "Humidity";
|
||||
this.rbHumidity.UseVisualStyleBackColor = true;
|
||||
this.rbHumidity.CheckedChanged += new System.EventHandler(this.rbHumidity_CheckedChanged);
|
||||
//
|
||||
// rbTemp
|
||||
//
|
||||
this.rbTemp.Appearance = System.Windows.Forms.Appearance.Button;
|
||||
this.rbTemp.AutoSize = true;
|
||||
this.rbTemp.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.rbTemp.Location = new System.Drawing.Point(76, 20);
|
||||
this.rbTemp.Name = "rbTemp";
|
||||
this.rbTemp.Size = new System.Drawing.Size(89, 24);
|
||||
this.rbTemp.TabIndex = 1;
|
||||
this.rbTemp.Text = "Temperature";
|
||||
this.rbTemp.UseVisualStyleBackColor = true;
|
||||
this.rbTemp.CheckedChanged += new System.EventHandler(this.rbTemp_CheckedChanged);
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Controls.Add(this.rbHumidity);
|
||||
this.groupBox1.Controls.Add(this.rbTemp);
|
||||
this.groupBox1.ForeColor = System.Drawing.SystemColors.ControlText;
|
||||
this.groupBox1.Location = new System.Drawing.Point(8, 3);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(171, 50);
|
||||
this.groupBox1.TabIndex = 2;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "Data";
|
||||
//
|
||||
// PanelTrendGraph
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(762, 674);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.Controls.Add(this.trendChart);
|
||||
this.HideOnClose = true;
|
||||
this.Name = "PanelTrendGraph";
|
||||
this.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.Document;
|
||||
this.TabText = "Trend Graph";
|
||||
this.Text = "Trend Graph";
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox1.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private LiveCharts.WinForms.CartesianChart trendChart;
|
||||
private System.Windows.Forms.RadioButton rbHumidity;
|
||||
private System.Windows.Forms.RadioButton rbTemp;
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
}
|
||||
}
|
||||
271
PanelTrendGraph.cs
Normal file
@@ -0,0 +1,271 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
using LiveCharts;
|
||||
using LiveCharts.Wpf;
|
||||
using LiveCharts.WinForms;
|
||||
using LiveCharts.Defaults;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public partial class PanelTrendGraph : DockContent
|
||||
{
|
||||
MainForm m_Owner = null;
|
||||
DataHandler m_DataHandler = null;
|
||||
|
||||
string m_CurSpring = "";
|
||||
string m_CurTable = "";
|
||||
bool m_bHumidity = false;
|
||||
|
||||
public PanelTrendGraph(MainForm owner, DataHandler data)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
m_Owner = owner;
|
||||
m_DataHandler = data;
|
||||
|
||||
|
||||
Theme.Apply(this);
|
||||
Theme.Apply(trendChart);
|
||||
Theme.Apply(groupBox1);
|
||||
Theme.Apply(rbHumidity);
|
||||
Theme.Apply(rbTemp);
|
||||
|
||||
|
||||
trendChart.AxisX.Add(new Axis
|
||||
{
|
||||
Title = "Humidity",
|
||||
});
|
||||
|
||||
trendChart.AxisY.Add(new Axis
|
||||
{
|
||||
Title = "RPN",
|
||||
MinValue = 0,
|
||||
MaxValue = 10,
|
||||
|
||||
Sections = new SectionsCollection
|
||||
{
|
||||
new AxisSection
|
||||
{
|
||||
Value = 5,
|
||||
SectionWidth = 5,
|
||||
Fill = new SolidColorBrush
|
||||
{
|
||||
Color = System.Windows.Media.Color.FromArgb(Theme.Red.A, Theme.Red.R, Theme.Red.G, Theme.Red.B),
|
||||
Opacity = .75
|
||||
}
|
||||
},
|
||||
new AxisSection
|
||||
{
|
||||
//Label = "Good",
|
||||
Value = 3,
|
||||
SectionWidth = 2,
|
||||
Fill = new SolidColorBrush
|
||||
{
|
||||
Color = System.Windows.Media.Color.FromArgb(Theme.Yellow.A, Theme.Yellow.R, Theme.Yellow.G, Theme.Yellow.B),
|
||||
Opacity = .75
|
||||
}
|
||||
},
|
||||
new AxisSection
|
||||
{
|
||||
//Label = "Bad",
|
||||
Value = 0,
|
||||
SectionWidth = 3,
|
||||
Fill = new SolidColorBrush
|
||||
{
|
||||
Color = System.Windows.Media.Color.FromArgb(Theme.Green.A, Theme.Green.R, Theme.Green.G, Theme.Green.B),
|
||||
Opacity = .75
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
trendChart.LegendLocation = LegendLocation.Right;
|
||||
trendChart.DataClick += TrendChart_DataClick;
|
||||
}
|
||||
|
||||
public void Reset()
|
||||
{
|
||||
m_CurSpring = "";
|
||||
m_CurTable = "";
|
||||
m_bHumidity = false;
|
||||
}
|
||||
|
||||
private void TrendChart_DataClick(object sender, ChartPoint chartPoint)
|
||||
{
|
||||
}
|
||||
|
||||
public void UpdateGraph()
|
||||
{
|
||||
string strSpring = m_DataHandler.GetCurSpring();
|
||||
string strTable = m_DataHandler.GetCurTable();
|
||||
|
||||
if (m_CurSpring == strSpring && m_CurTable == strTable && rbHumidity.Checked == m_bHumidity)
|
||||
return;
|
||||
|
||||
|
||||
var Chart = m_DataHandler.GetHumidityChart(strSpring, strTable);
|
||||
if (Chart.Count <= 0)
|
||||
return;
|
||||
|
||||
string strTitle = "";
|
||||
double dMin = 0;
|
||||
double dMax = 0;
|
||||
if (rbHumidity.Checked == true)
|
||||
{
|
||||
strTitle = "Humidity";
|
||||
|
||||
trendChart.AxisX[0].Title = strTitle;
|
||||
|
||||
ChartValues<ScatterPoint>[] Points = {
|
||||
new ChartValues<ScatterPoint>(),
|
||||
new ChartValues<ScatterPoint>(),
|
||||
new ChartValues<ScatterPoint>() };
|
||||
|
||||
var Values = new List<TrendLine.POINT>();
|
||||
|
||||
foreach (var pnt in Chart)
|
||||
{
|
||||
if(pnt.TEMPERATURE < 0)
|
||||
Points[0].Add(new ScatterPoint(pnt.HUMIDITY, pnt.RPN, 2));
|
||||
else if(pnt.TEMPERATURE > 30)
|
||||
Points[2].Add(new ScatterPoint(pnt.HUMIDITY, pnt.RPN, 2));
|
||||
else
|
||||
Points[1].Add(new ScatterPoint(pnt.HUMIDITY, pnt.RPN, 2));
|
||||
|
||||
Values.Add(new TrendLine.POINT { X = pnt.HUMIDITY, Y = pnt.RPN });
|
||||
}
|
||||
|
||||
|
||||
|
||||
Values.Sort((a, b) => (a.X == b.X) ? 0 : (a.X < b.X) ? -1 : 1);
|
||||
TrendLine trendline = new TrendLine(Values);
|
||||
ChartValues<ScatterPoint> TrendPoints = new ChartValues<ScatterPoint>();
|
||||
TrendPoints.Add(new ScatterPoint(Values[0].X, trendline.GetY(Values[0].X)));
|
||||
TrendPoints.Add(new ScatterPoint(Values[Values.Count / 2].X, trendline.GetY(Values[Values.Count / 2].X)));
|
||||
TrendPoints.Add(new ScatterPoint(Values[Values.Count - 1].X, trendline.GetY(Values[Values.Count - 1].X)));
|
||||
|
||||
System.Windows.Media.SolidColorBrush[] brushes = {
|
||||
System.Windows.Media.Brushes.DodgerBlue.Clone(),
|
||||
System.Windows.Media.Brushes.Green.Clone(),
|
||||
System.Windows.Media.Brushes.IndianRed.Clone() };
|
||||
foreach (var brush in brushes)
|
||||
brush.Opacity = 0.75;
|
||||
|
||||
trendChart.Series = new SeriesCollection
|
||||
{
|
||||
new ScatterSeries
|
||||
{
|
||||
Title = "~ 0℃",
|
||||
Values = Points[0],
|
||||
Fill = brushes[0],
|
||||
Foreground = new System.Windows.Media.SolidColorBrush(System.Windows.Media.Color.FromArgb(255, 255, 255, 255)),
|
||||
},
|
||||
new ScatterSeries
|
||||
{
|
||||
Title = "0℃ ~ 30℃",
|
||||
Values = Points[1],
|
||||
Fill = brushes[1],
|
||||
},
|
||||
new ScatterSeries
|
||||
{
|
||||
Title = "30℃ ~",
|
||||
Values = Points[2],
|
||||
Fill = brushes[2],
|
||||
},
|
||||
new LineSeries
|
||||
{
|
||||
Title = "Trend",
|
||||
Values = TrendPoints,
|
||||
PointGeometry = DefaultGeometries.None,
|
||||
StrokeThickness = 4,
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
dMin = Chart.Min(r => r.HUMIDITY - 1);
|
||||
dMax = Chart.Max(r => r.HUMIDITY - 1);
|
||||
}
|
||||
else if(rbTemp.Checked == true)
|
||||
{
|
||||
strTitle = "Temperature";
|
||||
|
||||
trendChart.AxisX[0].Title = strTitle;
|
||||
|
||||
ChartValues<ScatterPoint>[] Points = {
|
||||
new ChartValues<ScatterPoint>(),
|
||||
new ChartValues<ScatterPoint>() };
|
||||
var Values = new List<TrendLine.POINT>();
|
||||
|
||||
foreach (var pnt in Chart)
|
||||
{
|
||||
if(pnt.HUMIDITY <= 60)
|
||||
Points[0].Add(new ScatterPoint(pnt.TEMPERATURE, pnt.RPN, 2));
|
||||
else
|
||||
Points[1].Add(new ScatterPoint(pnt.TEMPERATURE, pnt.RPN, 2));
|
||||
|
||||
Values.Add(new TrendLine.POINT { X = pnt.TEMPERATURE, Y = pnt.RPN });
|
||||
}
|
||||
|
||||
Values.Sort((a, b) => (a.X == b.X) ? 0 : (a.X<b.X) ? -1 : 1);
|
||||
TrendLine trendline = new TrendLine(Values);
|
||||
ChartValues<ScatterPoint> TrendPoints = new ChartValues<ScatterPoint>();
|
||||
TrendPoints.Add(new ScatterPoint(Values[0].X, trendline.GetY(Values[0].X)));
|
||||
TrendPoints.Add(new ScatterPoint(Values[Values.Count / 2].X, trendline.GetY(Values[Values.Count / 2].X)));
|
||||
TrendPoints.Add(new ScatterPoint(Values[Values.Count - 1].X, trendline.GetY(Values[Values.Count - 1].X)));
|
||||
|
||||
trendChart.Series = new SeriesCollection
|
||||
{
|
||||
new ScatterSeries
|
||||
{
|
||||
Title = "~ 60%",
|
||||
Values = Points[0],
|
||||
Foreground = System.Windows.Media.Brushes.SkyBlue,
|
||||
},
|
||||
new ScatterSeries
|
||||
{
|
||||
Title = "60% ~",
|
||||
Values = Points[1],
|
||||
Foreground = System.Windows.Media.Brushes.DarkBlue,
|
||||
},
|
||||
new LineSeries
|
||||
{
|
||||
Title = "Trend",
|
||||
Values = TrendPoints,
|
||||
PointGeometry = DefaultGeometries.None,
|
||||
StrokeThickness = 4,
|
||||
},
|
||||
};
|
||||
|
||||
dMin = Chart.Min(r => r.TEMPERATURE - 1);
|
||||
dMax = Chart.Max(r => r.TEMPERATURE - 1);
|
||||
}
|
||||
|
||||
|
||||
trendChart.AxisX[0].MinValue = dMin;
|
||||
trendChart.AxisX[0].MaxValue = dMax;
|
||||
|
||||
m_CurSpring = strSpring;
|
||||
m_CurTable = strTable;
|
||||
m_bHumidity = rbHumidity.Checked;
|
||||
}
|
||||
|
||||
private void rbHumidity_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
UpdateGraph();
|
||||
}
|
||||
|
||||
private void rbTemp_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
UpdateGraph();
|
||||
}
|
||||
}
|
||||
}
|
||||
120
PanelTrendGraph.resx
Normal file
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
84
TablePanel.Designer.cs
generated
@@ -1,84 +0,0 @@
|
||||
namespace friction
|
||||
{
|
||||
partial class TablePanel
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.cbMaterial2 = new System.Windows.Forms.ComboBox();
|
||||
this.cbMaterial1 = new System.Windows.Forms.ComboBox();
|
||||
this.btApply = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// cbMaterial2
|
||||
//
|
||||
this.cbMaterial2.FormattingEnabled = true;
|
||||
this.cbMaterial2.Location = new System.Drawing.Point(32, 122);
|
||||
this.cbMaterial2.Name = "cbMaterial2";
|
||||
this.cbMaterial2.Size = new System.Drawing.Size(121, 20);
|
||||
this.cbMaterial2.TabIndex = 1;
|
||||
//
|
||||
// cbMaterial1
|
||||
//
|
||||
this.cbMaterial1.FormattingEnabled = true;
|
||||
this.cbMaterial1.Location = new System.Drawing.Point(32, 61);
|
||||
this.cbMaterial1.Name = "cbMaterial1";
|
||||
this.cbMaterial1.Size = new System.Drawing.Size(121, 20);
|
||||
this.cbMaterial1.TabIndex = 2;
|
||||
//
|
||||
// btApply
|
||||
//
|
||||
this.btApply.Location = new System.Drawing.Point(32, 179);
|
||||
this.btApply.Name = "btApply";
|
||||
this.btApply.Size = new System.Drawing.Size(75, 23);
|
||||
this.btApply.TabIndex = 3;
|
||||
this.btApply.Text = "Apply";
|
||||
this.btApply.UseVisualStyleBackColor = true;
|
||||
this.btApply.Click += new System.EventHandler(this.btApply_Click);
|
||||
//
|
||||
// TablePanel
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(284, 261);
|
||||
this.Controls.Add(this.btApply);
|
||||
this.Controls.Add(this.cbMaterial1);
|
||||
this.Controls.Add(this.cbMaterial2);
|
||||
this.HideOnClose = true;
|
||||
this.Name = "TablePanel";
|
||||
this.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.DockLeft;
|
||||
this.Text = "TablePanel";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ComboBox cbMaterial2;
|
||||
private System.Windows.Forms.ComboBox cbMaterial1;
|
||||
private System.Windows.Forms.Button btApply;
|
||||
}
|
||||
}
|
||||
@@ -1,45 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public partial class TablePanel : DockContent
|
||||
{
|
||||
MainForm m_Owner = null;
|
||||
|
||||
public TablePanel(MainForm owner)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
m_Owner = owner;
|
||||
this.ApplyTheme();
|
||||
}
|
||||
|
||||
public void UpdateData(DataHandler data)
|
||||
{
|
||||
var Material1 = data.GetMaterial1();
|
||||
var Material2 = data.GetMaterial2();
|
||||
|
||||
cbMaterial1.Items.Clear();
|
||||
foreach(var x in Material1)
|
||||
cbMaterial1.Items.Add(x);
|
||||
|
||||
cbMaterial2.Items.Clear();
|
||||
foreach (var x in Material2)
|
||||
cbMaterial2.Items.Add(x);
|
||||
}
|
||||
|
||||
private void btApply_Click(object sender, EventArgs e)
|
||||
{
|
||||
m_Owner.OnApplyData();
|
||||
}
|
||||
}
|
||||
}
|
||||
151
Theme.cs
Normal file
@@ -0,0 +1,151 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public static class Theme
|
||||
{
|
||||
public static Color Backcolor = Color.FromArgb(255, 45, 45, 48);
|
||||
public static Color BackColorTrans = Color.FromArgb(230, 45, 45, 48);
|
||||
public static Color Forecolor = Color.FromArgb(255, 235, 235, 235);
|
||||
|
||||
public static Color Green = Color.LimeGreen;
|
||||
//public static Color Yellow = Color.Gold;
|
||||
public static Color Yellow = Color.FromArgb(255, 255, 165, 0);
|
||||
public static Color Red = Color.OrangeRed;
|
||||
public static Color Gray = Color.DarkGray;
|
||||
public static Color White = Color.Snow;
|
||||
|
||||
public static void Apply(Control ctrl)
|
||||
{
|
||||
ctrl.BackColor = Backcolor;
|
||||
ctrl.ForeColor = Forecolor;
|
||||
}
|
||||
|
||||
public static void Apply(DataGridView ctrl)
|
||||
{
|
||||
ctrl.BackgroundColor = Backcolor;
|
||||
ctrl.DefaultCellStyle.BackColor = Backcolor;
|
||||
ctrl.DefaultCellStyle.ForeColor = Forecolor;
|
||||
ctrl.EnableHeadersVisualStyles = false;
|
||||
ctrl.ColumnHeadersDefaultCellStyle.BackColor = Backcolor;
|
||||
ctrl.ColumnHeadersDefaultCellStyle.ForeColor = Forecolor;
|
||||
ctrl.RowHeadersDefaultCellStyle.BackColor = Backcolor;
|
||||
ctrl.RowHeadersDefaultCellStyle.ForeColor = Forecolor;
|
||||
}
|
||||
|
||||
public static void Apply(ListView ctrl)
|
||||
{
|
||||
ctrl.BackColor = Backcolor;
|
||||
ctrl.ForeColor = Forecolor;
|
||||
ctrl.OwnerDraw = true;
|
||||
ctrl.DrawColumnHeader +=
|
||||
new DrawListViewColumnHeaderEventHandler
|
||||
(
|
||||
(sender, e) => ListViewHeaderDraw(sender, e, Backcolor, Forecolor)
|
||||
);
|
||||
ctrl.DrawItem += new DrawListViewItemEventHandler(ListViewBodyDraw);
|
||||
}
|
||||
|
||||
private static void ListViewHeaderDraw(object sender, DrawListViewColumnHeaderEventArgs e, Color backColor, Color foreColor)
|
||||
{
|
||||
e.Graphics.FillRectangle(new SolidBrush(backColor), e.Bounds);
|
||||
e.Graphics.DrawString(e.Header.Text, e.Font, new SolidBrush(foreColor), e.Bounds);
|
||||
}
|
||||
private static void ListViewBodyDraw(object sender, DrawListViewItemEventArgs e)
|
||||
{
|
||||
e.DrawDefault = true;
|
||||
}
|
||||
|
||||
public class MenustripColor : ProfessionalColorTable
|
||||
{
|
||||
public override Color MenuItemSelected { get { return BackColorTrans; } }
|
||||
public override Color MenuItemSelectedGradientBegin { get { return BackColorTrans; } }
|
||||
public override Color MenuItemSelectedGradientEnd { get { return BackColorTrans; } }
|
||||
public override Color MenuItemPressedGradientBegin { get { return Backcolor; } }
|
||||
public override Color MenuItemPressedGradientEnd { get { return Backcolor; } }
|
||||
|
||||
public override Color MenuItemBorder { get { return BackColorTrans; } }
|
||||
public override Color MenuBorder { get { return Backcolor; } }
|
||||
}
|
||||
|
||||
class MenustripRenderer : ToolStripProfessionalRenderer
|
||||
{
|
||||
public MenustripRenderer() : base(new MenustripColor())
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
protected override void OnRenderMenuItemBackground(ToolStripItemRenderEventArgs e)
|
||||
{
|
||||
if (e.Item.Enabled)
|
||||
base.OnRenderMenuItemBackground(e);
|
||||
else
|
||||
{
|
||||
e.Item.BackColor = Backcolor;
|
||||
base.OnRenderMenuItemBackground(e);
|
||||
|
||||
if (e.Item.Selected == true)
|
||||
{
|
||||
e.Item.ImageTransparentColor = Backcolor;
|
||||
base.OnRenderMenuItemBackground(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected override void OnRenderButtonBackground(ToolStripItemRenderEventArgs e)
|
||||
{
|
||||
if (e.Item.Enabled)
|
||||
base.OnRenderMenuItemBackground(e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static void Apply(MenuStrip ctrl)
|
||||
{
|
||||
ctrl.BackColor = Backcolor;
|
||||
ctrl.ForeColor = Forecolor;
|
||||
|
||||
foreach (ToolStripMenuItem item in ctrl.Items)
|
||||
{
|
||||
foreach (ToolStripMenuItem subitem in item.DropDownItems)
|
||||
{
|
||||
subitem.BackColor = Backcolor;
|
||||
subitem.ForeColor = Forecolor;
|
||||
|
||||
subitem.MouseEnter += Ctrl_MouseEnter;
|
||||
subitem.MouseLeave += Ctrl_MouseLeave;
|
||||
}
|
||||
|
||||
item.BackColor = Backcolor;
|
||||
item.ForeColor = Forecolor;
|
||||
|
||||
item.MouseEnter += Ctrl_MouseEnter;
|
||||
item.MouseLeave += Ctrl_MouseLeave;
|
||||
}
|
||||
|
||||
ctrl.Renderer = new MenustripRenderer();
|
||||
}
|
||||
|
||||
private static void Ctrl_MouseEnter(object sender, EventArgs e)
|
||||
{
|
||||
if(sender is ToolStripMenuItem)
|
||||
{
|
||||
((ToolStripMenuItem)sender).ForeColor = Color.Orange;
|
||||
}
|
||||
}
|
||||
|
||||
private static void Ctrl_MouseLeave(object sender, EventArgs e)
|
||||
{
|
||||
if (sender is ToolStripMenuItem)
|
||||
{
|
||||
((ToolStripMenuItem)sender).ForeColor = Forecolor;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
99
TrendLine.cs
Normal file
@@ -0,0 +1,99 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace friction
|
||||
{
|
||||
public class TrendLine
|
||||
{
|
||||
public struct POINT
|
||||
{
|
||||
public float X;
|
||||
public float Y;
|
||||
}
|
||||
|
||||
|
||||
private readonly List<POINT> AxisValues;
|
||||
private int count;
|
||||
private float xAxisValuesSum;
|
||||
private float xxSum;
|
||||
private float xySum;
|
||||
private float yAxisValuesSum;
|
||||
|
||||
//public TrendLine(IList<float> xAxisValues, IList<float> yAxisValues)
|
||||
//{
|
||||
// this.xAxisValues = xAxisValues;
|
||||
// this.yAxisValues = yAxisValues;
|
||||
|
||||
|
||||
// this.Initialize();
|
||||
//}
|
||||
|
||||
public TrendLine(List<POINT> points)
|
||||
{
|
||||
AxisValues = points;
|
||||
AxisValues.Sort((POINT a, POINT b) => (a.X == b.X) ? 0 : (a.X < b.X) ? -1 : 1);
|
||||
|
||||
this.Initialize();
|
||||
}
|
||||
|
||||
public float Slope { get; private set; }
|
||||
public float Intercept { get; private set; }
|
||||
public float Start { get; private set; }
|
||||
public float End { get; private set; }
|
||||
|
||||
private void Initialize()
|
||||
{
|
||||
this.count = this.AxisValues.Count;
|
||||
this.yAxisValuesSum = this.AxisValues.Sum(e => e.Y);
|
||||
this.xAxisValuesSum = this.AxisValues.Sum(e => e.X);
|
||||
this.xxSum = 0;
|
||||
this.xySum = 0;
|
||||
|
||||
for (int i = 0; i < this.count; i++)
|
||||
{
|
||||
this.xySum += (this.AxisValues[i].X * this.AxisValues[i].Y);
|
||||
this.xxSum += (this.AxisValues[i].X * this.AxisValues[i].X);
|
||||
}
|
||||
|
||||
this.Slope = this.CalculateSlope();
|
||||
this.Intercept = this.CalculateIntercept();
|
||||
this.Start = this.CalculateStart();
|
||||
this.End = this.CalculateEnd();
|
||||
}
|
||||
|
||||
private float CalculateSlope()
|
||||
{
|
||||
try
|
||||
{
|
||||
return ((this.count * this.xySum) - (this.xAxisValuesSum * this.yAxisValuesSum)) / ((this.count * this.xxSum) - (this.xAxisValuesSum * this.xAxisValuesSum));
|
||||
}
|
||||
catch (DivideByZeroException)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
private float CalculateIntercept()
|
||||
{
|
||||
return (this.yAxisValuesSum - (this.Slope * this.xAxisValuesSum)) / this.count;
|
||||
}
|
||||
|
||||
private float CalculateStart()
|
||||
{
|
||||
return (this.Slope * this.AxisValues.First().X) + this.Intercept;
|
||||
}
|
||||
|
||||
private float CalculateEnd()
|
||||
{
|
||||
return (this.Slope * this.AxisValues.Last().X) + this.Intercept;
|
||||
}
|
||||
|
||||
public float GetY(float fX)
|
||||
{
|
||||
return (this.Slope * fX) + this.Intercept;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8,7 +8,7 @@
|
||||
<OutputType>WinExe</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>friction</RootNamespace>
|
||||
<AssemblyName>friction</AssemblyName>
|
||||
<AssemblyName>squeak</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
@@ -32,13 +32,31 @@
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ApplicationIcon>main_icon.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="EPPlus, Version=4.1.0.0, Culture=neutral, PublicKeyToken=ea159fdaa78159a1, processorArchitecture=MSIL">
|
||||
<HintPath>packages\EPPlus.4.1.0\lib\net40\EPPlus.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="LiveCharts, Version=0.9.6.0, Culture=neutral, PublicKeyToken=0bc1f845d1ebb8df, processorArchitecture=MSIL">
|
||||
<HintPath>packages\LiveCharts.0.9.6\lib\net45\LiveCharts.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="LiveCharts.WinForms, Version=0.9.6.0, Culture=neutral, PublicKeyToken=0bc1f845d1ebb8df, processorArchitecture=MSIL">
|
||||
<HintPath>packages\LiveCharts.WinForms.0.9.6\lib\net45\LiveCharts.WinForms.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="LiveCharts.Wpf, Version=0.9.6.0, Culture=neutral, PublicKeyToken=0bc1f845d1ebb8df, processorArchitecture=MSIL">
|
||||
<HintPath>packages\LiveCharts.Wpf.0.9.6\lib\net45\LiveCharts.Wpf.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xaml" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
@@ -48,32 +66,64 @@
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="WindowsBase" />
|
||||
<Reference Include="WindowsFormsIntegration" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="DataExcel.cs" />
|
||||
<Compile Include="Config.cs" />
|
||||
<Compile Include="DataHandler.cs" />
|
||||
<Compile Include="MainForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="MainForm.Designer.cs">
|
||||
<DependentUpon>MainForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PanelAnalysis.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="PanelAnalysis.Designer.cs">
|
||||
<DependentUpon>PanelAnalysis.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PanelRadarGraph.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="PanelRadarGraph.Designer.cs">
|
||||
<DependentUpon>PanelRadarGraph.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PanelTrendGraph.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="PanelTrendGraph.Designer.cs">
|
||||
<DependentUpon>PanelTrendGraph.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="RowPanel.cs">
|
||||
<Compile Include="PanelResult.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="RowPanel.Designer.cs">
|
||||
<DependentUpon>RowPanel.cs</DependentUpon>
|
||||
<Compile Include="PanelResult.Designer.cs">
|
||||
<DependentUpon>PanelResult.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TablePanel.cs">
|
||||
<Compile Include="PanelMaterial.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TablePanel.Designer.cs">
|
||||
<DependentUpon>TablePanel.cs</DependentUpon>
|
||||
<Compile Include="PanelMaterial.Designer.cs">
|
||||
<DependentUpon>PanelMaterial.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Theme.cs" />
|
||||
<Compile Include="TrendLine.cs" />
|
||||
<EmbeddedResource Include="MainForm.resx">
|
||||
<DependentUpon>MainForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="PanelAnalysis.resx">
|
||||
<DependentUpon>PanelAnalysis.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="PanelRadarGraph.resx">
|
||||
<DependentUpon>PanelRadarGraph.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="PanelTrendGraph.resx">
|
||||
<DependentUpon>PanelTrendGraph.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
@@ -83,11 +133,11 @@
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="RowPanel.resx">
|
||||
<DependentUpon>RowPanel.cs</DependentUpon>
|
||||
<EmbeddedResource Include="PanelResult.resx">
|
||||
<DependentUpon>PanelResult.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="TablePanel.resx">
|
||||
<DependentUpon>TablePanel.cs</DependentUpon>
|
||||
<EmbeddedResource Include="PanelMaterial.resx">
|
||||
<DependentUpon>PanelMaterial.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
@@ -113,6 +163,9 @@
|
||||
<Name>WinFormsUI</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="main_icon.ico" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
BIN
main_icon.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
@@ -3,4 +3,7 @@
|
||||
<package id="DockPanelSuite" version="2.15.0" targetFramework="net452" />
|
||||
<package id="DockPanelSuite.ThemeVS2015" version="2.15.0" targetFramework="net452" />
|
||||
<package id="EPPlus" version="4.1.0" targetFramework="net452" />
|
||||
<package id="LiveCharts" version="0.9.6" targetFramework="net452" />
|
||||
<package id="LiveCharts.WinForms" version="0.9.6" targetFramework="net452" />
|
||||
<package id="LiveCharts.Wpf" version="0.9.6" targetFramework="net452" />
|
||||
</packages>
|
||||
BIN
packages/LiveCharts.0.9.6/LiveCharts.0.9.6.nupkg
vendored
Normal file
BIN
packages/LiveCharts.0.9.6/lib/net40/LiveCharts.dll
vendored
Normal file
BIN
packages/LiveCharts.0.9.6/lib/net40/LiveCharts.pdb
vendored
Normal file
5489
packages/LiveCharts.0.9.6/lib/net40/LiveCharts.xml
vendored
Normal file
BIN
packages/LiveCharts.0.9.6/lib/net45/LiveCharts.dll
vendored
Normal file
BIN
packages/LiveCharts.0.9.6/lib/net45/LiveCharts.pdb
vendored
Normal file
5489
packages/LiveCharts.0.9.6/lib/net45/LiveCharts.xml
vendored
Normal file
5006
packages/LiveCharts.0.9.6/lib/portable-net45+win8+wp8/LiveCharts.XML
vendored
Normal file
BIN
packages/LiveCharts.0.9.6/lib/portable-net45+win8+wp8/LiveCharts.dll
vendored
Normal file
BIN
packages/LiveCharts.0.9.6/lib/portable-net45+win8+wp8/LiveCharts.pdb
vendored
Normal file
23
packages/LiveCharts.0.9.6/readme.txt
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
==================================
|
||||
<<<<<<<<<<< IMPORTANT >>>>>>>>>>>>
|
||||
==================================
|
||||
|
||||
LiveCharts is now multipatform (at least the design).
|
||||
|
||||
So this package contains nothing but the core of the library,
|
||||
you might also need to install the desired platform.
|
||||
|
||||
For example if using wpf you must also install the wpf package.
|
||||
|
||||
------------------------------------
|
||||
> Install-Package LiveCharts.Wpf
|
||||
------------------------------------
|
||||
|
||||
For future updates, you will only need to update LiveCharts.Wpf (or any other platform)
|
||||
forget about the core, all the platforms packages will have a dependency to core.
|
||||
|
||||
------------------------------------
|
||||
> Update-Package LiveCharts.Wpf
|
||||
------------------------------------
|
||||
|
||||
Happy coding!
|
||||
BIN
packages/LiveCharts.WinForms.0.9.6/LiveCharts.WinForms.0.9.6.nupkg
vendored
Normal file
793
packages/LiveCharts.WinForms.0.9.6/lib/net40/LiveCharts.WinForms.XML
vendored
Normal file
@@ -0,0 +1,793 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>LiveCharts.WinForms</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:LiveCharts.WinForms.AngularGauge">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
|
||||
</member>
|
||||
<member name="F:LiveCharts.WinForms.AngularGauge.WpfBase">
|
||||
<summary>
|
||||
The WPF base
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.AngularGauge.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.AngularGauge"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.Base">
|
||||
<summary>
|
||||
Gets the base.
|
||||
</summary>
|
||||
<value>
|
||||
The base.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.Wedge">
|
||||
<summary>
|
||||
Gets or sets the wedge.
|
||||
</summary>
|
||||
<value>
|
||||
The wedge.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.TickStep">
|
||||
<summary>
|
||||
Gets or sets the tick step.
|
||||
</summary>
|
||||
<value>
|
||||
The tick step.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.LabelsStep">
|
||||
<summary>
|
||||
Gets or sets the labels step.
|
||||
</summary>
|
||||
<value>
|
||||
The labels step.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.FromValue">
|
||||
<summary>
|
||||
Gets or sets from value.
|
||||
</summary>
|
||||
<value>
|
||||
From value.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.ToValue">
|
||||
<summary>
|
||||
Gets or sets to value.
|
||||
</summary>
|
||||
<value>
|
||||
To value.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.Sections">
|
||||
<summary>
|
||||
Gets or sets the sections.
|
||||
</summary>
|
||||
<value>
|
||||
The sections.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.Value">
|
||||
<summary>
|
||||
Gets or sets the value.
|
||||
</summary>
|
||||
<value>
|
||||
The value.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.LabelFormatter">
|
||||
<summary>
|
||||
Gets or sets the label formatter.
|
||||
</summary>
|
||||
<value>
|
||||
The label formatter.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.DisableAnimations">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [disable animations].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.AnimationsSpeed">
|
||||
<summary>
|
||||
Gets or sets the animations speed.
|
||||
</summary>
|
||||
<value>
|
||||
The animations speed.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.TicksForeground">
|
||||
<summary>
|
||||
Gets or sets the ticks foreground.
|
||||
</summary>
|
||||
<value>
|
||||
The ticks foreground.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.SectionsInnerRadius">
|
||||
<summary>
|
||||
Gets or sets the sections inner radius.
|
||||
</summary>
|
||||
<value>
|
||||
The sections inner radius.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.NeedleFill">
|
||||
<summary>
|
||||
Gets or sets the needle fill.
|
||||
</summary>
|
||||
<value>
|
||||
The needle fill.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.LabelsEffect">
|
||||
<summary>
|
||||
Gets or sets the labels effect.
|
||||
</summary>
|
||||
<value>
|
||||
The labels effect.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.TicksStrokeThickness">
|
||||
<summary>
|
||||
Gets or sets the ticks stroke thickness.
|
||||
</summary>
|
||||
<value>
|
||||
The ticks stroke thickness.
|
||||
</value>
|
||||
</member>
|
||||
<member name="T:LiveCharts.WinForms.CartesianChart">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
|
||||
</member>
|
||||
<member name="F:LiveCharts.WinForms.CartesianChart.WpfBase">
|
||||
<summary>
|
||||
The WPF base
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.CartesianChart.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.CartesianChart"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.CartesianChart.Update(System.Boolean,System.Boolean)">
|
||||
<summary>
|
||||
Updates the specified restart view.
|
||||
</summary>
|
||||
<param name="restartView">if set to <c>true</c> [restart view].</param>
|
||||
<param name="force">if set to <c>true</c> [force].</param>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.CartesianChart.DataClick">
|
||||
<summary>
|
||||
Occurs when the users clicks any point in the chart
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.CartesianChart.DataHover">
|
||||
<summary>
|
||||
Occurs when the users hovers over any point in the chart
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.CartesianChart.UpdaterTick">
|
||||
<summary>
|
||||
Occurs every time the chart updates
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Base">
|
||||
<summary>
|
||||
Gets the base.
|
||||
</summary>
|
||||
<value>
|
||||
The base.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.AxisY">
|
||||
<summary>
|
||||
Gets or sets the axis y.
|
||||
</summary>
|
||||
<value>
|
||||
The axis y.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.AxisX">
|
||||
<summary>
|
||||
Gets or sets the axis x.
|
||||
</summary>
|
||||
<value>
|
||||
The axis x.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.DefaultLegend">
|
||||
<summary>
|
||||
Gets or sets the default legend.
|
||||
</summary>
|
||||
<value>
|
||||
The default legend.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Zoom">
|
||||
<summary>
|
||||
Gets or sets the zoom.
|
||||
</summary>
|
||||
<value>
|
||||
The zoom.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Pan">
|
||||
<summary>
|
||||
Gets or sets the pan.
|
||||
</summary>
|
||||
<value>
|
||||
The pan.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.LegendLocation">
|
||||
<summary>
|
||||
Gets or sets the legend location.
|
||||
</summary>
|
||||
<value>
|
||||
The legend location.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Series">
|
||||
<summary>
|
||||
Gets or sets the series.
|
||||
</summary>
|
||||
<value>
|
||||
The series.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.AnimationsSpeed">
|
||||
<summary>
|
||||
Gets or sets the animations speed.
|
||||
</summary>
|
||||
<value>
|
||||
The animations speed.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.DisableAnimations">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [disable animations].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.DataTooltip">
|
||||
<summary>
|
||||
Gets or sets the data tooltip.
|
||||
</summary>
|
||||
<value>
|
||||
The data tooltip.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Hoverable">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether this <see cref="T:LiveCharts.WinForms.CartesianChart"/> is hoverable.
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if hoverable; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollMode">
|
||||
<summary>
|
||||
Gets or sets the scroll mode.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll mode.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollHorizontalFrom">
|
||||
<summary>
|
||||
Gets or sets the scroll horizontal from.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll horizontal from.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollHorizontalTo">
|
||||
<summary>
|
||||
Gets or sets the scroll horizontal to.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll horizontal to.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollVerticalFrom">
|
||||
<summary>
|
||||
Gets or sets the scroll vertical from.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll vertical from.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollVerticalTo">
|
||||
<summary>
|
||||
Gets or sets the scroll vertical to.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll vertical to.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollBarFill">
|
||||
<summary>
|
||||
Gets or sets the scroll bar fill.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll bar fill.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Background">
|
||||
<summary>
|
||||
Gets or sets the background.
|
||||
</summary>
|
||||
<value>
|
||||
The background.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.VisualElements">
|
||||
<summary>
|
||||
Gets or sets the visual elements.
|
||||
</summary>
|
||||
<value>
|
||||
The visual elements.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.UpdaterState">
|
||||
<summary>
|
||||
Gets or sets the state of the updater.
|
||||
</summary>
|
||||
<value>
|
||||
The state of the updater.
|
||||
</value>
|
||||
</member>
|
||||
<member name="T:LiveCharts.WinForms.SolidGauge">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
|
||||
</member>
|
||||
<member name="F:LiveCharts.WinForms.SolidGauge.WpfBase">
|
||||
<summary>
|
||||
The WPF base
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.SolidGauge.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.SolidGauge"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.Base">
|
||||
<summary>
|
||||
Gets the base.
|
||||
</summary>
|
||||
<value>
|
||||
The base.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.Uses360Mode">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [uses360 mode].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [uses360 mode]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.From">
|
||||
<summary>
|
||||
Gets or sets from.
|
||||
</summary>
|
||||
<value>
|
||||
From.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.To">
|
||||
<summary>
|
||||
Gets or sets to.
|
||||
</summary>
|
||||
<value>
|
||||
To.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.Value">
|
||||
<summary>
|
||||
Gets or sets the value.
|
||||
</summary>
|
||||
<value>
|
||||
The value.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.InnerRadius">
|
||||
<summary>
|
||||
Gets or sets the inner radius.
|
||||
</summary>
|
||||
<value>
|
||||
The inner radius.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.Stroke">
|
||||
<summary>
|
||||
Gets or sets the stroke.
|
||||
</summary>
|
||||
<value>
|
||||
The stroke.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.StrokeThickness">
|
||||
<summary>
|
||||
Gets or sets the stroke thickness.
|
||||
</summary>
|
||||
<value>
|
||||
The stroke thickness.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.ToColor">
|
||||
<summary>
|
||||
Gets or sets to color.
|
||||
</summary>
|
||||
<value>
|
||||
To color.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FromColor">
|
||||
<summary>
|
||||
Gets or sets from color.
|
||||
</summary>
|
||||
<value>
|
||||
From color.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.GaugeBackground">
|
||||
<summary>
|
||||
Gets or sets the gauge background.
|
||||
</summary>
|
||||
<value>
|
||||
The gauge background.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.AnimationsSpeed">
|
||||
<summary>
|
||||
Gets or sets the animations speed.
|
||||
</summary>
|
||||
<value>
|
||||
The animations speed.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.LabelFormatter">
|
||||
<summary>
|
||||
Gets or sets the label formatter.
|
||||
</summary>
|
||||
<value>
|
||||
The label formatter.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.HighFontSize">
|
||||
<summary>
|
||||
Gets or sets the size of the high font.
|
||||
</summary>
|
||||
<value>
|
||||
The size of the high font.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FontSize">
|
||||
<summary>
|
||||
Gets or sets the size of the font.
|
||||
</summary>
|
||||
<value>
|
||||
The size of the font.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FontFamily">
|
||||
<summary>
|
||||
Gets or sets the font family.
|
||||
</summary>
|
||||
<value>
|
||||
The font family.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FontWeight">
|
||||
<summary>
|
||||
Gets or sets the font weight.
|
||||
</summary>
|
||||
<value>
|
||||
The font weight.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FontStyle">
|
||||
<summary>
|
||||
Gets or sets the font style.
|
||||
</summary>
|
||||
<value>
|
||||
The font style.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FontStretch">
|
||||
<summary>
|
||||
Gets or sets the font stretch.
|
||||
</summary>
|
||||
<value>
|
||||
The font stretch.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.ForeGround">
|
||||
<summary>
|
||||
Gets or sets the fore ground.
|
||||
</summary>
|
||||
<value>
|
||||
The fore ground.
|
||||
</value>
|
||||
</member>
|
||||
<member name="T:LiveCharts.WinForms.GeoMap">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
|
||||
</member>
|
||||
<member name="F:LiveCharts.WinForms.GeoMap.WpfBase">
|
||||
<summary>
|
||||
The WPF base
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.GeoMap.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.GeoMap"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.GeoMap.LandClick">
|
||||
<summary>
|
||||
Occurs when [land click].
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.Base">
|
||||
<summary>
|
||||
Gets the base.
|
||||
</summary>
|
||||
<value>
|
||||
The base.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.LanguagePack">
|
||||
<summary>
|
||||
Gets or sets the language pack.
|
||||
</summary>
|
||||
<value>
|
||||
The language pack.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.DefaultLandFill">
|
||||
<summary>
|
||||
Gets or sets the default land fill.
|
||||
</summary>
|
||||
<value>
|
||||
The default land fill.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.LandStrokeThickness">
|
||||
<summary>
|
||||
Gets or sets the land stroke thickness.
|
||||
</summary>
|
||||
<value>
|
||||
The land stroke thickness.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.LandStroke">
|
||||
<summary>
|
||||
Gets or sets the land stroke.
|
||||
</summary>
|
||||
<value>
|
||||
The land stroke.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.DisableAnimations">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [disable animations].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.AnimationsSpeed">
|
||||
<summary>
|
||||
Gets or sets the animations speed.
|
||||
</summary>
|
||||
<value>
|
||||
The animations speed.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.Hoverable">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether this <see cref="T:LiveCharts.WinForms.GeoMap"/> is hoverable.
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if hoverable; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.HeatMap">
|
||||
<summary>
|
||||
Gets or sets the heat map.
|
||||
</summary>
|
||||
<value>
|
||||
The heat map.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.GradientStopCollection">
|
||||
<summary>
|
||||
Gets or sets the gradient stop collection.
|
||||
</summary>
|
||||
<value>
|
||||
The gradient stop collection.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.Source">
|
||||
<summary>
|
||||
Gets or sets the source.
|
||||
</summary>
|
||||
<value>
|
||||
The source.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.EnableZoomingAndPanning">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [enable zooming and panning].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [enable zooming and panning]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="T:LiveCharts.WinForms.PieChart">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
|
||||
</member>
|
||||
<member name="F:LiveCharts.WinForms.PieChart.WpfBase">
|
||||
<summary>
|
||||
The WPF base
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.PieChart.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.PieChart"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.PieChart.Update(System.Boolean,System.Boolean)">
|
||||
<summary>
|
||||
Updates the specified restart view.
|
||||
</summary>
|
||||
<param name="restartView">if set to <c>true</c> [restart view].</param>
|
||||
<param name="force">if set to <c>true</c> [force].</param>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.PieChart.DataClick">
|
||||
<summary>
|
||||
Occurs when the users clicks any point in the chart
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.PieChart.DataHover">
|
||||
<summary>
|
||||
Occurs when the users hovers over any point in the chart
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.PieChart.UpdaterTick">
|
||||
<summary>
|
||||
Occurs every time the chart updates
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.AxisY">
|
||||
<summary>
|
||||
Gets or sets the axis y.
|
||||
</summary>
|
||||
<value>
|
||||
The axis y.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.AxisX">
|
||||
<summary>
|
||||
Gets or sets the axis x.
|
||||
</summary>
|
||||
<value>
|
||||
The axis x.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.DefaultLegend">
|
||||
<summary>
|
||||
Gets or sets the default legend.
|
||||
</summary>
|
||||
<value>
|
||||
The default legend.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.Zoom">
|
||||
<summary>
|
||||
Gets or sets the zoom.
|
||||
</summary>
|
||||
<value>
|
||||
The zoom.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.LegendLocation">
|
||||
<summary>
|
||||
Gets or sets the legend location.
|
||||
</summary>
|
||||
<value>
|
||||
The legend location.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.Series">
|
||||
<summary>
|
||||
Gets or sets the series.
|
||||
</summary>
|
||||
<value>
|
||||
The series.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.AnimationsSpeed">
|
||||
<summary>
|
||||
Gets or sets the animations speed.
|
||||
</summary>
|
||||
<value>
|
||||
The animations speed.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.DisableAnimations">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [disable animations].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.DataTooltip">
|
||||
<summary>
|
||||
Gets or sets the data tooltip.
|
||||
</summary>
|
||||
<value>
|
||||
The data tooltip.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.InnerRadius">
|
||||
<summary>
|
||||
Gets or sets the inner radius.
|
||||
</summary>
|
||||
<value>
|
||||
The inner radius.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.StartingRotationAngle">
|
||||
<summary>
|
||||
Gets or sets the starting rotation angle.
|
||||
</summary>
|
||||
<value>
|
||||
The starting rotation angle.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.UpdaterState">
|
||||
<summary>
|
||||
Gets or sets the state of the updater.
|
||||
</summary>
|
||||
<value>
|
||||
The state of the updater.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.HoverPushOut">
|
||||
<summary>
|
||||
Gets or sets the units that a slice is pushed out when a user moves the mouse over data point.
|
||||
</summary>
|
||||
<value>
|
||||
The hover push out.
|
||||
</value>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
BIN
packages/LiveCharts.WinForms.0.9.6/lib/net40/LiveCharts.WinForms.dll
vendored
Normal file
BIN
packages/LiveCharts.WinForms.0.9.6/lib/net40/LiveCharts.WinForms.pdb
vendored
Normal file
793
packages/LiveCharts.WinForms.0.9.6/lib/net45/LiveCharts.WinForms.XML
vendored
Normal file
@@ -0,0 +1,793 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>LiveCharts.WinForms</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:LiveCharts.WinForms.AngularGauge">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
|
||||
</member>
|
||||
<member name="F:LiveCharts.WinForms.AngularGauge.WpfBase">
|
||||
<summary>
|
||||
The WPF base
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.AngularGauge.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.AngularGauge"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.Base">
|
||||
<summary>
|
||||
Gets the base.
|
||||
</summary>
|
||||
<value>
|
||||
The base.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.Wedge">
|
||||
<summary>
|
||||
Gets or sets the wedge.
|
||||
</summary>
|
||||
<value>
|
||||
The wedge.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.TickStep">
|
||||
<summary>
|
||||
Gets or sets the tick step.
|
||||
</summary>
|
||||
<value>
|
||||
The tick step.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.LabelsStep">
|
||||
<summary>
|
||||
Gets or sets the labels step.
|
||||
</summary>
|
||||
<value>
|
||||
The labels step.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.FromValue">
|
||||
<summary>
|
||||
Gets or sets from value.
|
||||
</summary>
|
||||
<value>
|
||||
From value.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.ToValue">
|
||||
<summary>
|
||||
Gets or sets to value.
|
||||
</summary>
|
||||
<value>
|
||||
To value.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.Sections">
|
||||
<summary>
|
||||
Gets or sets the sections.
|
||||
</summary>
|
||||
<value>
|
||||
The sections.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.Value">
|
||||
<summary>
|
||||
Gets or sets the value.
|
||||
</summary>
|
||||
<value>
|
||||
The value.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.LabelFormatter">
|
||||
<summary>
|
||||
Gets or sets the label formatter.
|
||||
</summary>
|
||||
<value>
|
||||
The label formatter.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.DisableAnimations">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [disable animations].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.AnimationsSpeed">
|
||||
<summary>
|
||||
Gets or sets the animations speed.
|
||||
</summary>
|
||||
<value>
|
||||
The animations speed.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.TicksForeground">
|
||||
<summary>
|
||||
Gets or sets the ticks foreground.
|
||||
</summary>
|
||||
<value>
|
||||
The ticks foreground.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.SectionsInnerRadius">
|
||||
<summary>
|
||||
Gets or sets the sections inner radius.
|
||||
</summary>
|
||||
<value>
|
||||
The sections inner radius.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.NeedleFill">
|
||||
<summary>
|
||||
Gets or sets the needle fill.
|
||||
</summary>
|
||||
<value>
|
||||
The needle fill.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.LabelsEffect">
|
||||
<summary>
|
||||
Gets or sets the labels effect.
|
||||
</summary>
|
||||
<value>
|
||||
The labels effect.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.AngularGauge.TicksStrokeThickness">
|
||||
<summary>
|
||||
Gets or sets the ticks stroke thickness.
|
||||
</summary>
|
||||
<value>
|
||||
The ticks stroke thickness.
|
||||
</value>
|
||||
</member>
|
||||
<member name="T:LiveCharts.WinForms.CartesianChart">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
|
||||
</member>
|
||||
<member name="F:LiveCharts.WinForms.CartesianChart.WpfBase">
|
||||
<summary>
|
||||
The WPF base
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.CartesianChart.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.CartesianChart"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.CartesianChart.Update(System.Boolean,System.Boolean)">
|
||||
<summary>
|
||||
Updates the specified restart view.
|
||||
</summary>
|
||||
<param name="restartView">if set to <c>true</c> [restart view].</param>
|
||||
<param name="force">if set to <c>true</c> [force].</param>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.CartesianChart.DataClick">
|
||||
<summary>
|
||||
Occurs when the users clicks any point in the chart
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.CartesianChart.DataHover">
|
||||
<summary>
|
||||
Occurs when the users hovers over any point in the chart
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.CartesianChart.UpdaterTick">
|
||||
<summary>
|
||||
Occurs every time the chart updates
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Base">
|
||||
<summary>
|
||||
Gets the base.
|
||||
</summary>
|
||||
<value>
|
||||
The base.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.AxisY">
|
||||
<summary>
|
||||
Gets or sets the axis y.
|
||||
</summary>
|
||||
<value>
|
||||
The axis y.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.AxisX">
|
||||
<summary>
|
||||
Gets or sets the axis x.
|
||||
</summary>
|
||||
<value>
|
||||
The axis x.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.DefaultLegend">
|
||||
<summary>
|
||||
Gets or sets the default legend.
|
||||
</summary>
|
||||
<value>
|
||||
The default legend.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Zoom">
|
||||
<summary>
|
||||
Gets or sets the zoom.
|
||||
</summary>
|
||||
<value>
|
||||
The zoom.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Pan">
|
||||
<summary>
|
||||
Gets or sets the pan.
|
||||
</summary>
|
||||
<value>
|
||||
The pan.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.LegendLocation">
|
||||
<summary>
|
||||
Gets or sets the legend location.
|
||||
</summary>
|
||||
<value>
|
||||
The legend location.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Series">
|
||||
<summary>
|
||||
Gets or sets the series.
|
||||
</summary>
|
||||
<value>
|
||||
The series.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.AnimationsSpeed">
|
||||
<summary>
|
||||
Gets or sets the animations speed.
|
||||
</summary>
|
||||
<value>
|
||||
The animations speed.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.DisableAnimations">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [disable animations].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.DataTooltip">
|
||||
<summary>
|
||||
Gets or sets the data tooltip.
|
||||
</summary>
|
||||
<value>
|
||||
The data tooltip.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Hoverable">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether this <see cref="T:LiveCharts.WinForms.CartesianChart"/> is hoverable.
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if hoverable; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollMode">
|
||||
<summary>
|
||||
Gets or sets the scroll mode.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll mode.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollHorizontalFrom">
|
||||
<summary>
|
||||
Gets or sets the scroll horizontal from.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll horizontal from.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollHorizontalTo">
|
||||
<summary>
|
||||
Gets or sets the scroll horizontal to.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll horizontal to.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollVerticalFrom">
|
||||
<summary>
|
||||
Gets or sets the scroll vertical from.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll vertical from.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollVerticalTo">
|
||||
<summary>
|
||||
Gets or sets the scroll vertical to.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll vertical to.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollBarFill">
|
||||
<summary>
|
||||
Gets or sets the scroll bar fill.
|
||||
</summary>
|
||||
<value>
|
||||
The scroll bar fill.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.Background">
|
||||
<summary>
|
||||
Gets or sets the background.
|
||||
</summary>
|
||||
<value>
|
||||
The background.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.VisualElements">
|
||||
<summary>
|
||||
Gets or sets the visual elements.
|
||||
</summary>
|
||||
<value>
|
||||
The visual elements.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.CartesianChart.UpdaterState">
|
||||
<summary>
|
||||
Gets or sets the state of the updater.
|
||||
</summary>
|
||||
<value>
|
||||
The state of the updater.
|
||||
</value>
|
||||
</member>
|
||||
<member name="T:LiveCharts.WinForms.SolidGauge">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
|
||||
</member>
|
||||
<member name="F:LiveCharts.WinForms.SolidGauge.WpfBase">
|
||||
<summary>
|
||||
The WPF base
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.SolidGauge.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.SolidGauge"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.Base">
|
||||
<summary>
|
||||
Gets the base.
|
||||
</summary>
|
||||
<value>
|
||||
The base.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.Uses360Mode">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [uses360 mode].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [uses360 mode]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.From">
|
||||
<summary>
|
||||
Gets or sets from.
|
||||
</summary>
|
||||
<value>
|
||||
From.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.To">
|
||||
<summary>
|
||||
Gets or sets to.
|
||||
</summary>
|
||||
<value>
|
||||
To.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.Value">
|
||||
<summary>
|
||||
Gets or sets the value.
|
||||
</summary>
|
||||
<value>
|
||||
The value.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.InnerRadius">
|
||||
<summary>
|
||||
Gets or sets the inner radius.
|
||||
</summary>
|
||||
<value>
|
||||
The inner radius.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.Stroke">
|
||||
<summary>
|
||||
Gets or sets the stroke.
|
||||
</summary>
|
||||
<value>
|
||||
The stroke.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.StrokeThickness">
|
||||
<summary>
|
||||
Gets or sets the stroke thickness.
|
||||
</summary>
|
||||
<value>
|
||||
The stroke thickness.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.ToColor">
|
||||
<summary>
|
||||
Gets or sets to color.
|
||||
</summary>
|
||||
<value>
|
||||
To color.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FromColor">
|
||||
<summary>
|
||||
Gets or sets from color.
|
||||
</summary>
|
||||
<value>
|
||||
From color.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.GaugeBackground">
|
||||
<summary>
|
||||
Gets or sets the gauge background.
|
||||
</summary>
|
||||
<value>
|
||||
The gauge background.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.AnimationsSpeed">
|
||||
<summary>
|
||||
Gets or sets the animations speed.
|
||||
</summary>
|
||||
<value>
|
||||
The animations speed.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.LabelFormatter">
|
||||
<summary>
|
||||
Gets or sets the label formatter.
|
||||
</summary>
|
||||
<value>
|
||||
The label formatter.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.HighFontSize">
|
||||
<summary>
|
||||
Gets or sets the size of the high font.
|
||||
</summary>
|
||||
<value>
|
||||
The size of the high font.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FontSize">
|
||||
<summary>
|
||||
Gets or sets the size of the font.
|
||||
</summary>
|
||||
<value>
|
||||
The size of the font.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FontFamily">
|
||||
<summary>
|
||||
Gets or sets the font family.
|
||||
</summary>
|
||||
<value>
|
||||
The font family.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FontWeight">
|
||||
<summary>
|
||||
Gets or sets the font weight.
|
||||
</summary>
|
||||
<value>
|
||||
The font weight.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FontStyle">
|
||||
<summary>
|
||||
Gets or sets the font style.
|
||||
</summary>
|
||||
<value>
|
||||
The font style.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.FontStretch">
|
||||
<summary>
|
||||
Gets or sets the font stretch.
|
||||
</summary>
|
||||
<value>
|
||||
The font stretch.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.SolidGauge.ForeGround">
|
||||
<summary>
|
||||
Gets or sets the fore ground.
|
||||
</summary>
|
||||
<value>
|
||||
The fore ground.
|
||||
</value>
|
||||
</member>
|
||||
<member name="T:LiveCharts.WinForms.GeoMap">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
|
||||
</member>
|
||||
<member name="F:LiveCharts.WinForms.GeoMap.WpfBase">
|
||||
<summary>
|
||||
The WPF base
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.GeoMap.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.GeoMap"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.GeoMap.LandClick">
|
||||
<summary>
|
||||
Occurs when [land click].
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.Base">
|
||||
<summary>
|
||||
Gets the base.
|
||||
</summary>
|
||||
<value>
|
||||
The base.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.LanguagePack">
|
||||
<summary>
|
||||
Gets or sets the language pack.
|
||||
</summary>
|
||||
<value>
|
||||
The language pack.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.DefaultLandFill">
|
||||
<summary>
|
||||
Gets or sets the default land fill.
|
||||
</summary>
|
||||
<value>
|
||||
The default land fill.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.LandStrokeThickness">
|
||||
<summary>
|
||||
Gets or sets the land stroke thickness.
|
||||
</summary>
|
||||
<value>
|
||||
The land stroke thickness.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.LandStroke">
|
||||
<summary>
|
||||
Gets or sets the land stroke.
|
||||
</summary>
|
||||
<value>
|
||||
The land stroke.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.DisableAnimations">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [disable animations].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.AnimationsSpeed">
|
||||
<summary>
|
||||
Gets or sets the animations speed.
|
||||
</summary>
|
||||
<value>
|
||||
The animations speed.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.Hoverable">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether this <see cref="T:LiveCharts.WinForms.GeoMap"/> is hoverable.
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if hoverable; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.HeatMap">
|
||||
<summary>
|
||||
Gets or sets the heat map.
|
||||
</summary>
|
||||
<value>
|
||||
The heat map.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.GradientStopCollection">
|
||||
<summary>
|
||||
Gets or sets the gradient stop collection.
|
||||
</summary>
|
||||
<value>
|
||||
The gradient stop collection.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.Source">
|
||||
<summary>
|
||||
Gets or sets the source.
|
||||
</summary>
|
||||
<value>
|
||||
The source.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.GeoMap.EnableZoomingAndPanning">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [enable zooming and panning].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [enable zooming and panning]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="T:LiveCharts.WinForms.PieChart">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
|
||||
</member>
|
||||
<member name="F:LiveCharts.WinForms.PieChart.WpfBase">
|
||||
<summary>
|
||||
The WPF base
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.PieChart.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.PieChart"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:LiveCharts.WinForms.PieChart.Update(System.Boolean,System.Boolean)">
|
||||
<summary>
|
||||
Updates the specified restart view.
|
||||
</summary>
|
||||
<param name="restartView">if set to <c>true</c> [restart view].</param>
|
||||
<param name="force">if set to <c>true</c> [force].</param>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.PieChart.DataClick">
|
||||
<summary>
|
||||
Occurs when the users clicks any point in the chart
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.PieChart.DataHover">
|
||||
<summary>
|
||||
Occurs when the users hovers over any point in the chart
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:LiveCharts.WinForms.PieChart.UpdaterTick">
|
||||
<summary>
|
||||
Occurs every time the chart updates
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.AxisY">
|
||||
<summary>
|
||||
Gets or sets the axis y.
|
||||
</summary>
|
||||
<value>
|
||||
The axis y.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.AxisX">
|
||||
<summary>
|
||||
Gets or sets the axis x.
|
||||
</summary>
|
||||
<value>
|
||||
The axis x.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.DefaultLegend">
|
||||
<summary>
|
||||
Gets or sets the default legend.
|
||||
</summary>
|
||||
<value>
|
||||
The default legend.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.Zoom">
|
||||
<summary>
|
||||
Gets or sets the zoom.
|
||||
</summary>
|
||||
<value>
|
||||
The zoom.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.LegendLocation">
|
||||
<summary>
|
||||
Gets or sets the legend location.
|
||||
</summary>
|
||||
<value>
|
||||
The legend location.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.Series">
|
||||
<summary>
|
||||
Gets or sets the series.
|
||||
</summary>
|
||||
<value>
|
||||
The series.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.AnimationsSpeed">
|
||||
<summary>
|
||||
Gets or sets the animations speed.
|
||||
</summary>
|
||||
<value>
|
||||
The animations speed.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.DisableAnimations">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether [disable animations].
|
||||
</summary>
|
||||
<value>
|
||||
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.DataTooltip">
|
||||
<summary>
|
||||
Gets or sets the data tooltip.
|
||||
</summary>
|
||||
<value>
|
||||
The data tooltip.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.InnerRadius">
|
||||
<summary>
|
||||
Gets or sets the inner radius.
|
||||
</summary>
|
||||
<value>
|
||||
The inner radius.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.StartingRotationAngle">
|
||||
<summary>
|
||||
Gets or sets the starting rotation angle.
|
||||
</summary>
|
||||
<value>
|
||||
The starting rotation angle.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.UpdaterState">
|
||||
<summary>
|
||||
Gets or sets the state of the updater.
|
||||
</summary>
|
||||
<value>
|
||||
The state of the updater.
|
||||
</value>
|
||||
</member>
|
||||
<member name="P:LiveCharts.WinForms.PieChart.HoverPushOut">
|
||||
<summary>
|
||||
Gets or sets the units that a slice is pushed out when a user moves the mouse over data point.
|
||||
</summary>
|
||||
<value>
|
||||
The hover push out.
|
||||
</value>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
BIN
packages/LiveCharts.WinForms.0.9.6/lib/net45/LiveCharts.WinForms.dll
vendored
Normal file
BIN
packages/LiveCharts.WinForms.0.9.6/lib/net45/LiveCharts.WinForms.pdb
vendored
Normal file
3
packages/LiveCharts.WinForms.0.9.6/tools/install.ps1
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
param($installPath, $toolsPath, $package, $project)
|
||||
|
||||
$DTE.ItemOperations.Navigate("https://lvcharts.net/thanks/wpf")
|
||||
BIN
packages/LiveCharts.Wpf.0.9.6/LiveCharts.Wpf.0.9.6.nupkg
vendored
Normal file
4208
packages/LiveCharts.Wpf.0.9.6/lib/net40/LiveCharts.Wpf.XML
vendored
Normal file
BIN
packages/LiveCharts.Wpf.0.9.6/lib/net40/LiveCharts.Wpf.dll
vendored
Normal file
BIN
packages/LiveCharts.Wpf.0.9.6/lib/net40/LiveCharts.Wpf.pdb
vendored
Normal file
4208
packages/LiveCharts.Wpf.0.9.6/lib/net45/LiveCharts.Wpf.XML
vendored
Normal file
BIN
packages/LiveCharts.Wpf.0.9.6/lib/net45/LiveCharts.Wpf.dll
vendored
Normal file
BIN
packages/LiveCharts.Wpf.0.9.6/lib/net45/LiveCharts.Wpf.pdb
vendored
Normal file
3
packages/LiveCharts.Wpf.0.9.6/tools/install.ps1
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
param($installPath, $toolsPath, $package, $project)
|
||||
|
||||
$DTE.ItemOperations.Navigate("https://lvcharts.net/thanks/wpf")
|
||||
BIN
resource/anaylisys3.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
resource/main_icon.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
|
Before Width: | Height: | Size: 5.3 KiB |
BIN
resource/open3.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
resource/pair3.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
resource/radar3.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
resource/result3.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
resource/trend3.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |