📄 emulator.h
字号:
///////////////////////////////////////////////////////////////////////////////// Name: emulator.h// Purpose: wxX11-based PDA emulator classes// Author: Julian Smart// Modified by:// Created: 2002-03-10// RCS-ID: $Id: emulator.h,v 1.9 2005/09/23 12:56:27 MR Exp $// Copyright: (c) wxWidgets team// Licence: wxWindows licence///////////////////////////////////////////////////////////////////////////////#ifndef _WX_EMULATOR_H_#define _WX_EMULATOR_H_#define wxEMULATOR_VERSION 0.1// Information about the emulator decorationsclass wxEmulatorInfo: public wxObject{public: wxEmulatorInfo() { Init(); } wxEmulatorInfo(const wxEmulatorInfo& info) : wxObject() { Init(); Copy(info); } void operator= (const wxEmulatorInfo& info) { Copy(info); } void Copy(const wxEmulatorInfo& info); // Initialisation void Init(); // Loads bitmaps bool Load(const wxString& appDir); // Emulator config filename wxString m_emulatorFilename; // Emulator title wxString m_emulatorTitle; // Emulator description wxString m_emulatorDescription; // The offset from the top-left of the main emulator // bitmap and the virtual screen (where Xnest is // positioned) wxPoint m_emulatorScreenPosition; // 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; wxString m_emulatorBackgroundBitmapName; // The intended background colour (for filling in // areas of the window not covered by the bitmap) wxColour m_emulatorBackgroundColour; // TODO: an array of bitmaps and ids for custom buttons};// Emulator app classclass wxEmulatorContainer;class wxEmulatorApp : public wxApp{public: wxEmulatorApp(); virtual bool OnInit(); // Load the specified emulator 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;#else wxWindow* m_xnestWindow;#endif wxEmulatorContainer* m_containerWindow; wxString m_appDir; wxString m_displayNumber; long m_xnestPID;};// The container for the Xnest window. The decorations// will be drawn on this window.class wxEmulatorContainer: public wxWindow{public: wxEmulatorContainer(wxWindow* parent, wxWindowID id); void DoResize(); void OnSize(wxSizeEvent& event); void OnPaint(wxPaintEvent& event); void OnEraseBackground(wxEraseEvent& event);DECLARE_CLASS(wxEmulatorContainer)DECLARE_EVENT_TABLE()};// Frame classclass wxEmulatorFrame : public wxFrame{public: // ctor(s) wxEmulatorFrame(const wxString& title, const wxPoint& pos, const wxSize& size); // event handlers void OnQuit(wxCommandEvent& event); void OnAbout(wxCommandEvent& event); void OnCloseWindow(wxCloseEvent& event);private: // any class wishing to process wxWidgets events must use this macro DECLARE_EVENT_TABLE()};// ----------------------------------------------------------------------------// constants// ----------------------------------------------------------------------------// IDs for the controls and the menu commandsenum{ // menu items Emulator_Quit = 1, // it is important for the id corresponding to the "About" command to have // this standard value as otherwise it won't be handled properly under Mac // (where it is special and put into the "Apple" menu) Emulator_About = wxID_ABOUT};// Returns the image type, or -1, determined from the extension.wxBitmapType wxDetermineImageType(const wxString& filename);// Convert a colour to a 6-digit hex stringwxString wxColourToHexString(const wxColour& col);// Convert 6-digit hex string to a colourwxColour 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_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -