# Can't get my extension's icon to appear

**URL:** <https://discourse.slicer.org/t/cant-get-my-extensions-icon-to-appear/33343>\
**Category:** Development\
**Created:** [December 11, 2023, 6:26pm UTC](https://discourse.slicer.org/t/cant-get-my-extensions-icon-to-appear/33343 "2023-12-11T18:26:16Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Justin\_Kirby](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/justin_kirby/32/66502_2.png) [@Justin\_Kirby](https://discourse.slicer.org/u/Justin_Kirby)\
**Post date:** [December 11, 2023, 6:26pm UTC](https://discourse.slicer.org/t/cant-get-my-extensions-icon-to-appear/33343/1 "2023-12-11T18:26:16Z")

</div>

I’ve tried editing the following files to specify the location of the icon for TCIABrowser, but Slicer still shows the default puzzle icon in the menus:

- [https://github.com/Slicer/ExtensionsIndex/blob/main/TCIABrowser.s4ext](https://github.com/Slicer/ExtensionsIndex/blob/main/TCIABrowser.s4ext)
- [https://github.com/QIICR/TCIABrowser/blob/master/TCIABrowser/CMakeLists.txt](https://github.com/QIICR/TCIABrowser/blob/master/TCIABrowser/CMakeLists.txt)
- [https://github.com/QIICR/TCIABrowser/blob/master/CMakeLists.txt](https://github.com/QIICR/TCIABrowser/blob/master/CMakeLists.txt)

Interestingly the icon and screenshots do appear properly in the Extension Manager. Any suggestions?

---

<div class="post-metadata">

**Author:** ![jcfr](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jcfr/32/17825_2.png) [@jcfr](https://discourse.slicer.org/u/jcfr)\
**Post date:** [December 11, 2023, 7:18pm UTC](https://discourse.slicer.org/t/cant-get-my-extensions-icon-to-appear/33343/2 "2023-12-11T19:18:17Z")

</div>

Looking at both the `Stable` and `Preview` versions of the uploaded extension, we can can confirm the icon is showing up as expected:

| Stable | Preview |
| --- | --- |
| ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/4/1/4156126f06b92e7938a988b6bd11b5239a3fe947.png) | ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/1/1/115f2b25948bd7245fd0f0d6539e13e263d11bfc.png) |

---

<div class="post-metadata">

**Author:** ![Justin\_Kirby](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/justin_kirby/32/66502_2.png) [@Justin\_Kirby](https://discourse.slicer.org/u/Justin_Kirby)\
**Post date:** [December 11, 2023, 8:34pm UTC](https://discourse.slicer.org/t/cant-get-my-extensions-icon-to-appear/33343/3 "2023-12-11T20:34:10Z")

</div>

Yes, I also see it working in the Extension Manager. The problem is inside the main GUI of Slicer if you navigate to it in the Module menu:

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/f/c/fcda07c1edc3b1e412f8cb0f8306086da4c75e75.png)

---

<div class="post-metadata">

**Author:** ![pieper](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/pieper/32/8_2.png) [@pieper](https://discourse.slicer.org/u/pieper)\
**Post date:** [December 11, 2023, 8:36pm UTC](https://discourse.slicer.org/t/cant-get-my-extensions-icon-to-appear/33343/4 "2023-12-11T20:36:56Z")

</div>

Hi @Justin_Kirby -

You need to include an icon in your repo and refer to it from the cmakelists for your module. Like this:

> <https://github.com/SlicerMorph/SlicerMorph/blob/master/Animator/CMakeLists.txt#L11>

Pointing to this:

> <https://github.com/SlicerMorph/SlicerMorph/blob/master/Animator/Resources/Icons/Animator.png>

---

<div class="post-metadata">

**Author:** ![jcfr](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jcfr/32/17825_2.png) [@jcfr](https://discourse.slicer.org/u/jcfr)\
**Post date:** [December 11, 2023, 8:48pm UTC](https://discourse.slicer.org/t/cant-get-my-extensions-icon-to-appear/33343/5 "2023-12-11T20:48:16Z")

</div>

@Justin_Kirby It turns that that the call to the `ScriptedLoadableModule` base class was missing.

See [BUG: Ensure module icon is set by calling ScriptedLoadableModule construtor by jcfr · Pull Request #65 · QIICR/TCIABrowser · GitHub](https://github.com/QIICR/TCIABrowser/pull/65)

---

<div class="post-metadata">

**Author:** ![jcfr](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jcfr/32/17825_2.png) [@jcfr](https://discourse.slicer.org/u/jcfr)\
**Post date:** [December 11, 2023, 9:22pm UTC](https://discourse.slicer.org/t/cant-get-my-extensions-icon-to-appear/33343/6 "2023-12-11T21:22:14Z")

</div>

And this one is further simplifying by removing functionality provided by the `ScriptedLoadableModuleWidget` base class.

See [Fix integration with scripted loadable module widget base class by jcfr · Pull Request #67 · QIICR/TCIABrowser · GitHub](https://github.com/QIICR/TCIABrowser/pull/67)

---

<div class="post-metadata">

**Author:** ![Justin\_Kirby](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/justin_kirby/32/66502_2.png) [@Justin\_Kirby](https://discourse.slicer.org/u/Justin_Kirby)\
**Post date:** [December 18, 2023, 1:57pm UTC](https://discourse.slicer.org/t/cant-get-my-extensions-icon-to-appear/33343/7 "2023-12-18T13:57:19Z")

</div>

Thanks for your help! It’s working properly in 5.6.1 now.
