Move common modal dialog classes to modal.js.
This commit is contained in:
parent
8a29a6c682
commit
a3b17a8d0c
@ -3,140 +3,6 @@ OV.FeatureSet =
|
|||||||
SetDefaultColor : false
|
SetDefaultColor : false
|
||||||
};
|
};
|
||||||
|
|
||||||
OV.ProgressDialog = class
|
|
||||||
{
|
|
||||||
constructor ()
|
|
||||||
{
|
|
||||||
this.modal = new OV.Modal ();
|
|
||||||
this.modal.SetCloseable (false);
|
|
||||||
this.imageDiv = null;
|
|
||||||
this.textDiv = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
SetText (text)
|
|
||||||
{
|
|
||||||
this.textDiv.html (text);
|
|
||||||
}
|
|
||||||
|
|
||||||
Show (text)
|
|
||||||
{
|
|
||||||
let contentDiv = this.modal.GetContentDiv ();
|
|
||||||
contentDiv.addClass ('ov_progress');
|
|
||||||
|
|
||||||
this.imageDiv = $('<img>').addClass ('ov_progress_img').attr ('src', 'assets/images/3dviewer_net_logo.svg').appendTo (contentDiv);
|
|
||||||
this.textDiv = $('<div>').addClass ('ov_progress_text').appendTo (contentDiv);
|
|
||||||
|
|
||||||
this.SetText (text);
|
|
||||||
this.modal.Open ();
|
|
||||||
}
|
|
||||||
|
|
||||||
Hide ()
|
|
||||||
{
|
|
||||||
this.modal.Close ();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
OV.ButtonDialog = class
|
|
||||||
{
|
|
||||||
constructor ()
|
|
||||||
{
|
|
||||||
this.modal = new OV.Modal ();
|
|
||||||
}
|
|
||||||
|
|
||||||
Init (title, buttons)
|
|
||||||
{
|
|
||||||
function AddButton (button, buttonsDiv)
|
|
||||||
{
|
|
||||||
let buttonDiv = $('<div>').addClass ('ov_dialog_button').html (button.name).appendTo (buttonsDiv);
|
|
||||||
if (button.subClass) {
|
|
||||||
buttonDiv.addClass (button.subClass);
|
|
||||||
}
|
|
||||||
buttonDiv.click (function () {
|
|
||||||
button.onClick ();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
let contentDiv = this.modal.GetContentDiv ();
|
|
||||||
contentDiv.addClass ('ov_dialog');
|
|
||||||
|
|
||||||
$('<div>').addClass ('ov_dialog_title').html (title).appendTo (contentDiv);
|
|
||||||
let dialogContentDiv = $('<div>').addClass ('ov_dialog_content').appendTo (contentDiv);
|
|
||||||
let buttonsDiv = $('<div>').addClass ('ov_dialog_buttons').appendTo (contentDiv);
|
|
||||||
let buttonsInnerDiv = $('<div>').addClass ('ov_dialog_buttons_inner').appendTo (buttonsDiv);
|
|
||||||
for (let i = 0; i < buttons.length; i++) {
|
|
||||||
AddButton (buttons[i], buttonsInnerDiv);
|
|
||||||
}
|
|
||||||
|
|
||||||
return dialogContentDiv;
|
|
||||||
}
|
|
||||||
|
|
||||||
SetCloseHandler (closeHandler)
|
|
||||||
{
|
|
||||||
this.modal.SetCloseHandler (closeHandler);
|
|
||||||
}
|
|
||||||
|
|
||||||
Show ()
|
|
||||||
{
|
|
||||||
this.modal.Open ();
|
|
||||||
}
|
|
||||||
|
|
||||||
Hide ()
|
|
||||||
{
|
|
||||||
this.modal.Close ();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
OV.ListPopup = class
|
|
||||||
{
|
|
||||||
constructor ()
|
|
||||||
{
|
|
||||||
this.modal = new OV.Modal ();
|
|
||||||
this.listDiv = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
Init ()
|
|
||||||
{
|
|
||||||
let contentDiv = this.modal.GetContentDiv ();
|
|
||||||
contentDiv.addClass ('ov_popup');
|
|
||||||
this.listDiv = $('<div>').addClass ('ov_popup_list').addClass ('ov_thin_scrollbar').appendTo (contentDiv);
|
|
||||||
}
|
|
||||||
|
|
||||||
SetCustomResizeHandler (customResizeHandler)
|
|
||||||
{
|
|
||||||
this.modal.SetCustomResizeHandler (customResizeHandler);
|
|
||||||
}
|
|
||||||
|
|
||||||
AddListItem (item, callbacks)
|
|
||||||
{
|
|
||||||
let listItemDiv = $('<div>').addClass ('ov_popup_list_item').appendTo (this.listDiv);
|
|
||||||
if (item.color) {
|
|
||||||
$('<div>').addClass ('ov_popup_list_item_rgbbox').css ('background', '#' + item.color).appendTo (listItemDiv);
|
|
||||||
}
|
|
||||||
$('<div>').addClass ('ov_popup_list_item_name').html (item.name).appendTo (listItemDiv);
|
|
||||||
listItemDiv.click (callbacks.onClick);
|
|
||||||
if (OV.IsHoverEnabled () && callbacks.onHoverStart && callbacks.onHoverStop) {
|
|
||||||
listItemDiv.hover (
|
|
||||||
function () {
|
|
||||||
callbacks.onHoverStart ();
|
|
||||||
},
|
|
||||||
function () {
|
|
||||||
callbacks.onHoverStop ();
|
|
||||||
}
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Show ()
|
|
||||||
{
|
|
||||||
this.modal.Open ();
|
|
||||||
}
|
|
||||||
|
|
||||||
Hide ()
|
|
||||||
{
|
|
||||||
this.modal.Close ();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
OV.ShowMessageDialog = function (title, message, subMessage)
|
OV.ShowMessageDialog = function (title, message, subMessage)
|
||||||
{
|
{
|
||||||
let dialog = new OV.ButtonDialog ();
|
let dialog = new OV.ButtonDialog ();
|
||||||
|
|||||||
@ -97,3 +97,137 @@ OV.Modal = class
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
OV.ProgressDialog = class
|
||||||
|
{
|
||||||
|
constructor ()
|
||||||
|
{
|
||||||
|
this.modal = new OV.Modal ();
|
||||||
|
this.modal.SetCloseable (false);
|
||||||
|
this.imageDiv = null;
|
||||||
|
this.textDiv = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
SetText (text)
|
||||||
|
{
|
||||||
|
this.textDiv.html (text);
|
||||||
|
}
|
||||||
|
|
||||||
|
Show (text)
|
||||||
|
{
|
||||||
|
let contentDiv = this.modal.GetContentDiv ();
|
||||||
|
contentDiv.addClass ('ov_progress');
|
||||||
|
|
||||||
|
this.imageDiv = $('<img>').addClass ('ov_progress_img').attr ('src', 'assets/images/3dviewer_net_logo.svg').appendTo (contentDiv);
|
||||||
|
this.textDiv = $('<div>').addClass ('ov_progress_text').appendTo (contentDiv);
|
||||||
|
|
||||||
|
this.SetText (text);
|
||||||
|
this.modal.Open ();
|
||||||
|
}
|
||||||
|
|
||||||
|
Hide ()
|
||||||
|
{
|
||||||
|
this.modal.Close ();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
OV.ButtonDialog = class
|
||||||
|
{
|
||||||
|
constructor ()
|
||||||
|
{
|
||||||
|
this.modal = new OV.Modal ();
|
||||||
|
}
|
||||||
|
|
||||||
|
Init (title, buttons)
|
||||||
|
{
|
||||||
|
function AddButton (button, buttonsDiv)
|
||||||
|
{
|
||||||
|
let buttonDiv = $('<div>').addClass ('ov_dialog_button').html (button.name).appendTo (buttonsDiv);
|
||||||
|
if (button.subClass) {
|
||||||
|
buttonDiv.addClass (button.subClass);
|
||||||
|
}
|
||||||
|
buttonDiv.click (function () {
|
||||||
|
button.onClick ();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
let contentDiv = this.modal.GetContentDiv ();
|
||||||
|
contentDiv.addClass ('ov_dialog');
|
||||||
|
|
||||||
|
$('<div>').addClass ('ov_dialog_title').html (title).appendTo (contentDiv);
|
||||||
|
let dialogContentDiv = $('<div>').addClass ('ov_dialog_content').appendTo (contentDiv);
|
||||||
|
let buttonsDiv = $('<div>').addClass ('ov_dialog_buttons').appendTo (contentDiv);
|
||||||
|
let buttonsInnerDiv = $('<div>').addClass ('ov_dialog_buttons_inner').appendTo (buttonsDiv);
|
||||||
|
for (let i = 0; i < buttons.length; i++) {
|
||||||
|
AddButton (buttons[i], buttonsInnerDiv);
|
||||||
|
}
|
||||||
|
|
||||||
|
return dialogContentDiv;
|
||||||
|
}
|
||||||
|
|
||||||
|
SetCloseHandler (closeHandler)
|
||||||
|
{
|
||||||
|
this.modal.SetCloseHandler (closeHandler);
|
||||||
|
}
|
||||||
|
|
||||||
|
Show ()
|
||||||
|
{
|
||||||
|
this.modal.Open ();
|
||||||
|
}
|
||||||
|
|
||||||
|
Hide ()
|
||||||
|
{
|
||||||
|
this.modal.Close ();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
OV.ListPopup = class
|
||||||
|
{
|
||||||
|
constructor ()
|
||||||
|
{
|
||||||
|
this.modal = new OV.Modal ();
|
||||||
|
this.listDiv = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
Init ()
|
||||||
|
{
|
||||||
|
let contentDiv = this.modal.GetContentDiv ();
|
||||||
|
contentDiv.addClass ('ov_popup');
|
||||||
|
this.listDiv = $('<div>').addClass ('ov_popup_list').addClass ('ov_thin_scrollbar').appendTo (contentDiv);
|
||||||
|
}
|
||||||
|
|
||||||
|
SetCustomResizeHandler (customResizeHandler)
|
||||||
|
{
|
||||||
|
this.modal.SetCustomResizeHandler (customResizeHandler);
|
||||||
|
}
|
||||||
|
|
||||||
|
AddListItem (item, callbacks)
|
||||||
|
{
|
||||||
|
let listItemDiv = $('<div>').addClass ('ov_popup_list_item').appendTo (this.listDiv);
|
||||||
|
if (item.color) {
|
||||||
|
$('<div>').addClass ('ov_popup_list_item_rgbbox').css ('background', '#' + item.color).appendTo (listItemDiv);
|
||||||
|
}
|
||||||
|
$('<div>').addClass ('ov_popup_list_item_name').html (item.name).appendTo (listItemDiv);
|
||||||
|
listItemDiv.click (callbacks.onClick);
|
||||||
|
if (OV.IsHoverEnabled () && callbacks.onHoverStart && callbacks.onHoverStop) {
|
||||||
|
listItemDiv.hover (
|
||||||
|
function () {
|
||||||
|
callbacks.onHoverStart ();
|
||||||
|
},
|
||||||
|
function () {
|
||||||
|
callbacks.onHoverStop ();
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Show ()
|
||||||
|
{
|
||||||
|
this.modal.Open ();
|
||||||
|
}
|
||||||
|
|
||||||
|
Hide ()
|
||||||
|
{
|
||||||
|
this.modal.Close ();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user