Commit Graph

29 Commits

Author SHA1 Message Date
Ben Marsh
0de65e95bd Deprecate bBuildAdditionalConsoleApplication from LinkEnvironment, and move it to UEBuildBinaryConfiguration instead - it's not actually used by anything that does linking; it's a higher level behavior. The default is now false, which mirrors the only use case we had for it (and removes a hack for checking UEBuildConfiguration.bBuildEditor).
[CL 2499917 by Ben Marsh in Main branch]
2015-04-02 11:09:01 -04:00
Wes Hunt
5e497c92d4 Added custom slate stats, removed all but top level UE4 slate stats. #BUN
* See SlateStats.h for details on the new system, which allows for full hierarchical profiling with limited overhead.
* Moved SWidget::GetVisibility() out of line so we can instrument it without a full recompile.
* Widget debug info now uses FName to store the line number of the file. Keeps it in one place and the new stats system can utilize it as an FName.
* Exposed SWidget CreatedInFile debug info as an FName so new stats system can use it.
* FSlateVertex no longer uses FVector4, which is an aligned struct. Switched to float[4] instead. Goes from 48 to 36 bytes.
#codereview:nick.atamas,matt.kuhlenschmidt

[CL 2417281 by Wes Hunt in Main branch]
2015-01-23 16:49:16 -05:00
Josh Adams
c522506e1a SlateViewer compiling for iOS (not running yet); had to make some ICU.Build.cs changes for Programs
#codereview saul.abreu,justin.sargent

[CL 2391153 by Josh Adams in Main branch]
2014-12-17 10:25:23 -05:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Michael Trepka
e1ba23a275 Removed debug printf from SlateViewerMainMac.cpp
[CL 2377996 by Michael Trepka in Main branch]
2014-12-05 14:43:07 -05:00
Michael Trepka
cc71376314 CEF3 integration for Mac in SlateViewer. Still WIP - there's no keyboard support yet and horizontal scrolling with mouse wheel/gestures doesn't work.
#codereview Matthew.Griffin, Mark.Satterthwaite, Dmitry.Rekman

[CL 2367740 by Michael Trepka in Main branch]
2014-11-21 13:41:17 -05:00
Matthew Griffin
4764afd436 Moving SWebBrowser into the WebBrowser module to reduce the amount of modules/projects that will include it automatically.
To remove its use in AppFramework and keep using it in the SlateViewer app, I needed to define its tab in AppFramework and spawn it as a nomad tab in SlateViewer.

[CL 2358266 by Matthew Griffin in Main branch]
2014-11-13 04:46:55 -05:00
Nick Atamas
5984aebe9c Slate : Added -perftest option to SlateViewer. Added button in WidgetReflector that copies Slate Perf Stats to clipboard.
#codereview Wes.Hunt

[CL 2353749 by Nick Atamas in Main branch]
2014-11-07 18:01:32 -05:00
Jaroslaw Surowiec
3b28acd41c SlateViewer - Added UEBuildConfiguration.bCompileWithStatsWithoutEngine = true, it's safer to enable it per-app
#codereview nick.atamas

[CL 2351494 by Jaroslaw Surowiec in Main branch]
2014-11-06 15:15:49 -05:00
Nick Atamas
fe50b7005c Slate : Added stat visualization to the widget reflector. Slate can now be easily profiled in SlateViewer. Requires adding <bCompileWithStatsWithoutEngine>true</bCompileWithStatsWithoutEngine> to a local BuildConfiguration.xml.
[CL 2350283 by Nick Atamas in Main branch]
2014-11-05 13:13:07 -05:00
Max Preussner
93754920a6 SlateReflector: Made headers compilable individually; code & documentation clenaup
[CL 2344965 by Max Preussner in Main branch]
2014-10-30 11:03:30 -04:00
Matthew Griffin
d39dcfc4cf Changing Web Browser Singleton to tick itself
Removes depency on WebBrowser project from Slate, it now depends on Slate instead.
Removed functions from Singleton interface that are no longer needed.
Get the Slate renderer when needed instead of keeping reference.
Added call to FTicker::Tick function in Slate viewer app so that Web Browser will continue to work.

[CL 2330030 by Matthew Griffin in Main branch]
2014-10-15 08:32:12 -04:00
Wes Hunt
31e2bb00ac Removed a bunch of stuff from Slate standard include, created SlateBasics.h
* Moved Slate.h into SlateBasics.h and began shifting less commonly used headers into SlateExtras.h.
* Slate.h now simply includes SlateBasics.h and SlateExtras.h.
* Slate.h includes a deprecated warning now to indicate that SlateBasics.h + specific includes should be used instead.
* Moved dozens of inlined functions using Slate widgets into .cpp files to avoid header dependencies.
* All code samples now include SlateBasics.h and SlateExtras.h so future shifts will not break most those projects, but not trigger the deprecation warning of including Slate.h.
#BUN

[CL 2329610 by Wes Hunt in Main branch]
2014-10-14 22:50:06 -04:00
Michael Trepka
1d5a0d5506 Updated engine code to compile correctly with OS X 10.10 SDK, added SDK detection to MacToolChain (based on iOS one)
#codereview Mark.Satterthwaite

[CL 2325808 by Michael Trepka in Main branch]
2014-10-10 15:07:46 -04:00
Michael Trepka
c7760aa8a6 FSlateMacMenu::UpdateCachedState() now checks with the global tab manager if there's any active tab instead of depending on not being called when there's not. This should solve any remaining issues with executing it while the app is quitting.
[CL 2314311 by Michael Trepka in Main branch]
2014-09-30 11:38:23 -04:00
Mark Satterthwaite
e432c124c8 Rather than cancelling OS quit requests on OS X and then quitting behind Cocoa's back, use the proper deferral mechanism so that we have Cocoa wait for the separate game thread to exit before it tears the application down. UE4 applications shouldn't cancel shutdown, restart or logout requests anymore.
#codereview michael.trepka

[CL 2312939 by Mark Satterthwaite in Main branch]
2014-09-29 11:10:28 -04:00
Michael Trepka
310577c6d2 Refactored Mac menu code to work better with game thread and fix crashes caused by performing game thread calls in menuNeedsUpdate:
#codereview Mark.Satterthwaite

[CL 2310125 by Michael Trepka in Main branch]
2014-09-25 14:42:11 -04:00
Thomas Sarkanen
3522037b79 Source code access now works in SlateViewer and Launcher
Made sure to manually load the appropriate modules for source code access.
The hot reload dependency that VisualStudioSourceCodeAccess had was bringing in the whole editor as a dependency, so this is now restricted to editor builds.
SlateViewer now compiles in CoreUObject as the source code accessor module requires it for its settings.

TTP# 333675 - CHECKIN: SLATE: WidgetReflector code reference hyperlinks don't work anymore

#codereview Nick.Atamas,Frank.Fella

[CL 2292278 by Thomas Sarkanen in Main branch]
2014-09-10 06:43:48 -04:00
Max Preussner
f167dce37e Slate: Moved TestSuite and ColorPicker into new module AppFramework
The AppFramework module is intended to be used for compound widgets and UI related classes that are too specific (not basic enough) for Slate, but also not Editor specific (reusable in non-Editor applications and games). The test suite has been moved in its entirety for now, but core widget specific test classes will eventually be split off and moved back into Slate, so that they can live alongside of their corresponding widgets.

Other changes:
- moved to "include what you use" scheme for SColorPicker
- broke out color picker related widgets that may be reusable
- added forward declarations to reduce header include dependencies

#CodeReview: saul.abreu

[CL 2275496 by Max Preussner in Main branch]
2014-08-27 20:35:19 -04:00
Mark Satterthwaite
8f351ac383 On OS X detach the game thread from the 'blessed' Cocoa main thread.
Cocoa isn't an event-polling API as UE4 expects, so previously we were subverting the NSApplication's event handling to pretend that it was. When the engine wasn't running the event loop fast enough, such as when loading where it isn't processed at all, this resulted in unresponsive windows and Spinning-Beachball-Of-Death. That isn't very satisfactory & to some users appears as if the application has crashed. To address these deficiencies without further attempts to subvert Cocoa, the game is now punted onto a separate thread where it can run its own tight-loop, leaving the main thread to handle the Cocoa event run-loop. Events are captured by delegate objects, as Cocoa requires, but dispatched and handled on the game thread which makes Cocoa appear more like other platform APIs to the higher-level UE4 code.
This can all be disabled using the MAC_SEPARATE_GAME_THREAD define in CocoaThread.cpp.
#codereview michael.trepka

[CL 2262543 by Mark Satterthwaite in Main branch]
2014-08-19 10:46:30 -04:00
Max Preussner
259dd3c351 Programs: NULL to nullptr
[CL 2239480 by Max Preussner in Main branch]
2014-08-01 02:40:54 -04:00
Michael Trepka
ac834c4a36 Removed redundant setting of GUseCrashReportClient on Mac and some unused code from FMacPlatformMisc::SubmitErrorReport()
#codereview Mark.Satterthwaite

[CL 2223750 by Michael Trepka in Main branch]
2014-07-18 14:22:26 -04:00
Michael Trepka
e0b50589d2 Removed Mac MainMenu.xib, the app and window menus are now generated dynamically.
[CL 2088627 by Michael Trepka in Main branch]
2014-05-29 17:46:24 -04:00
Bob Tellez
ab8c090a38 UE4: Removed bCompileNetworkProfiler. USE_NETWORK_PROFILER is now true whenever STATS is also true. Also, removed some platform-specific code in NetworkProfiler.cpp
[CL 2082160 by Bob Tellez in Main branch]
2014-05-22 14:04:35 -04:00
Dmitry Rekman
1041c8a2df Set Ctrl-C handler in SlateViewer.
[CL 2070655 by Dmitry Rekman in Main branch]
2014-05-12 15:25:10 -04:00