Some debug code.

Removed flicker form wxTreeCtrl.
  Changes.txt update.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@5063 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
1999-12-22 13:04:54 +00:00
parent b38e2f7dc3
commit 00e12320ca
5 changed files with 174 additions and 144 deletions

View File

@@ -6,6 +6,11 @@ Who has a BigEndian computer (e.g. Sparc) that runs a 15 and/or
person could help me by running a small testprogram and sending person could help me by running a small testprogram and sending
me the output. me the output.
Added support for multiple font and colour support to item in
list ctrls and tree ctrls.
Added support for multiple-selection file dialog.
Implemented wxMenuBar::Insert() and wxMenu::Insert(). There is Implemented wxMenuBar::Insert() and wxMenu::Insert(). There is
also a Remove() method now, but the GTK doesn't really like that. also a Remove() method now, but the GTK doesn't really like that.
@@ -18,11 +23,14 @@ certain circumstances (Karsten Ballueder).
wxGTK no longer gives warnings if the application shows a dialog wxGTK no longer gives warnings if the application shows a dialog
before entering the main loop. before entering the main loop.
Added string to long/ulong/float conversion routines and some
more string related things.
Updated documentation for wxFile, wxFFile and their respective Updated documentation for wxFile, wxFFile and their respective
stream classes. Documented some more stream classes. stream classes. Documented some more stream classes.
Improved wxHTML and its help system. Options dialog, better printing, Improved wxHTML and its help system. Options dialog, better printing,
history index. history index. Also implemented more (cite, definition lists, etc).
Corrected wxRegion::GetBox(). Corrected wxRegion::GetBox().
@@ -42,7 +50,8 @@ wxSpinCtrl now has its own event, intercepted using EVT_SPINCTRL.
The ODBC classes can now be configured at run-time if they The ODBC classes can now be configured at run-time if they
are to use forward-only cursors or not. are to use forward-only cursors or not.
Added wxDateTime class. Added wxDateTime class. The existing classes wxTime and wxDate
have been reimplemented and corrected using wxDatTime.
Rewritten wxThread to have a flag controlling if the Rewritten wxThread to have a flag controlling if the
thread will delete its C++ class itself ("delete this") or thread will delete its C++ class itself ("delete this") or
@@ -53,11 +62,12 @@ Added TIFF reading code, PCX writing code.
Minor compile and build fixes for different architectures. Minor compile and build fixes for different architectures.
Added more flags to wxSizer for proportional sizing and Added more flags to wxSizer for proportional sizing and
centering and alignment combination. centering and alignment combination and a wxNotebookSizer.
Added controls to wxToolBars (e.g. combobox) and DeleteTool. Added controls to wxToolBars (e.g. combobox) and DeleteTool.
Fixed problem with reading flushable streams. Fixed several problems with buffered streams. Added support for
setting the end-of-line mode (Mac,DOS,Unix) in wxTextOutputStream.
Added code to send events from one thread to another and added Added code to send events from one thread to another and added
function to wake up idle system (needed for sending inter-thread function to wake up idle system (needed for sending inter-thread
@@ -69,14 +79,16 @@ Also corrected navigation on wxRadioBox.
Corrected segfaults in wxGLCanvas and stupid race when using Corrected segfaults in wxGLCanvas and stupid race when using
several such canvasses. several such canvasses.
Some minor updates to wxSockets. Some minor updates to wxSockets. Fixed timeout problem.
Speed-up for new encoding related font code. Speed-up for new encoding related font code.
Changed wxListBox to send deferred events, i.e. events emitted by Changed wxListBox to send deferred events, i.e. events emitted by
the listbox won't get processed before the next idle message. the listbox won't get processed before the next idle message.
Some more minor changes. More minor changes and fixes.
Began work on a new dialog and resource editor (wxDesigner).
7st November '99: wxWindows 2.1.11 released 7st November '99: wxWindows 2.1.11 released

View File

@@ -154,8 +154,8 @@ MyCanvas::MyCanvas( wxScrolledWindow *parent, wxWindowID id,
{ {
m_owner = parent; m_owner = parent;
(void)new wxButton( this, -1, "Hallo I", wxPoint(0,50), wxSize(100,25) ); // (void)new wxButton( this, -1, "Hallo I", wxPoint(0,50), wxSize(100,25) );
(void)new wxButton( this, -1, "Hallo II", wxPoint(200,50), wxSize(100,25) ); // (void)new wxButton( this, -1, "Hallo II", wxPoint(200,50), wxSize(100,25) );
SetBackgroundColour( *wxWHITE ); SetBackgroundColour( *wxWHITE );
@@ -201,7 +201,7 @@ void MyCanvas::OnPaint( wxPaintEvent &WXUNUSED(event) )
// Has the region an screen been exposed? // Has the region an screen been exposed?
if (IsExposed(0,0,100,25)) if (IsExposed(0,0,100,25))
{ {
printf( "Redraw first cell\n" ); wxLogMessage( "Redraw first cell" );
dc.DrawRectangle( 0, 0, 100, 25 ); dc.DrawRectangle( 0, 0, 100, 25 );
dc.DrawText( "First Cell", 5, 5 ); dc.DrawText( "First Cell", 5, 5 );
} }
@@ -216,7 +216,7 @@ void MyCanvas::OnPaint( wxPaintEvent &WXUNUSED(event) )
// Has the region an screen been exposed? // Has the region an screen been exposed?
if (IsExposed(200,0,100,25)) if (IsExposed(200,0,100,25))
{ {
printf( "Redraw second cell\n" ); wxLogMessage( "Redraw second cell" );
dc.DrawRectangle( 200, 0, 100, 25 ); dc.DrawRectangle( 200, 0, 100, 25 );
dc.DrawText( "Second Cell", 205, 5 ); dc.DrawText( "Second Cell", 205, 5 );
} }

View File

@@ -298,6 +298,7 @@ wxGenericTreeItem::wxGenericTreeItem(wxGenericTreeItem *parent,
m_attr = (wxTreeItemAttr *)NULL; m_attr = (wxTreeItemAttr *)NULL;
// We don't know the height here yet.
m_width = 0; m_width = 0;
m_height = 0; m_height = 0;
} }
@@ -318,10 +319,8 @@ void wxGenericTreeItem::DeleteChildren(wxTreeCtrl *tree)
for ( size_t n = 0; n < count; n++ ) for ( size_t n = 0; n < count; n++ )
{ {
wxGenericTreeItem *child = m_children[n]; wxGenericTreeItem *child = m_children[n];
if ( tree ) if (tree)
{
tree->SendDeleteEvent(child); tree->SendDeleteEvent(child);
}
child->DeleteChildren(tree); child->DeleteChildren(tree);
delete child; delete child;
@@ -561,7 +560,7 @@ bool wxTreeCtrl::Create(wxWindow *parent, wxWindowID id,
#endif #endif
SetBackgroundColour( *wxWHITE ); SetBackgroundColour( *wxWHITE );
// m_dottedPen = wxPen( "grey", 0, wxDOT ); // m_dottedPen = wxPen( "grey", 0, wxDOT ); too slow under XFree86
m_dottedPen = wxPen( "grey", 0, 0 ); m_dottedPen = wxPen( "grey", 0, 0 );
return TRUE; return TRUE;
@@ -1083,7 +1082,7 @@ void wxTreeCtrl::Toggle(const wxTreeItemId& itemId)
{ {
wxGenericTreeItem *item = itemId.m_pItem; wxGenericTreeItem *item = itemId.m_pItem;
if ( item->IsExpanded() ) if (item->IsExpanded())
Collapse(itemId); Collapse(itemId);
else else
Expand(itemId); Expand(itemId);
@@ -1091,7 +1090,7 @@ void wxTreeCtrl::Toggle(const wxTreeItemId& itemId)
void wxTreeCtrl::Unselect() void wxTreeCtrl::Unselect()
{ {
if ( m_current ) if (m_current)
{ {
m_current->SetHilight( FALSE ); m_current->SetHilight( FALSE );
RefreshLine( m_current ); RefreshLine( m_current );
@@ -1100,16 +1099,21 @@ void wxTreeCtrl::Unselect()
void wxTreeCtrl::UnselectAllChildren(wxGenericTreeItem *item) void wxTreeCtrl::UnselectAllChildren(wxGenericTreeItem *item)
{ {
if (item->IsSelected())
{
item->SetHilight(FALSE); item->SetHilight(FALSE);
RefreshLine(item); RefreshLine(item);
}
if (item->HasChildren()) if (item->HasChildren())
{ {
wxArrayGenericTreeItems& children = item->GetChildren(); wxArrayGenericTreeItems& children = item->GetChildren();
size_t count = children.Count(); size_t count = children.Count();
for ( size_t n = 0; n < count; ++n ) for ( size_t n = 0; n < count; ++n )
{
UnselectAllChildren(children[n]); UnselectAllChildren(children[n]);
} }
}
} }
void wxTreeCtrl::UnselectAll() void wxTreeCtrl::UnselectAll()
@@ -1127,7 +1131,7 @@ bool wxTreeCtrl::TagNextChildren(wxGenericTreeItem *crt_item, wxGenericTreeItem
{ {
wxGenericTreeItem *parent = crt_item->GetParent(); wxGenericTreeItem *parent = crt_item->GetParent();
if ( parent == NULL ) // This is root item if (parent == NULL) // This is root item
return TagAllChildrenUntilLast(crt_item, last_item, select); return TagAllChildrenUntilLast(crt_item, last_item, select);
wxArrayGenericTreeItems& children = parent->GetChildren(); wxArrayGenericTreeItems& children = parent->GetChildren();
@@ -1136,7 +1140,9 @@ bool wxTreeCtrl::TagNextChildren(wxGenericTreeItem *crt_item, wxGenericTreeItem
size_t count = children.Count(); size_t count = children.Count();
for (size_t n=(size_t)(index+1); n<count; ++n) for (size_t n=(size_t)(index+1); n<count; ++n)
{
if (TagAllChildrenUntilLast(children[n], last_item, select)) return TRUE; if (TagAllChildrenUntilLast(children[n], last_item, select)) return TRUE;
}
return TagNextChildren(parent, last_item, select); return TagNextChildren(parent, last_item, select);
} }
@@ -1146,14 +1152,18 @@ bool wxTreeCtrl::TagAllChildrenUntilLast(wxGenericTreeItem *crt_item, wxGenericT
crt_item->SetHilight(select); crt_item->SetHilight(select);
RefreshLine(crt_item); RefreshLine(crt_item);
if (crt_item==last_item) return TRUE; if (crt_item==last_item)
return TRUE;
if (crt_item->HasChildren()) if (crt_item->HasChildren())
{ {
wxArrayGenericTreeItems& children = crt_item->GetChildren(); wxArrayGenericTreeItems& children = crt_item->GetChildren();
size_t count = children.Count(); size_t count = children.Count();
for ( size_t n = 0; n < count; ++n ) for ( size_t n = 0; n < count; ++n )
if (TagAllChildrenUntilLast(children[n], last_item, select)) return TRUE; {
if (TagAllChildrenUntilLast(children[n], last_item, select))
return TRUE;
}
} }
return FALSE; return FALSE;

View File

@@ -3330,6 +3330,10 @@ void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) )
wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") ); wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") );
/*
printf( "ScrollWindow: %d %d\n", dx, dy );
*/
gtk_pizza_scroll( GTK_PIZZA(m_wxwindow), -dx, -dy ); gtk_pizza_scroll( GTK_PIZZA(m_wxwindow), -dx, -dy );
/* /*

View File

@@ -3330,6 +3330,10 @@ void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) )
wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") ); wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") );
/*
printf( "ScrollWindow: %d %d\n", dx, dy );
*/
gtk_pizza_scroll( GTK_PIZZA(m_wxwindow), -dx, -dy ); gtk_pizza_scroll( GTK_PIZZA(m_wxwindow), -dx, -dy );
/* /*