///// <summary> ///// Cita odredjenu zonu ///// </summary> ///// <param name="mode">Vrste citanja</param> ///// <param name="x">-1 koristi trenutni</param> ///// <param name="y">-1 koristi trenutni</param> ///// <param name="w">vise od 0 znaci citanje 1D ili 2D</param> ///// <param name="h">vise od 0 znaci citanje 2D bloka</param> ///// <returns>Popunjen input result</returns> //public override textInputResult read(textInputResult currentOutput, inputReadMode mode, int x = -1, int y = -1, int w = 0, int h = 0) //{ // selectZone zone = new selectZone(x, y, w, h); // return read(currentOutput, mode, zone); //} /// <summary> /// Citanje pomocu zone objekta /// </summary> /// <param name="mode">Vrsta citanja</param> /// <param name="zone">Zona</param> /// <returns></returns> public override textInputResult read(textInputResult currentOutput, inputReadMode mode, selectZone zone, Object startValue = null) { if (currentOutput == null) { currentOutput = new textInputResult(this, mode, zone); } else { currentOutput.platform = this; currentOutput.readMode = mode; currentOutput.readZone = zone; } if (currentOutput.result == null) { currentOutput.result = startValue; } Console.CursorVisible = false; /// nije inplementirano zonsko citanje switch (mode) { case inputReadMode.readKey: currentOutput.consoleKey = Console.ReadKey(true); break; case inputReadMode.read: Console.CursorVisible = true; Console.SetCursorPosition(zone.x, zone.y); Console.BackgroundColor = ConsoleColor.White; Console.ForegroundColor = ConsoleColor.Black; currentOutput.result = consolePlatformExtensions.ReadLine(startValue, zone, currentOutput.result.GetType()); Console.CursorVisible = false; Console.ResetColor(); break; case inputReadMode.readLine: currentOutput.result = Console.ReadLine(); break; } return(currentOutput); }
/// <summary> /// Postavlja boje za dalji izlaz /// </summary> /// <param name="foreColor">Prednja boja. Ako je .none onda resetuje boje</param> /// <param name="backColor">Boja pozadine</param> /// <param name="doInvert"> </param> // public abstract void setColors(platformColorName foreColor, platformColorName backColor, Boolean doInvert=false); /// <summary> /// Cita odredjenu zonu /// </summary> /// <param name="mode">Vrste citanja</param> /// <param name="x">-1 koristi trenutni</param> /// <param name="y">-1 koristi trenutni</param> /// <param name="w">vise od 0 znaci citanje 1D ili 2D</param> /// <param name="h">vise od 0 znaci citanje 2D bloka</param> /// <returns>Popunjen input result</returns> public abstract textInputResult read(textInputResult currentOutput, inputReadMode mode, selectZone zone, object startValue);
public textInputResult(IPlatform __platform, inputReadMode __readMode, selectZone __readZone) { platform = __platform; readMode = __readMode; readZone = __readZone; }
public textInputResult(inputReadMode __readMode = inputReadMode.unknown) { readMode = __readMode; }