package org.nlamah.QL.View.Controllers;
import java.awt.Dimension;
import org.nlamah.QBase.Constants.UIConstants;
import org.nlamah.QL.Model.Form.ConditionalBlock;
public class ConditionalBlockIfElseViewController extends ConditionalBlockViewController
{
public ConditionalBlockIfElseViewController(ConditionalBlock conditionalBlock)
{
super(conditionalBlock);
}
@Override
public int evaluateViewHeight()
{
makeAllViewsInvisible();
if (ifThenBlockViewController.viewShouldBeVisible())
{
ifThenBlockView().setVisible(true);
int neededHeight = ifThenBlockViewController.evaluateViewHeight();
adjustViewHeightToNeededHeight(neededHeight);
return neededHeight;
}
else
{
elseThenBlockView().setVisible(true);
int neededHeight = elseThenBlockViewController.evaluateViewHeight();
adjustViewHeightToNeededHeight(neededHeight);
return neededHeight;
}
}
private void makeAllViewsInvisible()
{
ifThenBlockView().setVisible(false);
elseThenBlockView().setVisible(false);
}
private void adjustViewHeightToNeededHeight(int neededHeight)
{
view.setPreferredSize(new Dimension(UIConstants.contentWidth(), neededHeight));
}
}