OS/2 scrolling support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -33,8 +33,6 @@ enum wxRegionOp { wxRGN_AND // Creates the intersection of the two combi
|
|||||||
|
|
||||||
class WXDLLEXPORT wxRegion : public wxGDIObject
|
class WXDLLEXPORT wxRegion : public wxGDIObject
|
||||||
{
|
{
|
||||||
DECLARE_DYNAMIC_CLASS(wxRegion);
|
|
||||||
friend class WXDLLEXPORT wxRegionIterator;
|
|
||||||
public:
|
public:
|
||||||
wxRegion( wxCoord x
|
wxRegion( wxCoord x
|
||||||
,wxCoord y
|
,wxCoord y
|
||||||
@@ -67,6 +65,10 @@ public:
|
|||||||
//
|
//
|
||||||
void Clear(void);
|
void Clear(void);
|
||||||
|
|
||||||
|
bool Offset( wxCoord x
|
||||||
|
,wxCoord y
|
||||||
|
);
|
||||||
|
|
||||||
//
|
//
|
||||||
// Union rectangle or region with this.
|
// Union rectangle or region with this.
|
||||||
//
|
//
|
||||||
@@ -208,6 +210,14 @@ public:
|
|||||||
//
|
//
|
||||||
WXHRGN GetHRGN(void) const;
|
WXHRGN GetHRGN(void) const;
|
||||||
void SetPS(HPS hPS);
|
void SetPS(HPS hPS);
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual wxObjectRefData* CreateData(void) const;
|
||||||
|
virtual wxObjectRefData* CloneData(wxObjectRefData* pData) const;
|
||||||
|
|
||||||
|
friend class WXDLLEXPORT wxRegionIterator;
|
||||||
|
DECLARE_DYNAMIC_CLASS(wxRegion);
|
||||||
|
|
||||||
}; // end of CLASS wxRegion
|
}; // end of CLASS wxRegion
|
||||||
|
|
||||||
class WXDLLEXPORT wxRegionIterator : public wxObject
|
class WXDLLEXPORT wxRegionIterator : public wxObject
|
||||||
|
@@ -85,8 +85,10 @@ public:
|
|||||||
//
|
//
|
||||||
virtual void AlterChildPos(void); // OS/2 child control positioning
|
virtual void AlterChildPos(void); // OS/2 child control positioning
|
||||||
virtual void UpdateInternalSize( wxWindow* pChild
|
virtual void UpdateInternalSize( wxWindow* pChild
|
||||||
|
,int nWidth
|
||||||
,int nHeight
|
,int nHeight
|
||||||
);
|
);
|
||||||
|
PSWP GetSwpClient(void) { return &m_vSwpClient; }
|
||||||
protected:
|
protected:
|
||||||
//
|
//
|
||||||
// Common part of all ctors
|
// Common part of all ctors
|
||||||
@@ -157,6 +159,7 @@ protected:
|
|||||||
WXHWND m_hFrame;
|
WXHWND m_hFrame;
|
||||||
SWP m_vSwp;
|
SWP m_vSwp;
|
||||||
SWP m_vSwpClient;
|
SWP m_vSwpClient;
|
||||||
|
static bool m_sbInitialized;
|
||||||
}; // end of CLASS wxTopLevelWindowOS2
|
}; // end of CLASS wxTopLevelWindowOS2
|
||||||
|
|
||||||
//
|
//
|
||||||
|
@@ -142,6 +142,8 @@ public:
|
|||||||
,const wxRect* pRect = (wxRect *)NULL
|
,const wxRect* pRect = (wxRect *)NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
|
inline HWND GetScrollBarHorz(void) const {return m_hWndScrollBarHorz;}
|
||||||
|
inline HWND GetScrollBarVert(void) const {return m_hWndScrollBarVert;};
|
||||||
#if wxUSE_DRAG_AND_DROP
|
#if wxUSE_DRAG_AND_DROP
|
||||||
virtual void SetDropTarget(wxDropTarget* pDropTarget);
|
virtual void SetDropTarget(wxDropTarget* pDropTarget);
|
||||||
#endif // wxUSE_DRAG_AND_DROP
|
#endif // wxUSE_DRAG_AND_DROP
|
||||||
@@ -539,6 +541,7 @@ protected:
|
|||||||
#endif // wxUSE_TOOLTIPS
|
#endif // wxUSE_TOOLTIPS
|
||||||
|
|
||||||
int GetOS2ParentHeight(wxWindowOS2* pParent);
|
int GetOS2ParentHeight(wxWindowOS2* pParent);
|
||||||
|
virtual void OS2Layout(int nWidth, int nHeight);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// common part of all ctors
|
// common part of all ctors
|
||||||
@@ -561,9 +564,11 @@ private:
|
|||||||
// the helper functions used by HandleChar/KeyXXX methods
|
// the helper functions used by HandleChar/KeyXXX methods
|
||||||
wxKeyEvent CreateKeyEvent(wxEventType evType, int id, WXLPARAM lp) const;
|
wxKeyEvent CreateKeyEvent(wxEventType evType, int id, WXLPARAM lp) const;
|
||||||
|
|
||||||
|
|
||||||
DECLARE_DYNAMIC_CLASS(wxWindowOS2);
|
DECLARE_DYNAMIC_CLASS(wxWindowOS2);
|
||||||
DECLARE_NO_COPY_CLASS(wxWindowOS2)
|
DECLARE_NO_COPY_CLASS(wxWindowOS2)
|
||||||
DECLARE_EVENT_TABLE()
|
DECLARE_EVENT_TABLE()
|
||||||
|
|
||||||
private:
|
private:
|
||||||
HWND m_hWndScrollBarHorz;
|
HWND m_hWndScrollBarHorz;
|
||||||
HWND m_hWndScrollBarVert;
|
HWND m_hWndScrollBarVert;
|
||||||
|
@@ -127,6 +127,7 @@ public:
|
|||||||
// method updates any internal sizing parameters such as OS/2's SWP struct
|
// method updates any internal sizing parameters such as OS/2's SWP struct
|
||||||
inline virtual void AlterChildPos(void) { }
|
inline virtual void AlterChildPos(void) { }
|
||||||
inline virtual void UpdateInternalSize( wxWindow* WXUNUSED(pChild)
|
inline virtual void UpdateInternalSize( wxWindow* WXUNUSED(pChild)
|
||||||
|
,int WXUNUSED(nWidth)
|
||||||
,int WXUNUSED(nHeight)
|
,int WXUNUSED(nHeight)
|
||||||
) { }
|
) { }
|
||||||
|
|
||||||
|
@@ -845,6 +845,7 @@ protected:
|
|||||||
bool m_themeEnabled;
|
bool m_themeEnabled;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
// common part of all ctors: it is not virtual because it is called from
|
// common part of all ctors: it is not virtual because it is called from
|
||||||
// ctor
|
// ctor
|
||||||
void InitBase();
|
void InitBase();
|
||||||
@@ -935,7 +936,13 @@ protected:
|
|||||||
// a toolbar that it manages itself).
|
// a toolbar that it manages itself).
|
||||||
virtual void AdjustForParentClientOrigin(int& x, int& y, int sizeFlags);
|
virtual void AdjustForParentClientOrigin(int& x, int& y, int sizeFlags);
|
||||||
|
|
||||||
|
#ifdef __WXPM__
|
||||||
|
// extra OS/2 layout processing
|
||||||
|
virtual void OS2Layout(int width, int height) { };
|
||||||
|
#endif
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
// contains the last id generated by NewControlId
|
// contains the last id generated by NewControlId
|
||||||
static int ms_lastControlId;
|
static int ms_lastControlId;
|
||||||
|
|
||||||
|
@@ -162,9 +162,13 @@ void wxTopLevelWindowBase::OnSize(wxSizeEvent& WXUNUSED(event))
|
|||||||
static const int ofs = 0;
|
static const int ofs = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
child->SetSize(ofs, ofs, clientW - 2*ofs, clientH - 2*ofs);
|
|
||||||
#ifdef __WXPM__
|
#ifdef __WXPM__
|
||||||
UpdateInternalSize(child, clientH);
|
// OS/2 PM has to do a LOT of stuff to get things
|
||||||
|
// positioned right, especially if the child is a
|
||||||
|
// scrolled window.
|
||||||
|
UpdateInternalSize(child, clientW, clientH);
|
||||||
|
#else
|
||||||
|
child->SetSize(ofs, ofs, clientW - 2*ofs, clientH - 2*ofs);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1161,6 +1161,9 @@ bool wxWindowBase::Layout()
|
|||||||
GetClientSize(&w, &h);
|
GetClientSize(&w, &h);
|
||||||
|
|
||||||
GetSizer()->SetDimension( 0, 0, w, h );
|
GetSizer()->SetDimension( 0, 0, w, h );
|
||||||
|
#if defined __WXPM__
|
||||||
|
OS2Layout(w, h);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@@ -56,6 +56,7 @@ wxWindowList wxModelessWindows;
|
|||||||
extern void wxAssociateWinWithHandle( HWND hWnd
|
extern void wxAssociateWinWithHandle( HWND hWnd
|
||||||
,wxWindowOS2* pWin
|
,wxWindowOS2* pWin
|
||||||
);
|
);
|
||||||
|
bool wxTopLevelWindowOS2::m_sbInitialized = FALSE;
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// wxTopLevelWindowMSW implementation
|
// wxTopLevelWindowMSW implementation
|
||||||
@@ -515,6 +516,12 @@ void wxTopLevelWindowOS2::AlterChildPos()
|
|||||||
RECTL vRect;
|
RECTL vRect;
|
||||||
SWP vSwp;
|
SWP vSwp;
|
||||||
|
|
||||||
|
if (GetAutoLayout)
|
||||||
|
//
|
||||||
|
// Auto layouts taken care of elsewhere
|
||||||
|
//
|
||||||
|
return;
|
||||||
|
|
||||||
::WinQueryWindowRect(GetHwnd(), &vRect);
|
::WinQueryWindowRect(GetHwnd(), &vRect);
|
||||||
for (wxWindowList::Node* pNode = GetChildren().GetFirst();
|
for (wxWindowList::Node* pNode = GetChildren().GetFirst();
|
||||||
pNode;
|
pNode;
|
||||||
@@ -551,10 +558,92 @@ void wxTopLevelWindowOS2::AlterChildPos()
|
|||||||
|
|
||||||
void wxTopLevelWindowOS2::UpdateInternalSize(
|
void wxTopLevelWindowOS2::UpdateInternalSize(
|
||||||
wxWindow* pChild
|
wxWindow* pChild
|
||||||
, int nHeight
|
, int nChildWidth
|
||||||
|
, int nChildHeight
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
pChild->MoveChildren(m_vSwpClient.cy - nHeight);
|
int nWidthAdjust = 0;
|
||||||
|
int nHeightAdjust = 0;
|
||||||
|
int nPosX;
|
||||||
|
int nPosY;
|
||||||
|
bool bNewYSize = FALSE;
|
||||||
|
bool bNewXSize = FALSE;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Under OS/2, if we have a srolled window as the child, the
|
||||||
|
// scrollbars will be SIBLINGS of the scrolled window. So, in
|
||||||
|
// order to be able to display the scrollbars properly we have to
|
||||||
|
// resize the scrolled window. Of course, that means dealing with
|
||||||
|
// child windows of that window as well, because OS/2 does not
|
||||||
|
// tend to put them in the right place.
|
||||||
|
//
|
||||||
|
if (nChildHeight != m_vSwpClient.cy)
|
||||||
|
bNewYSize = TRUE;
|
||||||
|
if (nChildWidth != m_vSwpClient.cx)
|
||||||
|
bNewXSize = TRUE;
|
||||||
|
if (bNewXSize || bNewYSize)
|
||||||
|
pChild->SetSize( 0
|
||||||
|
,0
|
||||||
|
,nChildWidth
|
||||||
|
,nChildHeight
|
||||||
|
);
|
||||||
|
if(bNewYSize)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
// This is needed SetSize will mess up the OS/2 child window
|
||||||
|
// positioning because we position in wxWindows coordinates,
|
||||||
|
// not OS/2 coordinates.
|
||||||
|
//
|
||||||
|
pChild->MoveChildren(m_vSwpClient.cy - nChildHeight);
|
||||||
|
pChild->Refresh();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pChild->GetScrollBarHorz() != NULLHANDLE ||
|
||||||
|
pChild->GetScrollBarVert() != NULLHANDLE)
|
||||||
|
{
|
||||||
|
if (bNewXSize || bNewYSize)
|
||||||
|
{
|
||||||
|
pChild->GetSize( &nChildWidth
|
||||||
|
,&nChildHeight
|
||||||
|
);
|
||||||
|
if (pChild->GetScrollBarHorz() != NULLHANDLE)
|
||||||
|
nHeightAdjust = 20;
|
||||||
|
if (pChild->GetScrollBarVert() != NULLHANDLE)
|
||||||
|
nWidthAdjust = 20;
|
||||||
|
pChild->GetPosition( &nPosX
|
||||||
|
,&nPosY
|
||||||
|
);
|
||||||
|
::WinSetWindowPos( pChild->GetHWND()
|
||||||
|
,HWND_TOP
|
||||||
|
,nPosX
|
||||||
|
,nPosY + nHeightAdjust
|
||||||
|
,nChildWidth - nWidthAdjust
|
||||||
|
,nChildHeight - nHeightAdjust
|
||||||
|
,SWP_MOVE | SWP_SIZE
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (bNewYSize && !m_sbInitialized)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
// Only need to readjust child control positions of
|
||||||
|
// scrolled windows once on initialization. After that
|
||||||
|
// the sizing takes care of things itself.
|
||||||
|
//
|
||||||
|
pChild->MoveChildren(nHeightAdjust);
|
||||||
|
m_sbInitialized = TRUE;
|
||||||
|
}
|
||||||
|
if (bNewXSize || bNewYSize)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
// Always refresh to keep scollbars visible. They are
|
||||||
|
// children of the Toplevel window, not the child panel.
|
||||||
|
//
|
||||||
|
pChild->Refresh();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//
|
||||||
|
// This brings the internal "last size" up to date.
|
||||||
|
//
|
||||||
::WinQueryWindowPos(GetHwnd(), &m_vSwpClient);
|
::WinQueryWindowPos(GetHwnd(), &m_vSwpClient);
|
||||||
} // end of wxTopLevelWindowOS2::UpdateInternalSize
|
} // end of wxTopLevelWindowOS2::UpdateInternalSize
|
||||||
|
|
||||||
|
@@ -759,16 +759,37 @@ void wxWindowOS2::SetScrollbar(
|
|||||||
, bool WXUNUSED(bRefresh)
|
, bool WXUNUSED(bRefresh)
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
HWND hWnd = GetHwnd();
|
||||||
int nOldRange = nRange - nThumbVisible;
|
int nOldRange = nRange - nThumbVisible;
|
||||||
int nRange1 = nOldRange;
|
int nRange1 = nOldRange;
|
||||||
int nPageSize = nThumbVisible;
|
int nPageSize = nThumbVisible;
|
||||||
SBCDATA vInfo;
|
|
||||||
HWND hWnd = GetHwnd();
|
|
||||||
ULONG ulStyle = WS_VISIBLE;
|
|
||||||
RECTL vRect;
|
|
||||||
SWP vSwp;
|
|
||||||
|
|
||||||
::WinQueryWindowRect(hWnd, &vRect);
|
SBCDATA vInfo;
|
||||||
|
ULONG ulStyle = WS_VISIBLE | WS_SYNCPAINT;
|
||||||
|
SWP vSwp;
|
||||||
|
RECTL vRect;
|
||||||
|
HWND hWndParent;
|
||||||
|
HWND hWndClient;
|
||||||
|
wxWindow* pParent = GetParent();
|
||||||
|
|
||||||
|
if (pParent && pParent->IsKindOf(CLASSINFO(wxFrame)))
|
||||||
|
{
|
||||||
|
wxFrame* pFrame;
|
||||||
|
|
||||||
|
pFrame = wxDynamicCast(pParent, wxFrame);
|
||||||
|
hWndParent = pFrame->GetFrame();
|
||||||
|
hWndClient = GetHwndOf(pParent);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (pParent)
|
||||||
|
hWndParent = GetHwndOf(pParent);
|
||||||
|
else
|
||||||
|
hWndParent = GetHwnd();
|
||||||
|
hWndClient = hWndParent;
|
||||||
|
}
|
||||||
|
::WinQueryWindowPos(hWndClient, &vSwp);
|
||||||
|
|
||||||
if (nPageSize > 1 && nRange > 0)
|
if (nPageSize > 1 && nRange > 0)
|
||||||
{
|
{
|
||||||
nRange1 += (nPageSize - 1);
|
nRange1 += (nPageSize - 1);
|
||||||
@@ -784,13 +805,13 @@ void wxWindowOS2::SetScrollbar(
|
|||||||
ulStyle |= SBS_HORZ;
|
ulStyle |= SBS_HORZ;
|
||||||
if (m_hWndScrollBarHorz == 0L)
|
if (m_hWndScrollBarHorz == 0L)
|
||||||
{
|
{
|
||||||
m_hWndScrollBarHorz = ::WinCreateWindow( hWnd
|
m_hWndScrollBarHorz = ::WinCreateWindow( hWndParent
|
||||||
,WC_SCROLLBAR
|
,WC_SCROLLBAR
|
||||||
,(PSZ)NULL
|
,(PSZ)NULL
|
||||||
,ulStyle
|
,ulStyle
|
||||||
,vRect.xLeft
|
,vSwp.x
|
||||||
,vRect.yBottom
|
,vSwp.y
|
||||||
,vRect.xRight - vRect.xLeft - 20
|
,vSwp.cx - 20
|
||||||
,20
|
,20
|
||||||
,hWnd
|
,hWnd
|
||||||
,HWND_TOP
|
,HWND_TOP
|
||||||
@@ -800,33 +821,27 @@ void wxWindowOS2::SetScrollbar(
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
|
||||||
RECTL vRect2;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Only want to resize the scrollbar if it changes, otherwise
|
|
||||||
// we'd probably end up in a recursive loop until we crash the call stack
|
|
||||||
// because this method is called in a ScrolledWindow OnSize event and SWP_MOVE | SWP_SIZE
|
|
||||||
// generates those events.
|
|
||||||
//
|
|
||||||
::WinQueryWindowRect(m_hWndScrollBarHorz, &vRect2);
|
|
||||||
if (!(vRect2.xLeft == vRect.xLeft &&
|
|
||||||
vRect2.xRight == vRect.xRight &&
|
|
||||||
vRect2.yBottom == vRect.yBottom &&
|
|
||||||
vRect2.yTop == vRect.yTop
|
|
||||||
) )
|
|
||||||
{
|
{
|
||||||
::WinSetWindowPos( m_hWndScrollBarHorz
|
::WinSetWindowPos( m_hWndScrollBarHorz
|
||||||
,HWND_TOP
|
,HWND_TOP
|
||||||
,vRect.xLeft
|
,vSwp.x
|
||||||
,vRect.yBottom
|
,vSwp.y
|
||||||
,vRect.xRight - vRect.xLeft - 20
|
,vSwp.cx - 20
|
||||||
,20
|
,20
|
||||||
,SWP_ACTIVATE | SWP_MOVE | SWP_SIZE | SWP_SHOW
|
,SWP_MOVE | SWP_SIZE | SWP_SHOW | SWP_ACTIVATE | SWP_ZORDER
|
||||||
|
);
|
||||||
|
::WinSendMsg( m_hWndScrollBarHorz
|
||||||
|
,SBM_SETSCROLLBAR
|
||||||
|
,(MPARAM)nPos
|
||||||
|
,MPFROM2SHORT(0, (SHORT)nRange1)
|
||||||
|
);
|
||||||
|
::WinSendMsg( m_hWndScrollBarHorz
|
||||||
|
,SBM_SETTHUMBSIZE
|
||||||
|
,MPFROM2SHORT( (SHORT)nThumbVisible
|
||||||
|
,(SHORT)nRange1
|
||||||
|
)
|
||||||
|
,(MPARAM)0
|
||||||
);
|
);
|
||||||
}
|
|
||||||
::WinSendMsg(m_hWndScrollBarHorz, SBM_SETSCROLLBAR, (MPARAM)nPos, MPFROM2SHORT(0, (SHORT)nRange1));
|
|
||||||
::WinSendMsg(m_hWndScrollBarHorz, SBM_SETTHUMBSIZE, MPFROM2SHORT((SHORT)nThumbVisible, (SHORT)nRange1), (MPARAM)0);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -834,14 +849,14 @@ void wxWindowOS2::SetScrollbar(
|
|||||||
ulStyle |= SBS_VERT;
|
ulStyle |= SBS_VERT;
|
||||||
if (m_hWndScrollBarVert == 0L)
|
if (m_hWndScrollBarVert == 0L)
|
||||||
{
|
{
|
||||||
m_hWndScrollBarVert = ::WinCreateWindow( hWnd
|
m_hWndScrollBarVert = ::WinCreateWindow( hWndParent
|
||||||
,WC_SCROLLBAR
|
,WC_SCROLLBAR
|
||||||
,(PSZ)NULL
|
,(PSZ)NULL
|
||||||
,ulStyle
|
,ulStyle
|
||||||
,vRect.xRight - 20
|
,vSwp.x + vSwp.cx - 20
|
||||||
,vRect.yBottom + 20
|
,vSwp.y + 20
|
||||||
,20
|
,20
|
||||||
,vRect.yTop - (vRect.yBottom + 20)
|
,vSwp.cy - 20
|
||||||
,hWnd
|
,hWnd
|
||||||
,HWND_TOP
|
,HWND_TOP
|
||||||
,60001
|
,60001
|
||||||
@@ -850,33 +865,27 @@ void wxWindowOS2::SetScrollbar(
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
|
||||||
RECTL vRect2;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Only want to resize the scrollbar if it changes, otherwise
|
|
||||||
// we'd probably end up in a recursive loop until we crash the call stack
|
|
||||||
// because this method is called in a ScrolledWindow OnSize event and SWP_MOVE | SWP_SIZE
|
|
||||||
// generates those events.
|
|
||||||
//
|
|
||||||
::WinQueryWindowRect(m_hWndScrollBarVert, &vRect2);
|
|
||||||
if (!(vRect2.xLeft == vRect.xLeft &&
|
|
||||||
vRect2.xRight == vRect.xRight &&
|
|
||||||
vRect2.yBottom == vRect.yBottom &&
|
|
||||||
vRect2.yTop == vRect.yTop
|
|
||||||
) )
|
|
||||||
{
|
{
|
||||||
::WinSetWindowPos( m_hWndScrollBarVert
|
::WinSetWindowPos( m_hWndScrollBarVert
|
||||||
,HWND_TOP
|
,HWND_TOP
|
||||||
,vRect.xRight - 20
|
,vSwp.x + vSwp.cx - 20
|
||||||
,vRect.yBottom + 20
|
,vSwp.y + 20
|
||||||
,20
|
,20
|
||||||
,vRect.yTop - (vRect.yBottom + 20)
|
,vSwp.cy - 20
|
||||||
,SWP_ACTIVATE | SWP_MOVE | SWP_SIZE | SWP_SHOW
|
,SWP_ACTIVATE | SWP_MOVE | SWP_SIZE | SWP_SHOW
|
||||||
);
|
);
|
||||||
}
|
::WinSendMsg( m_hWndScrollBarVert
|
||||||
::WinSendMsg(m_hWndScrollBarVert, SBM_SETSCROLLBAR, (MPARAM)nPos, MPFROM2SHORT(0, (SHORT)nRange1));
|
,SBM_SETSCROLLBAR
|
||||||
::WinSendMsg(m_hWndScrollBarVert, SBM_SETTHUMBSIZE, MPFROM2SHORT((SHORT)nThumbVisible, (SHORT)nRange1), (MPARAM)0);
|
,(MPARAM)nPos
|
||||||
|
,MPFROM2SHORT(0, (SHORT)nRange1)
|
||||||
|
);
|
||||||
|
::WinSendMsg( m_hWndScrollBarVert
|
||||||
|
,SBM_SETTHUMBSIZE
|
||||||
|
,MPFROM2SHORT( (SHORT)nThumbVisible
|
||||||
|
,(SHORT)nRange1
|
||||||
|
)
|
||||||
|
,(MPARAM)0
|
||||||
|
);
|
||||||
}
|
}
|
||||||
m_nYThumbSize = nThumbVisible;
|
m_nYThumbSize = nThumbVisible;
|
||||||
}
|
}
|
||||||
@@ -888,7 +897,6 @@ void wxWindowOS2::ScrollWindow(
|
|||||||
, const wxRect* pRect
|
, const wxRect* pRect
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
nDy *= -1; // flip the sign of Dy as OS/2 is opposite Windows.
|
|
||||||
RECTL vRect;
|
RECTL vRect;
|
||||||
RECTL vRectHorz;
|
RECTL vRectHorz;
|
||||||
RECTL vRectVert;
|
RECTL vRectVert;
|
||||||
@@ -904,116 +912,17 @@ void wxWindowOS2::ScrollWindow(
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
::WinQueryWindowRect(GetHwnd(), &vRect);
|
::WinQueryWindowRect(GetHwnd(), &vRect);
|
||||||
::WinQueryWindowRect(m_hWndScrollBarHorz, &vRectHorz);
|
|
||||||
vRect.yBottom += vRectHorz.yTop - vRectHorz.yBottom;
|
|
||||||
::WinQueryWindowRect(m_hWndScrollBarVert, &vRectVert);
|
|
||||||
vRect.xRight -= vRectVert.xRight - vRectVert.xLeft;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
nDy *= -1; // flip the sign of Dy as OS/2 is opposite Windows.
|
||||||
::WinScrollWindow( GetHwnd()
|
::WinScrollWindow( GetHwnd()
|
||||||
,(LONG)nDx
|
,(LONG)nDx
|
||||||
,(LONG)nDy
|
,(LONG)nDy
|
||||||
,&vRect
|
,&vRect
|
||||||
,NULL
|
,&vRect
|
||||||
,NULLHANDLE
|
,NULLHANDLE
|
||||||
,NULL
|
,NULL
|
||||||
,SW_INVALIDATERGN
|
,SW_SCROLLCHILDREN | SW_INVALIDATERGN
|
||||||
);
|
);
|
||||||
//
|
|
||||||
// Move the children
|
|
||||||
//
|
|
||||||
wxWindowList::Node* pCurrent = GetChildren().GetFirst();
|
|
||||||
SWP vSwp;
|
|
||||||
|
|
||||||
while (pCurrent)
|
|
||||||
{
|
|
||||||
wxWindow* pChildWin = pCurrent->GetData();
|
|
||||||
|
|
||||||
if (pChildWin->GetHWND() != NULLHANDLE)
|
|
||||||
{
|
|
||||||
::WinQueryWindowPos(pChildWin->GetHWND(), &vSwp);
|
|
||||||
::WinQueryWindowRect(pChildWin->GetHWND(), &vRect);
|
|
||||||
if (pChildWin->IsKindOf(CLASSINFO(wxControl)))
|
|
||||||
{
|
|
||||||
wxControl* pCtrl;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Must deal with controls that have margins like ENTRYFIELD. The SWP
|
|
||||||
// struct of such a control will have and origin offset from its intended
|
|
||||||
// position by the width of the margins.
|
|
||||||
//
|
|
||||||
pCtrl = wxDynamicCast(pChildWin, wxControl);
|
|
||||||
vSwp.y -= pCtrl->GetYComp();
|
|
||||||
vSwp.x -= pCtrl->GetXComp();
|
|
||||||
}
|
|
||||||
::WinSetWindowPos( pChildWin->GetHWND()
|
|
||||||
,HWND_BOTTOM
|
|
||||||
,vSwp.x + nDx
|
|
||||||
,vSwp.y + nDy
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,SWP_MOVE
|
|
||||||
);
|
|
||||||
if (pChildWin->IsKindOf(CLASSINFO(wxRadioBox)))
|
|
||||||
{
|
|
||||||
wxRadioBox* pRadioBox;
|
|
||||||
|
|
||||||
pRadioBox = wxDynamicCast(pChildWin, wxRadioBox);
|
|
||||||
pRadioBox->AdjustButtons( (int)vSwp.x + nDx
|
|
||||||
,(int)vSwp.y + nDy
|
|
||||||
,(int)vSwp.cx
|
|
||||||
,(int)vSwp.cy
|
|
||||||
,pRadioBox->GetSizeFlags()
|
|
||||||
);
|
|
||||||
}
|
|
||||||
if (pChildWin->IsKindOf(CLASSINFO(wxSlider)))
|
|
||||||
{
|
|
||||||
wxSlider* pSlider;
|
|
||||||
|
|
||||||
pSlider = wxDynamicCast(pChildWin, wxSlider);
|
|
||||||
pSlider->AdjustSubControls( (int)vSwp.x + nDx
|
|
||||||
,(int)vSwp.y + nDy
|
|
||||||
,(int)vSwp.cx
|
|
||||||
,(int)vSwp.cy
|
|
||||||
,pSlider->GetSizeFlags()
|
|
||||||
);
|
|
||||||
}
|
|
||||||
::WinInvalidateRect(pChildWin->GetHWND(), &vRectChild, FALSE);
|
|
||||||
}
|
|
||||||
pCurrent = pCurrent->GetNext();
|
|
||||||
}
|
|
||||||
if (GetChildren().GetCount() > 0)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
// Clean up child window slop
|
|
||||||
//
|
|
||||||
::WinQueryWindowRect(GetHwnd(), &vRect);
|
|
||||||
vRect.xRight -= 20;
|
|
||||||
vRect.yBottom += 20;
|
|
||||||
::WinInvalidateRect(GetHwnd(), &vRect, TRUE);
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// Takes a lot to keep the scrollbars on top of everything
|
|
||||||
//
|
|
||||||
::WinSetWindowPos( m_hWndScrollBarHorz
|
|
||||||
,HWND_TOP
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,SWP_ZORDER
|
|
||||||
);
|
|
||||||
::WinSetWindowPos( m_hWndScrollBarVert
|
|
||||||
,HWND_TOP
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,SWP_ZORDER
|
|
||||||
);
|
|
||||||
::WinInvalidateRect(m_hWndScrollBarHorz, &vRectHorz, FALSE);
|
|
||||||
::WinInvalidateRect(m_hWndScrollBarVert, &vRectVert, FALSE);
|
|
||||||
} // end of wxWindowOS2::ScrollWindow
|
} // end of wxWindowOS2::ScrollWindow
|
||||||
|
|
||||||
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
||||||
@@ -1343,6 +1252,10 @@ void wxWindowOS2::Refresh(
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
::WinInvalidateRect(hWnd, NULL, bEraseBack);
|
::WinInvalidateRect(hWnd, NULL, bEraseBack);
|
||||||
|
if (m_hWndScrollBarHorz != NULLHANDLE)
|
||||||
|
::WinInvalidateRect(m_hWndScrollBarHorz, NULL, TRUE);
|
||||||
|
if (m_hWndScrollBarVert != NULLHANDLE)
|
||||||
|
::WinInvalidateRect(m_hWndScrollBarVert, NULL, TRUE);
|
||||||
}
|
}
|
||||||
} // end of wxWindowOS2::Refresh
|
} // end of wxWindowOS2::Refresh
|
||||||
|
|
||||||
@@ -2384,7 +2297,18 @@ MRESULT EXPENTRY wxWndProc(
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (pWnd)
|
if (pWnd)
|
||||||
|
{
|
||||||
rc = pWnd->OS2WindowProc(ulMsg, wParam, lParam);
|
rc = pWnd->OS2WindowProc(ulMsg, wParam, lParam);
|
||||||
|
if ( (pWnd->GetScrollBarHorz() != NULLHANDLE ||
|
||||||
|
pWnd->GetScrollBarVert() != NULLHANDLE) &&
|
||||||
|
ulMsg == WM_PAINT)
|
||||||
|
{
|
||||||
|
if (pWnd->GetScrollBarHorz() != NULLHANDLE)
|
||||||
|
::WinInvalidateRect(pWnd->GetScrollBarHorz(), NULL, TRUE);
|
||||||
|
if (pWnd->GetScrollBarVert() != NULLHANDLE)
|
||||||
|
::WinInvalidateRect(pWnd->GetScrollBarVert(), NULL, TRUE);
|
||||||
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
rc = ::WinDefWindowProc(hWnd, ulMsg, wParam, lParam);
|
rc = ::WinDefWindowProc(hWnd, ulMsg, wParam, lParam);
|
||||||
}
|
}
|
||||||
@@ -4118,68 +4042,6 @@ void wxWindowOS2::MoveChildren(
|
|||||||
,(int)pSlider->GetSizeFlags()
|
,(int)pSlider->GetSizeFlags()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
//
|
|
||||||
// Originally created before Panel was properly sized, most likely.
|
|
||||||
// So now the the panel is sized correctly, resize the scrollbars
|
|
||||||
// and bring them to the top of all the other panel children
|
|
||||||
//
|
|
||||||
if (m_hWndScrollBarVert != NULLHANDLE ||
|
|
||||||
m_hWndScrollBarHorz != NULLHANDLE)
|
|
||||||
{
|
|
||||||
RECTL vRect;
|
|
||||||
|
|
||||||
::WinQueryWindowRect(GetHwnd(), &vRect);
|
|
||||||
::WinQueryWindowPos(m_hWndScrollBarHorz, &vSwp);
|
|
||||||
if ( (vRect.xRight - vRect.xLeft) - vSwp.cx != 20)
|
|
||||||
{
|
|
||||||
::WinSetWindowPos( m_hWndScrollBarHorz
|
|
||||||
,HWND_TOP
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,(vRect.xRight - vRect.xLeft) - 20
|
|
||||||
,vSwp.cy
|
|
||||||
,SWP_ZORDER | SWP_SIZE
|
|
||||||
);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
::WinSetWindowPos( m_hWndScrollBarHorz
|
|
||||||
,HWND_TOP
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,SWP_ZORDER
|
|
||||||
);
|
|
||||||
}
|
|
||||||
::WinQueryWindowPos(m_hWndScrollBarVert, &vSwp);
|
|
||||||
if ( (vRect.yTop - vRect.yBottom) - vSwp.cy != 20)
|
|
||||||
{
|
|
||||||
::WinSetWindowPos( m_hWndScrollBarVert
|
|
||||||
,HWND_TOP
|
|
||||||
,vSwp.x
|
|
||||||
,vSwp.y + 20
|
|
||||||
,vSwp.cx
|
|
||||||
,(vRect.yTop - vRect.yBottom) - 20
|
|
||||||
,SWP_ZORDER | SWP_SIZE | SWP_MOVE
|
|
||||||
);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
::WinSetWindowPos( m_hWndScrollBarVert
|
|
||||||
,HWND_TOP
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,0
|
|
||||||
,SWP_ZORDER
|
|
||||||
);
|
|
||||||
}
|
|
||||||
::WinQueryWindowRect(m_hWndScrollBarHorz, &vRect);
|
|
||||||
::WinInvalidateRect(m_hWndScrollBarHorz, &vRect, FALSE);
|
|
||||||
::WinQueryWindowRect(m_hWndScrollBarVert, &vRect);
|
|
||||||
::WinInvalidateRect(m_hWndScrollBarVert, &vRect, FALSE);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} // end of wxWindowOS2::MoveChildren
|
} // end of wxWindowOS2::MoveChildren
|
||||||
|
|
||||||
@@ -4276,6 +4138,115 @@ int wxWindowOS2::GetOS2ParentHeight(
|
|||||||
return(0L);
|
return(0L);
|
||||||
} // end of wxWindowOS2::GetOS2ParentHeight
|
} // end of wxWindowOS2::GetOS2ParentHeight
|
||||||
|
|
||||||
|
//
|
||||||
|
// OS/2 needs a lot extra manipulation to deal with layouts
|
||||||
|
// for canvas windows, particularly scrolled ones.
|
||||||
|
//
|
||||||
|
void wxWindowOS2::OS2Layout(
|
||||||
|
int nWidth
|
||||||
|
, int nHeight
|
||||||
|
)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
// Frames laying out canvas windows need the held.
|
||||||
|
// Dialogs or Frames laying out child controls do not.
|
||||||
|
//
|
||||||
|
if (IsKindOf(CLASSINFO(wxFrame)))
|
||||||
|
{
|
||||||
|
RECTL vRectFrame;
|
||||||
|
RECTL vRectClient;
|
||||||
|
RECTL vRectChild;
|
||||||
|
RECTL vRectHorz;
|
||||||
|
RECTL vRectVert;
|
||||||
|
SWP vSwpFrame;
|
||||||
|
SWP vSwpClient;
|
||||||
|
SWP vSwpChild;
|
||||||
|
SWP vSwpHorz;
|
||||||
|
SWP vSwpVert;
|
||||||
|
wxFrame* pFrame = wxDynamicCast(this, wxFrame);
|
||||||
|
bool bNewYSize = FALSE;
|
||||||
|
bool bNewXSize = FALSE;
|
||||||
|
|
||||||
|
::WinQueryWindowPos(pFrame->GetFrame(), &vSwpFrame);
|
||||||
|
::WinQueryWindowPos(GetHwnd(), &vSwpClient);
|
||||||
|
|
||||||
|
if (vSwpClient.cy != pFrame->GetSwpClient()->cy)
|
||||||
|
bNewYSize = TRUE;
|
||||||
|
if (vSwpClient.cx != pFrame->GetSwpClient()->cx)
|
||||||
|
bNewXSize = TRUE;
|
||||||
|
|
||||||
|
for (wxWindowList::Node* pNode = GetChildren().GetFirst();
|
||||||
|
pNode;
|
||||||
|
pNode = pNode->GetNext())
|
||||||
|
{
|
||||||
|
wxWindow* pChild = pNode->GetData();
|
||||||
|
int nWidthAdjust = 0;
|
||||||
|
int nHeightAdjust = 0;
|
||||||
|
|
||||||
|
if ( pChild->IsKindOf(CLASSINFO(wxGenericScrolledWindow)) ||
|
||||||
|
pChild->IsKindOf(CLASSINFO(wxScrolledWindow))
|
||||||
|
)
|
||||||
|
{
|
||||||
|
if(bNewYSize)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
// This is needed SetSize will mess up the OS/2 child window
|
||||||
|
// positioning because we position in wxWindows coordinates,
|
||||||
|
// not OS/2 coordinates.
|
||||||
|
//
|
||||||
|
pChild->MoveChildren(pFrame->GetSwpClient()->cy - vSwpClient.cy);
|
||||||
|
pChild->Refresh();
|
||||||
|
}
|
||||||
|
::WinQueryWindowPos(pChild->GetHWND(), &vSwpChild);
|
||||||
|
|
||||||
|
//
|
||||||
|
// Reset the child window size to account for scrollbars
|
||||||
|
//
|
||||||
|
if (pChild->GetScrollBarHorz() != NULLHANDLE)
|
||||||
|
nHeightAdjust = 20;
|
||||||
|
if (pChild->GetScrollBarVert() != NULLHANDLE)
|
||||||
|
nWidthAdjust = 20;
|
||||||
|
::WinSetWindowPos( pChild->GetHWND()
|
||||||
|
,HWND_TOP
|
||||||
|
,vSwpChild.x
|
||||||
|
,vSwpChild.y + nHeightAdjust
|
||||||
|
,vSwpChild.cx - nWidthAdjust
|
||||||
|
,vSwpChild.cy - nHeightAdjust
|
||||||
|
,SWP_MOVE | SWP_SIZE
|
||||||
|
);
|
||||||
|
|
||||||
|
//
|
||||||
|
// Reset the scrollbar sizes...they will be all messed up after
|
||||||
|
// auto layouts
|
||||||
|
//
|
||||||
|
if (pChild->GetScrollBarHorz() != NULLHANDLE)
|
||||||
|
{
|
||||||
|
::WinSetWindowPos( pChild->GetScrollBarHorz()
|
||||||
|
,HWND_TOP
|
||||||
|
,vSwpClient.x + vSwpChild.x
|
||||||
|
,vSwpClient.y + vSwpChild.y
|
||||||
|
,vSwpChild.cx - 20
|
||||||
|
,20
|
||||||
|
,SWP_MOVE | SWP_SIZE | SWP_SHOW | SWP_ACTIVATE | SWP_ZORDER
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (pChild->GetScrollBarVert() != NULLHANDLE)
|
||||||
|
{
|
||||||
|
::WinSetWindowPos( pChild->GetScrollBarVert()
|
||||||
|
,HWND_TOP
|
||||||
|
,vSwpClient.x + vSwpChild.x + vSwpChild.cx - 20
|
||||||
|
,vSwpClient.y + vSwpChild.y + 20
|
||||||
|
,20
|
||||||
|
,vSwpChild.cy - 20
|
||||||
|
,SWP_MOVE | SWP_SIZE | SWP_SHOW | SWP_ACTIVATE | SWP_ZORDER
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
::WinQueryWindowPos(GetHwnd(), pFrame->GetSwpClient());
|
||||||
|
}
|
||||||
|
} // end of wxWindowOS2::OS2Layout
|
||||||
|
|
||||||
wxWindowCreationHook::wxWindowCreationHook(
|
wxWindowCreationHook::wxWindowCreationHook(
|
||||||
wxWindow* pWinBeingCreated
|
wxWindow* pWinBeingCreated
|
||||||
)
|
)
|
||||||
|
@@ -4,7 +4,7 @@ DATA MULTIPLE NONSHARED READWRITE LOADONCALL
|
|||||||
CODE LOADONCALL
|
CODE LOADONCALL
|
||||||
|
|
||||||
EXPORTS
|
EXPORTS
|
||||||
;From library: H:\DEV\WX2\WXWINDOWS\LIB\wx.lib
|
;From library: F:\DEV\WX2\WXWINDOWS\LIB\wx.lib
|
||||||
;From object file: dummy.cpp
|
;From object file: dummy.cpp
|
||||||
;PUBDEFs (Symbols available from object file):
|
;PUBDEFs (Symbols available from object file):
|
||||||
wxDummyChar
|
wxDummyChar
|
||||||
@@ -1772,7 +1772,7 @@ EXPORTS
|
|||||||
wxEVT_NC_LEFT_DCLICK
|
wxEVT_NC_LEFT_DCLICK
|
||||||
wxEVT_INIT_DIALOG
|
wxEVT_INIT_DIALOG
|
||||||
wxEVT_COMMAND_SET_FOCUS
|
wxEVT_COMMAND_SET_FOCUS
|
||||||
;From object file: H:\DEV\WX2\WXWINDOWS\src\common\extended.c
|
;From object file: F:\DEV\WX2\WXWINDOWS\src\common\extended.c
|
||||||
;PUBDEFs (Symbols available from object file):
|
;PUBDEFs (Symbols available from object file):
|
||||||
ConvertToIeeeExtended
|
ConvertToIeeeExtended
|
||||||
ConvertFromIeeeExtended
|
ConvertFromIeeeExtended
|
||||||
@@ -2167,12 +2167,10 @@ EXPORTS
|
|||||||
ms_root__16wxLocalFSHandler
|
ms_root__16wxLocalFSHandler
|
||||||
;wxFileSystemHandler::GetMimeTypeFromExt(const wxString&)
|
;wxFileSystemHandler::GetMimeTypeFromExt(const wxString&)
|
||||||
GetMimeTypeFromExt__19wxFileSystemHandlerFRC8wxString
|
GetMimeTypeFromExt__19wxFileSystemHandlerFRC8wxString
|
||||||
;wxFSFile::sm_classwxFSFile
|
|
||||||
sm_classwxFSFile__8wxFSFile
|
|
||||||
;wxFileSystemModule::sm_classwxFileSystemModule
|
|
||||||
sm_classwxFileSystemModule__18wxFileSystemModule
|
|
||||||
;wxFileSystem::m_Handlers
|
;wxFileSystem::m_Handlers
|
||||||
m_Handlers__12wxFileSystem
|
m_Handlers__12wxFileSystem
|
||||||
|
;wxFileSystemModule::sm_classwxFileSystemModule
|
||||||
|
sm_classwxFileSystemModule__18wxFileSystemModule
|
||||||
;wxFileSystemHandler::FindNext()
|
;wxFileSystemHandler::FindNext()
|
||||||
FindNext__19wxFileSystemHandlerFv
|
FindNext__19wxFileSystemHandlerFv
|
||||||
;wxFileSystem::CleanUpHandlers()
|
;wxFileSystem::CleanUpHandlers()
|
||||||
@@ -2774,8 +2772,8 @@ EXPORTS
|
|||||||
CopyHashTable__17_wxHashTableBase2FPP21_wxHashTable_NodeBaseUiP17_wxHashTableBase2T1PFP17_wxHashTableBase2P21_wxHashTable_NodeBase_UlPFP21_wxHashTable_NodeBase_P21_wxHashTable_NodeBase
|
CopyHashTable__17_wxHashTableBase2FPP21_wxHashTable_NodeBaseUiP17_wxHashTableBase2T1PFP17_wxHashTableBase2P21_wxHashTable_NodeBase_UlPFP21_wxHashTable_NodeBase_P21_wxHashTable_NodeBase
|
||||||
;wxStringHash::wxCharStringHash(const char*)
|
;wxStringHash::wxCharStringHash(const char*)
|
||||||
wxCharStringHash__12wxStringHashFPCc
|
wxCharStringHash__12wxStringHashFPCc
|
||||||
;_wxHashTableBase2::s_primes
|
;_wxHashTableBase2::ms_primes
|
||||||
s_primes__17_wxHashTableBase2
|
ms_primes__17_wxHashTableBase2
|
||||||
;_wxHashTableBase2::DummyProcessNode(_wxHashTable_NodeBase*)
|
;_wxHashTableBase2::DummyProcessNode(_wxHashTable_NodeBase*)
|
||||||
DummyProcessNode__17_wxHashTableBase2FP21_wxHashTable_NodeBase
|
DummyProcessNode__17_wxHashTableBase2FP21_wxHashTable_NodeBase
|
||||||
;_wxHashTableBase2::DeleteNodes(unsigned int,_wxHashTable_NodeBase**,void(*)(_wxHashTable_NodeBase*))
|
;_wxHashTableBase2::DeleteNodes(unsigned int,_wxHashTable_NodeBase**,void(*)(_wxHashTable_NodeBase*))
|
||||||
@@ -5797,7 +5795,7 @@ EXPORTS
|
|||||||
Read32__17wxTextInputStreamFv
|
Read32__17wxTextInputStreamFv
|
||||||
;wxTextInputStream::SkipIfEndOfLine(char)
|
;wxTextInputStream::SkipIfEndOfLine(char)
|
||||||
SkipIfEndOfLine__17wxTextInputStreamFc
|
SkipIfEndOfLine__17wxTextInputStreamFc
|
||||||
;From object file: H:\DEV\WX2\WXWINDOWS\src\common\unzip.c
|
;From object file: F:\DEV\WX2\WXWINDOWS\src\common\unzip.c
|
||||||
;PUBDEFs (Symbols available from object file):
|
;PUBDEFs (Symbols available from object file):
|
||||||
unzReadCurrentFile
|
unzReadCurrentFile
|
||||||
unzGetCurrentFileInfo
|
unzGetCurrentFileInfo
|
||||||
@@ -14332,6 +14330,8 @@ EXPORTS
|
|||||||
CreateFrame__19wxTopLevelWindowOS2FRC8wxStringRC7wxPointRC6wxSize
|
CreateFrame__19wxTopLevelWindowOS2FRC8wxStringRC7wxPointRC6wxSize
|
||||||
;wxTopLevelWindowOS2::~wxTopLevelWindowOS2()
|
;wxTopLevelWindowOS2::~wxTopLevelWindowOS2()
|
||||||
__dt__19wxTopLevelWindowOS2Fv
|
__dt__19wxTopLevelWindowOS2Fv
|
||||||
|
;wxTopLevelWindowOS2::UpdateInternalSize(wxWindow*,int,int)
|
||||||
|
UpdateInternalSize__19wxTopLevelWindowOS2FP8wxWindowiT2
|
||||||
;wxTopLevelWindowOS2::ShowFullScreen(unsigned long,long)
|
;wxTopLevelWindowOS2::ShowFullScreen(unsigned long,long)
|
||||||
ShowFullScreen__19wxTopLevelWindowOS2FUll
|
ShowFullScreen__19wxTopLevelWindowOS2FUll
|
||||||
;wxTopLevelWindowOS2::CreateDialog(unsigned long,const wxString&,const wxPoint&,const wxSize&)
|
;wxTopLevelWindowOS2::CreateDialog(unsigned long,const wxString&,const wxPoint&,const wxSize&)
|
||||||
@@ -14340,6 +14340,8 @@ EXPORTS
|
|||||||
DoShowWindow__19wxTopLevelWindowOS2Fi
|
DoShowWindow__19wxTopLevelWindowOS2Fi
|
||||||
;wxTopLevelWindowOS2::Init()
|
;wxTopLevelWindowOS2::Init()
|
||||||
Init__19wxTopLevelWindowOS2Fv
|
Init__19wxTopLevelWindowOS2Fv
|
||||||
|
;wxTopLevelWindowOS2::m_sbInitialized
|
||||||
|
m_sbInitialized__19wxTopLevelWindowOS2
|
||||||
;wxTopLevelWindowOS2::OS2GetCreateWindowFlags(long*) const
|
;wxTopLevelWindowOS2::OS2GetCreateWindowFlags(long*) const
|
||||||
OS2GetCreateWindowFlags__19wxTopLevelWindowOS2CFPl
|
OS2GetCreateWindowFlags__19wxTopLevelWindowOS2CFPl
|
||||||
;wxTopLevelWindowOS2::Iconize(unsigned long)
|
;wxTopLevelWindowOS2::Iconize(unsigned long)
|
||||||
@@ -14358,8 +14360,6 @@ EXPORTS
|
|||||||
Maximize__19wxTopLevelWindowOS2FUl
|
Maximize__19wxTopLevelWindowOS2FUl
|
||||||
;wxTopLevelWindowOS2::EnableCloseButton(unsigned long)
|
;wxTopLevelWindowOS2::EnableCloseButton(unsigned long)
|
||||||
EnableCloseButton__19wxTopLevelWindowOS2FUl
|
EnableCloseButton__19wxTopLevelWindowOS2FUl
|
||||||
;wxTopLevelWindowOS2::UpdateInternalSize(wxWindow*,int)
|
|
||||||
UpdateInternalSize__19wxTopLevelWindowOS2FP8wxWindowi
|
|
||||||
;wxTopLevelWindowOS2::DoGetClientSize(int*,int*) const
|
;wxTopLevelWindowOS2::DoGetClientSize(int*,int*) const
|
||||||
DoGetClientSize__19wxTopLevelWindowOS2CFPiT1
|
DoGetClientSize__19wxTopLevelWindowOS2CFPiT1
|
||||||
;wxTopLevelWindowOS2::Create(wxWindow*,int,const wxString&,const wxPoint&,const wxSize&,long,const wxString&)
|
;wxTopLevelWindowOS2::Create(wxWindow*,int,const wxString&,const wxPoint&,const wxSize&,long,const wxString&)
|
||||||
@@ -14668,6 +14668,8 @@ EXPORTS
|
|||||||
;wxWindow::WarpPointer(int,int)
|
;wxWindow::WarpPointer(int,int)
|
||||||
WarpPointer__8wxWindowFiT1
|
WarpPointer__8wxWindowFiT1
|
||||||
wxCurrentPopupMenu
|
wxCurrentPopupMenu
|
||||||
|
;wxWindow::OS2Layout(int,int)
|
||||||
|
OS2Layout__8wxWindowFiT1
|
||||||
;wxWindow::MoveChildren(int)
|
;wxWindow::MoveChildren(int)
|
||||||
MoveChildren__8wxWindowFi
|
MoveChildren__8wxWindowFi
|
||||||
;wxWindow::HandleShow(unsigned long,int)
|
;wxWindow::HandleShow(unsigned long,int)
|
||||||
|
Reference in New Issue
Block a user