X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/716cd4107bb8a5f37dea34507453be6870aaef3a..3d74a760130b1cba417ad7eb61a146dee9144d22:/contrib/include/wx/applet/window.h?ds=sidebyside diff --git a/contrib/include/wx/applet/window.h b/contrib/include/wx/applet/window.h index 97ff94d869..5746a12543 100644 --- a/contrib/include/wx/applet/window.h +++ b/contrib/include/wx/applet/window.h @@ -30,17 +30,37 @@ #define __WX_APPLET_WINDOW_H #include "wx/html/htmlwin.h" +#include "wx/hash.h" +#include "wx/process.h" +#include "wx/toolbar.h" // Forward declare class wxApplet; +class wxQlet; class wxLoadPageEvent; class wxPageLoadedEvent; class wxIncludePrep; +class wxToolBarBase; // Declare a linked list of wxApplet pointers WX_DECLARE_LIST(wxApplet, wxAppletList); /*--------------------------- Class Definitions ---------------------------*/ +class wxAppletEvent { +protected: + int m_id; + wxObject *m_eventObject; +public: + wxAppletEvent(int id) { m_eventObject=NULL; m_id = id; } + + int GetId() const { return m_id; } + void SetId(int Id) { m_id = Id; } + + wxObject *GetEventObject() const { return m_eventObject; } + void SetEventObject(wxObject *obj) { m_eventObject = obj; } + +}; + /**************************************************************************** REMARKS: @@ -48,26 +68,36 @@ Defines the class for virtual-link data types ****************************************************************************/ class VirtualData : public wxObject { private: + DECLARE_DYNAMIC_CLASS(VirtualData); + +protected: wxString m_name; wxString m_group; wxString m_href; + wxString m_plugIn; public: // Ctors VirtualData( wxString& name, wxString& group, - wxString& href ); + wxString& href, + wxString& plugin ); + + VirtualData(); // Gets wxString GetName(){ return m_name;}; wxString GetGroup(){ return m_group;}; wxString GetHref(){ return m_href;}; + wxString GetPlugIn(){ return m_plugIn;}; // Sets void SetName (wxString& s){ m_name = s; }; void SetGroup(wxString& s){ m_group = s; }; void SetHref (wxString& s){ m_href = s; }; + void SetPlugIn (wxString& s){ m_plugIn = s;}; + void EmptyPlugIn () { m_plugIn = "";}; }; /**************************************************************************** @@ -81,15 +111,21 @@ private: DECLARE_CLASS(wxHtmlAppletWindow); DECLARE_EVENT_TABLE(); - bool m_mutexLock; - wxIncludePrep *incPreprocessor; // deleted by list it is added too in constructor + bool m_mutexLock; + wxIncludePrep *incPreprocessor; // deleted by list it is added too in constructor + protected: wxAppletList m_AppletList; static wxHashTable m_Cookies; + bool m_NavBarEnabled; wxToolBarBase *m_NavBar; int m_NavBackId; int m_NavForwardId; - + wxString m_openedlast; + + // Override this so we can do proper palette management!! + virtual void OnDraw(wxDC& dc); + public: // Constructor wxHtmlAppletWindow( @@ -113,6 +149,9 @@ public: const wxHtmlTag ¶ms, const wxSize& size); + // Create an instance of an Qlet based on it's class name + bool CreatePlugIn(const wxString& classId,const wxString& cmdLine = ""); + // Find an instance of an applet based on it's class name wxApplet *FindApplet(const wxString& className); @@ -131,17 +170,25 @@ public: // Handles backwards navigation within the HTML stack bool HistoryBack(); + // Disables Nav bars + void DisableNavBar(); + + // Enables Nav bars + void EnableNavBar(); + + void SetNavBar(wxToolBarBase *navBar); + // Broadcast a message to all applets on the page - void SendMessage(wxEvent& msg); + void SendAppletMessage(wxAppletEvent& msg); // Register a cookie of data in the applet manager - bool RegisterCookie(const wxString& name,wxObject *cookie); + static bool RegisterCookie(const wxString& name,wxObject *cookie); // UnRegister a cookie of data in the applet manager - bool UnRegisterCookie(const wxString& name); + static bool UnRegisterCookie(const wxString& name); // Find a cookie of data given it's public name - wxObject *FindCookie(const wxString& name); + static wxObject *FindCookie(const wxString& name); // Event handlers to load a new page void OnLoadPage(wxLoadPageEvent &event); @@ -150,16 +197,35 @@ public: void OnPageLoaded(wxPageLoadedEvent &event); // LoadPage mutex locks - void Lock() { m_mutexLock = true;}; - void UnLock() { m_mutexLock = false;}; + void Lock(){ m_mutexLock = true;}; + void UnLock(){ m_mutexLock = false;}; // Returns TRUE if the mutex is locked, FALSE otherwise. - bool IsLocked() { return m_mutexLock;}; + bool IsLocked(){ return m_mutexLock;}; // Tries to lock the mutex. If it can't, returns immediately with false. bool TryLock(); + wxString GetLastOpened() { return m_openedlast; } }; +/**************************************************************************** +REMARKS: +Defines the class for wxHtmlAppletCell +***************************************************************************/ +class wxHtmlAppletCell : public wxHtmlCell +{ +public: + wxHtmlAppletCell(wxWindow *wnd, int w = 0); + virtual ~wxHtmlAppletCell(); + virtual void Draw(wxDC& dc, int x, int y, int view_y1, int view_y2); + virtual void DrawInvisible(wxDC& dc, int x, int y); + virtual void Layout(int w); + +protected: + wxWindow* m_Wnd; + // width float is used in adjustWidth (it is in percents) +}; + #endif // __WX_APPLET_WINDOW_H