diff options
Diffstat (limited to 'navit/graphics/qt5/QNavitWidget.cpp')
| -rw-r--r-- | navit/graphics/qt5/QNavitWidget.cpp | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/navit/graphics/qt5/QNavitWidget.cpp b/navit/graphics/qt5/QNavitWidget.cpp index df9038055..ea21de17f 100644 --- a/navit/graphics/qt5/QNavitWidget.cpp +++ b/navit/graphics/qt5/QNavitWidget.cpp @@ -69,17 +69,25 @@ void QNavitWidget :: paintEvent(QPaintEvent * event) } -void QNavitWidget :: do_resize(QSize size) +void QNavitWidget::resizeEvent(QResizeEvent * event) { - delete graphics_priv->pixmap; - graphics_priv->pixmap=new QPixmap(size); - graphics_priv->pixmap->fill(); - QPainter painter(graphics_priv->pixmap); - QBrush brush; - painter.fillRect(0, 0, size.width(), size.height(), brush); - dbg(lvl_debug,"size %dx%d\n", size.width(), size.height()); - dbg(lvl_debug,"pixmap %p %dx%d\n", graphics_priv->pixmap, graphics_priv->pixmap->width(), graphics_priv->pixmap->height()); - resize_callback(size.width(),size.height()); + QPainter * painter = NULL; + if(graphics_priv->pixmap != NULL) + { + delete graphics_priv->pixmap; + graphics_priv->pixmap = NULL; + } + + graphics_priv->pixmap=new QPixmap(size()); + graphics_priv->pixmap->fill(); + painter = new QPainter(graphics_priv->pixmap); + QBrush brush; + painter->fillRect(0, 0, width(), height(), brush); + if(painter != NULL) + delete painter; + dbg(lvl_debug,"size %dx%d\n", width(), height()); + dbg(lvl_debug,"pixmap %p %dx%d\n", graphics_priv->pixmap, graphics_priv->pixmap->width(), graphics_priv->pixmap->height()); + resize_callback(width(),height()); } void QNavitWidget::mouseEvent(int pressed, QMouseEvent *event) |
