home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Dimension;
- import java.awt.Event;
- import java.awt.Font;
- import java.awt.Graphics;
- import java.awt.Image;
-
- public class OCdgImgNav extends OCdgImgSub {
- private String m_msg = "";
- private int m_valign;
- private int m_halign;
- private int m_msgx;
- private int m_msgy;
- private int m_msg_height;
- private int m_msg_width;
- private Font m_font;
- private int m_xoffset;
- private int m_b_thick;
- private Color m_b_color;
- private Color m_msg_textcolor;
- private Color m_msg_bgcolor;
- private String[] m_cur_msg;
- private Color[] m_cur_msg_textcolor;
- private Color[] m_cur_msg_bgcolor;
- private Color[] m_cur_b_color;
- private int[] m_cur_b_thick;
- private int[] m_cur_valign;
- private int[] m_cur_halign;
- private Font[] m_cur_font;
- Image msgbox;
- Graphics g_msgbox;
- private boolean movingBox;
-
- public void reDraw() {
- super.reDraw();
- super.g_off.drawImage(this.msgbox, this.m_msgx, this.m_msgy, this);
- ((OCdg)this).drawAppOff();
- ((OCdg)this).paintIt();
- }
-
- OCdgImgNav(APInfo var1) {
- super(var1);
- }
-
- public void DrawApplet() {
- super.DrawApplet();
- if (this.m_msg_height > 0 && this.m_msg_width > 0) {
- this.msgbox = ((Component)this).createImage(this.m_msg_width, this.m_msg_height);
- this.g_msgbox = this.msgbox.getGraphics();
- Dimension var1 = new Dimension(this.m_msg_width, this.m_msg_height);
- if (super.manip_image > -1) {
- int var2 = super.manip_image;
- this.g_msgbox.setColor(this.m_cur_msg_bgcolor[var2]);
- this.g_msgbox.fillRect(0, 0, this.m_msg_width, this.m_msg_height);
- ACutila.drawTextOverImage(this.g_msgbox, var1, this.m_cur_msg[var2], this.m_cur_font[var2], this.m_cur_msg_textcolor[var2], this.m_xoffset, this.m_cur_valign[var2], this.m_cur_halign[var2], this.m_cur_b_color[var2], this.m_cur_b_thick[var2], false);
- } else {
- this.g_msgbox.setColor(this.m_msg_bgcolor);
- this.g_msgbox.fillRect(0, 0, this.m_msg_width, this.m_msg_height);
- ACutila.drawTextOverImage(this.g_msgbox, var1, this.m_msg, this.m_font, this.m_msg_textcolor, this.m_xoffset, this.m_valign, this.m_halign, this.m_b_color, this.m_b_thick, false);
- }
-
- super.g_off.drawImage(this.msgbox, this.m_msgx, this.m_msgy, this);
- }
-
- }
-
- public boolean mouseUp(Event var1, int var2, int var3) {
- if (this.movingBox) {
- super.the_e.id = 9213;
- super.the_e.arg = (new Integer(this.m_msgx)).toString() + "," + (new Integer(this.m_msgy)).toString();
- super.postEvent(super.the_e);
- this.movingBox = false;
- } else {
- super.mouseUp(var1, var2, var3);
- }
-
- return true;
- }
-
- public void initDefault() {
- String var1 = ((OCdg)this).getParameterDefault("msg");
- if (var1 != null && !var1.equalsIgnoreCase("<none>")) {
- this.m_msg = var1;
- } else {
- this.m_msg = "";
- }
-
- var1 = ((OCdg)this).getParameterDefault("msgvalign");
- if (var1 != null) {
- this.m_valign = this.getVAlignValue(var1);
- }
-
- var1 = ((OCdg)this).getParameterDefault("msghalign");
- if (var1 != null) {
- this.m_halign = this.getHAlignValue(var1);
- }
-
- var1 = ((OCdg)this).getParameterDefault("msgxy");
- if (var1 != null) {
- int[] var2 = occcord.getIntValues(var1, ",", 2);
- if (var2 != null) {
- this.m_msgx = var2[0];
- this.m_msgy = var2[1];
- }
- }
-
- var1 = ((OCdg)this).getParameterDefault("msgheight");
- if (var1 != null) {
- this.m_msg_height = Integer.parseInt(var1);
- }
-
- var1 = ((OCdg)this).getParameterDefault("msgwidth");
- if (var1 != null) {
- this.m_msg_width = Integer.parseInt(var1);
- }
-
- var1 = ((OCdg)this).getParameterDefault("msgfont");
- if (var1 != null) {
- this.m_font = ocfontc.getFontSD(var1, ",");
- } else {
- this.m_font = new Font("Helvetica", 0, 12);
- }
-
- var1 = ((OCdg)this).getParameterDefault("msglrmargin");
- if (var1 != null) {
- this.m_xoffset = Integer.parseInt(var1);
- }
-
- var1 = ((OCdg)this).getParameterDefault("msgborderthickness");
- if (var1 != null) {
- this.m_b_thick = Integer.parseInt(var1);
- }
-
- var1 = ((OCdg)this).getParameterDefault("msgbordercolor");
- if (var1 != null) {
- this.m_b_color = occcolor.ConvertColor(var1);
- }
-
- var1 = ((OCdg)this).getParameterDefault("msgtextcolor");
- if (var1 != null) {
- this.m_msg_textcolor = occcolor.ConvertColor(var1);
- }
-
- var1 = ((OCdg)this).getParameterDefault("msgbgcolor");
- if (var1 != null) {
- this.m_msg_bgcolor = occcolor.ConvertColor(var1);
- }
-
- super.initDefault();
- }
-
- private int getHAlignValue(String var1) {
- if (var1.equalsIgnoreCase("right")) {
- return 2;
- } else {
- return var1.equalsIgnoreCase("center") ? 1 : 0;
- }
- }
-
- private int getVAlignValue(String var1) {
- if (var1.equalsIgnoreCase("bottom")) {
- return 2;
- } else {
- return var1.equalsIgnoreCase("center") ? 1 : 0;
- }
- }
-
- public void initSpecifics() {
- boolean var2 = false;
- super.num_images = super.spe_pv.size();
- this.m_cur_msg = new String[super.num_images];
- this.m_cur_msg_textcolor = new Color[super.num_images];
- this.m_cur_msg_bgcolor = new Color[super.num_images];
- this.m_cur_b_color = new Color[super.num_images];
- this.m_cur_b_thick = new int[super.num_images];
- this.m_cur_valign = new int[super.num_images];
- this.m_cur_halign = new int[super.num_images];
- this.m_cur_font = new Font[super.num_images];
-
- for(int var10 = 0; var10 < super.num_images; ++var10) {
- String var1 = ((OCdg)this).getParameterSpecific("msg", var10);
- if (var1 != null && !var1.equalsIgnoreCase("<none>")) {
- this.m_cur_msg[var10] = new String(var1);
- } else {
- this.m_cur_msg[var10] = this.m_msg;
- }
-
- var1 = ((OCdg)this).getParameterSpecific("msgtextcolor", var10);
- if (var1 != null) {
- this.m_cur_msg_textcolor[var10] = occcolor.ConvertColor(var1);
- } else {
- this.m_cur_msg_textcolor[var10] = this.m_msg_textcolor;
- }
-
- var1 = ((OCdg)this).getParameterSpecific("msgbgcolor", var10);
- if (var1 != null) {
- this.m_cur_msg_bgcolor[var10] = occcolor.ConvertColor(var1);
- } else {
- this.m_cur_msg_bgcolor[var10] = this.m_msg_bgcolor;
- }
-
- var1 = ((OCdg)this).getParameterSpecific("msgbordercolor", var10);
- if (var1 != null) {
- this.m_cur_b_color[var10] = occcolor.ConvertColor(var1);
- } else {
- this.m_cur_b_color[var10] = this.m_b_color;
- }
-
- var1 = ((OCdg)this).getParameterSpecific("msgborderthickness", var10);
- if (var1 != null) {
- this.m_cur_b_thick[var10] = Integer.parseInt(var1);
- } else {
- this.m_cur_b_thick[var10] = this.m_b_thick;
- }
-
- var1 = ((OCdg)this).getParameterSpecific("msgvalign", var10);
- if (var1 != null) {
- this.m_cur_valign[var10] = this.getVAlignValue(var1);
- } else {
- this.m_cur_valign[var10] = this.m_valign;
- }
-
- var1 = ((OCdg)this).getParameterSpecific("msghalign", var10);
- if (var1 != null) {
- this.m_cur_halign[var10] = this.getHAlignValue(var1);
- } else {
- this.m_cur_halign[var10] = this.m_halign;
- }
-
- var1 = ((OCdg)this).getParameterSpecific("msgfont", var10);
- if (var1 != null) {
- this.m_cur_font[var10] = ocfontc.getFontSD(var1, ",");
- } else {
- this.m_cur_font[var10] = this.m_font;
- }
- }
-
- super.initSpecifics();
- }
-
- public boolean mouseDown(Event var1, int var2, int var3) {
- super.oldx = var2;
- super.oldy = var3;
- int var4 = this.m_msgx + super.scroll_x + super.offimgx;
- int var5 = this.m_msgy + super.scroll_y + super.offimgy;
- int var6 = this.m_msgx + super.scroll_x + super.offimgx + this.m_msg_width;
- int var7 = this.m_msgy + super.scroll_y + super.offimgy + this.m_msg_height;
- int var8 = super.manip_image;
- if (var2 > var4 && var2 < var6 && var3 > var5 && var3 < var7) {
- ((Component)this).requestFocus();
- this.movingBox = true;
- if (super.manip_image > -1) {
- super.manip_image = -1;
- this.reDraw();
- }
- } else {
- super.mouseDown(var1, var2, var3);
- }
-
- if (super.manip_image != var8) {
- this.DrawApplet();
- this.reDraw();
- }
-
- return true;
- }
-
- public void updateDisplay(int var1) {
- super.manip_image = var1;
- this.DrawApplet();
- super.updateDisplay(var1);
- }
-
- private void moveBox(int var1, int var2) {
- this.m_msgx -= super.oldx - var1;
- this.m_msgy -= super.oldy - var2;
- super.the_e.id = 9301;
- super.the_e.arg = "X: " + (new Integer(this.m_msgx)).toString() + ", Y: " + (new Integer(this.m_msgy)).toString();
- super.postEvent(super.the_e);
- this.reDraw();
- }
-
- public boolean mouseDrag(Event var1, int var2, int var3) {
- if (this.movingBox) {
- this.moveBox(var2, var3);
- super.oldx = var2;
- super.oldy = var3;
- } else {
- super.mouseDrag(var1, var2, var3);
- }
-
- return true;
- }
- }
-