Add wxTLW::SetModified to allow apps to set the TLW's dirty state. On Mac this gives us the dot in the close button, not implemented elsewhere yet.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
8301a0e89d
commit
efb2fa41ff
@ -244,6 +244,9 @@ public :
|
||||
virtual void WindowToScreen( int *x, int *y );
|
||||
|
||||
virtual bool IsActive();
|
||||
|
||||
virtual void SetModified(bool modified);
|
||||
virtual bool GetModified() const;
|
||||
|
||||
wxNonOwnedWindow* GetWXPeer() { return m_wxPeer; }
|
||||
protected :
|
||||
|
@ -753,6 +753,9 @@ public :
|
||||
|
||||
static wxNonOwnedWindowImpl* CreateNonOwnedWindow( wxNonOwnedWindow* wxpeer, wxWindow* parent, const wxPoint& pos, const wxSize& size,
|
||||
long style, long extraStyle, const wxString& name ) ;
|
||||
|
||||
virtual void SetModified(bool WXUNUSED(modified)) { }
|
||||
virtual bool GetModified() const { return false; }
|
||||
|
||||
protected :
|
||||
wxNonOwnedWindow* m_wxPeer;
|
||||
|
@ -75,6 +75,9 @@ public:
|
||||
virtual void SetTitle( const wxString& title);
|
||||
virtual wxString GetTitle() const;
|
||||
|
||||
virtual void SetModified(bool modified);
|
||||
virtual bool GetModified() const;
|
||||
|
||||
protected:
|
||||
// common part of all ctors
|
||||
void Init();
|
||||
|
@ -256,6 +256,9 @@ public:
|
||||
// a different API for SetSizeHints
|
||||
virtual void SetMinSize(const wxSize& minSize);
|
||||
virtual void SetMaxSize(const wxSize& maxSize);
|
||||
|
||||
virtual void SetModified(bool modified) { m_modified = modified; }
|
||||
virtual bool GetModified() const { return m_modified; }
|
||||
|
||||
protected:
|
||||
// the frame client to screen translation should take account of the
|
||||
@ -304,6 +307,8 @@ protected:
|
||||
|
||||
// a temporary override of m_winDefault, use the latter if NULL
|
||||
wxWindowRef m_winTmpDefault;
|
||||
|
||||
bool m_modified;
|
||||
|
||||
wxDECLARE_NO_COPY_CLASS(wxTopLevelWindowBase);
|
||||
DECLARE_EVENT_TABLE()
|
||||
|
@ -439,6 +439,18 @@ public:
|
||||
there are any open top level windows.
|
||||
*/
|
||||
virtual bool ShouldPreventAppExit() const;
|
||||
|
||||
/**
|
||||
This function sets the wxTopLevelWindow's modified state, so that the
|
||||
wxTopLevelWindow can change its GUI to reflect the current state. (e.g. on
|
||||
Mac, the close button gets a black dot to reflect that there are unsaved changes)
|
||||
*/
|
||||
virtual void SetModified(bool modified);
|
||||
|
||||
/**
|
||||
Returns the current modified state of the wxTopLevelWindow.
|
||||
*/
|
||||
virtual bool GetModified() const;
|
||||
|
||||
/**
|
||||
Depending on the value of @a show parameter the window is either shown
|
||||
|
@ -727,6 +727,16 @@ bool wxNonOwnedWindowCocoaImpl::IsActive()
|
||||
return [m_macWindow isKeyWindow];
|
||||
}
|
||||
|
||||
void wxNonOwnedWindowCocoaImpl::SetModified(bool modified)
|
||||
{
|
||||
[m_macWindow setDocumentEdited:modified];
|
||||
}
|
||||
|
||||
bool wxNonOwnedWindowCocoaImpl::GetModified() const
|
||||
{
|
||||
return [m_macWindow isDocumentEdited];
|
||||
}
|
||||
|
||||
wxNonOwnedWindowImpl* wxNonOwnedWindowImpl::CreateNonOwnedWindow( wxNonOwnedWindow* wxpeer, wxWindow* parent, const wxPoint& pos, const wxSize& size,
|
||||
long style, long extraStyle, const wxString& name )
|
||||
{
|
||||
|
@ -186,3 +186,13 @@ bool wxTopLevelWindowMac::IsActive()
|
||||
{
|
||||
return m_nowpeer->IsActive();
|
||||
}
|
||||
|
||||
void wxTopLevelWindowMac::SetModified(bool modified)
|
||||
{
|
||||
m_nowpeer->SetModified(modified);
|
||||
}
|
||||
|
||||
bool wxTopLevelWindowMac::GetModified() const
|
||||
{
|
||||
return m_nowpeer->GetModified();
|
||||
}
|
Loading…
Reference in New Issue
Block a user