mirror of
https://github.com/ZDoom/qzdoom.git
synced 2024-12-03 01:13:22 +00:00
- uncouple console's cursor blinking from the game ticker.
This is now done in real time by the drawer.
This commit is contained in:
parent
31fbff85f4
commit
756a743974
4 changed files with 11 additions and 12 deletions
|
@ -65,6 +65,7 @@
|
||||||
#include "vm.h"
|
#include "vm.h"
|
||||||
#include "utf8.h"
|
#include "utf8.h"
|
||||||
#include "s_music.h"
|
#include "s_music.h"
|
||||||
|
#include "i_time.h"
|
||||||
|
|
||||||
|
|
||||||
#include "gi.h"
|
#include "gi.h"
|
||||||
|
@ -108,7 +109,7 @@ int ConWidth;
|
||||||
bool vidactive = false;
|
bool vidactive = false;
|
||||||
bool cursoron = false;
|
bool cursoron = false;
|
||||||
int ConBottom, ConScroll, RowAdjust;
|
int ConBottom, ConScroll, RowAdjust;
|
||||||
int CursorTicker;
|
uint64_t CursorTicker;
|
||||||
constate_e ConsoleState = c_up;
|
constate_e ConsoleState = c_up;
|
||||||
|
|
||||||
|
|
||||||
|
@ -1036,12 +1037,6 @@ void C_Ticker()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (--CursorTicker <= 0)
|
|
||||||
{
|
|
||||||
cursoron ^= 1;
|
|
||||||
CursorTicker = C_BLINKRATE;
|
|
||||||
}
|
|
||||||
|
|
||||||
lasttic = consoletic;
|
lasttic = consoletic;
|
||||||
NotifyStrings.Tick();
|
NotifyStrings.Tick();
|
||||||
}
|
}
|
||||||
|
@ -1239,6 +1234,12 @@ void C_DrawConsole ()
|
||||||
{
|
{
|
||||||
if (gamestate != GS_STARTUP)
|
if (gamestate != GS_STARTUP)
|
||||||
{
|
{
|
||||||
|
auto now = I_msTime();
|
||||||
|
if (now > CursorTicker)
|
||||||
|
{
|
||||||
|
CursorTicker = now + 500;
|
||||||
|
cursoron = !cursoron;
|
||||||
|
}
|
||||||
CmdLine.Draw(left, bottomline, textScale, cursoron);
|
CmdLine.Draw(left, bottomline, textScale, cursoron);
|
||||||
}
|
}
|
||||||
if (RowAdjust && ConBottom >= CurrentConsoleFont->GetHeight()*7/2)
|
if (RowAdjust && ConBottom >= CurrentConsoleFont->GetHeight()*7/2)
|
||||||
|
@ -1712,7 +1713,7 @@ static bool C_HandleKey (event_t *ev, FCommandBuffer &buffer)
|
||||||
buffer.AppendToYankBuffer = keepappending;
|
buffer.AppendToYankBuffer = keepappending;
|
||||||
|
|
||||||
// Ensure that the cursor is always visible while typing
|
// Ensure that the cursor is always visible while typing
|
||||||
CursorTicker = C_BLINKRATE;
|
CursorTicker = I_msTime() + 500;
|
||||||
cursoron = 1;
|
cursoron = 1;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -39,8 +39,6 @@
|
||||||
|
|
||||||
struct event_t;
|
struct event_t;
|
||||||
|
|
||||||
#define C_BLINKRATE (TICRATE/2)
|
|
||||||
|
|
||||||
typedef enum cstate_t
|
typedef enum cstate_t
|
||||||
{
|
{
|
||||||
c_up=0, c_down=1, c_falling=2, c_rising=3
|
c_up=0, c_down=1, c_falling=2, c_rising=3
|
||||||
|
|
|
@ -171,6 +171,7 @@ static FConsoleCommand *ScanChainForName (FConsoleCommand *start, const char *na
|
||||||
|
|
||||||
// PUBLIC DATA DEFINITIONS -------------------------------------------------
|
// PUBLIC DATA DEFINITIONS -------------------------------------------------
|
||||||
bool ParsingKeyConf, UnsafeExecutionContext;
|
bool ParsingKeyConf, UnsafeExecutionContext;
|
||||||
|
FString StoredWarp;
|
||||||
|
|
||||||
FConsoleCommand* Commands[FConsoleCommand::HASH_SIZE];
|
FConsoleCommand* Commands[FConsoleCommand::HASH_SIZE];
|
||||||
|
|
||||||
|
@ -1087,7 +1088,7 @@ bool C_ExecFile (const char *file)
|
||||||
exec->ExecCommands();
|
exec->ExecCommands();
|
||||||
if (exec->Pullins.Size() > 0)
|
if (exec->Pullins.Size() > 0)
|
||||||
{
|
{
|
||||||
Printf(TEXTCOLOR_RED "Notice: Pullin files were ignored.\n");
|
Printf(TEXTCOLOR_BOLD "Notice: Pullin files were ignored.\n");
|
||||||
}
|
}
|
||||||
delete exec;
|
delete exec;
|
||||||
}
|
}
|
||||||
|
|
|
@ -252,7 +252,6 @@ int NoWipe; // [RH] Allow wipe? (Needs to be set each time)
|
||||||
bool singletics = false; // debug flag to cancel adaptiveness
|
bool singletics = false; // debug flag to cancel adaptiveness
|
||||||
FString startmap;
|
FString startmap;
|
||||||
bool autostart;
|
bool autostart;
|
||||||
FString StoredWarp;
|
|
||||||
bool advancedemo;
|
bool advancedemo;
|
||||||
FILE *debugfile;
|
FILE *debugfile;
|
||||||
FILE *hashfile;
|
FILE *hashfile;
|
||||||
|
|
Loading…
Reference in a new issue