Window GetParentMenuBar()
{
Window menuBarParent;
+ if(formDesigner) return null;
for(menuBarParent = this ? parent : null; menuBarParent; menuBarParent = menuBarParent.parent)
{
if(menuBarParent.menuBar) return menuBarParent.menuBar;
mouseWindow = rootWindow ? rootWindow.GetAtPosition(x,y, true, false, null) : null;
if((guiApp.windowMoving && !guiApp.windowIsResizing) || guiApp.windowScrolling)
- guiApp.SetCurrentCursor(guiApp.windowMoving, guiApp.systemCursors[moving]);
+ guiApp.SetCurrentCursor(mouseWindow, guiApp.systemCursors[moving]);
else if(mouseWindow)
{
modalWindow = mouseWindow.FindModal();
rx = guiApp.resizeX;
ry = guiApp.resizeY;
if((rex && rey) || (rx && ry))
- guiApp.SetCurrentCursor(guiApp.windowMoving, guiApp.systemCursors[sizeNWSE]);
+ guiApp.SetCurrentCursor(mouseWindow, guiApp.systemCursors[sizeNWSE]);
else if((rex && ry) || (rx && rey))
- guiApp.SetCurrentCursor(guiApp.windowMoving, guiApp.systemCursors[sizeNESW]);
+ guiApp.SetCurrentCursor(mouseWindow, guiApp.systemCursors[sizeNESW]);
else if((ry || rey) && (!rx && !rex))
- guiApp.SetCurrentCursor(guiApp.windowMoving, guiApp.systemCursors[sizeNS]);
+ guiApp.SetCurrentCursor(mouseWindow, guiApp.systemCursors[sizeNS]);
else if((rx || rex) && (!ry && !rey))
- guiApp.SetCurrentCursor(guiApp.windowMoving, guiApp.systemCursors[sizeWE]);
+ guiApp.SetCurrentCursor(mouseWindow, guiApp.systemCursors[sizeWE]);
}
else if(!modalWindow && !guiApp.windowCaptured &&
mouseWindow.IsMouseResizing(x, y, mouseWindow.size.w, mouseWindow.size.h,
if(cursorWindow)
{
for(; !cursorWindow.cursor && !cursorWindow.style.nonClient && cursorWindow.rootWindow != cursorWindow; cursorWindow = cursorWindow.parent);
- guiApp.SetCurrentCursor(cursorWindow, cursorWindow.cursor ? cursorWindow.cursor : guiApp.systemCursors[arrow]);
+ guiApp.SetCurrentCursor(mouseWindow, cursorWindow.cursor ? cursorWindow.cursor : guiApp.systemCursors[arrow]);
}
else if(modalWindow)
{
- guiApp.SetCurrentCursor(null, guiApp.systemCursors[arrow]);
+ guiApp.SetCurrentCursor(mouseWindow, guiApp.systemCursors[arrow]);
}
else if(guiApp.interimWindow)
{
if(guiApp.interimWindow.cursor)
- guiApp.SetCurrentCursor(guiApp.interimWindow, guiApp.interimWindow.cursor);
+ guiApp.SetCurrentCursor(mouseWindow, guiApp.interimWindow.cursor);
else
guiApp.SetCurrentCursor(mouseWindow, mouseWindow.cursor ? mouseWindow.cursor : guiApp.systemCursors[arrow]);
}
if(rootWindow == this)
Log(active ? "active\n" : "inactive\n");
*/
+ if(active && requireRemaximize)
+ {
+ if(state == maximized)
+ {
+ property::state = normal;
+ property::state = maximized;
+ }
+ requireRemaximize = false;
+ }
// Testing this here...
if(!parent || parent == guiApp.desktop || parent.active)
return false;
}
virtual void UpdateNonClient();
- virtual void SetBox(Box box); // This isn't used anywhere at this time
+ virtual void SetBox(Box box); // This is used in the MySkin skin
virtual bool IsInside(int x, int y)
{
return box.IsPointInside({x, y});
bool nativeDecorations:1;
bool manageDisplay:1;
bool formDesigner:1; // True if we this is running in the form editor
+ bool requireRemaximize:1;
};
// Checks used internally for them not to take effect in FormDesigner