MCPcopy Create free account
hub / github.com/JACoders/OpenJK / Item_StartCapture

Function Item_StartCapture

code/ui/ui_shared.cpp:10646–10724  ·  view source on GitHub ↗

================= Item_StartCapture ================= */

Source from the content-addressed store, hash-verified

10644=================
10645*/
10646void Item_StartCapture(itemDef_t *item, int key)
10647{
10648 int flags;
10649 switch (item->type)
10650 {
10651 case ITEM_TYPE_EDITFIELD:
10652 case ITEM_TYPE_NUMERICFIELD:
10653
10654 case ITEM_TYPE_LISTBOX:
10655 {
10656 flags = Item_ListBox_OverLB(item, DC->cursorx, DC->cursory);
10657 if (flags & (WINDOW_LB_LEFTARROW | WINDOW_LB_RIGHTARROW))
10658 {
10659 scrollInfo.nextScrollTime = DC->realTime + SCROLL_TIME_START;
10660 scrollInfo.nextAdjustTime = DC->realTime + SCROLL_TIME_ADJUST;
10661 scrollInfo.adjustValue = SCROLL_TIME_START;
10662 scrollInfo.scrollKey = key;
10663 scrollInfo.scrollDir = (flags & WINDOW_LB_LEFTARROW) ? qtrue : qfalse;
10664 scrollInfo.item = item;
10665 captureData = &scrollInfo;
10666 captureFunc = &Scroll_ListBox_AutoFunc;
10667 itemCapture = item;
10668 }
10669 else if (flags & WINDOW_LB_THUMB)
10670 {
10671 scrollInfo.scrollKey = key;
10672 scrollInfo.item = item;
10673 scrollInfo.xStart = DC->cursorx;
10674 scrollInfo.yStart = DC->cursory;
10675 captureData = &scrollInfo;
10676 captureFunc = &Scroll_ListBox_ThumbFunc;
10677 itemCapture = item;
10678 }
10679 break;
10680 }
10681
10682 case ITEM_TYPE_TEXTSCROLL:
10683 flags = Item_TextScroll_OverLB (item, DC->cursorx, DC->cursory);
10684 if (flags & (WINDOW_LB_LEFTARROW | WINDOW_LB_RIGHTARROW))
10685 {
10686 scrollInfo.nextScrollTime = DC->realTime + SCROLL_TIME_START;
10687 scrollInfo.nextAdjustTime = DC->realTime + SCROLL_TIME_ADJUST;
10688 scrollInfo.adjustValue = SCROLL_TIME_START;
10689 scrollInfo.scrollKey = key;
10690 scrollInfo.scrollDir = (flags & WINDOW_LB_LEFTARROW) ? qtrue : qfalse;
10691 scrollInfo.item = item;
10692 captureData = &scrollInfo;
10693 captureFunc = &Scroll_TextScroll_AutoFunc;
10694 itemCapture = item;
10695 }
10696 else if (flags & WINDOW_LB_THUMB)
10697 {
10698 scrollInfo.scrollKey = key;
10699 scrollInfo.item = item;
10700 scrollInfo.xStart = DC->cursorx;
10701 scrollInfo.yStart = DC->cursory;
10702 captureData = &scrollInfo;
10703 captureFunc = &Scroll_TextScroll_ThumbFunc;

Callers 1

Item_HandleKeyFunction · 0.70

Calls 3

Item_ListBox_OverLBFunction · 0.70
Item_TextScroll_OverLBFunction · 0.70
Item_Slider_OverSliderFunction · 0.70

Tested by

no test coverage detected