QGIS API Documentation  3.22.4-Białowieża (ce8e65e95e)
qgshighlightablecombobox.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  qgshighlightablecombobox.cpp
3  ---------------------------
4  Date : 20/12/2019
5  Copyright : (C) 2019 by Nyall Dawson
6  Email : nyall dot dawson at gmail dot com
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 
17 #include <QPainter>
18 
20  : QComboBox( parent )
21 {}
22 
24 {
25  QComboBox::paintEvent( e );
26  if ( mHighlight )
27  {
28  QPainter p( this );
29  const int width = 2; // width of highlight rectangle inside frame
30  p.setPen( QPen( palette().highlight(), width ) );
31  const QRect r = rect().adjusted( width, width, -width, -width );
32  p.drawRect( r );
33  }
34 }
35 
37 {
38  mHighlight = highlighted;
39  update();
40 }
QgsHighlightableComboBox(QWidget *parent=nullptr)
Constructor for QgsHighlightableComboBox with the specified parent widget.
void paintEvent(QPaintEvent *e) override
void setHighlighted(bool highlighted)
Sets whether the combo box is currently highlighted.