PMONSL_MON Monitors;
RECT rcExtent;
RECT rcMonitors;
+ RECT rcOldMonitors;
POINT ScrollPos;
SIZE Margin;
SIZE SelectionFrame;
InvalidateRect(infoPtr->hSelf,
&rc,
TRUE);
+
+ if (!EqualRect(&infoPtr->rcMonitors, &infoPtr->rcOldMonitors) &&
+ infoPtr->rcOldMonitors.right != infoPtr->rcOldMonitors.left)
+ {
+ MonSelRectToScreen(infoPtr, &infoPtr->rcOldMonitors, &rc);
+ InvalidateRect(infoPtr->hSelf, &rc, TRUE);
+ infoPtr->rcOldMonitors = infoPtr->rcMonitors;
+ }
}
static VOID
ScaleRectSizeFit(&rcExtSurface,
&rcExtDisplay);
+ infoPtr->rcOldMonitors = infoPtr->rcMonitors;
infoPtr->rcMonitors = rcExtDisplay;
/* Now that we know in which area all monitors are located,
{
RECT rc, rcClient;
- if (Index < 0 || Index >= infoPtr->MonitorsCount)
+ if (Index < 0 || (UINT)Index >= infoPtr->MonitorsCount)
return -1;
if (!infoPtr->CanDisplay)
hFont = infoPtr->Monitors[Index].hFont;
if (hFont == NULL &&
GetObject(infoPtr->hFont,
- sizeof(LOGFONT),
+ sizeof(lf),
&lf) != 0)
{
rcsize.cx = infoPtr->Monitors[Index].rc.right - infoPtr->Monitors[Index].rc.left -
Index++;
}
- if (infoPtr->SelectedMonitor < infoPtr->MonitorsCount)
+ if (infoPtr->SelectedMonitor < (INT)infoPtr->MonitorsCount)
{
MonSelSetCurSelMonitor(infoPtr,
Index,
case WM_CREATE:
{
- infoPtr = (PMONITORSELWND) HeapAlloc(GetProcessHeap(),
- 0,
- sizeof(MONITORSELWND));
+ infoPtr = (PMONITORSELWND)HeapAlloc(GetProcessHeap(),
+ 0,
+ sizeof(MONITORSELWND));
if (infoPtr == NULL)
{
Ret = (LRESULT)-1;