5 #include <QDialogButtonBox>
17 /** A window with a list and menu actions (Maemo) or buttons (non-Maemo). */
18 class ListWindow: public QMainWindow
23 explicit ListWindow(QWidget *parent = 0);
25 /** Add a list view to the window. */
26 void addList(ListView *list);
29 * Add an action to the window: either a button, or, on Maemo, a top
31 * Activating the action invokes the slot with no parameters.
33 void addAction(const QString &title, QObject *receiver, const char *slot,
34 QDialogButtonBox::ButtonRole role = QDialogButtonBox::ActionRole);
37 * Add an action to the selected item in the list: either a button which is
38 * enabled when a list item is selected, or, on Maemo, a pop-up menu item
39 * which is displayed when a list item is long-pressed.
40 * Activating the action invokes the slot with no parameters.
42 void addItemAction(const QString &title, QObject *receiver,
46 void onSelectionChanged(const QItemSelection &selected,
47 const QItemSelection &deselected);
49 void onModelChanged();
51 void activateItemButtons();
56 bool eventFilter(QObject *obj, QEvent *event);
57 void closeEvent(QCloseEvent *event);
60 QDialogButtonBox *buttonBox;
61 QList<QPushButton *> itemButtons;
62 #endif // Q_WS_MAEMO_5
63 QBoxLayout *contentLayout;
67 #endif // LISTWINDOW_H