diff --git a/includes/insert.inc b/includes/insert.inc
index 37ceefd..1694b52 100644
--- a/includes/insert.inc
+++ b/includes/insert.inc
@@ -11,7 +11,8 @@
 function insert_insert_styles() {
   $insert_styles = array();
   $insert_styles['auto'] = array('label' => t('Automatic'), 'weight' => -20);
-  $insert_styles['link'] = array('label' => t('Link to file'), 'weight' => -11);
+  $insert_styles['link'] = array('label' => t('Link to file'), 'weight' => -12);
+  $insert_styles['icon_link'] = array('label' => t('Link to file (with icon)'), 'weight' => -11);
   $insert_styles['image'] = array('label' => t('Original image'), 'weight' => -10);
   return $insert_styles;
 }
@@ -32,6 +33,9 @@ function insert_insert_content($item, $style, $widget) {
   if ($style_name == 'image') {
     return theme('insert_image', $item, $widget);
   }
+  if ($style_name == 'icon_link') {
+    return theme('insert_icon_link', $item, $widget);
+  }
   else {
     return theme('insert_link', $item, $widget);
   }
@@ -56,3 +60,14 @@ function template_preprocess_insert_link(&$vars) {
   $vars['class'] = !empty($vars['widget']['insert_class']) ? $vars['widget']['insert_class'] : '';
   $vars['name'] = $vars['item']['filename'];
 }
+
+/**
+ * Preprocess variables for the insert-icon-link.tpl.php file.
+ */
+function template_preprocess_insert_icon_link(&$vars) {
+  $vars['url'] = insert_create_url($vars['item']['filepath']);
+  $vars['class'] = !empty($vars['widget']['insert_class']) ? $vars['widget']['insert_class'] : '';
+  $vars['name'] = $vars['item']['filename'];
+  $vars['type'] = $vars['item']['filemime'] .'; length='. $vars['item']['filesize'];
+  $vars['icon'] = theme('filefield_icon', $vars['item']);
+}
diff --git a/insert.module b/insert.module
index fda57fb..79e4ec5 100644
--- a/insert.module
+++ b/insert.module
@@ -68,6 +68,11 @@ function insert_theme() {
       'template' => 'templates/insert-link',
       'file' => 'includes/insert.inc',
     ),
+    'insert_icon_link' => array(
+      'arguments' => array('item' => NULL, 'widget' => NULL),
+      'template' => 'templates/insert-icon-link',
+      'file' => 'includes/insert.inc',
+    ),
 
     // Theme functions in includes/imagecache.inc.
     'imagecache_insert_image' => array(
