public DIAGNOSEControl(MMI.EBuLa.Tools.XMLLoader conf, ref MMI.MMIBR185.BR185Control mmi)
        {
            if (!conf.DoubleBuffer)
            {
                //This turns off internal double buffering of all custom GDI+ drawing
                this.SetStyle(ControlStyles.DoubleBuffer, true);
                this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
                this.SetStyle(ControlStyles.UserPaint, true);
                USE_DOUBLE_BUFFER = false;
            }
            else
                USE_DOUBLE_BUFFER = true;

            InitializeComponent();

            center = new Point(468+80, 30+80);

            uhrAußenList = (new ISphere(468+80, 30+80, 74)).PointList();
            uhrInnenklList = (new ISphere(468+80, 30+80, 69)).PointList();
            uhrInnengrList = (new ISphere(468+80, 30+80, 62)).PointList();
            uhrminList = (new ISphere(468+80, 30+80, 60)).PointList();
            uhrstdList = (new ISphere(468+80, 30+80, 47)).PointList();
            uhrsecList = (new ISphere(468+80, 30+80, 60)).PointList();
            uhrrestList = (new ISphere(468+80, 30+80, 10)).PointList();

            m_conf = conf;

            mmi_widget = mmi;

            localstate = new MMI.DIAGNOSE.DIAGNOSEState();

            localstate.Energie = conf.Energie;

            something_changed = true;

            // NOTBREMSE und E-BREMSE fehlen

            vtime = DateTime.Now;

            zugkraft_thread = new Thread(new ThreadStart(MoveZugkraft));

            int interval = Convert.ToInt32(Math.Round((1d/(double)conf.FramesPerSecondLow)*1000d));
            timer1.Interval = interval;
            timer1.Enabled = true;

            switch (m_conf.Sound)
            {
                case 1:
                    Sound = new APISound();
                    break;
                case 2:
                    Sound = new DxSound();
                    break;
                default:
                    Sound = new NullSound();
                    break;
            }
            Button_SW_Pressed(this, new EventArgs());

            mmi_widget.PREVENT_DRAW = true;
            /*
            try
            {
                // Now  setup our D3D stuff
                Microsoft.DirectX.Direct3D.PresentParameters presentParams = new Microsoft.DirectX.Direct3D.PresentParameters();
                presentParams.Windowed=true;
                presentParams.SwapEffect = Microsoft.DirectX.Direct3D.SwapEffect.Discard;
                device = new Microsoft.DirectX.Direct3D.Device(0, Microsoft.DirectX.Direct3D.DeviceType.Hardware, this,
                    Microsoft.DirectX.Direct3D.CreateFlags.HardwareVertexProcessing, presentParams);
            }
            catch (Exception) {}
            */
        }
Example #2
0
        public Switcher(ref MMI.DIAGNOSE.DIAGNOSEState s, bool topMost)
        {
            //
            // Erforderlich für die Windows Form-Designerunterstützung
            //
            InitializeComponent();
            m_state = s;

            switch(m_state.type)
            {
                case TRAIN_TYPE.BR101:
                    rb_101.Checked = true;
                    break;
                case TRAIN_TYPE.BR101_MET:
                    rb_101MET.Checked = true;
                    break;
                case TRAIN_TYPE.BR145:
                    rb_145.Checked = true;
                    break;
                case TRAIN_TYPE.BR146:
                    rb_146.Checked = true;
                    break;
                case TRAIN_TYPE.BR146_1:
                    rb_146_1.Checked = true;
                    break;
                case TRAIN_TYPE.BR152:
                    rb_152.Checked = true;
                    break;
                case TRAIN_TYPE.BR182:
                    if (m_state.IsOEBB)
                        rb_1016_1116.Checked = true;
                    else
                        rb_182.Checked = true;
                    break;
                case TRAIN_TYPE.BR185:
                    rb_185.Checked = true;
                    break;
                case TRAIN_TYPE.BR189:
                    rb_189.Checked = true;
                    break;
                case TRAIN_TYPE.ER20:
                    rb_er20.Checked = true;
                    break;
            }

            switch(m_state.traction)
            {
                case 1:
                    rb_single.Checked = true;
                    break;
                case 2:
                    rb_double.Checked = true;
                    break;
                case 3:
                    rb_3times.Checked = true;
                    break;
                case 4:
                    rb_4times.Checked = true;
                    break;
            }

            if (m_state.addtionalhours)
                cb_12std.Checked = true;

            l_Energie.Text = Math.Round(m_state.Energie / 1000d,0).ToString() + " kWh";

            this.TopMost = topMost;
        }