X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fitem%2Flistbox.qh;h=f60066cd7b3d941526040fa85cbea64f6c5247de;hb=ca43a51345c0e7d23b862eac0f7ea292800f9aa8;hp=461125e303fbc34bb2e41c9c2344f5cdf21a450d;hpb=109c5785a22fb4336ac5e91d5f1fa91678582164;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/item/listbox.qh b/qcsrc/menu/item/listbox.qh index 461125e30..f60066cd7 100644 --- a/qcsrc/menu/item/listbox.qh +++ b/qcsrc/menu/item/listbox.qh @@ -1,56 +1,56 @@ #pragma once #include "../item.qh" -CLASS(ListBox, Item) +CLASS(ListBox, MenuItem) METHOD(ListBox, resizeNotify, void(entity, vector, vector, vector, vector)); METHOD(ListBox, configureListBox, void(entity, float, float)); METHOD(ListBox, draw, void(entity)); METHOD(ListBox, keyDown, float(entity, float, float, float)); METHOD(ListBox, mouseMove, float(entity, vector)); - METHOD(ListBox, mousePress, float(entity, vector)); + METHOD(ListBox, mousePress, bool(ListBox this, vector pos)); METHOD(ListBox, mouseDrag, float(entity, vector)); METHOD(ListBox, mouseRelease, float(entity, vector)); METHOD(ListBox, focusLeave, void(entity)); - ATTRIB(ListBox, focusable, float, 1) - ATTRIB(ListBox, focusedItem, int, -1) - ATTRIB(ListBox, focusedItemAlpha, float, 0.3) + ATTRIB(ListBox, focusable, float, 1); + ATTRIB(ListBox, focusedItem, int, -1); + ATTRIB(ListBox, focusedItemAlpha, float, 0.3); METHOD(ListBox, setFocusedItem, void(entity, int)); - ATTRIB(ListBox, mouseMoveOffset, float, -1) // let know where the cursor is when the list scrolls without moving the cursor - ATTRIB(ListBox, allowFocusSound, float, 1) - ATTRIB(ListBox, selectedItem, int, 0) - ATTRIB(ListBox, size, vector, '0 0 0') - ATTRIB(ListBox, origin, vector, '0 0 0') - ATTRIB(ListBox, scrollPos, float, 0) // measured in window heights, fixed when needed - ATTRIB(ListBox, scrollPosTarget, float, 0) + ATTRIB(ListBox, mouseMoveOffset, float, -1); // let know where the cursor is when the list scrolls without moving the cursor + ATTRIB(ListBox, allowFocusSound, float, 1); + ATTRIB(ListBox, selectedItem, int, 0); + ATTRIB(ListBox, size, vector, '0 0 0'); + ATTRIB(ListBox, origin, vector, '0 0 0'); + ATTRIB(ListBox, scrollPos, float, 0); // measured in window heights, fixed when needed + ATTRIB(ListBox, scrollPosTarget, float, 0); METHOD(ListBox, isScrolling, bool(entity)); - ATTRIB(ListBox, needScrollToItem, float, -1) + ATTRIB(ListBox, needScrollToItem, float, -1); METHOD(ListBox, scrollToItem, void(entity, int)); - ATTRIB(ListBox, previousValue, float, 0) - ATTRIB(ListBox, pressed, float, 0) // 0 = normal, 1 = scrollbar dragging, 2 = item dragging, 3 = released - ATTRIB(ListBox, pressOffset, float, 0) + ATTRIB(ListBox, previousValue, float, 0); + ATTRIB(ListBox, pressed, float, 0); // 0 = normal, 1 = scrollbar dragging, 2 = item dragging, 3 = released + ATTRIB(ListBox, pressOffset, float, 0); METHOD(ListBox, updateControlTopBottom, void(entity)); - ATTRIB(ListBox, controlTop, float, 0) - ATTRIB(ListBox, controlBottom, float, 0) - ATTRIB(ListBox, controlWidth, float, 0) - ATTRIB(ListBox, dragScrollPos, vector, '0 0 0') - ATTRIB(ListBox, selectionDoesntMatter, bool, false) // improves scrolling by keys for lists that don't need to show an active selection + ATTRIB(ListBox, controlTop, float, 0); + ATTRIB(ListBox, controlBottom, float, 0); + ATTRIB(ListBox, controlWidth, float, 0); + ATTRIB(ListBox, dragScrollPos, vector, '0 0 0'); + ATTRIB(ListBox, selectionDoesntMatter, bool, false); // improves scrolling by keys for lists that don't need to show an active selection - ATTRIB(ListBox, src, string, string_null) // scrollbar - ATTRIB(ListBox, color, vector, '1 1 1') - ATTRIB(ListBox, color2, vector, '1 1 1') - ATTRIB(ListBox, colorC, vector, '1 1 1') - ATTRIB(ListBox, colorF, vector, '1 1 1') - ATTRIB(ListBox, tolerance, vector, '0 0 0') // drag tolerance - ATTRIB(ListBox, scrollbarWidth, float, 0) // pixels - ATTRIB(ListBox, nItems, float, 42) // FIXME: why?!? - ATTRIB(ListBox, itemHeight, float, 0) - ATTRIB(ListBox, itemAbsSize, vector, '0 0 0') - ATTRIB(ListBox, colorBG, vector, '0 0 0') - ATTRIB(ListBox, alphaBG, float, 0) + ATTRIB(ListBox, src, string); // scrollbar + ATTRIB(ListBox, color, vector, '1 1 1'); + ATTRIB(ListBox, color2, vector, '1 1 1'); + ATTRIB(ListBox, colorC, vector, '1 1 1'); + ATTRIB(ListBox, colorF, vector, '1 1 1'); + ATTRIB(ListBox, tolerance, vector, '0 0 0'); // drag tolerance + ATTRIB(ListBox, scrollbarWidth, float, 0); // pixels + ATTRIB(ListBox, nItems, float, 42); // FIXME: why?!? + ATTRIB(ListBox, itemHeight, float, 0); + ATTRIB(ListBox, itemAbsSize, vector, '0 0 0'); + ATTRIB(ListBox, colorBG, vector, '0 0 0'); + ATTRIB(ListBox, alphaBG, float, 0); - ATTRIB(ListBox, lastClickedItem, float, -1) - ATTRIB(ListBox, lastClickedTime, float, 0) + ATTRIB(ListBox, lastClickedItem, float, -1); + ATTRIB(ListBox, lastClickedTime, float, 0); METHOD(ListBox, drawListBoxItem, void(entity, int, vector, bool, bool)); // item number, width/height, isSelected, isFocused METHOD(ListBox, clickListBoxItem, void(entity, float, vector)); // item number, relative clickpos