package surface;

import java.awt.Component;

import javax.swing.BoxLayout;
import javax.swing.JPanel;
import javax.swing.JSplitPane;

import background.Controller;


/**
 *
 * @author  solusa
 */
public class YggdrasilEditor extends JPanel {
	
    private static final long serialVersionUID = 1L;
    
    private static final String TITLE_YGGDRASIL_LEFT = "Primary selection:";
    private static final String TITLE_YGGDRASIL_RIGHT = "Secondary selection:";

    //private final JPanel mainPanel = new JPanel();
    private final JPanel browserPanel = new JPanel();
    private final JSplitPane jsplit_browser = new JSplitPane();
    private final SelectorTree jtree_left;
    private final SelectorTree jtree_right;
    

    

    private YggdrasilEditor(final Controller controller) {

        // Browser Panel:
        add(browserPanel);
        browserPanel.setLayout(new BoxLayout(browserPanel, BoxLayout.Y_AXIS));
        browserPanel.add(jsplit_browser);
        
        // Yggdrasil Views:
        jtree_left = SelectorTree.createYggdrasilSelector(TITLE_YGGDRASIL_LEFT, controller.getYggdrasil().getRoot(), controller, true);
        jtree_right = SelectorTree.createYggdrasilSelector(TITLE_YGGDRASIL_RIGHT, controller.getYggdrasil().getRoot(), controller, false);


        // Split Panel:
        jsplit_browser.setAlignmentX(Component.CENTER_ALIGNMENT);
        jsplit_browser.setAlignmentY(Component.CENTER_ALIGNMENT);
        jsplit_browser.setDividerSize(5);
        jsplit_browser.setResizeWeight(0.5);
        jsplit_browser.setLeftComponent(jtree_left);
        jsplit_browser.setRightComponent(jtree_right);
    }
    
    public static YggdrasilEditor createYggdrasilEditor(final Controller controller){
        YggdrasilEditor yggdrasilEditor = new YggdrasilEditor(controller);
        
        yggdrasilEditor.setLayout(new BoxLayout(yggdrasilEditor, BoxLayout.X_AXIS));


    }
    

    public JPanel getEditorPanel() {
        return mainPanel;
    }
    
}
