home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Dimension;
- import java.awt.Insets;
- import java.awt.LayoutManager;
- import java.awt.Rectangle;
-
- public class JDPSplitLayout implements LayoutManager {
- int hgap = 1;
- int vgap = 1;
- float currXsplit = 50.0F;
- float currYsplit = 50.0F;
- Component upperLeft;
- Component upperRight;
- Component lowerLeft;
- Component lowerRight;
- Component dragXPanel;
- Component dragYPanel;
- Container target;
-
- public void moveYdivider(int var1) {
- Insets var2 = this.target.insets();
- Rectangle var3 = this.target.bounds();
- int var4 = var2.top;
- int var5 = var3.height - var2.bottom;
- float var6 = (float)(var1 - var4) / (float)(var5 - var4) * 100.0F;
- this.setTopPercentage(var6);
- }
-
- public Dimension minimumLayoutSize(Container var1) {
- Dimension var2 = new Dimension(0, 0);
- Dimension var3 = new Dimension(0, 0);
- Dimension var4 = new Dimension(0, 0);
- Dimension var5 = new Dimension(0, 0);
- Dimension var6 = new Dimension(0, 0);
- if (this.upperLeft != null) {
- var3 = this.upperLeft.minimumSize();
- }
-
- if (this.upperRight != null) {
- var4 = this.upperRight.minimumSize();
- }
-
- if (this.lowerLeft != null) {
- var5 = this.lowerLeft.minimumSize();
- }
-
- if (this.lowerRight != null) {
- var6 = this.lowerRight.minimumSize();
- }
-
- var2.width = Math.max(var3.width, var5.width);
- var2.width += Math.max(var4.width, var6.width);
- var2.height = Math.max(var3.height, var4.height);
- var2.height += Math.max(var5.height, var6.height);
- var2.width += this.hgap + 1;
- var2.height += this.vgap + 1;
- Insets var7 = var1.insets();
- var2.width += var7.left + var7.right;
- var2.height += var7.top + var7.bottom;
- return var2;
- }
-
- public void setLeftPercentage(float var1) {
- if (var1 < 0.0F) {
- var1 = 0.0F;
- }
-
- if (var1 > 100.0F) {
- var1 = 100.0F;
- }
-
- this.currXsplit = var1;
- }
-
- public float getLeftPercentage() {
- return this.currXsplit;
- }
-
- public String toString() {
- return this.getClass().getName() + "[hgap=" + this.hgap + "]";
- }
-
- public void setTopPercentage(float var1) {
- if (var1 < 0.0F) {
- var1 = 0.0F;
- }
-
- if (var1 > 100.0F) {
- var1 = 100.0F;
- }
-
- this.currYsplit = var1;
- }
-
- public void removeLayoutComponent(Component var1) {
- if (var1.equals(this.upperLeft)) {
- this.upperLeft = null;
- } else if (var1.equals(this.upperRight)) {
- this.upperRight = null;
- } else if (var1.equals(this.lowerLeft)) {
- this.lowerLeft = null;
- } else {
- if (var1.equals(this.lowerRight)) {
- this.lowerRight = null;
- }
-
- }
- }
-
- public JDPSplitLayout() {
- }
-
- public JDPSplitLayout(int var1, int var2) {
- this.hgap = var1;
- this.vgap = var2;
- }
-
- public float getTopPercentage() {
- return this.currYsplit;
- }
-
- public void showXdragPanel(int var1) {
- Insets var2 = this.target.insets();
- Rectangle var3 = this.target.bounds();
- int var4 = var2.top;
- int var5 = var3.height - var2.bottom;
- this.dragXPanel.reshape(var1 - this.hgap - 1, var4, this.hgap * 2 + 2, var5);
- }
-
- public Dimension preferredLayoutSize(Container var1) {
- return this.minimumLayoutSize(var1);
- }
-
- public void layoutContainer(Container var1) {
- this.target = var1;
- if (var1 != null) {
- Insets var2 = var1.insets();
- Rectangle var3 = ((Component)var1).bounds();
- int var4 = var2.top;
- int var5 = var3.height - var2.bottom;
- int var6 = var2.left;
- int var7 = var3.width - var2.right;
- int var8 = (int)(this.currXsplit * (float)(var7 - var6) / 100.0F);
- int var9 = (int)(this.currYsplit * (float)(var5 - var4) / 100.0F);
- if ((this.upperRight == null || !this.upperRight.isVisible()) && (this.lowerRight == null || !this.lowerRight.isVisible())) {
- var8 = var7 + this.hgap;
- }
-
- this.dragXPanel.reshape(var8 - this.hgap, var4, this.hgap * 2 + 1, var5);
- this.dragXPanel.show();
- if ((this.lowerLeft == null || !this.lowerLeft.isVisible()) && (this.lowerRight == null || !this.lowerRight.isVisible())) {
- var9 = var5 + this.vgap;
- }
-
- this.dragYPanel.reshape(var6, var9 - this.vgap, var7, this.vgap * 2 + 1);
- this.dragYPanel.show();
- if (this.upperLeft != null && this.upperLeft.isVisible()) {
- this.upperLeft.preferredSize();
- this.upperLeft.reshape(var6, var4, var8 - var6 - this.hgap, var9 - var4 - this.vgap);
- }
-
- if (this.upperRight != null && this.upperRight.isVisible()) {
- this.upperRight.preferredSize();
- this.upperRight.reshape(var8 + this.hgap + 1, var4, var7 - var8 - this.hgap - 1, var9 - var4 - this.vgap);
- }
-
- if (this.lowerLeft != null && this.lowerLeft.isVisible()) {
- this.lowerLeft.preferredSize();
- this.lowerLeft.reshape(var6, var9 + this.vgap + 1, var8 - var6 - this.hgap, var5 - var9 - this.vgap - 1);
- }
-
- if (this.lowerRight != null && this.lowerRight.isVisible()) {
- this.lowerRight.preferredSize();
- this.lowerRight.reshape(var8 + this.hgap + 1, var9 + this.vgap + 1, var7 - var8 - this.hgap - 1, var5 - var9 - this.vgap - 1);
- }
-
- }
- }
-
- public void moveXdivider(int var1) {
- Insets var2 = this.target.insets();
- Rectangle var3 = this.target.bounds();
- int var4 = var2.left;
- int var5 = var3.width - var2.right;
- float var6 = (float)(var1 - var4) / (float)(var5 - var4) * 100.0F;
- this.setLeftPercentage(var6);
- }
-
- public void addLayoutComponent(String var1, Component var2) {
- if (var1.equals("dragX")) {
- this.dragXPanel = var2;
- } else if (var1.equals("dragY")) {
- this.dragYPanel = var2;
- } else {
- if (!var1.equals("Left") && !var1.equals("West")) {
- if (!var1.equals("Right") && !var1.equals("East")) {
- if (var1.equals("North")) {
- if (this.upperLeft == null) {
- this.upperLeft = var2;
- return;
- }
-
- if (this.upperRight == null) {
- this.upperRight = var2;
- return;
- }
- } else if (var1.equals("South")) {
- if (this.lowerLeft == null) {
- this.lowerLeft = var2;
- return;
- }
-
- if (this.lowerRight == null) {
- this.lowerRight = var2;
- return;
- }
- } else if (var1.equals("Center")) {
- if (this.upperLeft == null) {
- this.upperLeft = var2;
- return;
- }
-
- if (this.lowerLeft == null) {
- this.lowerLeft = var2;
- return;
- }
-
- if (this.upperRight == null) {
- this.upperRight = var2;
- return;
- }
-
- if (this.lowerRight == null) {
- this.lowerRight = var2;
- }
- }
- } else {
- if (this.upperRight == null) {
- this.upperRight = var2;
- return;
- }
-
- if (this.lowerRight == null) {
- this.lowerRight = var2;
- return;
- }
- }
- } else {
- if (this.upperLeft == null) {
- this.upperLeft = var2;
- return;
- }
-
- if (this.lowerLeft == null) {
- this.lowerLeft = var2;
- return;
- }
- }
-
- }
- }
-
- public void showYdragPanel(int var1) {
- Insets var2 = this.target.insets();
- Rectangle var3 = this.target.bounds();
- int var4 = var2.left;
- int var5 = var3.width - var2.right;
- this.dragYPanel.reshape(var4, var1 - this.vgap - 1, var5, this.vgap * 2 + 2);
- }
- }
-