<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class=""><font face="monospace" class=""><span style="white-space: pre-wrap;" class="">> Srinivas Nayak sinu.nayak2001 at <a href="http://gmail.com" class="">gmail.com</a> </span></font><span style="white-space: pre-wrap; font-family: monospace;" class="">Tue Mar 7 08:12:47 CET 2017</span></div><div class=""><font face="monospace" class=""><span style="white-space: pre-wrap;" class="">> </span></font></div><font face="monospace" class=""><span style="white-space: pre-wrap;" class="">> It seems good, to have one Store command.
> But shall we unify everything on a GUI machinery?
> Shall we imagine only one Save button on a Windows desktop, which will save
> any kind of file opened on any application, finding the actual application
> object from the active window?
<br class="Apple-interchange-newline"><br class=""></span></font><pre class="" style="background-color: rgb(255, 255, 255);"><span class="" style="white-space: pre-wrap;">It’s probably possible to create a single command for *some* operations that are shared among various tool modules, and use OOP style to implement them. For example, the 3 modules Edit, Draw and System all export the commands Open and Store, the 2 modules Edit and System both have a command Recall, the 2 modules Edit and Draw both export commands ChangeFont, ChangeColor, etc. Such commands could be placed in one module, e.g. module System, and be programmed such that they simple dispatch control one level down to the appropriate handler.</span></pre><pre class="" style="background-color: rgb(255, 255, 255);"><span class="" style="white-space: pre-wrap;"><br class=""></span></pre><pre class="" style="background-color: rgb(255, 255, 255);"><span class="" style="white-space: pre-wrap;">But apart from these common commands there will, in general, always be additional commands specific to the particular tool module such as Edit or Draw. For example, the commands Search and Locate only exist in module Edit, and the commands Macro or Restore exist only in module Draw, etc. And for these, one would still need separate modules exporting them.</span></pre><pre class="" style="background-color: rgb(255, 255, 255);"><span class="" style="white-space: pre-wrap;"><br class=""></span></pre><pre class="" style="background-color: rgb(255, 255, 255);"><span class="" style="white-space: pre-wrap;">I suppose it can be done. I don’t know what ETH’s position would be on that if the discussion were held today.</span></pre><pre class="" style="background-color: rgb(255, 255, 255);"><span class="" style="white-space: pre-wrap;"><br class=""></span></pre>

</body></html>