Distrib changes.

Augemnted version to 2.1.11.
  Applied patch for wxGenericValidator.
  Corrected MDI's wxActivateEvent code.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling 1999-10-31 15:31:43 +00:00
parent d139753aed
commit e90196a556
10 changed files with 255 additions and 162 deletions

View File

@ -401,7 +401,7 @@ dnl WX_INTERFACE_AGE = 0
WX_MAJOR_VERSION_NUMBER=2
WX_MINOR_VERSION_NUMBER=1
WX_RELEASE_NUMBER=10
WX_RELEASE_NUMBER=11
WX_INTERFACE_AGE=0
WX_BINARY_AGE=0

View File

@ -1,5 +1,5 @@
25th October '99: My birthday, wxWindows 2.1.10 released
1st November '99: wxWindows 2.1.11 released
There is still a unresolved problem with bitmap to image
conversion on big-endian architectures (such as Solaris),
@ -55,7 +55,8 @@ all relevant SQL databases (even DBase). For that reason
I have reawakened the iODBC code from wxGTK 2.0 so you
can now use wxODBC from wxMSW and wxGTK.
Several printing things fixed.
Several printing things fixed. More work needs to be done
here..
HTML widget and the wxWindows' help system based upon
it have been reorganized and improved for easier use
@ -107,6 +108,15 @@ A handler to read PCX file (in most variants) has been added.
A number of problems with compressed and socket streams have
been solved.
Changed behavour of wxTextStream to make use of deliminators
and default to space as the standard C++ stream do.
Changes to tab traversal code to better reflect MSW code.
Corrected problems with wxGenericValidator and certain controls.
Made default button action work in more cases.
28th August '99: Ninth wxGTK 2.1 snapshot released
As the old makefile system didn't work, I trashed it and wrote

View File

@ -1,10 +1,17 @@
Welcome to wxWindows/Gtk 2.1 snapshot 9,
Welcome to wxWindows/Gtk 2.1.11
you have downloaded version 2.1 of the GTK+ 1.2 port of
the wxWindows GUI library. This is a developers release
and is it not suited for production development. Beware
that major changes can happen before a final release.
the wxWindows GUI library. Although this is not yet the
final stable release wxGTK 2.2, the current version has
been tested carefully on many systems and has been found
to work better than any other previous version.
Nonetheless, beware that major changes can happen before
a final release.
wxWindows no longer supports GTK 1.0 (as did some early
snapshots) so that you will need GTK 1.2 when using it.
Beginning with snapshot 9, wxWindows uses a completely
new make file system on Unix which no longer uses the
@ -15,18 +22,17 @@ More information is available from my homepage at:
http://wesley.informatik.uni-freiburg.de/~wxxt
and about the wxWindows project as a whole (and the
Windows and Motif ports in particular) can be found
at Julian Smart's homepage at:
and about the wxWindows project as a whole (and the MSW
and Motif ports in particular) can be found at Julian's
homepage at:
http://web.ukonline.co.uk/julian.smart/wxwin
Information on how to install can be found in the file
INSTALL.txt, but if you cannot wait, this should work on
many systems (when using GTK 1.0 or when not using Linux
read the INSTALL.txt):
many systems:
./configure
./configure --with-gtk
make
su <type root password>
make install

View File

@ -1,16 +1,10 @@
-------------------- High priority ---------------------
Finalise DnD API.
Fix bug that thread sample reports about non-finished threads.
Added wxExpandedImageList to wxTreeControl.
More testing of Unicode support.
Make wxSockets work on all platform.
Add ID based i18n system as a replacement for the
unelegant gettext system.
@ -20,8 +14,6 @@ Add TIFF handler. Someone? (Hint, hint).
Improve, update translations. Install *.mo files somewehere.
Sleep, eat, walk, study, shave, read, play piano and wash less.
-------------------- Medium priority ---------------------
Show accelerator control labels and actually implement them

View File

@ -315,7 +315,7 @@ are
--without-libjpeg Disables JPEG image format code.
{ --without-odbc Disables ODBC code. Not yet. }
--without-odbc Disables ODBC code.
--disable-resources Disables the use of *.wxr type
resources.

View File

@ -15,8 +15,8 @@
/* Bump-up with each new version */
#define wxMAJOR_VERSION 2
#define wxMINOR_VERSION 1
#define wxRELEASE_NUMBER 10
#define wxVERSION_STRING "wxWindows 2.1.10"
#define wxRELEASE_NUMBER 11
#define wxVERSION_STRING "wxWindows 2.1.11"
#define wxVERSION_NUMBER (wxMAJOR_VERSION * 1000) + (wxMINOR_VERSION * 100) + wxRELEASE_NUMBER
#define wxBETA_NUMBER 0
#define wxVERSION_FLOAT wxMAJOR_VERSION + (wxMINOR_VERSION/10.0) + (wxRELEASE_NUMBER/100.0) + (wxBETA_NUMBER/10000.0)

View File

@ -41,6 +41,7 @@
#include "wx/textctrl.h"
#include "wx/button.h"
#include "wx/listbox.h"
#include "wx/slider.h"
#endif
#ifndef __WIN16__
@ -81,14 +82,14 @@ wxGenericValidator::wxGenericValidator(const wxGenericValidator& val)
bool wxGenericValidator::Copy(const wxGenericValidator& val)
{
wxValidator::Copy(val);
wxValidator::Copy(val);
m_pBool = val.m_pBool;
m_pInt = val.m_pInt;
m_pString = val.m_pString;
m_pArrayInt = val.m_pArrayInt;
m_pBool = val.m_pBool;
m_pInt = val.m_pInt;
m_pString = val.m_pString;
m_pArrayInt = val.m_pArrayInt;
return TRUE;
return TRUE;
}
wxGenericValidator::~wxGenericValidator()
@ -98,131 +99,144 @@ wxGenericValidator::~wxGenericValidator()
// Called to transfer data to the window
bool wxGenericValidator::TransferToWindow(void)
{
if ( !m_validatorWindow )
return FALSE;
if ( !m_validatorWindow )
return FALSE;
// bool controls
// bool controls
#if wxUSE_CHECKBOX
if (m_validatorWindow->IsKindOf(CLASSINFO(wxCheckBox)) )
{
wxCheckBox* pControl = (wxCheckBox*) m_validatorWindow;
if (m_pBool)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxCheckBox)) )
{
pControl->SetValue(*m_pBool) ;
return TRUE;
}
} else
wxCheckBox* pControl = (wxCheckBox*) m_validatorWindow;
if (m_pBool)
{
pControl->SetValue(*m_pBool);
return TRUE;
}
} else
#endif
#if wxUSE_RADIOBTN
if (m_validatorWindow->IsKindOf(CLASSINFO(wxRadioButton)) )
{
wxRadioButton* pControl = (wxRadioButton*) m_validatorWindow;
if (m_validatorWindow->IsKindOf(CLASSINFO(wxRadioButton)) )
{
wxRadioButton* pControl = (wxRadioButton*) m_validatorWindow;
if (m_pBool)
{
pControl->SetValue(*m_pBool) ;
return TRUE;
}
} else
{
pControl->SetValue(*m_pBool) ;
return TRUE;
}
} else
#endif
// int controls
// int controls
#if wxUSE_GAUGE
if (m_validatorWindow->IsKindOf(CLASSINFO(wxGauge)) )
{
wxGauge* pControl = (wxGauge*) m_validatorWindow;
if (m_pInt)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxGauge)) )
{
pControl->SetValue(*m_pInt) ;
return TRUE;
}
}
else
wxGauge* pControl = (wxGauge*) m_validatorWindow;
if (m_pInt)
{
pControl->SetValue(*m_pInt);
return TRUE;
}
} else
#endif
#if wxUSE_RADIOBOX
if (m_validatorWindow->IsKindOf(CLASSINFO(wxRadioBox)) )
{
wxRadioBox* pControl = (wxRadioBox*) m_validatorWindow;
if (m_pInt)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxRadioBox)) )
{
pControl->SetSelection(*m_pInt) ;
return TRUE;
}
}
else
wxRadioBox* pControl = (wxRadioBox*) m_validatorWindow;
if (m_pInt)
{
pControl->SetSelection(*m_pInt) ;
return TRUE;
}
} else
#endif
#if wxUSE_SCROLLBAR
if (m_validatorWindow->IsKindOf(CLASSINFO(wxScrollBar)) )
{
wxScrollBar* pControl = (wxScrollBar*) m_validatorWindow;
if (m_pInt)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxScrollBar)) )
{
pControl->SetThumbPosition(*m_pInt) ;
return TRUE;
}
} else
wxScrollBar* pControl = (wxScrollBar*) m_validatorWindow;
if (m_pInt)
{
pControl->SetThumbPosition(*m_pInt) ;
return TRUE;
}
} else
#endif
#if wxUSE_SPINBTN
#ifndef __WIN16__
if (m_validatorWindow->IsKindOf(CLASSINFO(wxSpinButton)) )
{
wxSpinButton* pControl = (wxSpinButton*) m_validatorWindow;
if (m_pInt)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxSpinButton)) )
{
pControl->SetValue(*m_pInt) ;
return TRUE;
}
} else
wxSpinButton* pControl = (wxSpinButton*) m_validatorWindow;
if (m_pInt)
{
pControl->SetValue(*m_pInt) ;
return TRUE;
}
} else
#endif
#endif
#if wxUSE_SLIDER
if (m_validatorWindow->IsKindOf(CLASSINFO(wxSlider)) )
{
wxSlider* pControl = (wxSlider*) m_validatorWindow;
if (m_pInt)
{
pControl->SetValue(*m_pInt) ;
return TRUE;
}
} else
#endif
// string controls
if (m_validatorWindow->IsKindOf(CLASSINFO(wxButton)) )
{
wxButton* pControl = (wxButton*) m_validatorWindow;
if (m_pString)
#if 1
if (m_validatorWindow->IsKindOf(CLASSINFO(wxButton)) )
{
pControl->SetLabel(*m_pString) ;
return TRUE;
}
} else
wxButton* pControl = (wxButton*) m_validatorWindow;
if (m_pString)
{
pControl->SetLabel(*m_pString) ;
return TRUE;
}
} else
#endif
#if wxUSE_COMBOBOX
if (m_validatorWindow->IsKindOf(CLASSINFO(wxComboBox)) )
{
wxComboBox* pControl = (wxComboBox*) m_validatorWindow;
if (m_pString)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxComboBox)) )
{
pControl->SetValue(*m_pString) ;
return TRUE;
}
} else
wxComboBox* pControl = (wxComboBox*) m_validatorWindow;
if (m_pString)
{
pControl->SetValue(*m_pString) ;
return TRUE;
}
} else
#endif
#if wxUSE_CHOICE
if (m_validatorWindow->IsKindOf(CLASSINFO(wxChoice)) )
{
wxChoice* pControl = (wxChoice*) m_validatorWindow;
if (m_validatorWindow->IsKindOf(CLASSINFO(wxChoice)) )
{
wxChoice* pControl = (wxChoice*) m_validatorWindow;
if (m_pInt)
{
pControl->SetSelection(*m_pInt) ;
return TRUE;
}
} else
{
pControl->SetSelection(*m_pInt) ;
return TRUE;
}
} else
#endif
if (m_validatorWindow->IsKindOf(CLASSINFO(wxStaticText)) )
{
wxStaticText* pControl = (wxStaticText*) m_validatorWindow;
if (m_pString)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxStaticText)) )
{
pControl->SetLabel(*m_pString) ;
return TRUE;
}
}
else if (m_validatorWindow->IsKindOf(CLASSINFO(wxTextCtrl)) )
{
wxTextCtrl* pControl = (wxTextCtrl*) m_validatorWindow;
wxStaticText* pControl = (wxStaticText*) m_validatorWindow;
if (m_pString)
{
pControl->SetLabel(*m_pString) ;
return TRUE;
}
} else
if (m_validatorWindow->IsKindOf(CLASSINFO(wxTextCtrl)) )
{
pControl->SetValue(*m_pString) ;
return TRUE;
}
} else
wxTextCtrl* pControl = (wxTextCtrl*) m_validatorWindow;
if (m_pString)
{
pControl->SetValue(*m_pString) ;
return TRUE;
}
} else
#if wxUSE_CHECKLISTBOX
#ifndef __WIN16__
// array controls
@ -249,22 +263,22 @@ bool wxGenericValidator::TransferToWindow(void)
#endif
#endif
#if wxUSE_LISTBOX
if (m_validatorWindow->IsKindOf(CLASSINFO(wxListBox)) )
{
wxListBox* pControl = (wxListBox*) m_validatorWindow;
if (m_pArrayInt)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxListBox)) )
{
// clear all selections
int i;
for (i = 0 ; i < pControl->Number(); ++i)
pControl->Deselect(i);
// select each item in our array
unsigned u;
for (u = 0; u < m_pArrayInt->Count(); ++u)
pControl->SetSelection(m_pArrayInt->Item(u));
return TRUE;
}
} else
wxListBox* pControl = (wxListBox*) m_validatorWindow;
if (m_pArrayInt)
{
// clear all selections
int i;
for (i = 0 ; i < pControl->Number(); ++i)
pControl->Deselect(i);
// select each item in our array
unsigned u;
for (u = 0; u < m_pArrayInt->Count(); ++u)
pControl->SetSelection(m_pArrayInt->Item(u));
return TRUE;
}
} else
#endif
// unrecognized control, or bad pointer
@ -272,7 +286,7 @@ bool wxGenericValidator::TransferToWindow(void)
return FALSE;
}
// Called to transfer data to the window
// Called to transfer data from the window
bool wxGenericValidator::TransferFromWindow(void)
{
if ( !m_validatorWindow )
@ -347,6 +361,17 @@ bool wxGenericValidator::TransferFromWindow(void)
}
} else
#endif
#endif
#if wxUSE_SLIDER
if (m_validatorWindow->IsKindOf(CLASSINFO(wxSlider)) )
{
wxSlider* pControl = (wxSlider*) m_validatorWindow;
if (m_pInt)
{
pControl->SetValue(*m_pInt) ;
return TRUE;
}
} else
#endif
// string controls
if (m_validatorWindow->IsKindOf(CLASSINFO(wxButton)) )
@ -399,7 +424,7 @@ bool wxGenericValidator::TransferFromWindow(void)
return TRUE;
}
} else
#if wxUSE_LISTBOX
#if wxUSE_CHECKLISTBOX
#ifndef __WIN16__
// array controls
// NOTE: wxCheckListBox isa wxListBox, so wxCheckListBox

View File

@ -47,21 +47,51 @@ extern wxList wxPendingDelete;
// "switch_page"
//-----------------------------------------------------------------------------
static void gtk_mdi_page_change_callback(GtkNotebook *WXUNUSED(widget),
GtkNotebookPage *WXUNUSED(page),
gint WXUNUSED(page),
wxMDIParentFrame *parent )
static void
gtk_mdi_page_change_callback( GtkNotebook *widget,
GtkNotebookPage *page,
gint WXUNUSED(page_num),
wxMDIParentFrame *parent )
{
if (g_isIdle)
wxapp_install_idle_handler();
wxMDIChildFrame *child = parent->GetActiveChild();
if (!child) return;
// send deactivate event to old child
wxActivateEvent event( wxEVT_ACTIVATE, TRUE, child->GetId() );
event.SetEventObject( child);
child->GetEventHandler()->ProcessEvent( event );
wxMDIChildFrame *child = parent->GetActiveChild();
if (child)
{
wxActivateEvent event1( wxEVT_ACTIVATE, FALSE, child->GetId() );
event1.SetEventObject( child);
child->GetEventHandler()->ProcessEvent( event1 );
}
// send activate event to new child
wxMDIClientWindow *client_window = parent->GetClientWindow();
if (!client_window)
return;
child = (wxMDIChildFrame*) NULL;
wxNode *node = client_window->GetChildren().First();
while (node)
{
wxMDIChildFrame *child_frame = (wxMDIChildFrame *)node->Data();
if (child_frame->m_page == page)
{
child = child_frame;
break;
}
node = node->Next();
}
if (!child)
return;
wxActivateEvent event2( wxEVT_ACTIVATE, TRUE, child->GetId() );
event2.SetEventObject( child);
child->GetEventHandler()->ProcessEvent( event2 );
}
//-----------------------------------------------------------------------------

View File

@ -47,21 +47,51 @@ extern wxList wxPendingDelete;
// "switch_page"
//-----------------------------------------------------------------------------
static void gtk_mdi_page_change_callback(GtkNotebook *WXUNUSED(widget),
GtkNotebookPage *WXUNUSED(page),
gint WXUNUSED(page),
wxMDIParentFrame *parent )
static void
gtk_mdi_page_change_callback( GtkNotebook *widget,
GtkNotebookPage *page,
gint WXUNUSED(page_num),
wxMDIParentFrame *parent )
{
if (g_isIdle)
wxapp_install_idle_handler();
wxMDIChildFrame *child = parent->GetActiveChild();
if (!child) return;
// send deactivate event to old child
wxActivateEvent event( wxEVT_ACTIVATE, TRUE, child->GetId() );
event.SetEventObject( child);
child->GetEventHandler()->ProcessEvent( event );
wxMDIChildFrame *child = parent->GetActiveChild();
if (child)
{
wxActivateEvent event1( wxEVT_ACTIVATE, FALSE, child->GetId() );
event1.SetEventObject( child);
child->GetEventHandler()->ProcessEvent( event1 );
}
// send activate event to new child
wxMDIClientWindow *client_window = parent->GetClientWindow();
if (!client_window)
return;
child = (wxMDIChildFrame*) NULL;
wxNode *node = client_window->GetChildren().First();
while (node)
{
wxMDIChildFrame *child_frame = (wxMDIChildFrame *)node->Data();
if (child_frame->m_page == page)
{
child = child_frame;
break;
}
node = node->Next();
}
if (!child)
return;
wxActivateEvent event2( wxEVT_ACTIVATE, TRUE, child->GetId() );
event2.SetEventObject( child);
child->GetEventHandler()->ProcessEvent( event2 );
}
//-----------------------------------------------------------------------------

View File

@ -1,6 +1,6 @@
# Note that this is NOT a relocatable package
%define pref /usr
%define ver 2.1.10
%define ver 2.1.11
%define rel 0
Summary: The GTK+ 1.2 port of the wxWindows library
@ -9,7 +9,7 @@ Version: %{ver}
Release: %{rel}
Copyright: wxWindows Licence
Group: X11/Libraries
Source: ftp://wesley.informatik.uni-freiburg.de/pub/linux/wxxt/source/wxGTK-2.1.10.tgz
Source: ftp://wesley.informatik.uni-freiburg.de/pub/linux/wxxt/source/wxGTK-2.1.11.tgz
URL: http://wesley.informatik.uni-freiburg.de/~wxxt/docs.html
Packager: Robert Roebling <roebling@ruf.uni-freiburg.de>
BuildRoot: /tmp/wxgtk_root