Author: hbelusca
Date: Sat Jul  6 15:59:28 2013
New Revision: 59433

URL: http://svn.reactos.org/svn/reactos?rev=59433&view=rev
Log:
[CONSRV]
- Fix some files' info-header text.
- Move code of SrvSetConsoleWindowInfo to ConDrvSetConsoleWindowInfo.
- Introduce the helper function GetScreenBufferSizeUnits to retrieve 
screen-buffer width/height units.

Modified:
    trunk/reactos/win32ss/user/consrv/condrv/coninput.c
    trunk/reactos/win32ss/user/consrv/condrv/conoutput.c
    trunk/reactos/win32ss/user/consrv/condrv/graphics.c
    trunk/reactos/win32ss/user/consrv/condrv/text.c
    trunk/reactos/win32ss/user/consrv/conoutput.c
    trunk/reactos/win32ss/user/consrv/frontends/gui/guiterm.c

Modified: trunk/reactos/win32ss/user/consrv/condrv/coninput.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/consrv/condrv/coninput.c?rev=59433&r1=59432&r2=59433&view=diff
==============================================================================
--- trunk/reactos/win32ss/user/consrv/condrv/coninput.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/user/consrv/condrv/coninput.c [iso-8859-1] Sat Jul  6 
15:59:28 2013
@@ -1,7 +1,7 @@
 /*
  * COPYRIGHT:       See COPYING in the top level directory
- * PROJECT:         ReactOS Console Server DLL
- * FILE:            win32ss/user/consrv/coninput.c
+ * PROJECT:         ReactOS Console Driver DLL
+ * FILE:            win32ss/user/consrv/condrv/coninput.c
  * PURPOSE:         Console Input functions
  * PROGRAMMERS:     Jeffrey Morlan
  *                  Hermes Belusca-Maito (hermes.belu...@sfr.fr)
@@ -200,7 +200,7 @@
 }
 
 
-/* PUBLIC SERVER APIS 
*********************************************************/
+/* PUBLIC DRIVER APIS 
*********************************************************/
 
 NTSTATUS NTAPI
 ConDrvReadConsole(IN PCONSOLE Console,

Modified: trunk/reactos/win32ss/user/consrv/condrv/conoutput.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/consrv/condrv/conoutput.c?rev=59433&r1=59432&r2=59433&view=diff
==============================================================================
--- trunk/reactos/win32ss/user/consrv/condrv/conoutput.c        [iso-8859-1] 
(original)
+++ trunk/reactos/win32ss/user/consrv/condrv/conoutput.c        [iso-8859-1] 
Sat Jul  6 15:59:28 2013
@@ -1,6 +1,6 @@
 /*
  * COPYRIGHT:       See COPYING in the top level directory
- * PROJECT:         ReactOS Console Server DLL
+ * PROJECT:         ReactOS Console Driver DLL
  * FILE:            win32ss/user/consrv/condrv/conoutput.c
  * PURPOSE:         General Console Output Functions
  * PROGRAMMERS:     Jeffrey Morlan
@@ -184,7 +184,7 @@
     return (Console ? Console->ActiveBuffer : NULL);
 }
 
-/* PUBLIC SERVER APIS 
*********************************************************/
+/* PUBLIC DRIVER APIS 
*********************************************************/
 
 NTSTATUS NTAPI
 ConDrvInvalidateBitMapRect(IN PCONSOLE Console,

Modified: trunk/reactos/win32ss/user/consrv/condrv/graphics.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/consrv/condrv/graphics.c?rev=59433&r1=59432&r2=59433&view=diff
==============================================================================
--- trunk/reactos/win32ss/user/consrv/condrv/graphics.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/user/consrv/condrv/graphics.c [iso-8859-1] Sat Jul  6 
15:59:28 2013
@@ -1,7 +1,7 @@
 /*
  * COPYRIGHT:       See COPYING in the top level directory
- * PROJECT:         ReactOS Console Server DLL
- * FILE:            win32ss/user/consrv/graphics.c
+ * PROJECT:         ReactOS Console Driver DLL
+ * FILE:            win32ss/user/consrv/condrv/graphics.c
  * PURPOSE:         Console Output Functions for graphics-mode screen-buffers
  * PROGRAMMERS:     Hermes Belusca-Maito (hermes.belu...@sfr.fr)
  *

Modified: trunk/reactos/win32ss/user/consrv/condrv/text.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/consrv/condrv/text.c?rev=59433&r1=59432&r2=59433&view=diff
==============================================================================
--- trunk/reactos/win32ss/user/consrv/condrv/text.c     [iso-8859-1] (original)
+++ trunk/reactos/win32ss/user/consrv/condrv/text.c     [iso-8859-1] Sat Jul  6 
15:59:28 2013
@@ -1,7 +1,7 @@
 /*
  * COPYRIGHT:       See COPYING in the top level directory
- * PROJECT:         ReactOS Console Server DLL
- * FILE:            win32ss/user/consrv/text.c
+ * PROJECT:         ReactOS Console Driver DLL
+ * FILE:            win32ss/user/consrv/condrv/text.c
  * PURPOSE:         Console Output Functions for text-mode screen-buffers
  * PROGRAMMERS:     Jeffrey Morlan
  *                  Hermes Belusca-Maito (hermes.belu...@sfr.fr)
@@ -592,7 +592,7 @@
 }
 
 
-/* PUBLIC SERVER APIS 
*********************************************************/
+/* PUBLIC DRIVER APIS 
*********************************************************/
 
 NTSTATUS NTAPI
 ConDrvReadConsoleOutput(IN PCONSOLE Console,
@@ -1299,4 +1299,48 @@
     return STATUS_SUCCESS;
 }
 
+NTSTATUS NTAPI
+ConDrvSetConsoleWindowInfo(IN PCONSOLE Console,
+                           IN PTEXTMODE_SCREEN_BUFFER Buffer,
+                           IN BOOLEAN Absolute,
+                           IN PSMALL_RECT WindowRect)
+{
+    SMALL_RECT CapturedWindowRect;
+
+    if (Console == NULL || Buffer == NULL || WindowRect == NULL)
+        return STATUS_INVALID_PARAMETER;
+
+    /* Validity check */
+    ASSERT(Console == Buffer->Header.Console);
+
+    CapturedWindowRect = *WindowRect;
+
+    if (Absolute == FALSE)
+    {
+        /* Relative positions given. Transform them to absolute ones */
+        CapturedWindowRect.Left   += Buffer->ViewOrigin.X;
+        CapturedWindowRect.Top    += Buffer->ViewOrigin.Y;
+        CapturedWindowRect.Right  += Buffer->ViewOrigin.X + Buffer->ViewSize.X 
- 1;
+        CapturedWindowRect.Bottom += Buffer->ViewOrigin.Y + Buffer->ViewSize.Y 
- 1;
+    }
+
+    /* See MSDN documentation on SetConsoleWindowInfo about the performed 
checks */
+    if ( (CapturedWindowRect.Left < 0) || (CapturedWindowRect.Top < 0)  ||
+         (CapturedWindowRect.Right  >= Buffer->ScreenBufferSize.X)      ||
+         (CapturedWindowRect.Bottom >= Buffer->ScreenBufferSize.Y)      ||
+         (CapturedWindowRect.Right  <= CapturedWindowRect.Left)         ||
+         (CapturedWindowRect.Bottom <= CapturedWindowRect.Top) )
+    {
+        return STATUS_INVALID_PARAMETER;
+    }
+
+    Buffer->ViewOrigin.X = CapturedWindowRect.Left;
+    Buffer->ViewOrigin.Y = CapturedWindowRect.Top;
+
+    Buffer->ViewSize.X = CapturedWindowRect.Right - CapturedWindowRect.Left + 
1;
+    Buffer->ViewSize.Y = CapturedWindowRect.Bottom - CapturedWindowRect.Top + 
1;
+
+    return STATUS_SUCCESS;
+}
+
 /* EOF */

Modified: trunk/reactos/win32ss/user/consrv/conoutput.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/consrv/conoutput.c?rev=59433&r1=59432&r2=59433&view=diff
==============================================================================
--- trunk/reactos/win32ss/user/consrv/conoutput.c       [iso-8859-1] (original)
+++ trunk/reactos/win32ss/user/consrv/conoutput.c       [iso-8859-1] Sat Jul  6 
15:59:28 2013
@@ -756,56 +756,38 @@
     return Status;
 }
 
-
-
-
-
+NTSTATUS NTAPI
+ConDrvSetConsoleWindowInfo(IN PCONSOLE Console,
+                           IN PTEXTMODE_SCREEN_BUFFER Buffer,
+                           IN BOOLEAN Absolute,
+                           IN PSMALL_RECT WindowRect);
 CSR_API(SrvSetConsoleWindowInfo)
 {
     NTSTATUS Status;
     PCONSOLE_SETWINDOWINFO SetWindowInfoRequest = 
&((PCONSOLE_API_MESSAGE)ApiMessage)->Data.SetWindowInfoRequest;
-    PCONSOLE_SCREEN_BUFFER Buff;
-    SMALL_RECT WindowRect = SetWindowInfoRequest->WindowRect;
-
-    DPRINT("SrvSetConsoleWindowInfo(0x%08x, %d, {L%d, T%d, R%d, B%d}) 
called\n",
+    // PCONSOLE_SCREEN_BUFFER Buffer;
+    PTEXTMODE_SCREEN_BUFFER Buffer;
+
+    DPRINT1("SrvSetConsoleWindowInfo(0x%08x, %d, {L%d, T%d, R%d, B%d}) 
called\n",
             SetWindowInfoRequest->OutputHandle, SetWindowInfoRequest->Absolute,
-            WindowRect.Left, WindowRect.Top, WindowRect.Right, 
WindowRect.Bottom);
-
+            SetWindowInfoRequest->WindowRect.Left ,
+            SetWindowInfoRequest->WindowRect.Top  ,
+            SetWindowInfoRequest->WindowRect.Right,
+            SetWindowInfoRequest->WindowRect.Bottom);
+
+    // ConSrvGetScreenBuffer
     Status = 
ConSrvGetTextModeBuffer(ConsoleGetPerProcessData(CsrGetClientThread()->Process),
                                      SetWindowInfoRequest->OutputHandle,
-                                     &Buff,
-                                     GENERIC_READ,
-                                     TRUE);
-    if (!NT_SUCCESS(Status)) return Status;
-
-    if (SetWindowInfoRequest->Absolute == FALSE)
-    {
-        /* Relative positions given. Transform them to absolute ones */
-        WindowRect.Left   += Buff->ViewOrigin.X;
-        WindowRect.Top    += Buff->ViewOrigin.Y;
-        WindowRect.Right  += Buff->ViewOrigin.X + Buff->ViewSize.X - 1;
-        WindowRect.Bottom += Buff->ViewOrigin.Y + Buff->ViewSize.Y - 1;
-    }
-
-    /* See MSDN documentation on SetConsoleWindowInfo about the performed 
checks */
-    if ( (WindowRect.Left < 0) || (WindowRect.Top < 0)   ||
-         (WindowRect.Right  >= Buff->ScreenBufferSize.X) ||
-         (WindowRect.Bottom >= Buff->ScreenBufferSize.Y) ||
-         (WindowRect.Right  <= WindowRect.Left)          ||
-         (WindowRect.Bottom <= WindowRect.Top) )
-    {
-        ConSrvReleaseScreenBuffer(Buff, TRUE);
-        return STATUS_INVALID_PARAMETER;
-    }
-
-    Buff->ViewOrigin.X = WindowRect.Left;
-    Buff->ViewOrigin.Y = WindowRect.Top;
-
-    Buff->ViewSize.X = WindowRect.Right - WindowRect.Left + 1;
-    Buff->ViewSize.Y = WindowRect.Bottom - WindowRect.Top + 1;
-
-    ConSrvReleaseScreenBuffer(Buff, TRUE);
-    return STATUS_SUCCESS;
+                                     &Buffer, GENERIC_READ, TRUE);
+    if (!NT_SUCCESS(Status)) return Status;
+
+    Status = ConDrvSetConsoleWindowInfo(Buffer->Header.Console,
+                                        Buffer,
+                                        SetWindowInfoRequest->Absolute,
+                                        &SetWindowInfoRequest->WindowRect);
+
+    ConSrvReleaseScreenBuffer(Buffer, TRUE);
+    return Status;
 }
 
 /* EOF */

Modified: trunk/reactos/win32ss/user/consrv/frontends/gui/guiterm.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/consrv/frontends/gui/guiterm.c?rev=59433&r1=59432&r2=59433&view=diff
==============================================================================
--- trunk/reactos/win32ss/user/consrv/frontends/gui/guiterm.c   [iso-8859-1] 
(original)
+++ trunk/reactos/win32ss/user/consrv/frontends/gui/guiterm.c   [iso-8859-1] 
Sat Jul  6 15:59:28 2013
@@ -142,6 +142,32 @@
 };
 
 /* FUNCTIONS 
******************************************************************/
+
+static VOID
+GetScreenBufferSizeUnits(IN PCONSOLE_SCREEN_BUFFER Buffer,
+                         IN PGUI_CONSOLE_DATA GuiData,
+                         OUT PUINT WidthUnit,
+                         OUT PUINT HeightUnit)
+{
+    if (Buffer == NULL || GuiData == NULL ||
+        WidthUnit == NULL || HeightUnit == NULL)
+    {
+        return;
+    }
+
+    if (GetType(Buffer) == TEXTMODE_BUFFER)
+    {
+        *WidthUnit  = GuiData->CharWidth ;
+        *HeightUnit = GuiData->CharHeight;
+    }
+    else /* if (GetType(Buffer) == GRAPHICS_BUFFER) */
+    {
+        *WidthUnit  = 1;
+        *HeightUnit = 1;
+    }
+}
+
+
 
 static VOID
 GuiConsoleAppendMenuItems(HMENU hMenu,
@@ -374,16 +400,7 @@
     DWORD Width, Height;
     UINT  WidthUnit, HeightUnit;
 
-    if (GetType(Buff) == TEXTMODE_BUFFER)
-    {
-        WidthUnit  = GuiData->CharWidth ;
-        HeightUnit = GuiData->CharHeight;
-    }
-    else /* if (GetType(Buff) == GRAPHICS_BUFFER) */
-    {
-        WidthUnit  = 1;
-        HeightUnit = 1;
-    }
+    GetScreenBufferSizeUnits(Buff, GuiData, &WidthUnit, &HeightUnit);
 
     Width  = Buff->ViewSize.X * WidthUnit  +
              2 * (GetSystemMetrics(SM_CXFRAME) + GetSystemMetrics(SM_CXEDGE));
@@ -576,16 +593,7 @@
     PCONSOLE_SCREEN_BUFFER Buffer = ConDrvGetActiveScreenBuffer(Console);
     UINT WidthUnit, HeightUnit;
 
-    if (GetType(Buffer) == TEXTMODE_BUFFER)
-    {
-        WidthUnit  = GuiData->CharWidth ;
-        HeightUnit = GuiData->CharHeight;
-    }
-    else /* if (GetType(Buffer) == GRAPHICS_BUFFER) */
-    {
-        WidthUnit  = 1;
-        HeightUnit = 1;
-    }
+    GetScreenBufferSizeUnits(Buffer, GuiData, &WidthUnit, &HeightUnit);
 
     Rect->left   = (SmallRect->Left       - Buffer->ViewOrigin.X) * WidthUnit ;
     Rect->top    = (SmallRect->Top        - Buffer->ViewOrigin.Y) * HeightUnit;
@@ -1061,16 +1069,7 @@
     COORD Coord;
     UINT  WidthUnit, HeightUnit;
 
-    if (GetType(Buffer) == TEXTMODE_BUFFER)
-    {
-        WidthUnit  = GuiData->CharWidth ;
-        HeightUnit = GuiData->CharHeight;
-    }
-    else /* if (GetType(Buffer) == GRAPHICS_BUFFER) */
-    {
-        WidthUnit  = 1;
-        HeightUnit = 1;
-    }
+    GetScreenBufferSizeUnits(Buffer, GuiData, &WidthUnit, &HeightUnit);
 
     Coord.X = Buffer->ViewOrigin.X + ((SHORT)LOWORD(lParam) / (int)WidthUnit );
     Coord.Y = Buffer->ViewOrigin.Y + ((SHORT)HIWORD(lParam) / (int)HeightUnit);
@@ -1400,16 +1399,7 @@
 
     ActiveBuffer = ConDrvGetActiveScreenBuffer(Console);
 
-    if (GetType(ActiveBuffer) == TEXTMODE_BUFFER)
-    {
-        WidthUnit  = GuiData->CharWidth ;
-        HeightUnit = GuiData->CharHeight;
-    }
-    else /* if (GetType(ActiveBuffer) == GRAPHICS_BUFFER) */
-    {
-        WidthUnit  = 1;
-        HeightUnit = 1;
-    }
+    GetScreenBufferSizeUnits(ActiveBuffer, GuiData, &WidthUnit, &HeightUnit);
 
     windx = CONGUI_MIN_WIDTH  * WidthUnit  + 2 * (GetSystemMetrics(SM_CXFRAME) 
+ GetSystemMetrics(SM_CXEDGE));
     windy = CONGUI_MIN_HEIGHT * HeightUnit + 2 * (GetSystemMetrics(SM_CYFRAME) 
+ GetSystemMetrics(SM_CYEDGE)) + GetSystemMetrics(SM_CYCAPTION);
@@ -1443,16 +1433,7 @@
         DWORD windx, windy, charx, chary;
         UINT  WidthUnit, HeightUnit;
 
-        if (GetType(Buff) == TEXTMODE_BUFFER)
-        {
-            WidthUnit  = GuiData->CharWidth ;
-            HeightUnit = GuiData->CharHeight;
-        }
-        else /* if (GetType(Buff) == GRAPHICS_BUFFER) */
-        {
-            WidthUnit  = 1;
-            HeightUnit = 1;
-        }
+        GetScreenBufferSizeUnits(Buff, GuiData, &WidthUnit, &HeightUnit);
 
         GuiData->WindowSizeLock = TRUE;
 
@@ -1615,16 +1596,7 @@
 
         *pShowXY = sInfo.nPos;
 
-        if (GetType(Buff) == TEXTMODE_BUFFER)
-        {
-            WidthUnit  = GuiData->CharWidth ;
-            HeightUnit = GuiData->CharHeight;
-        }
-        else /* if (GetType(Buff) == GRAPHICS_BUFFER) */
-        {
-            WidthUnit  = 1;
-            HeightUnit = 1;
-        }
+        GetScreenBufferSizeUnits(Buff, GuiData, &WidthUnit, &HeightUnit);
 
         ScrollWindowEx(GuiData->hWindow,
                        (OldX - Buff->ViewOrigin.X) * WidthUnit ,
@@ -2684,16 +2656,7 @@
     ActiveBuffer = ConDrvGetActiveScreenBuffer(GuiData->Console);
     if (ActiveBuffer)
     {
-        if (GetType(ActiveBuffer) == TEXTMODE_BUFFER)
-        {
-            WidthUnit  = GuiData->CharWidth ;
-            HeightUnit = GuiData->CharHeight;
-        }
-        else /* if (GetType(ActiveBuffer) == GRAPHICS_BUFFER) */
-        {
-            WidthUnit  = 1;
-            HeightUnit = 1;
-        }
+        GetScreenBufferSizeUnits(ActiveBuffer, GuiData, &WidthUnit, 
&HeightUnit);
     }
     else
     {


Reply via email to