public short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { // flush any waiting input and pause thie thread while it is looking for input if (m_temp != null && m_temp.Length > 0) { m_conversation.WriteLine(m_temp); m_temp = ""; } this.m_conversation.Suspend(); // gather input short ch = 0; ConsoleKeyInfo info; do { lock (m_conversation.SyncRoot) { if (m_conversation.DataReady == false) { // should never happen because this thread is only resumed when this mobile.OnThink() // sees that there is DataReady Thread.Sleep(250); continue; } info = new ConsoleKeyInfo(m_conversation.ReadKey, ConsoleKey.Y, false, false, false); } ch = translator(info.KeyChar); } while (ch == 0); return(ch); }
public override short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { string inputLine; do { inputLine = inputBuffer.Dequeue(); } while (inputLine.Length == 0); return(translator(inputLine[0])); }
public void SelectAllDataNChar() { //Setup var cmd = CreateTextCommand(SelectTestDataSQL()); var t = new CharTranslator(UNIT_TEST_COL_NAME); //Act var data = t.Translate(ExecuteDataTable(cmd)); //Assert Assert.AreEqual(5, data.Count); }
public short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { short ch; do { ConsoleKeyInfo info = Console.ReadKey(); ch = translator(info.KeyChar); } while (ch == 0); return(ch); }
public void SelectAllDataBigIntWithFilter () { //setup const char testvalue = 'A'; var t = new CharTranslator(UNIT_TEST_COL_NAME); var cmd = CreateTextCommand(SelectTestDataSQL(), "Where col = @testValue"); cmd.Parameters.Add(testvalue.ToSqlParameter("@testValue")); //Act var data = t.Translate(ExecuteDataRow(cmd)); //Asert Assert.AreEqual('A', data); }
public short ReadKey( int time, TimedInputCallback callback, CharTranslator translator ) { /* * short ch; * do * { * ConsoleKeyInfo info = Console.ReadKey(); * ch = translator(info.KeyChar); * } while (ch == 0); */ _ed.WriteMessage("\nReadKey called.\n"); return(0); }
public short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { FlushBuffer(); lineCount = 0; while (true) { if (time > 0) { int sleeps = 0; while (!Console.KeyAvailable) { Thread.Sleep(100); if (Console.KeyAvailable) { break; } sleeps++; if (sleeps == time) { sleeps = 0; if (callback() == true) { return(0); } } } } ConsoleKeyInfo info = Console.ReadKey(true); short zkey = ConsoleKeyToZSCII(info.Key); if (zkey != 0) { return(zkey); } zkey = translator(info.KeyChar); if (zkey != 0) { return(zkey); } } }
public short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { short ch; do { ConsoleKeyInfo info = Console.ReadKey(); ch = translator(info.KeyChar); } while (ch == 0); return ch; }
public virtual short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { return(next.ReadKey(time, callback, translator)); }
public short ReadKey( int time, TimedInputCallback callback, CharTranslator translator ) { /* short ch; do { ConsoleKeyInfo info = Console.ReadKey(); ch = translator(info.KeyChar); } while (ch == 0); */ _ed.WriteMessage("\nReadKey called.\n"); return 0; }
public short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { // flush any waiting input and pause thie thread while it is looking for input if (m_temp != null && m_temp.Length > 0) { m_conversation.WriteLine(m_temp); m_temp = ""; } this.m_conversation.Suspend(); // gather input short ch=0; ConsoleKeyInfo info; do { lock (m_conversation.SyncRoot) { if (m_conversation.DataReady == false) { // should never happen because this thread is only resumed when this mobile.OnThink() // sees that there is DataReady Thread.Sleep(250); continue; } info = new ConsoleKeyInfo(m_conversation.ReadKey, ConsoleKey.Y, false, false, false); } ch = translator(info.KeyChar); } while (ch == 0); return ch; }
public abstract short ReadKey(int time, TimedInputCallback callback, CharTranslator translator);
public override short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { ConsoleKeyInfo info = Console.ReadKey(true); return(translator(info.KeyChar)); }
short IZMachineIO.ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { throw new AssertFailedException("Unexpected character input request"); }
public override short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { ConsoleKeyInfo info = Console.ReadKey(true); return translator(info.KeyChar); }
public override short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { string inputLine; do { inputLine = inputBuffer.Dequeue(); } while (inputLine.Length == 0); return translator(inputLine[0]); }
public short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { FlushBuffer(); lineCount = 0; while (true) { if (time > 0) { int sleeps = 0; while (!Console.KeyAvailable) { Thread.Sleep(100); if (Console.KeyAvailable) break; sleeps++; if (sleeps == time) { sleeps = 0; if (callback() == true) return 0; } } } ConsoleKeyInfo info = Console.ReadKey(true); short zkey = ConsoleKeyToZSCII(info.Key); if (zkey != 0) return zkey; zkey = translator(info.KeyChar); if (zkey != 0) return zkey; } }
short IZMachineIO.ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { PerformSplit(targetSplit); if (unicode) Glk.glk_request_char_event_uni(currentWin); else Glk.glk_request_char_event(currentWin); Glk.glk_request_timer_events((uint)(time * 100)); event_t ev; bool done = false; short result = 0; do { Glk.glk_select(out ev); switch (ev.type) { case EvType.CharInput: if (ev.win == currentWin) { if (ev.val1 <= 255 || (unicode && ev.val1 <= 0x10000)) result = translator((char)ev.val1); else result = GlkKeyToZSCII((KeyCode)ev.val1); if (result != 0) done = true; else if (unicode) Glk.glk_request_char_event_uni(currentWin); else Glk.glk_request_char_event(currentWin); } break; case EvType.Timer: if (callback() == true) { Glk.glk_cancel_char_event(currentWin); done = true; } break; case EvType.Arrange: UpdateScreenSize(); break; case EvType.SoundNotify: SoundNotify(); break; } } while (!done); Glk.glk_request_timer_events(0); return result; }
public virtual short ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { return next.ReadKey(time, callback, translator); }
short IZMachineIO.ReadKey(int time, TimedInputCallback callback, CharTranslator translator) { PerformSplit(targetSplit); if (unicode) { Glk.glk_request_char_event_uni(currentWin); } else { Glk.glk_request_char_event(currentWin); } Glk.glk_request_timer_events((uint)(time * 100)); event_t ev; bool done = false; short result = 0; do { Glk.glk_select(out ev); switch (ev.type) { case EvType.CharInput: if (ev.win == currentWin) { if (ev.val1 <= 255 || (unicode && ev.val1 <= 0x10000)) { result = translator((char)ev.val1); } else { result = GlkKeyToZSCII((KeyCode)ev.val1); } if (result != 0) { done = true; } else if (unicode) { Glk.glk_request_char_event_uni(currentWin); } else { Glk.glk_request_char_event(currentWin); } } break; case EvType.Timer: if (callback() == true) { Glk.glk_cancel_char_event(currentWin); done = true; } break; case EvType.Arrange: UpdateScreenSize(); break; case EvType.SoundNotify: SoundNotify(); break; } }while (!done); Glk.glk_request_timer_events(0); return(result); }