#include <widget_observer.h>
シグナル | |
| void | resized (QWidget *target, const QSize &oldsize, const QSize &newsize) |
| signal: サイズ変更時に発火 | |
| void | moved (QWidget *target, const QPoint &oldpos, const QPoint &newpos) |
| signal: 位置変更時に発火 | |
| void | closing (QWidget *target, bool &accepted) |
| signal: window閉じる際に発火 | |
Public メソッド | |
| WidgetObserver (QObject *parent=0) | |
| virtual | ~WidgetObserver () |
| > コンストラクタ | |
| void | disconnect () |
| eventFilterが登録されていれば外す。 | |
| void | setObservable (QWidget *observable) |
| 被監視widgetを設定 | |
| QPoint | lastPosition () const |
| 最後に登録された場所を返す | |
| QSize | lastSize () const |
| 最後に登録された位置を返す | |
Private メソッド | |
| bool | eventFilter (QObject *target, QEvent *event) |
| イベントフィルタ。 | |
Private 変数 | |
| QWidget * | observable_ |
| 被監視widget | |
| QPoint | lastPos_ |
| widgetの位置 | |
| QSize | lastSize_ |
| widgetの大きさ | |
Widgetの場所と位置情報を覚えておくためのクラス。 QtのeventFilter の枠組みを利用する。ただし,基本的にeventの処理は元のeventハンドラを 呼び出し,自身ではeventの中を除くだけである。
また,eventとsignalの変換も行う。resize, move, closeについてsignalとして 通知することが出来る。
| WidgetObserver::WidgetObserver | ( | QObject * | parent = 0 |
) | [inline] |
| virtual WidgetObserver::~WidgetObserver | ( | ) | [inline, virtual] |
> コンストラクタ
< デストラクタ。eventFilterが登録されていれば外す。
| void WidgetObserver::disconnect | ( | ) |
eventFilterが登録されていれば外す。
| void WidgetObserver::setObservable | ( | QWidget * | observable | ) |
被監視widgetを設定
| QPoint WidgetObserver::lastPosition | ( | ) | const [inline] |
最後に登録された場所を返す
| QSize WidgetObserver::lastSize | ( | ) | const [inline] |
最後に登録された位置を返す
| void WidgetObserver::resized | ( | QWidget * | target, | |
| const QSize & | oldsize, | |||
| const QSize & | newsize | |||
| ) | [signal] |
signal: サイズ変更時に発火
| target | eventを受け取ったwidget | |
| oldsize | 変更前のサイズ | |
| newsize | 新しいサイズ |
| void WidgetObserver::moved | ( | QWidget * | target, | |
| const QPoint & | oldpos, | |||
| const QPoint & | newpos | |||
| ) | [signal] |
signal: 位置変更時に発火
| target | eventを受け取ったwidget | |
| oldpos | 変更前の位置 | |
| newpos | 新しい位置 |
| void WidgetObserver::closing | ( | QWidget * | target, | |
| bool & | accepted | |||
| ) | [signal] |
signal: window閉じる際に発火
| target | eventを受け取ったwidget | |
| accepted | slotがこれをtrueにして返すとeventが受理されたことになる |
| bool WidgetObserver::eventFilter | ( | QObject * | target, | |
| QEvent * | event | |||
| ) | [private] |
イベントフィルタ。
QWidget* WidgetObserver::observable_ [private] |
被監視widget
QPoint WidgetObserver::lastPos_ [private] |
widgetの位置
QSize WidgetObserver::lastSize_ [private] |
widgetの大きさ
1.5.5