Bug 166015 Refactor designer actions to eclipse command framework
Eclipse command framework provide a more explicit way to manage UI actions contributions, we can take it's advantage to make our actions code more clean and maintainable.
UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/editors/schematic/actions/MergeAction.java
* 
	 * @see org.eclipse.gef.ui.actions.WorkbenchPartAction#calculateEnabled()
	 */
	protected boolean calculateEnabled( )
	{
		if ( getRowHandles( ).isEmpty( ) && getColumnHandles( ).isEmpty( ) )
		{
			return getTableEditPart( ) != null
					&& getTableEditPart( ).canMerge( );
		}
		return false;
	}
	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.jface.action.IAction#run()
	 */
	public void run( )
	{
		if ( Policy.TRACING_ACTIONS )
		{
			System.out.println( "Merge action >> Run ..." ); 
		}
		TableEditPart part = getTableEditPart( );
		if ( part != null && part.canMerge( ) )
		{
			part.merge( );
		}
	}
}