Free cookie consent management tool by TermsFeed Policy Generator

Changeset 1962


Ignore:
Timestamp:
05/29/09 17:23:18 (15 years ago)
Author:
cbahner
Message:

#636 first impl. of drawingStyle (DataRowSettings)

Location:
trunk/sources
Files:
1 added
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Visualization.Test/3.2/LineChartTests.cs

    r1885 r1962  
    2222      IDataRow row3 = new DataRow();
    2323
    24       row1.Color = Color.Red;
    25       row2.Color = Color.Green;
    26       row3.Color = Color.Blue;
    27 
    28       row1.Thickness = 3;
    29       row2.Thickness = 4;
    30       row3.Thickness = 5;
    31 
    32       row1.Label = "Simon";
    33       row2.Label = "Gertschi";
    34       row3.Label = "Maxi";
     24      row1.RowSettings.Color = Color.Red;
     25      row2.RowSettings.Color = Color.Green;
     26      row3.RowSettings.Color = Color.Blue;
     27
     28      row1.RowSettings.Thickness = 3;
     29      row2.RowSettings.Thickness = 4;
     30      row3.RowSettings.Thickness = 5;
     31
     32      row1.RowSettings.Label = "Simon";
     33      row2.RowSettings.Label = "Gertschi";
     34      row3.RowSettings.Label = "Maxi";
    3535
    3636      row1.Style = DrawingStyle.Solid;
     
    9898      yaxis2.ShowGrid = false;
    9999
    100       row1.Color = Color.Red;
    101       row1.Thickness = 3;
     100      row1.RowSettings.Color = Color.Red;
     101      row1.RowSettings.Thickness = 3;
    102102      row1.Style = DrawingStyle.Solid;
    103       row1.Label = "Die Rote";
    104 
    105       row2.Color = Color.Green;
    106       row2.Thickness = 3;
     103      row1.RowSettings.Label = "Die Rote";
     104
     105      row2.RowSettings.Color = Color.Green;
     106      row2.RowSettings.Thickness = 3;
    107107      row2.Style = DrawingStyle.Solid;
    108       row2.Label = "Die Grüne";
    109 
    110       row3.Color = Color.Blue;
    111       row3.Thickness = 3;
     108      row2.RowSettings.Label = "Die Grüne";
     109
     110      row3.RowSettings.Color = Color.Blue;
     111      row3.RowSettings.Thickness = 3;
    112112      row3.Style = DrawingStyle.Solid;
    113       row3.Label = "Die Blaue";
     113      row3.RowSettings.Label = "Die Blaue";
    114114      row3.YAxis = yaxis2;
    115115
     
    139139      LineChartTestForm f = new LineChartTestForm(model);
    140140
    141       IDataRow row1 = new DataRow { Label = "row", Color = Color.Red, Thickness = 3, Style = DrawingStyle.Solid };
     141      IDataRow row1 = new DataRow();
     142      row1.RowSettings.Label = "row";
     143      row1.RowSettings.Color = Color.Red;
     144      row1.RowSettings.Thickness = 3;
     145      row1.Style = DrawingStyle.Solid;
    142146
    143147      model.AddDataRow(row1);
    144148
    145149
    146       MaxAggregator aggregator = new MaxAggregator {
    147         Label = "MinAggregator",
    148         Color = Color.Pink,
    149         Thickness = 5,
    150         Style = DrawingStyle.Solid,
    151         LineType = DataRowType.SingleValue
    152       };
     150      MaxAggregator aggregator = new MaxAggregator();
     151      aggregator.RowSettings.Label = "MinAggregator";
     152      aggregator.RowSettings.Color = Color.Pink;
     153      aggregator.RowSettings.Thickness = 5;
     154      aggregator.Style = DrawingStyle.Solid;
     155      aggregator.LineType = DataRowType.SingleValue;
    153156      aggregator.AddWatch(row1);
    154157
     
    175178
    176179      public void DoWorkMultiLine() {
    177         IDataRow row1 = new DataRow { Color = Color.Red, Thickness = 2, Label = "Sinus", Style = DrawingStyle.Solid, ShowMarkers = false };
     180        IDataRow row1 = new DataRow();
     181        row1.RowSettings.Color = Color.Red;
     182        row1.RowSettings.Thickness = 2;
     183        row1.RowSettings.Label = "Sinus";
     184        row1.Style = DrawingStyle.Solid;
     185        row1.ShowMarkers = false;
    178186        model.AddDataRow(row1);
    179187
    180         IDataRow row2 = new DataRow { Color = Color.Red, Thickness = 3, Label = "Growing", Style = DrawingStyle.Solid, ShowMarkers = false };
     188        IDataRow row2 = new DataRow();
     189        row2.RowSettings.Color = Color.Red;
     190        row2.RowSettings.Thickness = 3;
     191        row2.RowSettings.Label = "Growing";
     192        row2.Style = DrawingStyle.Solid;
     193        row2.ShowMarkers = false;
    181194        model.AddDataRow(row2);
    182195
    183         AvgAggregator multiAvgAggregator = new AvgAggregator {
    184           Label = "MultiAvgAggregator",
    185           Color = Color.DarkOliveGreen,
    186           Thickness = 3,
    187           Style = DrawingStyle.Solid,
    188           LineType = DataRowType.SingleValue,
    189           ShowMarkers = false
    190         };
     196        AvgAggregator multiAvgAggregator = new AvgAggregator();
     197        multiAvgAggregator.RowSettings.Label = "MultiAvgAggregator";
     198        multiAvgAggregator.RowSettings.Color = Color.DarkOliveGreen;
     199        multiAvgAggregator.RowSettings.Thickness = 3;
     200        multiAvgAggregator.Style = DrawingStyle.Solid;
     201        multiAvgAggregator.LineType = DataRowType.SingleValue;
     202        multiAvgAggregator.ShowMarkers = false;
    191203        multiAvgAggregator.AddWatch(row1);
    192204        multiAvgAggregator.AddWatch(row2);
    193205        model.AddDataRow(multiAvgAggregator);
    194206
    195         MaxAggregator multiMaxAggregator = new MaxAggregator {
    196           Label = "MultiMaxAggregator",
    197           Color = Color.DarkKhaki,
    198           Thickness = 3,
    199           Style = DrawingStyle.Solid,
    200           LineType = DataRowType.SingleValue,
    201           ShowMarkers = false
    202         };
     207        MaxAggregator multiMaxAggregator = new MaxAggregator();
     208        multiMaxAggregator.RowSettings.Label = "MultiMaxAggregator";
     209        multiMaxAggregator.RowSettings.Color = Color.DarkKhaki;
     210        multiMaxAggregator.RowSettings.Thickness = 3;
     211        multiMaxAggregator.Style = DrawingStyle.Solid;
     212        multiMaxAggregator.LineType = DataRowType.SingleValue;
     213        multiMaxAggregator.ShowMarkers = false;
    203214        multiMaxAggregator.AddWatch(row1);
    204215        multiMaxAggregator.AddWatch(row2);
    205216        model.AddDataRow(multiMaxAggregator);
    206217
    207         MinAggregator multiMinAggregator = new MinAggregator {
    208           Label = "MultiMinAggregator",
    209           Color = Color.DarkRed,
    210           Thickness = 3,
    211           Style = DrawingStyle.Solid,
    212           LineType = DataRowType.SingleValue,
    213           ShowMarkers = false
    214         };
     218        MinAggregator multiMinAggregator = new MinAggregator();
     219        multiMinAggregator.RowSettings.Label = "MultiMinAggregator";
     220        multiMinAggregator.RowSettings.Color = Color.DarkRed;
     221        multiMinAggregator.RowSettings.Thickness = 3;
     222        multiMinAggregator.Style = DrawingStyle.Solid;
     223        multiMinAggregator.LineType = DataRowType.SingleValue;
     224        multiMinAggregator.ShowMarkers = false;
    215225        multiMinAggregator.AddWatch(row1);
    216226        multiMinAggregator.AddWatch(row2);
     
    246256
    247257      public void DoWorkSingleLine() {
    248         IDataRow row1 = new DataRow {
    249           Color = Color.Red,
    250           Thickness = 2,
    251           Label = "Sinus",
    252           Style = DrawingStyle.Solid,
    253           ShowMarkers = false
    254         };
     258        IDataRow row1 = new DataRow();
     259        row1.RowSettings.Color = Color.Red;
     260        row1.RowSettings.Thickness = 2;
     261        row1.RowSettings.Label = "Sinus";
     262        row1.Style = DrawingStyle.Solid;
     263        row1.ShowMarkers = false;
    255264        model.AddDataRow(row1);
    256265
    257         IDataRow row2 = new DataRow {
    258           Color = Color.Red,
    259           Thickness = 3,
    260           Label = "Growing",
    261           Style = DrawingStyle.Solid,
    262           ShowMarkers = false
    263         };
     266        IDataRow row2 = new DataRow();
     267        row2.RowSettings.Color = Color.Red;
     268        row2.RowSettings.Thickness = 3;
     269        row2.RowSettings.Label = "Growing";
     270        row2.Style = DrawingStyle.Solid;
     271        row2.ShowMarkers = false;
    264272        model.AddDataRow(row2);
    265273
    266         MinAggregator aggregator = new MinAggregator {
    267           Label = "MinAggregator",
    268           Color = Color.Pink,
    269           Thickness = 3,
    270           Style = DrawingStyle.Solid,
    271           LineType = DataRowType.SingleValue
    272         };
     274        MinAggregator aggregator = new MinAggregator();
     275        aggregator.RowSettings.Label = "MinAggregator";
     276        aggregator.RowSettings.Color = Color.Pink;
     277        aggregator.RowSettings.Thickness = 3;
     278        aggregator.Style = DrawingStyle.Solid;
     279        aggregator.LineType = DataRowType.SingleValue;
    273280        aggregator.AddWatch(row1);
    274281        model.AddDataRow(aggregator);
    275282
    276         MaxAggregator maxAggregator = new MaxAggregator {
    277           Label = "MaxAggregator",
    278           Color = Color.DeepSkyBlue,
    279           Thickness = 3,
    280           Style = DrawingStyle.Solid,
    281           LineType = DataRowType.SingleValue
    282         };
     283        MaxAggregator maxAggregator = new MaxAggregator();
     284        maxAggregator.RowSettings.Label = "MaxAggregator";
     285        maxAggregator.RowSettings.Color = Color.DeepSkyBlue;
     286        maxAggregator.RowSettings.Thickness = 3;
     287        maxAggregator.Style = DrawingStyle.Solid;
     288        maxAggregator.LineType = DataRowType.SingleValue;
    283289        maxAggregator.AddWatch(row1);
    284290        model.AddDataRow(maxAggregator);
    285291
    286         AvgAggregator avgAggregator = new AvgAggregator {
    287           Label = "AvgAggregator",
    288           Color = Color.Violet,
    289           Thickness = 3,
    290           Style = DrawingStyle.Solid,
    291           LineType = DataRowType.SingleValue
    292         };
     292        AvgAggregator avgAggregator = new AvgAggregator();
     293        avgAggregator.RowSettings.Label = "AvgAggregator";
     294        avgAggregator.RowSettings.Color = Color.Violet;
     295        avgAggregator.RowSettings.Thickness = 3;
     296        avgAggregator.Style = DrawingStyle.Solid;
     297        avgAggregator.LineType = DataRowType.SingleValue;
    293298        avgAggregator.AddWatch(row1);
    294299        model.AddDataRow(avgAggregator);
     
    310315
    311316      public void DoWorkAvgLine() {
    312         IDataRow row1 = new DataRow {
    313           Color = Color.Red,
    314           Thickness = 2,
    315           Label = "Sinus",
    316           Style = DrawingStyle.Solid,
    317           ShowMarkers = false
    318         };
     317        IDataRow row1 = new DataRow();
     318        row1.RowSettings.Color = Color.Red;
     319        row1.RowSettings.Thickness = 2;
     320        row1.RowSettings.Label = "Sinus";
     321        row1.Style = DrawingStyle.Solid;
     322        row1.ShowMarkers = false;
    319323        model.AddDataRow(row1);
    320324
    321         IDataRow row2 = new DataRow {
    322           Color = Color.Red,
    323           Thickness = 3,
    324           Label = "Growing",
    325           Style = DrawingStyle.Solid,
    326           ShowMarkers = false
    327         };
     325        IDataRow row2 = new DataRow();
     326        row2.RowSettings.Color = Color.Red;
     327        row2.RowSettings.Thickness = 3;
     328        row2.RowSettings.Label = "Growing";
     329        row2.Style = DrawingStyle.Solid;
     330        row2.ShowMarkers = false;
    328331        model.AddDataRow(row2);
    329332
    330         AvgLineAggregator avgLineAggregator = new AvgLineAggregator {
    331           Label = "AvgLineAggregator",
    332           Color = Color.Violet,
    333           Thickness = 3,
    334           Style = DrawingStyle.Solid,
    335           LineType = DataRowType.Normal,
    336           ShowMarkers = false
    337         };
     333        AvgLineAggregator avgLineAggregator = new AvgLineAggregator();
     334        avgLineAggregator.RowSettings.Label = "AvgLineAggregator";
     335        avgLineAggregator.RowSettings.Color = Color.Violet;
     336        avgLineAggregator.RowSettings.Thickness = 3;
     337        avgLineAggregator.Style = DrawingStyle.Solid;
     338        avgLineAggregator.LineType = DataRowType.Normal;
     339        avgLineAggregator.ShowMarkers = false;
    338340        avgLineAggregator.AddWatch(row1);
    339341        avgLineAggregator.AddWatch(row2);
     
    355357
    356358      public void DoWorkFloatingAvg() {
    357         IDataRow row1 = new DataRow {
    358           Color = Color.Red,
    359           Thickness = 2,
    360           Label = "SinusHacked",
    361           Style = DrawingStyle.Solid,
    362           ShowMarkers = false
    363         };
     359        IDataRow row1 = new DataRow();
     360        row1.RowSettings.Color = Color.Red;
     361        row1.RowSettings.Thickness = 2;
     362        row1.RowSettings.Label = "SinusHacked";
     363        row1.Style = DrawingStyle.Solid;
     364        row1.ShowMarkers = false;
    364365        model.AddDataRow(row1);
    365366
    366         IDataRow row2 = new DataRow {
    367           Color = Color.Red,
    368           Thickness = 3,
    369           Label = "GrowingHacked",
    370           Style = DrawingStyle.Solid,
    371           ShowMarkers = false
    372         };
     367        IDataRow row2 = new DataRow();
     368        row2.RowSettings.Color = Color.Red;
     369        row2.RowSettings.Thickness = 3;
     370        row2.RowSettings.Label = "GrowingHacked";
     371        row2.Style = DrawingStyle.Solid;
     372        row2.ShowMarkers = false;
    373373        model.AddDataRow(row2);
    374374
    375         FloatingAvgAggregator avgAggregator = new FloatingAvgAggregator {
    376                                                                           Thickness = 2,
    377                                                                           Label = "floatingAvg",
    378                                                                           Color = Color.Peru,
    379                                                                           ShowMarkers = false,
    380                                                                           Style = DrawingStyle.Solid
    381                                                                         };
     375        FloatingAvgAggregator avgAggregator = new FloatingAvgAggregator();
     376        avgAggregator.RowSettings.Thickness = 2;
     377        avgAggregator.RowSettings.Label = "floatingAvg";
     378        avgAggregator.RowSettings.Color = Color.Peru;
     379        avgAggregator.ShowMarkers = false;
     380        avgAggregator.Style = DrawingStyle.Solid;
    382381
    383382        avgAggregator.AddWatch(row1);
    384383        model.AddDataRow(avgAggregator);
    385384
    386         FloatingAvgAggregator avgAggregator2 = new FloatingAvgAggregator {
    387           Thickness = 2,
    388           Label = "floatingAvg",
    389           Color = Color.Aqua,
    390           ShowMarkers = false,
    391           Style = DrawingStyle.Solid
    392         };
     385        FloatingAvgAggregator avgAggregator2 = new FloatingAvgAggregator();
     386        avgAggregator2.RowSettings.Thickness = 2;
     387        avgAggregator2.RowSettings.Label = "floatingAvg";
     388        avgAggregator2.RowSettings.Color = Color.Aqua;
     389        avgAggregator2.ShowMarkers = false;
     390        avgAggregator2.Style = DrawingStyle.Solid;
    393391
    394392        avgAggregator2.AddWatch(row2);
     
    490488    [Test]
    491489    public void TestAutoZoomInConstructor() {
    492       IDataRow row1 = new DataRow { Color = Color.Red, Thickness = 3, Style = DrawingStyle.Solid };
     490      IDataRow row1 = new DataRow();
     491      row1.RowSettings.Color = Color.Red;
     492      row1.RowSettings.Thickness = 3;
     493      row1.Style = DrawingStyle.Solid;
    493494
    494495      model.AddDataRow(row1);
     
    518519      IDataRow row6 = new DataRow();
    519520
    520       row1.Color = Color.Red;
    521       row2.Color = Color.Green;
    522       row3.Color = Color.Blue;
    523 
    524       row4.Color = Color.DeepPink;
    525       row5.Color = Color.Firebrick;
    526       row6.Color = Color.DarkSlateGray;
    527 
    528       row1.Thickness = 3;
    529       row2.Thickness = 4;
    530       row3.Thickness = 5;
    531 
    532       row4.Thickness = 3;
    533       row5.Thickness = 4;
    534       row6.Thickness = 5;
    535 
    536       row1.Label = "SingleValue";
    537       row2.Label = "Gertschi";
    538       row3.Label = "Maxi";
    539 
    540       row4.Label = "Simon";
    541       row5.Label = "klausmuellerwesternhagenunddierasperies";
    542       row6.Label = "anyways";
     521      row1.RowSettings.Color = Color.Red;
     522      row2.RowSettings.Color = Color.Green;
     523      row3.RowSettings.Color = Color.Blue;
     524
     525      row4.RowSettings.Color = Color.DeepPink;
     526      row5.RowSettings.Color = Color.Firebrick;
     527      row6.RowSettings.Color = Color.DarkSlateGray;
     528
     529      row1.RowSettings.Thickness = 3;
     530      row2.RowSettings.Thickness = 4;
     531      row3.RowSettings.Thickness = 5;
     532
     533      row4.RowSettings.Thickness = 3;
     534      row5.RowSettings.Thickness = 4;
     535      row6.RowSettings.Thickness = 5;
     536
     537      row1.RowSettings.Label = "SingleValue";
     538      row2.RowSettings.Label = "Gertschi";
     539      row3.RowSettings.Label = "Maxi";
     540
     541      row4.RowSettings.Label = "Simon";
     542      row5.RowSettings.Label = "klausmuellerwesternhagenunddierasperies";
     543      row6.RowSettings.Label = "anyways";
    543544
    544545      row1.Style = DrawingStyle.Solid;
     
    587588    [Test]
    588589    public void TestPointLines() {
    589       IDataRow row1 = new DataRow { Color = Color.Red, Thickness = 3, Style = DrawingStyle.Dashed };
     590      IDataRow row1 = new DataRow();
     591      row1.RowSettings.Color = Color.Red;
     592      row1.RowSettings.Thickness = 3;
     593      row1.Style = DrawingStyle.Dashed;
    590594
    591595      row1.LineType = DataRowType.Points;
  • trunk/sources/HeuristicLab.Visualization/3.2/ChartDataRowsModel.cs

    r1886 r1962  
    121121
    122122        XmlAttribute idAttr = document.CreateAttribute("label");
    123         idAttr.Value = row.Label;
     123        idAttr.Value = row.RowSettings.Label;
    124124        columnElement.Attributes.Append(idAttr);
    125125
     
    156156          string rowLabel = rowIdAttr.Value;
    157157          DataRow row = new DataRow();
    158           row.Label = rowLabel;
     158          row.RowSettings.Label = rowLabel;
    159159
    160160          string[] tokens = dataRow.InnerText.Split(';');
  • trunk/sources/HeuristicLab.Visualization/3.2/ChartDataRowsModelDummy.cs

    r1530 r1962  
    1515      // TODO change to call new DataRow("Datarow 1");
    1616      DataRow row1 = new DataRow();
    17       row1.Label = "Datarow 1";
    18       row1.Color = Color.Red;
     17      row1.RowSettings.Label = "Datarow 1";
     18      row1.RowSettings.Color = Color.Red;
    1919      DataRow row2 = new DataRow();
    20       row2.Label = "Datarow 2";
    21       row2.Color = Color.Blue;
     20      row2.RowSettings.Label = "Datarow 2";
     21      row2.RowSettings.Color = Color.Blue;
    2222      DataRow row3 = new DataRow();
    23       row3.Label = "Datarow 3";
    24       row3.Color = Color.DeepPink;
     23      row3.RowSettings.Label = "Datarow 3";
     24      row3.RowSettings.Color = Color.DeepPink;
    2525
    2626      AddDataRow(row1);
  • trunk/sources/HeuristicLab.Visualization/3.2/DataExport/CSVDataExport.cs

    r1881 r1962  
    2929        writer.AddString(model.XAxis.Label);
    3030        foreach (IDataRow row in model.Rows)
    31           writer.AddString(row.Label);
     31          writer.AddString(row.RowSettings.Label);
    3232        writer.NewLine();
    3333
  • trunk/sources/HeuristicLab.Visualization/3.2/DataRow.cs

    r1561 r1962  
    1818    private readonly List<double> dataRow = new List<double>();
    1919
    20     // TODO implement calculation of min and max values
    2120    private double minValue = double.MaxValue;
    2221    private double maxValue = double.MinValue;
     
    2625   
    2726    public DataRow(string label) {
    28       this.Label = label;
     27      this.RowSettings.Label = label;
    2928    }
    3029
    3130    public DataRow(string label, Color color, int thickness, DrawingStyle style, List<double> dataRow) {
    32       this.Label = label;
    33       this.Color = color;
    34       this.Thickness = thickness;
     31      this.RowSettings.Label = label;
     32      this.RowSettings.Color = color;
     33      this.RowSettings.Thickness = thickness;
    3534      this.Style = style;
    3635      this.dataRow = dataRow;
     
    3938
    4039    public DataRow(string label, Color color, int thickness, DrawingStyle style, List<double> dataRow, bool showMarkers) {
    41       this.Label = label;
    42       this.Color = color;
    43       this.Thickness = thickness;
     40      this.RowSettings.Label = label;
     41      this.RowSettings.Color = color;
     42      this.RowSettings.Thickness = thickness;
    4443      this.Style = style;
    4544      this.ShowMarkers = showMarkers;
  • trunk/sources/HeuristicLab.Visualization/3.2/DataRowBase.cs

    r1561 r1962  
    1 using System.Drawing;
     1using HeuristicLab.Visualization.Options;
    22
    33namespace HeuristicLab.Visualization {
    44  public abstract class DataRowBase : IDataRow {
    5     private string label = "";
    6     private Color color = Color.Black;
    7     private int thickness = 2;
     5    //private string label = "";
     6    //private Color color = Color.Black;
     7    //private int thickness = 2;
    88    private DrawingStyle style = DrawingStyle.Solid;
    99    private DataRowType lineType = DataRowType.Normal;
    1010    private YAxisDescriptor yAxis;
    1111    private bool showMarkers = true;
     12
     13    private DataRowSettings rowSettings = new DataRowSettings();
     14
     15    public DataRowSettings RowSettings {
     16      get { return rowSettings; }
     17      set { rowSettings = value; }
     18    }
    1219
    1320    public bool ShowMarkers {
     
    1926    }         
    2027
    21     public string Label {
    22       get { return label; }
    23       set {
    24         label = value;
    25         OnDataRowChanged(this);
    26       }
    27     }
    28 
    29     public Color Color {
    30       get { return color; }
    31       set {
    32         color = value;
    33         OnDataRowChanged(this);
    34       }
    35     }
    36 
    37     public int Thickness {
    38       get { return thickness; }
    39       set {
    40         thickness = value;
    41         OnDataRowChanged(this);
    42       }
    43     }
     28//    public string Label {
     29//      get { return label; }
     30//      set {
     31//        label = value;
     32//        OnDataRowChanged(this);
     33//      }
     34//    }
     35//
     36//    public Color Color {
     37//      get { return color; }
     38//      set {
     39//        color = value;
     40//        OnDataRowChanged(this);
     41//      }
     42//    }
     43//
     44//    public int Thickness {
     45//      get { return thickness; }
     46//      set {
     47//        thickness = value;
     48//        OnDataRowChanged(this);
     49//      }
     50//    }
    4451
    4552    public DrawingStyle Style {
  • trunk/sources/HeuristicLab.Visualization/3.2/HeuristicLab.Visualization-3.2.csproj

    r1886 r1962  
    44    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    55    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    6     <ProductVersion>9.0.30729</ProductVersion>
     6    <ProductVersion>9.0.21022</ProductVersion>
    77    <SchemaVersion>2.0</SchemaVersion>
    88    <ProjectGuid>{E392A1E2-DC95-4E33-B82E-8ED690EDA1AB}</ProjectGuid>
     
    120120      <DependentUpon>ColorSelection.cs</DependentUpon>
    121121    </Compile>
     122    <Compile Include="Options\DataRowSettings.cs" />
    122123    <Compile Include="XAxisDescriptor.cs" />
    123124    <Compile Include="YAxisGrid.cs" />
  • trunk/sources/HeuristicLab.Visualization/3.2/IDataRow.cs

    r1883 r1962  
    1 using System.Drawing;
     1using HeuristicLab.Visualization.Options;
    22
    33namespace HeuristicLab.Visualization {
     
    88
    99  public interface IDataRow {
    10     string Label { get; set; }
    11     Color Color { get; set; }
    12     int Thickness { get; set; }
     10    //string Label { get; set; }
     11    //Color Color { get; set; }
     12    //int Thickness { get; set; }
    1313    DrawingStyle Style { get; set; }
    1414    DataRowType LineType { get; set; }
    1515    bool ShowMarkers { get; set; }
     16    DataRowSettings RowSettings { get; set; }
    1617 
    1718    YAxisDescriptor YAxis { get; set; }
  • trunk/sources/HeuristicLab.Visualization/3.2/LineChart.cs

    r1885 r1962  
    366366      row.DataRowChanged += OnDataRowChanged;
    367367
    368       legendShape.AddLegendItem(new LegendItem(row.Label, row.Color, row.Thickness));
     368      legendShape.AddLegendItem(new LegendItem(row.RowSettings.Label, row.RowSettings.Color, row.RowSettings.Thickness));
    369369      legendShape.CreateLegend();
    370370
     
    466466      if ((row.LineType == DataRowType.SingleValue)) {
    467467        if (row.Count > 0) {
    468           LineShape lineShape = new HorizontalLineShape(0, row[0], double.MaxValue, row[0], row.Color, row.Thickness,
     468          LineShape lineShape = new HorizontalLineShape(0, row[0], double.MaxValue, row[0], row.RowSettings.Color, row.RowSettings.Thickness,
    469469                                                        row.Style);
    470470          rowEntry.LinesShape.AddShape(lineShape);
     
    473473        rowEntry.showMarkers(true);      //no lines, only markers are shown!!
    474474        for (int i = 0; i < row.Count; i++)
    475           rowEntry.LinesShape.AddMarkerShape(new MarkerShape(i , row[i], 8, row.Color));
     475          rowEntry.LinesShape.AddMarkerShape(new MarkerShape(i, row[i], 8, row.RowSettings.Color));
    476476      } else if (row.LineType == DataRowType.Normal) {
    477477        rowEntry.showMarkers(row.ShowMarkers);
    478478        for (int i = 1; i < row.Count; i++) {
    479           LineShape lineShape = new LineShape(i - 1, row[i - 1], i, row[i], row.Color, row.Thickness, row.Style);
     479          LineShape lineShape = new LineShape(i - 1, row[i - 1], i, row[i], row.RowSettings.Color, row.RowSettings.Thickness, row.Style);
    480480          rowEntry.LinesShape.AddShape(lineShape);
    481           rowEntry.LinesShape.AddMarkerShape(new MarkerShape(i - 1, row[i - 1], 8, row.Color));
     481          rowEntry.LinesShape.AddMarkerShape(new MarkerShape(i - 1, row[i - 1], 8, row.RowSettings.Color));
    482482        }
    483483        if (row.Count > 0) {
    484           rowEntry.LinesShape.AddMarkerShape(new MarkerShape((row.Count - 1), row[(row.Count - 1)], 8, row.Color));
     484          rowEntry.LinesShape.AddMarkerShape(new MarkerShape((row.Count - 1), row[(row.Count - 1)], 8, row.RowSettings.Color));
    485485        }
    486486      }
     
    501501      if (row.LineType == DataRowType.SingleValue) {
    502502        if (action == Action.Added) {
    503           LineShape lineShape = new HorizontalLineShape(0, row[0], double.MaxValue, row[0], row.Color, row.Thickness,
     503          LineShape lineShape = new HorizontalLineShape(0, row[0], double.MaxValue, row[0], row.RowSettings.Color, row.RowSettings.Thickness,
    504504                                                        row.Style);
    505505          rowEntry.LinesShape.AddShape(lineShape);
     
    514514        if (action == Action.Added) {
    515515          if(rowEntry.LinesShape.Count==0)
    516             rowEntry.LinesShape.AddMarkerShape(new MarkerShape(0, row[0], 8, row.Color));
     516            rowEntry.LinesShape.AddMarkerShape(new MarkerShape(0, row[0], 8, row.RowSettings.Color));
    517517          if (index > 0 && index == rowEntry.LinesShape.Count + 1) {
    518             LineShape lineShape = new LineShape(index - 1, row[index - 1], index, row[index], row.Color, row.Thickness,
     518            LineShape lineShape = new LineShape(index - 1, row[index - 1], index, row[index], row.RowSettings.Color, row.RowSettings.Thickness,
    519519                                                row.Style);
    520520            rowEntry.LinesShape.AddShape(lineShape);
    521             rowEntry.LinesShape.AddMarkerShape(new MarkerShape(index, row[index], 8, row.Color));
     521            rowEntry.LinesShape.AddMarkerShape(new MarkerShape(index, row[index], 8, row.RowSettings.Color));
    522522          } else {
    523523            throw new ArgumentException("Adding a value is only possible at the end of a row!");
     
    549549        if (action == Action.Added) {
    550550          if (rowEntry.LinesShape.Count == 0)
    551             rowEntry.LinesShape.AddMarkerShape(new MarkerShape(0, row[0], 8, row.Color));
     551            rowEntry.LinesShape.AddMarkerShape(new MarkerShape(0, row[0], 8, row.RowSettings.Color));
    552552          if (index > 0 && index == rowEntry.LinesShape.Count + 1) {
    553             LineShape lineShape = new LineShape(index-1, row[index-1], index, row[index], row.Color, row.Thickness,
     553            LineShape lineShape = new LineShape(index - 1, row[index - 1], index, row[index], row.RowSettings.Color, row.RowSettings.Thickness,
    554554                                                row.Style);
    555555            rowEntry.LinesShape.AddShape(lineShape);
    556             rowEntry.LinesShape.AddMarkerShape(new MarkerShape(index, row[index], 8, row.Color));
     556            rowEntry.LinesShape.AddMarkerShape(new MarkerShape(index, row[index], 8, row.RowSettings.Color));
    557557          }
    558558        } else if (action == Action.Modified) {
     
    744744          LineShape lineShape = shape as LineShape;
    745745          if (lineShape != null) {
    746             lineShape.LSColor = row.Color;
     746            lineShape.LSColor = row.RowSettings.Color;
    747747            lineShape.LSDrawingStyle = row.Style;
    748             lineShape.LSThickness = row.Thickness;
     748            lineShape.LSThickness = row.RowSettings.Thickness;
    749749          }
    750750        }
  • trunk/sources/HeuristicLab.Visualization/3.2/Options/Options.cs

    r1885 r1962  
    2626
    2727      public LineParams(IDataRow row) {
    28         Label = row.Label;
    29         Color = row.Color;
    30         Thickness = row.Thickness;
     28        Label = row.RowSettings.Label;
     29        Color = row.RowSettings.Color;
     30        Thickness = row.RowSettings.Thickness;
    3131        Style = row.Style;
    3232        this.row = row;
     
    3535
    3636      public void applySettings() {
    37         row.Label = Label;
    38         row.Color = Color;
    39         row.Thickness = Thickness;
     37        row.RowSettings.Label = Label;
     38        row.RowSettings.Color = Color;
     39        row.RowSettings.Thickness = Thickness;
    4040        row.Style = Style;
    4141        row.ShowMarkers = this.ShowMarkers;
     
    171171        LinestyleCB.DataSource = GetStyles();
    172172        LinestyleCB.SelectedItem = model.Rows[0].Style;
    173         LineThicknessCB.SelectedItem = model.Rows[0].Thickness;
     173        LineThicknessCB.SelectedItem = model.Rows[0].RowSettings.Thickness;
    174174        MarkercheckBox.Checked = model.Rows[0].ShowMarkers;
    175175
     
    215215          index = LinestyleCB.FindStringExact(((IDataRow)LineSelectCB.SelectedValue).Style.ToString());
    216216          LinestyleCB.SelectedIndex = index;  */
    217         LineThicknessCB.SelectedItem = ((IDataRow)LineSelectCB.SelectedValue).Thickness;
     217        LineThicknessCB.SelectedItem = ((IDataRow)LineSelectCB.SelectedValue).RowSettings.Thickness;
    218218        LinestyleCB.SelectedItem = ((IDataRow)LineSelectCB.SelectedValue).Style;
    219         selectedLineColorSelection.Color = ((IDataRow)LineSelectCB.SelectedValue).Color;
     219        selectedLineColorSelection.Color = ((IDataRow)LineSelectCB.SelectedValue).RowSettings.Color;
    220220        MarkercheckBox.Checked = ((IDataRow)LineSelectCB.SelectedValue).ShowMarkers;
    221221      }
     
    235235    private void LineThicknessCB_SelectedIndexChanged(object sender, EventArgs e) {
    236236      if (LineSelectCB.SelectedValue != null) {
    237         ((IDataRow)LineSelectCB.SelectedValue).Thickness = (int)LineThicknessCB.SelectedItem;
     237        ((IDataRow)LineSelectCB.SelectedValue).RowSettings.Thickness = (int)LineThicknessCB.SelectedItem;
    238238      }
    239239    }
     
    255255
    256256    private void selectedLineColorSelection_ColorChanged(ColorSelection sender) {
    257       ((IDataRow)LineSelectCB.SelectedValue).Color = selectedLineColorSelection.Color;
     257      ((IDataRow)LineSelectCB.SelectedValue).RowSettings.Color = selectedLineColorSelection.Color;
    258258    }
    259259
Note: See TracChangeset for help on using the changeset viewer.