#pragma interface "emulator.h"
#endif
+#define wxEMULATOR_VERSION 0.1
+
// Information about the emulator decorations
class wxEmulatorInfo: public wxObject
{
void Init();
// Loads bitmaps
- bool Load();
+ bool Load(const wxString& appDir);
+
+ // Emulator config filename
+ wxString m_emulatorFilename;
// Emulator title
wxString m_emulatorTitle;
// The emulated screen size, e.g. 320x240
wxSize m_emulatorScreenSize;
+ // The emulated device size. This is ignored
+ // if there is a background bitmap
+ wxSize m_emulatorDeviceSize;
+
// The bitmap used for drawing the main emulator
// decorations
wxBitmap m_emulatorBackgroundBitmap;
virtual bool OnInit();
// Load the specified emulator
- bool LoadEmulator();
+ bool LoadEmulator(const wxString& appDir);
+
+ // Get app dir
+ wxString GetAppDir() const { return m_appDir; }
+
+ // Prepend the current app program directory to the name
+ wxString GetFullAppPath(const wxString& filename) const;
public:
+
wxEmulatorInfo m_emulatorInfo;
#ifdef __WXX11__
wxAdoptedWindow* m_xnestWindow;
wxWindow* m_xnestWindow;
#endif
wxEmulatorContainer* m_containerWindow;
+ wxString m_appDir;
+ wxString m_displayNumber;
+ long m_xnestPID;
};
// The container for the Xnest window. The decorations
wxEmulatorContainer(wxWindow* parent, wxWindowID id);
+ void DoResize();
+
void OnSize(wxSizeEvent& event);
void OnPaint(wxPaintEvent& event);
void OnEraseBackground(wxEraseEvent& event);
// ctor(s)
wxEmulatorFrame(const wxString& title, const wxPoint& pos, const wxSize& size);
- // event handlers (these functions should _not_ be virtual)
+ // event handlers
void OnQuit(wxCommandEvent& event);
void OnAbout(wxCommandEvent& event);
+ void OnCloseWindow(wxCloseEvent& event);
private:
// any class wishing to process wxWindows events must use this macro
// Returns the image type, or -1, determined from the extension.
int wxDetermineImageType(const wxString& filename);
+// Convert a colour to a 6-digit hex string
+wxString wxColourToHexString(const wxColour& col);
+
+// Convert 6-digit hex string to a colour
+wxColour wxHexStringToColour(const wxString& hex);
+
+// Find the absolute path where this application has been run from.
+wxString wxFindAppPath(const wxString& argv0, const wxString& cwd, const wxString& appVariableName);
+
#endif
// _WX_EMULATOR_H_