| 145 | } |
| 146 | |
| 147 | ProgressItem *ProgressManager::createProgressItemImpl( ProgressItem *parent, |
| 148 | const QString &id, |
| 149 | const QString &label, |
| 150 | const QString &status, |
| 151 | bool cancellable, |
| 152 | bool usesCrypto ) |
| 153 | { |
| 154 | ProgressItem *t = nullptr; |
| 155 | if ( !mTransactions.value( id ) ) { |
| 156 | t = new ProgressItem ( parent, id, label, status, cancellable, usesCrypto ); |
| 157 | mTransactions.insert( id, t ); |
| 158 | if ( parent ) { |
| 159 | ProgressItem *p = mTransactions.value( parent->id() ); |
| 160 | if ( p ) { |
| 161 | p->addChild( t ); |
| 162 | } |
| 163 | } |
| 164 | // connect all signals |
| 165 | connect ( t, &ProgressItem::progressItemCompleted, |
| 166 | this, &ProgressManager::slotTransactionCompleted ); |
| 167 | connect ( t, &ProgressItem::progressItemProgress, |
| 168 | this, &ProgressManager::progressItemProgress ); |
| 169 | connect ( t, &ProgressItem::progressItemAdded, |
| 170 | this, &ProgressManager::progressItemAdded ); |
| 171 | connect ( t, &ProgressItem::progressItemCanceled, |
| 172 | this, &ProgressManager::progressItemCanceled ); |
| 173 | connect ( t, &ProgressItem::progressItemStatus, |
| 174 | this, &ProgressManager::progressItemStatus ); |
| 175 | connect ( t, &ProgressItem::progressItemLabel, |
| 176 | this, &ProgressManager::progressItemLabel ); |
| 177 | connect ( t, &ProgressItem::progressItemUsesCrypto, |
| 178 | this, &ProgressManager::progressItemUsesCrypto ); |
| 179 | connect ( t, &ProgressItem::progressItemUsesBusyIndicator, |
| 180 | this, &ProgressManager::progressItemUsesBusyIndicator ); |
| 181 | |
| 182 | emit progressItemAdded( t ); |
| 183 | } else { |
| 184 | // Hm, is this what makes the most sense? |
| 185 | t = mTransactions.value( id ); |
| 186 | } |
| 187 | return t; |
| 188 | } |
| 189 | |
| 190 | ProgressItem *ProgressManager::createProgressItemImpl( const QString &parent, |
| 191 | const QString &id, |
no test coverage detected