Commit 598fe407cdde9607e266c46a4c97241e391e6f8a
- Diff rendering mode:
- inline
- side by side
src/bookmarks/bookmarksmodel.cpp
(13 / 8)
|   | |||
| 254 | 254 | if (!index.isValid()) | |
| 255 | 255 | return Qt::NoItemFlags; | |
| 256 | 256 | ||
| 257 | BookmarkNode *node = this->node(index); | ||
| 258 | BookmarkNode::Type type = node->type(); | ||
| 257 | 259 | Qt::ItemFlags flags = Qt::ItemIsSelectable | Qt::ItemIsEnabled; | |
| 258 | 260 | ||
| 259 | BookmarkNode *bookmarkNode = node(index); | ||
| 260 | |||
| 261 | if (bookmarkNode != m_bookmarksManager->menu() | ||
| 262 | && bookmarkNode != m_bookmarksManager->toolbar()) { | ||
| 263 | flags |= Qt::ItemIsDragEnabled; | ||
| 264 | if (bookmarkNode->type() != BookmarkNode::Separator) | ||
| 265 | flags |= Qt::ItemIsEditable; | ||
| 266 | } | ||
| 267 | 261 | if (hasChildren(index)) | |
| 268 | 262 | flags |= Qt::ItemIsDropEnabled; | |
| 263 | |||
| 264 | if (node == m_bookmarksManager->menu() | ||
| 265 | || node == m_bookmarksManager->toolbar()) | ||
| 266 | return flags; | ||
| 267 | |||
| 268 | flags |= Qt::ItemIsDragEnabled; | ||
| 269 | |||
| 270 | if ((index.column() == 0 && type != BookmarkNode::Separator) | ||
| 271 | || (index.column() == 1 && type == BookmarkNode::Bookmark)) | ||
| 272 | flags |= Qt::ItemIsEditable; | ||
| 273 | |||
| 269 | 274 | return flags; | |
| 270 | 275 | } | |
| 271 | 276 |

