|
|
A great release is to come. We have many exciting new features: WYSIWYG-Editing for nodes and notes, scripting, filter, attributes and many more.
But all these new features still need a lot of testing and documentation. To start this, please have a look at the newest version here and tell us your opinions.
Use this wiki page for documenting the new features.
But: Don't use this version for productive maps. It is not stable enough!
- Further warning: If you create a map with Attributes, it will open as a "New Map" with no data in version 0.8. Your data is not lost, just not readable by 0.8.
Attributes
Quick Attribute creation
- select node
- Edit Attribute: Alt-F9 or, Rt-click>Edit attributes
- type in an Attribute name
- then add a value if desired
- edit with the Attribute Manager later if necessary
Using Attribute Manager
- open the attribute manager with attribute icon on toolbar or, Tools>Attribute Manager
Create Attribute
- Click the "Edit" button in the "All Attributes" row
- Type in your Attribute name, then press add
- Repeat to add multiple attributes
- Press "Close" to close the Attribute Edit dialog
- NOTE: This is also the place to delete Attributes
Create Attribute values
- After adding Attributes, you should see them listed under the "Attributes" column heading
- Click on the "Edit" button in the row of your new Attribute and add the values
- type the value name, then press "Add"
- It's a good idea to add a blank value to the list. It helps when assigning attributes later
- Close the Attribute value dialog by pressing the "Close button"
- NOTE: this is the place to delete Attribute values
Every Attribute can have multiple values
- eg. I use an Attribute called "Staff" and the values are the staff person's name
- eg. I use an Attribute called "Priority" and the values are #'s 1 to 5
Assign Attributes to nodes
assigning only a few nodes
- Choose the node, press Alt-F9 or, Rt-Click the node and choose "Edit Attributes"
assigning many nodes
- got to: Tools>"Assign attributes..."
- choose "Selected Nodes" or "Visible Nodes"
- from the drop down list, choose the Attribute you want to assign. (Here it helps when there's a blank value. You can assign an Attribute to all nodes needing it, and then set the value later, on a node by node basis)
- press the "Add" button to assign the Attribute to the node/s
- add more than one attribute to a node if necessary
- delete attributes from multiple nodes with this dialog
Viewing/Hiding Attributes
to see an icon on nodes with attributes
- Tools>Preferences>Appearance>Show icon for attributes
show all attributes
- Alt-s or, View>Attributes>Show all attributes
show no attributes
- Alt-h or, View>Attributes>Show no attributes
show selected attributes
- in the Attribute Manager, select desired Attributes in the "Selected Visible" column
- then, View>Attributes>Show selected Attributes
optimize the width of the Attribute/value table
- Rt-click on the Attribute and choose optimal width
Filter
Create filters to view and print the data more effectively
click on the little funnel to the left of the zoom size toggles on and off
default values are useful
- no filtering
- Currently Selected Nodes
create filter for one Attribute
- to the right of the filter status, click "Edit"
- in the drop down menu at the top right, select your attribute
- the expression drop changes to "exists"
- press "Add", then "OK" at the bottom
- all nodes with the selected Attribute will be shown
create filter for one Attribute and its value
- after step two above select the second drop down where "exists" is showing
- choose "Is equal to". Your values should now be available in the third drop down
- press "Add", then OK
use multiple filters at once
create two filter sets by the method above
select the filter sets you want
- Shift-click for multiple, continuous sets
- Ctrl-click for non-contiguous selection
press the "and" button on the right => a new set is created which combines your selected sets
filter on an icon
- add an icon to a node by highlighting the node, click on the icon on the left or Rt-click>Icons
- in the filtering "edit" dialog, choose "Icon" in the drop-down list at the top left, the second drop-down grays out, and the third contains the list of currently used icons
- click "Add"
user feedback
Write your feedback on use of filters here.
- when in filtering mode, a node is selected. Then when the filter is removed, the selected node remains selected, yet not in center of screen, a search through the map is required to locate it again. Could the selected node be centered after removing the filter?--Neanderlander 08:16, 11 Sep 2006 (PDT)
- I find that it freezes up a lot when using folding and unfolding while applying filters. It is, however, a really powerful feature. To complete its power would it be possible to have a way to copy only selected or filtered nodes? Sometimes you want to select these nodes and put them in another application, but when I filter, select all and then copy-paste, I get lots of other nodes included.
WYSIWYG-Editing for nodes and notes
To Do
Scripting via Groovy
Groovy scripts may be attached to individual nodes in the map. When "evaluate" is selected via the menu or keypress (Alt-F8), all nodes in the map are searched (depth-first) for one or more attributes named "script". If such an attribute is found, the value of the attached attribute is passed to the Groovy engine to execute.
Only nodes with the "script" attribute are evaluated. However, there is nothing preventing a script on one node from acting on other nodes via normal operations (e.g. node.getChildren or similar) as far as I can tell from the code.
Assignment vs. Operation
If the value of the script attribute starts with the equals sign ("="), then the node text will be replaced by the RESULT of the script evaluation. Be careful not to overwrite your nodes! See the example for using the "node.getText()" in an assignment script.
If the value of the script attribute does not begin with the equals sign, then the script will run and may affect the map, but the expression result is not assigned to the node text.
Available Operations
When the Groovy binding is created, two variables are set:
- "c" is set to the MindMapController
- "node" is set to the MindMapNode being evaluated
You will have to examine the FreeMind source code for operations on the interfaces. See the examples for a few operations such as setting the node text, node color and background color.
Examples
I have only played with the engine for five minutes, and spent about the same amount of time on the Groovy home page. The following examples work for me:
Prepend the node text with an integer representing the node depth. Note that the script starts with '=' so the result is assigned back to the node text.
=node.getNodeLevel() + " " + node.getText()
Set the text color of a node:
node.setColor(java.awt.Color.RED)
Set the background color of a node:
node.setBackgroundColor(java.awt.Color.BLUE)
About Groovy
For people unfamiliar with Groovy scripting, it's home page, an introduction, a review on slashdot.
How to get started
- Create an attribute for a node. The attribute must be named "script"
- Create the Groovy script and set as the value of the attribute
- Press Alt-F8 or select "Evaluate" from the Tools menu.
The rest new features
To Do
|