// ********************************************************************************************
//	Admin Windows
// ********************************************************************************************
SET_DHTML("id_titlebar_1"+CURSOR_MOVE, "id_frame_1"+NO_DRAG, "id_clientarea_1"+NO_DRAG, "id_resizehandle_1"+MAXOFFLEFT+210+MAXOFFTOP+90+CURSOR_NW_RESIZE, "id_resizebutton_1"+VERTICAL+HORIZONTAL,"id_titlebar_2"+CURSOR_MOVE, "id_frame_2"+NO_DRAG, "id_clientarea_2"+NO_DRAG, "id_resizehandle_2"+MAXOFFLEFT+210+MAXOFFTOP+90+CURSOR_NW_RESIZE, "id_resizebutton_2"+VERTICAL+HORIZONTAL);

// Some vars to customize window:
var gFrame_padding = 0;
var gTitlebar_h = 19;
var gToolbar_h = 20;
var gStatusbar_h = 20;
var gClientarea_margin = 4;

// preload button images to ensure un-delayed image swapping    
var gButton_down_outset = new Image();
var gButton_down_inset = new Image();
var gButton_up_outset = new Image();
var gButton_up_inset = new Image();
gButton_down_outset.src = 'graphics/button_down_outset.gif';
gButton_down_inset.src = 'graphics/button_down_inset.gif';
gButton_up_outset.src = 'graphics/button_up_outset.gif';
gButton_up_inset.src = 'graphics/button_up_inset.gif';

// to save window height when window is minimized
var gLast_window_h;


// initWindow() moves elements to their adequate locations
// and builds coherences between these elements by converting outer frame, client area and images for resize functionalities
// to 'childern' of the draggable titlebar 
function initWindow_1()
{
    dd.elements.id_titlebar_1.moveTo(dd.elements.id_frame_1.x+2+gFrame_padding, dd.elements.id_frame_1.y+2+gFrame_padding);
    dd.elements.id_titlebar_1.addChild("id_frame_1");
    dd.elements.id_titlebar_1.setZ(dd.elements.id_frame_1.z+1); // ensure that titlebar is floating above id_frame_1
    dd.elements.id_titlebar_1.resizeTo(dd.elements.id_frame_1.w-4-(gFrame_padding<<1), gTitlebar_h);

    dd.elements.id_clientarea_1.moveTo(dd.elements.id_frame_1.x+2+gFrame_padding+gClientarea_margin, dd.elements.id_titlebar_1.y+gTitlebar_h+gToolbar_h+gClientarea_margin);
    dd.elements.id_titlebar_1.addChild("id_clientarea_1");
    dd.elements.id_clientarea_1.resizeTo(dd.elements.id_frame_1.w-4-(gFrame_padding<<1)-(gClientarea_margin<<1), dd.elements.id_frame_1.h-gTitlebar_h-gToolbar_h-gStatusbar_h-4-(gFrame_padding<<1)-gClientarea_margin);

    dd.elements.id_resizehandle_1.moveTo(dd.elements.id_frame_1.x+dd.elements.id_frame_1.w-dd.elements.id_resizehandle_1.w-2, dd.elements.id_frame_1.y+dd.elements.id_frame_1.h-dd.elements.id_resizehandle_1.h-2);
    dd.elements.id_resizebutton_1.moveTo(dd.elements.id_titlebar_1.x+dd.elements.id_titlebar_1.w-dd.elements.id_resizebutton_1.w-gFrame_padding-(gTitlebar_h>>1)+Math.round(dd.elements.id_resizebutton_1.w/2), dd.elements.id_titlebar_1.y+Math.round(gTitlebar_h/2)-Math.round(dd.elements.id_resizebutton_1.h/2));
    dd.elements.id_titlebar_1.addChild("id_resizebutton_1");
    dd.elements.id_titlebar_1.addChild("id_resizehandle_1");
    
    dd.elements.id_titlebar_1.show();
}
//initWindow_1();

function initWindow_2()
{
    dd.elements.id_titlebar_2.moveTo(dd.elements.id_frame_2.x+2+gFrame_padding, dd.elements.id_frame_2.y+2+gFrame_padding);
    dd.elements.id_titlebar_2.addChild("id_frame_2");
    dd.elements.id_titlebar_2.setZ(dd.elements.id_frame_2.z+1); // ensure that titlebar is floating above id_frame_2
    dd.elements.id_titlebar_2.resizeTo(dd.elements.id_frame_2.w-4-(gFrame_padding<<1), gTitlebar_h);

    dd.elements.id_clientarea_2.moveTo(dd.elements.id_frame_2.x+2+gFrame_padding+gClientarea_margin, dd.elements.id_titlebar_2.y+gTitlebar_h+gToolbar_h+gClientarea_margin);
    dd.elements.id_titlebar_2.addChild("id_clientarea_2");
    dd.elements.id_clientarea_2.resizeTo(dd.elements.id_frame_2.w-4-(gFrame_padding<<1)-(gClientarea_margin<<1), dd.elements.id_frame_2.h-gTitlebar_h-gToolbar_h-gStatusbar_h-4-(gFrame_padding<<1)-gClientarea_margin);

    dd.elements.id_resizehandle_2.moveTo(dd.elements.id_frame_2.x+dd.elements.id_frame_2.w-dd.elements.id_resizehandle_2.w-2, dd.elements.id_frame_2.y+dd.elements.id_frame_2.h-dd.elements.id_resizehandle_2.h-2);
    dd.elements.id_resizebutton_2.moveTo(dd.elements.id_titlebar_2.x+dd.elements.id_titlebar_2.w-dd.elements.id_resizebutton_2.w-gFrame_padding-(gTitlebar_h>>1)+Math.round(dd.elements.id_resizebutton_2.w/2), dd.elements.id_titlebar_2.y+Math.round(gTitlebar_h/2)-Math.round(dd.elements.id_resizebutton_2.h/2));
    dd.elements.id_titlebar_2.addChild("id_resizebutton_2");
    dd.elements.id_titlebar_2.addChild("id_resizehandle_2");
    
    dd.elements.id_titlebar_2.show();
}
initWindow_1();
initWindow_2();

// my_PickFunc, my_DragFunc and my_DropFunc override their namesakes in wz_dragdrop.js
function my_PickFunc()
{
    if (dd.obj.name == "id_resizebutton_1")
    {
        dd.obj.swapImage(dd.elements.id_clientarea_1.visible? gButton_up_inset.src : gButton_down_inset.src);
    }
    if (dd.obj.name == "id_resizebutton_2")
    {
        dd.obj.swapImage(dd.elements.id_clientarea_2.visible? gButton_up_inset.src : gButton_down_inset.src);
    }
}


function my_DragFunc()
{
    if (dd.obj.name == "id_resizehandle_1")
    {
        dd.elements.id_frame_1.resizeTo(dd.obj.x-dd.elements.id_frame_1.x+dd.obj.w+2, dd.obj.y-dd.elements.id_frame_1.y+dd.obj.h+2);
        dd.elements.id_titlebar_1.resizeTo(dd.obj.x-dd.elements.id_titlebar_1.x+dd.obj.w-gFrame_padding, gTitlebar_h);
        dd.elements.id_clientarea_1.resizeTo(dd.elements.id_frame_1.w-4-(gFrame_padding<<1)-(gClientarea_margin<<1), dd.elements.id_frame_1.h-gTitlebar_h-gToolbar_h-gStatusbar_h-4-(gFrame_padding<<1)-gClientarea_margin);
        dd.elements.id_resizebutton_1.moveTo(dd.elements.id_titlebar_1.x+dd.elements.id_titlebar_1.w-dd.elements.id_resizebutton_1.w-gFrame_padding-(gTitlebar_h>>1)+Math.round(dd.elements.id_resizebutton_1.w/2), dd.elements.id_resizebutton_1.y);
    }
    if (dd.obj.name == "id_resizehandle_2")
    {
        dd.elements.id_frame_2.resizeTo(dd.obj.x-dd.elements.id_frame_2.x+dd.obj.w+2, dd.obj.y-dd.elements.id_frame_2.y+dd.obj.h+2);
        dd.elements.id_titlebar_2.resizeTo(dd.obj.x-dd.elements.id_titlebar_2.x+dd.obj.w-gFrame_padding, gTitlebar_h);
        dd.elements.id_clientarea_2.resizeTo(dd.elements.id_frame_2.w-4-(gFrame_padding<<1)-(gClientarea_margin<<1), dd.elements.id_frame_2.h-gTitlebar_h-gToolbar_h-gStatusbar_h-4-(gFrame_padding<<1)-gClientarea_margin);
        dd.elements.id_resizebutton_2.moveTo(dd.elements.id_titlebar_2.x+dd.elements.id_titlebar_2.w-dd.elements.id_resizebutton_2.w-gFrame_padding-(gTitlebar_h>>1)+Math.round(dd.elements.id_resizebutton_2.w/2), dd.elements.id_resizebutton_2.y);
    }
}


function my_DropFunc()
{
    if (dd.obj.name == "id_resizebutton_1")
    {
        if (dd.elements.id_clientarea_1.visible)
        {
            dd.obj.swapImage(gButton_down_outset.src);
            dd.elements.id_clientarea_1.hide();
            dd.elements.id_resizehandle_1.hide();
            gLast_window_h = dd.elements.id_frame_1.h;
            dd.elements.id_frame_1.resizeTo(dd.elements.id_frame_1.w, gTitlebar_h+(gFrame_padding<<1)+4);
        }
        else
        {
            dd.obj.swapImage(gButton_up_outset.src);
            dd.elements.id_clientarea_1.show();
            dd.elements.id_resizehandle_1.show();
            dd.elements.id_frame_1.resizeTo(dd.elements.id_frame_1.w, gLast_window_h);
        }
    }
	
    if (dd.obj.name == "id_resizebutton_2")
    {
        if (dd.elements.id_clientarea_2.visible)
        {
            dd.obj.swapImage(gButton_down_outset.src);
            dd.elements.id_clientarea_2.hide();
            dd.elements.id_resizehandle_2.hide();
            gLast_window_h = dd.elements.id_frame_2.h;
            dd.elements.id_frame_2.resizeTo(dd.elements.id_frame_2.w, gTitlebar_h+(gFrame_padding<<1)+4);
        }
        else
        {
            dd.obj.swapImage(gButton_up_outset.src);
            dd.elements.id_clientarea_2.show();
            dd.elements.id_resizehandle_2.show();
            dd.elements.id_frame_2.resizeTo(dd.elements.id_frame_2.w, gLast_window_h);
        }
    }
	
}


function show_2() {
//            dd.obj.swapImage(gButton_up_outset.src);
            dd.elements.id_clientarea_2.show();
            dd.elements.id_resizehandle_2.show();
            dd.elements.id_frame_2.resizeTo(dd.elements.id_frame_2.w, gLast_window_h);
}

function hide_2() {
//            dd.obj.swapImage(gButton_down_outset.src);
            dd.elements.id_clientarea_2.hide();
            dd.elements.id_resizehandle_2.hide();
            gLast_window_h = dd.elements.id_frame_2.h;
            dd.elements.id_frame_2.resizeTo(dd.elements.id_frame_2.w, gTitlebar_h+(gFrame_padding<<1)+4);
}
