Embperl
view release on metacpan or search on metacpan
eg/forms/js/EmbperlForm.js view on Meta::CPAN
event: 'mouseenter',
solo: true, // Only show one tooltip at a time
delay: 1000
},
hide: {
event: 'mouseleave click',
fixed: true,
delay: 300
},
style: {
classes: 'ui-tooltip-blue ui-tooltip-shadow',
xwidget: true
}
});
}
// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------
function eplGrid (tableelement, rowelement, maxelement, addelement, delelement,
upelement, downelement, onchange)
{
var self = this ;
$.extend(self, {
initialize: function (tableelement, rowelement, maxelement, addelement,
delelement, upelement, downelement,
onchange)
{
this.rowelement = rowelement ;
this.maxelement = maxelement ;
this.tableelement = tableelement ;
this.onchangehandler = onchange ;
tableelement.click (function(e) {self.onClick (e)});
tableelement.focus (function(e) {self.onClick (e)});
tableelement.keyup (function(e) {self.onClick (e)});
if (addelement)
addelement.click (function(e) {self.addRow ()});
if (delelement)
delelement.click (function(e) {self.delRow ()});
if (upelement)
upelement.click (function(e) {self.upRow ()});
if (downelement)
downelement.click (function(e) {self.downRow ()});
//rows = this.tableelement.getElementsByTagName('tr');
var rows = tableelement.find('tr') ;
var lastrow = rows.last() ;
var newid = this.tableelement[0].id ;
newid = newid + '-row-' ;
var lastid = lastrow[0].id ;
var idlength = newid.length ;
this.lastnum = parseInt (lastid.substr(idlength)) ;
if (isNaN(this.lastnum))
this.lastnum = -1 ;
},
addRow: function ()
{
var rows = this.tableelement.find('tr');
var lastrow = rows.last() ;
this.lastnum = this.lastnum + 1 ;
var inserttext = this.rowelement.html() ;
var newtext = inserttext.replace (/%row%/gi, this.lastnum) ;
newtext = newtext.replace (/<tbody>/gi, '') ;
newtext = newtext.replace (/<\/tbody>/gi, '') ;
newtext = newtext.replace (/<x-script/gi, '<script') ;
newtext = newtext.replace (/<\/x-script/gi, '</script') ;
lastrow.after (newtext) ;
this.maxelement[0].value = this.lastnum + 1 ;
if (this.onchangehandler)
this.onchangehandler (this.tableelement) ;
},
focusRow: function ()
{
var next = this.currRow ;
if (next && next.className == 'cGridRow')
{
next.className='cGridRowSelected' ;
while (next && (next.tagName != 'INPUT' || next.tagName != 'SELECT'))
{
next = next.firstChild ;
}
if (next)
next.focus() ;
}
},
delRow: function (row)
{
if (row != undefined)
this.currRow = row ;
if (this.currRow)
{
var next = $(this.currRow).next('tr') ;
var p = this.currRow.parentNode ;
p.removeChild(this.currRow) ;
this.currRow = next[0] ;
this.focusRow () ;
if (this.onchangehandler)
this.onchangehandler (this.tableelement) ;
}
},
upRow: function (row) //TODO
{
if (row != undefined)
this.currRow = row ;
if (this.currRow)
{
( run in 0.824 second using v1.01-cache-2.11-cpan-39bf76dae61 )