Bug 36446 [Contributions] widgets: Associating Actions with Buttons
Actions can be associated with Menu items , and tool bar items using MenuManager and ToolBarManager but there is not way to associate Action with a regular button and obtaining a reference to that button the closest thing is creating an ActionContributionItem with the desired action in its constructor , then filling the parent composite with ActionContributionItem.fill(Control parent) this creats the button , but it doesn't return a reference to that button , so for example i can't give it any layout data i suggest the ActionContributionItem.fill(Control parent) returns the created widget
bundles/org.eclipse.jface/src/org/eclipse/jface/action/ActionContributionItem.java
ResourceManager parentResourceManager = JFaceResources.getResources();
		if (widget instanceof ToolItem) {
			if (USE_COLOR_ICONS) {
				ImageDescriptor image = action.getHoverImageDescriptor();
				if (image == null) {
					image = action.getImageDescriptor();
				}
				ImageDescriptor disabledImage = action
						.getDisabledImageDescriptor();
				
				if (image == null && forceImage) {
					image = ImageDescriptor.getMissingImageDescriptor();
				}
				LocalResourceManager localManager = new LocalResourceManager(
						parentResourceManager);
				
				
				((ToolItem) widget)
						.setDisabledImage(disabledImage == null ? null
								: localManager
										.createImageWithDefault(disabledImage));
				((ToolItem) widget).setImage(image == null ? null
						: localManager.createImageWithDefault(image));
				disposeOldImages();
				imageManager = localManager;
				return image != null;
			}
			ImageDescriptor image = action.getImageDescriptor();
			ImageDescriptor hoverImage = action.getHoverImageDescriptor();
			ImageDescriptor disabledImage = action.getDisabledImageDescriptor();