Freemind hits a sweet spot. In fact it hits quite a few at once.
I am a software developer and I use Freemind every day. I use it to do analysis and organize use cases and design ideas. I use it, together with TaskJuggler, to write development plans. I use it to present complex ideas to clients (PowerPoint is slick but it kinda dumb things down). And I love it.
And now, thanks to scripting and other new features, I want to use Freemind to write "active mindmaps" (I think of them as lightweight knowledge management applications).
To do this I need just a few more features which should not be too difficult to add:
1- The ability to attach different popup menus to different nodes, with menu items that can trigger scripts.
2- The ability to define filters based on the execution of scripts (scripts that return true or false).
3- (Nice to have) It would be great if there was the equivalent of an "Edit long attribute" so that script attributes could be edited without doing copy&pastes from a text editor.
Please let me know if this is already there, or can be done easily and quickly (I need them yesterday :-)
One more thing: your attention to details re. usability really shines through.
With much gratitude,
I'm working on 3-,
I am also very, very interested to know if it would be possible to define and assign popup menus to individual nodes, and assign Groovy scripts to menu items. I believe this feature would greatly enhance Freemind as a platform for creating and delivering "active mindmaps".
Right now, all nodes share the same popup menu and scripts can only be assigned to nodes via a "script" attribute.
ok, thinking a little bit more about the subject,
I believe, that you are right. A "scripts" menu (like in iTunes or gimp)
would be easy to realize and very handy.
It would be similar to plugins but far easier to start with.
Well, lets see, if I can do it soon.
PS: Thanks for the great idea.
That's great news. Thanks!
In a nutshell I think what's needed is the ability to script the creation of a popup menu and its assignation to a particular node. When a user then right-clicks on that node, the newly created menu pops up and the user can select an item. This fires the item's Groovy script that is then executed in the context of the node. Different nodes can receive their own popup menus. A node can also be assigned a "null" menu (no menu pops up).
This could be done by extending the MindMapNode interface with a "void setPopupMenu(String xmlString)" method where the xmlString parameter is a simple xml encoding of a popup menu with Groovy scripts associated to menu items.
...groovy script referencing node and controller...
There would also be a "String getPopupMenu()" method in MindMapNode as well.
Do you envision something like this?
Please keep me informed of your progress. I don't want to impose but if it's available soon I'll be able to use it on a client assignment due in three weeks. It would be impossibly cool.