wxNotebook fixes for Win16; VC++ 4 fixes for OLE files; wxGA_SMOOTH flag (wxMSW);

wxFRAME_FLOAT_ON_PARENT style for frames (wxMSW) to get traditional MSW behaviour.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart 1999-05-05 08:57:41 +00:00
parent e716ca3d3b
commit aeab10d07c
11 changed files with 129 additions and 50 deletions

Binary file not shown.

View File

@ -33,6 +33,12 @@ the remaining size available to application windows.
\twocolitem{\windowstyle{wxSYSTEM\_MENU}}{Displays a system menu (Windows and Motif only).}
\twocolitem{\windowstyle{wxTHICK\_FRAME}}{Displays a thick frame around the window (Windows and Motif only).}
\twocolitem{\windowstyle{wxRESIZE\_BORDER}}{Displays a resizeable border around the window (Motif only).}
\twocolitem{\windowstyle{wxFRAME\_FLOAT\_ON\_PARENT}}{Windows only. Causes the frame to be above the parent window in the
z-order and not shown in the taskbar. Without this style, frames are created as top-level windows that may be obscured by
the parent window, and frame titles are shown in the taskbar. On Motif and GTK, the behaviour is always as if this
style is not specified.}
\twocolitem{\windowstyle{wxFRAME\_TOOL\_WINDOW}}{Windows only. Causes a frame with a small titlebar to be created;
the frame title does not appear in the taskbar.}
\end{twocollist}
See also \helpref{window styles overview}{windowstyles}. Currently the GTK port of wxWindows

View File

@ -721,6 +721,12 @@ only be called within an \helpref{OnPaint}{wxwindowonpaint} event handler.
\helpref{wxRegion}{wxregion}, \helpref{wxRegionIterator}{wxregioniterator}, \helpref{wxWindow::OnPaint}{wxwindowonpaint}
\membersection{wxWindow::GetValidator}\label{wxwindowgetvalidator}
\constfunc{wxValidator*}{GetValidator}{\void}
Returns a pointer to the current validator for the window, or NULL if there is none.
\membersection{wxWindow::GetWindowStyleFlag}
\constfunc{long}{GetWindowStyleFlag}{\void}
@ -2118,7 +2124,14 @@ Sets the window's title. Applicable only to frames and dialogs.
\helpref{wxWindow::GetTitle}{wxwindowgettitle}
\membersection{wxWindow::Show}
\membersection{wxWindow::SetValidator}\label{wxwindowsetvalidator}
\func{virtual void}{SetValidator}{\param{const wxValidator\&}{ validator}}
Deletes the current validator (if any) and sets the window validator, having called wxValidator::Clone to
create a new validator of this type.
\membersection{wxWindow::Show}\label{wxwindowshow}
\func{virtual bool}{Show}{\param{const bool}{ show}}

Binary file not shown.

View File

@ -397,6 +397,8 @@ typedef void (*wxFunction) (wxObject&, wxEvent&);
#define wxRESIZE_BORDER 0x0040
#define wxDIALOG_MODAL 0x0020
#define wxDIALOG_MODELESS 0x0000
/* Add for normal Windows frame behaviour */
#define wxFRAME_FLOAT_ON_PARENT 0x0020
#define wxDEFAULT_FRAME_STYLE (wxRESIZE_BORDER | wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxTHICK_FRAME | wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN)
@ -498,6 +500,8 @@ typedef void (*wxFunction) (wxObject&, wxEvent&);
#define wxGA_PROGRESSBAR 0x0004
#define wxGA_HORIZONTAL wxHORIZONTAL
#define wxGA_VERTICAL wxVERTICAL
/* Windows only */
#define wxGA_SMOOTH 0x0008
/*
* wxSlider flags

View File

@ -146,10 +146,13 @@ int wxNotebook::SetSelection(int nPage)
wxASSERT( IS_VALID_PAGE(nPage) );
#if defined (__WIN16__)
m_tabView->SetTabSelection(nPage);
#else
wxNotebookPage* pPage = GetPage(nPage);
m_tabView->SetTabSelection((int) (long) pPage);
#endif
// TODO
return 0;
}
@ -167,7 +170,11 @@ void wxNotebook::AdvanceSelection(bool bForward)
bool wxNotebook::SetPageText(int nPage, const wxString& strText)
{
wxASSERT( IS_VALID_PAGE(nPage) );
#if defined (__WIN16__)
m_tabView->SetTabText(nPage, strText);
Refresh();
return TRUE;
#else
wxNotebookPage* page = GetPage(nPage);
if (page)
{
@ -175,7 +182,7 @@ bool wxNotebook::SetPageText(int nPage, const wxString& strText)
Refresh();
return TRUE;
}
#endif
return FALSE;
}
@ -183,11 +190,15 @@ wxString wxNotebook::GetPageText(int nPage) const
{
wxASSERT( IS_VALID_PAGE(nPage) );
#if defined (__WIN16__)
return m_tabView->GetTabText(nPage);
#else
wxNotebookPage* page = ((wxNotebook*)this)->GetPage(nPage);
if (page)
return m_tabView->GetTabText((int) (long) page);
else
return wxEmptyString;
#endif
}
int wxNotebook::GetPageImage(int nPage) const
@ -228,7 +239,11 @@ bool wxNotebook::DeletePage(int nPage)
}
wxNotebookPage* pPage = GetPage(nPage);
#if defined (__WIN16__)
m_tabView->RemoveTab(nPage);
#else
m_tabView->RemoveTab((int) (long) pPage);
#endif
delete m_aPages[nPage];
m_aPages.Remove(nPage);
@ -241,7 +256,11 @@ bool wxNotebook::DeletePage(int nPage)
else if (m_nSelection > -1)
{
m_nSelection = -1;
#if defined (__WIN16__)
m_tabView->SetTabSelection(0, FALSE);
#else
m_tabView->SetTabSelection((int) (long) GetPage(0), FALSE);
#endif
if (m_nSelection != 0)
ChangePage(-1, 0);
}
@ -269,7 +288,11 @@ bool wxNotebook::RemovePage(int nPage)
// m_aPages[nPage]->Lower();
wxNotebookPage* pPage = GetPage(nPage);
#if defined (__WIN16__)
m_tabView->RemoveTab(nPage);
#else
m_tabView->RemoveTab((int) (long) pPage);
#endif
m_aPages.Remove(nPage);
@ -357,7 +380,12 @@ bool wxNotebook::InsertPage(int nPage,
wxASSERT( pPage != NULL );
wxCHECK( IS_VALID_PAGE(nPage) || nPage == GetPageCount(), FALSE );
// For 16 bit integers (tabs limited to 32768)
#if defined (__WIN16__)
m_tabView->AddTab(nPage, strText);
#else
m_tabView->AddTab((int) (long) pPage, strText);
#endif
if (!bSelect)
pPage->Show(FALSE);
@ -367,7 +395,11 @@ bool wxNotebook::InsertPage(int nPage,
if (bSelect)
{
// This will cause ChangePage to be called, via OnSelPage
#if defined (__WIN16__)
m_tabView->SetTabSelection(nPage, TRUE);
#else
m_tabView->SetTabSelection((int) (long) pPage, TRUE);
#endif
}
// some page must be selected: either this one or the first one if there is
@ -601,11 +633,6 @@ wxRect wxNotebook::GetAvailableClientSize()
return rect;
}
void wxNotebook::SetTabSize(const wxSize& sz)
{
// TODO
}
/*
* wxNotebookTabView
*/
@ -638,6 +665,10 @@ void wxNotebookTabView::OnTabActivate(int activateId, int deactivateId)
wxNotebookEvent event(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, m_notebook->GetId());
#endif
#if defined (__WIN16__)
int activatePos = activateId;
int deactivatePos = deactivateId;
#else
// Translate from wxTabView's ids (which aren't position-dependent)
// to wxNotebook's (which are).
wxNotebookPage* pActive = (wxNotebookPage*) activateId;
@ -646,6 +677,7 @@ void wxNotebookTabView::OnTabActivate(int activateId, int deactivateId)
int activatePos = m_notebook->FindPagePosition(pActive);
int deactivatePos = m_notebook->FindPagePosition(pDeactive);
#endif
event.SetEventObject(m_notebook);
event.SetSelection(activatePos);
event.SetOldSelection(deactivatePos);

View File

@ -119,7 +119,12 @@ bool wxFrame::Create(wxWindow *parent,
// we pass NULL as parent to MSWCreate because frames with parents behave
// very strangely under Win95 shell
MSWCreate(m_windowId, NULL, wxFrameClassName, this, title,
// Alteration by JACS: keep normal Windows behaviour (float on top of parent)
// with this style.
if ((m_windowStyle & wxFRAME_FLOAT_ON_PARENT) == 0)
parent = NULL;
MSWCreate(m_windowId, parent, wxFrameClassName, this, title,
x, y, width, height, style);
wxModelessWindows.Append(this);

View File

@ -68,6 +68,11 @@ bool wxGauge95::Create(wxWindow *parent, wxWindowID id,
int height = size.y;
long msFlags = WS_CHILD | WS_VISIBLE | WS_TABSTOP;
if (m_windowStyle & wxGA_VERTICAL)
msFlags |= PBS_VERTICAL;
if (m_windowStyle & wxGA_SMOOTH)
msFlags |= PBS_SMOOTH;
HWND wx_button =
CreateWindowEx(MakeExtendedStyle(m_windowStyle), PROGRESS_CLASS, NULL, msFlags,

View File

@ -540,7 +540,7 @@ bool ConvertVariantToOle(const wxVariant& variant, VARIANTARG& oleVariant)
{
oleVariant.vt = VT_BOOL;
// 'bool' required for VC++ 4 apparently
#if defined(__WATCOMC__) || (defined(_MSC_VER) && (_MSC_VER <= 1000))
#if defined(__WATCOMC__) || (defined(__VISUALC__) && (__VISUALC__ <= 1000))
oleVariant.bool = variant.GetBool();
#else
oleVariant.boolVal = variant.GetBool();
@ -668,7 +668,7 @@ bool ConvertOleToVariant(const VARIANTARG& oleVariant, wxVariant& variant)
case VT_BOOL:
{
#ifdef __WATCOMC__
#if defined(__WATCOMC__) || (defined(_MSC_VER) && (_MSC_VER <= 1000)) //GC
variant = (bool) (oleVariant.bool != 0);
#else
variant = (bool) (oleVariant.boolVal != 0);

View File

@ -184,6 +184,24 @@ void wxLogRelease(const char *szInterface, ULONG cRef)
wxLogTrace("After %s::Release: m_cRef = %d", szInterface, cRef - 1);
}
#elif defined(__WXDEBUG__) && defined(__VISUALC__) && (__VISUALC__ <= 1000)
// For VC++ 4
void wxLogQueryInterface(const char *szInterface, REFIID riid)
{
wxLogTrace("%s::QueryInterface", szInterface);
}
void wxLogAddRef(const char *szInterface, ULONG cRef)
{
wxLogTrace("After %s::AddRef: m_cRef = %d", szInterface, cRef + 1);
}
void wxLogRelease(const char *szInterface, ULONG cRef)
{
wxLogTrace("After %s::Release: m_cRef = %d", szInterface, cRef - 1);
}
#endif //WXDEBUG
#endif

View File

@ -1,5 +1,5 @@
#
# File: makefile.nt
# File: makefile.vc
# Author: Julian Smart
# Created: 1993
# Updated:
@ -23,74 +23,70 @@ LINK_DEBUG_FLAGS="/RELEASE"
all:
cd $(WXDIR)\utils\dialoged\src
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
cd $(WXDIR)\utils\wxprop\src
nmake -f makefile.nt test DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\hytext\src
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\mfutils\src
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\tex2rtf\src
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\wxbuild\src
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\wxgraph\src
# nmake -f makefile.nt test DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc test DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\wxtree\src
# nmake -f makefile.nt test DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc test DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\wxhelp\src
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\wximage\win
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\wxweb\src
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\wxhelp2\src
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\clockwrk\src
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\wxanim\src
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\colours
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\ogl\src
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# cd $(WXDIR)\utils\wxchart\src
# nmake -f makefile.nt test DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
# nmake -f makefile.vc test DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
clean:
cd $(WXDIR)\utils\wxprop\src
nmake -f makefile.nt clean
cd $(WXDIR)\utils\dialoged\src
nmake -f makefile.nt clean
nmake -f makefile.vc clean
cd $(WXDIR)\utils\nplugin
nmake -f makefile.nt clean
nmake -f makefile.vc clean
# cd $(WXDIR)\utils\hytext\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\mfutils\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\tex2rtf\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\wxbuild\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\wxgraph\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\wxtree\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\wxhelp\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\wxhelp2\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\clockwrk\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\wxanim\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\colours
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\ogl\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\wxchart\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\wxweb\src
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean
# cd $(WXDIR)\utils\wximage\win
# nmake -f makefile.nt clean
# nmake -f makefile.vc clean