public void resetTabIcons() {
		ArrayList icons = new ArrayList();
		DockKey k = getDockable().getDockKey();
		if(k.isCloseEnabled() && isCloseButtonDisplayed) {
			icons.add(closeSmartIcon);
		}
		if(k.isMaximizeEnabled() && isMaximizeButtonDisplayed) {
			icons.add(maximizeSmartIcon);
		}
		if(k.isAutoHideEnabled() && isHideButtonDisplayed) {
			icons.add(hideSmartIcon);
		}
		if(k.isFloatEnabled() && isFloatButtonDisplayed) {
			icons.add(floatSmartIcon);
		}

		// this is an attempt to create the set of icons displayed for this dockable
		// currently, only "close" is managed, but other buttons could be added, as
		// the jTabebdPaneSmartIcon supports(simulates) many sub-buttons.
		if(icons.size() > 0) {
			SmartIconJButton[] iconsArray = (SmartIconJButton[]) icons.toArray(new SmartIconJButton[0]);
			smartIcon = new JTabbedPaneSmartIcon(k.getIcon(), k.getName(), iconsArray);
			smartIcon.setIconForTabbedPane(tabHeader);
			tabHeader.addTab("", smartIcon, getDockable().getComponent());
		} else {
			tabHeader.addTab(k.getName(), k.getIcon(), getDockable().getComponent());
		}

	}