eric7/E5Gui/EricLineEditButton.py

branch
eric7
changeset 8358
144a6b854f70
parent 8357
a081458cc57b
child 8359
0e29e54e9269
diff -r a081458cc57b -r 144a6b854f70 eric7/E5Gui/EricLineEditButton.py
--- a/eric7/E5Gui/EricLineEditButton.py	Sat May 22 19:52:34 2021 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,97 +0,0 @@
-# -*- coding: utf-8 -*-
-
-# Copyright (c) 2010 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
-#
-
-"""
-Module implementing a button class to be used with EricLineEdit.
-"""
-
-from PyQt6.QtCore import Qt, QPoint, QPointF
-from PyQt6.QtGui import QPainter, QPainterPath
-from PyQt6.QtWidgets import QAbstractButton
-
-
-# TODO: Get rid of this
-class EricLineEditButton(QAbstractButton):
-    """
-    Class implementing a button to be used with EricLineEdit.
-    """
-    def __init__(self, parent=None):
-        """
-        Constructor
-        
-        @param parent reference to the parent widget (QWidget)
-        """
-        super().__init__(parent)
-        
-        self.__menu = None
-        self.__image = None
-        
-        self.setFocusPolicy(Qt.FocusPolicy.NoFocus)
-        self.setCursor(Qt.CursorShape.ArrowCursor)
-        self.setMinimumSize(16, 16)
-        
-        self.clicked.connect(self.__clicked)
-    
-    def setMenu(self, menu):
-        """
-        Public method to set the button menu.
-        
-        @param menu reference to the menu (QMenu)
-        """
-        self.__menu = menu
-        self.update()
-    
-    def menu(self):
-        """
-        Public method to get a reference to the menu.
-        
-        @return reference to the associated menu (QMenu)
-        """
-        return self.__menu
-    
-    def setIcon(self, icon):
-        """
-        Public method to set the button icon.
-        
-        @param icon icon to be set (QIcon)
-        """
-        if icon.isNull():
-            self.__image = None
-        else:
-            self.__image = icon.pixmap(16, 16).toImage()
-        super().setIcon(icon)
-    
-    def __clicked(self):
-        """
-        Private slot to handle a button click.
-        """
-        if self.__menu:
-            pos = self.mapToGlobal(QPoint(0, self.height()))
-            self.__menu.exec(pos)
-    
-    def paintEvent(self, evt):
-        """
-        Protected method handling a paint event.
-        
-        @param evt reference to the paint event (QPaintEvent)
-        """
-        painter = QPainter(self)
-        
-        if self.__image is not None and not self.__image.isNull():
-            x = (self.width() - self.__image.width()) // 2 - 1
-            y = (self.height() - self.__image.height()) // 2 - 1
-            painter.drawImage(x, y, self.__image)
-        
-        if self.__menu is not None:
-            triagPath = QPainterPath()
-            startPos = QPointF(self.width() - 5, self.height() - 3)
-            triagPath.moveTo(startPos)
-            triagPath.lineTo(startPos.x() + 4, startPos.y())
-            triagPath.lineTo(startPos.x() + 2, startPos.y() + 2)
-            triagPath.closeSubpath()
-            painter.setPen(Qt.GlobalColor.black)
-            painter.setBrush(Qt.GlobalColor.black)
-            painter.setRenderHint(QPainter.RenderHint.Antialiasing, False)
-            painter.drawPath(triagPath)

eric ide

mercurial