Added cards.dll by Filip Navara with some minor changes I had to make
to merge with winehq. svn path=/trunk/; revision=5860
@@ -0,0 +1,9 @@
|
||||
temp.exp
|
||||
*.a
|
||||
*.dll
|
||||
*.lib
|
||||
*.sym
|
||||
*.coff
|
||||
*.map
|
||||
*.tmp
|
||||
*.o
|
||||
@@ -0,0 +1,28 @@
|
||||
PATH_TO_TOP = ../..
|
||||
|
||||
TARGET_TYPE = dynlink
|
||||
|
||||
TARGET_NAME = cards
|
||||
|
||||
TARGET_BASE = 0x701a0000
|
||||
|
||||
TARGET_CFLAGS = -fno-builtin -D__USE_W32API
|
||||
|
||||
# require os code to explicitly request A/W version of structs/functions
|
||||
TARGET_CFLAGS += -DUNICODE -D_UNICODE
|
||||
|
||||
TARGET_LFLAGS = -nostdlib -nostartfiles
|
||||
|
||||
TARGET_SDKLIBS = gdi32.a user32.a
|
||||
|
||||
TARGET_OBJECTS = cards.o
|
||||
|
||||
DEP_OBJECTS = $(TARGET_OBJECTS)
|
||||
|
||||
include $(PATH_TO_TOP)/rules.mak
|
||||
|
||||
include $(TOOLS_PATH)/helper.mk
|
||||
|
||||
include $(TOOLS_PATH)/depend.mk
|
||||
|
||||
# EOF
|
||||
@@ -0,0 +1,233 @@
|
||||
/*
|
||||
* ReactOS Cards
|
||||
*
|
||||
* Copyright (C) 2003 Filip Navara <[email protected]>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "wingdi.h"
|
||||
#include "winuser.h"
|
||||
#include "cards.h"
|
||||
|
||||
HBITMAP g_CardBitmaps[MAX_CARD_BITMAPS];
|
||||
HINSTANCE g_hModule = 0;
|
||||
|
||||
/*
|
||||
* Redundant function from 16-bit Windows time
|
||||
*/
|
||||
BOOL WINAPI WEP(DWORD Unknown)
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize card library and return cards width and height
|
||||
*/
|
||||
BOOL WINAPI cdtInit(INT *Width, INT *Height)
|
||||
{
|
||||
DWORD dwIndex;
|
||||
|
||||
/* Report card width and height to user */
|
||||
*Width = CARD_WIDTH;
|
||||
*Height = CARD_HEIGHT;
|
||||
|
||||
/* Load images */
|
||||
for (dwIndex = 0; dwIndex < MAX_CARD_BITMAPS; ++dwIndex)
|
||||
g_CardBitmaps[dwIndex] =
|
||||
(HBITMAP)LoadBitmapA(g_hModule, MAKEINTRESOURCEA(dwIndex + 1));
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/*
|
||||
* Terminate card library
|
||||
*/
|
||||
VOID WINAPI cdtTerm(VOID)
|
||||
{
|
||||
DWORD dwIndex;
|
||||
|
||||
/* Unload images */
|
||||
for (dwIndex = 0; dwIndex < MAX_CARD_BITMAPS; dwIndex++)
|
||||
DeleteObject(g_CardBitmaps[dwIndex]);
|
||||
}
|
||||
|
||||
/*
|
||||
* Render card with no stretching
|
||||
*/
|
||||
BOOL WINAPI cdtDraw(HDC hdc, INT x, INT y, INT card, INT type, COLORREF color)
|
||||
{
|
||||
return cdtDrawExt(hdc, x, y, CARD_WIDTH, CARD_HEIGHT, card, type, color);
|
||||
}
|
||||
|
||||
/*
|
||||
* Render card
|
||||
*
|
||||
* Parameters:
|
||||
* hdc - Handle of destination device context
|
||||
* x - Position left
|
||||
* y - Position right
|
||||
* dx - Destination width
|
||||
* dy - Destination height
|
||||
* card - Image id (meaning depend on type)
|
||||
* type - One of edt* constants
|
||||
* color - Background color (?)
|
||||
*/
|
||||
BOOL WINAPI cdtDrawExt(HDC hdc, INT x, INT y, INT dx, INT dy, INT card, INT type, COLORREF color)
|
||||
{
|
||||
HDC hdcCard;
|
||||
COLORREF SavedPixels[12];
|
||||
DWORD dwRasterOp = SRCCOPY, OldBkColor;
|
||||
BOOL bSaveEdges = TRUE;
|
||||
BOOL bStretch = FALSE;
|
||||
|
||||
if (type & ectSAVEEDGESMASK)
|
||||
{
|
||||
type &= ~ectSAVEEDGESMASK;
|
||||
bSaveEdges = FALSE;
|
||||
}
|
||||
|
||||
if (dx != CARD_WIDTH || dy != CARD_HEIGHT)
|
||||
{
|
||||
bStretch = TRUE;
|
||||
bSaveEdges = FALSE;
|
||||
}
|
||||
|
||||
switch (type)
|
||||
{
|
||||
case ectINVERTED:
|
||||
dwRasterOp = NOTSRCCOPY;
|
||||
case ectFACES:
|
||||
card = (card % 4) * 13 + (card / 4);
|
||||
break;
|
||||
case ectBACKS:
|
||||
--card;
|
||||
break;
|
||||
case ectEMPTYNOBG:
|
||||
dwRasterOp = SRCAND;
|
||||
case ectEMPTY:
|
||||
card = 52;
|
||||
break;
|
||||
case ectERASE:
|
||||
break;
|
||||
case ectREDX:
|
||||
card = 66;
|
||||
break;
|
||||
case ectGREENO:
|
||||
card = 67;
|
||||
break;
|
||||
default:
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (type == ectEMPTY || type == ectERASE)
|
||||
{
|
||||
POINT pPoint;
|
||||
HBRUSH hBrush;
|
||||
|
||||
hBrush = CreateSolidBrush(color);
|
||||
GetDCOrgEx(hdc, &pPoint);
|
||||
SetBrushOrgEx(hdc, pPoint.x, pPoint.y, 0);
|
||||
SelectObject(hdc, hBrush);
|
||||
PatBlt(hdc, x, y, dx, dy, PATCOPY);
|
||||
}
|
||||
if (type != ectERASE)
|
||||
{
|
||||
hdcCard = CreateCompatibleDC(hdc);
|
||||
SelectObject(hdcCard, g_CardBitmaps[card]);
|
||||
OldBkColor = SetBkColor(hdc, (type == ectFACES) ? 0xFFFFFF : color);
|
||||
if (bSaveEdges)
|
||||
{
|
||||
SavedPixels[0] = GetPixel(hdc, x, y);
|
||||
SavedPixels[1] = GetPixel(hdc, x + 1, y);
|
||||
SavedPixels[2] = GetPixel(hdc, x, y + 1);
|
||||
SavedPixels[3] = GetPixel(hdc, x + dx - 1, y);
|
||||
SavedPixels[4] = GetPixel(hdc, x + dx - 2, y);
|
||||
SavedPixels[5] = GetPixel(hdc, x + dx - 1, y + 1);
|
||||
SavedPixels[6] = GetPixel(hdc, x, y + dy - 1);
|
||||
SavedPixels[7] = GetPixel(hdc, x + 1, y + dy - 1);
|
||||
SavedPixels[8] = GetPixel(hdc, x, y + dy - 2);
|
||||
SavedPixels[9] = GetPixel(hdc, x + dx - 1, y + dy - 1);
|
||||
SavedPixels[10] = GetPixel(hdc, x + dx - 2, y + dy - 1);
|
||||
SavedPixels[11] = GetPixel(hdc, x + dx - 1, y + dy - 2);
|
||||
}
|
||||
if (bStretch)
|
||||
{
|
||||
StretchBlt(hdc, x, y, dx, dy, hdcCard, 0, 0, CARD_WIDTH, CARD_HEIGHT, dwRasterOp);
|
||||
} else
|
||||
{
|
||||
BitBlt(hdc, x, y, dx, dy, hdcCard, 0, 0, dwRasterOp);
|
||||
/*
|
||||
* This is need when using Microsoft images, because they use two-color red/white images for
|
||||
* red cards and thus needs fix-up of the edge to black color.
|
||||
*/
|
||||
#if 0
|
||||
if (ISREDCARD(card))
|
||||
{
|
||||
PatBlt(hdc, x, y + 2, 1, dy - 4, BLACKNESS);
|
||||
PatBlt(hdc, x + dx - 1, y + 2, 1, dy - 4, BLACKNESS);
|
||||
PatBlt(hdc, x + 2, y, dx - 4, 1, BLACKNESS);
|
||||
PatBlt(hdc, x + 2, y + dy - 1, dx - 4, 1, BLACKNESS);
|
||||
SetPixel(hdc, x + 1, y + 1, 0);
|
||||
SetPixel(hdc, x + dx - 2, y + 1, 0);
|
||||
SetPixel(hdc, x + 1, y + dy - 2, 0);
|
||||
SetPixel(hdc, x + dx - 2, y + dy - 2, 0);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
if (bSaveEdges)
|
||||
{
|
||||
SetPixel(hdc, x, y, SavedPixels[0]);
|
||||
SetPixel(hdc, x + 1, y, SavedPixels[1]);
|
||||
SetPixel(hdc, x, y + 1, SavedPixels[2]);
|
||||
SetPixel(hdc, x + dx - 1, y, SavedPixels[3]);
|
||||
SetPixel(hdc, x + dx - 2, y, SavedPixels[4]);
|
||||
SetPixel(hdc, x + dx - 1, y + 1, SavedPixels[5]);
|
||||
SetPixel(hdc, x, y + dy - 1, SavedPixels[6]);
|
||||
SetPixel(hdc, x + 1, y + dy - 1, SavedPixels[7]);
|
||||
SetPixel(hdc, x, y + dy - 2, SavedPixels[8]);
|
||||
SetPixel(hdc, x + dx - 1, y + dy - 1, SavedPixels[9]);
|
||||
SetPixel(hdc, x + dx - 2, y + dy - 1, SavedPixels[10]);
|
||||
SetPixel(hdc, x + dx - 1, y + dy - 2, SavedPixels[11]);
|
||||
}
|
||||
SetBkColor(hdc, OldBkColor);
|
||||
DeleteDC(hdcCard);
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* cdtAnimate (CARDS.@)
|
||||
*
|
||||
* Animate card background, we don't use it
|
||||
*/
|
||||
BOOL WINAPI cdtAnimate(HDC hdc, int cardback, int x, int y, int frame)
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
||||
{
|
||||
if (fdwReason == DLL_PROCESS_ATTACH)
|
||||
g_hModule = hinstDLL;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
LIBRARY cards.dll
|
||||
EXPORTS
|
||||
WEP=WEP@4
|
||||
cdtAnimate=cdtAnimate@20
|
||||
cdtDraw=cdtDraw@24
|
||||
cdtDrawExt=cdtDrawExt@32
|
||||
cdtInit=cdtInit@8
|
||||
cdtTerm=cdtTerm@0
|
||||
@@ -0,0 +1,61 @@
|
||||
/*
|
||||
* ReactOS Cards
|
||||
*
|
||||
* Copyright (C) 2003 Filip Navara <[email protected]>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef _CARDS_H
|
||||
#define _CARDS_H
|
||||
|
||||
/*
|
||||
* 52 card faces +
|
||||
* 12 card backs +
|
||||
* X Sign +
|
||||
* O Sign +
|
||||
* FreeCard +
|
||||
* Joker
|
||||
*/
|
||||
#define MAX_CARD_BITMAPS 68
|
||||
|
||||
#define ectFACES 0
|
||||
#define ectBACKS 1
|
||||
#define ectINVERTED 2
|
||||
#define ectEMPTY 3
|
||||
#define ectERASE 4
|
||||
#define ectEMPTYNOBG 5
|
||||
#define ectREDX 6
|
||||
#define ectGREENO 7
|
||||
#define ectSAVEEDGESMASK 0x80000000
|
||||
|
||||
/* Microsoft card dimensions */
|
||||
/*
|
||||
#define CARD_WIDTH 71
|
||||
#define CARD_HEIGHT 96
|
||||
*/
|
||||
/* Oxymoron's card dimensions */
|
||||
#define CARD_WIDTH 73
|
||||
#define CARD_HEIGHT 97
|
||||
|
||||
#define ISREDCARD(x) (x >= 13 && x <= 39)
|
||||
|
||||
BOOL WINAPI cdtInit(int *width, int *height);
|
||||
BOOL WINAPI cdtDraw(HDC hdc, int x, int y, int card, int type, DWORD color);
|
||||
BOOL WINAPI cdtDrawExt(HDC hdc, int x, int y, int dx, int dy, int card, int suit, DWORD color);
|
||||
BOOL WINAPI cdtAnimate(HDC hdc, int cardback, int x, int y, int frame);
|
||||
void WINAPI cdtTerm(void);
|
||||
|
||||
#endif /* _CARDS_H */
|
||||
@@ -0,0 +1,115 @@
|
||||
/*
|
||||
* ReactOS Cards
|
||||
*
|
||||
* Copyright (C) 2003 Filip Navara <[email protected]>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
1 BITMAP "res/Clubs_Ace.bmp"
|
||||
2 BITMAP "res/Clubs_Two.bmp"
|
||||
3 BITMAP "res/Clubs_Three.bmp"
|
||||
4 BITMAP "res/Clubs_Four.bmp"
|
||||
5 BITMAP "res/Clubs_Five.bmp"
|
||||
6 BITMAP "res/Clubs_Six.bmp"
|
||||
7 BITMAP "res/Clubs_Seven.bmp"
|
||||
8 BITMAP "res/Clubs_Eight.bmp"
|
||||
9 BITMAP "res/Clubs_Nine.bmp"
|
||||
10 BITMAP "res/Clubs_Ten.bmp"
|
||||
11 BITMAP "res/Clubs_Jack.bmp"
|
||||
12 BITMAP "res/Clubs_Queen.bmp"
|
||||
13 BITMAP "res/Clubs_King.bmp"
|
||||
14 BITMAP "res/Diamonds_Ace.bmp"
|
||||
15 BITMAP "res/Diamonds_Two.bmp"
|
||||
16 BITMAP "res/Diamonds_Three.bmp"
|
||||
17 BITMAP "res/Diamonds_Four.bmp"
|
||||
18 BITMAP "res/Diamonds_Five.bmp"
|
||||
19 BITMAP "res/Diamonds_Six.bmp"
|
||||
20 BITMAP "res/Diamonds_Seven.bmp"
|
||||
21 BITMAP "res/Diamonds_Eight.bmp"
|
||||
22 BITMAP "res/Diamonds_Nine.bmp"
|
||||
23 BITMAP "res/Diamonds_Ten.bmp"
|
||||
24 BITMAP "res/Diamonds_Jack.bmp"
|
||||
25 BITMAP "res/Diamonds_Queen.bmp"
|
||||
26 BITMAP "res/Diamonds_King.bmp"
|
||||
27 BITMAP "res/Hearts_Ace.bmp"
|
||||
28 BITMAP "res/Hearts_Two.bmp"
|
||||
29 BITMAP "res/Hearts_Three.bmp"
|
||||
30 BITMAP "res/Hearts_Four.bmp"
|
||||
31 BITMAP "res/Hearts_Five.bmp"
|
||||
32 BITMAP "res/Hearts_Six.bmp"
|
||||
33 BITMAP "res/Hearts_Seven.bmp"
|
||||
34 BITMAP "res/Hearts_Eight.bmp"
|
||||
35 BITMAP "res/Hearts_Nine.bmp"
|
||||
36 BITMAP "res/Hearts_Ten.bmp"
|
||||
37 BITMAP "res/Hearts_Jack.bmp"
|
||||
38 BITMAP "res/Hearts_Queen.bmp"
|
||||
39 BITMAP "res/Hearts_King.bmp"
|
||||
40 BITMAP "res/Spades_Ace.bmp"
|
||||
41 BITMAP "res/Spades_Two.bmp"
|
||||
42 BITMAP "res/Spades_Three.bmp"
|
||||
43 BITMAP "res/Spades_Four.bmp"
|
||||
44 BITMAP "res/Spades_Five.bmp"
|
||||
45 BITMAP "res/Spades_Six.bmp"
|
||||
46 BITMAP "res/Spades_Seven.bmp"
|
||||
47 BITMAP "res/Spades_Eight.bmp"
|
||||
48 BITMAP "res/Spades_Nine.bmp"
|
||||
49 BITMAP "res/Spades_Ten.bmp"
|
||||
50 BITMAP "res/Spades_Jack.bmp"
|
||||
51 BITMAP "res/Spades_Queen.bmp"
|
||||
52 BITMAP "res/Spades_King.bmp"
|
||||
53 BITMAP "res/FreeCard.bmp"
|
||||
54 BITMAP "res/Background_1.bmp"
|
||||
55 BITMAP "res/Background_1.bmp"
|
||||
56 BITMAP "res/Background_1.bmp"
|
||||
57 BITMAP "res/Background_1.bmp"
|
||||
58 BITMAP "res/Background_1.bmp"
|
||||
59 BITMAP "res/Background_1.bmp"
|
||||
60 BITMAP "res/Background_1.bmp"
|
||||
61 BITMAP "res/Background_1.bmp"
|
||||
62 BITMAP "res/Background_1.bmp"
|
||||
63 BITMAP "res/Background_1.bmp"
|
||||
64 BITMAP "res/Background_1.bmp"
|
||||
65 BITMAP "res/Background_1.bmp"
|
||||
66 BITMAP "res/Joker.bmp"
|
||||
67 BITMAP "res/XSign.bmp"
|
||||
68 BITMAP "res/OSign.bmp"
|
||||
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 1,0,0,0
|
||||
PRODUCTVERSION 5,1,2600,0
|
||||
FILEFLAGSMASK 0
|
||||
FILEFLAGS 0
|
||||
FILEOS 0x40004
|
||||
FILETYPE 0x2
|
||||
{
|
||||
BLOCK "StringFileInfo"
|
||||
{
|
||||
BLOCK "040904B0"
|
||||
{
|
||||
VALUE "CompanyName", "ReactOS Team"
|
||||
VALUE "FileDescription", "Cardplaying Helper DLL"
|
||||
VALUE "FileVersion", "1.0"
|
||||
VALUE "InternalName", "cards"
|
||||
VALUE "LegalCopyright", "(c) 2003 ReactOS Team"
|
||||
VALUE "OriginalFilename", "cards"
|
||||
VALUE "ProductName", "ReactOS"
|
||||
VALUE "ProductVersion", "5.1.2600.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |