Commit e077c1e6 authored by Alexander.Trofimov's avatar Alexander.Trofimov

Поправил ClickCounter. Ранее были ограничены значением 3, что не правильно. В...

Поправил ClickCounter. Ранее были ограничены значением 3, что не правильно. В автофигурах теперь правильный селект при 4-х нажатиях и т.д.
В ячейке реализовал правильное выделение для 2-х и более подряд нажатий.

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@67677 954022d7-b5bf-4e40-9824-e11837661b57
parent 3454b99b
...@@ -3222,51 +3222,45 @@ function ObjectLocker(ws) { ...@@ -3222,51 +3222,45 @@ function ObjectLocker(ws) {
} }
function ClickCounter() { function ClickCounter() {
this.x = 0;
var _this = this; this.y = 0;
_this.x = 0; this.button = 0;
_this.y = 0; this.time = 0;
_this.button = 0; this.clickCount = 0;
_this.time = 0; this.log = false;
_this.clickCount = 0; }
_this.log = false; ClickCounter.prototype.mouseDownEvent = function(x, y, button) {
_this.mouseDownEvent = function(x, y, button) {
var currTime = getCurrentTime(); var currTime = getCurrentTime();
if ( (_this.button === button) && (_this.x === x) && (_this.y === y) && (currTime - _this.time < 500) ) { if (this.button === button && this.x === x && this.y === y && (currTime - this.time < 500)) {
_this.clickCount = _this.clickCount + 1; ++this.clickCount;
_this.clickCount = Math.min(_this.clickCount, 3); } else {
this.clickCount = 1;
} }
else
_this.clickCount = 1;
if ( _this.log ) { if (this.log) {
console.log("-----"); console.log("-----");
console.log("x-> " + _this.x + " : " + x); console.log("x-> " + this.x + " : " + x);
console.log("y-> " + _this.y + " : " + y); console.log("y-> " + this.y + " : " + y);
console.log("Time: " + (currTime - _this.time)); console.log("Time: " + (currTime - this.time));
console.log("Count: " + _this.clickCount); console.log("Count: " + this.clickCount);
console.log(""); console.log("");
} }
_this.time = currTime; this.time = currTime;
}; };
ClickCounter.prototype.mouseMoveEvent = function(x, y) {
_this.mouseMoveEvent = function(x, y) { if (this.x !== x || this.y !== y) {
if ( (_this.x != x) || (_this.y != y) ) { this.x = x;
_this.x = x; this.y = y;
_this.y = y; this.clickCount = 0;
_this.clickCount = 0;
if ( _this.log ) if (this.log) {
console.log("Reset counter"); console.log("Reset counter");
} }
};
_this.getClickCount = function() {
return _this.clickCount;
} }
} };
ClickCounter.prototype.getClickCount = function() {
return this.clickCount;
};
function CoordsManager(ws) { function CoordsManager(ws) {
......
This diff is collapsed.
...@@ -1195,8 +1195,8 @@ ...@@ -1195,8 +1195,8 @@
t.clickCounter.mouseDownEvent(coord.x, coord.y, event.button); t.clickCounter.mouseDownEvent(coord.x, coord.y, event.button);
event.ClickCount = t.clickCounter.clickCount; event.ClickCount = t.clickCounter.clickCount;
if (event.ClickCount == 2) if (0 === event.ClickCount % 2)
t.isDblClickInMouseDown = true; t.isDblClickInMouseDown = true;;
t.handlers.trigger("graphicObjectMouseDown", event, coord.x, coord.y); t.handlers.trigger("graphicObjectMouseDown", event, coord.x, coord.y);
t.handlers.trigger("updateSelectionShape", /*isSelectOnShape*/true); t.handlers.trigger("updateSelectionShape", /*isSelectOnShape*/true);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment