jinlin
2024-09-26 7ec9326ce00d08f9d957981f2edff6df26f24a28
web/public/SVGOrigin/Method-Draw-master/method-draw/lib/contextmenu/jquery.contextMenu.js
@@ -18,7 +18,7 @@
   var doc = $(document);
   $.extend($.fn, {
      contextMenu: function(o, callback) {
         // Defaults
         if( o.menu == undefined ) return false;
@@ -31,7 +31,7 @@
         $(this).each( function() {
            var el = $(this);
            var offset = $(el).offset();
            var menu = $('#' + o.menu);
            // Add contextMenu class
@@ -57,28 +57,28 @@
                open_context_menu(e,e, srcElement);
              })
            }
            var open_context_menu = function(e, evt, srcElement) {
              if (typeof evt == 'undefined') evt = e;
              e.stopPropagation();
              // Get this context menu
              if( el.hasClass('disabled') || evt.altKey ) return false;
              // Detect mouse position
              var d = {}, x = e.pageX, y = e.pageY;
              if (svgedit.browser.isTouch()) var d = {}, x = e.originalEvent.touches[0].pageX, y = e.originalEvent.touches[0].pageY;
              var x_off = win.width() - menu.width(),
              var x_off = win.width() - menu.width(),
                 y_off = win.height() - menu.height();
              if(x > x_off - 15) x = x_off-15;
              if(y > y_off - 30) y = y_off-30; // 30 is needed to prevent scrollbars in FF
              if(svgedit.browser.isTouch())
              if(svgedit.browser.isTouch())
                y = y - (menu.height()/2)
              // Show the menu
              doc.unbind('click');
              menu.css({ top: y, left: x }).fadeIn(o.inSpeed);
@@ -89,7 +89,7 @@
              }).mouseout( function() {
                 menu.find('LI.hover').removeClass('hover');
              });
              // Keyboard
              doc.keypress( function(e) {
                 switch( e.keyCode ) {
@@ -117,7 +117,7 @@
                    break
                 }
              });
              // When items are selected
              menu.find('A').unbind('mouseup');
              menu.find('LI:not(.disabled) A').mouseup( function() {
@@ -127,7 +127,7 @@
                 if( callback ) callback( $(this).attr('href').substr(1), $(srcElement), {x: x - offset.left, y: y - offset.top, docX: x, docY: y} );
                 return false;
              });
              // Hide bindings
              setTimeout( function() { // Delay for Mozilla
                 doc.click( function() {
@@ -137,15 +137,15 @@
                 });
              }, 0);
            }
            // Disable browser context menu (requires both selectors to work in IE/Safari + FF/Chrome)
            $(el).add($('UL.contextMenu')).bind('contextmenu', function() { return false; });
         });
         return $(this);
      },
      // Disable context menu items on the fly
      disableContextMenuItems: function(o) {
         if( o == undefined ) {
@@ -158,13 +158,13 @@
               var d = o.split(',');
               for( var i = 0; i < d.length; i++ ) {
                  $(this).find('A[href="' + d[i] + '"]').parent().addClass('disabled');
               }
            }
         });
         return( $(this) );
      },
      // Enable context menu items on the fly
      enableContextMenuItems: function(o) {
         if( o == undefined ) {
@@ -177,13 +177,13 @@
               var d = o.split(',');
               for( var i = 0; i < d.length; i++ ) {
                  $(this).find('A[href="' + d[i] + '"]').parent().removeClass('disabled');
               }
            }
         });
         return( $(this) );
      },
      // Disable context menu(s)
      disableContextMenu: function() {
         $(this).each( function() {
@@ -191,7 +191,7 @@
         });
         return( $(this) );
      },
      // Enable context menu(s)
      enableContextMenu: function() {
         $(this).each( function() {
@@ -199,7 +199,7 @@
         });
         return( $(this) );
      },
      // Destroy context menu(s)
      destroyContextMenu: function() {
         // Destroy specified context menus
@@ -209,6 +209,6 @@
         });
         return( $(this) );
      }
   });
})(jQuery);
})(jQuery);