Esempio n. 1
0
        public bool CanAddItem(string item)
        {
            // cause i'm stuff
            if (colorInd == colors.Length)
            {
                return(false);
            }
            // get the data item
            IDataItemClient dataItem = null;

            try {
                dataItem = OperationalInterface.Dataset[item];
            }
            catch (Exception) {
                return(false);
            }

            if (dataItem == null)
            {
                return(false);
            }

            // check if there is a converter
            return(DataItemAdapter.HasDefaultAdapter(dataItem));
        }
Esempio n. 2
0
 public NumericLabelAttacher(Label target, string formatString, IDataItemClient clientDataItem)
 {
     this.target       = target;
     this.formatString = formatString;
     this.attacher     = new DataItemAttacher <T>(this, clientDataItem);
     this.targetUnits  = null;
 }
        public static DataItemAdapter GetDefaultAdapter(IDataItemClient dataItem)
        {
            switch (Type.GetTypeCode(dataItem.DataType))
            {
            case TypeCode.Double:
                return(new DoubleDataItemAdapter((DataItemClient <double>)dataItem));

            case TypeCode.Boolean:
            case TypeCode.Byte:
            case TypeCode.DateTime:
            case TypeCode.Decimal:
            case TypeCode.Int16:
            case TypeCode.Int32:
            case TypeCode.Int64:
            case TypeCode.SByte:
            case TypeCode.Single:
            case TypeCode.UInt16:
            case TypeCode.UInt32:
            case TypeCode.UInt64:
                return(BuildConvertAdapter(dataItem));

            case TypeCode.Object:
                if (convertibleType.IsAssignableFrom(dataItem.DataType))
                {
                    return(BuildConvertAdapter(dataItem));
                }
                break;
            }

            throw new ArgumentException("The supplied data item type cannot be converted to a double");
        }
        private ListViewItem GetListViewItem(IDataItemClient dataItem)
        {
            if (!DataItemAdapter.HasDefaultAdapter(dataItem)) {
                return null;
            }

            ListViewItem item = new ListViewItem(dataItem.Name, "item");
            item.Tag = dataItem;

            return item;
        }
        private ListViewItem GetListViewItem(IDataItemClient dataItem)
        {
            if (!DataItemAdapter.HasDefaultAdapter(dataItem))
            {
                return(null);
            }

            ListViewItem item = new ListViewItem(dataItem.Name, "item");

            item.Tag = dataItem;

            return(item);
        }
 public ClientDataItemAddedEventArgs(IDataItemClient item)
 {
     this.dataItem = item;
 }
Esempio n. 7
0
 public ClientDataItemAddedEventArgs(IDataItemClient item)
 {
     this.dataItem = item;
 }
Esempio n. 8
0
        public void AddGraphItem(string item)
        {
            if (CanAddItem(item))
            {
                IDataItemClient dataItem    = OperationalInterface.Dataset[item];
                DataItemAdapter dataAdapter = DataItemAdapter.GetDefaultAdapter(dataItem);

                Color            itemColor = colors[colorInd++];
                GraphItemAdapter graphItem = new GraphItemAdapter(item, itemColor, windowSize, dataAdapter);

                // add tool bar button
                // create the image for the button
                Bitmap image = (Bitmap)Properties.Resources.GraphIcon.Clone();
                ImageColorizer.Colorize(image, itemColor);
                ToolStripDropDownButton button = new ToolStripDropDownButton(item, image);
                button.DisplayStyle = ToolStripItemDisplayStyle.ImageAndText;
                button.Tag          = graphItem;

                // add the drop down items
                ToolStripMenuItem menuSourceUnitSet = new ToolStripMenuItem("Item Units");
                foreach (Unit unit in UnitConverter.GetUnitsEnumerator())
                {
                    ToolStripMenuItem menuSourceUnit = new ToolStripMenuItem(unit.Abbreviation ?? unit.Name, null, menuSourceUnits_Click);
                    menuSourceUnit.Tag = graphItem;
                    if (object.Equals(unit, graphItem.SourceUnits))
                    {
                        menuSourceUnit.Checked = true;
                    }

                    menuSourceUnitSet.DropDownItems.Add(menuSourceUnit);
                }

                ToolStripMenuItem menuDestUnitSet = new ToolStripMenuItem("Dest Units");
                menuDestUnitSet.Name = "menuDestUnitCollection";
                if (graphItem.SourceUnits != null)
                {
                    graphItem.Conversion = UnitConverter.GetConversion(graphItem.SourceUnits, graphItem.SourceUnits);
                    PopulateDestUnits(menuDestUnitSet, graphItem.SourceUnits, graphItem);
                }
                else
                {
                    menuDestUnitSet.Enabled = false;
                }

                ToolStripMenuItem menuRemoveItem = new ToolStripMenuItem("Remove", Properties.Resources.Delete, menuRemoveItem_Click);
                menuRemoveItem.Tag = graphItem;

                // add the menu items to the button
                button.DropDownItems.Add(menuSourceUnitSet);
                button.DropDownItems.Add(menuDestUnitSet);
                button.DropDownItems.Add(new ToolStripSeparator());
                button.DropDownItems.Add(menuRemoveItem);

                toolStripItems.Items.Add(button);

                // add to the plot
                plotSurface.Add(graphItem.LinePlot);

                graphItems.Add(graphItem);
            }
        }
Esempio n. 9
0
 public SubItemEntry(GetValueHandler handler, IDataItemClient subitem)
 {
     this.getValueHandler = handler;
     this.subitem         = subitem;
 }
Esempio n. 10
0
 public DataItemBuffer(IDataItemClient dataItem) : this((DataItemClient <T>)dataItem)
 {
 }
Esempio n. 11
0
        public NumericLabelAttacher(Label target, Unit sourceUnit, Unit[] targetUnits, string formatString, IDataItemClient clientDataItem)
        {
            this.target       = target;
            this.formatString = formatString;

            this.targetUnits = new UnitConversion[targetUnits.Length];
            for (int i = 0; i < targetUnits.Length; i++)
            {
                Unit targetUnit = targetUnits[i];
                this.targetUnits[i] = UnitConverter.GetConversion(sourceUnit, targetUnit);
            }

            this.attacher = new DataItemAttacher <T>(this, clientDataItem);
        }
 public DataItemAttacher(IAttachable <T> target, IDataItemClient source)
     : this(target, (DataItemClient <T>)source)
 {
 }
        private static DataItemAdapter BuildConvertAdapter(IDataItemClient dataItem)
        {
            Type convertType = convertGenericType.MakeGenericType(dataItem.DataType);

            return((DataItemAdapter)Activator.CreateInstance(convertType, dataItem));
        }
 public static bool HasDefaultAdapter(IDataItemClient dataItem)
 {
     return(convertibleType.IsAssignableFrom(dataItem.DataType));
 }
 public ConvertDataItemAdapter(IDataItemClient dataItem)
     : this((DataItemClient <T>)dataItem)
 {
 }