blob: b11daf087a3f16da41186f308f3bcb56d888da54 [file] [log] [blame]
package autotest.tko;
import com.google.gwt.user.client.Event;
import autotest.common.ui.TabView;
import java.util.Map;
abstract class ConditionTabView extends TabView {
protected static CommonPanel commonPanel = CommonPanel.getPanel();
private boolean needsRefresh;
protected void checkForHistoryChanges(Map<String, String> newParameters) {
if (!getHistoryArguments().equals(newParameters)) {
needsRefresh = true;
}
}
protected abstract boolean hasFirstQueryOccurred();
@Override
public void display() {
ensureInitialized();
commonPanel.setConditionVisible(true);
if (needsRefresh) {
commonPanel.updateStateFromView();
refresh();
needsRefresh = false;
}
visible = true;
}
@Override
public void handleHistoryArguments(Map<String, String> arguments) {
if (!hasFirstQueryOccurred()) {
needsRefresh = true;
}
commonPanel.fillDefaultHistoryValues(arguments);
fillDefaultHistoryValues(arguments);
checkForHistoryChanges(arguments);
commonPanel.handleHistoryArguments(arguments);
}
protected abstract void fillDefaultHistoryValues(Map<String, String> arguments);
static boolean isSelectEvent(Event event) {
return event.getShiftKey();
}
protected abstract void doQuery();
protected void doQueryWithCommonPanelCheck() {
if (!commonPanel.isViewReadyForQuery()) {
return;
}
doQuery();
}
}