28 lines
		
	
	
		
			952 B
		
	
	
	
		
			Lua
		
	
	
	
	
	
		
		
			
		
	
	
			28 lines
		
	
	
		
			952 B
		
	
	
	
		
			Lua
		
	
	
	
	
	
|  | local SwitcherWidget = {} | ||
|  | local ESlateVisibility = import("ESlateVisibility") | ||
|  | 
 | ||
|  | function SwitcherWidget:Construct() | ||
|  |     self:Reset() | ||
|  |     self["ImageNormal"]:SetVisibility(ESlateVisibility.SelfHitTestInvisible) | ||
|  | end | ||
|  | 
 | ||
|  | function SwitcherWidget:Reset() | ||
|  |     self["ImageHovered"]:SetVisibility(ESlateVisibility.Collapsed) | ||
|  |     self["ImageSelected"]:SetVisibility(ESlateVisibility.Collapsed) | ||
|  |     self["ImageNormal"]:SetVisibility(ESlateVisibility.Collapsed) | ||
|  | end | ||
|  | 
 | ||
|  | function SwitcherWidget:OnWidgetStateChange(bIsWidgetHovered, bIsWidgetSelected) | ||
|  |     self:Reset() | ||
|  |     if bIsWidgetSelected then | ||
|  |         self["ImageSelected"]:SetVisibility(ESlateVisibility.SelfHitTestInvisible) | ||
|  |     else | ||
|  |         if bIsWidgetHovered then | ||
|  |             self["ImageHovered"]:SetVisibility(ESlateVisibility.SelfHitTestInvisible) | ||
|  |         else | ||
|  |             self["ImageNormal"]:SetVisibility(ESlateVisibility.SelfHitTestInvisible) | ||
|  |         end | ||
|  |     end | ||
|  | end | ||
|  | 
 | ||
|  | return Class(nil, nil, SwitcherWidget) |