Пример #1
0
        private void SaveTemplate(string templateFileName)
        {
            if (File.Exists(templateFileName))
            {
                File.Delete(templateFileName);
            }
            ChartControl  chart    = this.chartControl1;
            ChartTemplate template = new ChartTemplate(typeof(ChartControl));

            if (saveChartAppearance)
            {
                template.Scan(chart);
                template.Save(templateFileName);
            }
            Stream stream = new FileStream(templateFileName, FileMode.OpenOrCreate);

            for (int i = 0; i < chart.Series.Count; i++)
            {
                template = new ChartTemplate(chart.Series[i].GetType());
                template.ScanSeries(chart.Series[i]);
                template.SaveSeries(stream);
            }
            stream.Dispose();
            stream.Close();
        }
Пример #2
0
        public void InitializeChart()
        {
            // Initialize ChartSeries
            ChartSeries series1 = new ChartSeries("Hard Disk");

            series1.Points.Add(1, 187);
            series1.Points.Add(2, 151);
            series1.Points.Add(3, 180);
            series1.Points.Add(4, 206);
            series1.Points.Add(5, 122);
            series1.Points.Add(6, 31);
            series1.Points.Add(7, 189);
            series1.Points.Add(8, 54);
            series1.Points.Add(9, 181);
            series1.Points.Add(10, 201);
            series1.Points.Add(11, 391);
            series1.Points.Add(12, 311);

            series1.Styles[0].Text = string.Format("{0}", series1.Points[0].YValues[0]);
            series1.Styles[1].Text = string.Format("{0}", series1.Points[1].YValues[0]);
            series1.Styles[2].Text = string.Format("{0}", series1.Points[2].YValues[0]);
            series1.Styles[3].Text = string.Format("{0}", series1.Points[3].YValues[0]);
            series1.Styles[4].Text = string.Format("{0}", series1.Points[4].YValues[0]);


            this.chartControl1.Series.Add(series1);

            ChartSeries series2 = new ChartSeries("Monitor");

            series2.Points.Add(1, 256);
            series2.Points.Add(2, 451);
            series2.Points.Add(3, 382);
            series2.Points.Add(4, 437);
            series2.Points.Add(5, 321);
            series2.Points.Add(6, 234);
            series2.Points.Add(7, 425);
            series2.Points.Add(8, 257);
            series2.Points.Add(9, 382);
            series2.Points.Add(10, 301);
            series2.Points.Add(11, 472);
            series2.Points.Add(12, 421);

            series2.Styles[0].Text = string.Format("{0}", series1.Points[0].YValues[0]);
            series2.Styles[1].Text = string.Format("{0}", series1.Points[1].YValues[0]);
            series2.Styles[2].Text = string.Format("{0}", series1.Points[2].YValues[0]);
            series2.Styles[3].Text = string.Format("{0}", series1.Points[3].YValues[0]);
            series2.Styles[4].Text = string.Format("{0}", series1.Points[4].YValues[0]);


            this.chartControl1.Series.Add(series2);

            chartControl1.ColumnDrawMode         = ChartColumnDrawMode.ClusteredMode;
            chartControl1.PrimaryXAxis.RangeType = ChartAxisRangeType.Set;
            chartControl1.PrimaryXAxis.Range     = new MinMaxInfo(0, 13, 1);
            ChartTemplate ct = new ChartTemplate(typeof(ChartControl));

            ct.Load("Column_Square.xml");
            ct.Apply(this.chartControl1);
            chartControl1.Series3D = false;
        }
Пример #3
0
        private void btnLoadData_Click(object sender, EventArgs e)
        {
            ChartTemplate chartTemplate = new ChartTemplate();

            chartTemplate.LoadChartTemplate();

            this.bdChart1.SetChartTemplate(chartTemplate);
            this.bdChart1.Refresh();
        }
Пример #4
0
        private void CbTickerSelectedIndexChanged(object sender, EventArgs e)
        {
            if (panelTimeBounds.Visible)
            {
                EnsureStartDateSet();
            }

            cbTemplates.Items.Clear();
            cbTemplates.Items.AddRange(ChartTemplate.GetChartTemplateNames(cbTicker.Text));
        }
Пример #5
0
        /// <summary>
        /// Вспомогательный метод загрузки имён шаблонов
        /// </summary>
        private void LoadTemplateNames()
        {
            cbTemplateName.Items.Clear();
            cbTemplateName.Items.AddRange(ChartTemplate.GetChartTemplateNames(symbol, chbOnlyCurrentTickerTemplate.Checked));

            if (cbTemplateName.Items.Count > 0)
            {
                cbTemplateName.SelectedIndex = 0;
            }
        }
Пример #6
0
        private void FastGridUserHitCell(object sender, MouseEventArgs e, int rowIndex, FastColumn col)
        {
            if (e.Button != MouseButtons.Left || rowIndex < 0)
            {
                return;
            }

            var description = fastGrid.rows[rowIndex].ValueObject as TemplateDescription;

            if (col.PropertyName == description.Property(p => p.Close))
            {
                var templateDescription = fastGrid.GetRowValues <TemplateDescription>(false).ToList();
                if (description != null)
                {
                    ChartTemplate.DellChartTemplate(description.Name);
                    templateDescription.Remove(description);
                    fastGrid.DataBind(templateDescription);
                    fastGrid.Invalidate();
                }
            }
            else if (col.PropertyName == description.Property(p => p.Name))
            {
                var dropDownDialog = new DropDownDialog("Введите название",
                                                        fastGrid.GetRowValues <TemplateDescription>(false)
                                                        .Select(x => x.Name)
                                                        .Cast <object>()
                                                        .ToList(), false);
                dropDownDialog.SelectedText = description.Name;
                var dialogResult = dropDownDialog.ShowDialog();
                var newName      = dropDownDialog.SelectedText;
                if (dialogResult == DialogResult.Cancel || newName == description.Name)
                {
                    return;
                }
                if (!ChartTemplate.UpdateChartTemplateName(description.Name, newName))
                {
                    description.Name = newName;
                    fastGrid.UpdateRow(rowIndex, description);
                    fastGrid.InvalidateRow(rowIndex);
                }
                else
                {
                    Rebind();
                }
            }
            else if (col.PropertyName == description.Property(p => p.IndicatorsCount))
            {
                if (description != null)
                {
                    ShowTooltip(string.Format("Шаблон \"{0}\" содержит индикаторы", description.Name),
                                string.Join(Environment.NewLine, description.IndicatorNames), e.X, e.Y);
                }
            }
        }
Пример #7
0
        private void Rebind()
        {
            var templateDescription = new List <TemplateDescription>();

            foreach (var xmlTemplate in ChartTemplate.GetChartAllTemplates())
            {
                templateDescription.Add(new TemplateDescription(xmlTemplate));
            }
            fastGrid.DataBind(templateDescription);
            fastGrid.CheckSize();
        }
Пример #8
0
        private void btnReadXml_Click(object sender, EventArgs e)
        {
            ChartTemplate chartTemplate = new ChartTemplate();

            chartTemplate.ReadXmlFile(fileName);

            DataTable dt = new DYMonthDataService().GetDataTable("1201032");

            this.bdChart1.LoadTemplateAndData(chartTemplate, dt);
            this.bdChart1.Refresh();
        }
Пример #9
0
 private void SaveChartTemplateLoad(object sender, EventArgs e)
 {
     txtCurrentTickerValue.Text = chart.Symbol;
     cbTemplateName.Items.Clear();
     cbTemplateName.Items.AddRange(ChartTemplate.GetChartTemplateNames(chart.Symbol));
     if (!string.IsNullOrEmpty(chart.CurrentTemplateName))
     {
         chbxBindCurrencyTicket.Checked = ChartTemplate.IsUniversalTemplate(chart.CurrentTemplateName);
         cbTemplateName.SelectedItem    =
             cbTemplateName.Items.Cast <string>().FirstOrDefault(x => x == chart.CurrentTemplateName);
     }
 }
Пример #10
0
        private void btnLoadSeries_Click(object sender, EventArgs e)
        {
            DataTable       dt  = new DYMonthDataService().GetDataTable("1201032");
            ChartPointQueue cpq = GetChartPointQueue(dt);

            ChartTemplate chartTemplate = new ChartTemplate();

            chartTemplate.Title.Text = "测试标题";
            chartTemplate.LoadChartTemplate(cpq);

            this.bdChart1.SetChartTemplate(chartTemplate);
            this.bdChart1.Refresh();
        }
Пример #11
0
        /// <summary>
        /// Сохранение навого шаблона
        /// </summary>
        private void BtnSaveClick(object sender, EventArgs e)
        {
            var newTemplateName = cbTemplateName.Text.Trim();

            if (string.IsNullOrEmpty(newTemplateName))
            {
                MessageBox.Show(
                    Localizer.GetString("MessageTemplateNameMustBeNotEmpty"),
                    Localizer.GetString("TitleError"));
            }
            else
            {
                var rootNodeTemplates = ToolSettingsStorageFile.LoadOrCreateNode(ToolSettingsStorageFile.NodeNameChartTemplates, false);
                var doc = rootNodeTemplates.OwnerDocument;

                if (doc != null)
                {
                    XmlElement templateNode;
                    if (!ChartTemplate.GetChartTemplateNames().Contains(newTemplateName))
                    {
                        //Если узла "chartTemplate" в документе с таким именем ещё не существует, то создаём новый узел с таким именем
                        templateNode = (XmlElement)rootNodeTemplates.AppendChild(doc.CreateElement(ToolSettingsStorageFile.NodeNameChartTemplate));
                    }
                    else
                    {
                        //Если узл "chartTemplate" в документе с таким именем уже существует, то спрашиваем у пользователя, нужноли перезаписать в этот узел новый шаблон
                        if (
                            MessageBox.Show(
                                Localizer.GetString("MessageSuchNamedTemplateExistsOverwrite"),
                                Localizer.GetString("TitleConfirmation"),
                                MessageBoxButtons.OKCancel) == DialogResult.OK)
                        {
                            // если перезаписать, то находим по имени шаблона, описывающий его XmlElement
                            templateNode = (XmlElement)rootNodeTemplates.ChildNodes.Cast <XmlNode>().FirstOrDefault(node => node.Attributes != null &&
                                                                                                                    node.Attributes[ChartTemplate.AttributeName].Value != null &&
                                                                                                                    node.Attributes[ChartTemplate.AttributeName].Value == newTemplateName);
                            // и удаляем  из него  все дочерние узлы (они содержат описания индикаторов) и атрибуты
                            if (templateNode != null)
                            {
                                templateNode.RemoveAll();
                            }
                        }
                        else
                        {
                            return;
                        }
                    }
                    SaveTemplate(templateNode, doc);
                }
            }
        }
Пример #12
0
        /**
         * second step to edit dimension data
         */
        public ActionResult AddNewChartName(ChartTemplate model)
        {
            //return "comparison" + model.comparison + "composition" + model.composition+"name"+model.name+"dimcount"+model.dimensionCount;
            Session["dimensionData"]   = model;
            ViewData["dimensionCount"] = model.dimentionCountVal;
            List <DimensionTemplate> temp = new List <DimensionTemplate>();

            for (int i = 0; i < model.dimentionCountVal; i++)
            {
                DimensionTemplate template = new DimensionTemplate();
                template.dimensionIndex = i;
                temp.Add(template);
            }
            return(View(temp));
        }
Пример #13
0
        /// <summary>
        /// Получение шаблона из toolset.xml и применение его к графику
        /// </summary>
        /// <param name="templateName">имя щаблона, который нужно применить</param>
        /// <param name="child">форма, на которой распологается график</param>
        private static void ApplyTemplate(string templateName, ChartForm child)
        {
            var childTemplate = ChartTemplate.GetChartTemplate(templateName);

            if (childTemplate == null)
            {
                return;
            }
            if (childTemplate.Attributes[ChartTemplate.AttributeChartSize] != null)
            {
                child.Size = ChartTemplate.StringToSize(childTemplate.Attributes[ChartTemplate.AttributeChartSize].Value).Value;
            }

            child.chart.LoadIndicatorSettings(childTemplate);
            child.chart.UpdateIndicatorPanesAndSeries();
        }
Пример #14
0
        /**
         * get detail of single chart
         */
        public ActionResult ChartDetails(int id)
        {
            ViewData["activeMenu"] = "ChartList";
            chart         result    = db.charts.Find(id);
            ChartTemplate chartData = new ChartTemplate();

            chartData.name = result.name;
            // search for intention
            List <intention> intensionList = db.intentions.Where(b => b.chartID == id).ToList();

            chartData.intentionList = intensionList;        // add intention

            // search for dimension count
            List <dimensionCount> dimensionCount = db.dimensionCounts.Where(b => b.chartID == id).ToList();

            chartData.dimensionCount = new List <int>();
            foreach (var eachDim in dimensionCount)
            {
                chartData.dimensionCount.Add(eachDim.count.Value);
            }

            // search for each dimension
            List <chartDimension> dimensionChart = db.chartDimensions.Where(b => b.chartID == id).ToList();

            chartData.dimentionList = new List <DimensionTemplate>();
            foreach (var item in dimensionChart)
            {
                DimensionTemplate dimensionTemplate = new DimensionTemplate();
                dimensionTemplate.isContineous   = Convert.ToBoolean(item.isContinuous); // add is contineous
                dimensionTemplate.dimensionIndex = item.dimensionIndex.Value;


                // search for cardinality
                List <chartDimensionCardinality> dimensionChartCardinality = db.chartDimensionCardinalities.Where(b => b.dimensionID == item.ID).ToList();
                dimensionTemplate.cardinalityType = dimensionChartCardinality;

                // search for context
                List <dimensionContext> dimentionContext = db.dimensionContexts.Where(b => b.dimensionID == item.ID).ToList();
                dimensionTemplate.contextType = dimentionContext;

                chartData.dimentionList.Add(dimensionTemplate);
            }

            return(View(chartData));
        }
Пример #15
0
        private void NewChartFormLoad(object sender, EventArgs e)
        {
            var timeframes =
                BarSettingsStorage.Instance.GetCollection().Select(
                    n => BarSettingsStorage.Instance.GetBarSettingsFriendlyName(n)).ToList();

            cbTimeframe.DataSource = timeframes;
            if (timeframes.Count > 4)
            {
                cbTimeframe.SelectedIndex = 4;
            }

            cbTicker.Initialize();
            if (cbTicker.Items.Count != 0)
            {
                cbTicker.SelectedIndex = 0;
            }

            cbTemplates.Items.Clear();
            cbTemplates.Items.AddRange(ChartTemplate.GetChartTemplateNames(cbTicker.Text));
        }
Пример #16
0
        private void btnAdd_Click(object sender, RoutedEventArgs e)
        {
            List<User> selectedUsers = (from usr in usersList
                                        where usr.IsSelected == true
                                        select usr.User as User).ToList();

            try
            {
                CheckInputs();
                ChartTemplate templ = new ChartTemplate() { Name = txtName.Text, Users = selectedUsers, Profile = (Profile)cmbProfile.SelectedItem };
                chartsList.Add(templ.Create(templ));

                txtName.Text = "";
                txtName.Focus();
                btnUnselectAll_Click(null, null);
            }
            catch (System.Exception ex)
            {
                VisualMessageBox.Show(ex.Message, "Fehler");
            }
        }
Пример #17
0
        /// <summary>
        /// Обработчик события открывает форму выбора шаблона для применения и применяет выбранный шаблон, если пользователь нажал "Ok"
        /// </summary>
        private void MenuLoadTemplateClick(object sender, EventArgs e)
        {
            var currentChartWindows = ActiveMdiChild as ChartForm;

            if (currentChartWindows == null)
            {
                return;
            }

            var applyChartTemplate = new ApplyChartTemplate(currentChartWindows.chart);

            if (applyChartTemplate.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            // Удаляем все индикаторы, которые сейчас есть на графике
            while (currentChartWindows.chart.indicators.Count > 0)
            {
                currentChartWindows.chart.RemoveIndicator(currentChartWindows.chart.indicators[0]);
            }

            var applyTemplateXml = ChartTemplate.GetChartTemplate(currentChartWindows.chart.CurrentTemplateName);

            if (applyTemplateXml != null && applyTemplateXml.Attributes != null)
            {
                var sz = applyTemplateXml.GetAttributeSize(ChartTemplate.AttributeChartSize);
                if (sz.HasValue)
                {
                    currentChartWindows.Size = sz.Value;
                }

                currentChartWindows.chart.CurrentTemplateName =
                    applyTemplateXml.GetAttributeString(ChartTemplate.AttributeName,
                                                        currentChartWindows.chart.CurrentTemplateName);
                currentChartWindows.chart.LoadIndicatorSettings(applyTemplateXml);
            }
            currentChartWindows.chart.UpdateIndicatorPanesAndSeries();
            currentChartWindows.chart.BuildIndicators(true);
        }
Пример #18
0
        private void buttonAdv1_Click(object sender, EventArgs e)
        {
            //Saves file to the same template
            if (frm.radioButton1.Checked)
            {
                ChartTemplate.Save(this.chartControl1, currentTemplate);
            }
            //Saves file to a new template
            if (frm.radioButton2.Checked)
            {
                if (templateCount < 2)
                {
                    if (templateCount == 0)
                    {
                        Templatebutton.Visible   = true;
                        this.buttonAdv7.Visible  = true;
                        this.buttonAdv11.Visible = true;
                    }
                    if (templateCount == 1)
                    {
                        Templatebutton.Visible   = true;
                        this.buttonAdv10.Visible = true;
                        this.buttonAdv12.Visible = true;
                    }
                    templateCount = templateCount + 1;


                    saveTemplateFile = "Template" + templateCount.ToString() + ".xml";
                    ChartTemplate.Save(this.chartControl1, saveTemplateFile);
                }
                else
                {
                    MessageBox.Show("Programmed to add only two user defined templates");
                }
            }
            frm.Hide();
        }
Пример #19
0
        public ActionResult EditChartVal(ChartTemplate chartTemplate)
        {
            chart resultChart = db.charts.Where(s => s.ID == chartTemplate.id).FirstOrDefault <chart>();

            resultChart.name            = chartTemplate.name;
            db.Entry(resultChart).State = System.Data.Entity.EntityState.Modified;
            db.SaveChanges();

            var intentionVal = db.intentions.Where(p => p.chartID == chartTemplate.id);

            foreach (var intenDim in intentionVal)                          // update intention table
            {
                db.intentions.Remove(intenDim);
            }
            db.Entry(resultChart).State = System.Data.Entity.EntityState.Modified;
            db.SaveChanges();

            if (chartTemplate.comparison)
            {
                intention tableIntention = new intention();
                tableIntention.chartID    = chartTemplate.id;
                tableIntention.intention1 = "Comparison";
                db.intentions.Add(tableIntention);
                db.SaveChanges();
            }
            if (chartTemplate.composition)
            {
                intention tableIntention = new intention();
                tableIntention.chartID    = chartTemplate.id;
                tableIntention.intention1 = "Composition";
                db.intentions.Add(tableIntention);
                db.SaveChanges();
            }
            if (chartTemplate.distribution)
            {
                intention tableIntention = new intention();
                tableIntention.chartID    = chartTemplate.id;
                tableIntention.intention1 = "Distribution";
                db.intentions.Add(tableIntention);
                db.SaveChanges();
            }
            if (chartTemplate.relationship)
            {
                intention tableIntention = new intention();
                tableIntention.chartID    = chartTemplate.id;
                tableIntention.intention1 = "Relationship";
                db.intentions.Add(tableIntention);
                db.SaveChanges();
            }

            foreach (var dimList in chartTemplate.dimentionList)
            {
                chartDimension chartDim = db.chartDimensions.Where(s => s.chartID == chartTemplate.id).Where(p => p.dimensionIndex == dimList.dimensionIndex).FirstOrDefault <chartDimension>();
                chartDim.isContinuous    = Convert.ToInt32(dimList.dimensionIndex);
                db.Entry(chartDim).State = System.Data.Entity.EntityState.Modified;
                try
                {
                    db.SaveChanges();
                }
                catch (Exception e)
                {
                }



                var dimContext = db.dimensionContexts.Where(s => s.dimensionID == dimList.dimensionIndex);
                foreach (var listDimContext in dimContext)
                {
                    db.dimensionContexts.Remove(listDimContext);
                }
                try
                {
                    db.SaveChanges();
                }catch (Exception e)
                {
                }

                if (dimList.cardinalityAny)
                {
                    dimensionContext dimCon = new dimensionContext();
                    dimCon.dimensionID = dimList.dimensionIndex;
                    dimCon.context     = "Any";
                    db.dimensionContexts.Add(dimCon);
                }
                if (dimList.contextTimeseries)
                {
                    dimensionContext dimCon = new dimensionContext();
                    dimCon.dimensionID = dimList.dimensionIndex;
                    dimCon.context     = "Time series";
                    db.dimensionContexts.Add(dimCon);
                }
                if (dimList.contextNumeric)
                {
                    dimensionContext dimCon = new dimensionContext();
                    dimCon.dimensionID = dimList.dimensionIndex;
                    dimCon.context     = "Numeric";
                    db.dimensionContexts.Add(dimCon);
                }
                if (dimList.contextNominal)
                {
                    dimensionContext dimCon = new dimensionContext();
                    dimCon.dimensionID = dimList.dimensionIndex;
                    dimCon.context     = "Nominal";
                    db.dimensionContexts.Add(dimCon);
                }
                if (dimList.contextLocation)
                {
                    dimensionContext dimCon = new dimensionContext();
                    dimCon.dimensionID = dimList.dimensionIndex;
                    dimCon.context     = "Location";
                    db.dimensionContexts.Add(dimCon);
                }
            }
            try
            {
                db.SaveChanges();
            }
            catch (Exception e)
            {
            }


            return(RedirectToAction("ChartList", "Admin"));
        }
Пример #20
0
        private void ChartType_Click(object sender, EventArgs e)
        {
            ButtonAdv chartButton = sender as ButtonAdv;

            this.buttonAdv1.Enabled  = true;
            this.buttonAdv2.Enabled  = true;
            this.buttonAdv3.Enabled  = true;
            this.buttonAdv4.Enabled  = true;
            this.buttonAdv5.Enabled  = true;
            this.buttonAdv6.Enabled  = true;
            this.buttonAdv7.Enabled  = true;
            this.buttonAdv10.Enabled = true;
            string filePath = Application.StartupPath.ToString();

            foreach (ButtonAdv buttonAdv in this.panel3.Controls)
            {
                buttonAdv.State = ButtonAdvState.Default;
                buttonAdv.Refresh();
            }
            if (chartButton == this.buttonAdv1)
            {
                #region Control settings

                this.toolStripStatusLabel1.Text = filePath + "\\Column_Cylinder.xml";
                currentTemplate         = "Column_Cylinder.xml";
                this.buttonAdv1.State   = ButtonAdvState.Pressed;
                this.buttonAdv1.Enabled = false;
                #endregion
            }
            if (chartButton == this.buttonAdv2)
            {
                #region Control settings

                this.toolStripStatusLabel1.Text = filePath + "\\Column_Square.xml";
                this.buttonAdv2.State           = ButtonAdvState.Pressed;
                this.buttonAdv2.Enabled         = false;
                currentTemplate = "Column_Square.xml";
                #endregion
            }
            if (chartButton == this.buttonAdv3)
            {
                #region Control settings

                this.toolStripStatusLabel1.Text = filePath + "\\Area.xml";
                this.buttonAdv3.State           = ButtonAdvState.Pressed;
                this.buttonAdv3.Enabled         = false;
                currentTemplate = "Area.xml";
                #endregion
            }
            if (chartButton == this.buttonAdv4)
            {
                #region Control settings

                this.toolStripStatusLabel1.Text = filePath + "\\Area_3D.xml";
                this.buttonAdv4.State           = ButtonAdvState.Pressed;
                this.buttonAdv4.Enabled         = false;
                currentTemplate = "Area_3D.xml";
                #endregion
            }
            if (chartButton == this.buttonAdv5)
            {
                #region Control settings

                this.toolStripStatusLabel1.Text = filePath + "\\Line.xml";
                this.buttonAdv5.State           = ButtonAdvState.Pressed;
                this.buttonAdv5.Enabled         = false;
                currentTemplate = "Line.xml";
                #endregion
            }
            if (chartButton == this.buttonAdv6)
            {
                #region Control settings

                this.toolStripStatusLabel1.Text = filePath + "\\Line_3D.xml";
                this.buttonAdv6.State           = ButtonAdvState.Pressed;
                this.buttonAdv6.Enabled         = false;
                currentTemplate = "Line_3D.xml";
                #endregion
            }
            if (chartButton == this.buttonAdv7)
            {
                #region Control settings

                this.toolStripStatusLabel1.Text = filePath + "\\Template1.xml";
                this.buttonAdv7.State           = ButtonAdvState.Pressed;
                currentTemplate         = "Template1.xml";
                this.buttonAdv7.Enabled = false;
                #endregion
            }
            if (chartButton == this.buttonAdv10)
            {
                #region Control settings
                this.toolStripStatusLabel1.Text = filePath + "\\Template2.xml";
                this.buttonAdv10.State          = ButtonAdvState.Pressed;
                currentTemplate          = "Template2.xml";
                this.buttonAdv10.Enabled = false;
                #endregion
            }

            ChartTemplate.Load(this.chartControl1, currentTemplate);

            #region Control settings

            this.propertyGrid1.Refresh();
            #endregion
        }
Пример #21
0
        /**
         * put new chart into the database
         */
        public ActionResult AddNewChartNameVal(List <DimensionTemplate> dimList)
        {
            string        val          = "";
            ChartTemplate sessionModel = (ChartTemplate)Session["dimensionData"];

            chart chartTable = new chart();

            chartTable.name = sessionModel.name;
            db.charts.Add(chartTable);
            db.SaveChanges();


            if (sessionModel.comparison)
            {
                intention tableIntention = new intention();
                tableIntention.chartID    = chartTable.ID;
                tableIntention.intention1 = "Comparison";
                db.intentions.Add(tableIntention);
                db.SaveChanges();
                val += ",comparison added";
            }
            if (sessionModel.composition)
            {
                intention tableIntention = new intention();
                tableIntention.chartID    = chartTable.ID;
                tableIntention.intention1 = "Composition";
                db.intentions.Add(tableIntention);
                db.SaveChanges();
                val += ",composition added";
            }
            if (sessionModel.distribution)
            {
                intention tableIntention = new intention();
                tableIntention.chartID    = chartTable.ID;
                tableIntention.intention1 = "Distribution";
                db.intentions.Add(tableIntention);
                db.SaveChanges();
                val += ",distribution added";
            }
            if (sessionModel.relationship)
            {
                intention tableIntention = new intention();
                tableIntention.chartID    = chartTable.ID;
                tableIntention.intention1 = "Relationship";
                db.intentions.Add(tableIntention);
                db.SaveChanges();
                val += ",relationip added";
            }

            foreach (var item in dimList)
            {
                item.dimensionIndex++;
                chartDimension tableChartDimension = new chartDimension();
                tableChartDimension.chartID        = chartTable.ID;
                tableChartDimension.dimensionIndex = item.dimensionIndex;
                tableChartDimension.isContinuous   = Convert.ToInt32(item.isContineous);
                db.chartDimensions.Add(tableChartDimension);
                db.SaveChanges();

                if (item.isSelected)
                {
                    dimensionCount tableDimensionCount = new dimensionCount();
                    tableDimensionCount.chartID = chartTable.ID;
                    tableDimensionCount.count   = item.dimensionIndex;
                    db.dimensionCounts.Add(tableDimensionCount);
                    db.SaveChanges();
                    val += ",isselected added";
                }

                if (item.cardinalityAny)
                {
                    chartDimensionCardinality tableChartDimensionCardinality = new chartDimensionCardinality();
                    tableChartDimensionCardinality.dimensionID = tableChartDimension.ID;
                    tableChartDimensionCardinality.cardinality = "Any";
                    db.chartDimensionCardinalities.Add(tableChartDimensionCardinality);
                    db.SaveChanges();
                }
                else
                {
                    if (item.cardinalityHigh)
                    {
                        chartDimensionCardinality tableChartDimensionCardinality = new chartDimensionCardinality();
                        tableChartDimensionCardinality.dimensionID = tableChartDimension.ID;
                        tableChartDimensionCardinality.cardinality = "High";
                        db.chartDimensionCardinalities.Add(tableChartDimensionCardinality);
                        db.SaveChanges();
                    }
                    if (item.cardinalityMedium)
                    {
                        chartDimensionCardinality tableChartDimensionCardinality = new chartDimensionCardinality();
                        tableChartDimensionCardinality.dimensionID = tableChartDimension.ID;
                        tableChartDimensionCardinality.cardinality = "Medium";
                        db.chartDimensionCardinalities.Add(tableChartDimensionCardinality);
                        db.SaveChanges();
                    }
                    if (item.cardinalityLow)
                    {
                        chartDimensionCardinality tableChartDimensionCardinality = new chartDimensionCardinality();
                        tableChartDimensionCardinality.dimensionID = tableChartDimension.ID;
                        tableChartDimensionCardinality.cardinality = "Low";
                        db.chartDimensionCardinalities.Add(tableChartDimensionCardinality);
                        db.SaveChanges();
                    }
                }

                if (item.contextLocation)
                {
                    dimensionContext tableDimensionContext = new dimensionContext();
                    tableDimensionContext.dimensionID = tableChartDimension.ID;
                    tableDimensionContext.context     = "Location";
                    db.dimensionContexts.Add(tableDimensionContext);
                    db.SaveChanges();
                }
                if (item.contextNominal)
                {
                    dimensionContext tableDimensionContext = new dimensionContext();
                    tableDimensionContext.dimensionID = tableChartDimension.ID;
                    tableDimensionContext.context     = "Nominal";
                    db.dimensionContexts.Add(tableDimensionContext);
                    db.SaveChanges();
                }
                if (item.contextNumeric)
                {
                    dimensionContext tableDimensionContext = new dimensionContext();
                    tableDimensionContext.dimensionID = tableChartDimension.ID;
                    tableDimensionContext.context     = "Numeric";
                    db.dimensionContexts.Add(tableDimensionContext);
                    db.SaveChanges();
                }
                if (item.contextPercentage)
                {
                    dimensionContext tableDimensionContext = new dimensionContext();
                    tableDimensionContext.dimensionID = tableChartDimension.ID;
                    tableDimensionContext.context     = "Percentage";
                    db.dimensionContexts.Add(tableDimensionContext);
                    db.SaveChanges();
                }
                if (item.contextTimeseries)
                {
                    dimensionContext tableDimensionContext = new dimensionContext();
                    tableDimensionContext.dimensionID = tableChartDimension.ID;
                    tableDimensionContext.context     = "Time series";
                    db.dimensionContexts.Add(tableDimensionContext);
                    db.SaveChanges();
                }
            }



            return(RedirectToAction("ChartList", "Admin"));
        }
Пример #22
0
        public ActionResult EditChart(int id)
        {
            ChartTemplate chartTemplate = new ChartTemplate();

            chartTemplate.id = id;
            var resultChart = db.charts.Where(p => p.ID == id);

            foreach (var item in resultChart)
            {
                chartTemplate.name = item.name;                             // update from chart table
            }

            var intentionVal = db.intentions.Where(p => p.chartID == id);

            foreach (var intenDim in intentionVal)                          // update intention table
            {
                if (intenDim.intention1 == "Comparison")
                {
                    chartTemplate.comparison = true;
                }
                else
                {
                    chartTemplate.comparison = false;
                }
                if (intenDim.intention1 == "Composition")
                {
                    chartTemplate.composition = true;
                }
                else
                {
                    chartTemplate.composition = false;
                }
                if (intenDim.intention1 == "Distribution")
                {
                    chartTemplate.distribution = true;
                }
                else
                {
                    chartTemplate.distribution = false;
                }
                if (intenDim.intention1 == "Relationship")
                {
                    chartTemplate.relationship = true;
                }
                else
                {
                    chartTemplate.relationship = false;
                }
            }

            var chartDim = db.chartDimensions.Where(p => p.chartID == id);

            chartTemplate.dimentionList = new List <DimensionTemplate>();
            foreach (var itemDim in chartDim)
            {
                DimensionTemplate dimention = new DimensionTemplate();
                if (itemDim.isContinuous == 1)
                {
                    dimention.isContineous = true;
                }
                else
                {
                    dimention.isContineous = false;
                }
                dimention.dimensionIndex = itemDim.dimensionIndex.Value;

                var contextDim = db.dimensionContexts.Where(d => d.dimensionID == itemDim.ID);
                foreach (var contextVar in contextDim)
                {
                    if (contextVar.context == "Location")
                    {
                        dimention.contextLocation = true;
                    }
                    else
                    {
                        dimention.contextLocation = false;
                    }
                    if (contextVar.context == "Nominal")
                    {
                        dimention.contextNominal = true;
                    }
                    else
                    {
                        dimention.contextNominal = false;
                    }
                    if (contextVar.context == "Numeric")
                    {
                        dimention.contextNumeric = true;
                    }
                    else
                    {
                        dimention.contextNumeric = false;
                    }
                    if (contextVar.context == "Percentage")
                    {
                        dimention.contextPercentage = true;
                    }
                    else
                    {
                        dimention.contextPercentage = false;
                    }
                    if (contextVar.context == "Time series")
                    {
                        dimention.contextTimeseries = true;
                    }
                    else
                    {
                        dimention.contextTimeseries = false;
                    }
                }

                chartTemplate.dimentionList.Add(dimention);
            }

            return(View(chartTemplate));
        }
Пример #23
0
 private void button1_Click(object sender, EventArgs e)
 {
     ChartTemplate.Save(this.chartControl1, "Chart.xml");
     this.button2.Enabled = true;
 }
Пример #24
0
 private void button2_Click(object sender, EventArgs e)
 {
     ChartTemplate.Load(this.chartControl2, "Chart.xml");
 }
Пример #25
0
        private void btnWriteXml_Click(object sender, EventArgs e)
        {
            ChartTemplate chartTemplate = bdChart1.GetChartTemplate();

            chartTemplate.WriteXmlFile(fileName);
        }
Пример #26
0
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            Syncfusion.Windows.Forms.Chart.ChartSeries chartSeries1 = new Syncfusion.Windows.Forms.Chart.ChartSeries();
            this.chartControl1 = new Syncfusion.Windows.Forms.Chart.ChartControl();
            this.SuspendLayout();
            //
            // chartControl1
            //
            this.chartControl1.ChartArea.BackInterior   = new Syncfusion.Drawing.BrushInfo(System.Drawing.Color.Transparent);
            this.chartControl1.ChartArea.CursorLocation = new System.Drawing.Point(0, 0);
            this.chartControl1.ChartArea.CursorReDraw   = false;
            this.chartControl1.DataSourceName           = "[none]";
            this.chartControl1.IsWindowLess             = false;
            this.chartControl1.Title.Text = "Product Sales";
            this.chartControl1.Size       = new System.Drawing.Size(457, 330);
            this.chartControl1.TabIndex   = 0;
            this.chartControl1.Title.Name = "Default";
            this.chartControl1.Titles.Add(this.chartControl1.Title);
            this.chartControl1.Skins                   = Skins.Metro;
            this.chartControl1.ShowToolTips            = true;
            this.chartControl1.Tooltip.BackgroundColor = new BrushInfo(Color.White);
            this.chartControl1.Tooltip.BorderStyle     = BorderStyle.FixedSingle;
            this.chartControl1.Tooltip.Font            = new Font("Segoe UI", 10);

            //
            // Legend
            //
            this.chartControl1.Legend.Visible   = true;
            this.chartControl1.LegendAlignment  = ChartAlignment.Center;
            this.chartControl1.Legend.Position  = ChartDock.Top;
            this.chartControl1.LegendsPlacement = ChartPlacement.Outside;
            this.chartControl1.Legend.Location  = new System.Drawing.Point(321, 87);
            this.chartControl1.Localize         = null;
            this.chartControl1.Location         = new System.Drawing.Point(174, 87);
            //
            // PrimaryXAxis
            //
            this.chartControl1.PrimaryXAxis.Title      = "Year";
            this.chartControl1.PrimaryXAxis.ValueType  = ChartValueType.Category;
            this.chartControl1.PrimaryXAxis.TitleColor = System.Drawing.SystemColors.ControlText;
            //
            // PrimaryYAxis
            //
            this.chartControl1.PrimaryYAxis.Title      = "Sales(Millions)";
            this.chartControl1.PrimaryYAxis.TitleColor = System.Drawing.SystemColors.ControlText;
            //
            // Form1
            //
            BindingList <SalesData> dataSource = new BindingList <SalesData>();

            dataSource.Add(new SalesData("1999", 5));
            dataSource.Add(new SalesData("2000", 7));
            dataSource.Add(new SalesData("2001", 12));
            dataSource.Add(new SalesData("2002", 18));
            dataSource.Add(new SalesData("2003", 22));
            dataSource.Add(new SalesData("2004", 30));
            dataSource.Add(new SalesData("2005", 40));
            dataSource.Add(new SalesData("2006", 50));
            dataSource.Add(new SalesData("2007", 65));
            dataSource.Add(new SalesData("2008", 75));

            CategoryAxisDataBindModel dataSeriesModel = new CategoryAxisDataBindModel(dataSource);

            dataSeriesModel.CategoryName = "Year";
            dataSeriesModel.YNames       = new string[] { "Sales" };

            var template = new ChartTemplate(typeof(ChartControl));

            template.Scan(this.chartControl1);
            template.Save("TemplateName.xml");

            //ChartTemplate.Save(this.chartControl1, "TemplateName.xml");

            chartSeries1 = new ChartSeries("Sales");
            chartSeries1.PointsToolTipFormat   = "{2}";
            chartSeries1.PrepareStyle         += ChartSeries1_PrepareStyle;
            chartSeries1.CategoryModel         = dataSeriesModel;
            chartSeries1.Style.DisplayText     = true;
            chartSeries1.Style.TextOrientation = ChartTextOrientation.Up;
            this.chartControl1.Dock            = DockStyle.Fill;
            this.chartControl1.Series.Add(chartSeries1);

            this.chartControl1.Dock  = System.Windows.Forms.DockStyle.Fill;
            this.chartControl1.Size  = new System.Drawing.Size(600, 450);
            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
            this.AutoScaleMode       = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize          = new System.Drawing.Size(821, 577);
            this.Controls.Add(this.chartControl1);
            this.Name = "Form1";
            this.Text = "Form1";
            this.ResumeLayout(false);
        }