Author: EvaV Date: 2010-02-08 09:05:07 +0100 (Mon, 08 Feb 2010) New Revision: 1679 Modified: trunk/layouteditor/LayoutDesigner/src/applet/DesignArea.java trunk/layouteditor/LayoutDesigner/src/applet/Grid.java trunk/layouteditor/LayoutDesigner/src/applet/Layout.java trunk/layouteditor/LayoutDesigner/src/applet/LayoutDesigner.java trunk/layouteditor/LayoutDesigner/src/applet/MenuBar.java trunk/layouteditor/LayoutDesigner/src/applet/MovingObject.java trunk/layouteditor/LayoutDesigner/src/applet/Position.java trunk/layouteditor/LayoutDesigner/src/applet/ServerSideContext.java Log: oprava pozicovani mysi pri snap to grid z tiketu Modified: trunk/layouteditor/LayoutDesigner/src/applet/DesignArea.java =================================================================== --- trunk/layouteditor/LayoutDesigner/src/applet/DesignArea.java 2010-02-05 16:16:12 UTC (rev 1678) +++ trunk/layouteditor/LayoutDesigner/src/applet/DesignArea.java 2010-02-08 08:05:07 UTC (rev 1679) @@ -446,7 +446,12 @@ newPosition.setElvys(new AbsoluteCoordinates(elvysTopX, elvysTopY, elvysWidth, elvysHeight)); newPosition.setId(id); - newPosition.setSnappedToGrid(designArea.isSnapToGridEnabled()); + Position.IsSnappedToGrid snapped = newPosition.isSnappedToGrid(); + snapped.setHeight(designArea.isSnapToGridEnabled()); + snapped.setWidth(designArea.isSnapToGridEnabled()); + snapped.setTopX(designArea.isSnapToGridEnabled()); + snapped.setTopY(designArea.isSnapToGridEnabled()); + newPosition.setSnappedToGrid(snapped); layout.addPosition(layout.getLayoutPositions(), newPosition, newPosition, designArea, Layout.AddType.DESIGN, false); @@ -837,7 +842,12 @@ int HEIGHT = layout.getScreenResolution().getMonitorHeight(); Position position = new Position(tabbedPane); - position.setSnappedToGrid(designArea.isSnapToGridEnabled()); + Position.IsSnappedToGrid snapped = position.isSnappedToGrid(); + snapped.setHeight(designArea.isSnapToGridEnabled()); + snapped.setWidth(designArea.isSnapToGridEnabled()); + snapped.setTopX(designArea.isSnapToGridEnabled()); + snapped.setTopY(designArea.isSnapToGridEnabled()); + position.setSnappedToGrid(snapped); AbsoluteCoordinates absolute = position .changeCoordinatesToNotBeOutOfDesignArea(monitorTopX, monitorTopY, monitorWidth, monitorHeight, WIDTH, Modified: trunk/layouteditor/LayoutDesigner/src/applet/Grid.java =================================================================== --- trunk/layouteditor/LayoutDesigner/src/applet/Grid.java 2010-02-05 16:16:12 UTC (rev 1678) +++ trunk/layouteditor/LayoutDesigner/src/applet/Grid.java 2010-02-08 08:05:07 UTC (rev 1679) @@ -129,8 +129,28 @@ y = gridY; } + + /** + * Snaps to grid coordinates on kiosk + * @param designArea actual design area + */ + public void snapToGridKioskCoordinates1(DesignArea designArea) { + this.kioskGridXSize = this.getKioskGridXsize(designArea.getMyLayout()); + this.kioskGridYSize = this.getKioskGridYsize(designArea.getMyLayout()); + int xMod = x % this.kioskGridXSize; + int yMod = y % this.kioskGridYSize; + + int gridX = x + xMod; + int gridY = y + yMod; + + x = gridX; + y = gridY; + + } + + /** * Snaps to grid coordinates on monitor * @param designArea actual desing area Modified: trunk/layouteditor/LayoutDesigner/src/applet/Layout.java =================================================================== --- trunk/layouteditor/LayoutDesigner/src/applet/Layout.java 2010-02-05 16:16:12 UTC (rev 1678) +++ trunk/layouteditor/LayoutDesigner/src/applet/Layout.java 2010-02-08 08:05:07 UTC (rev 1679) @@ -168,95 +168,198 @@ int deltaMonitorHeight = 0; isSnappedToGrid = designArea.isSnapToGridEnabled(); - + for (int i = 0; i < positions.getPositions().size(); ++i) { Position oldPosition = positions.getPositions().get(i); Position newPosition = oldPosition.clone(); - AbsoluteCoordinates kiosek = newPosition.getElvys(); + AbsoluteCoordinates kiosk = newPosition.getElvys(); + boolean isFirst = !newPosition.isSnappedToGrid().isHeight + || !newPosition.isSnappedToGrid().isWidth + || !newPosition.isSnappedToGrid().isTopX + || !newPosition.isSnappedToGrid().isTopY; - int oldTopX = kiosek.getTopX(); - int oldTopY = kiosek.getTopY(); - int oldWidth = kiosek.getWidth(); - int oldHeight = kiosek.getHeight(); + int oldTopX = kiosk.getTopX(); + int oldTopY = kiosk.getTopY(); + int oldWidth = kiosk.getWidth(); + int oldHeight = kiosk.getHeight(); Grid grid = new Grid(designArea); int monitorX = grid.getMonitorGridXsize(); int monitorY = grid.getMonitorGridYsize(); - /*if (isSnappedToGrid) { + int newKioskTopX = oldTopX + deltaTopX; + int newKioskTopY = oldTopY + deltaTopY; + int newKioskWidth = oldWidth + deltaWidth; + int newKioskHeight = oldHeight + deltaHeight; - System.out.println("snapped to grid"); - System.out.println(oldTopX + " : " + oldTopY); - grid = new Grid(oldTopX, oldTopY); - grid.snapToGridKioskCoordinates(designArea); - oldTopX = grid.getX(); - oldTopY = grid.getY(); - System.out.println(oldTopX + " : " + oldTopY); - }*/ - kiosek.setTopX(oldTopX + deltaTopX); - kiosek.setTopY(oldTopY + deltaTopY); - kiosek.setWidth(oldWidth + deltaWidth); - kiosek.setHeight(oldHeight + deltaHeight); + boolean isTopXsnapped = false; + boolean isTopYsnapped = false; + boolean isWidthSnapped = false; + boolean isHeightSnapped = false; + if (isFirst) { + + Position.IsSnappedToGrid snap = newPosition.isSnappedToGrid(); + if (deltaTopX < 0) { + grid = new Grid(newKioskTopX, 0); + grid.snapToGridKioskCoordinates(designArea); + newKioskTopX = grid.getX(); + isTopXsnapped = true; + snap.setTopX(true); + } else if (deltaTopX > 0) { + grid = new Grid(newKioskTopX, 0); + grid.snapToGridKioskCoordinates1(designArea); + newKioskTopX = grid.getX(); + isTopXsnapped = true; + snap.setTopX(true); + } + + if (deltaTopY < 0) { + grid = new Grid(0, newKioskTopY); + grid.snapToGridKioskCoordinates(designArea); + newKioskTopY = grid.getY(); + isTopYsnapped = true; + snap.setTopY(true); + } else if (deltaTopY > 0) { + grid = new Grid(0, newKioskTopY); + grid.snapToGridKioskCoordinates(designArea); + newKioskTopY = grid.getY(); + isTopYsnapped = true; + snap.setTopY(true); + } + + if (addType == Layout.AddType.RESIZE) { + if (deltaWidth < 0) { + grid = new Grid(newKioskWidth, 0); + grid.snapToGridKioskCoordinates(designArea); + newKioskWidth = grid.getX(); + isWidthSnapped = true; + snap.setWidth(true); + } else if (deltaWidth > 0) { + grid = new Grid(newKioskWidth, 0); + grid.snapToGridKioskCoordinates1(designArea); + newKioskWidth = grid.getX(); + isWidthSnapped = true; + snap.setWidth(true); + } + + if (deltaHeight < 0) { + grid = new Grid(0, newKioskHeight); + grid.snapToGridKioskCoordinates(designArea); + newKioskHeight = grid.getY(); + isHeightSnapped = true; + snap.setHeight(true); + } else if (deltaHeight > 0) { + grid = new Grid(0, newKioskHeight); + grid.snapToGridKioskCoordinates(designArea); + newKioskHeight = grid.getY(); + isHeightSnapped = true; + snap.setHeight(true); + } + + } + newPosition.setSnappedToGrid(snap); + + } + + kiosk = new AbsoluteCoordinates(newKioskTopX, newKioskTopY, + newKioskWidth, newKioskHeight); + int WIDTH = getScreenResolution().getElvysWidth(); int HEIGHT = getScreenResolution().getElvysHeight(); - //System.out.println(kiosek.getTopX() + " : " + kiosek.getTopY() + " : " + kiosek.getWidth() + " : " + kiosek.getHeight()); - //System.out.println(kiosek.getTopX() + kiosek.getWidth() + " : " + kiosek.getHeight() + kiosek.getTopY()); - AbsoluteCoordinates kiosek1 = oldPosition - .changeCoordinatesToNotBeOutOfDesignArea(kiosek.getTopX(), - kiosek.getTopY(), kiosek.getWidth(), kiosek + AbsoluteCoordinates kiosk1 = oldPosition + .changeCoordinatesToNotBeOutOfDesignArea(kiosk.getTopX(), + kiosk.getTopY(), kiosk.getWidth(), kiosk .getHeight(), WIDTH, HEIGHT, addType, true, designArea); - //System.out.println(addType + " : " + WIDTH + " : " + HEIGHT); - //System.out.println(kiosek.getTopX() + " : " + kiosek.getTopY() + " : " + kiosek.getWidth() + " : " + kiosek.getHeight()); - isOutOf = !(kiosek.equals(kiosek1)); + isOutOf = !(kiosk.equals(kiosk1)); if (isOutOf) { return; } - newPosition.setElvys(kiosek1); + newPosition.setElvys(kiosk1); if (isSnappedToGrid) { - AbsoluteCoordinates monitor = newPosition.getMonitor(); - int newMonitorTopX = monitor.getTopX(); - if (deltaTopX < 0) { - newMonitorTopX -= monitorX; - } else if (deltaTopX > 0) { - newMonitorTopX += monitorX; + + if (isFirst) { + if (isTopXsnapped) { + Position snapPosition = newPosition.clone(); + snapPosition.setMonitorFromElvys(true); + + AbsoluteCoordinates monitor = newPosition.getMonitor(); + monitor.setTopX(snapPosition.getMonitor().getTopX()); + newPosition.setMonitor(monitor); + } + if (isTopYsnapped) { + Position snapPosition = newPosition.clone(); + snapPosition.setMonitorFromElvys(true); + + AbsoluteCoordinates monitor = newPosition.getMonitor(); + monitor.setTopY(snapPosition.getMonitor().getTopY()); + newPosition.setMonitor(monitor); + } + if (isWidthSnapped) { + Position snapPosition = newPosition.clone(); + snapPosition.setMonitorFromElvys(true); + + AbsoluteCoordinates monitor = newPosition.getMonitor(); + monitor.setWidth(snapPosition.getMonitor().getWidth()); + newPosition.setMonitor(monitor); + } + if (isHeightSnapped) { + Position snapPosition = newPosition.clone(); + snapPosition.setMonitorFromElvys(true); + + AbsoluteCoordinates monitor = newPosition.getMonitor(); + monitor.setHeight(snapPosition.getMonitor().getHeight()); + newPosition.setMonitor(monitor); + } } - int newMonitorTopY = monitor.getTopY(); - if (deltaTopY < 0) { - newMonitorTopY -= monitorY; - } else if (deltaTopY > 0) { - newMonitorTopY += monitorY; + + else { + AbsoluteCoordinates monitor = newPosition.getMonitor(); + + int newMonitorTopX = monitor.getTopX(); + if (deltaTopX < 0) { + newMonitorTopX -= monitorX; + } else if (deltaTopX > 0) { + newMonitorTopX += monitorX; + } + int newMonitorTopY = monitor.getTopY(); + if (deltaTopY < 0) { + newMonitorTopY -= monitorY; + } else if (deltaTopY > 0) { + newMonitorTopY += monitorY; + } + int newMonitorWidth = monitor.getWidth(); + if (deltaWidth < 0) { + newMonitorWidth -= monitorX; + } else if (deltaWidth > 0) { + newMonitorWidth += monitorX; + } + int newMonitorHeight = monitor.getHeight(); + if (deltaHeight < 0) { + newMonitorHeight -= monitorY; + } else if (deltaHeight > 0) { + newMonitorHeight += monitorY; + } + + WIDTH = getScreenResolution().getMonitorWidth(); + HEIGHT = getScreenResolution().getMonitorHeight(); + AbsoluteCoordinates newMonitor = new AbsoluteCoordinates( + newMonitorTopX, newMonitorTopY, newMonitorWidth, + newMonitorHeight); + newMonitor = oldPosition + .changeCoordinatesToNotBeOutOfDesignArea(newMonitor + .getTopX(), newMonitor.getTopY(), + newMonitor.getWidth(), newMonitor + .getHeight(), WIDTH, HEIGHT, + addType, false, designArea); + newPosition.setMonitor(newMonitor); } - int newMonitorWidth = monitor.getWidth(); - if (deltaWidth < 0) { - newMonitorWidth -= monitorX; - } else if (deltaWidth > 0) { - newMonitorWidth += monitorX; - } - int newMonitorHeight = monitor.getHeight(); - if (deltaHeight < 0) { - newMonitorHeight -= monitorY; - } else if (deltaHeight > 0) { - newMonitorHeight += monitorY; - } - WIDTH = getScreenResolution().getMonitorWidth(); - HEIGHT = getScreenResolution().getMonitorHeight(); - AbsoluteCoordinates newMonitor = new AbsoluteCoordinates( - newMonitorTopX, newMonitorTopY, newMonitorWidth, - newMonitorHeight); - newMonitor = oldPosition - .changeCoordinatesToNotBeOutOfDesignArea(newMonitor - .getTopX(), newMonitor.getTopY(), newMonitor - .getWidth(), newMonitor.getHeight(), WIDTH, - HEIGHT, addType, false, designArea); - newPosition.setMonitor(newMonitor); - } else { AbsoluteCoordinates monitor = newPosition.getMonitor().clone(); int oldMonitorTopX = monitor.getTopX(); @@ -270,7 +373,7 @@ monitor.setTopY(oldMonitorTopY + deltaMonitorTopY); monitor.setWidth(oldMonitorWidth + deltaMonitorWidth); newPosition.setMonitor(monitor); - + } else { @@ -319,11 +422,15 @@ if (deltaHeight < 0) { newPosition.setMonitorHeightFromElvysFloor(); } - - deltaMonitorTopX = newPosition.getMonitor().getTopX() - oldMonitorTopX; - deltaMonitorTopY = newPosition.getMonitor().getTopY() - oldMonitorTopY; - deltaMonitorWidth = newPosition.getMonitor().getWidth() - oldMonitorWidth; - deltaMonitorHeight = newPosition.getMonitor().getHeight() - oldMonitorHeight; + + deltaMonitorTopX = newPosition.getMonitor().getTopX() + - oldMonitorTopX; + deltaMonitorTopY = newPosition.getMonitor().getTopY() + - oldMonitorTopY; + deltaMonitorWidth = newPosition.getMonitor().getWidth() + - oldMonitorWidth; + deltaMonitorHeight = newPosition.getMonitor().getHeight() + - oldMonitorHeight; } } Modified: trunk/layouteditor/LayoutDesigner/src/applet/LayoutDesigner.java =================================================================== --- trunk/layouteditor/LayoutDesigner/src/applet/LayoutDesigner.java 2010-02-05 16:16:12 UTC (rev 1678) +++ trunk/layouteditor/LayoutDesigner/src/applet/LayoutDesigner.java 2010-02-08 08:05:07 UTC (rev 1679) @@ -13,7 +13,9 @@ import javax.swing.border.LineBorder; import javax.swing.JDialog; import javax.swing.JApplet; +//import netscape.javascript.*; + /** * LayoutDesigner is main applet class. Initializes individual components and * displays applet. @@ -136,9 +138,9 @@ if (isLocked) { new WarningDialog(new JFrame(), properties - .getProperty("warning.isLocked"), properties + .getProperty("warning.isLocked") + ServerSideContext.getInstance().getLockedUser(), properties .getProperty("warning.warning")); - openNewLayout(); + closeLayoutDesignerBrowserWindow(); } else { // opens new layout, if it is loaded from server if (layoutToOpen != null) { @@ -237,6 +239,14 @@ } /** + * Closes browser window with LayoutDesigner + */ + private void closeLayoutDesignerBrowserWindow() { + //JSObject win = (JSObject) JSObject.getWindow(this); + //win.eval("self.close();"); + } + + /** * Opens new empty layout */ private void openNewLayout() { Modified: trunk/layouteditor/LayoutDesigner/src/applet/MenuBar.java =================================================================== --- trunk/layouteditor/LayoutDesigner/src/applet/MenuBar.java 2010-02-05 16:16:12 UTC (rev 1678) +++ trunk/layouteditor/LayoutDesigner/src/applet/MenuBar.java 2010-02-08 08:05:07 UTC (rev 1679) @@ -294,6 +294,14 @@ CloseLayout closeDesignArea = new CloseLayout(tabbedPane, properties); closeDesignArea.closeActualLayout(tabbedPane.getActualDesignArea(), rootPane); + Layout layout = ServerSideContext.getInstance().getLayout(); + if (layout != null) { + try { + ServerSideContext.getInstance().unlockLayout(); + } catch (Exception e) { + e.printStackTrace(); + } + } } Modified: trunk/layouteditor/LayoutDesigner/src/applet/MovingObject.java =================================================================== --- trunk/layouteditor/LayoutDesigner/src/applet/MovingObject.java 2010-02-05 16:16:12 UTC (rev 1678) +++ trunk/layouteditor/LayoutDesigner/src/applet/MovingObject.java 2010-02-08 08:05:07 UTC (rev 1679) @@ -455,7 +455,12 @@ Position newDocument = new Position(position.getTabbedPane()); newDocument.setId(id); - newDocument.setSnappedToGrid(designArea.isSnapToGridEnabled()); + Position.IsSnappedToGrid snapped = newDocument.isSnappedToGrid(); + snapped.setHeight(designArea.isSnapToGridEnabled()); + snapped.setWidth(designArea.isSnapToGridEnabled()); + snapped.setTopX(designArea.isSnapToGridEnabled()); + snapped.setTopY(designArea.isSnapToGridEnabled()); + newDocument.setSnappedToGrid(snapped); AbsoluteCoordinates designAreaAbsoluteCoordinates = new AbsoluteCoordinates( monitorTopX, monitorTopY, monitorWidth, monitorHeight); newDocument.setMonitor(designAreaAbsoluteCoordinates); @@ -756,9 +761,12 @@ AbsoluteCoordinates designAreaAbsoluteCoordinates = new AbsoluteCoordinates( monitorTopX, monitorTopY, monitorWidth, monitorHeight); - - newPosition.setSnappedToGrid(designArea - .isSnapToGridEnabled()); + Position.IsSnappedToGrid snapped = newPosition.isSnappedToGrid(); + snapped.setHeight(designArea.isSnapToGridEnabled()); + snapped.setWidth(designArea.isSnapToGridEnabled()); + snapped.setTopX(designArea.isSnapToGridEnabled()); + snapped.setTopY(designArea.isSnapToGridEnabled()); + newPosition.setSnappedToGrid(snapped); newPosition.setMonitor(designAreaAbsoluteCoordinates); newPosition.setElvysFromMonitor( designAreaAbsoluteCoordinates, designArea Modified: trunk/layouteditor/LayoutDesigner/src/applet/Position.java =================================================================== --- trunk/layouteditor/LayoutDesigner/src/applet/Position.java 2010-02-05 16:16:12 UTC (rev 1678) +++ trunk/layouteditor/LayoutDesigner/src/applet/Position.java 2010-02-08 08:05:07 UTC (rev 1679) @@ -32,7 +32,7 @@ /** permitted document types for this position */ private TabbedPane tabbedPane; /** main pane with tabs with design areas */ - private boolean isSnappedToGrid; + private IsSnappedToGrid isSnappedToGrid; /** flag whatever this position was snapped to grid */ // constants @@ -40,6 +40,71 @@ /** min size of position on monitor */ + + /** + * Stores whatever topX, topY coordinate or width and height of this position is snapped to grid + */ + public class IsSnappedToGrid { + boolean isTopX; /** flag whatever topX is snapped to grid for this position */ + boolean isTopY; /** flag whatever topY is snapped to grid for this position */ + boolean isWidth; /** flag whatever width is snapped to grid for this position */ + boolean isHeight; /** flag whatever height is snapped to grid for this position */ + + /** + * Constructor of class IsSnappedToGrid + * @param isSnapped is snapped to set + */ + public IsSnappedToGrid(boolean isSnapped) { + this.isTopX = isSnapped; + this.isTopY = isSnapped; + this.isWidth = isSnapped; + this.isHeight = isSnapped; + } + + public boolean isTopX() { + return isTopX; + } + + public void setTopX(boolean isTopX) { + this.isTopX = isTopX; + } + + public boolean isTopY() { + return isTopY; + } + + public void setTopY(boolean isTopY) { + this.isTopY = isTopY; + } + + public boolean isWidth() { + return isWidth; + } + + public void setWidth(boolean isWidth) { + this.isWidth = isWidth; + } + + public boolean isHeight() { + return isHeight; + } + + public void setHeight(boolean isHeight) { + this.isHeight = isHeight; + } + + /** + * Clones this IsSnappedToGrid + */ + public IsSnappedToGrid clone() { + IsSnappedToGrid snap = new IsSnappedToGrid(false); + snap.isTopX = this.isTopX; + snap.isTopY = this.isTopY; + snap.isWidth = this.isWidth; + snap.isHeight = this.isHeight; + return snap; + } + } // constructors /** * Empty constructor of class Position @@ -51,7 +116,7 @@ this.id = 0; this.permittedDocumentTypes = new PermittedDocumentTypes(); this.isSelected = false; - this.isSnappedToGrid = false; + this.isSnappedToGrid = new IsSnappedToGrid(false); } @@ -73,7 +138,7 @@ this.permittedDocumentTypes = new PermittedDocumentTypes(tabbedPane.getAllTypesOfDocument()); } this.isSelected = false; - this.isSnappedToGrid = false; + this.isSnappedToGrid = new IsSnappedToGrid(false); } @@ -98,7 +163,7 @@ clone.elvys = elvys.clone(); clone.monitor = monitor.clone(); clone.permittedDocumentTypes = permittedDocumentTypes.clone(); - clone.isSnappedToGrid = isSnappedToGrid; + clone.isSnappedToGrid = isSnappedToGrid.clone(); return clone; } @@ -497,7 +562,7 @@ int height = (int) Math.round((double) elvys.getHeight() * monitorHeight / kiosekHeight); - if (isSnappedToGrid) { + if (isSnapToGrid) { DesignArea designArea = tabbedPane.getActualDesignArea(); Grid grid = new Grid(designArea); grid.snapMonitorToGrid(elvys.getTopX(), elvys.getTopY(), designArea @@ -1105,8 +1170,8 @@ int topX, int topY, int width, int height, int WIDTH, int HEIGHT, Layout.AddType addType, boolean isElvys, DesignArea designArea) { - isSnappedToGrid = designArea.isSnapToGridEnabled(); - if (isSnappedToGrid) { + boolean isSnapToGrid = designArea.isSnapToGridEnabled(); + if (isSnapToGrid) { Grid grid = new Grid(WIDTH, HEIGHT); if (isElvys) { @@ -1518,7 +1583,7 @@ * Gets whatever this position is snapped to grid * @return whatever this position is snapped to grid */ - public boolean isSnappedToGrid() { + public IsSnappedToGrid isSnappedToGrid() { return isSnappedToGrid; } @@ -1526,7 +1591,7 @@ * Sets whatever this position is snapped to grid * @param isSnappedToGrid is snapped to grid to set */ - public void setSnappedToGrid(boolean isSnappedToGrid) { + public void setSnappedToGrid(IsSnappedToGrid isSnappedToGrid) { this.isSnappedToGrid = isSnappedToGrid; } Modified: trunk/layouteditor/LayoutDesigner/src/applet/ServerSideContext.java =================================================================== --- trunk/layouteditor/LayoutDesigner/src/applet/ServerSideContext.java 2010-02-05 16:16:12 UTC (rev 1678) +++ trunk/layouteditor/LayoutDesigner/src/applet/ServerSideContext.java 2010-02-08 08:05:07 UTC (rev 1679) @@ -23,6 +23,7 @@ private Layout layout; /** opened layout - create new or edit */ private boolean isLocked; /** flag whatever this layout is locked during opening */ private boolean isLockedByMe; /** flag whatever this layout is locked during saving */ + private String lockedUser; /** name of user who has locked this layout */ // singleton variable private static ServerSideContext instance; /** instance of this class */ @@ -89,7 +90,7 @@ instance.host = "http://"; + hostAddr + ":" + port; // for debugging: - // instance.host = "http://localhost:8080/";; + //instance.host = "http://localhost:8080/";; } @@ -451,8 +452,9 @@ System.out.println("layout not opened"); isLocked = false; return null; - } else if (result.equals(IS_LOCKED)) { + } else if (result.substring(0, IS_LOCKED.length()).equals(IS_LOCKED)) { isLocked = true; + lockedUser = result.substring(IS_LOCKED.length()); return null; } else { ReadLayoutFromServer openFile = new ReadLayoutFromServer( @@ -593,4 +595,18 @@ this.layout = layout; } + /** + * @param lockedUser the lockedUser to set + */ + public void setLockedUser(String lockedUser) { + this.lockedUser = lockedUser; + } + + /** + * @return the lockedUser + */ + public String getLockedUser() { + return lockedUser; + } + }