Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void SSearchBoxWidget::ViewEntries(FMenuBuilder& MenuBuilder)
- {
- MenuBuilder.AddSubMenu(FText::FromString("Show/ Hide Layers"),FText::FromString(FString("Select which layers are shown")),FNewMenuDelegate::CreateRaw(this, &SSearchBoxWidget::HideEntries));
- MenuBuilder.BeginSection(NAME_None,FText::FromString(FString("DRAWERS")));
- MenuBuilder.AddMenuEntry(FText::FromString("Toggle drawer system"),FText::FromString("Enables or disables the drawer system"),FSlateIcon::FSlateIcon(),FUIAction(FExecuteAction::CreateSP(this,&SSearchBoxWidget::ToggleDrawerList),FCanExecuteAction(),FIsActionChecked::CreateSP(this,&SSearchBoxWidget::GetDrawerListToggle)),NAME_None,EUserInterfaceActionType::ToggleButton);
- MenuBuilder.BeginSection(NAME_None,FText::FromString(FString("CONSTRUCTION")));
- MenuBuilder.AddMenuEntry(FText::FromString("Begin Phasing"), FText::FromString("Animates the contruction phasing"), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("phasing"))), NAME_None);
- MenuBuilder.SetStyle(&FEditorStyle::Get(), "MyGame.MenuStyle");
- }
- void SSearchBoxWidget::FileEntries(FMenuBuilder& MenuBuilder)
- {
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Restart")), FText::FromString(FString("Restarts the visualisation")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("restart"))), NAME_None);
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Quit")), FText::FromString(FString("Exits the visualisation")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("quit"))), NAME_None);
- MenuBuilder.SetStyle(&FEditorStyle::Get(), "MyGame.MenuStyle");
- }
- void SSearchBoxWidget::NavigateEntries(FMenuBuilder& MenuBuilder)
- {
- MenuBuilder.BeginSection(NAME_None,FText::FromString(FString("PATHS")));
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Architectural")), FText::FromString(FString("An architecturally oriented fly-through")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("path_architectural"))), NAME_None);
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Navigational")), FText::FromString(FString("A navigation themed fly-through")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("path_navigational"))), NAME_None);
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Service Tracking")), FText::FromString(FString("A fly-through demonstrating building services")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("path_service"))), NAME_None);
- MenuBuilder.EndSection();
- MenuBuilder.BeginSection(NAME_None,FText::FromString(FString("LOCATIONS")));
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Front Door")), FText::GetEmpty(), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("location_front"))), NAME_None);
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Rear Service Entry")), FText::GetEmpty(), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("location_rear"))), NAME_None);
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Roof-top")), FText::GetEmpty(), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("location_roof"))), NAME_None);
- MenuBuilder.EndSection();
- MenuBuilder.SetStyle(&FEditorStyle::Get(), "MyGame.MenuStyle");
- }
- void SSearchBoxWidget::ToolsEntries(FMenuBuilder& MenuBuilder)
- {
- TSharedRef<SWidget> SliderWidget = SNew(SSlider)
- .Value(0.5)
- .OnValueChanged(this,&SSearchBoxWidget::SunSliderChanged);
- MenuBuilder.BeginSection(NAME_None,FText::FromString(FString("CAPTURE")));
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Regular Screenshot")), FText::FromString(FString("Captures an image of the visualisation")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("screenshot_regular"))), NAME_None);
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Hi-Res Screenshot")), FText::FromString(FString("Captures a high-resolution image of the visualisation")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("screenshot_high"))), NAME_None);
- MenuBuilder.BeginSection(NAME_None,FText::FromString(FString("MEASURE")));
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Point to Point")), FText::FromString(FString("A tool to measure between two points")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("measure_point"))), NAME_None);
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Laser")), FText::FromString(FString("A tool to measure the perpendicular distance from an object")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("measure_laser"))), NAME_None);
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Clear All")), FText::FromString(FString("Clear all measurements on screen")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("measure_clear"))), NAME_None);
- MenuBuilder.BeginSection(NAME_None,FText::FromString(FString("SELECT")));
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Selection Mode")), FText::FromString(FString("The default mode, allows objects to be selected with the cursor")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::MenuItemClicked, FString("select_mode"))), NAME_None);
- MenuBuilder.BeginSection(NAME_None,FText::FromString(FString("SUN SETTINGS")));
- MenuBuilder.AddMenuEntry(FText::FromString(FString("Modify Sun Settings")), FText::FromString(FString("Opens a window to change the sun settings")), FSlateIcon(), FUIAction(FExecuteAction::CreateSP(this, &SSearchBoxWidget::SummonSunSystemSettings)), NAME_None);
- MenuBuilder.SetStyle(&FEditorStyle::Get(), "MyGame.MenuStyle");
- }
- TSharedRef< FUICommandList > CommandList(new FUICommandList());
- FMenuBarBuilder MenuBarBuilder( CommandList );
- {
- MenuBarBuilder.AddPullDownMenu(FText::FromString("FILE"),FText::GetEmpty(),FNewMenuDelegate::CreateRaw(this, &SSearchBoxWidget::FileEntries));
- MenuBarBuilder.AddPullDownMenu(FText::FromString("NAVIGATE"),FText::GetEmpty(),FNewMenuDelegate::CreateRaw(this, &SSearchBoxWidget::NavigateEntries));
- MenuBarBuilder.AddPullDownMenu(FText::FromString("TOOLS"),FText::GetEmpty(),FNewMenuDelegate::CreateRaw(this, &SSearchBoxWidget::ToolsEntries));
- MenuBarBuilder.AddPullDownMenu(FText::FromString("VIEW"),FText::GetEmpty(),FNewMenuDelegate::CreateRaw(this, &SSearchBoxWidget::ViewEntries));
- //MenuBarBuilder.AddMenuEntry(FUIAction(),matineeControlWidget);
- MenuBarBuilder.SetStyle(&FEditorStyle::Get(),"MyGame.MenuStyle");
- }
- And then the widget definition:
- ChildSlot
- .VAlign(VAlign_Fill)
- .HAlign(HAlign_Fill)
- [
- SNew(SOverlay)
- +SOverlay::Slot()
- .HAlign(HAlign_Left)
- .VAlign(VAlign_Top)
- [
- SNew(SVerticalBox)
- +SVerticalBox::Slot()
- .AutoHeight()
- [
- SNew(SBox)
- .WidthOverride(SSearchBoxWidget::ScreenWidth()*5)
- [
- MenuBarBuilder.MakeWidget()
- ]
- ]
- ]
- ]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement