All'interno di un'estensione della GUI di tridion, come aggiungere un'icona al menu del contesto?

StackOverflow https://stackoverflow.com/questions/9466924

  •  13-11-2019
  •  | 
  •  

Domanda

Come posso aggiungere un'icona al mio oggetto Menu contesto di estensione GUI Tridion 2011?

È nel tema o nella configurazione di estensione della GUI?

È la taglia 16px?

È stato utile?

Soluzione

Sì, l'icona è 16 x 16.

L'ho sempre fatto usando CSS, spero che questa spiegazione abbia senso:

1) Nel tuo editor.config, si specifica il file CSS e altre risorse di cui hai bisogno

<cfg:groups>
  <cfg:group name="PowerTools.Resources.Base" merge="always">
    <cfg:fileset>
        <cfg:file type="style">/PowerTools/Client/Shared/Theme/styles.css</cfg:file>

2) Quando si configura il menu di contesto, è disponibile l'attributo ID in contestoMenuiteem (mostrato di seguito come PT_PagePublisher)

<ext:contextmenus>
  <ext:add>
    <ext:extension name="PowerToolsContextMenu" assignid="PowerToolsContextMenu" insertbefore="cm_refresh">
      <ext:menudeclaration externaldefinition="">
        <cmenu:ContextMenuItem id="PowerToolsMenuGroup" name="Power Tools">
          <cmenu:ContextMenuItem id="PT_PagePublisher" name="Page Publisher" command="PT_PagePublisher"/>

3) Nel tuo file CSS avrai qualcosa di simile:

.PT_PagePublisher .image {background-image:url({ThemePath}/Icons/pagepublisher_16.png);}

Guarda come il nome della classe CSS (PT_PagePublisher) si è tracciata all'ID nel nodo contestoMenuiteem.

Spero che questo aiuti!

Altri suggerimenti

Usi il tema CSS. Ho quanto segue nel CSS per un'estensione nella mia immagine Dev:

.tridion .contextmenu #TweetThis .image
{
    background-image:url({ThemePath}/images/icons/twitter-icon16x16.png);
}

TweetThis è la mia voce di menu contestuale, come deifiniti nella configurazione di estensione.

Nel caso in cui si desideri riutilizzare un'immagine dell'attuale CME (Content Manager Explorer), è possibile utilizzare quanto segue:

#PT_PagePublisher.item .image
{
    background-image: url({ThemePath['CME']}/Sprites/cme_5_v6.1.0.55920.0_.png);
    background-position: 0px -480px;
    height: 16px;
    width: 16px;
}

Questo esempio mostra l'icona di pubblicazione da un'installazione SP1 del 2011. Quindi puoi usare {ThemePath ['EDITORNAME']} Per accedere al percorso del tema di qualsiasi editor che è in realtà configurato.

Inoltre, in alcuni casi ho scoperto che le mie immagini non si caricherebbero né sulla barra degli strumenti a nastro né sul menu contestuale, che sembrava essere un problema di autorizzazione nella directory virtuale degli editori in IIS.

L'ho risolto aggiungendo un file Web.config alla directory del mio tema (root) che consentirà l'accesso a tutti gli utenti per i file del tema (CSS e immagini).

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.web>
        <!-- allow all users access to theme files -->
        <authorization>
            <allow users="?" />
        </authorization>
    </system.web>
</configuration>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top