package org.nlamah.QLS.View.Controllers;
import java.util.ArrayList;
import java.util.List;
import org.nlamah.QL.View.Form.NavigationView;
import org.nlamah.QLS.Model.Abstract.StylesheetBlock;
import org.nlamah.QLS.Model.StylesheetBlock.Page;
public class NavigationViewController extends StylesheetViewController
{
private List<NavigationPageViewController> navigationPageViewControllers;
private RootFormViewControllerStyled rootFormViewController;
public NavigationViewController(List<Page> pages, RootFormViewControllerStyled rootFormViewController)
{
this.rootFormViewController = rootFormViewController;
navigationPageViewControllers = new ArrayList<NavigationPageViewController>();
for (Page page : pages)
{
navigationPageViewControllers.add(new NavigationPageViewController(page, this));
}
view = new NavigationView();
for (NavigationPageViewController navigationPageViewController : navigationPageViewControllers)
{
view.add(navigationPageViewController.view);
}
}
@Override
public int neededViewHeight()
{
int neededHeight = 0;
for (NavigationPageViewController navigationPageViewController : navigationPageViewControllers)
{
neededHeight += navigationPageViewController.neededViewHeight();
}
return neededHeight;
}
public void navigationChangeRequested(StylesheetBlock object)
{
rootFormViewController.show(object);
}
}