forked from Ivasoft/DSView
fix: XToolButton display and hide state switching error
This commit is contained in:
@@ -21,6 +21,7 @@
|
||||
|
||||
#include "xtoolbutton.h"
|
||||
#include <QMenu>
|
||||
#include "../log.h"
|
||||
|
||||
|
||||
XToolButton::XToolButton(QWidget *parent)
|
||||
@@ -34,13 +35,12 @@ void XToolButton::mousePressEvent(QMouseEvent *event)
|
||||
if (event->button() == Qt::LeftButton)
|
||||
{
|
||||
QMenu* menu = this->menu();
|
||||
if (menu)
|
||||
{
|
||||
if (menu){
|
||||
QPoint pt = mapToGlobal(rect().bottomLeft());
|
||||
menu->exec(pt);
|
||||
return;
|
||||
menu->popup(pt);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
QToolButton::mousePressEvent(event);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,11 +29,13 @@
|
||||
|
||||
class XToolButton : public QToolButton
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
XToolButton(QWidget *parent = nullptr);
|
||||
|
||||
protected:
|
||||
void mousePressEvent(QMouseEvent *event);// override;
|
||||
void mousePressEvent(QMouseEvent *event) override;
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user