public SubMenu(Skin skin) {
		this.skin = skin;
		super.addActor(table = new Table(skin));
		table.top().left();
		table.defaults().left().pad(5);
		addListener(new InputListener() {
			@Override
			public boolean touchDown (InputEvent event, float x, float y, int pointer, int button) {
				if (event.getTarget().isDescendantOf(SubMenu.this)) {
					if (event.getTarget() != SubMenu.this) {
						MenuItem item = (MenuItem)event.getTarget().getParent();
						final SubMenu menu = (SubMenu)item.getSubMenu();
						if (menu != null) {
							if (menu.getParent() != null) return true;
							menu.show(getStage());
							return true;
						}	
					}
				}
				hide();
				return false;
			}
		});
	}