/**
 * This class represents the control panel of the Gigapan Explorer application. 
 * <br><br>
 * <a href="mailto:ehudsons@andrew.cmu.edu">Ellen Hudson-Snyder</a>, 
 * <a href="mailto:evedar@andrew.cmu.edu">Elvin Vedar</a>,
 * <a href="mailto:cbalz@andrew.cmu.edu">Christopher M. Balz</a>.
 * <br><br>CVS Version Info:<br>
 *  $Id: ControlPanel.js,v 1.10 2005/11/08 08:08:55 evedar Exp $  
 * <br><br>
 * @inherits-from <code>AbstractWidget</code>
 * @object-prop <code>Widget</code>  <code>wgtNavigationPad</code>  The application's navigation pad.
 * @object-prop <code>Widget</code>  <code>wgtZoomPad</code>  The application's zoom pad.
 * @object-prop <code>Widget</code>  <code>wgtLayerPad</code>  The application's layer pad.
 * @author Team GigaToasted (Fall-2005-CMU-NASA/Google-Practicum Subteam) 
 * @version 1.0
 * <br><br>
 */


// Set the prototype chain for efficient inheritance:
ControlPanel.prototype = new AbstractWidget();


/**
 * Create a <code>ControlPanel</code> object.
 * @param objParent object  The parent, if any, of this object.
 */
function ControlPanel(objParent) {
    this.superC("controlPanel", objParent); // Complete the inheritance.    
    this.getHtml = ControlPanel_getHtml;

    this.wgtNavigationPad = new NavigationPad(this);
    this.wgtZoomPad = new ZoomPad(this);
    this.wgtLayerPad = new LayerPad(this);
}


/**
 * Return the HTML of the object managed by the widget and its child widgets.    
 * @return <code>string</code>  A string representing the HTML of the object managed by the widget and its child
 *                              widgets.
 */
function ControlPanel_getHtml() {
    var strHtml = 
        "<div id='controlPanel'>" +
                this.wgtNavigationPad.getHtml() + 
                this.wgtZoomPad.getHtml() +
                this.wgtLayerPad.getHtml() +
        "</div>";

    return strHtml;
}


