ParseItems() public method

public ParseItems ( ) : imBMW.iBus.Devices.Real.BordmonitorText[]
return imBMW.iBus.Devices.Real.BordmonitorText[]
Esempio n. 1
0
        static void ProcessNavGraphicsMessage(Message m)
        {
            var ae = ScreenCleared;
            if (ae != null && m.Data.Compare(MessageClearScreen.Data))
            {
                ae();
                m.ReceiverDescription = "Clear screen";
                return;
            }

            ae = ScreenRefreshed;
            if (ae != null && m.Data.Compare(MessageRefreshScreen.Data))
            {
                ae();
                m.ReceiverDescription = "Refresh screen";
                OnScreenUpdated();
                return;
            }

            var e = TextReceived;
            if (e != null || ReplyToScreenUpdates)
            {
                if (m.Data.StartsWith(0xA5, 0x62, 0x00) || m.Data.StartsWith(0x21, 0x60, 0x00))
                {
                    var a = new BordmonitorText(BordmonitorFields.Item, m.Data);
                    if (e != null)
                    {
                        e(a);
                    }
                    #if NETMF
                    m.ReceiverDescription = "BM fill items";
                    #else
                    var s = "BM fill items";
                    var items = a.ParseItems();
                    foreach (var i in items)
                    {
                        s += " | " + i.Index.ToHex() + "." + i.Text;
                    }
                    m.ReceiverDescription = s;
                    #endif
                    OnScreenUpdated(true);
                }
                else if (m.Data.StartsWith(DataUpdateScreen))
                {
                    if (m.Data.StartsWith(DataShowStatus))
                    {
                        var a = new BordmonitorText(BordmonitorFields.Status, m.Data);
                        if (e != null)
                        {
                            e(a);
                        }
                        #if NETMF
                        m.ReceiverDescription = "BM show status";
                        #else
                        m.ReceiverDescription = "BM show status: " + a.Text;
                        #endif
                    }
                    OnScreenUpdated(false);
                }
                else if (m.Data.StartsWith(DataShowTitle))
                {
                    var a = new BordmonitorText(BordmonitorFields.Title, m.Data);
                    if (e != null)
                    {
                        e(a);
                    }
                    #if NETMF
                    m.ReceiverDescription = "BM show title";
                    #else
                    m.ReceiverDescription = "BM show title: " + a.Text;
                    #endif
                    OnScreenUpdated();
                }
            }
        }
Esempio n. 2
0
        static void ProcessNavGraphicsMessage(Message m)
        {
            var ae = ScreenCleared;

            if (ae != null && m.Data.Compare(MessageClearScreen.Data))
            {
                ae();
                m.ReceiverDescription = "Clear screen";
                return;
            }

            ae = ScreenRefreshed;
            if (ae != null && m.Data.Compare(MessageRefreshScreen.Data))
            {
                ae();
                m.ReceiverDescription = "Refresh screen";
                OnScreenUpdated();
                return;
            }

            var e = TextReceived;

            if (e != null || ReplyToScreenUpdates)
            {
                if (m.Data.StartsWith(0xA5, 0x62, 0x00) || m.Data.StartsWith(0x21, 0x60, 0x00))
                {
                    var a = new BordmonitorText(BordmonitorFields.Item, m.Data);
                    if (e != null)
                    {
                        e(a);
                    }
                    #if NETMF
                    m.ReceiverDescription = "BM fill items";
                    #else
                    var s     = "BM fill items";
                    var items = a.ParseItems();
                    foreach (var i in items)
                    {
                        s += " | " + i.Index.ToHex() + "." + i.Text;
                    }
                    m.ReceiverDescription = s;
                    #endif
                    OnScreenUpdated(true);
                }
                else if (m.Data.StartsWith(DataUpdateScreen))
                {
                    if (m.Data.StartsWith(DataShowStatus))
                    {
                        var a = new BordmonitorText(BordmonitorFields.Status, m.Data);
                        if (e != null)
                        {
                            e(a);
                        }
                        #if NETMF
                        m.ReceiverDescription = "BM show status";
                        #else
                        m.ReceiverDescription = "BM show status: " + a.Text;
                        #endif
                    }
                    OnScreenUpdated(false);
                }
                else if (m.Data.StartsWith(DataShowTitle))
                {
                    var a = new BordmonitorText(BordmonitorFields.Title, m.Data);
                    if (e != null)
                    {
                        e(a);
                    }
                    #if NETMF
                    m.ReceiverDescription = "BM show title";
                    #else
                    m.ReceiverDescription = "BM show title: " + a.Text;
                    #endif
                    OnScreenUpdated();
                }
            }
        }