2014-12-07 19:09:38 -05:00
// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
2014-03-14 14:13:41 -04:00
# include "TranslationEditorPrivatePCH.h"
# include "TranslationEditor.h"
# include "GraphEditorActions.h"
# include "Editor/PropertyEditor/Public/PropertyEditing.h"
# include "PropertyCustomizationHelpers.h"
2014-10-22 00:21:55 -04:00
# include "TranslationPickerWidget.h"
2014-03-14 14:13:41 -04:00
2014-10-22 00:21:55 -04:00
# define LOCTEXT_NAMESPACE "TranslationEditorToolbar"
2014-03-14 14:13:41 -04:00
void FTranslationEditorMenu : : FillTranslationMenu ( FMenuBuilder & MenuBuilder /*, FTranslationEditor& TranslationEditor*/ )
{
MenuBuilder . BeginSection ( " Font " , LOCTEXT ( " Translation_FontHeading " , " Font " ) ) ;
{
MenuBuilder . AddMenuEntry ( FTranslationEditorCommands : : Get ( ) . ChangeSourceFont ) ;
MenuBuilder . AddMenuEntry ( FTranslationEditorCommands : : Get ( ) . ChangeTranslationTargetFont ) ;
2014-04-23 17:49:26 -04:00
MenuBuilder . AddMenuEntry ( FTranslationEditorCommands : : Get ( ) . PreviewAllTranslationsInEditor ) ;
2014-04-23 18:20:15 -04:00
MenuBuilder . AddMenuEntry ( FTranslationEditorCommands : : Get ( ) . ExportToPortableObjectFormat ) ;
2014-04-23 19:14:07 -04:00
MenuBuilder . AddMenuEntry ( FTranslationEditorCommands : : Get ( ) . ImportFromPortableObjectFormat ) ;
2014-04-23 18:48:34 -04:00
MenuBuilder . AddMenuEntry ( FTranslationEditorCommands : : Get ( ) . OpenSearchTab ) ;
2015-02-19 20:53:05 -05:00
MenuBuilder . AddMenuEntry ( FTranslationEditorCommands : : Get ( ) . OpenTranslationPicker ) ;
2014-03-14 14:13:41 -04:00
}
MenuBuilder . EndSection ( ) ;
}
void FTranslationEditorMenu : : SetupTranslationEditorMenu ( TSharedPtr < FExtender > Extender , FTranslationEditor & TranslationEditor )
{
// Add additional editor menu
{
struct Local
{
static void AddSaveMenuOption ( FMenuBuilder & MenuBuilder )
{
MenuBuilder . AddMenuEntry ( FTranslationEditorCommands : : Get ( ) . SaveTranslations , " SaveTranslations " , TAttribute < FText > ( ) , TAttribute < FText > ( ) , FSlateIcon ( FEditorStyle : : GetStyleSetName ( ) , " AssetEditor.SaveAsset.Greyscale " ) ) ;
}
static void AddTranslationEditorMenu ( FMenuBarBuilder & MenuBarBuilder )
{
// View
MenuBarBuilder . AddPullDownMenu (
LOCTEXT ( " TranslationMenu " , " Translation " ) ,
LOCTEXT ( " TranslationMenu_ToolTip " , " Open the Translation menu " ) ,
FNewMenuDelegate : : CreateStatic ( & FTranslationEditorMenu : : FillTranslationMenu ) ,
" View " ) ;
}
} ;
Extender - > AddMenuExtension (
" FileLoadAndSave " ,
EExtensionHook : : First ,
TranslationEditor . GetToolkitCommands ( ) ,
FMenuExtensionDelegate : : CreateStatic ( & Local : : AddSaveMenuOption ) ) ;
Extender - > AddMenuBarExtension (
" Edit " ,
EExtensionHook : : After ,
TranslationEditor . GetToolkitCommands ( ) ,
FMenuBarExtensionDelegate : : CreateStatic ( & Local : : AddTranslationEditorMenu ) ) ;
}
}
void FTranslationEditorMenu : : SetupTranslationEditorToolbar ( TSharedPtr < FExtender > Extender , FTranslationEditor & TranslationEditor )
{
struct Local
{
static void AddToolbarButtons ( FToolBarBuilder & ToolbarBuilder )
{
ToolbarBuilder . AddToolBarButton (
FTranslationEditorCommands : : Get ( ) . SaveTranslations , " SaveTranslations " , TAttribute < FText > ( ) , TAttribute < FText > ( ) , FSlateIcon ( FEditorStyle : : GetStyleSetName ( ) , " AssetEditor.SaveAsset " ) ) ;
2014-04-23 17:49:26 -04:00
ToolbarBuilder . AddToolBarButton (
2014-10-22 00:21:55 -04:00
FTranslationEditorCommands : : Get ( ) . PreviewAllTranslationsInEditor , " PreviewTranslationsInEditor " , TAttribute < FText > ( ) , TAttribute < FText > ( ) , FSlateIcon ( FEditorStyle : : GetStyleSetName ( ) , " TranslationEditor.PreviewInEditor " ) ) ;
2014-04-23 18:20:15 -04:00
ToolbarBuilder . AddToolBarButton (
2014-08-11 01:13:07 -04:00
FTranslationEditorCommands : : Get ( ) . ExportToPortableObjectFormat , " ExportToPortableObjectFormat " , TAttribute < FText > ( ) , TAttribute < FText > ( ) , FSlateIcon ( FEditorStyle : : GetStyleSetName ( ) , " TranslationEditor.Export " ) ) ;
2014-04-23 19:14:07 -04:00
ToolbarBuilder . AddToolBarButton (
FTranslationEditorCommands : : Get ( ) . ImportFromPortableObjectFormat , " ImportFromPortableObjectFormat " , TAttribute < FText > ( ) , TAttribute < FText > ( ) , FSlateIcon ( FEditorStyle : : GetStyleSetName ( ) , " TranslationEditor.Import " ) ) ;
2014-04-23 18:48:34 -04:00
ToolbarBuilder . AddToolBarButton (
2014-10-22 00:21:55 -04:00
FTranslationEditorCommands : : Get ( ) . OpenSearchTab , " OpenSearchTab " , TAttribute < FText > ( ) , TAttribute < FText > ( ) , FSlateIcon ( FEditorStyle : : GetStyleSetName ( ) , " TranslationEditor.Search " ) ) ;
ToolbarBuilder . AddWidget ( SNew ( STranslationWidgetPicker ) ) ;
2014-03-14 14:13:41 -04:00
}
} ;
Extender - > AddToolBarExtension (
" Asset " ,
EExtensionHook : : First ,
TranslationEditor . GetToolkitCommands ( ) ,
FToolBarExtensionDelegate : : CreateStatic ( & Local : : AddToolbarButtons ) ) ;
}
//////////////////////////////////////////////////////////////////////////
// FTranslationEditorCommands
void FTranslationEditorCommands : : RegisterCommands ( )
{
2015-03-17 11:36:28 -04:00
UI_COMMAND ( ChangeSourceFont , " Change Source Font " , " Change the Font for the Source Lanugage " , EUserInterfaceActionType : : Button , FInputChord ( ) ) ;
UI_COMMAND ( ChangeTranslationTargetFont , " Change Translation Font " , " Change the Translation Target Language Font " , EUserInterfaceActionType : : Button , FInputChord ( ) ) ;
UI_COMMAND ( SaveTranslations , " Save " , " Saves the translations to file " , EUserInterfaceActionType : : Button , FInputChord ( ) ) ;
UI_COMMAND ( PreviewAllTranslationsInEditor , " Preview in Editor " , " Preview All Translations in the Editor UI " , EUserInterfaceActionType : : Button , FInputChord ( ) ) ;
UI_COMMAND ( ExportToPortableObjectFormat , " Export to .PO " , " Export to Portable Object Format " , EUserInterfaceActionType : : Button , FInputChord ( ) ) ;
UI_COMMAND ( ImportFromPortableObjectFormat , " Import from .PO " , " Import from Portable Object Format " , EUserInterfaceActionType : : Button , FInputChord ( ) ) ;
UI_COMMAND ( OpenSearchTab , " Search " , " Search Source and Translation Strings " , EUserInterfaceActionType : : Button , FInputChord ( ) ) ;
UI_COMMAND ( OpenTranslationPicker , " Translation Picker " , " Open the Translation Picker to Modify Editor Translations " , EUserInterfaceActionType : : Button , FInputChord ( ) )
2014-03-14 14:13:41 -04:00
}
# undef LOCTEXT_NAMESPACE