Skip to main content
Known Participant
August 10, 2023
Answered

IControlView with runtime .idrc and signing/notarization

  • August 10, 2023
  • 1 reply
  • 438 views

Hi,

 

For our plugins we dynamically update some of the .idrc files (essentially png files) in our "idrc_PNGA" folder of our plugins depending on the environment. This folder, however is nested inside the plugin itself. Therefore, updating it dynamically, breaks the signing and Adobe InDesign flags the plugin as "damaged".

 

 

So, I have a few questions:

-Is there a way I can point IControlView to use a path instead of resourceid (pIconView->SetRsrcID)?

-Is it possible to overwrite the plugin idrc_PNGA .idrc files without breaking signing?

-Any other alternative?

 

 

This topic has been closed for replies.
Correct answer Dirk Becker

IControlView is an interface, and you can run your own implementation. E.g. SelectionProxyView does that.

There are helper classes, e.g. PNGArt and SVGArt (if you care about scalable UI) also a higher level IconHandler, but those still refer to resources.

If you want to bypass those resources e.g. using a download, you can draw any bitmap via AGMImageRecord. I load mine via IImportPreview::Create24bitRGBPreview.

1 reply

Dirk BeckerCorrect answer
Legend
August 10, 2023

IControlView is an interface, and you can run your own implementation. E.g. SelectionProxyView does that.

There are helper classes, e.g. PNGArt and SVGArt (if you care about scalable UI) also a higher level IconHandler, but those still refer to resources.

If you want to bypass those resources e.g. using a download, you can draw any bitmap via AGMImageRecord. I load mine via IImportPreview::Create24bitRGBPreview.

asaxenaAuthor
Known Participant
August 10, 2023

That is really interesting. Yet, I am unable to understand clearly how to connect IControlView with IImportPreview::Create23bitRGBPreview. It will be really helpful if you could share a high level approach that you are alluding to.

Inspiring
August 10, 2023

Refer PanelTreeView Sample for Create23bitRGBPreview -

 

File - PnlTrvCustomView.cpp - function - PnlTrvCustomView::createPreview.