2 // control/visual/floating.qc
4 bool( float pKey, float pAscii ) Item_FloatingArea_Key =
6 if( pKey == K_MOUSE1 || pKey == K_ENTER ) {
7 if( self._state != ITEM_STATE_PRESSED )
8 self._state = ITEM_STATE_PRESSED;
10 self._state = ITEM_STATE_NORMAL;
13 } else if( pKey == K_ESCAPE )
14 self._state = ITEM_STATE_NORMAL;
19 void() Item_FloatingArea_Update =
22 self._state = ITEM_STATE_NORMAL;
24 } else if( self.target != self._target.name )
25 self._target = Menu_GetItem( self.target );
27 if( self._state == ITEM_STATE_PRESSED )
28 self._target.pos = self._target.pos + Cursor_Relative;
29 else if( Menu_ActiveItem == self )
30 self._state = ITEM_STATE_SELECTED;
33 void() Item_FloatingArea_Destroy =
35 String_EntityFree( self, target );
38 void( bool pSelect, bool pUser ) Item_FloatingArea_Select =
40 if( !pSelect && self._state == ITEM_STATE_PRESSED )
41 Menu_CorrectSelection( self, false );
44 void() Item_FloatingArea_Spawn =
46 self.flag = self.flag | FLAG_CHILDDRAWUPDATEONLY;
48 String_EntityZone( self, target );
50 self._update = Item_FloatingArea_Update;
51 self._key = Item_FloatingArea_Key;
52 self._destroy = Item_FloatingArea_Destroy;
53 self._select = Item_FloatingArea_Select;