tn5250j/src/org/tn5250j SessionPopup.java,1.9,1.10 GuiGraphicBuffer.java,1.17,1.18 tnvt.java,1.44,1.45 Screen5250.java,1.61,1.62 Gui5250.java,1.61,1.62
"Kenneth J. Pouncey" <[email protected]> Mon, 05 Jul 2004 17:01:11 +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-serv24365/src/org/tn5250j
Modified Files:
SessionPopup.java GuiGraphicBuffer.java tnvt.java
Screen5250.java Gui5250.java
Log Message:
First part of headless the OIA
Index: SessionPopup.java
===================================================================
RCS file: /cvsroot/tn5250j/tn5250j/src/org/tn5250j/SessionPopup.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** SessionPopup.java 26 Jun 2004 05:44:03 -0000 1.9
--- SessionPopup.java 5 Jul 2004 17:00:47 -0000 1.10
***************
*** 188,192 ****
createKeyboardItem(kbMenu,MNEMONIC_SYSREQ);
! if (screen.isMessageWait() &&
OptionAccessFactory.getInstance().isValidOption(MNEMONIC_DISP_MESSAGES)) {
--- 188,192 ----
createKeyboardItem(kbMenu,MNEMONIC_SYSREQ);
! if (screen.getOIA().isMessageWait() &&
OptionAccessFactory.getInstance().isValidOption(MNEMONIC_DISP_MESSAGES)) {
***************
*** 225,229 ****
createShortCutItems(kbMenu);
! if (screen.isMessageWait() &&
OptionAccessFactory.getInstance().isValidOption(MNEMONIC_DISP_MESSAGES)) {
--- 225,229 ----
createShortCutItems(kbMenu);
! if (screen.getOIA().isMessageWait() &&
OptionAccessFactory.getInstance().isValidOption(MNEMONIC_DISP_MESSAGES)) {
Index: Gui5250.java
===================================================================
RCS file: /cvsroot/tn5250j/tn5250j/src/org/tn5250j/Gui5250.java,v
retrieving revision 1.61
retrieving revision 1.62
diff -C2 -d -r1.61 -r1.62
*** Gui5250.java 30 Jun 2004 06:18:56 -0000 1.61
--- Gui5250.java 5 Jul 2004 17:01:07 -0000 1.62
***************
*** 44,47 ****
--- 44,48 ----
import org.tn5250j.event.SessionConfigListener;
import org.tn5250j.event.SessionConfigEvent;
+ import org.tn5250j.event.ScreenOIAListener;
import org.tn5250j.interfaces.SessionScrollerInterface;
import org.tn5250j.keyboard.KeyboardHandler;
***************
*** 79,82 ****
--- 80,84 ----
private TN5250jLogger log = TN5250jLogFactory.getLogger(this.getClass());
private TN5250jLogger graphics = TN5250jLogFactory.getLogger("GFX");
+
public Gui5250 () {
***************
*** 638,644 ****
macroRunning = mr;
if (macroRunning)
! screen.setSRIndicatorOn();
else
! screen.setSRIndicatorOff();
stopMacro = !macroRunning;
--- 640,646 ----
macroRunning = mr;
if (macroRunning)
! screen.getOIA().setScriptActive(true);
else
! screen.getOIA().setScriptActive(false);
stopMacro = !macroRunning;
Index: tnvt.java
===================================================================
RCS file: /cvsroot/tn5250j/tn5250j/src/org/tn5250j/tnvt.java,v
retrieving revision 1.44
retrieving revision 1.45
diff -C2 -d -r1.44 -r1.45
*** tnvt.java 5 Jul 2004 08:54:38 -0000 1.44
--- tnvt.java 5 Jul 2004 17:01:03 -0000 1.45
***************
*** 3,28 ****
/**
* Title: tn5250J Copyright: Copyright (c) 2001 Company:
! *
* @author Kenneth J. Pouncey
* @version 0.5
! *
* Description:
! *
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License as published by the Free Software
* Foundation; either version 2, or (at your option) any later version.
! *
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
* details.
! *
* You should have received a copy of the GNU General Public License along with
* this software; see the file COPYING. If not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
! *
*/
! package org.tn5250j;
!
import java.awt.BorderLayout;
import java.awt.Dimension;
--- 3,28 ----
/**
* Title: tn5250J Copyright: Copyright (c) 2001 Company:
! *
* @author Kenneth J. Pouncey
* @version 0.5
! *
* Description:
! *
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License as published by the Free Software
* Foundation; either version 2, or (at your option) any later version.
! *
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
* details.
! *
* You should have received a copy of the GNU General Public License along with
* this software; see the file COPYING. If not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
! *
*/
! package org.tn5250j;
!
import java.awt.BorderLayout;
import java.awt.Dimension;
***************
*** 582,587 ****
/**
* Help request -
! *
! *
* See notes inside method
*/
--- 582,587 ----
/**
* Help request -
! *
! *
* See notes inside method
*/
***************
*** 609,614 ****
/**
* Attention Key -
! *
! *
* See notes inside method
*/
--- 609,614 ----
/**
* Attention Key -
! *
! *
* See notes inside method
*/
***************
*** 643,649 ****
* System request - taken from the rfc1205 - 5250 Telnet interface section
* 4.3
! *
* See notes inside method
! *
* @param sr -
* system request option
--- 643,649 ----
* System request - taken from the rfc1205 - 5250 Telnet interface section
* 4.3
! *
* See notes inside method
! *
* @param sr -
* system request option
***************
*** 766,770 ****
* Cancel Invite - taken from the rfc1205 - 5250 Telnet interface section
* 4.3
! *
* See notes inside method
*/
--- 766,770 ----
* Cancel Invite - taken from the rfc1205 - 5250 Telnet interface section
* 4.3
! *
* See notes inside method
*/
***************
*** 927,934 ****
/**
* Activate or deactivate the command scanning behaviour.
! *
* @param scan
* if true, scanning is enabled; disabled otherwise.
! *
* @see scan4Cmd()
*/
--- 927,934 ----
/**
* Activate or deactivate the command scanning behaviour.
! *
* @param scan
* if true, scanning is enabled; disabled otherwise.
! *
* @see scan4Cmd()
*/
***************
*** 940,944 ****
/**
* Checks whether command scanning is enabled.
! *
* @return true is command scanning is enabled; false otherwise.
*/
--- 940,944 ----
/**
* Checks whether command scanning is enabled.
! *
* @return true is command scanning is enabled; false otherwise.
*/
***************
*** 978,982 ****
* encountered white space, separating the command from the rest of the
* screen, is passed as starting index.
! *
* Note that the character at the starting position can potentially be a
* white space itself. The starting position in <code>execCommand</code>
--- 978,982 ----
* encountered white space, separating the command from the rest of the
* screen, is passed as starting index.
! *
* Note that the character at the starting position can potentially be a
* white space itself. The starting position in <code>execCommand</code>
***************
*** 985,989 ****
* indicate whether the tnvt should trigger a repaint or not. This would
* allow the flashing of command sequences without them becoming visible.
! *
* <ul>
* <li><strong>PRE </strong> The screen character at position
--- 985,989 ----
* indicate whether the tnvt should trigger a repaint or not. This would
* allow the flashing of command sequences without them becoming visible.
! *
* <ul>
* <li><strong>PRE </strong> The screen character at position
***************
*** 1110,1114 ****
case 11:
log.debug("Turn on message light");
! screen52.setMessageLightOn();
screen52.setCursorActive(true);
--- 1110,1114 ----
case 11:
log.debug("Turn on message light");
! screen52.getOIA().setMessageLightOn();
screen52.setCursorActive(true);
***************
*** 1116,1120 ****
case 12:
log.debug("Turn off Message light");
! screen52.setMessageLightOff();
screen52.setCursorActive(true);
--- 1116,1120 ----
case 12:
log.debug("Turn off Message light");
! screen52.getOIA().setMessageLightOff();
screen52.setCursorActive(true);
***************
*** 1157,1161 ****
}
! if (cursorOn && !screen52.isKeyboardLocked()) {
screen52.setCursorActive(true);
cursorOn = false;
--- 1157,1161 ----
}
! if (cursorOn && !screen52.getOIA().isKeyBoardLocked()) {
screen52.setCursorActive(true);
cursorOn = false;
***************
*** 1174,1178 ****
log.debug(" Pending unlock " + pendingUnlock);
log.debug(" Status Error " + screen52.isStatusErrorCode());
! log.debug(" Keyboard Locked " + screen52.isKeyboardLocked());
log.debug(" Cursor On " + cursorOn);
log.debug(" Cursor Active " + screen52.cursorActive);
--- 1174,1178 ----
log.debug(" Pending unlock " + pendingUnlock);
log.debug(" Status Error " + screen52.isStatusErrorCode());
! log.debug(" Keyboard Locked " + screen52.getOIA().isKeyBoardLocked());
log.debug(" Cursor On " + cursorOn);
log.debug(" Cursor Active " + screen52.cursorActive);
***************
*** 1385,1389 ****
/**
! *
* @throws IOException
*/
--- 1385,1389 ----
/**
! *
* @throws IOException
*/
***************
*** 1653,1661 ****
/**
* This routine handles sending negative responses back to the host.
! *
* You can find a description of the types of responses to be sent back by
* looking at section 12.4 of the 5250 Functions Reference manual
! *
! *
* @param cat
* @param modifier
--- 1653,1661 ----
/**
* This routine handles sending negative responses back to the host.
! *
* You can find a description of the types of responses to be sent back by
* looking at section 12.4 of the 5250 Functions Reference manual
! *
! *
* @param cat
* @param modifier
***************
*** 1663,1667 ****
* @param uByte2
* @param from
! *
*/
protected void sendNegResponse(int cat, int modifier, int uByte1,
--- 1663,1667 ----
* @param uByte2
* @param from
! *
*/
protected void sendNegResponse(int cat, int modifier, int uByte1,
***************
*** 2152,2163 ****
}
if ((byte1 & 0x02) == 0x02) {
! screen52.setMessageLightOff();
}
if ((byte1 & 0x01) == 0x01) {
! screen52.setMessageLightOn();
}
if ((byte1 & 0x01) == 0x01 && (byte1 & 0x02) == 0x02) {
! screen52.setMessageLightOn();
}
--- 2152,2163 ----
}
if ((byte1 & 0x02) == 0x02) {
! screen52.getOIA().setMessageLightOff();
}
if ((byte1 & 0x01) == 0x01) {
! screen52.getOIA().setMessageLightOn();
}
if ((byte1 & 0x01) == 0x01 && (byte1 & 0x02) == 0x02) {
! screen52.getOIA().setMessageLightOn();
}
***************
*** 2816,2829 ****
/**
* Method sendQueryResponse
! *
* The query command is used to obtain information about the capabilities of
* the 5250 display.
! *
* The Query command must follow an Escape (0x04) and Write Structured Field
* command (0xF3).
! *
* This section is modeled after the rfc1205 - 5250 Telnet Interface section
* 5.3
! *
* @throws IOException
*/
--- 2816,2829 ----
/**
* Method sendQueryResponse
! *
* The query command is used to obtain information about the capabilities of
* the 5250 display.
! *
* The Query command must follow an Escape (0x04) and Write Structured Field
* command (0xF3).
! *
* This section is modeled after the rfc1205 - 5250 Telnet Interface section
* 5.3
! *
* @throws IOException
*/
***************
*** 2935,2943 ****
}
! protected final boolean negotiate(byte abyte0[]) throws IOException {
! int i = 0;
! // from server negotiations
if(abyte0[i] == IAC) { // -1
--- 2935,2943 ----
}
! protected final boolean negotiate(byte abyte0[]) throws IOException {
! int i = 0;
! // from server negotiations
if(abyte0[i] == IAC) { // -1
***************
*** 2946,2955 ****
switch(abyte0[i++]) {
! // we will not worry about what it WONT do
! case WONT: // -4
! default:
! break;
! case DO: //-3
// not sure why but since moving to V5R2 we are receiving a
--- 2946,2955 ----
switch(abyte0[i++]) {
! // we will not worry about what it WONT do
! case WONT: // -4
! default:
! break;
! case DO: //-3
// not sure why but since moving to V5R2 we are receiving a
***************
*** 2959,3095 ****
if (i < abyte0.length) {
switch(abyte0[i]) {
! case TERMINAL_TYPE: // 24
! baosp.write(IAC);
! baosp.write(WILL);
! baosp.write(TERMINAL_TYPE);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! case OPT_END_OF_RECORD: // 25
! baosp.write(IAC);
! baosp.write(WILL);
! baosp.write(OPT_END_OF_RECORD);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! case TRANSMIT_BINARY: // 0
! baosp.write(IAC);
! baosp.write(WILL);
! baosp.write(TRANSMIT_BINARY);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! case TIMING_MARK: // 6 rfc860
// System.out.println("Timing Mark Received and notifying " +
! // "the server that we will not do it");
! baosp.write(IAC);
! baosp.write(WONT);
! baosp.write(TIMING_MARK);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! case NEW_ENVIRONMENT: // 39 rfc1572
! if (devName == null && user == null) {
! baosp.write(IAC);
! baosp.write(WONT);
! baosp.write(NEW_ENVIRONMENT);
! writeByte(baosp.toByteArray());
! baosp.reset();
}
else {
! baosp.write(IAC);
! baosp.write(WILL);
! baosp.write(NEW_ENVIRONMENT);
! writeByte(baosp.toByteArray());
! baosp.reset();
! }
! break;
! default: // every thing else we will not do at this time
! baosp.write(IAC);
! baosp.write(WONT);
! baosp.write(abyte0[i]); // either
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! }
}
! i++;
! break;
! case WILL:
switch(abyte0[i]) {
! case OPT_END_OF_RECORD: // 25
! baosp.write(IAC);
! baosp.write(DO);
! baosp.write(OPT_END_OF_RECORD);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! case TRANSMIT_BINARY: // '\0'
! baosp.write(IAC);
! baosp.write(DO);
! baosp.write(TRANSMIT_BINARY);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! }
! i++;
! break;
! case SB: // -6
if(abyte0[i] == NEW_ENVIRONMENT && abyte0[i + 1] == 1) {
! negNewEnvironment();
while (++i < abyte0.length && abyte0[i + 1] != IAC);
! }
if(abyte0[i] == TERMINAL_TYPE && abyte0[i + 1] == 1) {
! baosp.write(IAC);
! baosp.write(SB);
! baosp.write(TERMINAL_TYPE);
! baosp.write(QUAL_IS);
if(!support132)
! baosp.write("IBM-3179-2".getBytes());
! else
! baosp.write("IBM-3477-FC".getBytes());
! baosp.write(IAC);
! baosp.write(SE);
! writeByte(baosp.toByteArray());
! baosp.reset();
! i++;
! }
! i++;
! break;
! }
! return true;
}
else {
! return false;
! }
! }
/**
* Negotiate new environment string for device name
! *
* @throws IOException
*/
--- 2959,3095 ----
if (i < abyte0.length) {
switch(abyte0[i]) {
! case TERMINAL_TYPE: // 24
! baosp.write(IAC);
! baosp.write(WILL);
! baosp.write(TERMINAL_TYPE);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! case OPT_END_OF_RECORD: // 25
! baosp.write(IAC);
! baosp.write(WILL);
! baosp.write(OPT_END_OF_RECORD);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! case TRANSMIT_BINARY: // 0
! baosp.write(IAC);
! baosp.write(WILL);
! baosp.write(TRANSMIT_BINARY);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! case TIMING_MARK: // 6 rfc860
// System.out.println("Timing Mark Received and notifying " +
! // "the server that we will not do it");
! baosp.write(IAC);
! baosp.write(WONT);
! baosp.write(TIMING_MARK);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! case NEW_ENVIRONMENT: // 39 rfc1572
! if (devName == null && user == null) {
! baosp.write(IAC);
! baosp.write(WONT);
! baosp.write(NEW_ENVIRONMENT);
! writeByte(baosp.toByteArray());
! baosp.reset();
}
else {
! baosp.write(IAC);
! baosp.write(WILL);
! baosp.write(NEW_ENVIRONMENT);
! writeByte(baosp.toByteArray());
! baosp.reset();
! }
! break;
! default: // every thing else we will not do at this time
! baosp.write(IAC);
! baosp.write(WONT);
! baosp.write(abyte0[i]); // either
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! }
}
! i++;
! break;
! case WILL:
switch(abyte0[i]) {
! case OPT_END_OF_RECORD: // 25
! baosp.write(IAC);
! baosp.write(DO);
! baosp.write(OPT_END_OF_RECORD);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! case TRANSMIT_BINARY: // '\0'
! baosp.write(IAC);
! baosp.write(DO);
! baosp.write(TRANSMIT_BINARY);
! writeByte(baosp.toByteArray());
! baosp.reset();
! break;
! }
! i++;
! break;
! case SB: // -6
if(abyte0[i] == NEW_ENVIRONMENT && abyte0[i + 1] == 1) {
! negNewEnvironment();
while (++i < abyte0.length && abyte0[i + 1] != IAC);
! }
if(abyte0[i] == TERMINAL_TYPE && abyte0[i + 1] == 1) {
! baosp.write(IAC);
! baosp.write(SB);
! baosp.write(TERMINAL_TYPE);
! baosp.write(QUAL_IS);
if(!support132)
! baosp.write("IBM-3179-2".getBytes());
! else
! baosp.write("IBM-3477-FC".getBytes());
! baosp.write(IAC);
! baosp.write(SE);
! writeByte(baosp.toByteArray());
! baosp.reset();
! i++;
! }
! i++;
! break;
! }
! return true;
}
else {
! return false;
! }
! }
/**
* Negotiate new environment string for device name
! *
* @throws IOException
*/
***************
*** 3171,3175 ****
* unsuccessful attempt a sequential number is appended until we find one or
* the controller says no way.
! *
* @return String
*/
--- 3171,3175 ----
* unsuccessful attempt a sequential number is appended until we find one or
* the controller says no way.
! *
* @return String
*/
Index: GuiGraphicBuffer.java
===================================================================
RCS file: /cvsroot/tn5250j/tn5250j/src/org/tn5250j/GuiGraphicBuffer.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** GuiGraphicBuffer.java 30 Jun 2004 06:18:56 -0000 1.17
--- GuiGraphicBuffer.java 5 Jul 2004 17:01:03 -0000 1.18
***************
*** 35,41 ****
import java.awt.font.*;
import org.tn5250j.tools.logging.*;
! public class GuiGraphicBuffer {
private BufferedImage bi;
--- 35,42 ----
import java.awt.font.*;
+ import org.tn5250j.event.ScreenOIAListener;
import org.tn5250j.tools.logging.*;
! public class GuiGraphicBuffer implements ScreenOIAListener {
private BufferedImage bi;
***************
*** 67,75 ****
private boolean resized = false;
private boolean antialiased;
!
private TN5250jLogger log = TN5250jLogFactory.getLogger ("GFX");
-
- public GuiGraphicBuffer () {
tArea = new Rectangle2D.Float();
cArea = new Rectangle2D.Float();
--- 68,80 ----
private boolean resized = false;
private boolean antialiased;
!
! private Screen5250 screen;
!
private TN5250jLogger log = TN5250jLogFactory.getLogger ("GFX");
+ public GuiGraphicBuffer (Screen5250 screen) {
+
+ this.screen = screen;
+ screen.getOIA().addOIAListener(this);
tArea = new Rectangle2D.Float();
cArea = new Rectangle2D.Float();
***************
*** 511,514 ****
--- 516,654 ----
}
+ // public void setStatus(byte attr,byte value,String s) {
+ public void setStatus(ScreenOIA oia) {
+
+ int attr = oia.getLevel();
+ int value = oia.getInputInhibited();
+ String s = oia.getInhibitedText();
+ Graphics2D g2d = getWritingArea(screen.font);
+
+ if (g2d == null)
+ return;
+
+ try {
+ g2d.setColor(screen.colorBg);
+ g2d.fill(sArea);
+
+ float Y = ((int)sArea.getY() + screen.fmHeight)- (screen.lm.getLeading() + screen.lm.getDescent());
+
+ switch (attr) {
+
+ // public static final int OIA_LEVEL_INPUT_INHIBITED = 1;
+
+ // case STATUS_SYSTEM:
+ case OIA_LEVEL_INPUT_INHIBITED:
+ case OIA_LEVEL_NOT_INHIBITED:
+ if (value == oia.INPUTINHIBITED_SYSTEM_WAIT) {
+ g2d.setColor(screen.colorWhite);
+
+ if (s != null)
+ g2d.drawString(s,(float)sArea.getX(),Y);
+ else
+ g2d.drawString(xSystem,(float)sArea.getX(),Y);
+ }
+ break;
+ // case STATUS_ERROR_CODE:
+ case OIA_LEVEL_INPUT_ERROR:
+ if (value == oia.INPUTINHIBITED_SYSTEM_WAIT) {
+ g2d.setColor(screen.colorRed);
+
+ if (s != null)
+ g2d.drawString(s,(float)sArea.getX(),Y);
+ else
+ g2d.drawString(xError,(float)sArea.getX(),Y);
+
+ }
+ break;
+
+ }
+ g2d.dispose();
+ }
+ catch (Exception e) {
+
+ log.warn(" gui graphics setStatus " + e.getMessage());
+
+ }
+ }
+
+ // OIA_LEVEL
+ public static final int OIA_LEVEL_INPUT_INHIBITED = 1;
+ public static final int OIA_LEVEL_NOT_INHIBITED = 2;
+ public static final int OIA_LEVEL_MESSAGE_LIGHT_ON = 3;
+ public static final int OIA_LEVEL_MESSAGE_LIGHT_OFF = 4;
+ public static final int OIA_LEVEL_AUDIBLE_BELL = 5;
+ public static final int OIA_LEVEL_INSERT_MODE = 6;
+ public static final int OIA_LEVEL_KEYBOARD = 7;
+ public static final int OIA_LEVEL_CLEAR_SCREEN = 8;
+ public static final int OIA_LEVEL_SCREEN_SIZE = 9;
+ public static final int OIA_LEVEL_INPUT_ERROR = 10;
+ public static final int OIA_LEVEL_KEYS_BUFFERED = 11;
+ public static final int OIA_LEVEL_SCRIPT = 12;
+
+ public void onOIAChanged(ScreenOIA changedOIA) {
+
+ switch (changedOIA.getLevel()) {
+
+ case OIA_LEVEL_KEYS_BUFFERED:
+ if (changedOIA.isKeysBuffered()) {
+ Graphics2D g2d = getWritingArea(screen.font);
+ float Y = (screen.fmHeight * (screen.getRows() + 2))
+ - (screen.lm.getLeading() + screen.lm.getDescent());
+ g2d.setColor(screen.colorYellow);
+ g2d.drawString("KB", (float) kbArea.getX(), Y);
+ screen.updateImage(kbArea.getBounds());
+ g2d.dispose();
+ }
+ else {
+
+ Graphics2D g2d = getWritingArea(screen.font);
+
+ g2d.setColor(screen.colorBg);
+ g2d.fill(kbArea);
+ screen.updateImage(kbArea.getBounds());
+ g2d.dispose();
+
+
+ }
+ break;
+ case OIA_LEVEL_MESSAGE_LIGHT_OFF:
+ Graphics2D g2d = getWritingArea(screen.font);
+
+ g2d.setColor(screen.colorBg);
+ g2d.fill(mArea);
+ screen.updateImage(mArea.getBounds());
+ g2d.dispose();
+ break;
+ case OIA_LEVEL_MESSAGE_LIGHT_ON:
+ g2d = getWritingArea(screen.font);
+ float Y = (screen.fmHeight * (screen.getRows() + 2))
+ - (screen.lm.getLeading() + screen.lm.getDescent());
+ g2d.setColor(screen.colorBlue);
+ g2d.drawString("MW", (float) mArea.getX(), Y);
+ screen.updateImage(mArea.getBounds());
+ g2d.dispose();
+ break;
+ case OIA_LEVEL_SCRIPT:
+ if (changedOIA.isScriptActive()) {
+ drawScriptRunning(screen.colorGreen);
+ screen.updateImage(scriptArea.getBounds());
+ }
+ else {
+ eraseScriptRunning(screen.colorBg);
+ screen.updateImage(scriptArea.getBounds());
+
+ }
+ break;
+ case OIA_LEVEL_INPUT_INHIBITED:
+ case OIA_LEVEL_NOT_INHIBITED:
+ setStatus(changedOIA);
+ break;
+ // draw the status information
+ // bi.setStatus(attr, value, s, fmWidth, fmHeight, lm, font, colorBg,
+ // colorRed, colorWhite);
+
+ }
+ }
+
/**
* get the
Index: Screen5250.java
===================================================================
RCS file: /cvsroot/tn5250j/tn5250j/src/org/tn5250j/Screen5250.java,v
retrieving revision 1.61
retrieving revision 1.62
diff -C2 -d -r1.61 -r1.62
*** Screen5250.java 2 Jul 2004 13:52:07 -0000 1.61
--- Screen5250.java 5 Jul 2004 17:01:06 -0000 1.62
***************
*** 1,4 ****
/**
! *
* <p>
* Title: Screen5250.jar
--- 1,4 ----
/**
! *
* <p>
* Title: Screen5250.jar
***************
[...2028 lines suppressed...]
public final Dimension getPreferredSize() {
***************
*** 5077,5084 ****
/**
! *
* This routine is responsible for setting up a PrinterJob on this component
* and initiating the print session.
! *
*/
public final void printMe() {
--- 4904,4911 ----
/**
! *
* This routine is responsible for setting up a PrinterJob on this component
* and initiating the print session.
! *
*/
public final void printMe() {
-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 -
digital self defense, top technical experts, no vendor pitches,
unmatched networking opportunities. Visit www.blackhat.com