void ScrollableSelectorWidget::MouseWheel(int delta) { if (delta < 0) { ScrollLineDown(); } else { ScrollLineUp(); } }
LRESULT CHexView::OnKeyDown (UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled) { // // If up key // if (wParam == VK_UP) { ScrollLineUp (); } else if (wParam == VK_DOWN) { ScrollLineDown (); } else if (wParam == VK_LEFT) { ScrollLineLeft (); } else if (wParam == VK_RIGHT) { ScrollLineRight (); } else if (wParam == VK_PRIOR) { ScrollPageUp (); } else if (wParam == VK_NEXT) { ScrollPageDown (); } else if (wParam == VK_HOME) { ScrollTop (); } else if (wParam == VK_END) { ScrollBottom (); } bHandled = FALSE; return 0; }
void ScrollableSelectorWidget::AcceptMessage(const Message& message) { if (message.is("ScrollUp")) { ScrollLineUp(); } else if (message.is("ScrollDown")) { ScrollLineDown(); } else if (message.is("UpdateButtons")) { UpdateScrollButtons(); } else if (message.is("Add")) { _itemsList.push_back(message.getData()); UpdateScrollButtons(); } else if (message.is("Set")) { Assert(false); /*if (!activeTextListItemController) { activeTextListItemController = new ActiveSelectorItemController; Core::controllerKernel.addController(activeTextListItemController); }*/ SetActive(message.getData()); UpdateScrollButtons(); } else if (message.is("Clear")) { _itemsList.clear(); _startString = 0; _choosedString = 0; } else if (message.is("DeleteFromIndex")) { ItemsList::iterator i = _itemsList.begin(); std::advance(i, message.getIntegerParam()); ItemsList::iterator set = _itemsList.erase(i); if (set!=_itemsList.end()) { SetActive(*set); } if (set==_itemsList.end() && !_itemsList.empty()) { SetActive(_itemsList.back()); } } else if (message.is("Delete")) { ItemsList::iterator i = std::find(_itemsList.begin(), _itemsList.end(), message.getData()); if (i!=_itemsList.end()) { ItemsList::iterator set = _itemsList.erase(i); if (set!=_itemsList.end()) { SetActive(*set); } if (set==_itemsList.end() && !_itemsList.empty()) { SetActive(_itemsList.back()); } } UpdateScrollButtons(); } /*else if (message.is("KeyPress")) { int key = utils::lexical_cast <int> (message.getData()); if (key == -VK_UP) { ScrollLineUp(); } else if (key == -VK_DOWN) { ScrollLineDown(); } else if (key == -VK_PRIOR) { ScrollPageUp(); } else if (key == -VK_NEXT) { ScrollPageDown(); } }*/ }
void ScrollableSelectorWidget::ScrollPageDown() { for (int i = 0; i < _numStrings - 1; ++i) { ScrollLineDown(); } }