<div class="gmail_quote">On Sun, Jun 12, 2011 at 11:13 AM, Dmitry Kazakov <span dir="ltr">&lt;<a href="mailto:dimula73@gmail.com">dimula73@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi!<br><br>As we discussed at the last Krita sprint, Krita needs some common system to manage keyboard shortcuts and modifiers. The problem is, different keyboard keys should switch tools temporarily and restore the tool when the key is released. E.g. we need canvas panning, rotation, color picking, brush adjustments.<br>

<br>I was thinking about the design of this system. And i think it is better to do it Calligra-wide. That&#39;s why I&#39;ve published its design proposal to Calligra wiki:<br><br><a href="http://community.kde.org/Calligra/Libs/Interactional_Tools" target="_blank">http://community.kde.org/Calligra/Libs/Interactional_Tools</a><br>

<br>Theoretically, all the other tools may be ported to it in the future, but this is not mandatory as there are wrappers for old tools left.<br><br>So i would really like to hear your opinion about this system. Especially, about naming of the classes =)<br>
</blockquote></div><br>This would be a major change and basically turns the whole tool system upside down. I would prefer the changes to be much less invasive and I think that is possible.<br><br>I think the two level with the tool at global level and strategies at local level should stay. Tools need to have control about the strategy that is activate e.g. look at the default tool, the next strategy depends on the content and state of the tool. That&#39;s why it&#39;s not possible to move that to a higher level as that manager can only decide based on shortcuts and gestures.<br>
<br>One global manager should be enough for that. Additionally tools could block global switches while working.<br>