im sure its ex as in extended info and its not letting me put the code tags so i can post the code ill try again. correction i was being retarded and used the code tag html style it works now.
Code:
#define _WIN32_WINNT 0x0601
#include <windows.h>
#include <wincon.h>
#include <iostream>
// Color definations:
#define FBlack 0
#define FRed FOREGROUND_RED
#define FGreen FOREGROUND_GREEN
#define FBlue FOREGROUND_BLUE
#define FYellow FORGROUND_RED | FORGROUND_GREEN
#define FCyan FOREGROUND_GREEN | FOREGROUND_BLUE
#define FMagenta FOREGROUND_RED | FOREGROUND_BLUE
#define FWhite FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE
#define FRedI FOREGROUND_RED | FOREGROUND_INTENSITY
#define FGreenI FOREGROUND_GREEN | FOREGROUND_INTENSITY
#define FBlueI FOREGROUND_BLUE | FOREGROUND_INTENSITY
#define FYellowI FORGROUND_RED | FORGROUND_GREEN | FOREGROUND_INTENSITY
#define FCyanI FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY
#define FMagentaI FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_INTENSITY
#define FWhiteI FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY
#define BBlack 0
#define BRed BACKGROUND_RED
#define BGreen BACKGROUND_GREEN
#define BBlue BACKGROUND_BLUE
#define BYellow BACKGROUND_RED | BACKGROUND_GREEN
#define BCyan BACKGROUND_GREEN | BACKGROUND_BLUE
#define BMagenta BACKGROUND_RED | BACKGROUND_BLUE
#define BWhite BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE
#define BRedI BACKGROUND_RED | BACKGROUND_INTENSITY
#define BGreenI BACKGROUND_GREEN | BACKGROUND_INTENSITY
#define BBlueI BACKGROUND_BLUE | BACKGROUND_INTENSITY
#define BYellowI BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_INTENSITY
#define BCyanI BACKGROUND_GREEN | BACKGROUND_BLUE | BACKGROUND_INTENSITY
#define BMagentaI BACKGROUND_RED | BACKGROUND_BLUE | BACKGROUND_INTENSITY
#define BWhiteI BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE | BACKGROUND_INTENSITY
// Custom Console Functions: Prototypes
void ClearScreen(HANDLE hOut);
void ChangeCursor(HANDLE hOut,int iSize, bool bVisable);
void MoveCursor(HANDLE hOut, COORD Pos);
void MoveCursor(HANDLE hOut, int iX, int iY);
void SetColor(HANDLE hOut, int iForeColor, int iBackColor);
using namespace std;
int main()
{
HANDLE hIn;
HANDLE hOut;
COORD MouseWhere = {19, 0};
COORD DClickWhere = {19, 1};
COORD LeftWhere = {19, 2};
COORD RightWhere = {19, 3};
COORD WheelWhere = {19, 4};
COORD LoopWhere = {0, 5};
COORD EndWhere = {0, 6};
bool Continue = TRUE;
DWORD EventCount;
int LoopCount = 0;
int KeyEvents = 0;
INPUT_RECORD InRec;
DWORD NumRead;
hIn = GetStdHandle(STD_INPUT_HANDLE);
hOut = GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_SCREEN_BUFFER_INFOEX CSBIE;
GetConsoleScreenBufferInfoEx(hOut, &CSBIE);
cout << CSBIE.bFullscreenSupported << flush;
// Not Workint WTF!
// COORD NewBufferSize;
// if(SetConsoleDisplayMode(hOut, CONSOLE_FULLSCREEN_MODE, &NewBufferSize));
// else cout << "Fullscreen failed!" << flush;
while (Continue)
{
GetNumberOfConsoleInputEvents(hIn, &EventCount);
while (EventCount > 0)
{
ReadConsoleInput(hIn, &InRec, 1, &NumRead);
if (InRec.EventType == KEY_EVENT)
{
if (InRec.Event.KeyEvent.uChar.AsciiChar == 'x')
{
Continue = FALSE;
}
}
else if (InRec.EventType == MOUSE_EVENT)
{
if (InRec.Event.MouseEvent.dwEventFlags == 0)
{
if (InRec.Event.MouseEvent.dwButtonState & 0x01)
{
// Down
}
else
{
// Up
}
if (InRec.Event.MouseEvent.dwButtonState & 0x02)
{
// Down
}
else
{
// Up
}
}
else if (InRec.Event.MouseEvent.dwEventFlags == MOUSE_MOVED)
{
//cout << InRec.Event.MouseEvent.dwMousePosition.X << "," << InRec.Event.MouseEvent.dwMousePosition.Y << " " << flush;
}
else if (InRec.Event.MouseEvent.dwEventFlags == DOUBLE_CLICK)
{
//cout << InRec.Event.MouseEvent.dwMousePosition.X << "," << InRec.Event.MouseEvent.dwMousePosition.Y << " " << flush;
}
else if (InRec.Event.MouseEvent.dwEventFlags == MOUSE_WHEELED)
{
// Caution: Non-MSDN documented technique
if (InRec.Event.MouseEvent.dwButtonState & 0xFF000000)
{
// Down
}
else
{
// Up
}
}
}
GetNumberOfConsoleInputEvents(hIn, &EventCount);
}
}
return 0;
}
// Custom Console Functions: Implementaions
void ClearScreen(HANDLE hOut)
{
CONSOLE_SCREEN_BUFFER_INFO SBInfo;
int ScreenTotal;
COORD Position;
DWORD Written;
Position.X = 0;
Position.Y = 0;
GetConsoleScreenBufferInfo(hOut, &SBInfo);
ScreenTotal = SBInfo.dwSize.X * SBInfo.dwSize.Y;
FillConsoleOutputCharacter(hOut, ' ', ScreenTotal, Position, &Written);
}
void ChangeCursor(HANDLE hOut, int iSize, bool bVisable)
{
CONSOLE_CURSOR_INFO ConCurInf;
ConCurInf.dwSize = iSize;
ConCurInf.bVisible = bVisable;
SetConsoleCursorInfo(hOut, &ConCurInf);
}
void MoveCursor(HANDLE hOut, COORD Pos)
{
SetConsoleCursorPosition(hOut, Pos);
}
void MoveCursor(HANDLE hOut, int iX, int iY)
{
COORD Pos;
Pos.X = iX;
Pos.Y = iY;
SetConsoleCursorPosition(hOut, Pos);
}
void SetColor(HANDLE hOut, int iForeColor, int iBackColor)
{
SetConsoleTextAttribute(hOut, iForeColor | iBackColor);
}