#include "wx/dcclient.h"
#include "wx/timer.h"
#include "wx/settings.h"
+ #include "wx/msgdlg.h"
#endif
#include "wx/stockitem.h"
#include "wx/calctrl.h"
#include "wx/popupwin.h"
#include "wx/renderer.h"
+#include "wx/dcbuffer.h"
#include "wx/icon.h"
//-----------------------------------------------------------------------------
// wxDataViewDateRenderer
// ---------------------------------------------------------
+#if wxUSE_CALENDARCTRL
+
class wxDataViewDateRendererPopupTransient: public wxPopupTransientWindow
{
public:
DismissAndNotify();
}
+#endif // wxUSE_CALENDARCTRL
+
IMPLEMENT_ABSTRACT_CLASS(wxDataViewDateRenderer, wxDataViewCustomRenderer)
wxDataViewDateRenderer::wxDataViewDateRenderer( const wxString &varianttype,
model->GetValue( variant, col, row );
wxDateTime value = variant.GetDateTime();
+#if wxUSE_CALENDARCTRL
wxDataViewDateRendererPopupTransient *popup = new wxDataViewDateRendererPopupTransient(
GetOwner()->GetOwner()->GetParent(), &value, model, col, row );
wxPoint pos = wxGetMousePosition();
popup->Move( pos );
popup->Layout();
popup->Popup( popup->m_cal );
-
+#else
+ wxMessageBox(value.Format());
+#endif
return true;
}
}
bool wxDataViewColumn::GetSortable()
-{
+{
// TODO
return false;
}
m_resizeCursor = new wxCursor( wxCURSOR_SIZEWE );
wxVisualAttributes attr = wxPanel::GetClassDefaultAttributes();
+ SetBackgroundStyle( wxBG_STYLE_CUSTOM );
SetOwnForegroundColour( attr.colFg );
SetOwnBackgroundColour( attr.colBg );
if (!m_hasFont)
int w, h;
GetClientSize( &w, &h );
- wxPaintDC dc( this );
+ wxAutoBufferedPaintDC dc( this );
+
+ dc.SetBackground(GetBackgroundColour());
+ dc.Clear();
int xpix;
m_owner->GetScrollPixelsPerUnit( &xpix, NULL );
m_hasFocus = false;
+ SetBackgroundStyle( wxBG_STYLE_CUSTOM );
SetBackgroundColour( *wxWHITE );
UpdateDisplay();
void wxDataViewMainWindow::OnPaint( wxPaintEvent &WXUNUSED(event) )
{
- wxPaintDC dc( this );
+ wxAutoBufferedPaintDC dc( this );
+
+ dc.SetBackground(GetBackgroundColour());
+ dc.Clear();
GetOwner()->PrepareDC( dc );