diff --git a/src/dolphinpart.cpp b/src/dolphinpart.cpp index bd986dcf5a..da6faecc6f 100644 --- a/src/dolphinpart.cpp +++ b/src/dolphinpart.cpp @@ -130,6 +130,10 @@ void DolphinPart::createActions() KAction* deleteAction = DolphinView::createDeleteAction(actionCollection()); connect(deleteAction, SIGNAL(triggered()), m_view, SLOT(deleteSelectedItems())); + KAction *editMimeTypeAction = actionCollection()->addAction( "editMimeType" ); + editMimeTypeAction->setText( i18n( "&Edit File Type..." ) ); + connect(editMimeTypeAction, SIGNAL(triggered()), SLOT(slotEditMimeType())); + // This action doesn't appear in the GUI, it's for the shortcut only. // KNewMenu takes care of the GUI stuff. KAction* newDirAction = actionCollection()->addAction( "create_dir" ); @@ -188,7 +192,7 @@ void DolphinPart::slotSelectionChanged(const KFileItemList& selection) } QStringList actions; - actions << "rename" << "move_to_trash" << "delete"; + actions << "rename" << "move_to_trash" << "delete" << "editMimeType"; foreach(const QString& actionName, actions) { QAction* action = actionCollection()->action(actionName); Q_ASSERT(action); @@ -399,4 +403,12 @@ void DolphinPart::slotNewDir() KonqOperations::newDir(widget(), url()); } +void DolphinPart::slotEditMimeType() +{ + const KFileItemList items = m_view->selectedItems(); + if (!items.isEmpty()) { + KonqOperations::editMimeType( items.first().mimetype(), m_view ); + } +} + #include "dolphinpart.moc" diff --git a/src/dolphinpart.h b/src/dolphinpart.h index 98e0f2f672..23a5ea653e 100644 --- a/src/dolphinpart.h +++ b/src/dolphinpart.h @@ -125,6 +125,11 @@ private Q_SLOTS: */ void slotGoTriggered(QAction* action); + /** + * Connected to the "editMimeType" action + */ + void slotEditMimeType(); + private: void createActions(); void createGoAction(const char* name, const char* iconName, diff --git a/src/dolphinpart.rc b/src/dolphinpart.rc index 26002ceaf8..325a3650fc 100644 --- a/src/dolphinpart.rc +++ b/src/dolphinpart.rc @@ -5,6 +5,7 @@ +