Three state of checkbox!

Now the satae of checkbox only has :checked,uncheckd,

we wish you can change it to three state :checked,uncheckd,PartiallyChecked

In that mean ,one node has more childs ,
when the all childs ane checked,then the parent node's state is checked.
when not all the childs ane checked,then the parent node's state is PartiallyChecked
when all the childs ane unchecked,then the parent node's state is unChecked