Пример #1
0
Console::Console(const std::string& font, Renderer& r)
{
    const auto screen = GetSdlSurface(r);

    mSdlConsole = CON_Init(font.c_str(), screen, LINE_COUNT,
                             { 0, 0,
                               static_cast<Uint16>(screen->w),
                               static_cast<Uint16>(screen->h * .75f) });
    if (!mSdlConsole) {
        throw "Unable to create console.";
    }

    CON_Alpha(mSdlConsole, ALPHA_LEVEL);
    CON_Topmost(mSdlConsole);

    CON_SetPrompt(mSdlConsole, "> ");
    CON_SetHideKey(mSdlConsole, SDLK_BACKQUOTE);

    CON_SetExecuteFunction(mSdlConsole, ConsoleCmdHandler);
    CON_SetTabCompletion(mSdlConsole, ConsoleTabHandler);

    r.RegisterPostRenderHook([&](void*){ CON_DrawConsole(mSdlConsole); });

    gConsoleMap[mSdlConsole] = this;
}
Пример #2
0
void con_show(void)
{
#ifdef CONSOLE
    if (!con_initialized)
        con_init_real();

    CON_Show(Console);
    CON_Topmost(Console);
#endif
}
Пример #3
0
ConsoleInformation*
RC_ConsoleInit(const char *font_name, SDL_Surface *display_screen, int lines, SDL_Rect rect)
{
    ConsoleInformation *ci = CON_Init(font_name, display_screen, lines, rect);
    CON_Position(ci, 0, 0);
    CON_Alpha(ci, 160);
    CON_Topmost(ci);
    CON_SetPrompt(ci, "-->");
    CON_SetHideKey(ci, 96 /*tilde*/);
    return ci;
}