home *** CD-ROM | disk | FTP | other *** search
- package com.ibm.ivb.sguides.vajava2;
-
- import com.ibm.ivb.sguides.SmartGuidePage;
- import com.ibm.ivb.sguides.basic.BasicSmartGuideNotebookUI;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Dimension;
- import java.awt.Font;
- import java.awt.Graphics;
- import java.awt.Image;
- import java.awt.Insets;
- import java.awt.LayoutManager;
- import java.awt.MediaTracker;
- import java.awt.Rectangle;
- import java.awt.image.ImageObserver;
- import java.util.Hashtable;
- import javax.swing.Icon;
- import javax.swing.ImageIcon;
- import javax.swing.JComponent;
- import javax.swing.SwingUtilities;
- import javax.swing.border.Border;
- import javax.swing.plaf.ComponentUI;
-
- public class VAJava2SmartGuideNotebookUI extends BasicSmartGuideNotebookUI implements LayoutManager {
- private static final String kCBIBMCopyright = "(c) Copyright IBM Corporation 1998";
- int theight = 28;
- static Component sharedC = new 1();
- static MediaTracker tracker;
- Hashtable scaledImages;
-
- public VAJava2SmartGuideNotebookUI() {
- super.titleEnabled = true;
- super.descEnabled = false;
- }
-
- protected Dimension calculateSize() {
- Dimension var1 = new Dimension(0, 0);
- Dimension var2 = new Dimension(0, 0);
-
- for(int var3 = 0; var3 < super.sgbook.getPageCount(); ++var3) {
- SmartGuidePage var4 = super.sgbook.getPageAt(var3);
- Component var5 = var4.getClient();
- if (var5 != null) {
- Dimension var6 = var5.getPreferredSize();
- var1.width = Math.max(var1.width, var6.width);
- var1.height = Math.max(var1.height, var6.height);
- }
-
- Icon var10 = var4.getIcon();
- if (var10 != null && var4.getIconMode()) {
- var5.getPreferredSize();
- var2.width = Math.max(var2.width, var10.getIconWidth());
- var2.height = Math.max(var2.height, var10.getIconHeight());
- }
- }
-
- var1.width = Math.max(var1.width, BasicSmartGuideNotebookUI.mcsize.width);
- var1.height = Math.max(var1.height, BasicSmartGuideNotebookUI.mcsize.height);
- int var8 = BasicSmartGuideNotebookUI.cinsets.left + var1.width + BasicSmartGuideNotebookUI.cinsets.right;
- int var9 = BasicSmartGuideNotebookUI.cinsets.top + var1.height + BasicSmartGuideNotebookUI.cinsets.bottom;
- int var7 = var9 + this.theight;
- return new Dimension(var8, var7);
- }
-
- public static ComponentUI createUI(JComponent var0) {
- return new VAJava2SmartGuideNotebookUI();
- }
-
- Image getImageThatFitsTheTitle(Image var1) {
- if (var1.getHeight((ImageObserver)null) <= this.theight) {
- return var1;
- } else {
- if (this.scaledImages != null) {
- Image var2 = (Image)this.scaledImages.get(var1);
- if (var2 != null) {
- return var2;
- }
- }
-
- int var5 = this.theight * 2;
- Image var3 = var1.getScaledInstance(var5, this.theight, 4);
- if (tracker == null) {
- tracker = new MediaTracker(sharedC);
- }
-
- tracker.addImage(var3, 0);
-
- try {
- tracker.waitForID(0);
- } catch (InterruptedException var4) {
- return null;
- }
-
- tracker.removeImage(var3);
- if (this.scaledImages == null) {
- this.scaledImages = new Hashtable();
- }
-
- this.scaledImages.put(var1, var3);
- return var3;
- }
- }
-
- protected Font getTitleFont() {
- return new Font("SansSerif", 1, 12);
- }
-
- public void installUI(JComponent var1) {
- super.installUI(var1);
- var1.setBorder((Border)null);
- BasicSmartGuideNotebookUI.cinsets.top = 10;
- BasicSmartGuideNotebookUI.cinsets.left = 10;
- BasicSmartGuideNotebookUI.cinsets.bottom = 10;
- BasicSmartGuideNotebookUI.cinsets.right = 10;
- BasicSmartGuideNotebookUI.mcsize.width = 530;
- }
-
- public void layoutContainer(Container var1) {
- Dimension var2 = ((Component)var1).getSize();
- Rectangle var3 = new Rectangle(var2);
- Insets var4 = var1.getInsets();
- var3.x += var4.left;
- var3.y += var4.top;
- var3.width -= var4.right + var3.x;
- var3.height -= var4.bottom + var3.y;
- boolean var5 = false;
- Component var6 = super.prevPage != null ? super.prevPage.getClient() : null;
- Component var7 = super.currPage != null ? super.currPage.getClient() : null;
- if (var6 != null && var6.getParent() == null && var7 != null && SwingUtilities.findFocusOwner(var6) != null) {
- var5 = true;
- }
-
- Dimension var8 = super.title.getPreferredSize();
- super.title.setLocation(BasicSmartGuideNotebookUI.cinsets.left, this.theight / 2 - var8.height / 2 + 1);
- super.title.setSize(var3.width, var8.height);
- int var9 = var3.y + this.theight + BasicSmartGuideNotebookUI.cinsets.top;
- if (var7 != null) {
- var7.setLocation(var3.x + BasicSmartGuideNotebookUI.cinsets.left, var9 + BasicSmartGuideNotebookUI.cinsets.top);
- var7.setSize(var3.width - BasicSmartGuideNotebookUI.cinsets.left - BasicSmartGuideNotebookUI.cinsets.right, var3.height - (var9 - var3.y) - BasicSmartGuideNotebookUI.cinsets.top - BasicSmartGuideNotebookUI.cinsets.bottom);
- var7.setVisible(true);
- var7.validate();
- if (var5) {
- ((BasicSmartGuideNotebookUI)this).transferFocusTo(var7);
- }
- }
-
- }
-
- public void paint(Graphics var1, JComponent var2) {
- var1.setColor(VAJava2LookAndFeel.getDark1());
- var1.fillRect(0, 1, var2.getWidth() - 1, this.theight - 1);
- var1.setColor(VAJava2LookAndFeel.getDark2());
- var1.drawLine(0, this.theight - 2, var2.getWidth() - 2, this.theight - 2);
- var1.setColor(VAJava2LookAndFeel.getLight());
- var1.drawLine(0, this.theight - 1, var2.getWidth() - 2, this.theight - 1);
- SmartGuidePage var3 = super.sgbook.getCurrentPage();
- if (var3 != null) {
- Icon var4 = var3.getIcon();
- if (var4 != null && var4 instanceof ImageIcon) {
- Image var5 = ((ImageIcon)var4).getImage();
- Image var6 = this.getImageThatFitsTheTitle(var5);
- if (var6 == null) {
- return;
- }
-
- int var7 = var2.getWidth() - var6.getWidth((ImageObserver)null) - 1;
- byte var8 = 0;
- var1.drawImage(var6, var7, var8, (ImageObserver)null);
- }
-
- }
- }
-
- public void paintClientRectangle(Graphics var1, Rectangle var2) {
- var1.setColor(super.sgbook.getBackground());
- var1.fillRect(var2.x, var2.y, var2.width, var2.height);
- }
-
- public void uninstallUI(JComponent var1) {
- super.uninstallUI(var1);
- }
- }
-