Permalink
Browse files

Cocoa Port: Vastly improve the ability to take screenshots of the NDS…

… displays.

- The old Tools > Save Screenshot As has been replaced with the new Screenshot Capture Tool.
- The new Screenshot Capture Tool allows screenshots to be configured to render with the same layout features as a display view.
- Screenshot captures now both render and save to file on their own independent threads.
- Screenshots are now captured using the Take Screenshot button, and files are now automatically named based on ROM name and timestamp.
- All of these features means that users can now rapidly take screenshots with their own custom layouts, all with little to no slowdown to the emulation.
- Also do a bunch of code cleanup and refactoring as a side-effect of adding these new features.
  • Loading branch information...
rogerman committed Oct 1, 2017
1 parent 2c1360d commit 059ea519bcbb226390ee931b6acdbda2dbf0dd1c
Showing with 22,744 additions and 19,068 deletions.
  1. +410 −336 desmume/src/frontend/cocoa/ClientDisplayView.cpp
  2. +92 −43 desmume/src/frontend/cocoa/ClientDisplayView.h
  3. +10 −0 desmume/src/frontend/cocoa/DeSmuME (Latest).xcodeproj/project.pbxproj
  4. +14 −0 desmume/src/frontend/cocoa/DeSmuME (XCode 3).xcodeproj/project.pbxproj
  5. +20 −0 desmume/src/frontend/cocoa/DefaultUserPrefs.plist
  6. +21 −28 desmume/src/frontend/cocoa/OGLDisplayOutput.cpp
  7. +4 −2 desmume/src/frontend/cocoa/OGLDisplayOutput.h
  8. +0 −2 desmume/src/frontend/cocoa/cocoa_GPU.h
  9. +3 −16 desmume/src/frontend/cocoa/cocoa_GPU.mm
  10. +1 −2 desmume/src/frontend/cocoa/cocoa_globals.h
  11. +3 −6 desmume/src/frontend/cocoa/cocoa_output.h
  12. +106 −182 desmume/src/frontend/cocoa/cocoa_output.mm
  13. +2 −1,171 desmume/src/frontend/cocoa/translations/English.lproj/DisplayWindow.xib
  14. BIN desmume/src/frontend/cocoa/translations/English.lproj/MainMenu.strings
  15. +20,602 −16,444 desmume/src/frontend/cocoa/translations/English.lproj/MainMenu.xib
  16. +26 −15 desmume/src/frontend/cocoa/userinterface/DisplayViewCALayer.h
  17. +33 −22 desmume/src/frontend/cocoa/userinterface/DisplayViewCALayer.mm
  18. +3 −9 desmume/src/frontend/cocoa/userinterface/DisplayWindowController.h
  19. +68 −134 desmume/src/frontend/cocoa/userinterface/DisplayWindowController.mm
  20. +15 −1 desmume/src/frontend/cocoa/userinterface/EmuControllerDelegate.h
  21. +260 −4 desmume/src/frontend/cocoa/userinterface/EmuControllerDelegate.mm
  22. +68 −22 desmume/src/frontend/cocoa/userinterface/MacMetalDisplayView.h
  23. +352 −229 desmume/src/frontend/cocoa/userinterface/MacMetalDisplayView.mm
  24. +32 −12 desmume/src/frontend/cocoa/userinterface/MacOGLDisplayView.h
  25. +140 −107 desmume/src/frontend/cocoa/userinterface/MacOGLDisplayView.mm
  26. +97 −0 desmume/src/frontend/cocoa/userinterface/MacScreenshotCaptureTool.h
  27. +346 −0 desmume/src/frontend/cocoa/userinterface/MacScreenshotCaptureTool.mm
  28. +0 −22 desmume/src/frontend/cocoa/userinterface/appDelegate.h
  29. +16 −259 desmume/src/frontend/cocoa/userinterface/appDelegate.mm

Large diffs are not rendered by default.

Oops, something went wrong.
@@ -110,7 +110,7 @@ struct ClientFrameInfo
};
typedef struct ClientFrameInfo ClientFrameInfo;
struct ClientDisplayViewProperties
struct ClientDisplayPresenterProperties
{
ClientDisplayMode mode;
ClientDisplayLayout layout;
@@ -125,23 +125,22 @@ struct ClientDisplayViewProperties
double viewScale;
double gapDistance;
};
typedef struct ClientDisplayViewProperties ClientDisplayViewProperties;
typedef struct ClientDisplayPresenterProperties ClientDisplayPresenterProperties;
extern LUTValues *_LQ2xLUT;
extern LUTValues *_HQ2xLUT;
extern LUTValues *_HQ3xLUT;
extern LUTValues *_HQ4xLUT;
void InitHQnxLUTs();
class ClientDisplayView
class ClientDisplayPresenter
{
private:
void __InstanceInit(const ClientDisplayViewProperties &props);
void __InstanceInit(const ClientDisplayPresenterProperties &props);
protected:
ClientDisplayViewProperties _renderProperty;
ClientDisplayViewProperties _stagedProperty;
InitialTouchPressMap *_initialTouchInMajorDisplay;
ClientDisplayPresenterProperties _renderProperty;
ClientDisplayPresenterProperties _stagedProperty;
GPUClientFetchObject *_fetchObject;
bool _useDeposterize;
@@ -152,8 +151,6 @@ class ClientDisplayView
bool _isSelectedDisplayEnabled[2];
NDSDisplayID _selectedSourceForDisplay[2];
int64_t _displayViewID;
bool _useVerticalSync;
double _scaleFactor;
double _hudObjectScale;
@@ -184,9 +181,6 @@ class ClientDisplayView
std::string _hudInputString;
std::string _outHudString;
bool _hudNeedsUpdate;
bool _viewNeedsFlush;
bool _allowViewUpdates;
bool _allowViewFlushes;
FT_Library _ftLibrary;
const char *_lastFontFilePath;
@@ -215,26 +209,19 @@ class ClientDisplayView
virtual void _ResizeCPUPixelScaler(const VideoFilterTypeID filterID);
public:
ClientDisplayView();
ClientDisplayView(const ClientDisplayViewProperties &props);
virtual ~ClientDisplayView();
ClientDisplayPresenter();
ClientDisplayPresenter(const ClientDisplayPresenterProperties &props);
virtual ~ClientDisplayPresenter();
virtual void Init();
int64_t GetDisplayViewID();
virtual void SetDisplayViewID(int64_t displayViewID);
virtual bool GetViewNeedsFlush();
bool GetUseVerticalSync() const;
virtual void SetUseVerticalSync(const bool useVerticalSync);
double GetScaleFactor() const;
virtual void SetScaleFactor(const double scaleFactor);
// NDS screen layout
const ClientDisplayViewProperties& GetViewProperties() const;
void CommitViewProperties(const ClientDisplayViewProperties &props);
virtual void SetupViewProperties();
const ClientDisplayPresenterProperties& GetPresenterProperties() const;
void CommitPresenterProperties(const ClientDisplayPresenterProperties &props);
virtual void SetupPresenterProperties();
double GetRotation() const;
double GetViewScale() const;
@@ -311,28 +298,16 @@ class ClientDisplayView
const GPUClientFetchObject& GetFetchObject() const;
void SetFetchObject(GPUClientFetchObject *fetchObject);
bool GetAllowViewUpdates() const;
virtual void SetAllowViewUpdates(bool allowUpdates);
bool GetAllowViewFlushes() const;
virtual void SetAllowViewFlushes(bool allowFlushes);
virtual void LoadDisplays();
virtual void ProcessDisplays();
virtual void UpdateView();
virtual void FlushView();
virtual void UpdateLayout();
virtual void FinishFrameAtIndex(const uint8_t bufferIndex);
virtual void CopyFrameToBuffer(uint32_t *dstBuffer);
// Emulator interface
const NDSDisplayInfo& GetEmuDisplayInfo() const;
void SetEmuDisplayInfo(const NDSDisplayInfo &ndsDisplayInfo);
virtual void HandleEmulatorFrameEndEvent();
// Touch screen input handling
void GetNDSPoint(const int inputID, const bool isInitialTouchPress,
const double clientX, const double clientY,
u8 &outX, u8 &outY) const;
// Utility methods
static void ConvertNormalToTransformedBounds(const double scalar,
@@ -342,25 +317,69 @@ class ClientDisplayView
static double GetMaxScalarWithinBounds(const double normalBoundsWidth, const double normalBoundsHeight,
const double keepInBoundsWidth, const double keepInBoundsHeight);
static void CalculateNormalSize(const ClientDisplayMode mode, const ClientDisplayLayout layout, const double gapScale,
double &outWidth, double &outHeight);
};
class ClientDisplayViewInterface
{
protected:
InitialTouchPressMap *_initialTouchInMajorDisplay;
int64_t _displayViewID;
bool _useVerticalSync;
bool _viewNeedsFlush;
bool _allowViewUpdates;
bool _allowViewFlushes;
public:
ClientDisplayViewInterface();
virtual ~ClientDisplayViewInterface();
int64_t GetDisplayViewID();
virtual void SetDisplayViewID(int64_t displayViewID);
virtual bool GetViewNeedsFlush();
virtual void SetViewNeedsFlush();
bool GetUseVerticalSync() const;
virtual void SetUseVerticalSync(const bool useVerticalSync);
// Client view interface
bool GetAllowViewUpdates() const;
virtual void SetAllowViewUpdates(bool allowUpdates);
bool GetAllowViewFlushes() const;
virtual void SetAllowViewFlushes(bool allowFlushes);
virtual void FlushView();
// Touch screen input handling
void GetNDSPoint(const ClientDisplayPresenterProperties &props,
const double logicalClientWidth, const double logicalClientHeight,
const int inputID, const bool isInitialTouchPress,
const double clientX, const double clientY,
uint8_t &outX, uint8_t &outY) const;
// Utility methods
static void ConvertClientToNormalPoint(const double normalBoundsWidth, const double normalBoundsHeight,
const double transformBoundsWidth, const double transformBoundsHeight,
const double scalar,
const double angleDegrees,
double &inoutX, double &inoutY);
static void CalculateNormalSize(const ClientDisplayMode mode, const ClientDisplayLayout layout, const double gapScale,
double &outWidth, double &outHeight);
};
class ClientDisplay3DView : public ClientDisplayView
class ClientDisplay3DPresenter : public ClientDisplayPresenter
{
private:
void __InstanceInit();
protected:
bool _canFilterOnGPU;
bool _willFilterOnGPU;
bool _filtersPreferGPU;
public:
ClientDisplay3DView();
ClientDisplay3DPresenter();
ClientDisplay3DPresenter(const ClientDisplayPresenterProperties &props);
bool CanFilterOnGPU() const;
bool GetFiltersPreferGPU() const;
@@ -377,4 +396,34 @@ class ClientDisplay3DView : public ClientDisplayView
void SetScreenTextureCoordinates(float w0, float h0, float w1, float h1, float *texCoordBufferPtr);
};
class ClientDisplayView : public ClientDisplayViewInterface
{
protected:
ClientDisplayPresenter *_presenter;
public:
ClientDisplayView();
ClientDisplayView(ClientDisplayPresenter *thePresenter);
virtual void Init();
ClientDisplayPresenter* GetPresenter();
void SetPresenter(ClientDisplayPresenter *thePresenter);
};
class ClientDisplay3DView : public ClientDisplayViewInterface
{
protected:
ClientDisplay3DPresenter *_presenter;
public:
ClientDisplay3DView();
ClientDisplay3DView(ClientDisplay3DPresenter *thePresenter);
virtual void Init();
ClientDisplay3DPresenter* Get3DPresenter();
void Set3DPresenter(ClientDisplay3DPresenter *thePresenter);
};
#endif // _CLIENT_DISPLAY_VIEW_H_
@@ -1048,6 +1048,9 @@
ABD10AEC1715FCDD00B5729D /* mic_ext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD10AE61715FCDD00B5729D /* mic_ext.cpp */; };
ABD10AED17160C9300B5729D /* ringbuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB1B9E601501A78000464647 /* ringbuffer.cpp */; };
ABD10AEE17160CDD00B5729D /* cocoa_input.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABD104111346652500AF11D1 /* cocoa_input.mm */; };
ABD1FBF11F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FBF01F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm */; };
ABD1FBF21F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FBF01F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm */; };
ABD1FBF31F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FBF01F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm */; };
ABD1FED21345AC8400AF11D1 /* arm_instructions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FEA31345AC8400AF11D1 /* arm_instructions.cpp */; };
ABD1FED31345AC8400AF11D1 /* armcpu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FEA41345AC8400AF11D1 /* armcpu.cpp */; };
ABD1FED41345AC8400AF11D1 /* bios.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FEA51345AC8400AF11D1 /* bios.cpp */; };
@@ -1628,6 +1631,8 @@
ABD10AE41715FCDD00B5729D /* mic_ext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mic_ext.h; sourceTree = SOURCE_ROOT; };
ABD10AE51715FCDD00B5729D /* audiosamplegenerator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = audiosamplegenerator.cpp; sourceTree = SOURCE_ROOT; };
ABD10AE61715FCDD00B5729D /* mic_ext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mic_ext.cpp; sourceTree = SOURCE_ROOT; };
ABD1FBF01F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MacScreenshotCaptureTool.mm; sourceTree = "<group>"; };
ABD1FBF41F7B7EA600B4F648 /* MacScreenshotCaptureTool.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MacScreenshotCaptureTool.h; sourceTree = "<group>"; };
ABD1FE6F1345AC8400AF11D1 /* armcpu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = armcpu.h; sourceTree = "<group>"; };
ABD1FE701345AC8400AF11D1 /* bios.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bios.h; sourceTree = "<group>"; };
ABD1FE711345AC8400AF11D1 /* bits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bits.h; sourceTree = "<group>"; };
@@ -2433,6 +2438,7 @@
AB01005C170D07AF00D70FBE /* InputProfileController.h */,
AB3BF43F1E2628B6003E2B24 /* MacMetalDisplayView.h */,
AB3BF4051E22FEA8003E2B24 /* MacOGLDisplayView.h */,
ABD1FBF41F7B7EA600B4F648 /* MacScreenshotCaptureTool.h */,
AB3ACB7014C2361100D7D192 /* preferencesWindowDelegate.h */,
ABAF0A3F1A96E67200B95B75 /* RomInfoPanel.h */,
AB564902186E6EBC002740F4 /* Slot2WindowDelegate.h */,
@@ -2449,6 +2455,7 @@
AB01005D170D07B000D70FBE /* InputProfileController.mm */,
AB3BF43B1E26289E003E2B24 /* MacMetalDisplayView.mm */,
AB3BF4011E22FE01003E2B24 /* MacOGLDisplayView.mm */,
ABD1FBF01F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm */,
AB3ACB7114C2361100D7D192 /* preferencesWindowDelegate.mm */,
ABAF0A401A96E67200B95B75 /* RomInfoPanel.mm */,
AB564903186E6EBC002740F4 /* Slot2WindowDelegate.mm */,
@@ -3814,6 +3821,7 @@
ABA7316F1BB51FDC00B26147 /* type1.c in Sources */,
ABD1FF5F1345ACBF00AF11D1 /* fatfile.cpp in Sources */,
ABD1FEDF1345AC8400AF11D1 /* FIFO.cpp in Sources */,
ABD1FBF31F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm in Sources */,
ABAD3E7413AF1D6D00502E1E /* FIFOSampleBuffer.cpp in Sources */,
ABD1FF601345ACBF00AF11D1 /* file_allocation_table.cpp in Sources */,
AB2EE12D17D57ED500F68622 /* slot1_retail_mcrom_debug.cpp in Sources */,
@@ -4035,6 +4043,7 @@
AB796D0115CDCBA200C59155 /* dlditool.cpp in Sources */,
AB796D0215CDCBA200C59155 /* driver.cpp in Sources */,
AB796D0315CDCBA200C59155 /* emufat.cpp in Sources */,
ABD1FBF11F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm in Sources */,
AB3BF4381E25D9AE003E2B24 /* DisplayViewCALayer.mm in Sources */,
AB564904186E6EBC002740F4 /* Slot2WindowDelegate.mm in Sources */,
AB9038B217C5ED2200F410BD /* slot1_retail_mcrom.cpp in Sources */,
@@ -4385,6 +4394,7 @@
AB8F3CE81A53AC2600A80BF6 /* epx.cpp in Sources */,
AB8F3CE91A53AC2600A80BF6 /* hq2x.cpp in Sources */,
AB8F3CEA1A53AC2600A80BF6 /* hq4x.cpp in Sources */,
ABD1FBF21F7B7E7E00B4F648 /* MacScreenshotCaptureTool.mm in Sources */,
AB8F3CEB1A53AC2600A80BF6 /* advanscene.cpp in Sources */,
AB8F3CEC1A53AC2600A80BF6 /* lq2x.cpp in Sources */,
AB8F3CED1A53AC2600A80BF6 /* xbrz.cpp in Sources */,
@@ -1227,6 +1227,11 @@
ABAAFBEB172122B6005DDDBE /* FileMigrationDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAAFBE9172122B6005DDDBE /* FileMigrationDelegate.mm */; };
ABAAFBEC172122B6005DDDBE /* FileMigrationDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAAFBE9172122B6005DDDBE /* FileMigrationDelegate.mm */; };
ABAAFBED172122B6005DDDBE /* FileMigrationDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAAFBE9172122B6005DDDBE /* FileMigrationDelegate.mm */; };
ABAB0AFF1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAB0AFE1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm */; };
ABAB0B001F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAB0AFE1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm */; };
ABAB0B011F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAB0AFE1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm */; };
ABAB0B021F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAB0AFE1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm */; };
ABAB0B031F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAB0AFE1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm */; };
ABACB73A1AAC46B20066F429 /* Icon_MicrophoneDarkGreen_256x256.png in Resources */ = {isa = PBXBuildFile; fileRef = ABACB7391AAC46B20066F429 /* Icon_MicrophoneDarkGreen_256x256.png */; };
ABACB73B1AAC46B20066F429 /* Icon_MicrophoneDarkGreen_256x256.png in Resources */ = {isa = PBXBuildFile; fileRef = ABACB7391AAC46B20066F429 /* Icon_MicrophoneDarkGreen_256x256.png */; };
ABACB73C1AAC46B20066F429 /* Icon_MicrophoneDarkGreen_256x256.png in Resources */ = {isa = PBXBuildFile; fileRef = ABACB7391AAC46B20066F429 /* Icon_MicrophoneDarkGreen_256x256.png */; };
@@ -1994,6 +1999,8 @@
ABAAEFFE1B22361800E1269D /* hq3x.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = hq3x.cpp; sourceTree = "<group>"; };
ABAAFBE8172122B6005DDDBE /* FileMigrationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileMigrationDelegate.h; sourceTree = "<group>"; };
ABAAFBE9172122B6005DDDBE /* FileMigrationDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FileMigrationDelegate.mm; sourceTree = "<group>"; };
ABAB0AFD1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacScreenshotCaptureTool.h; sourceTree = "<group>"; };
ABAB0AFE1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MacScreenshotCaptureTool.mm; sourceTree = "<group>"; };
ABACB7391AAC46B20066F429 /* Icon_MicrophoneDarkGreen_256x256.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Icon_MicrophoneDarkGreen_256x256.png; path = images/Icon_MicrophoneDarkGreen_256x256.png; sourceTree = "<group>"; };
ABAD104915ACE7A00000EC47 /* DeSmuME (PPC).app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "DeSmuME (PPC).app"; sourceTree = BUILT_PRODUCTS_DIR; };
ABAE2F7918682B6C00C92F4F /* Slot2WindowDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Slot2WindowDelegate.h; sourceTree = "<group>"; };
@@ -3017,6 +3024,7 @@
AB3ACB6E14C2361100D7D192 /* inputPrefsView.h */,
AB213D43170CB141006DDB0F /* InputProfileController.h */,
AB3E690E1E231E9900D4CC75 /* MacOGLDisplayView.h */,
ABAB0AFD1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.h */,
AB3ACB7014C2361100D7D192 /* preferencesWindowDelegate.h */,
ABC3DEBB1A96EA96009EC345 /* RomInfoPanel.h */,
ABAE2F7918682B6C00C92F4F /* Slot2WindowDelegate.h */,
@@ -3031,6 +3039,7 @@
AB3ACB6F14C2361100D7D192 /* inputPrefsView.mm */,
AB213D44170CB141006DDB0F /* InputProfileController.mm */,
AB3E690F1E231E9900D4CC75 /* MacOGLDisplayView.mm */,
ABAB0AFE1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm */,
AB3ACB7114C2361100D7D192 /* preferencesWindowDelegate.mm */,
ABC3DEBC1A96EA96009EC345 /* RomInfoPanel.mm */,
ABAE2F7A18682B6C00C92F4F /* Slot2WindowDelegate.mm */,
@@ -4617,6 +4626,7 @@
ABC04DA41F67A20500EA6ED7 /* ClientInputHandler.cpp in Sources */,
ABC04DCB1F67A2AC00EA6ED7 /* macosx_10_5_compat.cpp in Sources */,
ABAFD2791F7110E6007705BD /* gdbstub.cpp in Sources */,
ABAB0B001F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -4805,6 +4815,7 @@
ABC04DA51F67A20500EA6ED7 /* ClientInputHandler.cpp in Sources */,
ABC04DCC1F67A2AC00EA6ED7 /* macosx_10_5_compat.cpp in Sources */,
ABAFD2781F7110E5007705BD /* gdbstub.cpp in Sources */,
ABAB0B011F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -5023,6 +5034,7 @@
ABC04DA31F67A20500EA6ED7 /* ClientInputHandler.cpp in Sources */,
ABC04DCA1F67A2AC00EA6ED7 /* macosx_10_5_compat.cpp in Sources */,
ABAFD2751F7110E4007705BD /* gdbstub.cpp in Sources */,
ABAB0AFF1F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -5241,6 +5253,7 @@
ABC04DA71F67A20500EA6ED7 /* ClientInputHandler.cpp in Sources */,
ABC04DCE1F67A2AC00EA6ED7 /* macosx_10_5_compat.cpp in Sources */,
ABAFD2761F7110E4007705BD /* gdbstub.cpp in Sources */,
ABAB0B031F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -5429,6 +5442,7 @@
ABC04DA61F67A20500EA6ED7 /* ClientInputHandler.cpp in Sources */,
ABC04DCD1F67A2AC00EA6ED7 /* macosx_10_5_compat.cpp in Sources */,
ABAFD2771F7110E5007705BD /* gdbstub.cpp in Sources */,
ABAB0B021F7C1BB70079EFD3 /* MacScreenshotCaptureTool.mm in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -752,6 +752,26 @@
<integer>0</integer>
<key>RomInfoPanel_SectionViewState</key>
<dict/>
<key>ScreenshotCaptureTool_DirectoryPath</key>
<string>~/Pictures</string>
<key>ScreenshotCaptureTool_FileFormat</key>
<integer>0</integer>
<key>ScreenshotCaptureTool_DisplayMode</key>
<integer>2</integer>
<key>ScreenshotCaptureTool_DisplayRotation</key>
<integer>0</integer>
<key>ScreenshotCaptureTool_DisplaySeparation</key>
<integer>0</integer>
<key>ScreenshotCaptureTool_DisplayLayout</key>
<integer>0</integer>
<key>ScreenshotCaptureTool_DisplayOrder</key>
<integer>0</integer>
<key>ScreenshotCaptureTool_Deposterize</key>
<false/>
<key>ScreenshotCaptureTool_OutputFilter</key>
<integer>1</integer>
<key>ScreenshotCaptureTool_PixelScaler</key>
<integer>0</integer>
<key>Slot2_GBA_CartridgePath</key>
<string></string>
<key>Slot2_GBA_SRAMPath</key>
Oops, something went wrong.

0 comments on commit 059ea51

Please sign in to comment.