79 lines
2.1 KiB
Java
79 lines
2.1 KiB
Java
package org.gcube.portlets.user.td.toolboxwidget.client;
|
|
|
|
import org.gcube.portlets.user.td.informationwidget.client.TabularResourceProperties;
|
|
import org.gcube.portlets.user.td.widgetcommonevent.client.event.UIStateEvent;
|
|
|
|
import com.allen_sauer.gwt.log.client.Log;
|
|
import com.google.gwt.user.client.ui.Widget;
|
|
import com.google.web.bindery.event.shared.EventBus;
|
|
import com.sencha.gxt.widget.core.client.TabItemConfig;
|
|
import com.sencha.gxt.widget.core.client.TabPanel;
|
|
import com.sencha.gxt.widget.core.client.event.BeforeCloseEvent;
|
|
import com.sencha.gxt.widget.core.client.event.BeforeCloseEvent.BeforeCloseHandler;
|
|
|
|
public class ToolBox extends TabPanel {
|
|
|
|
protected EventBus eventBus;
|
|
protected TabularResourceProperties trProperties;
|
|
protected ToolBoxPanel toolBoxPanel;
|
|
|
|
public ToolBox(String name, EventBus eventBus, ToolBoxPanel toolBoxPanel) {
|
|
super();
|
|
Log.debug("Create ToolBox");
|
|
this.eventBus = eventBus;
|
|
this.toolBoxPanel = toolBoxPanel;
|
|
setId(name);
|
|
|
|
setAnimScroll(true);
|
|
setTabScroll(true);
|
|
setCloseContextMenu(true);
|
|
// setResizeTabs(true);
|
|
|
|
}
|
|
|
|
public void closeTabs() {
|
|
Log.debug("Close ToolBox Tabs");
|
|
for (int i = 0; i < getTabIndex(); i++) {
|
|
remove(i);
|
|
}
|
|
|
|
}
|
|
|
|
public void updateTabs(){
|
|
Log.debug("Update ToolBox Tabs");
|
|
if(trProperties!=null){
|
|
trProperties.update();
|
|
}
|
|
}
|
|
|
|
public void openTabs() {
|
|
Log.debug("Open ToolBox Tabs");
|
|
TabItemConfig propertiesItemConf = new TabItemConfig("Properties", true);
|
|
|
|
trProperties = new TabularResourceProperties("TRProperties", eventBus);
|
|
trProperties.setHeaderVisible(false);
|
|
add(trProperties, propertiesItemConf);
|
|
addBeforeCloseHandler(new BeforeCloseHandler<Widget>() {
|
|
|
|
@Override
|
|
public void onBeforeClose(BeforeCloseEvent<Widget> event) {
|
|
if (getWidgetCount() == 1) {
|
|
toolBoxPanel.closePanelOnly();
|
|
remove(trProperties);
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
/*
|
|
* Label taskLabel = new Label("Task Properties");
|
|
* taskLabel.addStyleName("pad-text"); functionalityTab .add(taskLabel,
|
|
* new TabItemConfig("Task", true));
|
|
*/
|
|
setActiveWidget(getWidget(0));
|
|
|
|
}
|
|
|
|
}
|