sl@4: using System; sl@4: using System.Collections.Generic; sl@4: using System.ComponentModel; sl@4: using System.Data; sl@4: using System.Drawing; sl@4: using System.Linq; sl@4: using System.Text; sl@4: using System.Threading.Tasks; sl@4: using System.Windows.Forms; sl@4: using System.Timers; sl@4: using System.Runtime.InteropServices; sl@4: sl@4: namespace IdwTest sl@4: { sl@4: public partial class MainForm : Form sl@4: { sl@4: iMON.Display iDisplay; sl@4: System.Timers.Timer iTimer; sl@4: int iFrameCount = 0; sl@4: sl@4: iMON.Display.DSPEQDATA iEqLeft; sl@4: iMON.Display.DSPEQDATA iEqRight; sl@4: iMON.Display.DSPEQDATA iEqMono; sl@4: sl@4: Random iRandom; sl@4: sl@4: public MainForm() sl@4: { sl@4: iDisplay = new iMON.Display(); sl@4: InitializeComponent(); sl@4: iTimer = new System.Timers.Timer(500); // Set up the timer for N ms sl@4: iTimer.Elapsed += new ElapsedEventHandler(timer_Elapsed); sl@4: iTimer.Enabled = false; // Enable it sl@4: // sl@4: iEqLeft =new iMON.Display.DSPEQDATA(); sl@4: iEqRight = new iMON.Display.DSPEQDATA(); sl@4: iEqMono = new iMON.Display.DSPEQDATA(); sl@4: // sl@4: iRandom = new Random(); sl@4: } sl@4: sl@4: private void buttonInit_Click(object sender, EventArgs e) sl@4: { sl@4: if (!iDisplay.DoInit()) sl@4: { sl@4: labelStatus.Text = iDisplay.StatusMessage; sl@4: } sl@4: else sl@4: { sl@4: labelStatus.Text = iDisplay.Name(); sl@4: } sl@4: } sl@4: sl@4: private void buttonUninit_Click(object sender, EventArgs e) sl@4: { sl@4: iDisplay.DoUninit(); sl@4: } sl@4: sl@4: private void buttonSetLcdText_Click(object sender, EventArgs e) sl@4: { sl@4: iMON.Display.IDW_SetLcdText(textBoxLcd.Text); sl@4: } sl@4: sl@4: private void timer_Elapsed(object sender, ElapsedEventArgs e) sl@4: { sl@4: if (iDisplay.IsLcd()) sl@4: { sl@4: if (!checkBoxRandomEq.Checked) sl@4: { sl@4: iMON.Display.IDW_SetLcdText(iFrameCount.ToString()); sl@4: iFrameCount++; sl@4: } sl@4: else sl@4: { sl@4: for (int i = 0; i < 16; i++) sl@4: { sl@4: iEqLeft.BandData[i] = iRandom.Next(0,101); sl@4: iEqRight.BandData[i] = iRandom.Next(0, 101); sl@4: } sl@4: sl@4: iMON.Display.IDW_SetLcdEqData(iEqLeft, iEqRight); sl@4: iFrameCount++; sl@4: } sl@4: } sl@4: } sl@4: sl@4: private void buttonToggleTimer_Click(object sender, EventArgs e) sl@4: { sl@4: if (iTimer.Enabled) sl@4: { sl@4: //Stop our timer sl@4: iTimer.Enabled = false; sl@4: buttonToggleTimer.Text = "Start"; sl@4: } sl@4: else sl@4: { sl@4: iFrameCount = 0; sl@4: //Start our timer sl@4: iTimer.Interval = (double)numericTimerInterval.Value; sl@4: iTimer.Enabled = true; sl@4: buttonToggleTimer.Text = "Stop"; sl@4: } sl@4: } sl@4: sl@4: } sl@4: }