71 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| // Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
 | |
| 
 | |
| #include "lua_wrapperStyle.h"
 | |
| #include "Styling/SlateStyleRegistry.h"
 | |
| #include "Framework/Application/SlateApplication.h"
 | |
| #include "Slate/SlateGameResources.h"
 | |
| #include "Interfaces/IPluginManager.h"
 | |
| 
 | |
| TSharedPtr< FSlateStyleSet > Flua_wrapperStyle::StyleInstance = NULL;
 | |
| 
 | |
| void Flua_wrapperStyle::Initialize()
 | |
| {
 | |
| 	if (!StyleInstance.IsValid())
 | |
| 	{
 | |
| 		StyleInstance = Create();
 | |
| 		FSlateStyleRegistry::RegisterSlateStyle(*StyleInstance);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| void Flua_wrapperStyle::Shutdown()
 | |
| {
 | |
| 	FSlateStyleRegistry::UnRegisterSlateStyle(*StyleInstance);
 | |
| 	ensure(StyleInstance.IsUnique());
 | |
| 	StyleInstance.Reset();
 | |
| }
 | |
| 
 | |
| FName Flua_wrapperStyle::GetStyleSetName()
 | |
| {
 | |
| 	static FName StyleSetName(TEXT("lua_wrapperStyle"));
 | |
| 	return StyleSetName;
 | |
| }
 | |
| 
 | |
| #define IMAGE_BRUSH( RelativePath, ... ) FSlateImageBrush( Style->RootToContentDir( RelativePath, TEXT(".png") ), __VA_ARGS__ )
 | |
| #define BOX_BRUSH( RelativePath, ... ) FSlateBoxBrush( Style->RootToContentDir( RelativePath, TEXT(".png") ), __VA_ARGS__ )
 | |
| #define BORDER_BRUSH( RelativePath, ... ) FSlateBorderBrush( Style->RootToContentDir( RelativePath, TEXT(".png") ), __VA_ARGS__ )
 | |
| #define TTF_FONT( RelativePath, ... ) FSlateFontInfo( Style->RootToContentDir( RelativePath, TEXT(".ttf") ), __VA_ARGS__ )
 | |
| #define OTF_FONT( RelativePath, ... ) FSlateFontInfo( Style->RootToContentDir( RelativePath, TEXT(".otf") ), __VA_ARGS__ )
 | |
| 
 | |
| const FVector2D Icon16x16(16.0f, 16.0f);
 | |
| const FVector2D Icon20x20(20.0f, 20.0f);
 | |
| const FVector2D Icon40x40(40.0f, 40.0f);
 | |
| 
 | |
| TSharedRef< FSlateStyleSet > Flua_wrapperStyle::Create()
 | |
| {
 | |
| 	TSharedRef< FSlateStyleSet > Style = MakeShareable(new FSlateStyleSet("lua_wrapperStyle"));
 | |
| 	Style->SetContentRoot(IPluginManager::Get().FindPlugin("lua_wrapper")->GetBaseDir() / TEXT("Resources"));
 | |
| 
 | |
| 	Style->Set("lua_wrapper.OpenPluginWindow", new IMAGE_BRUSH(TEXT("ButtonIcon_40x"), Icon40x40));
 | |
| 
 | |
| 	return Style;
 | |
| }
 | |
| 
 | |
| #undef IMAGE_BRUSH
 | |
| #undef BOX_BRUSH
 | |
| #undef BORDER_BRUSH
 | |
| #undef TTF_FONT
 | |
| #undef OTF_FONT
 | |
| 
 | |
| void Flua_wrapperStyle::ReloadTextures()
 | |
| {
 | |
| 	if (FSlateApplication::IsInitialized())
 | |
| 	{
 | |
| 		FSlateApplication::Get().GetRenderer()->ReloadTextureResources();
 | |
| 	}
 | |
| }
 | |
| 
 | |
| const ISlateStyle& Flua_wrapperStyle::Get()
 | |
| {
 | |
| 	return *StyleInstance;
 | |
| }
 |