src/window.cpp
changeset 10482 260c05e63bf4
parent 10481 0c7aed4edabe
child 10485 331014dcd0d3
equal deleted inserted replaced
10481:0c7aed4edabe 10482:260c05e63bf4
    42 int _scrollbar_size;
    42 int _scrollbar_size;
    43 byte _scroller_click_timeout;
    43 byte _scroller_click_timeout;
    44 
    44 
    45 bool _scrolling_scrollbar;
    45 bool _scrolling_scrollbar;
    46 bool _scrolling_viewport;
    46 bool _scrolling_viewport;
    47 bool _popup_menu_active;
       
    48 
    47 
    49 byte _special_mouse_mode;
    48 byte _special_mouse_mode;
    50 
    49 
    51 
    50 
    52 /**
    51 /**
  1125 		e.we.dragdrop.widget = GetWidgetFromPos(w, e.we.dragdrop.pt.x, e.we.dragdrop.pt.y);
  1124 		e.we.dragdrop.widget = GetWidgetFromPos(w, e.we.dragdrop.pt.x, e.we.dragdrop.pt.y);
  1126 		w->HandleWindowEvent(&e);
  1125 		w->HandleWindowEvent(&e);
  1127 	}
  1126 	}
  1128 
  1127 
  1129 	ResetObjectToPlace();
  1128 	ResetObjectToPlace();
  1130 
       
  1131 	return false;
       
  1132 }
       
  1133 
       
  1134 static bool HandlePopupMenu()
       
  1135 {
       
  1136 	if (!_popup_menu_active) return true;
       
  1137 
       
  1138 	Window *w = FindWindowById(WC_TOOLBAR_MENU, 0);
       
  1139 	if (w == NULL) {
       
  1140 		_popup_menu_active = false;
       
  1141 		return false;
       
  1142 	}
       
  1143 
       
  1144 	WindowEvent e;
       
  1145 	if (_left_button_down) {
       
  1146 		e.event = WE_POPUPMENU_OVER;
       
  1147 		e.we.popupmenu.pt = _cursor.pos;
       
  1148 	} else {
       
  1149 		_popup_menu_active = false;
       
  1150 		e.event = WE_POPUPMENU_SELECT;
       
  1151 		e.we.popupmenu.pt = _cursor.pos;
       
  1152 	}
       
  1153 
       
  1154 	w->HandleWindowEvent(&e);
       
  1155 
  1129 
  1156 	return false;
  1130 	return false;
  1157 }
  1131 }
  1158 
  1132 
  1159 static bool HandleMouseOver()
  1133 static bool HandleMouseOver()
  1825 	DecreaseWindowCounters();
  1799 	DecreaseWindowCounters();
  1826 	HandlePlacePresize();
  1800 	HandlePlacePresize();
  1827 	UpdateTileSelection();
  1801 	UpdateTileSelection();
  1828 	if (!VpHandlePlaceSizingDrag())  return;
  1802 	if (!VpHandlePlaceSizingDrag())  return;
  1829 	if (!HandleDragDrop())           return;
  1803 	if (!HandleDragDrop())           return;
  1830 	if (!HandlePopupMenu())          return;
       
  1831 	if (!HandleWindowDragging())     return;
  1804 	if (!HandleWindowDragging())     return;
  1832 	if (!HandleScrollbarScrolling()) return;
  1805 	if (!HandleScrollbarScrolling()) return;
  1833 	if (!HandleViewportScroll())     return;
  1806 	if (!HandleViewportScroll())     return;
  1834 	if (!HandleMouseOver())          return;
  1807 	if (!HandleMouseOver())          return;
  1835 
  1808