tn5250j/src/org/tn5250j GuiGraphicBuffer.java,1.29,1.30 Screen5250.java,1.74,1.75 Gui5250.java,1.65,1.66
"Kenneth J. Pouncey" <[email protected]> Tue, 20 Jul 2004 20:17:06 +0000
| Newsgroups | gmane.comp.java.tn5250j.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/tn5250j/tn5250j/src/org/tn5250j
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20525/src/org/tn5250j
Modified Files:
GuiGraphicBuffer.java Screen5250.java Gui5250.java
Log Message:
Fix paint problem on screen resize
Index: Gui5250.java
===================================================================
RCS file: /cvsroot/tn5250j/tn5250j/src/org/tn5250j/Gui5250.java,v
retrieving revision 1.65
retrieving revision 1.66
diff -C2 -d -r1.65 -r1.66
*** Gui5250.java 18 Jul 2004 13:38:54 -0000 1.65
--- Gui5250.java 20 Jul 2004 20:17:03 -0000 1.66
***************
*** 800,805 ****
if (bi != null)
bi.resizeScreenArea(r.width, r.height);
! repaint();
! // screen.repaintScreen();
screen.setCursorActive(true);
--- 800,805 ----
if (bi != null)
bi.resizeScreenArea(r.width, r.height);
! // repaint();
! screen.repaintScreen();
screen.setCursorActive(true);
***************
*** 836,840 ****
protected void paintComponent(Graphics g) {
! log.debug("paint from screen");
if (bi == null) {
--- 836,840 ----
protected void paintComponent(Graphics g) {
! //log.info("paint from screen");
if (bi == null) {
Index: GuiGraphicBuffer.java
===================================================================
RCS file: /cvsroot/tn5250j/tn5250j/src/org/tn5250j/GuiGraphicBuffer.java,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -d -r1.29 -r1.30
*** GuiGraphicBuffer.java 18 Jul 2004 13:38:54 -0000 1.29
--- GuiGraphicBuffer.java 20 Jul 2004 20:17:03 -0000 1.30
***************
*** 215,219 ****
}
! drawOIA();
}
--- 215,222 ----
}
! //drawOIA();
! // screen.updateScreen();
! // gui.validate();
! // gui.repaint();
}
***************
*** 1887,1890 ****
--- 1890,1898 ----
}
+ public void onScreenSizeChanged(int rows, int cols) {
+ log.info("screen size change");
+ gui.resizeMe();
+ }
+
public void onScreenChanged(int which, int sr, int sc, int er, int ec) {
***************
*** 1904,1908 ****
screen.checkHotSpots();
! log.info("screen updated -> " + sr + ", " + sc + ", " + er + ", " + ec);
int rows = er - sr;
--- 1912,1916 ----
screen.checkHotSpots();
! //log.info("screen updated -> " + sr + ", " + sc + ", " + er + ", " + ec);
int rows = er - sr;
Index: Screen5250.java
===================================================================
RCS file: /cvsroot/tn5250j/tn5250j/src/org/tn5250j/Screen5250.java,v
retrieving revision 1.74
retrieving revision 1.75
diff -C2 -d -r1.74 -r1.75
*** Screen5250.java 18 Jul 2004 13:38:54 -0000 1.74
--- Screen5250.java 20 Jul 2004 20:17:03 -0000 1.75
***************
*** 186,189 ****
--- 186,192 ----
public final void setRowsCols(int rows, int cols) {
+ int oldRows = numRows;
+ int oldCols = numCols;
+
// default number of rows and columns
numRows = rows;
***************
*** 191,198 ****
lenScreen = numRows * numCols;
-
-
planes.setSize(rows);
}
--- 194,202 ----
lenScreen = numRows * numCols;
planes.setSize(rows);
+ if (oldRows != numRows || oldCols != numCols)
+ fireScreenSizeChanged();
+
}
***************
*** 4405,4408 ****
--- 4409,4428 ----
}
+ /**
+ * Notify all registered listeners of the onScreenSizeChanged event.
+ *
+ */
+ private void fireScreenSizeChanged() {
+
+ if (listeners != null) {
+ int size = listeners.size();
+ for (int i = 0; i < size; i++) {
+ ScreenListener target =
+ (ScreenListener)listeners.elementAt(i);
+ target.onScreenSizeChanged(numRows,numCols);
+ }
+ }
+ }
+
// /**
// * Notify all registered listeners of the onScreenChanged event.
***************
*** 4669,4673 ****
// updateDirty();
// }
! fireScreenChanged(1);
// restore statuses that were on the screen before resize
if (oia.getLevel() == ScreenOIA.OIA_LEVEL_INPUT_ERROR) {
--- 4689,4694 ----
// updateDirty();
// }
! //fireScreenChanged(1);
! updateDirty();
// restore statuses that were on the screen before resize
if (oia.getLevel() == ScreenOIA.OIA_LEVEL_INPUT_ERROR) {
-------------------------------------------------------
This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click