wxWindows 2 Change Log
----------------------
-Beta 5, February 18 1999
--------------------------
+Beta 6 (release), February 28th 1999
+------------------------------------
+
+wxGTK:
+
+- wxGLCanvas fixes.
+- Slider/spinbutton fixes.
+
+wxMSW:
+
+- Fixed problems with <return> in dialogs/panels.
+- Fixed window cursor setting.
+
+wxMotif:
+
+
+General:
+
+- Added wxUSE_SOCKETS.
+- More topic overviews.
+
+
+Beta 5, February 18th 1999
+--------------------------
wxGTK:
\end{verbatim}
}
-\membersection{wxAutomationObject::ConvertOleToVariant}\label{wxautomationobjectconvertoletovariant}
-
-\constfunc{bool}{ConvertOleToVariant}{\param{const VARIANTARG\&}{ oleVariant}, \param{const wxVariant\&}{ variant}}
-
-Converts the given VARIANTARG object to a wxVariant. IDispatch pointers are converted to the ``void*" type.
-
-\membersection{wxAutomationObject::ConvertVariantToOle}\label{wxautomationobjectconvertvarianttoole}
-
-\constfunc{bool}{ConvertVariantToOle}{\param{const wxVariant\&}{ variant}, \param{VARIANTARG\&}{ oleVariant}}
-
-Converts the given wxVariant object to a VARIANTARG. The ``void*" type is assumed to be an
-IDispatch pointer.
-
\membersection{wxAutomationObject::CreateInstance}\label{wxautomationobjectcreateinstance}
\constfunc{bool}{CreateInstance}{\param{const wxString\&}{ classId}}
\twocolwidtha{6cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{\windowstyle{wxBITMAP\_TYPE\_CUR}}{Load a cursor from a .cur cursor file (only if USE\_RESOURCE\_LOADING\_IN\_MSW
-is enabled in wx\_setup.h).}
+is enabled in setup.h).}
\twocolitem{\windowstyle{wxBITMAP\_TYPE\_CUR\_RESOURCE}}{Load a Windows resource (as specified in the .rc file).}
\twocolitem{\windowstyle{wxBITMAP\_TYPE\_ICO}}{Load a cursor from a .ico icon file (only if USE\_RESOURCE\_LOADING\_IN\_MSW
-is enabled in wx\_setup.h). Specify {\it hotSpotX} and {\it hotSpotY}.}
+is enabled in setup.h). Specify {\it hotSpotX} and {\it hotSpotY}.}
\end{twocollist}}
\docparam{cursorId}{A stock cursor identifier. May be one of:
currently allocated) is only present in a debugging build of wxWindows,
i.e. if the DEBUG symbol is defined and non-zero. wxDebugContext
and related functions and macros can be compiled out by setting
-USE\_DEBUG\_CONTEXT to 0 is wx\_setup.h
+wxUSE\_DEBUG\_CONTEXT to 0 is setup.h
\wxheading{Derived from}
%\winhelponly{\\$$\image{1cm;0cm}{wxwin.wmf}$$}
}}
\winhelpignore{\author{Julian Smart et al}
-\date{February 10th 1999}
+\date{February 28th 1999}
}
\makeindex
\begin{document}
information. They were especially designed for this usage and, although may
probably be used for many other things as well, should be limited to it. It
means that this information should be:
-\begin{itemize}
-\item{1.} Typed, i.e. strings or numbers for the moment. You can not store
+
+\begin{enumerate}
+\item Typed, i.e. strings or numbers for the moment. You can not store
binary data, for example.
-\item{2.} Small. For instance, it is not recommended to use the Windows
+\item Small. For instance, it is not recommended to use the Windows
registry for amounts of data more than a couple of kilobytes.
-\item{3.} Not performance critical, neither from speed nor from a memory
+\item Not performance critical, neither from speed nor from a memory
consumption point of view.
-\end{itemize}
+\end{enumerate}
On the other hand, the features provided make them very useful for storing all
kinds of small to medium volumes of hierarchically-organized, heterogenous
From another point of view, they provide an interface which hides the
differences between the Windows registry and the standard Unix text format
configuration files. Other (future) implementations of wxConfigBase might also
-understand GTK ressource files or their analogues on the KDE side.
+understand GTK resource files or their analogues on the KDE side.
In any case, each implementation of wxConfigBase does its best to
make the data look the same way everywhere. Due
Classes: \helpref{wxDatabase}{wxdatabase}, \helpref{wxRecordSet}{wxrecordset}, \helpref{wxQueryCol}{wxquerycol},
\rtfsp\helpref{wxQueryField}{wxqueryfield}
-\normalboxd{IMPORTANT NOTE: The ODBC classes are a preliminary release and incomplete. Please
-take this into account when using them. Feedback and bug fixes are appreciated,
-as always. The classes are being developed by Olaf Klein (oklein@smallo.ruhr.de) and
-Patrick Halke (patrick@zaphod.ruhr.de).}
+\normalboxd{Note that more sophisticated ODBC classes are provided by the Remstar
+database classes: please see the separate HTML and Word documentation.}
wxWindows provides a set of classes for accessing a subset of Microsoft's ODBC (Open Database Connectivity)
product. Currently, this wrapper is available under MS Windows only, although
To set a wxWindows application going, you'll need to derive a \helpref{wxApp}{wxapp} class and
override \helpref{wxApp::OnInit}{wxapponinit}.
-An application must have a top-level \helpref{wxFrame}{wxframe} window (returned by \helpref{wxApp::OnInit}{wxapponinit}),
-each frame containing one or more instances of \helpref{wxPanel}{wxpanel}, \helpref{wxSplitterWindow}{wxsplitterwindow}\rtfsp
+An application must have a top-level \helpref{wxFrame}{wxframe} or \helpref{wxDialog}{wxdialog} window.
+Each frame may contain one or more instances of classes such as \helpref{wxPanel}{wxpanel}, \helpref{wxSplitterWindow}{wxsplitterwindow}\rtfsp
or other windows and controls.
-A frame can have a \helpref{wxMenuBar}{wxmenubar}, a status line, and a \helpref{wxIcon}{wxicon} for
+A frame can have a \helpref{wxMenuBar}{wxmenubar}, a \helpref{wxToolBar}{wxtoolbar}, a status line, and a \helpref{wxIcon}{wxicon} for
when the frame is iconized.
A \helpref{wxPanel}{wxpanel} is used to place controls (classes derived from \helpref{wxControl}{wxcontrol})
\rtfsp\helpref{wxCheckBox}{wxcheckbox}, \helpref{wxChoice}{wxchoice}, \helpref{wxListBox}{wxlistbox},
\rtfsp\helpref{wxRadioBox}{wxradiobox}, \helpref{wxSlider}{wxslider}.
-Instances of \helpref{wxDialog}{wxdialog} can also be used for panels, items and they have
+Instances of \helpref{wxDialog}{wxdialog} can also be used for controls and they have
the advantage of not requiring a separate frame.
Instead of creating a dialog box and populating it with items, it is possible to choose
one of the convenient common dialog classes, such as \helpref{wxMessageDialog}{wxmessagedialog}\rtfsp
and \helpref{wxFileDialog}{wxfiledialog}.
-You never draw directly onto a window --- you use a {\it device context} (DC). \helpref{wxDC}{wxdc} is
+You never draw directly onto a window - you use a {\it device context} (DC). \helpref{wxDC}{wxdc} is
the base for \helpref{wxClientDC}{wxclientdc}, \helpref{wxPaintDC}{wxpaintdc}, \helpref{wxMemoryDC}{wxmemorydc}, \helpref{wxPostScriptDC}{wxpostscriptdc},
\rtfsp\helpref{wxMemoryDC}{wxmemorydc}, \helpref{wxMetafileDC}{wxmetafiledc} and \helpref{wxPrinterDC}{wxprinterdc}.
If your drawing functions have {\bf wxDC} as a parameter, you can pass any of these DCs
Most modern applications will have an on-line, hypertext help system; for this, you
need wxHelp and the \helpref{wxHelpController}{wxhelpcontroller} class to control
-wxHelp. To add sparkle, you might use the wxToolBar class
-which makes heavy use of the \helpref{wxBitmap}{wxbitmap}.
+wxHelp.
GUI applications aren't all graphical wizardry. List and hash table needs are
catered for by \helpref{wxList}{wxlist}, \helpref{wxStringList}{wxstringlist} and \helpref{wxHashTable}{wxhashtable}.
and you may find it handy to maintain and search a list of paths using \helpref{wxPathList}{wxpathlist}.
There's a \helpref{miscellany}{miscellany} of operating system and other functions.
-If you have several communicating applications, you can try out the DDE-like functions, by
-using the three classes \helpref{wxDDEClient}{wxddeclient}, \helpref{wxDDEServer}{wxddeserver} and
-\rtfsp\helpref{wxDDEConnection}{wxddeconnection}. These use DDE under Windows, and a simulation using
-sockets under UNIX.
-
+See also \helpref{Classes by Category}{classesbycat} for a list of classes.
Classes: \helpref{wxListCtrl}{wxlistctrl}, \helpref{wxImageList}{wximagelist}
-TODO.
+Sorry, this topic has yet to be written.
\subsection{Compiling the resource system}
-To enable the resource system, set {\bf USE\_WX\_RESOURCES} to 1 in wx\_setup.h.
+To enable the resource system, set {\bf wxUSE\_WX\_RESOURCES} to 1 in setup.h.
If your wxWindows makefile supports it, set the same name in the makefile to 1.
-You will also need to compile the PrologIO utility (not always the easiest
-task): you will need YACC, and LEX (or FLEX). DOS versions of these are
-available on the AIAI ftp site under /pub/wxwin/tools.
-
\end{verbatim}
}
-\subsection{wxTab change log}
-
-June 3rd 1997, Version 1.2
-
-\begin{itemize}\itemsep=0pt
-\item Fixed bug which drew some tabs incorrectly.
-\item Altered sample to put buttons below tabs, as per standard
-Windows conventions.
-\item Added improvements from Hitachi Europe Limited: draws correctly
-on Motif and Windows, and tabs are now rounded - much nicer.
-\end{itemize}
-
-April 29th 1996, Version 1.1
-
-\begin{itemize}\itemsep=0pt
-\item Added SetHorizontalTabOffset, SetHorizontalTabSpacing.
-\item Corrected bug in colouring tabs (1 pixel out).
-\item Corrected bug in adding tabs: last tab on first row could overlap right-hand
-edge.
-\item Added Layout function to allow resizing of the view rectangle and subsequent redrawing
-of the tabs.
-\item Added WXTAB\_VERSION symbol.
-\item Fixed bug in SetTabSelection which did not move the selected tab to the first row.
-\item Added argument in SetTabSelection to optionally avoid calling activation code.
-\item Changed wxPanelTabView API to allow use of any window, not just a panel, in a tab.
-\end{itemize}
-
-April 24th 1996, Version 1.0
-
-\begin{itemize}\itemsep=0pt
-\item First release.
-\end{itemize}
-
\section{wxTabView overview}\label{wxtabviewoverview}
Classes: \helpref{wxTabView}{wxtabview}, \helpref{wxPanelTabView}{wxpaneltabview}
-wxWindows 2 beta 5
-------------------
+wxWindows 2.0
+-------------
Welcome to wxWindows 2, a sophisticated cross-platform C++
framework for writing advanced GUI applications using (where
double m_underlineThickness;
};
-// A module to allow initialization/cleanup of PostScript-related
-// things without calling these functions from app.cpp.
-
-class WXDLLEXPORT wxPostScriptModule: public wxModule
-{
-DECLARE_DYNAMIC_CLASS(wxPostScriptModule)
-public:
- wxPostScriptModule() {}
- bool OnInit();
- void OnExit();
-};
-
// TODO Needed? Should perhaps use wxGenericPrintDialog instead.
#if 1
#define wxID_PRINTER_COMMAND 1
void SetMenuBar(wxMenuBar *menu_bar);
void SetTitle(const wxString& title);
- void SetClientSize(int width, int height);
void GetClientSize(int *width, int *height) const;
void GetSize(int *width, int *height) const;
void GetPosition(int *x, int *y) const ;
#define wxUSE_DYNLIB_CLASS 0
// Use wxLibrary
+#define wxUSE_SOCKETS 1
+ // Set to 1 to use socket classes
/*
* Finer detail
#define wxUSE_TOOLTIPS 1
// Define to use wxToolTip class and
// wxWindow::SetToolTip() method
+#define wxUSE_SOCKETS 1
+ // Set to 1 to use socket classes
/*
* Finer detail
#define wxUSE_DYNLIB_CLASS 0
// Use wxLibrary
+#define wxUSE_SOCKETS 1
+ // Set to 1 to use socket classes
/*
* Finer detail
*
#define wxRELEASE_NUMBER 1
#define wxVERSION_STRING "wxWindows 2.0.1"
#define wxVERSION_NUMBER (wxMAJOR_VERSION * 1000) + (wxMINOR_VERSION * 100) + wxRELEASE_NUMBER
-#define wxBETA_NUMBER 5
+#define wxBETA_NUMBER 6
#define wxVERSION_FLOAT wxMAJOR_VERSION + (wxMINOR_VERSION/10.0) + (wxRELEASE_NUMBER/100.0) + (wxBETA_NUMBER/10000.0)
#endif
#include "wx/stattext.h"
#include "wx/radiobox.h"
#include "wx/textctrl.h"
+#include "wx/prntbase.h"
#include <math.h>
// Set the client size (i.e. leave the calculation of borders etc.
// to wxWindows)
-void wxMDIChildFrame::SetClientSize(int width, int height)
+void wxMDIChildFrame::DoSetClientSize(int width, int height)
{
wxWindow::DoSetClientSize(width, height);
}
#include <windows.h>
#include <windowsx.h>
+#ifdef __GNUWIN32__
+#include "wx/msw/gnuwin32/extra.h"
+#endif
+
// ----------------------------------------------------------------------------
// private functions
// ----------------------------------------------------------------------------
}
if ( !processed )
- return ::CallWindowProc(s_wndprocRadioBtn, hwnd, msg, wParam, lParam);
+ return ::CallWindowProc((WNDPROC) s_wndprocRadioBtn, hwnd, msg, wParam, lParam);
else
return 0;
}
#include "wx/msw/private.h"
+#ifdef __GNUWIN32__
+#include "wx/msw/gnuwin32/extra.h"
+#endif
+
#if (defined(__WIN95__) && !defined(__GNUWIN32__)) || defined(__TWIN32__)
#include <commctrl.h>
#endif
// because both usually pop up a context menu
case VK_APPS:
{
+
+#ifndef GET_X_LPARAM
+#define GET_X_LPARAM(lp) ((int)(short)LOWORD(lp))
+#define GET_Y_LPARAM(lp) ((int)(short)HIWORD(lp))
+#endif
+
// construct the key mask
WPARAM fwKeys = MK_RBUTTON;
if ( (::GetKeyState(VK_CONTROL) & 0x100) != 0 )
// TODO for wxWin: wxToolBar95 cannot be moved to a non-0,0 position!
// Needs to have a parent window...
// So use a simple toolbar at present.
-#ifdef __WXGTK__
+#if 0 // def __WXGTK__
#define TOOLPALETTECLASS wxToolBar
#else
#define TOOLPALETTECLASS wxToolBarSimple
LIB_CPP_SRC= \
\
- basic.cpp basic2.cpp bmpshape.cpp canvas.cpp \
+ basic.cpp basic2.cpp bmpshape.cpp canvas.cpp constrnt.cpp \
composit.cpp divided.cpp drawn.cpp lines.cpp \
- mfutils.cpp misc.cpp ogldiag.cpp
+ mfutils.cpp misc.cpp ogldiag.cpp
#define library objects
LIB_OBJ= \