Compare commits

..

1 Commits

Author SHA1 Message Date
Bryan Petty
bda6d0f4b4 This commit was manufactured by cvs2svn to create tag 'WX_2_8_1'.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/tags/WX_2_8_1@44199 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-01-11 13:55:26 +00:00
250 changed files with 1490 additions and 5161 deletions

View File

@@ -54,22 +54,22 @@
</add-formats>
<del-formats files="../../samples/*.bkl">
autoconf,msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
autoconf,msvc6prj,msevc4prj,cbuilderx,cbx_unix
</del-formats>
<del-formats files="../../demos/*.bkl">
msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
msvc6prj,msevc4prj,cbuilderx,cbx_unix
</del-formats>
<del-formats files="../../samples/html/html_samples.bkl">
msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
msvc6prj,msevc4prj,cbuilderx,cbx_unix
</del-formats>
<del-formats files="../../samples/mobile/mobile_samples.bkl">
msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
msvc6prj,msevc4prj,cbuilderx,cbx_unix
</del-formats>
<del-formats files="../../samples/opengl/opengl_samples.bkl">
msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
msvc6prj,msevc4prj,cbuilderx,cbx_unix
</del-formats>
<del-formats files="../../utils/*.bkl">
msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
msvc6prj,msevc4prj,cbuilderx,cbx_unix
</del-formats>
<!-- WinCE can't have console apps: -->
@@ -81,7 +81,7 @@
<!-- HtmlCtrl sample is Cocoa only (autoconf format) -->
<del-formats files="../../samples/html/htmlctrl/htmlctrl.bkl">
borland,dmars_smake,dmars,mingw,msvc,msvc6prj,msevc4prj,msvs2005prj,watcom,cbuilderx,cbx_unix
borland,dmars_smake,dmars,mingw,msvc,msvc6prj,msevc4prj,watcom,cbuilderx,cbx_unix
</del-formats>
@@ -114,9 +114,6 @@
<add-flags files="wx.bkl" formats="msvc6prj">
-o../msw/wx.dsw
</add-flags>
<add-flags files="wx.bkl" formats="msvs2005prj">
-o../msw/wx.sln
</add-flags>
<add-flags files="wx.bkl" formats="msevc4prj">
-o../wince/wx.vcw
</add-flags>
@@ -134,7 +131,7 @@
-o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/$(INPUT_FILE_BASENAME_NOEXT).cbx
</add-flags>
<add-flags files="../../contrib/build/*/*.bkl"
formats="mingw,borland,dmars_smake,dmars,watcom,msvc,msvc6prj,msevc4prj,msvs2005prj">
formats="mingw,borland,dmars_smake,dmars,watcom,msvc,msvc6prj,msevc4prj">
-DSRCDIR=../../src/$(INPUT_FILE_BASENAME_NOEXT)
</add-flags>

View File

@@ -8,7 +8,7 @@
the library.
-->
<if cond="FORMAT not in ['autoconf','msvc6prj','msevc4prj','msvs2005prj','cbuilderx'] and
<if cond="FORMAT not in ['autoconf','msvc6prj','msevc4prj','cbuilderx'] and
TOOLKIT in ['PM','MSW','MGL','MOTIF']">
<set var="BUILD_CFG_FILE" make_var="1">

View File

@@ -347,9 +347,7 @@
<!-- deal with the need to copy setup.h here: -->
<set var="IS_MSVC_PRJ">
$(FORMAT in ['msvc6prj','msevc4prj','msvs2005prj'])
</set>
<set var="IS_MSVC_PRJ">$(FORMAT in ['msvc6prj','msevc4prj'])</set>
<define-tag name="msvc-headers" rules="dll,lib">
<if cond="IS_MSVC_PRJ">
@@ -362,7 +360,7 @@
<set var="msvc_copy_setup_h_script">
<if cond="IS_MSVC_PRJ">
Creating $(SETUPHDIR)\wx\setup.h
InputPath=..\..\include\wx\%s
InputPath=..\include\wx\%s
"$(SETUPHDIR)\wx\setup.h" : $(DOLLAR)(SOURCE) "$(DOLLAR)(INTDIR)" "$(DOLLAR)(OUTDIR)"
$(TAB)copy "$(DOLLAR)(InputPath)" $(SETUPHDIR)\wx\setup.h
@@ -421,9 +419,8 @@ $(TAB)copy "$(DOLLAR)(InputPath)" $(SETUPHDIR)\wx\setup.h
</set>
<set var="_custom_build_include_wx_msw_genrcdefs_h">
Creating $(SETUPHDIR)\wx\msw\rcdefs.h
InputPath=..\..\include\wx\msw\genrcdefs.h
"$(SETUPHDIR)\wx\msw\rcdefs.h" : "$(DOLLAR)(SOURCE)" "$(SETUPHDIR)\wx\msw"
"$(SETUPHDIR)\wx\msw\rcdefs.h" : "$(DOLLAR)(SOURCE)" "$(DOLLAR)(SETUPHDIR)\wx\msw"
$(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\rcdefs.h"
</set>
</if>

View File

@@ -98,8 +98,8 @@ Accepted values: AMD64, IA64.
<!-- FIXME: restore this once bakefile is fixed to not use
/Gm /GZ (incompatible with /O2) w/ debug-info -->
<set var="DEBUG_INFO_DEFAULT">
<if cond="FORMAT in ['msvc','msvc6prj','msevc4prj','msvs2005prj']">1</if>
<if cond="FORMAT not in ['msvc','msvc6prj','msevc4prj','msvs2005prj']">default</if>
<if cond="FORMAT in ['msvc','msvc6prj','msevc4prj']">1</if>
<if cond="FORMAT not in ['msvc','msvc6prj','msevc4prj']">default</if>
</set>
-->
<set var="DEBUG_INFO_DEFAULT">default</set>
@@ -231,8 +231,8 @@ Acts according to BUILD by default.
<!-- currently only VC++ can compile wxDebugReport which is in QA lib -->
<set var="USE_QA_DEFAULT">
<if cond="FORMAT in ['msvc','msvc6prj','msvs2005prj']">1</if>
<if cond="FORMAT not in ['msvc','msvc6prj','msvs2005prj']">0</if>
<if cond="FORMAT in ['msvc','msvc6prj']">1</if>
<if cond="FORMAT not in ['msvc','msvc6prj']">0</if>
</set>
<option name="USE_QA">
<values>0,1</values>

View File

@@ -23,9 +23,9 @@
3. Else, i.e. if there were no changes at all to API but only internal
changes, change C:R:A to C:R+1:A
-->
<set var="WX_CURRENT">1</set>
<set var="WX_CURRENT">0</set>
<set var="WX_REVISION">0</set>
<set var="WX_AGE">1</set>
<set var="WX_AGE">0</set>
<!-- ================================================================== -->

View File

@@ -24,7 +24,7 @@
<!-- ...and when there are multiple libraries: -->
<include file="multilib.bkl"/>
<if cond="FORMAT in ['msvc6prj','msevc4prj','msvs2005prj']">
<if cond="FORMAT in ['msvc6prj','msevc4prj']">
<set var="MSVC6PRJ_MERGED_TARGETS">
<if cond="MONOLITHIC=='0'">$(MSVC6PRJ_MERGED_TARGETS_MULTILIB)</if>
<if cond="MONOLITHIC=='1'">$(MSVC6PRJ_MERGED_TARGETS_MONOLIB)</if>

22
configure vendored
View File

@@ -1,7 +1,7 @@
#! /bin/sh
# From configure.in Id: configure.in.
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.59 for wxWidgets 2.8.2.
# Generated by GNU Autoconf 2.59 for wxWidgets 2.8.1.
#
# Report bugs to <wx-dev@lists.wxwidgets.org>.
#
@@ -270,8 +270,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='wxWidgets'
PACKAGE_TARNAME='wxwidgets'
PACKAGE_VERSION='2.8.2'
PACKAGE_STRING='wxWidgets 2.8.2'
PACKAGE_VERSION='2.8.1'
PACKAGE_STRING='wxWidgets 2.8.1'
PACKAGE_BUGREPORT='wx-dev@lists.wxwidgets.org'
ac_unique_file="wx-config.in"
@@ -870,7 +870,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures wxWidgets 2.8.2 to adapt to many kinds of systems.
\`configure' configures wxWidgets 2.8.1 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -936,7 +936,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of wxWidgets 2.8.2:";;
short | recursive ) echo "Configuration of wxWidgets 2.8.1:";;
esac
cat <<\_ACEOF
@@ -1339,7 +1339,7 @@ fi
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
wxWidgets configure 2.8.2
wxWidgets configure 2.8.1
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -1353,7 +1353,7 @@ cat >&5 <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by wxWidgets $as_me 2.8.2, which was
It was created by wxWidgets $as_me 2.8.1, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -1804,7 +1804,7 @@ test -n "$target_alias" &&
wx_major_version_number=2
wx_minor_version_number=8
wx_release_number=2
wx_release_number=1
wx_subrelease_number=0
WX_RELEASE=$wx_major_version_number.$wx_minor_version_number
@@ -46010,7 +46010,7 @@ _ACEOF
_ACEOF
cat >>confdefs.h <<\_ACEOF
#define wxUSE_ACTIVEX 1
#define wxUSE_OLE_ACTIVEX 1
_ACEOF
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS oleauto"
@@ -51442,7 +51442,7 @@ _ASBOX
} >&5
cat >&5 <<_CSEOF
This file was extended by wxWidgets $as_me 2.8.2, which was
This file was extended by wxWidgets $as_me 2.8.1, which was
generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -51505,7 +51505,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
wxWidgets config.status 2.8.2
wxWidgets config.status 2.8.1
configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"

View File

@@ -17,7 +17,7 @@ dnl ---------------------------------------------------------------------------
dnl initialization
dnl ---------------------------------------------------------------------------
AC_INIT([wxWidgets], [2.8.2], [wx-dev@lists.wxwidgets.org])
AC_INIT([wxWidgets], [2.8.1], [wx-dev@lists.wxwidgets.org])
dnl the file passed to AC_CONFIG_SRCDIR should be specific to our package
AC_CONFIG_SRCDIR([wx-config.in])
@@ -34,7 +34,7 @@ dnl wx_release_number += 1
wx_major_version_number=2
wx_minor_version_number=8
wx_release_number=2
wx_release_number=1
wx_subrelease_number=0
WX_RELEASE=$wx_major_version_number.$wx_minor_version_number
@@ -2545,16 +2545,11 @@ fi
dnl check for C99 string to long long conversion functions, assume that if we
dnl have the unsigned variants, then we have the signed ones as well
dnl
dnl at least under SGI these functions are only available in C99 code and not
dnl in C++ so do these tests using C++ compiler
AC_LANG_PUSH(C++)
if test "wxUSE_UNICODE" = "yes"; then
WX_CHECK_FUNCS(wcstoull)
else
WX_CHECK_FUNCS(strtoull)
fi
AC_LANG_POP()
dnl ---------------------------------------------------------------------------
dnl Optional libraries
@@ -3209,12 +3204,12 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
dnl test for XIM support in libgdk
AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM))
fi
dnl we need poll() in src/gtk1/app.cpp (we know that Darwin doesn't
dnl have it but we do the check for the others)
if test "$USE_DARWIN" != 1; then
AC_CHECK_FUNCS(poll)
fi
dnl we need poll() in src/gtk/app.cpp (we know that Darwin doesn't
dnl have it but we do the check for the others)
if test "$USE_DARWIN" != 1; then
AC_CHECK_FUNCS(poll)
fi
TOOLKIT_INCLUDE="$wx_cv_cflags_gtk"
@@ -6585,7 +6580,7 @@ if test "$USE_WIN32" = 1 -a \( "$wxUSE_DATAOBJ" = "yes" \
if test "$wxUSE_OLE" = "yes" ; then
AC_DEFINE(wxUSE_OLE)
AC_DEFINE(wxUSE_OLE_AUTOMATION)
AC_DEFINE(wxUSE_ACTIVEX)
AC_DEFINE(wxUSE_OLE_ACTIVEX)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS oleauto"
fi
fi

View File

@@ -791,10 +791,9 @@ public:
wxSTCListBoxWin(wxWindow* parent, wxWindowID id, Point WXUNUSED(location)) :
wxPopupWindow(parent, wxBORDER_NONE)
{
SetBackgroundColour(*wxBLACK); // for our simple border
lv = new wxSTCListBox(parent, id, wxPoint(-50,-50), wxDefaultSize,
lv = new wxSTCListBox(parent, id, wxDefaultPosition, wxDefaultSize,
wxLC_REPORT | wxLC_SINGLE_SEL | wxLC_NO_HEADER | wxBORDER_NONE);
lv->SetCursor(wxCursor(wxCURSOR_ARROW));
lv->InsertColumn(0, wxEmptyString);
@@ -898,27 +897,17 @@ END_EVENT_TABLE()
#else // !wxUSE_POPUPWIN -----------------------------------
#else // wxUSE_POPUPWIN -----------------------------------
// A normal window to place the wxSTCListBox upon, but make it behave as much
// like a wxPopupWindow as possible
class wxSTCListBoxWin : public wxFrame {
// A normal window to place the wxSTCListBox upon.
class wxSTCListBoxWin : public wxWindow {
private:
wxListView* lv;
CallBackAction doubleClickAction;
void* doubleClickActionData;
public:
wxSTCListBoxWin(wxWindow* parent, wxWindowID id, Point location) :
wxFrame(parent, id, wxEmptyString, wxPoint(location.x, location.y), wxSize(0,0),
wxFRAME_NO_TASKBAR
| wxFRAME_FLOAT_ON_PARENT
#ifdef __WXMAC__
| wxPOPUP_WINDOW
| wxNO_BORDER
#else
| wxSIMPLE_BORDER
#endif
)
wxWindow(parent, id, wxPoint(location.x, location.y), wxSize(0,0), wxSIMPLE_BORDER )
{
lv = new wxSTCListBox(this, id, wxDefaultPosition, wxDefaultSize,
@@ -932,15 +921,14 @@ public:
lv->SetFocus();
Hide();
}
}
// On OSX and (possibly others) there can still be pending
// messages/events for the list control when Scintilla wants to
// close it, so do a pending delete of it instead of destroying
// immediately.
bool Destroy()
{
bool Destroy() {
#ifdef __WXMAC__
// The bottom edge of this window is not getting properly
// refreshed upon deletion, so help it out...
@@ -955,8 +943,7 @@ public:
}
int IconWidth()
{
int IconWidth() {
wxImageList* il = lv->GetImageList(wxIMAGE_LIST_SMALL);
if (il != NULL) {
int w, h;
@@ -967,22 +954,18 @@ public:
}
void SetDoubleClickAction(CallBackAction action, void *data)
{
void SetDoubleClickAction(CallBackAction action, void *data) {
doubleClickAction = action;
doubleClickActionData = data;
}
void OnFocus(wxFocusEvent& event)
{
ActivateParent();
void OnFocus(wxFocusEvent& event) {
GetParent()->SetFocus();
event.Skip();
}
void OnSize(wxSizeEvent& event)
{
void OnSize(wxSizeEvent& event) {
// resize the child
wxSize sz = GetClientSize();
lv->SetSize(sz);
@@ -993,44 +976,15 @@ public:
event.Skip();
}
void ActivateParent()
{
// Although we're a frame, we always want the parent to be active, so
// raise it whenever we get shown, focused, etc.
wxTopLevelWindow *frame = wxDynamicCast(
wxGetTopLevelParent(GetParent()), wxTopLevelWindow);
if (frame)
frame->Raise();
}
virtual void DoSetSize(int x, int y,
int width, int height,
int sizeFlags = wxSIZE_AUTO)
{
// convert coords to screen coords since we're a top-level window
if (x != wxDefaultCoord) {
GetParent()->ClientToScreen(&x, NULL);
}
if (y != wxDefaultCoord) {
GetParent()->ClientToScreen(NULL, &y);
}
wxFrame::DoSetSize(x, y, width, height, sizeFlags);
}
virtual bool Show(bool show = true)
{
bool rv = wxFrame::Show(show);
if (rv && show)
ActivateParent();
#ifdef __WXMAC__
virtual bool Show(bool show = true) {
bool rv = wxWindow::Show(show);
GetParent()->Refresh(false);
#endif
return rv;
}
#endif
void OnActivate(wxListEvent& WXUNUSED(event))
{
void OnActivate(wxListEvent& WXUNUSED(event)) {
doubleClickAction(doubleClickActionData);
}
@@ -1239,7 +1193,7 @@ void ListBoxImpl::Select(int n) {
n = 0;
select = false;
}
GETLB(id)->EnsureVisible(n);
GETLB(id)->Focus(n);
GETLB(id)->Select(n, select);
}

View File

@@ -87,7 +87,7 @@ void wxSTCDropTarget::OnLeave() {
#define wxSTCCallTipBase wxPopupWindow
#define param2 wxBORDER_NONE // popup's 2nd param is flags
#else
#define wxSTCCallTipBase wxFrame
#define wxSTCCallTipBase wxWindow
#define param2 -1 // wxWindow's 2nd param is ID
#endif
@@ -95,19 +95,8 @@ void wxSTCDropTarget::OnLeave() {
class wxSTCCallTip : public wxSTCCallTipBase {
public:
wxSTCCallTip(wxWindow* parent, CallTip* ct, ScintillaWX* swx) :
#if wxUSE_POPUPWIN && wxSTC_USE_POPUP
wxSTCCallTipBase(parent, wxBORDER_NONE),
#else
wxSTCCallTipBase(parent, -1, wxEmptyString, wxDefaultPosition, wxDefaultSize,
wxFRAME_NO_TASKBAR
| wxFRAME_FLOAT_ON_PARENT
| wxBORDER_NONE
#ifdef __WXMAC__
| wxPOPUP_WINDOW
#endif
),
#endif
wxSTCCallTip(wxWindow* parent, CallTip* ct, ScintillaWX* swx)
: wxSTCCallTipBase(parent, param2),
m_ct(ct), m_swx(swx), m_cx(wxDefaultCoord), m_cy(wxDefaultCoord)
{
}
@@ -123,8 +112,7 @@ public:
bool AcceptsFocus() const { return false; }
void OnPaint(wxPaintEvent& WXUNUSED(evt))
{
void OnPaint(wxPaintEvent& WXUNUSED(evt)) {
wxBufferedPaintDC dc(this);
Surface* surfaceWindow = Surface::Allocate();
surfaceWindow->Init(&dc, m_ct->wDraw.GetID());
@@ -133,25 +121,22 @@ public:
delete surfaceWindow;
}
void OnFocus(wxFocusEvent& event)
{
void OnFocus(wxFocusEvent& event) {
GetParent()->SetFocus();
event.Skip();
}
void OnLeftDown(wxMouseEvent& event)
{
void OnLeftDown(wxMouseEvent& event) {
wxPoint pt = event.GetPosition();
Point p(pt.x, pt.y);
m_ct->MouseClick(p);
m_swx->CallTipClick();
}
#if wxUSE_POPUPWIN && wxSTC_USE_POPUP
virtual void DoSetSize(int x, int y,
int width, int height,
int sizeFlags = wxSIZE_AUTO)
{
// convert coords to screen coords since we're a top-level window
int sizeFlags = wxSIZE_AUTO) {
if (x != wxDefaultCoord) {
m_cx = x;
GetParent()->ClientToScreen(&x, NULL);
@@ -162,27 +147,9 @@ public:
}
wxSTCCallTipBase::DoSetSize(x, y, width, height, sizeFlags);
}
#if wxUSE_POPUPWIN && wxSTC_USE_POPUP
#else
virtual bool Show( bool show = true )
{
// Although we're a frame, we always want the parent to be active, so
// raise it whenever we get shown.
bool rv = wxSTCCallTipBase::Show(show);
if (rv && show)
{
wxTopLevelWindow *frame = wxDynamicCast(
wxGetTopLevelParent(GetParent()), wxTopLevelWindow);
if (frame)
frame->Raise();
}
return rv;
}
#endif
wxPoint GetMyPosition()
{
wxPoint GetMyPosition() {
return wxPoint(m_cx, m_cy);
}

View File

@@ -3294,18 +3294,10 @@ void wxStyledTextCtrl::NotifyParent(SCNotification* _scn) {
evt.SetEventType(wxEVT_STC_PAINTED);
break;
case SCN_AUTOCSELECTION:
evt.SetEventType(wxEVT_STC_AUTOCOMP_SELECTION);
evt.SetListType(scn.listType);
SetEventText(evt, scn.text, strlen(scn.text));
evt.SetPosition(scn.lParam);
break;
case SCN_USERLISTSELECTION:
evt.SetEventType(wxEVT_STC_USERLISTSELECTION);
evt.SetListType(scn.listType);
SetEventText(evt, scn.text, strlen(scn.text));
evt.SetPosition(scn.lParam);
break;
case SCN_URIDROPPED:
@@ -3340,7 +3332,11 @@ void wxStyledTextCtrl::NotifyParent(SCNotification* _scn) {
case SCN_CALLTIPCLICK:
evt.SetEventType(wxEVT_STC_CALLTIP_CLICK);
break;
case SCN_AUTOCSELECTION:
evt.SetEventType(wxEVT_STC_AUTOCOMP_SELECTION);
break;
default:
return;
}

View File

@@ -932,18 +932,10 @@ void wxStyledTextCtrl::NotifyParent(SCNotification* _scn) {
evt.SetEventType(wxEVT_STC_PAINTED);
break;
case SCN_AUTOCSELECTION:
evt.SetEventType(wxEVT_STC_AUTOCOMP_SELECTION);
evt.SetListType(scn.listType);
SetEventText(evt, scn.text, strlen(scn.text));
evt.SetPosition(scn.lParam);
break;
case SCN_USERLISTSELECTION:
evt.SetEventType(wxEVT_STC_USERLISTSELECTION);
evt.SetListType(scn.listType);
SetEventText(evt, scn.text, strlen(scn.text));
evt.SetPosition(scn.lParam);
break;
case SCN_URIDROPPED:
@@ -978,7 +970,11 @@ void wxStyledTextCtrl::NotifyParent(SCNotification* _scn) {
case SCN_CALLTIPCLICK:
evt.SetEventType(wxEVT_STC_CALLTIP_CLICK);
break;
case SCN_AUTOCSELECTION:
evt.SetEventType(wxEVT_STC_AUTOCOMP_SELECTION);
break;
default:
return;
}

18
debian/changelog vendored
View File

@@ -1,21 +1,3 @@
wxwidgets2.8 (2.8.1.1-0) unstable; urgency=low
* Fix compilation with wxUSE_STL=1
* wxGrid::GetBestSize() returns same size the grid would have after AutoSize()
* Added wxTreeCtrl::CollapseAll[Children]() and IsEmpty() (Francesco Montorsi)
* Several RTL-related positioning fixes (Diaa Sami)
* Fix wxConfig::DeleteGroup() for arguments with trailing slash (David Hart)
* Fix memory leak in wxGrid::ShowCellEditControl() (Christian Sturmlechner)
* Don't crash if command line is not valid UTF-8 (Unicode build only)
* Added wxSizerFlags::Shaped() and FixedMinSize() methods
* Added wxCSConv::IsOk() (Manuel Martin)
* Added wxDateTime::GetDateOnly()
* Made wxTextFile work with unseekable files again (David Hart)
* Added wxCONFIG_USE_SUBDIR flag to wxFileConfig (Giuseppe Bilotta)
* Added wxSearchCtrl::[Get|Set]DescriptiveText
-- Robin Dunn <robin@alldunn.com> Fri, 19 Jan 2007 12:02:52 -0800
wxwidgets2.8 (2.8.0.1-1) unstable; urgency=low
* No changes, just a different packager

View File

@@ -17,7 +17,7 @@ DOCDIR=${WX_TEMP_DIR}/wxWidgets/docs/
CURDATE=`date -I`
# build info
BUILD_VERSION=2.8.2
BUILD_VERSION=2.8.1-rc1
BUILD_TAG=HEAD

View File

@@ -62,11 +62,7 @@ getfilelist(){
if [ $port = "mgl" ] || [ $port = "all" ]; then
filelist="$filelist mgl.rsp"
fi
if [ $port = "dfb" ] || [ $port = "all" ]; then
filelist="$filelist dfb.rsp"
fi
if [ $port = "gtk" ] || [ $port = "all" ]; then
filelist="$filelist gtk.rsp"
fi
@@ -128,7 +124,7 @@ dospinport(){
mac)
portname="Mac";;
*)
# for all the others (DFB, GTK, MGL, DFB, MSW, X11) just use the
# for all the others (DFB, GTK, MGL, MSW, X11) just use the
# upper-case version as they are abbreviations
portname=`echo $port | tr '[a-z]' '[A-Z]'`;;
esac
@@ -190,8 +186,6 @@ prepareforrelease()
cp $APPDIR/docs/mgl/readme.txt $APPDIR/readme-mgl.txt
cp $APPDIR/docs/mgl/install.txt $APPDIR/install-mgl.txt
cp $APPDIR/docs/dfb/install.txt $APPDIR/install-dfb.txt
cp $APPDIR/docs/x11/readme.txt $APPDIR/readme-x11.txt
cp $APPDIR/docs/x11/install.txt $APPDIR/install-x11.txt
@@ -291,7 +285,6 @@ fi
if [ "$SPINALL" = "1" ]; then
dospinport "mgl"
dospinport "dfb"
dospinport "gtk"
dospinport "x11"
dospinport "motif"

View File

@@ -21,6 +21,7 @@ do_build
make prefix=$INSTALLDIR install
if [ "$WXPYTHON" == "1" ]; then
make -C contrib/src/animate prefix=$INSTALLDIR install
make -C contrib/src/gizmos prefix=$INSTALLDIR install
make -C contrib/src/stc prefix=$INSTALLDIR install
fi

View File

@@ -1,6 +0,0 @@
install-dfb.txt
include/wx/dfb/*.h
include/wx/dfb/private/*.h
src/dfb/*.cpp
docs/dfb/*.txt

View File

@@ -42,7 +42,7 @@ else
cvs update -d -P
fi
#copy setup0.h setup.h for msw
rm include/wx/msw/setup.h
find . -name setup.h | xargs rm -rf
cp include/wx/msw/setup0.h include/wx/msw/setup.h
# this is where we will store the wxAll tarball we create

View File

@@ -52,8 +52,6 @@ docopydocs()
cp $APPDIR/docs/mgl/readme.txt $DESTDIR/readme-mgl-$VERSION.txt
cp $APPDIR/docs/mgl/install.txt $DESTDIR/install-mgl-$VERSION.txt
cp $APPDIR/docs/dfb/install.txt $DESTDIR/install-dfb-$VERSION.txt
cp $APPDIR/docs/cocoa/readme.txt $DESTDIR/readme-cocoa-$VERSION.txt
cp $APPDIR/docs/cocoa/install.txt $DESTDIR/install-cocoa-$VERSION.txt
@@ -66,4 +64,4 @@ docopydocs()
cp $APPDIR/docs/readme_vms.txt $DESTDIR/readme-vms-$VERSION.txt
}
}

View File

@@ -88,66 +88,30 @@ Major new features in 2.8 release
wxSearchCtrl, wxAboutBox, wxTreebook, tar streams.
2.8.2
-----
All:
- Added wxSizerFlags::Shaped(), FixedMinSize(), Top() and Bottom() methods.
- Added wxCSConv::IsOk() (Manuel Martin).
- Added wxDateTime::GetDateOnly().
- Made wxTextFile work with unseekable files again (David Hart).
- Added wxCONFIG_USE_SUBDIR flag to wxFileConfig (Giuseppe Bilotta).
- Added wxSearchCtrl::[Get|Set]DescriptiveText.
- Added wxToolBar::SetTool[Normal|Disabled]Bitmap for wxMSW, wxGTK and wxMac.
- Added wxRICHTEXT_SETSTYLE_REMOVE flag for removing styles, and
wxRICHTEXT_HITTEST_OUTSIDE for more accurate hit-testing.
- Fixed a crash when writing wxRichTextCtrl styles.
wxMSW
- Fix lack of spin control update event when control lost focus.
- Corrected drawing of bitmaps for disabled menu items.
wxMac
- Added support for the wxFRAME_FLOAT_ON_PARENT style.
- Now takes window variants into account when rendering buttons.
wxX11:
- Don't crash in wxWindow dtor if the window hadn't been really Create()d.
- Update wxChoice value when SetSelection() is called.
wxUniv:
- Fixed wxComboBox always sorted.
2.8.1
-----
All:
- Fix compilation with wxUSE_STL=1.
- wxGrid::GetBestSize() returns same size the grid would have after AutoSize().
- Added wxTreeCtrl::CollapseAll[Children]() and IsEmpty() (Francesco Montorsi).
- Several RTL-related positioning fixes (Diaa Sami).
- Fix wxConfig::DeleteGroup() for arguments with trailing slash (David Hart).
- Fix memory leak in wxGrid::ShowCellEditControl() (Christian Sturmlechner).
- Fix compilation with wxUSE_STL=1
- wxGrid::GetBestSize() returns same size the grid would have after AutoSize()
- Added wxTreeCtrl::CollapseAll[Children]() and IsEmpty() (Francesco Montorsi)
- Several RTL-related positioning fixes (Diaa Sami)
- Fix wxConfig::DeleteGroup() for arguments with trailing slash (David Hart)
- Fix memory leak in wxGrid::ShowCellEditControl() (Christian Sturmlechner)
wxMSW:
- Fixed compilation with Borland C++ in Unicode mode but without MSLU.
- Show taskbar icon menu on right button release, not press.
- Fixed compilation with Borland C++ in Unicode mode but without MSLU
- Show taskbar icon menu on right button release, not press
wxGTK:
- Don't crash if command line is not valid UTF-8 (Unicode build only).
- Don't crash if command line is not valid UTF-8 (Unicode build only)
wxUniv:
- It is now possible to set background colour of wxStaticText.
- It is now possible to set background colour of wxStaticText
2.8.0
@@ -155,27 +119,27 @@ wxUniv:
All:
- Added wxSearchCtrl (Vince Harron).
- wxCSConv("UTF-16/32") now behaves correctly, i.e. same as wxMBConvUTF16/32.
- Added wxSearchCtrl (Vince Harron)
- wxCSConv("UTF-16/32") now behaves correctly, i.e. same as wxMBConvUTF16/32
- wxArrayString::Alloc() now works as reserve() and doesn't clear array contents
- Fixed long standing bug in wxFileConfig groups renaming (Antti Koivisto).
- New option wxFS_READ | wxFS_SEEKABLE for wxFileSystem::OpenFile() to return
a stream that is seekable.
- Fixed bug in wxCalendarCtrl::HitTest() when clicking on month change arrows.
- Fixed bug in wxCalendarCtrl::HitTest() when clicking on month change arrows
- Added wxWindow::GetWindowBorderSize() and corrected wxTreeCtrl::GetBestSize()
for a control with borders (Tim Kosse).
for a control with borders (Tim Kosse)
wxMSW:
- Fixed version script problems when using configure with cygwin/mingw32.
- Use system default paper size for printing instead of A4.
- Fix (harmless) assert in virtual list control under Vista.
- Fix (harmless) assert in virtual list control under Vista
- Fix colours when converting wxBitmap with alpha to wxImage (nusi).
wxGTK:
- Allow dynamically changing most of text control styles.
- Enable use of libgnomeprintui by default in configure.
- Allow dynamically changing most of text control styles
- Enable use of libgnomeprintui by default in configure
2.7.2

View File

@@ -1,5 +1,5 @@
wxWidgets for GTK+ installation
-------------------------------
wxWidgets 2.8 for GTK+ installation
-----------------------------------
IMPORTANT NOTE:

View File

@@ -1,7 +1,8 @@
Welcome to wxWidgets for GTK+
-----------------------------
Welcome to wxWidgets 2.8.0 for GTK+
-----------------------------------
You have downloaded the GTK+ port of the wxWidgets GUI library.
You have downloaded version 2.8 of the GTK+ port of the
wxWidgets GUI library.
It is recommended to use at least GTK+ 2.2.3 to get the
most out of wxWidgets and some features are only available

View File

@@ -30,7 +30,7 @@ No base class
\wxheading{See also}
\helpref{wxAuiManager}{wxauimanager},
\helpref{wxAuiManager}{wxauimanager},
\helpref{wxAuiPaneInfo}{wxauipaneinfo}
\wxheading{Data structures}

View File

@@ -20,7 +20,7 @@ No base class
\wxheading{See also}
\helpref{wxAuiManager}{wxauimanager},
\helpref{wxAuiManager}{wxauimanager},
\helpref{wxAuiDockArt}{wxauidockart}
\wxheading{Data structures}
@@ -55,16 +55,15 @@ Copy constructor.
\membersection{wxAuiPaneInfo::BestSize}\label{wxauipaneinfobestsize}
\func{wxAuiPaneInfo\&}{BestSize}{\param{const wxSize\& }{size}}
\func{wxAuiPaneInfo\&}{BestSize}{\param{int }{x}, \param{int }{y}}
BestSize() sets the ideal size for the pane. The docking manager will attempt to use this size as much as possible when docking or floating the pane.
BestSize() sets the ideal size for the pane. The docking manager will attempt to use this size as much as possible when docking or floating the pane.
\membersection{wxAuiPaneInfo::Bottom}\label{wxauipaneinfobottom}
\func{wxAuiPaneInfo\&}{Bottom}{\void}
Bottom() sets the pane dock position to the bottom side of the frame. This is
Bottom() sets the pane dock position to the bottom side of the frame. This is
the same thing as calling Direction(wxAUI\_DOCK\_BOTTOM).
\membersection{wxAuiPaneInfo::BottomDockable}\label{wxauipaneinfobottomdockable}
@@ -83,26 +82,36 @@ Caption() sets the caption of the pane.
\func{wxAuiPaneInfo\&}{CaptionVisible}{\param{bool }{visible = true}}
CaptionVisible indicates that a pane caption should be visible. If false, no pane caption is drawn.
CaptionVisible indicates that a pane caption should be visible. If false, no pane caption is drawn.
\membersection{wxAuiPaneInfo::Centre}\label{wxauipaneinfocentre}
\func{wxAuiPaneInfo\&}{Centre}{\void}
\func{wxAuiPaneInfo\&}{Center}{\void}
Center() sets the pane dock position to the left side of the frame.
The centre pane is the space in the middle after all border panes (left, top, right, bottom) are subtracted from the layout.
This is the same thing as calling Direction(wxAUI\_DOCK\_CENTRE).
Center() sets the pane dock position to the left side of the frame. This is
the same thing as calling Direction(wxAUI\_DOCK\_CENTRE).
\membersection{wxAuiPaneInfo::CentrePane}\label{wxauipaneinfocentrepane}
\func{wxAuiPaneInfo\&}{CentrePane}{\void}
\func{wxAuiPaneInfo\&}{CenterPane}{\void}
CentrePane() specifies that the pane should adopt the default center pane settings. Centre panes usually do not have caption bars. This function provides an easy way of preparing a pane to be displayed in the center dock position.
CentrePane() specifies that the pane should adopt the default centre pane settings.
\membersection{wxAuiPaneInfo::Centre}\label{wxauipaneinfocentre}
\func{wxAuiPaneInfo\&}{Centre}{\void}
\func{wxAuiPaneInfo\&}{Center}{\void}
Centre() sets the pane to the center position of the frame. The centre pane is the space in the middle after all border panes (left, top, right, bottom) are subtracted from the layout.
\membersection{wxAuiPaneInfo::CentrePane}\label{wxauipaneinfocentrepane}
\func{wxAuiPaneInfo\&}{CentrePane}{\void}
\func{wxAuiPaneInfo\&}{CenterPane}{\void}
CentrePane() specifies that the pane should adopt the default center pane settings. Centre panes usually do not have caption bars. This function provides an easy way of preparing a pane to be displayed in the center dock position.
\membersection{wxAuiPaneInfo::CloseButton}\label{wxauipaneinfoclosebutton}
@@ -120,13 +129,13 @@ DefaultPane() specifies that the pane should adopt the default pane settings.
\func{wxAuiPaneInfo\&}{DestroyOnClose}{\param{bool }{b = true}}
DestroyOnClose() indicates whether a pane should be detroyed when it is closed. Normally a pane is simply hidden when the close button is clicked. Setting DestroyOnClose to true will cause the window to be destroyed when the user clicks the pane's close button.
DestroyOnClose() indicates whether a pane should be detroyed when it is closed. Normally a pane is simply hidden when the close button is clicked. Setting DestroyOnClose to true will cause the window to be destroyed when the user clicks the pane's close button.
\membersection{wxAuiPaneInfo::Direction}\label{wxauipaneinfodirection}
\func{wxAuiPaneInfo\&}{Direction}{\param{int }{direction}}
Direction() determines the direction of the docked pane. It is functionally the same as calling Left(), Right(), Top() or Bottom(), except that docking direction may be specified programmatically via the parameter.
Direction() determines the direction of the docked pane. It is functionally the same as calling Left(), Right(), Top() or Bottom(), except that docking direction may be specified programmatically via the parameter.
\membersection{wxAuiPaneInfo::Dock}\label{wxauipaneinfodock}
@@ -137,13 +146,13 @@ Direction() determines the direction of the docked pane. It is functionally the
\func{wxAuiPaneInfo\&}{Dockable}{\param{bool }{b = true}}
Dockable() specifies whether a frame can be docked or not. It is the same as specifying TopDockable(b).BottomDockable(b).LeftDockable(b).RightDockable(b).
Dockable() specifies whether a frame can be docked or not. It is the same as specifying TopDockable(b).BottomDockable(b).LeftDockable(b).RightDockable(b).
\membersection{wxAuiPaneInfo::Fixed}\label{wxauipaneinfofixed}
\func{wxAuiPaneInfo\&}{Fixed}{\void}
Fixed() forces a pane to be fixed size so that it cannot be resized. After calling Fixed(), IsFixed() will return true.
Fixed() forces a pane to be fixed size so that it cannot be resized. After calling Fixed(), IsFixed() will return true.
\membersection{wxAuiPaneInfo::Float}\label{wxauipaneinfofloat}
@@ -160,7 +169,6 @@ Floatable() sets whether the user will be able to undock a pane and turn it into
\membersection{wxAuiPaneInfo::FloatingPosition}\label{wxauipaneinfofloatingposition}
\func{wxAuiPaneInfo\&}{FloatingPosition}{\param{const wxPoint\& }{pos}}
\func{wxAuiPaneInfo\&}{FloatingPosition}{\param{int }{x}, \param{int }{y}}
FloatingPosition() sets the position of the floating pane.
@@ -168,7 +176,6 @@ FloatingPosition() sets the position of the floating pane.
\membersection{wxAuiPaneInfo::FloatingSize}\label{wxauipaneinfofloatingsize}
\func{wxAuiPaneInfo\&}{FloatingSize}{\param{const wxSize\& }{size}}
\func{wxAuiPaneInfo\&}{FloatingSize}{\param{int }{x}, \param{int }{y}}
FloatingSize() sets the size of the floating pane.
@@ -291,7 +298,7 @@ IsMoveable() returns true if the docked frame can be undocked or moved to anothe
\constfunc{bool}{IsOk}{\void}
IsOk() returns true if the wxAuiPaneInfo structure is valid. A pane structure is valid if it has an associated window.
IsOk() returns true if the wxAuiPaneInfo structure is valid. A pane structure is valid if it has an associated window.
\membersection{wxAuiPaneInfo::IsResizable}\label{wxauipaneinfoisresizable}
@@ -327,13 +334,13 @@ IsTopDockable() returns true if the pane can be docked at the top of the managed
\func{wxAuiPaneInfo\&}{Layer}{\param{int }{layer}}
Layer() determines the layer of the docked pane. The dock layer is similar to an onion, the inner-most layer being layer 0. Each shell moving in the outward direction has a higher layer number. This allows for more complex docking layout formation.
Layer() determines the layer of the docked pane. The dock layer is similar to an onion, the inner-most layer being layer 0. Each shell moving in the outward direction has a higher layer number. This allows for more complex docking layout formation.
\membersection{wxAuiPaneInfo::Left}\label{wxauipaneinfoleft}
\func{wxAuiPaneInfo\&}{Left}{\void}
Left() sets the pane dock position to the left side of the frame. This is the
Left() sets the pane dock position to the left side of the frame. This is the
same thing as calling Direction(wxAUI\_DOCK\_LEFT).
\membersection{wxAuiPaneInfo::LeftDockable}\label{wxauipaneinfoleftdockable}
@@ -345,7 +352,6 @@ LeftDockable() indicates whether a pane can be docked on the left of the frame.
\membersection{wxAuiPaneInfo::MaxSize}\label{wxauipaneinfomaxsize}
\func{wxAuiPaneInfo\&}{MaxSize}{\param{const wxSize\& }{size}}
\func{wxAuiPaneInfo\&}{MaxSize}{\param{int }{x}, \param{int }{y}}
MaxSize() sets the maximum size of the pane.
@@ -359,10 +365,9 @@ MaximizeButton() indicates that a maximize button should be drawn for the pane.
\membersection{wxAuiPaneInfo::MinSize}\label{wxauipaneinfominsize}
\func{wxAuiPaneInfo\&}{MinSize}{\param{const wxSize\& }{size}}
\func{wxAuiPaneInfo\&}{MinSize}{\param{int }{x}, \param{int }{y}}
MinSize() sets the minimum size of the pane. Please note that this is only partially supported as of this writing.
MinSize() sets the minimum size of the pane. Please note that this is only partially supported as of this writing.
\membersection{wxAuiPaneInfo::MinimizeButton}\label{wxauipaneinfominimizebutton}
@@ -380,7 +385,7 @@ Movable indicates whether a frame can be moved.
\func{wxAuiPaneInfo\&}{Name}{\param{const wxString\& }{n}}
Name() sets the name of the pane so it can be referenced in lookup functions. If a name is not specified by the user, a random name is assigned to the pane when it is added to the manager.
Name() sets the name of the pane so it can be referenced in lookup functions. If a name is not specified by the user, a random name is assigned to the pane when it is added to the manager.
\membersection{wxAuiPaneInfo::PaneBorder}\label{wxauipaneinfopaneborder}
@@ -404,7 +409,7 @@ Position() determines the position of the docked pane.
\func{wxAuiPaneInfo\&}{Resizable}{\param{bool }{resizable = true}}
Resizable() allows a pane to be resized if the parameter is true, and forces it to be a fixed size if the parameter is false. This is simply an antonym for Fixed().
Resizable() allows a pane to be resized if the parameter is true, and forces it to be a fixed size if the parameter is false. This is simply an antonym for Fixed().
\membersection{wxAuiPaneInfo::Right}\label{wxauipaneinforight}
@@ -465,7 +470,7 @@ TopDockable() indicates whether a pane can be docked at the top of the frame.
\func{wxAuiPaneInfo\&}{Window}{\param{wxWindow* }{w}}
Window() assigns the window pointer that the wxAuiPaneInfo should use. This normally does not need to be specified, as the window pointer is automatically assigned to the wxAuiPaneInfo structure as soon as it is added to the manager.
Window() assigns the window pointer that the wxAuiPaneInfo should use. This normally does not need to be specified, as the window pointer is automatically assigned to the wxAuiPaneInfo structure as soon as it is added to the manager.
\membersection{wxAuiPaneInfo::operator=}\label{wxauipaneinfooperatorassign}

View File

@@ -107,7 +107,7 @@ all the parameters.
\param{const wxSize\& }{size = wxDefaultSize},\rtfsp
\param{long}{ style = wxCP\_DEFAULT\_STYLE},\rtfsp
\param{const wxValidator\& }{validator = wxDefaultValidator},
\param{const wxString\& }{name = ``collapsiblePane"}}
\param{const wxString\& }{name = ``colourpickerctrl"}}
\wxheading{Parameters}

View File

@@ -377,30 +377,18 @@ this is not present, but required, the application name will be used instead.}
\docparam{style}{Can be one of wxCONFIG\_USE\_LOCAL\_FILE and
wxCONFIG\_USE\_GLOBAL\_FILE. The style interpretation depends on the config
class and is ignored by some implementations. For wxFileConfig, these styles
determine whether a local or global config file is created or used. If the
flag is present but the parameter is empty, the parameter will be set to a
default. If the parameter is present but the style flag not, the relevant flag
will be added to the style. For wxRegConfig, thie GLOBAL flag refers to HKLM
key while LOCAL one is for the usual HKCU one.
For wxFileConfig you can also add wxCONFIG\_USE\_RELATIVE\_PATH by logically
or'ing it to either of the \_FILE options to tell wxFileConfig to use relative
instead of absolute paths.
On non-VMS Unix systems, the default local configuration file is \tt{~/.appname}.
However, this path may be also used as user data directory
(see \helpref{wxStandardPaths::GetUserDataDir}{wxstandardpathsgetuserdatadir}) if
the application has several data files. In this case wxCONFIG\_USE\_SUBDIR
flag, which changes the default local configuration file to \tt{~/.appname/appname}
should be used. Notice that this flag is ignored on non-Unix system, including
VMS, or if a non-default \textit{localFilename} is provided. \newsince{2.8.2}
For wxFileConfig, you can also add wxCONFIG\_USE\_NO\_ESCAPE\_CHARACTERS which
will turn off character escaping for the values of entries stored in the config
file: for example a {\it foo} key with some backslash characters will be stored
as {\tt foo=C:$\backslash$mydir} instead of the usual storage of {\tt
foo=C:$\backslash\backslash$mydir}.
class and is ignored by some. For wxFileConfig, these styles determine whether
a local or global config file is created or used. If the flag is present but
the parameter is empty, the parameter will be set to a default. If the
parameter is present but the style flag not, the relevant flag will be added
to the style. For wxFileConfig you can also add wxCONFIG\_USE\_RELATIVE\_PATH
by logically or'ing it to either of the \_FILE options to tell wxFileConfig to
use relative instead of absolute paths. For wxFileConfig, you can also
add wxCONFIG\_USE\_NO\_ESCAPE\_CHARACTERS which will turn off character
escaping for the values of entries stored in the config file: for example
a {\it foo} key with some backslash characters will be stored as {\tt foo=C:$\backslash$mydir} instead
of the usual storage of {\tt foo=C:$\backslash\backslash$mydir}.
For wxRegConfig, this flag refers to HKLM, and provides read-only access.
The wxCONFIG\_USE\_NO\_ESCAPE\_CHARACTERS style can be helpful if your config
file must be read or written to by a non-wxWidgets program (which might not

View File

@@ -32,8 +32,8 @@ default user character set.
\func{}{wxCSConv}{\param{wxFontEncoding }{encoding}}
Constructor. You may specify either the name of the character set you want to
convert from/to or an encoding constant. If the character set name (or the
encoding) is not recognized, ISO 8859-1 is used as fall back.
convert from/to or an encoding constant. If the character set name is not
recognized, ISO 8859-1 is used as fall back.
\membersection{wxCSConv::\destruct{wxCSConv}}\label{wxcsconvdtor}
@@ -43,26 +43,12 @@ encoding) is not recognized, ISO 8859-1 is used as fall back.
Destructor frees any resources needed to perform the conversion.
\membersection{wxCSConv::IsOk}\label{wxcsconvisok}
\constfunc{bool}{IsOk}{\void}
Returns \true if the charset (or the encoding) given at constructor is really
available to use. Returns \false if ISO 8859-1 will be used instead.
Note this does \emph{not} mean that a given string will be correctly converted.
A malformed string may still make conversion functions return \texttt{wxCONV\_FAILED}.
\newsince{2.8.2}
\membersection{wxCSConv::MB2WC}\label{wxcsconvmb2wc}
\constfunc{size\_t}{MB2WC}{\param{wchar\_t* }{buf}, \param{const char* }{psz}, \param{size\_t }{n}}
Converts from the selected character set to Unicode. Returns length of string written to destination buffer.
\membersection{wxCSConv::WC2MB}\label{wxcsconvwc2mb}
\constfunc{size\_t}{WC2MB}{\param{char* }{buf}, \param{const wchar\_t* }{psz}, \param{size\_t }{n}}

View File

@@ -862,20 +862,6 @@ Same as \helpref{Set}{wxdatetimesettm}.
Returns {\tt true} if the object represents a valid time moment.
\membersection{wxDateTime::GetDateOnly}\label{wxdatetimegetdateonly}
\constfunc{wxDateTime}{GetDateOnly}{\void}
Returns the object having the same date component as this one but time of
00:00:00.
\newsince{2.8.2}
\wxheading{See also}
\helpref{ResetTime}{wxdatetimeresettime}
\membersection{wxDateTime::GetTm}\label{wxdatetimegettm}
\constfunc{Tm}{GetTm}{\param{const TimeZone\& }{tz = Local}}

View File

@@ -89,13 +89,6 @@ Appends the files in the history list, to all menus managed by the file history
Appends the files in the history list, to the given menu only.
\membersection{wxFileHistory::GetBaseId}\label{wxfilehistorygetbaseid}
\constfunc{wxWindowID}{GetBaseId}{\void}
Returns the base identifier for the range used for appending items.
\membersection{wxFileHistory::GetCount}\label{wxfilehistorygetcount}
\constfunc{size\_t}{GetCount}{\void}
@@ -164,13 +157,6 @@ explicitly by the application.
\helpref{wxConfig}{wxconfigbase}
\membersection{wxFileHistory::SetBaseId}\label{wxfilehistorysetbaseid}
\func{void}{SetBaseId}{\param{wxWindowID}{ baseId}}
Sets the base identifier for the range used for appending items.
\membersection{wxFileHistory::UseMenu}\label{wxfilehistoryusemenu}
\func{void}{UseMenu}{\param{wxMenu* }{menu}}

View File

@@ -186,17 +186,17 @@ the embedded window to be destroyed independently of the help controller.
\func{}{wxHtmlHelpWindow}{\param{wxHtmlHelpData* }{data = NULL}}
\func{}{wxHtmlHelpWindow}{\param{wxWindow* }{parent}, \param{int }{wxWindowID}, \param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ pos = wxDefaultSize}, \param{int }{style = wxTAB\_TRAVERSAL|wxTAB\_wxNO_BORDER}, \param{int }{helpStyle = wxHF\_DEFAULT\_STYLE}, \param{wxHtmlHelpData* }{data = NULL}}
\func{}{wxHtmlHelpWindow}{\param{wxWindow* }{parent}, \param{int }{wxWindowID}, \param{int }{style = wxHF\_DEFAULT\_STYLE}, \param{wxHtmlHelpData* }{data = NULL}}
Constructor.
Constructor. For the values of {\it helpStyle}, please see the documentation for \helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}.
Constructor. For the values of {\it style}, please see the documentation for \helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}.
\membersection{wxHtmlHelpWindow::Create}\label{wxhtmlhelpwindowcreate}
\func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id}, \param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ pos = wxDefaultSize}, \param{int }{style = wxTAB\_TRAVERSAL|wxTAB\_wxNO_BORDER}, \param{int }{helpStyle = wxHF\_DEFAULT\_STYLE}, \param{wxHtmlHelpData* }{data = NULL}}
\func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id}, \param{const wxString\& }{title = wxEmptyString}, \param{int }{style = wxHF\_DEFAULT\_STYLE}}
Creates the help window. See \helpref{the constructor}{wxhtmlhelpwindowwxhtmlhelpwindow}
Creates the frame. See \helpref{the constructor}{wxhtmlhelpwindowwxhtmlhelpwindow}
for a description of the parameters.
\membersection{wxHtmlHelpWindow::CreateContents}\label{wxhtmlhelpwindowcreatecontents}

View File

@@ -26,13 +26,13 @@
%\special{!/@scaleunit 1 def}
\parskip=10pt
\parindent=0pt
\title{wxWidgets 2.8.2: A portable C++ and Python GUI toolkit}
\title{wxWidgets 2.8.1: A portable C++ and Python GUI toolkit}
\winhelponly{\author{by Julian Smart et al
%\winhelponly{\\$$\image{1cm;0cm}{wxwin.wmf}$$}
}}
\winhelpignore{\author{Julian Smart, Robert Roebling, Vadim Zeitlin,
Robin Dunn, et al}
\date{February, 2007}
\date{December, 2006}
}
\makeindex
\begin{document}

View File

@@ -218,21 +218,20 @@ return type (without const).
\membersection{wxMBConv::FromWChar}\label{wxmbconvfromwchar}
\constfunc{virtual size\_t}{FromWChar}{\param{wchar\_t *}{dst}, \param{size\_t }{dstLen}, \param{const char *}{src}, \param{size\_t }{srcLen = wxNO\_LEN}}
\constfunc{virtual size\_t}{FromWChar}{\param{wchar\_t *}{dst}, \param{size\_t }{dstLen}, \param{const char *}{src}, \param{size\_t }{srcLen = $-1$}}
The most general function for converting a multibyte string to a wide string.
The main case is when \arg{dst} is not \NULL and \arg{srcLen} is not
\texttt{wxNO\_LEN} (which is defined as \texttt{(size\_t)$-1$}): then
The main case is when \arg{dst} is not \NULL and \arg{srcLen} is not $-1$: then
the function converts exactly \arg{srcLen} bytes starting at \arg{src} into
wide string which it output to \arg{dst}. If the length of the resulting wide
string is greater than \arg{dstLen}, an error is returned. Note that if
\arg{srcLen} bytes don't include \NUL characters, the resulting wide string is
not \NUL-terminated neither.
If \arg{srcLen} is \texttt{wxNO\_LEN}, the function supposes that the string is
properly (i.e. as necessary for the encoding handled by this conversion)
\NUL-terminated and converts the entire string, including any trailing \NUL
bytes. In this case the wide string is also \NUL-terminated.
If \arg{srcLen} is $-1$, the function supposes that the string is properly
(i.e. as necessary for the encoding handled by this conversion) \NUL-terminated
and converts the entire string, including any trailing \NUL bytes. In this case
the wide string is also \NUL-terminated.
Finally, if \arg{dst} is \NULL, the function returns the length of the needed
buffer.
@@ -263,13 +262,12 @@ trailing \NUL characters for any encoding.
This function returns $1$ for most of the multibyte encodings in which the
string is terminated by a single \NUL, $2$ for UTF-16 and $4$ for UTF-32 for
which the string is terminated with $2$ and $4$ \NUL characters respectively.
The other cases are not currently supported and \texttt{wxCONV\_FAILED}
(defined as $-1$) is returned for them.
The other cases are not currently supported and $-1$ is returned for them.
\membersection{wxMBConv::ToWChar}\label{wxmbconvtowchar}
\constfunc{virtual size\_t}{ToWChar}{\param{char\_t *}{dst}, \param{size\_t }{dstLen}, \param{const wchar\_t *}{src}, \param{size\_t }{srcLen = wxNO\_LEN}}
\constfunc{virtual size\_t}{ToWChar}{\param{char\_t *}{dst}, \param{size\_t }{dstLen}, \param{const wchar\_t *}{src}, \param{size\_t }{srcLen = $-1$}}
This function has the same semantics as \helpref{FromWChar}{wxmbconvfromwchar}
except that it converts a wide string to multibyte one.

View File

@@ -606,8 +606,6 @@ The function returns one of the following values:
#define wxRICHTEXT_HITTEST_AFTER 0x04
// The point was on the position returned from HitTest
#define wxRICHTEXT_HITTEST_ON 0x08
// The point was on space outside content
#define wxRICHTEXT_HITTEST_OUTSIDE 0x10
\end{verbatim}
}
@@ -814,7 +812,6 @@ and not the content. This allows content styling to be preserved independently f
\item wxRICHTEXT\_SETSTYLE\_CHARACTERS\_ONLY: specifies that the style should only be applied to characters,
and not the paragraph. This allows content styling to be preserved independently from that of e.g. a named paragraph style.
\item wxRICHTEXT\_SETSTYLE\_RESET: resets (clears) the existing style before applying the new style.
\item wxRICHTEXT\_SETSTYLE\_REMOVE: removes the specified style. Only the style flags are used in this operation.
\end{itemize}
\membersection{wxRichTextBuffer::SetStyleSheet}\label{wxrichtextbuffersetstylesheet}

View File

@@ -1407,7 +1407,6 @@ and not the content. This allows content styling to be preserved independently f
\item wxRICHTEXT\_SETSTYLE\_CHARACTERS\_ONLY: specifies that the style should only be applied to characters,
and not the paragraph. This allows content styling to be preserved independently from that of e.g. a named paragraph style.
\item wxRICHTEXT\_SETSTYLE\_RESET: resets (clears) the existing style before applying the new style.
\item wxRICHTEXT\_SETSTYLE\_REMOVE: removes the specified style. Only the style flags are used in this operation.
\end{itemize}
\membersection{wxRichTextCtrl::SetStyleSheet}\label{wxrichtextctrlsetstylesheet}

View File

@@ -670,14 +670,6 @@ Aligns the object to the left, shortcut for \texttt{Align(wxALIGN\_LEFT)}
\helpref{Align}{wxsizerflagsalign}
\membersection{wxSizerFlags::FixedMinSize}\label{wxsizerflagsfixedminsize}
\func{wxSizerFlags\& }{FixedMinSize}{\void}
Set the \texttt{wxFIXED\_MINSIZE} flag which indicates that the initial size of
the window should be also set as its minimal size.
\membersection{wxSizerFlags::Proportion}\label{wxsizerflagsproportion}
\func{wxSizerFlags\& }{Proportion}{\param{int }{proportion = 0}}
@@ -696,14 +688,6 @@ Aligns the object to the right, shortcut for \texttt{Align(wxALIGN\_RIGHT)}
\helpref{Align}{wxsizerflagsalign}
\membersection{wxSizerFlags::Shaped}\label{wxsizerflagsshaped}
\func{wxSizerFlags\& }{Shaped}{\void}
Set the \texttt{wx\_SHAPED} flag which indicates that the elements should
always keep the fixed width to height ratio equal to its original value.
\membersection{wxSizerFlags::TripleBorder}\label{wxsizerflagstriplebleborder}
\func{wxSizerFlags\& }{TripleBorder}{\param{int }{direction = wxALL}}

View File

@@ -290,11 +290,6 @@ others are not.
\helpref{wxToolBar::AddTool}{wxtoolbaraddtool}
\membersection{wxToolBar::ClearTools}\label{wxtoolbarcleartools}
\func{void}{ClearTools}{\void}
Deletes all the tools in the toolbar.
\membersection{wxToolBar::DeleteTool}\label{wxtoolbardeletetool}
@@ -384,13 +379,6 @@ A pointer to a tool if a tool is found, or \NULL otherwise.
Currently not implemented in wxGTK (always returns \NULL there).
\membersection{wxToolBar::GetToolsCount}\label{wxtoolbargettoolscount}
\constfunc{int}{GetToolsCount}{\void}
Returns the number of tools in the toolbar.
\membersection{wxToolBar::GetToolSize}\label{wxtoolbargettoolsize}
\func{wxSize}{GetToolSize}{\void}
@@ -761,17 +749,6 @@ and not the eventual size of the tool button.
Sets the client data associated with the tool.
\membersection{wxToolBar::SetToolDisabledBitmap}\label{wxtoolbarsettooldisabledbitmap}
\func{void}{SetToolDisabledBitmap}{\param{int }{id}, \param{const wxBitmap\& }{bitmap}}
Sets the bitmap to be used by the tool with the given ID when the tool
is in a disabled state. This can only be used on Button tools, not
controls. NOTE: The native toolbar classes on the main platforms all
synthesize the disabled bitmap from the normal bitmap, so this
function will have no effect on those platforms.
\membersection{wxToolBar::SetToolLongHelp}\label{wxtoolbarsettoollonghelp}
\func{void}{SetToolLongHelp}{\param{int }{toolId}, \param{const wxString\& }{helpString}}
@@ -835,15 +812,6 @@ An application might use short help for identifying the tool purpose in a toolti
\helpref{wxToolBar::GetToolShortHelp}{wxtoolbargettoolshorthelp}, \helpref{wxToolBar::SetToolLongHelp}{wxtoolbarsettoollonghelp}
\membersection{wxToolBar::SetToolNormalBitmap}\label{wxtoolbarsettoolnormalbitmap}
\func{void}{SetToolNormalBitmap}{\param{int }{id}, \param{const wxBitmap\& }{bitmap}}
Sets the bitmap to be used by the tool with the given ID. This can
only be used on Button tools, not controls.
\membersection{wxToolBar::SetToolSeparation}\label{wxtoolbarsettoolseparation}
\func{void}{SetToolSeparation}{\param{int}{ separation}}

View File

@@ -38,7 +38,7 @@ wxBookCtrlBase\\
\twocolwidtha{5cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{\windowstyle{wxBK\_DEFAULT}}{Choose the default location for the
\twocolitem{\windowstyle{wxLB\_DEFAULT}}{Choose the default location for the
labels depending on the current platform (currently always the top).}
\end{twocollist}

View File

@@ -1074,7 +1074,7 @@ None
\wxheading{See also}
\helpref{wxTreeCtrl}{wxtreectrl}, \helpref{wxTreeItemData}{wxtreeitemdata},\\
\helpref{wxTreeItemCtrl}{wxtreeitemctrl}, \helpref{wxTreeItemData}{wxtreeitemdata},\\
\helpref{wxTreeCtrl overview}{wxtreectrloverview}
@@ -1085,7 +1085,7 @@ None
\func{}{wxTreeItemId}{\void}
Default constructor. wxTreemItemIds are not meant to be constructed explicitly by
the user; they are returned by the \helpref{wxTreeCtrl}{wxtreectrl} functions instead.
the user; they are returned by the \helpref{wxTreeItemCtrl}{wxtreeitemctrl} functions instead.
\membersection{wxTreeItemId::IsOk}\label{wxtreeitemidisok}

View File

@@ -1,5 +1,5 @@
wxWidgets for Mac installation
------------------------------
wxWidgets 2.8.0 for Mac installation
------------------------------------
On MacOS X, you can download Apple's free developer tools (gcc
and associated headers and libraries, such as the Carbon API).

View File

@@ -1,4 +1,4 @@
Welcome to wxWidgets/Mac
Welcome to wxWidgets/Mac 2.8.2
More Information is available from the wxWidgets project home page at

View File

@@ -1,10 +1,10 @@
Welcome to wxWidgets/MGL
Welcome to wxWidgets/MGL 2.8.0
You have downloaded the MGL port of the wxWidgets GUI library.
This runs on top of SciTech MGL library (http://www.scitechsoft.com/)
that is available for variety of operating systems and comes with support
for embedded devices.
You have downloaded version 2.8.0 of the MGL port of
the wxWidgets GUI library. This runs on top of SciTech MGL library
(http://www.scitechsoft.com/) that is available for variety of
operating systems and comes with support for embedded devices.
More information about the wxWidgets project as a whole
can be found at:

View File

@@ -1,5 +1,5 @@
wxWidgets for Motif installation
--------------------------------
wxWidgets 2.8.0 for Motif installation
------------------------------------
IMPORTANT NOTE:
@@ -11,7 +11,7 @@ IMPORTANT NOTE:
When sending bug reports tell us what version of wxWidgets you are
using (including the beta) and what compiler on what system. One
example: wxMotif 2.8.1, gcc 2.95.4, Redhat 6.1
example: wxMotif 2.8.0, gcc 2.95.4, Redhat 6.1
First steps
-----------

View File

@@ -1,7 +1,8 @@
Welcome to wxWidgets/Motif
Welcome to wxWidgets/Motif 2.8.0
You have downloaded the Motif port of the wxWidgets GUI library.
You have downloaded version 2.8.0 of the Motif port of
the wxWidgets GUI library.
More information about the wxWidgets project as a whole
can be found at:

View File

@@ -1,7 +1,7 @@
Installing wxWidgets for Windows
Installing wxWidgets 2.8.0
-----------------------------------------------------------
This is wxWidgets for Microsoft Windows 9x/ME, Windows NT,
This is wxWidgets 2.8.0 for Microsoft Windows 9x/ME, Windows NT,
Windows 2000, Windows XP and Windows CE.
These installation notes can be found in docs/msw/install.txt
@@ -368,7 +368,7 @@ Metrowerks CodeWarrior compilation
** The authoritative list of files is in build/bakefiles/files.bkl
1. CodeWarrior Pro 7 project files in XML format are already
included in wxMSW-2.8.x.zip and the setup version.
included in wxMSW-2.8.0.zip and the setup version.
2. Review the file include\wx\msw\setup.h (or include\wx\msw\setup0.h if
you are working from the CVS version) to make sure the settings reflect

View File

@@ -1,11 +1,11 @@
=================================================
Welcome to wxWidgets/CE
Welcome to wxWidgets/CE 2.8.0
=================================================
You have downloaded the Windows CE port of the wxWidgets GUI library.
This runs on Pocket PC 2002/2003, Smartphone 2002/2003,
Windows CE .NET 4.x, and Windows Mobile 5.
You have downloaded version 2.8.0 of the Windows CE port of
the wxWidgets GUI library. This runs on Pocket PC 2002/2003,
Smartphone 2002/2003, Windows CE .NET 4.x, and Windows Mobile 5.
More information about the wxWidgets project as a whole
can be found at:

View File

@@ -1,7 +1,7 @@
Installing wxWidgets
--------------------
Installing wxWidgets 2.8.0
--------------------------
This is wxWidgets for IBM OS/2 Warp3 and Warp4. This is an unstable
This is wxWidgets 2.8.0 for IBM OS/2 Warp3 and Warp4. This is an unstable
development release and OS/2 is considered to be in beta.
IMPORTANT NOTE: If you experience problems installing, please

View File

@@ -1,4 +1,4 @@
wxWidgets 2.8.2
wxWidgets 2.8.1
---------------------------------------------------------
Welcome to wxWidgets, a sophisticated cross-platform C++
@@ -153,5 +153,5 @@ web site.
Have fun!
The wxWidgets Team, February 2007
The wxWidgets Team, January 2007

View File

@@ -11,9 +11,10 @@
{wx}/*.spec
{wx}/include/wx/version.h
{wx}/include/msvc/wx/setup.h
{wx}/src/wxvc_dll.dsp
{wx}/docs/latex/wx/manual.tex
{wx}/docs/msw/install.txt
{wx}/docs/changes.txt
{wx}/docs/changes.txt
{wx}/docs/gtk/changes.txt
{wx}/build/bakefiles/wxpresets/presets/wx_win32.bkl
{wx}/build/script/win_docs.bat {windows doc and setup file}
{wx}/distrib/scripts/build-environ.cfg {cvs tar and zip files}
@@ -33,9 +34,6 @@
Version: $Id$
$Log$
Revision 1.10.2.1 2007/02/12 10:54:52 CE
add docs/msw/install.txt
Revision 1.10 2007/01/07 22:28:07 VZ
also update manual.tex

View File

@@ -46,14 +46,8 @@ The changes that are NOT binary compatible:
even a default one)
- Changing the order of the virtual functions in a class
["switching" them, etc.]
- Changing access privileges of a function: some compilers (among which MSVC)
use the function access specifier in its mangled name. Moreover, while
changing a private function to public should be compatible (as the old
symbol can't be referenced from outside the library anyhow), changing a
virtual private function to public is NOT compatible because the old symbol
is referenced by the virtual tables in the executable code and so an old
program compiled with MSVC wouldn't start up with a new DLL even if it
doesn't use the affected symbol at all!
- Changing access privileges to a function (protected to private etc.)
[unlike KDE we need to support windows so this is not allowed]
- Adding a member variable
- Changing the order of non-static member variables

View File

@@ -1,7 +1,8 @@
Welcome to wxWidgets/Wine
Welcome to wxWidgets/Wine 2.8.0
You have downloaded the WINE port of the wxWidgets GUI library.
You have downloaded version 2.8.0 of the WINE port of
the wxWidgets GUI library.
Information on how to install can be found in the file
install.txt.

View File

@@ -1,5 +1,5 @@
wxWidgets for X11 installation
------------------------------
wxWidgets 2.8.0 for X11 installation
------------------------------------
IMPORTANT NOTE:

View File

@@ -1,10 +1,11 @@
Welcome to wxWidgets/X11
Welcome to wxWidgets/X11 2.8.0
You have downloaded the X11 port of the wxWidgets GUI library.
This runs on X11 with no Motif, Xt, GTK+ or any other standard
widget set -- instead it uses the wxUniversal widgets. The
intention is to have it run on NanoX as well as desktop X11.
You have downloaded version 2.8.0 of the X11 port of
the wxWidgets GUI library. This runs on X11 with no
Motif, Xt, GTK+ or any other standard widget set --
instead it uses the wxUniversal widgets. The intention
is to have it run on NanoX as well as desktop X11.
More information about the wxWidgets project as a whole
can be found at:

View File

@@ -1274,7 +1274,6 @@
#define wxUSE_BOOKCTRL (wxUSE_NOTEBOOK || \
wxUSE_LISTBOOK || \
wxUSE_CHOICEBOOK || \
wxUSE_TOOLBOOK || \
wxUSE_TREEBOOK)
#if wxUSE_COLLPANE
@@ -1310,17 +1309,6 @@
# endif
#endif /* wxUSE_CHOICEBOOK */
#if wxUSE_TOOLBOOK
# if !wxUSE_TOOLBAR
# ifdef wxABORT_ON_CONFIG_ERROR
# error "wxToolbook requires wxToolBar"
# else
# undef wxUSE_TOOLBAR
# define wxUSE_TOOLBAR 1
# endif
# endif
#endif /* wxUSE_TOOLBOOK */
#if !wxUSE_ODCOMBOBOX
# if wxUSE_BITMAPCOMBOBOX
# error "wxBitmapComboBox requires wxOwnerDrawnComboBox"

View File

@@ -56,8 +56,7 @@ enum
wxCONFIG_USE_LOCAL_FILE = 1,
wxCONFIG_USE_GLOBAL_FILE = 2,
wxCONFIG_USE_RELATIVE_PATH = 4,
wxCONFIG_USE_NO_ESCAPE_CHARACTERS = 8,
wxCONFIG_USE_SUBDIR = 16
wxCONFIG_USE_NO_ESCAPE_CHARACTERS = 8
};
// ----------------------------------------------------------------------------

View File

@@ -639,12 +639,6 @@ public:
// resets time to 00:00:00, doesn't change the date
wxDateTime& ResetTime();
#if wxABI_VERSION >= 20802
// get the date part of this object only, i.e. the object which has the
// same date as this one but time of 00:00:00
wxDateTime GetDateOnly() const;
#endif // wxABI 2.8.1+
// the following functions don't change the values of the other
// fields, i.e. SetMinute() won't change either hour or seconds value

View File

@@ -594,12 +594,6 @@ public:
const wxList& GetMenus() const { return m_fileMenus; }
#if wxABI_VERSION >= 20802
// Set/get base id
void SetBaseId(wxWindowID baseId) { m_idBase = baseId; }
wxWindowID GetBaseId() const { return m_idBase; }
#endif // wxABI 2.8.2+
#if WXWIN_COMPATIBILITY_2_6
// deprecated, use GetCount() instead
wxDEPRECATED( size_t GetNoHistoryFiles() const );

View File

@@ -60,12 +60,6 @@ public:
virtual void ShowCancelButton( bool show );
virtual bool IsCancelButtonVisible() const;
#if wxABI_VERSION >= 20802
// TODO: In 2.9 these should probably be virtual, and declared in the base class...
void SetDescriptiveText(const wxString& text);
wxString GetDescriptiveText() const;
#endif
// accessors
// ---------

View File

@@ -52,12 +52,6 @@ public:
virtual void SetWindowStyleFlag( long style );
#if wxABI_VERSION >= 20802
// TODO: In 2.9 these should probably be virtual, and declared in the base class...
void SetToolNormalBitmap(int id, const wxBitmap& bitmap);
void SetToolDisabledBitmap(int id, const wxBitmap& bitmap);
#endif
static wxVisualAttributes
GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);

View File

@@ -45,11 +45,11 @@ public:
// all generic methods are in wxControlWithItems, except for the following
// ones which are not yet implemented by wxChoice/wxComboBox
void Insert(const wxString& item, unsigned int pos)
{ /* return*/ wxControlWithItems::Insert(item,pos); }
{ DoInsert(item, pos); }
void Insert(const wxString& item, unsigned int pos, void *clientData)
{ /* return*/ wxControlWithItems::Insert(item,pos,clientData); }
{ DoInsert(item, pos); SetClientData(pos, clientData); }
void Insert(const wxString& item, unsigned int pos, wxClientData *clientData)
{ /* return*/ wxControlWithItems::Insert(item,pos,clientData); }
{ DoInsert(item, pos); SetClientObject(pos, clientData); }
void InsertItems(unsigned int nItems, const wxString *items, unsigned int pos);
void InsertItems(const wxArrayString& items, unsigned int pos)

View File

@@ -53,12 +53,6 @@ public:
virtual void ShowCancelButton( bool show );
virtual bool IsCancelButtonVisible() const;
#if wxABI_VERSION >= 20802
// TODO: In 2.9 these should probably be virtual, and declared in the base class...
void SetDescriptiveText(const wxString& text);
wxString GetDescriptiveText() const;
#endif
virtual wxInt32 MacSearchFieldSearchHit( WXEVENTHANDLERREF handler , WXEVENTREF event ) ;
virtual wxInt32 MacSearchFieldCancelHit( WXEVENTHANDLERREF handler , WXEVENTREF event ) ;

View File

@@ -57,13 +57,7 @@ class WXDLLEXPORT wxToolBar: public wxToolBarBase
virtual void SetRows(int nRows);
#if wxABI_VERSION >= 20802
// TODO: In 2.9 these should probably be virtual, and declared in the base class...
void SetToolNormalBitmap(int id, const wxBitmap& bitmap);
void SetToolDisabledBitmap(int id, const wxBitmap& bitmap);
#endif
// Add all the buttons
// Add all the buttons
virtual wxString MacGetToolTipString( wxPoint &where ) ;
void OnPaint(wxPaintEvent& event) ;

View File

@@ -375,13 +375,4 @@
# endif
#endif /* !wxUSE_ACTIVEX */
#if defined(_MSC_VER) && _MSC_VER <= 1200 && wxUSE_GRAPHICS_CONTEXT
# ifdef wxABORT_ON_CONFIG_ERROR
# error "wxGraphicsContext needs MSVC 7 or newer"
# else
# undef wxUSE_GRAPHICS_CONTEXT
# define wxUSE_GRAPHICS_CONTEXT 0
# endif
#endif
#endif /* _WX_MSW_CHKCONF_H_ */

View File

@@ -47,7 +47,7 @@
#define wxSEH_HANDLE(rc)
#endif // wxUSE_ON_FATAL_EXCEPTION
#if wxUSE_ON_FATAL_EXCEPTION && defined(__VISUALC__) && !defined(__WXWINCE__)
#if defined(__VISUALC__) && !defined(__WXWINCE__)
#include <eh.h>
// C++ exception to structured exceptions translator: we need it in order

View File

@@ -99,22 +99,14 @@ protected:
// the handler for wxSpinButton events
void OnSpinChange(wxSpinEvent& event);
// handle processing of special keys
// Handle processing of special keys
void OnChar(wxKeyEvent& event);
void OnSetFocus(wxFocusEvent& event);
void OnKillFocus(wxFocusEvent& event);
// generate spin control update event with the given value
void SendSpinUpdate(int value);
// called to ensure that the value is in the correct range
virtual void NormalizeValue();
// the value of the control before the latest change (which might not have
// changed anything in fact -- this is why we need this field)
int m_oldValue;
virtual void NormalizeValue();
// the data for the "buddy" text ctrl
WXHWND m_hwndBuddy;
WXFARPROC m_wndProcBuddy;

View File

@@ -54,12 +54,6 @@ public:
virtual void SetRows(int nRows);
#if wxABI_VERSION >= 20802
// TODO: In 2.9 these should probably be virtual, and declared in the base class...
void SetToolNormalBitmap(int id, const wxBitmap& bitmap);
void SetToolDisabledBitmap(int id, const wxBitmap& bitmap);
#endif
// implementation only from now on
// -------------------------------

View File

@@ -52,6 +52,8 @@ public:
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxButtonNameStr);
virtual void DoSetToolTip( wxToolTip *tip );
public: // public API
// margin between the text control and the picker
@@ -105,16 +107,12 @@ public: // public API
wxControl *GetPickerCtrl()
{ return m_picker; }
// methods that derived class must/may override
public: // methods that derived class must/may override
virtual void UpdatePickerFromTextCtrl() = 0;
virtual void UpdateTextCtrlFromPicker() = 0;
protected:
// overridden base class methods
#if wxUSE_TOOLTIPS
virtual void DoSetToolTip(wxToolTip *tip);
#endif // wxUSE_TOOLTIPS
protected: // utility functions
// event handlers
void OnTextCtrlDelete(wxWindowDestroyEvent &);

View File

@@ -139,8 +139,6 @@ class WXDLLIMPEXP_RICHTEXT wxRichTextBuffer;
#define wxRICHTEXT_HITTEST_AFTER 0x04
// The point was on the position returned from HitTest
#define wxRICHTEXT_HITTEST_ON 0x08
// The point was on space outside content
#define wxRICHTEXT_HITTEST_OUTSIDE 0x10
/*!
* Flags for GetRangeSize
@@ -183,9 +181,6 @@ class WXDLLIMPEXP_RICHTEXT wxRichTextBuffer;
// Resets the existing style before applying the new style
#define wxRICHTEXT_SETSTYLE_RESET 0x40
// Removes the given style instead of applying it
#define wxRICHTEXT_SETSTYLE_REMOVE 0x80
/*!
* Flags for text insertion
*/
@@ -2322,9 +2317,6 @@ WXDLLIMPEXP_RICHTEXT bool wxRichTextApplyStyle(wxRichTextAttr& destStyle, const
WXDLLIMPEXP_RICHTEXT bool wxRichTextApplyStyle(wxTextAttrEx& destStyle, const wxRichTextAttr& style, wxRichTextAttr* compareWith = NULL);
WXDLLIMPEXP_RICHTEXT bool wxRichTextApplyStyle(wxRichTextAttr& destStyle, const wxRichTextAttr& style, wxRichTextAttr* compareWith = NULL);
// Remove attributes
WXDLLIMPEXP_RICHTEXT bool wxRichTextRemoveStyle(wxTextAttrEx& destStyle, const wxRichTextAttr& style);
/// Combine two bitlists
WXDLLIMPEXP_RICHTEXT bool wxRichTextCombineBitlists(int& valueA, int valueB, int& flagsA, int flagsB);

View File

@@ -78,11 +78,6 @@ public:
wxSizerFlags& Left() { return Align(wxALIGN_LEFT); }
wxSizerFlags& Right() { return Align(wxALIGN_RIGHT); }
#if wxABI_VERSION >= 20802
wxSizerFlags& Top() { return Align(wxALIGN_TOP); }
wxSizerFlags& Bottom() { return Align(wxALIGN_BOTTOM); }
#endif // wxABI 2.8.2+
// default border size used by Border() below
static int GetDefaultBorder()
{
@@ -158,23 +153,6 @@ public:
#endif
}
#if wxABI_VERSION >= 20802
// setters for the others flags
wxSizerFlags& Shaped()
{
m_flags |= wxSHAPED;
return *this;
}
wxSizerFlags& FixedMinSize()
{
m_flags |= wxFIXED_MINSIZE;
return *this;
}
#endif // wx 2.8.2+
// accessors for wxSizer only
int GetProportion() const { return m_proportion; }
int GetFlags() const { return m_flags; }

View File

@@ -385,11 +385,6 @@ public:
void Clear();
#if wxABI_VERSION >= 20802
// return true if the conversion could be initilized successfully
bool IsOk() const;
#endif // wx 2.8.2+
private:
// common part of all ctors
void Init();

View File

@@ -21,7 +21,6 @@
#include "wx/longlong.h"
#include "wx/event.h"
#include "wx/stopwatch.h" // for backwards compatibility
#include "wx/window.h" // only for NewControlId()
// more readable flags for Start():
@@ -52,12 +51,8 @@ public:
// same as ctor above
void SetOwner(wxEvtHandler *owner, int timerid = wxID_ANY)
{
m_owner = owner;
m_idTimer = timerid == wxID_ANY ? wxWindow::NewControlId() : timerid;
}
wxEvtHandler *GetOwner() const { return m_owner; }
{ m_owner = owner; m_idTimer = timerid == wxID_ANY ? wxNewId() : timerid; }
wxEvtHandler * GetOwner() const { return m_owner; }
virtual ~wxTimerBase();

View File

@@ -28,9 +28,9 @@
/* NB: this file is parsed by automatic tools so don't change its format! */
#define wxMAJOR_VERSION 2
#define wxMINOR_VERSION 8
#define wxRELEASE_NUMBER 2
#define wxRELEASE_NUMBER 1
#define wxSUBRELEASE_NUMBER 0
#define wxVERSION_STRING _T("wxWidgets 2.8.2")
#define wxVERSION_STRING _T("wxWidgets 2.8.1")
/* nothing to update below this line when updating the version */
/* ---------------------------------------------------------------------------- */

View File

@@ -41,9 +41,7 @@ private:
wxObject* Handle_spacer();
wxObject* Handle_sizer();
wxSizer* Handle_wxBoxSizer();
#if wxUSE_STATBOX
wxSizer* Handle_wxStaticBoxSizer();
#endif
wxSizer* Handle_wxGridSizer();
wxSizer* Handle_wxFlexGridSizer();
wxSizer* Handle_wxGridBagSizer();

View File

@@ -223,7 +223,7 @@ public:
// resource. If an unknown str_id is requested (i.e. other than wxID_XXX
// or integer), a new record is created which associates the given string
// with a number. If value_if_not_found == wxID_NONE, the number is obtained via
// wxWindow::NewControlId(). Otherwise value_if_not_found is used.
// wxNewId(). Otherwise value_if_not_found is used.
// Macro XRCID(name) is provided for convenient use in event tables.
static int GetXRCID(const wxChar *str_id, int value_if_not_found = wxID_NONE);

View File

@@ -269,15 +269,14 @@ class SettingsPanel : public wxPanel
public:
SettingsPanel(wxWindow* parent, MyFrame* frame)
: wxPanel(parent, wxID_ANY, wxDefaultPosition, wxDefaultSize),
m_frame(frame)
: wxPanel(parent, wxID_ANY, wxDefaultPosition, wxDefaultSize)
{
//wxBoxSizer* vert = new wxBoxSizer(wxVERTICAL);
//vert->Add(1, 1, 1, wxEXPAND);
wxBoxSizer* s1 = new wxBoxSizer(wxHORIZONTAL);
m_border_size = new wxSpinCtrl(this, ID_PaneBorderSize, wxString::Format(wxT("%d"), frame->GetDockArt()->GetMetric(wxAUI_DOCKART_PANE_BORDER_SIZE)), wxDefaultPosition, wxSize(50,20), wxSP_ARROW_KEYS, 0, 100, frame->GetDockArt()->GetMetric(wxAUI_DOCKART_PANE_BORDER_SIZE));
m_border_size = new wxSpinCtrl(this, ID_PaneBorderSize, wxEmptyString, wxDefaultPosition, wxSize(50,20));
s1->Add(1, 1, 1, wxEXPAND);
s1->Add(new wxStaticText(this, wxID_ANY, wxT("Pane Border Size:")));
s1->Add(m_border_size);
@@ -286,7 +285,7 @@ public:
//vert->Add(s1, 0, wxEXPAND | wxLEFT | wxBOTTOM, 5);
wxBoxSizer* s2 = new wxBoxSizer(wxHORIZONTAL);
m_sash_size = new wxSpinCtrl(this, ID_SashSize, wxString::Format(wxT("%d"), frame->GetDockArt()->GetMetric(wxAUI_DOCKART_SASH_SIZE)), wxDefaultPosition, wxSize(50,20), wxSP_ARROW_KEYS, 0, 100, frame->GetDockArt()->GetMetric(wxAUI_DOCKART_SASH_SIZE));
m_sash_size = new wxSpinCtrl(this, ID_SashSize, wxEmptyString, wxDefaultPosition, wxSize(50,20));
s2->Add(1, 1, 1, wxEXPAND);
s2->Add(new wxStaticText(this, wxID_ANY, wxT("Sash Size:")));
s2->Add(m_sash_size);
@@ -295,7 +294,7 @@ public:
//vert->Add(s2, 0, wxEXPAND | wxLEFT | wxBOTTOM, 5);
wxBoxSizer* s3 = new wxBoxSizer(wxHORIZONTAL);
m_caption_size = new wxSpinCtrl(this, ID_CaptionSize, wxString::Format(wxT("%d"), frame->GetDockArt()->GetMetric(wxAUI_DOCKART_CAPTION_SIZE)), wxDefaultPosition, wxSize(50,20), wxSP_ARROW_KEYS, 0, 100, frame->GetDockArt()->GetMetric(wxAUI_DOCKART_CAPTION_SIZE));
m_caption_size = new wxSpinCtrl(this, ID_CaptionSize, wxEmptyString, wxDefaultPosition, wxSize(50,20));
s3->Add(1, 1, 1, wxEXPAND);
s3->Add(new wxStaticText(this, wxID_ANY, wxT("Caption Size:")));
s3->Add(m_caption_size);
@@ -402,11 +401,12 @@ public:
cont_sizer->Add(grid_sizer, 1, wxEXPAND | wxALL, 5);
SetSizer(cont_sizer);
GetSizer()->SetSizeHints(this);
#if 0
m_frame = frame;
m_border_size->SetValue(frame->GetDockArt()->GetMetric(wxAUI_DOCKART_PANE_BORDER_SIZE));
m_sash_size->SetValue(frame->GetDockArt()->GetMetric(wxAUI_DOCKART_SASH_SIZE));
m_caption_size->SetValue(frame->GetDockArt()->GetMetric(wxAUI_DOCKART_CAPTION_SIZE));
#endif
UpdateColors();
}

View File

@@ -84,8 +84,7 @@ protected:
void OnQuit(wxCommandEvent& event);
#if USE_LOG_WINDOW
void OnClearLog(wxCommandEvent& event);
void OnClearLogUpdateUI(wxUpdateUIEvent& event);
#endif // USE_LOG_WINDOW
#endif
void OnAbout(wxCommandEvent& event);
@@ -201,7 +200,7 @@ enum
{
Menu_File_Quit = wxID_EXIT,
#if USE_LOG_WINDOW
Menu_File_ClearLog = 100,
Menu_File_ClearLog,
#endif
Menu_MenuBar_Toggle = 200,
@@ -267,7 +266,6 @@ BEGIN_EVENT_TABLE(MyFrame, wxFrame)
EVT_MENU(Menu_File_Quit, MyFrame::OnQuit)
#if USE_LOG_WINDOW
EVT_MENU(Menu_File_ClearLog, MyFrame::OnClearLog)
EVT_UPDATE_UI(Menu_File_ClearLog, MyFrame::OnClearLogUpdateUI)
#endif
EVT_MENU(Menu_Help_About, MyFrame::OnAbout)
@@ -631,21 +629,11 @@ void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
}
#if USE_LOG_WINDOW
void MyFrame::OnClearLog(wxCommandEvent& WXUNUSED(event))
{
m_textctrl->Clear();
}
void MyFrame::OnClearLogUpdateUI(wxUpdateUIEvent& event)
{
// if we only enable this item when the log window is empty, we never see
// it in the disable state as a message is logged whenever the menu is
// opened, so we disable it if there is not "much" text in the window
event.Enable( m_textctrl->GetNumberOfLines() > 5 );
}
#endif // USE_LOG_WINDOW
#endif
void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event))
{

View File

@@ -259,10 +259,9 @@ END_EVENT_TABLE()
#if DO_REGTEST
BEGIN_EVENT_TABLE(RegTreeCtrl, wxTreeCtrl)
EVT_TREE_DELETE_ITEM (Ctrl_RegTree, RegTreeCtrl::OnDeleteItem)
EVT_TREE_ITEM_EXPANDING (Ctrl_RegTree, RegTreeCtrl::OnItemExpanding)
EVT_TREE_ITEM_COLLAPSING(Ctrl_RegTree, RegTreeCtrl::OnItemExpanding)
EVT_TREE_SEL_CHANGED (Ctrl_RegTree, RegTreeCtrl::OnSelChanged)
EVT_TREE_DELETE_ITEM (Ctrl_RegTree, RegTreeCtrl::OnDeleteItem)
EVT_TREE_ITEM_EXPANDING(Ctrl_RegTree, RegTreeCtrl::OnItemExpanding)
EVT_TREE_SEL_CHANGED (Ctrl_RegTree, RegTreeCtrl::OnSelChanged)
EVT_TREE_BEGIN_LABEL_EDIT(Ctrl_RegTree, RegTreeCtrl::OnBeginEdit)
EVT_TREE_END_LABEL_EDIT (Ctrl_RegTree, RegTreeCtrl::OnEndEdit)
@@ -711,7 +710,7 @@ void RegTreeCtrl::OnSelChanged(wxTreeEvent& event)
void RegTreeCtrl::OnItemExpanding(wxTreeEvent& event)
{
TreeNode *pNode = GetNode(event);
bool bExpanding = event.GetEventType() == wxEVT_COMMAND_TREE_ITEM_EXPANDING;
bool bExpanding = event.GetKeyCode() == wxTREE_EXPAND_EXPAND;
// expansion might take some time
wxSetCursor(*wxHOURGLASS_CURSOR);

View File

@@ -1855,7 +1855,7 @@ void wxComboCtrlBase::ShowPopup()
}
winPopup->Enable();
wxASSERT( !m_popup || m_popup == popup ); // Consistency check.
wxSize adjustedSize = m_popupInterface->GetAdjustedSize(widthPopup,

View File

@@ -307,15 +307,8 @@ void wxControlContainer::HandleOnNavigationKey( wxNavigationKeyEvent& event )
}
}
if ( bookctrl )
{
// make sure that we don't bubble up the event again from the book
// control resulting in infinite recursion
wxNavigationKeyEvent eventCopy(event);
eventCopy.SetEventObject(m_winParent);
if ( bookctrl->GetEventHandler()->ProcessEvent(eventCopy) )
return;
}
if ( bookctrl && bookctrl->GetEventHandler()->ProcessEvent(event) )
return;
}
// there is not much to do if we don't have children and we're not

View File

@@ -660,7 +660,7 @@ void wxDateTime::Tm::ComputeWeekDay()
// compute the week day from day/month/year: we use the dumbest algorithm
// possible: just compute our JDN and then use the (simple to derive)
// formula: weekday = (JDN + 1.5) % 7
wday = (wxDateTime::wxDateTime_t)((GetTruncatedJDN(mday, mon, year) + 2) % 7);
wday = (wxDateTime::wxDateTime_t)((wxDateTime::WeekDay)(GetTruncatedJDN(mday, mon, year) + 2) % 7);
}
void wxDateTime::Tm::AddMonths(int monDiff)
@@ -1496,16 +1496,6 @@ wxDateTime& wxDateTime::ResetTime()
return *this;
}
wxDateTime wxDateTime::GetDateOnly() const
{
Tm tm = GetTm();
tm.msec =
tm.sec =
tm.min =
tm.hour = 0;
return wxDateTime(tm);
}
// ----------------------------------------------------------------------------
// DOS Date and Time Format functions
// ----------------------------------------------------------------------------

View File

@@ -200,12 +200,6 @@ void wxGCDC::DoSetClippingRegionAsRegion( const wxRegion &region )
void wxGCDC::DestroyClippingRegion()
{
m_graphicContext->ResetClip();
// currently the clip eg of a window extends to the area between the scrollbars
// so we must explicitely make sure it only covers the area we want it to draw
int width, height ;
GetSize( &width , &height ) ;
m_graphicContext->Clip( DeviceToLogicalX(0) , DeviceToLogicalY(0) , width, height );
m_graphicContext->SetPen( m_pen );
m_graphicContext->SetBrush( m_brush );

View File

@@ -352,7 +352,7 @@ wxEvent::wxEvent(int theId, wxEventType commandType )
}
wxEvent::wxEvent(const wxEvent &src)
: wxObject(src)
: wxObject()
, m_eventObject(src.m_eventObject)
, m_eventType(src.m_eventType)
, m_timeStamp(src.m_timeStamp)

View File

@@ -30,23 +30,6 @@
#include "wx/app.h"
#endif //WX_PRECOMP
// see the comment near the declaration of wxRunningEventLoopCount in
// src/msw/thread.cpp for the explanation of this hack
#ifdef __WXMSW__
extern WXDLLIMPEXP_DATA_BASE(int) wxRunningEventLoopCount;
struct wxRunningEventLoopCounter
{
wxRunningEventLoopCounter() { wxRunningEventLoopCount++; }
~wxRunningEventLoopCounter() { wxRunningEventLoopCount--; }
};
#else // !__WXMSW__
struct wxRunningEventLoopCounter { };
#endif // __WXMSW__/!__WXMSW__
// ----------------------------------------------------------------------------
// globals
// ----------------------------------------------------------------------------
@@ -76,8 +59,6 @@ int wxEventLoopManual::Run()
// should undo
wxEventLoopActivator activate(wx_static_cast(wxEventLoop *, this));
wxRunningEventLoopCounter evtLoopCounter;
// we must ensure that OnExit() is called even if an exception is thrown
// from inside Dispatch() but we must call it from Exit() in normal
// situations because it is supposed to be called synchronously,

View File

@@ -435,13 +435,7 @@ wxFileConfig::wxFileConfig(const wxString& appName, const wxString& vendorName,
{
// Make up names for files if empty
if ( m_strLocalFile.empty() && (style & wxCONFIG_USE_LOCAL_FILE) )
{
m_strLocalFile = GetLocalFileName(GetAppName());
#if defined(__UNIX__) && !defined(__VMS)
if ( style & wxCONFIG_USE_SUBDIR )
m_strLocalFile << wxFILE_SEP_PATH << GetAppName() << _T(".conf");
#endif
}
if ( m_strGlobalFile.empty() && (style & wxCONFIG_USE_GLOBAL_FILE) )
m_strGlobalFile = GetGlobalFileName(GetAppName());
@@ -1047,17 +1041,15 @@ bool wxFileConfig::Flush(bool /* bCurrentOnly */)
}
// write all strings to file
wxString filetext;
filetext.reserve(4096);
for ( wxFileConfigLineList *p = m_linesHead; p != NULL; p = p->Next() )
{
filetext << p->Text() << wxTextFile::GetEOL();
}
if ( !file.Write(filetext, *m_conv) )
{
wxLogError(_("can't write user configuration file."));
return false;
wxString line = p->Text();
line += wxTextFile::GetEOL();
if ( !file.Write(line, *m_conv) )
{
wxLogError(_("can't write user configuration file."));
return false;
}
}
if ( !file.Commit() )

View File

@@ -18,6 +18,12 @@
// headers
// ----------------------------------------------------------------------------
#if defined(__BORLANDC__) && !defined(__WXDEBUG__)
// There's a bug in Borland's compiler that breaks wxLocale with -O2,
// so make sure that flag is not used for this file:
#pragma option -O1
#endif
#ifdef __EMX__
// The following define is needed by Innotek's libc to
// make the definition of struct localeconv available.
@@ -1713,7 +1719,7 @@ bool wxLocale::Init(int language, int flags)
{
retloc = wxSetlocaleTryUTF(LC_ALL, localeAlt);
if ( !retloc )
retloc = wxSetlocaleTryUTF(LC_ALL, localeAlt.Left(2));
retloc = wxSetlocaleTryUTF(LC_ALL, locale.Left(2));
}
}
@@ -2499,9 +2505,7 @@ const wxLanguageInfo *wxLocale::GetLanguageInfo(int lang)
{
if ( ms_languagesDB->Item(i).Language == lang )
{
// We need to create a temporary here in order to make this work with BCC in final build mode
wxLanguageInfo *ptr = &ms_languagesDB->Item(i);
return ptr;
return &ms_languagesDB->Item(i);
}
}

View File

@@ -124,9 +124,7 @@ void wxPickerBase::PostCreation()
SetMinSize( m_sizer->GetMinSize() );
}
#if wxUSE_TOOLTIPS
void wxPickerBase::DoSetToolTip(wxToolTip *tip)
void wxPickerBase::DoSetToolTip( wxToolTip *tip )
{
// don't set the tooltip on us but rather on our two child windows
// as otherwise it would appear only when the cursor is placed on the
@@ -134,11 +132,10 @@ void wxPickerBase::DoSetToolTip(wxToolTip *tip)
m_picker->SetToolTip(tip);
// do a copy as wxWindow will own the pointer we pass
if ( m_text )
m_text->SetToolTip(tip ? new wxToolTip(tip->GetTip()) : NULL);
m_text->SetToolTip(tip ? new wxToolTip(tip->GetTip()) : NULL);
}
#endif // wxUSE_TOOLTIPS
// ----------------------------------------------------------------------------
// wxPickerBase - event handlers

View File

@@ -3518,19 +3518,6 @@ void wxCSConv::CreateConvIfNeeded() const
}
}
bool wxCSConv::IsOk() const
{
CreateConvIfNeeded();
// special case: no convReal created for wxFONTENCODING_ISO8859_1
if ( m_encoding == wxFONTENCODING_ISO8859_1 )
return true; // always ok as we do it ourselves
// m_convReal->IsOk() is called at its own creation, so we know it must
// be ok if m_convReal is non-NULL
return m_convReal != NULL;
}
size_t wxCSConv::ToWChar(wchar_t *dst, size_t dstLen,
const char *src, size_t srcLen) const
{

View File

@@ -869,7 +869,6 @@ char wxInputStream::Peek()
wxInputStream& wxInputStream::Read(wxOutputStream& stream_out)
{
size_t lastcount = 0;
char buf[BUF_TEMP_SIZE];
for ( ;; )
@@ -880,12 +879,8 @@ wxInputStream& wxInputStream::Read(wxOutputStream& stream_out)
if ( stream_out.Write(buf, bytes_read).LastWrite() != bytes_read )
break;
lastcount += bytes_read;
}
m_lastcount = lastcount;
return *this;
}

View File

@@ -88,8 +88,8 @@ bool wxTextFile::OnClose()
bool wxTextFile::OnRead(const wxMBConv& conv)
{
// file should be opened
wxASSERT_MSG( m_file.IsOpened(), _T("can't read closed file") );
// file should be opened and we must be in it's beginning
wxASSERT( m_file.IsOpened() && m_file.Tell() == 0 );
// read the entire file in memory: this is not the most efficient thing to
// do but there is no good way to avoid it in Unicode build because if we
@@ -98,35 +98,14 @@ bool wxTextFile::OnRead(const wxMBConv& conv)
// read and so the conversion would fail) and, as the file contents is kept
// in memory by wxTextFile anyhow, it shouldn't be a big problem to read
// the file entirely
size_t bufSize = 0,
bufPos = 0;
const size_t bufSize = (size_t)(m_file.Length() + 4 /* for trailing NULs */ );
size_t bufPos = 0;
wxCharBuffer buf(bufSize - 1 /* it adds 1 internally */);
char block[1024];
wxCharBuffer buf;
// first determine if the file is seekable or not and so whether we can
// determine its length in advance
wxFileOffset fileLength;
{
wxLogNull logNull;
fileLength = m_file.Length();
}
// some non-seekable files under /proc under Linux pretend that they're
// seekable but always return 0; others do return an error
const bool seekable = fileLength != wxInvalidOffset && fileLength != 0;
if ( seekable )
{
// we know the required length, so set the buffer size in advance
bufSize = fileLength;
if ( !buf.extend(bufSize - 1 /* it adds 1 internally */) )
return false;
// if the file is seekable, also check that we're at its beginning
wxASSERT_MSG( m_file.Tell() == 0, _T("should be at start of file") );
}
for ( ;; )
for ( bool eof = false; !eof; )
{
// try to read up to the size of the entire block
ssize_t nRead = m_file.Read(block, WXSIZEOF(block));
if ( nRead == wxInvalidOffset )
@@ -136,41 +115,20 @@ bool wxTextFile::OnRead(const wxMBConv& conv)
}
if ( nRead == 0 )
{
// if no bytes have been read, presumably this is a valid-but-empty file
if ( bufPos == 0 )
return true;
// otherwise we've finished reading the file
break;
}
if ( seekable )
{
// this shouldn't happen but don't overwrite the buffer if it does
wxCHECK_MSG( bufPos + nRead <= bufSize, false,
_T("read more than file length?") );
}
else // !seekable
{
// for non-seekable files we have to allocate more memory on the go
if ( !buf.extend(bufPos + nRead - 1 /* it adds 1 internally */) )
return false;
}
// this shouldn't happen but don't overwrite the buffer if it does
wxCHECK_MSG( bufPos + nRead <= bufSize, false,
_T("read more than file length?") );
// append to the buffer
memcpy(buf.data() + bufPos, block, nRead);
bufPos += nRead;
}
if ( !seekable )
{
bufSize = bufPos;
}
const wxString str(buf, conv, bufPos);
// there's no risk of this happening in ANSI build
// this doesn't risk to happen in ANSI build
#if wxUSE_UNICODE
if ( bufSize > 4 && str.empty() )
{

View File

@@ -1199,11 +1199,7 @@ int WXDLLEXPORT wxVsnprintf_(wxChar *buf, size_t lenMax,
return lenMax+1; // not enough space in the output buffer !
}
// Don't do:
// wxASSERT(lenCur == wxStrlen(buf));
// in fact if we embedded NULLs in the output buffer (using %c with a '\0')
// such check would fail
wxASSERT(lenCur == wxStrlen(buf));
return lenCur;
}

View File

@@ -54,9 +54,10 @@ IMPLEMENT_DYNAMIC_CLASS(wxChoicebookEvent, wxNotifyEvent)
const wxEventType wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGING = wxNewEventType();
const wxEventType wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGED = wxNewEventType();
#endif
const int wxID_CHOICEBOOKCHOICE = wxNewId();
BEGIN_EVENT_TABLE(wxChoicebook, wxBookCtrlBase)
EVT_CHOICE(wxID_ANY, wxChoicebook::OnChoiceSelected)
EVT_CHOICE(wxID_CHOICEBOOKCHOICE, wxChoicebook::OnChoiceSelected)
END_EVENT_TABLE()
// ============================================================================
@@ -97,7 +98,7 @@ wxChoicebook::Create(wxWindow *parent,
m_bookctrl = new wxChoice
(
this,
wxID_ANY,
wxID_CHOICEBOOKCHOICE,
wxDefaultPosition,
wxDefaultSize
);
@@ -301,12 +302,6 @@ bool wxChoicebook::DeleteAllPages()
void wxChoicebook::OnChoiceSelected(wxCommandEvent& eventChoice)
{
if ( eventChoice.GetEventObject() != m_bookctrl )
{
eventChoice.Skip();
return;
}
const int selNew = eventChoice.GetSelection();
if ( selNew == m_selection )

View File

@@ -627,11 +627,7 @@ void wxGridCellTextEditor::Create(wxWindow* parent,
m_control = new wxTextCtrl(parent, id, wxEmptyString,
wxDefaultPosition, wxDefaultSize
#if defined(__WXMSW__)
,
wxTE_PROCESS_ENTER |
wxTE_PROCESS_TAB |
wxTE_AUTO_SCROLL |
wxNO_BORDER
, wxTE_PROCESS_TAB | wxTE_AUTO_SCROLL | wxNO_BORDER
#endif
);
@@ -4357,33 +4353,24 @@ wxGrid::wxGridSelectionModes wxGrid::GetSelectionMode() const
bool wxGrid::SetTable( wxGridTableBase *table, bool takeOwnership,
wxGrid::wxGridSelectionModes selmode )
{
bool checkSelection = false;
if ( m_created )
{
// stop all processing
m_created = false;
if (m_table)
if (m_ownTable)
{
m_table->SetView(0);
if( m_ownTable )
delete m_table;
wxGridTableBase *t = m_table;
m_table = NULL;
delete t;
}
delete m_selection;
m_selection = NULL;
m_ownTable = false;
m_table = NULL;
m_selection = NULL;
m_numRows = 0;
m_numCols = 0;
checkSelection = true;
// kill row and column size arrays
m_colWidths.Empty();
m_colRights.Empty();
m_rowHeights.Empty();
m_rowBottoms.Empty();
}
if (table)
@@ -4395,28 +4382,7 @@ bool wxGrid::SetTable( wxGridTableBase *table, bool takeOwnership,
m_table->SetView( this );
m_ownTable = takeOwnership;
m_selection = new wxGridSelection( this, selmode );
if (checkSelection)
{
// If the newly set table is smaller than the
// original one current cell and selection regions
// might be invalid,
m_selectingKeyboard = wxGridNoCellCoords;
m_currentCellCoords =
wxGridCellCoords(wxMin(m_numRows, m_currentCellCoords.GetRow()),
wxMin(m_numCols, m_currentCellCoords.GetCol()));
if (m_selectingTopLeft.GetRow() >= m_numRows ||
m_selectingTopLeft.GetCol() >= m_numCols)
{
m_selectingTopLeft = wxGridNoCellCoords;
m_selectingBottomRight = wxGridNoCellCoords;
}
else
m_selectingBottomRight =
wxGridCellCoords(wxMin(m_numRows,
m_selectingBottomRight.GetRow()),
wxMin(m_numCols,
m_selectingBottomRight.GetCol()));
}
CalcDimensions();
m_created = true;
@@ -5921,6 +5887,13 @@ void wxGrid::ProcessGridCellMouseEvent( wxMouseEvent& event )
SaveEditControlValue();
}
// Have we captured the mouse yet?
if (! m_winCapture)
{
m_winCapture = m_gridWin;
m_winCapture->CaptureMouse();
}
if ( coords != wxGridNoCellCoords )
{
if ( event.CmdDown() )
@@ -5940,7 +5913,6 @@ void wxGrid::ProcessGridCellMouseEvent( wxMouseEvent& event )
coords.GetRow(),
coords.GetCol(),
event );
return;
}
}
else
@@ -5962,14 +5934,6 @@ void wxGrid::ProcessGridCellMouseEvent( wxMouseEvent& event )
// scrolling is way to fast, at least on MSW - also on GTK.
}
}
// Have we captured the mouse yet?
if (! m_winCapture)
{
m_winCapture = m_gridWin;
m_winCapture->CaptureMouse();
}
}
else if ( m_cursorMode == WXGRID_CURSOR_RESIZE_ROW )
{

View File

@@ -54,10 +54,11 @@ IMPLEMENT_DYNAMIC_CLASS(wxListbookEvent, wxNotifyEvent)
const wxEventType wxEVT_COMMAND_LISTBOOK_PAGE_CHANGING = wxNewEventType();
const wxEventType wxEVT_COMMAND_LISTBOOK_PAGE_CHANGED = wxNewEventType();
#endif
const int wxID_LISTBOOKLISTVIEW = wxNewId();
BEGIN_EVENT_TABLE(wxListbook, wxBookCtrlBase)
EVT_SIZE(wxListbook::OnSize)
EVT_LIST_ITEM_SELECTED(wxID_ANY, wxListbook::OnListSelected)
EVT_LIST_ITEM_SELECTED(wxID_LISTBOOKLISTVIEW, wxListbook::OnListSelected)
END_EVENT_TABLE()
// ============================================================================
@@ -102,7 +103,7 @@ wxListbook::Create(wxWindow *parent,
m_bookctrl = new wxListView
(
this,
wxID_ANY,
wxID_LISTBOOKLISTVIEW,
wxDefaultPosition,
wxDefaultSize,
wxLC_ICON | wxLC_SINGLE_SEL |
@@ -391,12 +392,6 @@ bool wxListbook::DeleteAllPages()
void wxListbook::OnListSelected(wxListEvent& eventList)
{
if ( eventList.GetEventObject() != m_bookctrl )
{
eventList.Skip();
return;
}
const int selNew = eventList.GetIndex();
if ( selNew == m_selection )

View File

@@ -26,8 +26,6 @@
#if wxUSE_PRINTING_ARCHITECTURE && (!defined(__WXMSW__) || wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW)
#include "wx/generic/prntdlgg.h"
#ifndef WX_PRECOMP
#include "wx/utils.h"
#include "wx/dc.h"
@@ -48,6 +46,8 @@
#include "wx/statline.h"
#endif
#include "wx/generic/prntdlgg.h"
#if wxUSE_POSTSCRIPT
#include "wx/generic/dcpsg.h"
#endif
@@ -63,8 +63,8 @@
#include <string.h>
#if wxUSE_LIBGNOMEPRINT
#include "wx/link.h"
wxFORCE_LINK_MODULE(gnome_print)
#include "wx/html/forcelnk.h"
FORCE_LINK(gnome_print)
#endif
// ----------------------------------------------------------------------------

View File

@@ -41,10 +41,6 @@
#include "wx/sizer.h"
#endif
#ifdef __WXMAC__
#include "wx/scrolbar.h"
#endif
#include "wx/recguard.h"
#ifdef __WXMSW__
@@ -451,22 +447,6 @@ wxWindow *wxScrollHelper::GetTargetWindow() const
return m_targetWindow;
}
#ifdef __WXMAC__
static bool wxScrolledWindowHasChildren(wxWindow* win)
{
wxWindowList::compatibility_iterator node = win->GetChildren().GetFirst();
while ( node )
{
wxWindow* child = node->GetData();
if ( !child->IsKindOf(CLASSINFO(wxScrollBar)) )
return true;
node = node->GetNext();
}
return false;
}
#endif
// ----------------------------------------------------------------------------
// scrolling implementation itself
// ----------------------------------------------------------------------------
@@ -483,11 +463,6 @@ void wxScrollHelper::HandleOnScroll(wxScrollWinEvent& event)
}
bool needsRefresh = false;
#ifdef __WXMAC__
// OS X blocks on immediate redraws, so make this a refresh
if (!wxScrolledWindowHasChildren(m_targetWindow))
needsRefresh = true;
#endif
int dx = 0,
dy = 0;
int orient = event.GetOrientation();

View File

@@ -50,57 +50,6 @@ static const wxCoord ICON_MARGIN = 0;
static const wxCoord ICON_OFFSET = 0;
#endif
// ----------------------------------------------------------------------------
// TODO: These functions or something like them should probably be made
// public. There are similar functions in src/aui/dockart.cpp...
static double wxBlendColour(double fg, double bg, double alpha)
{
double result = bg + (alpha * (fg - bg));
if (result < 0.0)
result = 0.0;
if (result > 255)
result = 255;
return result;
}
static wxColor wxStepColour(const wxColor& c, int ialpha)
{
if (ialpha == 100)
return c;
double r = c.Red(), g = c.Green(), b = c.Blue();
double bg;
// ialpha is 0..200 where 0 is completely black
// and 200 is completely white and 100 is the same
// convert that to normal alpha 0.0 - 1.0
ialpha = wxMin(ialpha, 200);
ialpha = wxMax(ialpha, 0);
double alpha = ((double)(ialpha - 100.0))/100.0;
if (ialpha > 100)
{
// blend with white
bg = 255.0;
alpha = 1.0 - alpha; // 0 = transparent fg; 1 = opaque fg
}
else
{
// blend with black
bg = 0.0;
alpha = 1.0 + alpha; // 0 = transparent fg; 1 = opaque fg
}
r = wxBlendColour(r, bg, alpha);
g = wxBlendColour(g, bg, alpha);
b = wxBlendColour(b, bg, alpha);
return wxColour((unsigned char)r, (unsigned char)g, (unsigned char)b);
}
#define LIGHT_STEP 160
// ----------------------------------------------------------------------------
// wxSearchTextCtrl: text control used by search control
// ----------------------------------------------------------------------------
@@ -113,27 +62,11 @@ public:
style | wxNO_BORDER)
{
m_search = search;
m_defaultFG = GetForegroundColour();
// remove the default minsize, the searchctrl will have one instead
SetSizeHints(wxDefaultCoord,wxDefaultCoord);
}
void SetDescriptiveText(const wxString& text)
{
if ( GetValue() == m_descriptiveText )
{
ChangeValue(wxEmptyString);
}
m_descriptiveText = text;
}
wxString GetDescriptiveText() const
{
return m_descriptiveText;
}
protected:
void OnText(wxCommandEvent& eventText)
{
@@ -159,31 +92,9 @@ protected:
m_search->GetEventHandler()->ProcessEvent(event);
}
void OnIdle(wxIdleEvent& WXUNUSED(event))
{
if ( IsEmpty() && !(wxWindow::FindFocus() == this) )
{
ChangeValue(m_descriptiveText);
SetInsertionPoint(0);
SetForegroundColour(wxStepColour(m_defaultFG, LIGHT_STEP));
}
}
void OnFocus(wxFocusEvent& event)
{
event.Skip();
if ( GetValue() == m_descriptiveText )
{
ChangeValue(wxEmptyString);
SetForegroundColour(m_defaultFG);
}
}
private:
wxSearchCtrl* m_search;
wxString m_descriptiveText;
wxColour m_defaultFG;
DECLARE_EVENT_TABLE()
};
@@ -192,8 +103,6 @@ BEGIN_EVENT_TABLE(wxSearchTextCtrl, wxTextCtrl)
EVT_TEXT_ENTER(wxID_ANY, wxSearchTextCtrl::OnText)
EVT_TEXT_URL(wxID_ANY, wxSearchTextCtrl::OnTextUrl)
EVT_TEXT_MAXLEN(wxID_ANY, wxSearchTextCtrl::OnText)
EVT_IDLE(wxSearchTextCtrl::OnIdle)
EVT_SET_FOCUS(wxSearchTextCtrl::OnFocus)
END_EVENT_TABLE()
// ----------------------------------------------------------------------------
@@ -325,8 +234,7 @@ bool wxSearchCtrl::Create(wxWindow *parent, wxWindowID id,
}
m_text = new wxSearchTextCtrl(this, value, style & ~wxBORDER_MASK);
m_text->SetDescriptiveText(_("Search"));
wxSize sizeText = m_text->GetBestSize();
m_searchButton = new wxSearchButton(this,wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN,m_searchBitmap);
@@ -372,6 +280,12 @@ void wxSearchCtrl::SetMenu( wxMenu* menu )
{
m_searchButton->SetBitmapLabel(m_searchMenuBitmap);
m_searchButton->Refresh();
if ( !m_searchButtonVisible )
{
// adding the menu will force the search button to be visible
wxRect rect = GetRect();
LayoutControls(0, 0, rect.GetWidth(), rect.GetHeight());
}
}
else if ( !m_menu && hadMenu )
{
@@ -380,9 +294,12 @@ void wxSearchCtrl::SetMenu( wxMenu* menu )
{
m_searchButton->Refresh();
}
else
{
wxRect rect = GetRect();
LayoutControls(0, 0, rect.GetWidth(), rect.GetHeight());
}
}
wxRect rect = GetRect();
LayoutControls(0, 0, rect.GetWidth(), rect.GetHeight());
}
wxMenu* wxSearchCtrl::GetMenu()
@@ -431,15 +348,6 @@ bool wxSearchCtrl::IsCancelButtonVisible() const
return m_cancelButtonVisible;
}
void wxSearchCtrl::SetDescriptiveText(const wxString& text)
{
m_text->SetDescriptiveText(text);
}
wxString wxSearchCtrl::GetDescriptiveText() const
{
return m_text->GetDescriptiveText();
}
// ----------------------------------------------------------------------------
// geometry
@@ -485,7 +393,7 @@ void wxSearchCtrl::LayoutControls(int x, int y, int width, int height)
wxSize sizeText = m_text->GetBestSize();
// make room for the search menu & clear button
int horizontalBorder = ( sizeText.y - sizeText.y * 14 / 21 ) / 2;
int horizontalBorder = 1 + ( sizeText.y - sizeText.y * 14 / 21 ) / 2;
x += horizontalBorder;
y += BORDER;
width -= horizontalBorder*2;
@@ -519,13 +427,13 @@ void wxSearchCtrl::LayoutControls(int x, int y, int width, int height)
// position the subcontrols inside the client area
m_searchButton->SetSize(x, y + ICON_OFFSET - 1, sizeSearch.x, height);
m_searchButton->SetSize(x, y + ICON_OFFSET, sizeSearch.x, height);
m_text->SetSize( x + sizeSearch.x + searchMargin,
y + ICON_OFFSET - BORDER,
textWidth,
height);
m_cancelButton->SetSize(x + sizeSearch.x + searchMargin + textWidth + cancelMargin,
y + ICON_OFFSET - 1, sizeCancel.x, height);
y + ICON_OFFSET, sizeCancel.x, height);
}
@@ -534,11 +442,7 @@ void wxSearchCtrl::LayoutControls(int x, int y, int width, int height)
wxString wxSearchCtrl::GetValue() const
{
wxString value = m_text->GetValue();
if (value == m_text->GetDescriptiveText())
return wxEmptyString;
else
return value;
return m_text->GetValue();
}
void wxSearchCtrl::SetValue(const wxString& value)
{
@@ -907,7 +811,7 @@ static int GetMultiplier()
wxBitmap wxSearchCtrl::RenderSearchBitmap( int x, int y, bool renderDrop )
{
wxColour bg = GetBackgroundColour();
wxColour fg = wxStepColour(GetForegroundColour(), LIGHT_STEP-20);
wxColour fg = GetForegroundColour();
//===============================================================================
// begin drawing code
@@ -988,8 +892,7 @@ wxBitmap wxSearchCtrl::RenderSearchBitmap( int x, int y, bool renderDrop )
};
mem.DrawPolygon(WXSIZEOF(dropPolygon),dropPolygon,multiplier*triangleX,multiplier*triangleY);
}
mem.SelectObject(wxNullBitmap);
//===============================================================================
// end drawing code
//===============================================================================
@@ -1000,11 +903,6 @@ wxBitmap wxSearchCtrl::RenderSearchBitmap( int x, int y, bool renderDrop )
image.Rescale(x,y);
bitmap = wxBitmap( image );
}
if ( !renderDrop )
{
// Trim the edge where the arrow would have gone
bitmap = bitmap.GetSubBitmap(wxRect(0,0, y,y));
}
return bitmap;
}
@@ -1012,7 +910,7 @@ wxBitmap wxSearchCtrl::RenderSearchBitmap( int x, int y, bool renderDrop )
wxBitmap wxSearchCtrl::RenderCancelBitmap( int x, int y )
{
wxColour bg = GetBackgroundColour();
wxColour fg = wxStepColour(GetForegroundColour(), LIGHT_STEP);
wxColour fg = GetForegroundColour();
//===============================================================================
// begin drawing code

View File

@@ -50,6 +50,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxToolbookEvent, wxNotifyEvent)
const wxEventType wxEVT_COMMAND_TOOLBOOK_PAGE_CHANGING = wxNewEventType();
const wxEventType wxEVT_COMMAND_TOOLBOOK_PAGE_CHANGED = wxNewEventType();
#endif
const int wxID_TOOLBOOKTOOLBAR = wxNewId();
BEGIN_EVENT_TABLE(wxToolbook, wxBookCtrlBase)
EVT_SIZE(wxToolbook::OnSize)
@@ -101,7 +102,7 @@ bool wxToolbook::Create(wxWindow *parent,
m_bookctrl = new wxButtonToolBar
(
this,
wxID_ANY,
wxID_TOOLBOOKTOOLBAR,
wxDefaultPosition,
wxDefaultSize,
orient|wxTB_TEXT|wxTB_FLAT|wxNO_BORDER
@@ -113,7 +114,7 @@ bool wxToolbook::Create(wxWindow *parent,
m_bookctrl = new wxToolBar
(
this,
wxID_ANY,
wxID_TOOLBOOKTOOLBAR,
wxDefaultPosition,
wxDefaultSize,
orient|wxTB_TEXT|wxTB_FLAT|wxTB_NODIVIDER|wxNO_BORDER

View File

@@ -54,11 +54,12 @@ const wxEventType wxEVT_COMMAND_TREEBOOK_PAGE_CHANGED = wxNewEventType();
const wxEventType wxEVT_COMMAND_TREEBOOK_NODE_COLLAPSED = wxNewEventType();
const wxEventType wxEVT_COMMAND_TREEBOOK_NODE_EXPANDED = wxNewEventType();
#endif
const int wxID_TREEBOOKTREEVIEW = wxNewId();
BEGIN_EVENT_TABLE(wxTreebook, wxBookCtrlBase)
EVT_TREE_SEL_CHANGED (wxID_ANY, wxTreebook::OnTreeSelectionChange)
EVT_TREE_ITEM_EXPANDED (wxID_ANY, wxTreebook::OnTreeNodeExpandedCollapsed)
EVT_TREE_ITEM_COLLAPSED(wxID_ANY, wxTreebook::OnTreeNodeExpandedCollapsed)
EVT_TREE_SEL_CHANGED (wxID_TREEBOOKTREEVIEW, wxTreebook::OnTreeSelectionChange)
EVT_TREE_ITEM_EXPANDED (wxID_TREEBOOKTREEVIEW, wxTreebook::OnTreeNodeExpandedCollapsed)
EVT_TREE_ITEM_COLLAPSED(wxID_TREEBOOKTREEVIEW, wxTreebook::OnTreeNodeExpandedCollapsed)
WX_EVENT_TABLE_CONTROL_CONTAINER(wxTreebook)
END_EVENT_TABLE()
@@ -107,7 +108,7 @@ wxTreebook::Create(wxWindow *parent,
m_bookctrl = new wxTreeCtrl
(
this,
wxID_ANY,
wxID_TREEBOOKTREEVIEW,
wxDefaultPosition,
wxDefaultSize,
#ifndef __WXMSW__
@@ -690,12 +691,6 @@ void wxTreebook::AssignImageList(wxImageList *imageList)
void wxTreebook::OnTreeSelectionChange(wxTreeEvent& event)
{
if ( event.GetEventObject() != m_bookctrl )
{
event.Skip();
return;
}
wxTreeItemId newId = event.GetItem();
if ( (m_selection == wxNOT_FOUND &&
@@ -715,12 +710,6 @@ void wxTreebook::OnTreeSelectionChange(wxTreeEvent& event)
void wxTreebook::OnTreeNodeExpandedCollapsed(wxTreeEvent & event)
{
if ( event.GetEventObject() != m_bookctrl )
{
event.Skip();
return;
}
wxTreeItemId nodeId = event.GetItem();
if ( !nodeId.IsOk() || nodeId == GetTreeCtrl()->GetRootItem() )
return;

View File

@@ -26,12 +26,50 @@
#include "wx/font.h"
#endif
#include "wx/file.h"
#include "wx/filename.h"
#include "wx/thread.h"
#ifdef __WXGPE__
#include <gpe/init.h>
#endif
#ifdef __WXUNIVERSAL__
#include "wx/univ/theme.h"
#include "wx/univ/renderer.h"
#endif
#include <unistd.h>
#ifdef HAVE_POLL
#if defined(__VMS)
#include <poll.h>
#else
// bug in the OpenBSD headers: at least in 3.1 there is no extern "C"
// in neither poll.h nor sys/poll.h which results in link errors later
#ifdef __OPENBSD__
extern "C"
{
#endif
#include <sys/poll.h>
#ifdef __OPENBSD__
};
#endif
#endif // platform
#else // !HAVE_POLL
// we implement poll() ourselves using select() which is supposed exist in
// all modern Unices
#include <sys/types.h>
#include <sys/time.h>
#include <unistd.h>
#ifdef HAVE_SYS_SELECT_H
#include <sys/select.h>
#endif
#endif // HAVE_POLL/!HAVE_POLL
#include "wx/unix/private.h"
#include "wx/gtk/win_gtk.h"
#include "wx/gtk/private.h"
@@ -41,9 +79,9 @@
// link GnomeVFS
//-----------------------------------------------------------------------------
#if wxUSE_MIMETYPE && wxUSE_LIBGNOMEVFS
#include "wx/link.h"
wxFORCE_LINK_MODULE(gnome_vfs)
#if wxUSE_LIBGNOMEVFS
#include "wx/html/forcelnk.h"
FORCE_LINK(gnome_vfs)
#endif
//-----------------------------------------------------------------------------
@@ -238,13 +276,75 @@ static gint wxapp_idle_callback( gpointer WXUNUSED(data) )
// Return FALSE if no more idle events are to be sent
return moreIdles;
}
} // extern "C"
#if wxUSE_THREADS
static GPollFunc wxgs_poll_func;
#ifdef HAVE_POLL
#define wxPoll poll
#define wxPollFd pollfd
#else // !HAVE_POLL
typedef GPollFD wxPollFd;
int wxPoll(wxPollFd *ufds, unsigned int nfds, int timeout)
{
// convert timeout from ms to struct timeval (s/us)
timeval tv_timeout;
tv_timeout.tv_sec = timeout/1000;
tv_timeout.tv_usec = (timeout%1000)*1000;
// remember the highest fd used here
int fdMax = -1;
// and fill the sets for select()
fd_set readfds;
fd_set writefds;
fd_set exceptfds;
wxFD_ZERO(&readfds);
wxFD_ZERO(&writefds);
wxFD_ZERO(&exceptfds);
unsigned int i;
for ( i = 0; i < nfds; i++ )
{
wxASSERT_MSG( ufds[i].fd < FD_SETSIZE, _T("fd out of range") );
if ( ufds[i].events & G_IO_IN )
wxFD_SET(ufds[i].fd, &readfds);
if ( ufds[i].events & G_IO_PRI )
wxFD_SET(ufds[i].fd, &exceptfds);
if ( ufds[i].events & G_IO_OUT )
wxFD_SET(ufds[i].fd, &writefds);
if ( ufds[i].fd > fdMax )
fdMax = ufds[i].fd;
}
fdMax++;
int res = select(fdMax, &readfds, &writefds, &exceptfds, &tv_timeout);
// translate the results back
for ( i = 0; i < nfds; i++ )
{
ufds[i].revents = 0;
if ( wxFD_ISSET(ufds[i].fd, &readfds ) )
ufds[i].revents |= G_IO_IN;
if ( wxFD_ISSET(ufds[i].fd, &exceptfds ) )
ufds[i].revents |= G_IO_PRI;
if ( wxFD_ISSET(ufds[i].fd, &writefds ) )
ufds[i].revents |= G_IO_OUT;
}
return res;
}
#endif // HAVE_POLL/!HAVE_POLL
extern "C" {
static gint wxapp_poll_func( GPollFD *ufds, guint nfds, gint timeout )
{
gdk_threads_enter();
@@ -252,7 +352,9 @@ static gint wxapp_poll_func( GPollFD *ufds, guint nfds, gint timeout )
wxMutexGuiLeave();
g_mainThreadLocked = true;
gint res = (*wxgs_poll_func)(ufds, nfds, timeout);
// we rely on the fact that glib GPollFD struct is really just pollfd but
// I wonder how wise is this in the long term (VZ)
gint res = wxPoll( (wxPollFd *) ufds, nfds, timeout );
wxMutexGuiEnter();
g_mainThreadLocked = false;
@@ -261,10 +363,11 @@ static gint wxapp_poll_func( GPollFD *ufds, guint nfds, gint timeout )
return res;
}
}
#endif // wxUSE_THREADS
} // extern "C"
void wxapp_install_idle_handler()
{
if (wxTheApp == NULL)
@@ -330,6 +433,10 @@ wxApp::wxApp()
g_isIdle = true;
wxapp_install_idle_handler();
#if wxUSE_THREADS
g_main_context_set_poll_func( NULL, wxapp_poll_func );
#endif
// this is NULL for a "regular" wxApp, but is set (and freed) by a wxGLApp
m_glVisualInfo = (void *) NULL;
m_glFBCInfo = (void *) NULL;
@@ -408,9 +515,6 @@ bool wxApp::Initialize(int& argc, wxChar **argv)
#if wxUSE_THREADS
if (!g_thread_supported())
g_thread_init(NULL);
wxgs_poll_func = g_main_context_get_poll_func(NULL);
g_main_context_set_poll_func(NULL, wxapp_poll_func);
#endif // wxUSE_THREADS
gtk_set_locale();

View File

@@ -630,25 +630,8 @@ bool wxClipboard::GetData( wxDataObject& data )
while (m_waiting) gtk_main_iteration();
/*
Normally this is a true error as we checked for the presence of such
data before, but there are applications that may return an empty
string (e.g. Gnumeric-1.6.1 on Linux if an empty cell is copied)
which would produce a false error message here, so we check for the
size of the string first. In ansi, GetDataSize returns an extra
value (for the closing null?), with unicode, the exact number of
tokens is given (that is more than 1 for special characters)
(tested with Gnumeric-1.6.1 and OpenOffice.org-2.0.2)
*/
#if wxUSE_UNICODE
if ( format != wxDF_UNICODETEXT || data.GetDataSize(format) > 0 )
#else // !UNICODE
if ( format != wxDF_TEXT || data.GetDataSize(format) > 1 )
#endif // UNICODE / !UNICODE
{
wxCHECK_MSG( m_formatSupported, false,
wxT("error retrieving data from clipboard") );
}
/* this is a true error as we checked for the presence of such data before */
wxCHECK_MSG( m_formatSupported, false, wxT("error retrieving data from clipboard") );
/* return success */
delete[] array;

View File

@@ -230,8 +230,6 @@ wxFileDialog::wxFileDialog(wxWindow *parent, const wxString& message,
fn.Assign(defaultFileName);
else if ( !defaultFileName.empty() )
fn.Assign(defaultDir, defaultFileName);
else
fn.AssignDir(defaultDir);
// set the initial file name and/or directory
wxString fname = fn.GetFullName();

Some files were not shown because too many files have changed in this diff Show More