+ virtual int indexForKeyboardSearch(const QString &text, int startFromIndex = 0) const;
+
+ /**
+ * @return True, if the item with the index \a index basically supports dropping.
+ * Per default false is returned.
+ *
+ * The information is used only to give a visual feedback during a drag operation
+ * and not to decide whether a drop event gets emitted. It is it is still up to
+ * the receiver of KItemListController::itemDropEvent() to decide how to handle
+ * the drop event.
+ */
+ // TODO: Should the MIME-data be passed too so that the model can do a more specific
+ // decision whether it accepts the drop?
+ virtual bool supportsDropping(int index) const;
+
+ /**
+ * @return True, if the item with the index \a index can be entered in during hover actions.
+ * Per default false is returned.
+ *
+ * This is used to check that if the item
+ * we're hovering on is either directory or a desktop file.
+ */
+ virtual bool canEnterOnHover(int index) const;
+
+ /**
+ * @return An internal mimetype to signal that an itemDropEvent() should be rejected by
+ * the receiving model.
+ *
+ * This mimeType can be used in createMimeData() to notify that the
+ * drop-onto-items events should be ignored, while the drop-between-items
+ * ones should be still accepted.
+ */
+ QString blacklistItemDropEventMimeType() const;
+
+ /**
+ * @return URL of the item at the specified index
+ */
+ virtual QUrl url(int index) const;
+
+ /**
+ * @return True, if item at specified index is a directory
+ */
+ virtual bool isDir(int index) const;
+
+ /**
+ * @return Parent directory of the items that are shown
+ */
+ virtual QUrl directory() const;
+Q_SIGNALS: