// Author: Julian Smart
// Modified by:
// Created: 2002-03-10
-// RCS-ID: $Id$
-// Copyright: (c) wxWindows team
+// Copyright: (c) wxWidgets team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_EMULATOR_H_
#define _WX_EMULATOR_H_
-#ifdef __GNUG__
- #pragma interface "emulator.h"
-#endif
+#define wxEMULATOR_VERSION 0.1
// Information about the emulator decorations
class wxEmulatorInfo: public wxObject
public:
wxEmulatorInfo() { Init(); }
- wxEmulatorInfo(const wxEmulatorInfo& info) { Init(); Copy(info); }
+ wxEmulatorInfo(const wxEmulatorInfo& info) : wxObject() { Init(); Copy(info); }
void operator= (const wxEmulatorInfo& info) { Copy(info); }
void Copy(const wxEmulatorInfo& info);
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
// 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
+ // any class wishing to process wxWidgets events must use this macro
DECLARE_EVENT_TABLE()
};
};
// Returns the image type, or -1, determined from the extension.
-int wxDetermineImageType(const wxString& filename);
+wxBitmapType 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_