| 190 | } |
| 191 | |
| 192 | void |
| 193 | Editables::transform (const db::DCplxTrans &t) |
| 194 | { |
| 195 | std::unique_ptr<db::Transaction> trans_holder (new db::Transaction (manager (), tl::to_string (tr ("Transform")))); |
| 196 | |
| 197 | if (has_selection ()) { |
| 198 | |
| 199 | try { |
| 200 | |
| 201 | trans_holder->open (); |
| 202 | |
| 203 | // this dummy operation will update the screen: |
| 204 | if (manager ()) { |
| 205 | manager ()->queue (this, new db::Op ()); |
| 206 | } |
| 207 | |
| 208 | for (iterator e = begin (); e != end (); ++e) { |
| 209 | e->transform (t); |
| 210 | } |
| 211 | |
| 212 | } catch (...) { |
| 213 | trans_holder->cancel (); |
| 214 | throw; |
| 215 | } |
| 216 | |
| 217 | } |
| 218 | } |
| 219 | |
| 220 | void |
| 221 | Editables::paste () |
no test coverage detected