diff options
-rw-r--r-- | modules/image/image.api.php | 16 | ||||
-rw-r--r-- | modules/image/image.module | 1 |
2 files changed, 17 insertions, 0 deletions
diff --git a/modules/image/image.api.php b/modules/image/image.api.php index 6f1ff37ac..298a3beb9 100644 --- a/modules/image/image.api.php +++ b/modules/image/image.api.php @@ -29,6 +29,8 @@ * $form array providing a configuration form for this image effect. * - "summary theme": (optional) The name of a theme function that will output * a summary of this image effect's configuration. + * + * @see hook_image_effect_info_alter() */ function hook_image_effect_info() { $effects = array(); @@ -45,6 +47,20 @@ function hook_image_effect_info() { } /** + * Alter the information provided in hook_image_effect_info(). + * + * @param $effects + * The array of image effects, keyed on the machine-readable effect name. + * + * @see hook_image_effect_info() + */ +function hook_image_effect_info_alter(&$effects) { + // Override the Image module's crop effect with more options. + $effect['image_crop']['effect callback'] = 'mymodule_crop_effect'; + $effect['image_crop']['form callback'] = 'mymodule_crop_form'; +} + +/** * Respond to image style updating. * * This hook enables modules to update settings that might be affected by diff --git a/modules/image/image.module b/modules/image/image.module index 8d9117175..c902dd7cf 100644 --- a/modules/image/image.module +++ b/modules/image/image.module @@ -912,6 +912,7 @@ function image_effect_definitions() { } } uasort($effects, '_image_effect_definitions_sort'); + drupal_alter('image_effect_info', $effects); cache_set("image_effects:$langcode", $effects); } } |