Code reorganization: move console-window-class - related code into a file.

svn path=/trunk/; revision=62740
This commit is contained in:
Hermès Bélusca-Maïto 2014-04-13 15:13:55 +00:00
parent 858c7e6474
commit 163b561df1
11 changed files with 2262 additions and 2118 deletions

View file

@ -22,6 +22,7 @@ list(APPEND CONSRV_SOURCE
consrv/condrv/graphics.c
consrv/condrv/text.c
consrv/frontends/input.c
consrv/frontends/gui/conwnd.c
consrv/frontends/gui/fullscreen.c
consrv/frontends/gui/guiterm.c
consrv/frontends/gui/guisettings.c

View file

@ -67,13 +67,12 @@ typedef struct _CONSOLE_PROCESS_DATA
} CONSOLE_PROCESS_DATA, *PCONSOLE_PROCESS_DATA;
#include "include/conio.h"
#include "include/console.h"
#include "include/settings.h"
#include "include/term.h"
#include "console.h"
#include "conoutput.h"
#include "handle.h"
#include "lineinput.h"
#include "frontends/gui/guisettings.h"
#include "include/console.h"
#include "include/settings.h"
#include "include/term.h"
#endif /* __CONSRV_H__ */

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,68 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS Console Server DLL
* FILE: frontends/gui/conwnd.h
* PURPOSE: GUI Console Window Class
* PROGRAMMERS: van Geldorp
* Johannes Anderwald
* Jeffrey Morlan
* Hermes Belusca-Maito (hermes.belusca@sfr.fr)
*/
#pragma once
/* GUI Console Window Class name */
#define GUI_CONWND_CLASS L"ConsoleWindowClass"
#ifndef WM_APP
#define WM_APP 0x8000
#endif
#define PM_RESIZE_TERMINAL (WM_APP + 3)
#define PM_CONSOLE_BEEP (WM_APP + 4)
#define PM_CONSOLE_SET_TITLE (WM_APP + 5)
typedef struct _GUI_CONSOLE_DATA
{
CRITICAL_SECTION Lock;
BOOL WindowSizeLock;
HANDLE hGuiInitEvent;
POINT OldCursor;
LONG_PTR WndStyle;
LONG_PTR WndStyleEx;
BOOL IsWndMax;
WINDOWPLACEMENT WndPl;
HWND hWindow; /* Handle to the console's window */
HDC hMemDC; /* Memory DC holding the console framebuffer */
HBITMAP hBitmap; /* Console framebuffer */
HPALETTE hSysPalette; /* Handle to the original system palette */
HICON hIcon; /* Handle to the console's icon (big) */
HICON hIconSm; /* Handle to the console's icon (small) */
/*** The following may be put per-screen-buffer !! ***/
HCURSOR hCursor; /* Handle to the mouse cursor */
INT MouseCursorRefCount; /* The reference counter associated with the mouse cursor. >= 0 and the cursor is shown; < 0 and the cursor is hidden. */
BOOL IgnoreNextMouseSignal; /* Used in cases where we don't want to treat a mouse signal */
BOOL IsCloseButtonEnabled; /* TRUE if the Close button and the corresponding system menu item are enabled (default), FALSE otherwise */
UINT CmdIdLow ; /* Lowest menu id of the user-reserved menu id range */
UINT CmdIdHigh; /* Highest menu id of the user-reserved menu id range */
// COLORREF Colors[16];
// PVOID ScreenBuffer; /* Hardware screen buffer */
HFONT Font;
UINT CharWidth;
UINT CharHeight;
/*****************************************************/
PCONSOLE Console; /* Pointer to the owned console */
PCONSOLE_SCREEN_BUFFER ActiveBuffer; /* Pointer to the active screen buffer (then maybe the previous Console member is redundant?? Or not...) */
GUI_CONSOLE_INFO GuiInfo; /* GUI terminal settings */
} GUI_CONSOLE_DATA, *PGUI_CONSOLE_DATA;

View file

@ -13,6 +13,8 @@
#define NDEBUG
#include <debug.h>
#include "guiterm.h"
/* FUNCTIONS ******************************************************************/
BOOL

View file

@ -13,6 +13,8 @@
#define NDEBUG
#include <debug.h>
#include "guiterm.h"
/* FUNCTIONS ******************************************************************/
VOID

View file

@ -14,6 +14,9 @@
#define NDEBUG
#include <debug.h>
#include "guiterm.h"
#include "guisettings.h"
VOID GuiConsoleMoveWindow(PGUI_CONSOLE_DATA GuiData);
VOID SwitchFullScreen(PGUI_CONSOLE_DATA GuiData, BOOL FullScreen);

View file

@ -37,50 +37,7 @@ typedef struct _GUI_CONSOLE_INFO
#ifndef CONSOLE_H__ // If we aren't included by console.dll
typedef struct _GUI_CONSOLE_DATA
{
CRITICAL_SECTION Lock;
BOOL WindowSizeLock;
HANDLE hGuiInitEvent;
POINT OldCursor;
LONG_PTR WndStyle;
LONG_PTR WndStyleEx;
BOOL IsWndMax;
WINDOWPLACEMENT WndPl;
HWND hWindow; /* Handle to the console's window */
HDC hMemDC; /* Memory DC holding the console framebuffer */
HBITMAP hBitmap; /* Console framebuffer */
HPALETTE hSysPalette; /* Handle to the original system palette */
HICON hIcon; /* Handle to the console's icon (big) */
HICON hIconSm; /* Handle to the console's icon (small) */
/*** The following may be put per-screen-buffer !! ***/
HCURSOR hCursor; /* Handle to the mouse cursor */
INT MouseCursorRefCount; /* The reference counter associated with the mouse cursor. >= 0 and the cursor is shown; < 0 and the cursor is hidden. */
BOOL IgnoreNextMouseSignal; /* Used in cases where we don't want to treat a mouse signal */
BOOL IsCloseButtonEnabled; /* TRUE if the Close button and the corresponding system menu item are enabled (default), FALSE otherwise */
UINT CmdIdLow ; /* Lowest menu id of the user-reserved menu id range */
UINT CmdIdHigh; /* Highest menu id of the user-reserved menu id range */
// COLORREF Colors[16];
// PVOID ScreenBuffer; /* Hardware screen buffer */
HFONT Font;
UINT CharWidth;
UINT CharHeight;
/*****************************************************/
PCONSOLE Console; /* Pointer to the owned console */
PCONSOLE_SCREEN_BUFFER ActiveBuffer; /* Pointer to the active screen buffer (then maybe the previous Console member is redundant?? Or not...) */
GUI_CONSOLE_INFO GuiInfo; /* GUI terminal settings */
} GUI_CONSOLE_DATA, *PGUI_CONSOLE_DATA;
#include "conwnd.h"
/* FUNCTIONS ******************************************************************/

File diff suppressed because it is too large Load diff

View file

@ -11,12 +11,8 @@
#pragma once
#define CONGUI_MIN_WIDTH 10
#define CONGUI_MIN_HEIGHT 10
#define CONGUI_UPDATE_TIME 0
#define CONGUI_UPDATE_TIMER 1
#define CURSOR_BLINK_TIME 500
#include "guisettings.h"
#include "conwnd.h"
NTSTATUS FASTCALL GuiInitConsole(PCONSOLE Console,
/*IN*/ PCONSOLE_START_INFO ConsoleStartInfo,

View file

@ -16,6 +16,8 @@
#define NDEBUG
#include <debug.h>
#include "guiterm.h"
/* FUNCTIONS ******************************************************************/
COLORREF RGBFromAttrib2(PCONSOLE Console, WORD Attribute)