Chatterino
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
chatterino::DraggablePopup Class Reference

#include <DraggablePopup.hpp>

Inheritance diagram for chatterino::DraggablePopup:
[legend]
Collaboration diagram for chatterino::DraggablePopup:
[legend]

Public Member Functions

 DraggablePopup (bool closeAutomatically, QWidget *parent)
 
- Public Member Functions inherited from chatterino::BaseWindow
 BaseWindow (FlagsEnum< Flags > flags_=None, QWidget *parent=nullptr)
 
 ~BaseWindow () override
 
void setInitialBounds (const QRect &bounds)
 
QRect getBounds ()
 
QWidget * getLayoutContainer ()
 
bool hasCustomWindowFrame ()
 
TitleBarButtonaddTitleBarButton (const TitleBarButtonStyle &style, std::function< void()> onClicked)
 
EffectLabeladdTitleBarLabel (std::function< void()> onClicked)
 
void setStayInScreenRect (bool value)
 
bool getStayInScreenRect () const
 
void setActionOnFocusLoss (ActionOnFocusLoss value)
 
ActionOnFocusLoss getActionOnFocusLoss () const
 
void moveTo (QWidget *widget, QPoint point, bool offset=true)
 
virtual float scale () const override
 
float qtFontScale () const
 
- Public Member Functions inherited from chatterino::BaseWidget
 BaseWidget (QWidget *parent=nullptr, Qt::WindowFlags f=Qt::WindowFlags())
 
boost::optional< float > overrideScale () const
 
void setOverrideScale (boost::optional< float >)
 
QSize scaleIndependantSize () const
 
int scaleIndependantWidth () const
 
int scaleIndependantHeight () const
 
void setScaleIndependantSize (int width, int height)
 
void setScaleIndependantSize (QSize)
 
void setScaleIndependantWidth (int value)
 
void setScaleIndependantHeight (int value)
 
float qtFontScale () const
 

Protected Member Functions

void mousePressEvent (QMouseEvent *event) override
 
void mouseReleaseEvent (QMouseEvent *event) override
 
void mouseMoveEvent (QMouseEvent *event) override
 
- Protected Member Functions inherited from chatterino::BaseWindow
virtual bool nativeEvent (const QByteArray &eventType, void *message, long *result) override
 
virtual void scaleChangedEvent (float) override
 
virtual void paintEvent (QPaintEvent *) override
 
virtual void changeEvent (QEvent *) override
 
virtual void leaveEvent (QEvent *) override
 
virtual void resizeEvent (QResizeEvent *) override
 
virtual void moveEvent (QMoveEvent *) override
 
virtual void closeEvent (QCloseEvent *) override
 
virtual void showEvent (QShowEvent *) override
 
virtual void themeChangedEvent () override
 
virtual bool event (QEvent *event) override
 
virtual void wheelEvent (QWheelEvent *event) override
 
void mousePressEvent (QMouseEvent *event) override
 
void mouseReleaseEvent (QMouseEvent *event) override
 
void mouseMoveEvent (QMouseEvent *event) override
 
void updateScale ()
 
- Protected Member Functions inherited from chatterino::BaseWidget
virtual void childEvent (QChildEvent *) override
 
virtual void addShortcuts ()
 
void setScale (float value)
 
void clearShortcuts ()
 

Protected Attributes

std::shared_ptr< bool > lifetimeHack_
 
- Protected Attributes inherited from chatterino::BaseWindow
QPointF movingRelativePos
 
bool moving {}
 
boost::optional< QColor > overrideBackgroundColor_
 
- Protected Attributes inherited from chatterino::BaseWidget
Themetheme
 
std::vector< QShortcut * > shortcuts_
 
pajlada::Signals::SignalHolder signalHolder_
 

Additional Inherited Members

- Public Types inherited from chatterino::BaseWindow
enum  Flags {
  None = 0, EnableCustomFrame = 1, Frameless = 2, TopMost = 4,
  DisableCustomScaling = 8, FramelessDraggable = 16, DontFocus = 32, Dialog = 64
}
 
enum  ActionOnFocusLoss { Nothing, Delete, Close, Hide }
 
- Static Public Member Functions inherited from chatterino::BaseWindow
static bool supportsCustomWindowFrame ()
 
- Public Attributes inherited from chatterino::BaseWindow
pajlada::Signals::NoArgSignal closing
 
QLayout * windowLayout = nullptr
 
QHBoxLayout * titlebarBox = nullptr
 
QWidget * titleLabel = nullptr
 
TitleBarButtonminButton = nullptr
 
TitleBarButtonmaxButton = nullptr
 
TitleBarButtonexitButton = nullptr
 
QWidget * layoutBase = nullptr
 
std::vector< Button * > buttons
 
- Public Attributes inherited from chatterino::BaseWidget
pajlada::Signals::Signal< float > scaleChanged
 

Constructor & Destructor Documentation

◆ DraggablePopup()

chatterino::DraggablePopup::DraggablePopup ( bool  closeAutomatically,
QWidget *  parent 
)

DraggablePopup implements the automatic dragging behavior when clicking anywhere in the window (that doesn't have some other widget).

If closeAutomatically is set, the window will close when losing focus, and the window will be frameless.

Here is the call graph for this function:

Member Function Documentation

◆ mouseMoveEvent()

void chatterino::DraggablePopup::mouseMoveEvent ( QMouseEvent *  event)
overrideprotected

◆ mousePressEvent()

void chatterino::DraggablePopup::mousePressEvent ( QMouseEvent *  event)
overrideprotected

◆ mouseReleaseEvent()

void chatterino::DraggablePopup::mouseReleaseEvent ( QMouseEvent *  event)
overrideprotected

Member Data Documentation

◆ lifetimeHack_

std::shared_ptr<bool> chatterino::DraggablePopup::lifetimeHack_
protected

The documentation for this class was generated from the following files: