UI: Add QListWidget subclass to emit focus change

The FocusList subclass of QListWidget emits a GotFocus signal when it
gets focus -- used for the filters window to know when a specific filter
list gets focus.
This commit is contained in:
jp9000 2015-03-23 19:15:19 -07:00
parent 642aa7454f
commit ff363bc77b
3 changed files with 29 additions and 0 deletions

View file

@ -104,6 +104,7 @@ set(obs_SOURCES
window-log-reply.cpp
window-remux.cpp
properties-view.cpp
focus-list.cpp
double-slider.cpp
volume-control.cpp
adv-audio-control.cpp
@ -135,6 +136,7 @@ set(obs_HEADERS
properties-view.hpp
display-helpers.hpp
double-slider.hpp
focus-list.hpp
mute-checkbox.hpp
volume-control.hpp
adv-audio-control.hpp

10
obs/focus-list.cpp Normal file
View file

@ -0,0 +1,10 @@
#include "focus-list.hpp"
FocusList::FocusList(QWidget *parent) : QListWidget(parent) {}
void FocusList::focusInEvent(QFocusEvent *event)
{
QListWidget::focusInEvent(event);
emit GotFocus();
}

17
obs/focus-list.hpp Normal file
View file

@ -0,0 +1,17 @@
#pragma once
#include <QListWidget>
class FocusList : public QListWidget
{
Q_OBJECT
public:
FocusList(QWidget *parent);
protected:
void focusInEvent(QFocusEvent *event) override;
signals:
void GotFocus();
};