<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml; charset=utf-8">
</head>
<body>
<div style="font-family:sans-serif"><div style="white-space:normal">
<p dir="auto">On 14 Jul 2016, at 21:33, Jacob Carlborg wrote:</p>

<p dir="auto"></p></div>
<div style="white-space:pre-wrap"><blockquote style="border-left:2px solid #777; color:#777; margin:0 0 5px; padding-left:5px"><div dir="auto">1. Make a separate call to the dialog command. This is not documented, at least not in the documentation for the popup Ruby method.
</div></blockquote></div>
<div style="white-space:normal">

<p dir="auto">Making a 1:1 copy of the DIALOG API in ruby has never been my desire, in fact, I personally prefer to use DIALOG directly, even from ruby, as DIALOG itself provides a stable and straightforward API.</p>

<p dir="auto">The ruby wrappers was born back when the first version of the Dialog plug-in was written, which had a more complex API, so back then, there was justification, but not really with v2 of the Dialog plug-in.</p>

<p dir="auto">Unfortunately once things have been added to the support library, it is extremely difficult to remove, because it is effectively public API.</p>

<p dir="auto"></p></div>
<div style="white-space:pre-wrap"><blockquote style="border-left:2px solid #777; color:#777; margin:0 0 5px; padding-left:5px"><div dir="auto">2. Setup the mapping of a symbolic name to a path
</div></blockquote></div>
<div style="white-space:normal">

<p dir="auto">Don’t you need some sort of mapping? Or does your completion code deal in absolute paths to images when it classifies the candidates for the completion menu?</p>

<p dir="auto"></p></div>
<div style="white-space:pre-wrap"><blockquote style="border-left:2px solid #777; color:#777; margin:0 0 5px; padding-left:5px"><div dir="auto">3. There also seems to be a risk of having conflicting names between different bundles and possible the application itself
</div></blockquote></div>
<div style="white-space:normal">

<p dir="auto">This was intended, similar to how we provide Warning, Note, Error, etc. for the gutter, it would not be unlikely to provide constant, variable, method, classMethod, etc. as standard images for the pop-up.</p>

<p dir="auto"></p></div>
<div style="white-space:pre-wrap"><blockquote style="border-left:2px solid #777; color:#777; margin:0 0 5px; padding-left:5px"><div dir="auto">When it comes to efficiency the register command already caches the NSImage objects […]
</div></blockquote></div>
<div style="white-space:normal">

<p dir="auto">Yes, the register command adds the image to the cache using their symbolic names, and the pop-up menu definition uses the symbolic names to reference the images.</p>

<p dir="auto">But this indirection is what you are arguing for removing, so I don’t get this part.</p>

<p dir="auto"></p></div>
<div style="white-space:pre-wrap"><blockquote style="border-left:2px solid #777; color:#777; margin:0 0 5px; padding-left:5px"><div dir="auto">It would also make the dialog command simpler because the register command could be removed.
</div></blockquote></div>
<div style="white-space:normal">

<p dir="auto">The register command was also intended to be usable before loading nibs (with images).</p>

<p dir="auto"></p></div>
<div style="white-space:pre-wrap"><blockquote style="border-left:2px solid #777; color:#777; margin:0 0 5px; padding-left:5px"><div dir="auto">(sorry for the rant).
</div></blockquote></div>
<div style="white-space:normal">

<p dir="auto">As I said: <em>the command could be updated to automatically “register” any image provided as a full path (possibly with its hash value to facilitate re-use of images)</em> so while you felt it necessary to rant is beyond me.</p>
</div>
</div>
</body>
</html>