Ignore:
Timestamp:
10/02/08 17:07:26 (11 years ago)
Author:
douglas
Message:

FIXED Ticket #1176 Merging new dialogs branch back to trunk.

Location:
trunk/plugins/SmartReplace
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/plugins/SmartReplace/dialog.html

    r752 r1044  
    88  <tr> 
    99    <td style="width:15px"><input type="checkbox" id="[convert]" name="[convert]" /></td> 
    10     <td style="text-align:left"><l10n>Convert all quotes and dashes in the current document</l10n></td> 
     10    <td style="text-align:left"><l10n>Convert all quotes and dashes in the current document</l10n> <input style="display:none" type="button" id="[ok]" value="_(OK)" /></td> 
    1111  </tr> 
    1212</table> 
    13   <div style="margin-top: 10px;"> 
    14     <input type="button" id="[ok]"     value="_(OK)"     /> 
    15     <input type="button" id="[cancel]" value="_(Cancel)" /> 
    16   </div> 
    1713</div> 
     14<div class="buttons"> 
     15   
     16</div> 
  • trunk/plugins/SmartReplace/smart-replace.js

    r999 r1044  
    2626  version       : "1.0", 
    2727  developer     : "Raimund Meyer", 
    28   developer_url : "http://x-webservice.net", 
     28  developer_url : "http://rheinauf.de", 
    2929  c_owner       : "Raimund Meyer", 
    3030  sponsor       : "", 
    3131  sponsor_url   : "", 
    32   license       : "LGPL" 
     32  license       : "htmlArea" 
    3333}; 
    3434 
     
    9999 
    100100SmartReplace.prototype.keyEvent = function(ev) 
    101 {  
     101{ 
    102102        if ( !this.active) return true; 
    103103        var editor = this.editor; 
     
    152152                        r.moveStart('character', +1); 
    153153                        r.text = closing; 
    154                          
    155154                } 
    156155                else 
     
    224223        return true; 
    225224} 
    226  
    227225 
    228226SmartReplace.prototype.replaceAll = function() 
     
    264262        this.editor.setHTML(html); 
    265263} 
    266 SmartReplace.prototype.dialog = function() 
     264 
     265SmartReplace.prototype.buttonPress = function(opts, obj) 
    267266{ 
    268267        var self = this; 
    269         var action = function (param) 
    270         { 
    271                 self.toggleActivity(param.enable);  
    272                 if (param.convert) 
    273                 { 
    274                         self.replaceAll(); 
    275                 } 
    276         } 
    277         var init = this; 
    278         Dialog(Xinha.getPluginDir('SmartReplace')+'/popups/dialog.html', action, init); 
    279 } 
    280  
    281  
    282 SmartReplace.prototype.buttonPress = function(opts, obj) 
    283 { 
    284         var self = this; 
    285  
    286         if ( this._dialog.dialog.rootElem.style.display != 'none') 
    287         { 
    288                 return this._dialog.hide(); 
     268 
     269        if ( this.dialog.rootElem.style.display != 'none') 
     270        { 
     271                return this.dialog.hide(); 
    289272        } 
    290273        var doOK = function() 
    291274        { 
    292                 var opts = self._dialog.hide(); 
     275                var opts = self.dialog.hide(); 
    293276                self.toggleActivity((opts.enable) ? true : false);  
    294277                if (opts.convert) 
    295278                { 
    296279                        self.replaceAll(); 
    297                         self._dialog.dialog.getElementById("convert").checked = false; 
     280                        self.dialog.getElementById("convert").checked = false; 
    298281                } 
    299282        } 
     
    303286                convert: '' 
    304287        }; 
    305         this._dialog.show(inputs, doOK); 
     288        this.show(inputs, doOK); 
    306289}; 
    307290 
    308291SmartReplace.prototype.onGenerateOnce = function() 
    309292{ 
    310   if( !this._dialog) 
    311   { 
    312         this._dialog = new SmartReplace.Dialog(this); 
    313   } 
    314 }; 
    315  
    316 SmartReplace.Dialog = function (mainPluginObject) 
    317 { 
    318   this.Dialog_nxtid = 0; 
    319   this.mainPluginObject = mainPluginObject; 
    320   this.id = { }; // This will be filled below with a replace, nifty 
    321  
    322   this.ready = false; 
    323   this.files  = false; 
    324   this.html   = false; 
    325   this.dialog = false; 
    326  
    327293  this._prepareDialog(); 
    328  
    329 }; 
    330  
    331 SmartReplace.Dialog.prototype._prepareDialog = function() 
    332 { 
    333   var pluginDialogObject = this; 
    334   var editor = this.mainPluginObject.editor; 
    335  
    336   if(this.html == false) 
    337   { 
    338         Xinha._getback(Xinha.getPluginDir('SmartReplace') + '/dialog.html', function(getback) { pluginDialogObject.html = getback; pluginDialogObject._prepareDialog(); }); 
     294}; 
     295 
     296SmartReplace.prototype._prepareDialog = function() 
     297{ 
     298  var self = this; 
     299  var editor = this.editor; 
     300 
     301  if(!this.html) 
     302  { 
     303    Xinha._getback( Xinha.getPluginDir("SmartReplace") + '/dialog.html', function(getback) { self.html = getback; self._prepareDialog(); }); 
    339304        return; 
    340305  } 
    341306   
    342307  // Now we have everything we need, so we can build the dialog. 
    343   this.dialog = new Xinha.Dialog(editor, this.html, 'SmartReplace'); 
    344  
     308  this.dialog = new Xinha.Dialog(editor, this.html, 'SmartReplace',{},{modal:false}); 
     309  this.dialog.attachToPanel('top'); 
     310 
     311  this.dialog.getElementById('enable').onchange = function () 
     312  { 
     313        self.toggleActivity(this.checked);  
     314  } 
     315  this.dialog.getElementById('convert').onchange = function () 
     316  { 
     317        self.dialog.getElementById('ok').style.display = ( this.checked ) ? '' : 'none';  
     318  } 
     319  this.dialog.getElementById('ok').onclick = function () 
     320  { 
     321        self.replaceAll(); 
     322        self.dialog.getElementById('convert').checked = false;  
     323        this.style.display =  'none';  
     324  } 
    345325  this.ready = true; 
    346326}; 
    347327 
    348 SmartReplace.Dialog.prototype._lc = SmartReplace.prototype._lc; 
    349  
    350 SmartReplace.Dialog.prototype.show = function(inputs, ok, cancel) 
     328SmartReplace.prototype.show = function(inputs) 
    351329{ 
    352330  if(!this.ready) 
    353331  { 
    354         var pluginDialogObject = this; 
    355         window.setTimeout(function() {pluginDialogObject.show(inputs,ok,cancel);},100); 
     332    var self = this; 
     333    window.setTimeout(function() {self.show(inputs,ok,cancel);},100); 
    356334        return; 
    357335  } 
    358336 
    359337  // Connect the OK and Cancel buttons 
    360   var dialog = this.dialog; 
    361   var pluginDialogObject = this; 
    362   if(ok) 
    363   { 
    364         this.dialog.getElementById('ok').onclick = ok; 
    365   } 
    366   else 
    367   { 
    368         this.dialog.getElementById('ok').onclick = function() {pluginDialogObject.hide();}; 
    369   } 
    370  
    371   if(cancel) 
    372   { 
    373         this.dialog.getElementById('cancel').onclick = cancel; 
    374   } 
    375   else 
    376   { 
    377         this.dialog.getElementById('cancel').onclick = function() { pluginDialogObject.hide()}; 
    378   } 
    379  
    380   // Show the dialog 
    381   this.mainPluginObject.editor.disableToolbar(['fullscreen','smartreplace']); 
     338  var self = this; 
    382339 
    383340  this.dialog.show(inputs); 
     
    386343  this.dialog.onresize(); 
    387344}; 
    388  
    389 SmartReplace.Dialog.prototype.hide = function() 
    390 { 
    391   this.mainPluginObject.editor.enableToolbar(); 
    392   return this.dialog.hide(); 
    393 }; 
Note: See TracChangeset for help on using the changeset viewer.