Exemplo n.º 1
0
        private static Symbol _InitGraphicByCategory(object value, DataGraphicObject graphicObject)
        {
            SymbologyRecord record = null;

            foreach (OrderCategory orderCategory in OrderCategories)
            {
                if (!orderCategory.DefaultValue && value != null && orderCategory.Value == value.ToString())
                {
                    record = orderCategory;
                    break;
                }
            }

            if (record == null)
            {
                foreach (OrderCategory orderCategory in OrderCategories)
                {
                    if (orderCategory.DefaultValue)
                    {
                        record = orderCategory;
                    }
                }
            }

            return(_InitGraphicByRecord(record, graphicObject));
        }
        private SymbolBox _CreateSymbolBox(string templateFileName, SymbologyRecord symbologyRecord)
        {
            SymbolBox symbolBox = new SymbolBox(templateFileName);
            symbolBox.ParentRecord = symbologyRecord;
            symbolBox.Size = symbologyRecord.Size;

            System.Drawing.Color color = symbologyRecord.Color;
            System.Windows.Media.Color mediaColor =
                System.Windows.Media.Color.FromArgb(color.A, color.R, color.G, color.B);
            symbolBox.Fill = new System.Windows.Media.SolidColorBrush(mediaColor);

            symbolBox.Height = (symbologyRecord.Size + SymbologyManager.DEFAULT_INDENT) * SymbologyManager.INCREASE_ON_HOVER;
            symbolBox.Width = (symbologyRecord.Size + SymbologyManager.DEFAULT_INDENT) * SymbologyManager.INCREASE_ON_HOVER;

            return symbolBox;
        }
Exemplo n.º 3
0
        private static Symbol _InitGraphicByQuantity(object value, DataGraphicObject graphicObject)
        {
            SymbologyRecord record = null;

            if (value != null)
            {
                double?numValue = null;
                if (value is string)
                {
                    double result;
                    if (double.TryParse((string)value, out result))
                    {
                        numValue = result;
                    }
                }
                else
                {
                    numValue = (double)value;
                }

                if (numValue.HasValue)
                {
                    foreach (OrderQuantity orderQuantity in OrderQuantities)
                    {
                        if (!orderQuantity.DefaultValue && value != null &&
                            (orderQuantity.MinValue == numValue ||
                             orderQuantity.MinValue < numValue && orderQuantity.MaxValue > numValue))
                        {
                            record = orderQuantity;
                        }
                    }
                }
            }

            if (record == null)
            {
                foreach (OrderQuantity orderQuantity in OrderQuantities)
                {
                    if (orderQuantity.DefaultValue)
                    {
                        record = orderQuantity;
                    }
                }
            }

            return(_InitGraphicByRecord(record, graphicObject));
        }
Exemplo n.º 4
0
        private static Symbol _InitGraphicByRecord(SymbologyRecord record, DataGraphicObject graphicObject)
        {
            Symbol symbol = new MarkerSymbol();

            symbol.ControlTemplate = GetTemplateByFileName(record.SymbolFilename);
            graphicObject.Attributes[SymbologyContext.SIZE_ATTRIBUTE_NAME]    = record.Size;
            graphicObject.Attributes[SymbologyContext.OFFSETX_ATTRIBUTE_NAME] =
                -record.Size / 2 - SymbologyManager.DEFAULT_INDENT / 2;
            graphicObject.Attributes[SymbologyContext.OFFSETY_ATTRIBUTE_NAME] =
                -record.Size / 2 - SymbologyManager.DEFAULT_INDENT / 2;
            graphicObject.Attributes[SymbologyContext.FULLSIZE_ATTRIBUTE_NAME] =
                record.Size + SymbologyManager.DEFAULT_INDENT;

            if (!record.UseRouteColor)
            {
                System.Drawing.Color       color      = (System.Drawing.Color)record.Color;
                System.Windows.Media.Color mediaColor = System.Windows.Media.Color.FromArgb(color.A, color.R, color.G, color.B);
                graphicObject.Attributes[SymbologyContext.FILL_ATTRIBUTE_NAME] = new SolidColorBrush(mediaColor);
            }
            else
            {
                System.Windows.Media.Color mediaColor;

                Stop stop = graphicObject.Data as Stop;
                if (stop == null)
                {
                    mediaColor = System.Windows.Media.Color.FromRgb(0, 0, 0);
                }
                else
                {
                    System.Drawing.Color color = stop.Route.Color;
                    mediaColor = System.Windows.Media.Color.FromArgb(color.A, color.R, color.G, color.B);
                }
                graphicObject.Attributes[SymbologyContext.FILL_ATTRIBUTE_NAME] = new SolidColorBrush(mediaColor);
            }

            return(symbol);
        }
 private void _StartEdit(SymbologyRecord symbologyRecord)
 {
     Debug.Assert(_edited == null);
     _edited = symbologyRecord;
 }
 private void _EndEdit()
 {
     Debug.Assert(_edited != null);
     if (SymbologyManager.SymbologyType == SymbologyType.CategorySymbology)
     {
         if (CategoryXceedGrid.Columns.Count > 0)
             CategoryXceedGrid.Columns[VALUE_COLUMN_INDEX].ReadOnly = false;
     }
     else
     {
         if (QuantityXceedGrid.Columns.Count > 0)
         {
             QuantityXceedGrid.Columns[MINVALUE_COLUMN_INDEX].ReadOnly = false;
             QuantityXceedGrid.Columns[MAXVALUE_COLUMN_INDEX].ReadOnly = false;
         }
     }
     _edited = null;
 }
        private static Symbol _InitGraphicByRecord(SymbologyRecord record, DataGraphicObject graphicObject)
        {
            Symbol symbol = new MarkerSymbol();

            symbol.ControlTemplate = GetTemplateByFileName(record.SymbolFilename);
            graphicObject.Attributes[SymbologyContext.SIZE_ATTRIBUTE_NAME] = record.Size;
            graphicObject.Attributes[SymbologyContext.OFFSETX_ATTRIBUTE_NAME] =
                -record.Size / 2 - SymbologyManager.DEFAULT_INDENT / 2;
            graphicObject.Attributes[SymbologyContext.OFFSETY_ATTRIBUTE_NAME] =
                -record.Size / 2 - SymbologyManager.DEFAULT_INDENT / 2;
            graphicObject.Attributes[SymbologyContext.FULLSIZE_ATTRIBUTE_NAME] =
                record.Size + SymbologyManager.DEFAULT_INDENT;

            if (!record.UseRouteColor)
            {
                System.Drawing.Color color = (System.Drawing.Color)record.Color;
                System.Windows.Media.Color mediaColor = System.Windows.Media.Color.FromArgb(color.A, color.R, color.G, color.B);
                graphicObject.Attributes[SymbologyContext.FILL_ATTRIBUTE_NAME] = new SolidColorBrush(mediaColor);
            }
            else
            {
                System.Windows.Media.Color mediaColor;

                Stop stop = graphicObject.Data as Stop;
                if (stop == null)
                    mediaColor = System.Windows.Media.Color.FromRgb(0, 0, 0);
                else
                {
                    System.Drawing.Color color = stop.Route.Color;
                    mediaColor = System.Windows.Media.Color.FromArgb(color.A, color.R, color.G, color.B);
                }
                graphicObject.Attributes[SymbologyContext.FILL_ATTRIBUTE_NAME] = new SolidColorBrush(mediaColor);
            }

            return symbol;
        }