feature62fix.patch

slayeriq, 01/09/2011 08:33 pm

Download (2.4 KB)

 
b/client/gui_qt/DialogImportNZB.cpp
7 7
#include "ui_DialogImportNZB.h"
8 8
#include "DialogSetCollectionName.h"
9 9

                
10
enum {
11
    FIELD_DOWNLOAD,
12
    FIELD_SUBJECT,
13
    FIELD_POSTER,
14
    FIELD_GROUPS,
15
    FIELD_STAMP,
16
    FIELD_FILE_SIZE_STR,
17
    FIELD_FILE_SIZE,
18
    FIELD_GROUPS_LIST,
19
    FIELD_SEGMENTS_LIST,
20
    NUM_FIELDS
21
};
22

                
23 10
class ItemDelegate : public QStyledItemDelegate
24 11
{
25 12
public:
... ...
55 42
            return false;
56 43
        // make sure that we have a check state
57 44
        QVariant value = index.data(Qt::CheckStateRole);
58

                
45
        if (!value.isValid())
46
            return false;
59 47
        // make sure that we have the right event type
60 48
        if (event->type() == QEvent::MouseButtonRelease) {
61 49
            const int textMargin = QApplication::style()->pixelMetric(QStyle::PM_FocusFrameHMargin) + 1;
... ...
69 57
        } else if (event->type() == QEvent::KeyPress) {
70 58
            if (static_cast(event)->key() != Qt::Key_Space&& static_cast(event)->key() != Qt::Key_Select)
71 59
                return false;
72

                
73
            QTreeWidget *tree = static_cast(model->parent());
74

                
75
            for (int i = 0; i < tree->topLevelItemCount(); i++) {
76
                QTreeWidgetItem *item = tree->topLevelItem(i);
77

                
78
                if(item->isSelected()) {
79
                    Qt::CheckState checkState = (item->checkState(FIELD_DOWNLOAD) == Qt::Checked ? Qt::Unchecked : Qt::Checked);
80
                    item->setCheckState(FIELD_DOWNLOAD, checkState);
81
                }
82
            }
83

                
84
            return false;
85

                
86 60
        } else {
87 61
            return false;
88 62
        }
89

                
90
        if (!value.isValid()) {
91
            return false;
92
        }
93

                
94 63
        Qt::CheckState state = (static_cast(value.toInt()) == Qt::Checked
95 64
                                ? Qt::Unchecked : Qt::Checked);
96 65
        return model->setData(index, state, Qt::CheckStateRole);
97 66
    }
98 67
};
99 68

                
69
enum {
70
    FIELD_DOWNLOAD,
71
    FIELD_SUBJECT,
72
    FIELD_POSTER,
73
    FIELD_GROUPS,
74
    FIELD_STAMP,
75
    FIELD_FILE_SIZE_STR,
76
    FIELD_FILE_SIZE,
77
    FIELD_GROUPS_LIST,
78
    FIELD_SEGMENTS_LIST,
79
    NUM_FIELDS
80
};
81

                
100 82
Q_DECLARE_METATYPE(QList);
101 83
Q_DECLARE_METATYPE(QList);