From 1af7d3700724834e40ad8636bc9a56cdc3b19b15 Mon Sep 17 00:00:00 2001 From: Normand Briere <nbriere@noware.ca> Date: Sat, 27 Jul 2019 11:52:38 -0400 Subject: [PATCH] New layout icons --- cSpringEditor.java | 205 +++++++++++++++++++++++++++++++++----------------- 1 files changed, 135 insertions(+), 70 deletions(-) diff --git a/cSpringEditor.java b/cSpringEditor.java index 788ebea..989e761 100644 --- a/cSpringEditor.java +++ b/cSpringEditor.java @@ -8,7 +8,6 @@ class cSpringEditor extends ObjEditor implements ItemListener, ChangeListener, ObjectUI, ActionListener { - cSpringEditor(cSpring inBP, GroupEditor callee) { super(inBP, callee); @@ -53,17 +52,19 @@ { super.SetupUI2(oe); + firstrowPanel = new cGridBag(); + //// oe.ctrlPanel.add(animate = new JCheckBox("Live", spring.live), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); //// ObjEditor.aConstraints.gridx += 1; - freezeButton = AddButton(oe, "Freeze"); + freezeButton = AddButton(firstrowPanel, "Freeze"); // oe.ctrlPanel.add(freezeButton = new cButton("Freeze"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; //// oe.ctrlPanel.add(stepButton = new cButton("Step"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); //// ObjEditor.aConstraints.gridx += 1; - avoiderButton = AddButton(oe, "Avoid"); + avoiderButton = AddButton(firstrowPanel, "Avoid"); // oe.ctrlPanel.add(avoiderButton = new cButton("Avoid"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - autofreeze = AddCheckBox(oe, "Blow", spring.IsAutoFreeze()); + autofreeze = AddCheckBox(firstrowPanel, "Blow", spring.IsAutoFreeze()); // oe.ctrlPanel.add(autofreeze = new JCheckBox("Blow", spring.IsAutoFreeze()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; // Return(); @@ -71,17 +72,20 @@ // ObjEditor.aConstraints.gridx = 0; //// oe.ctrlPanel.add(resetButton = new cButton("Reset"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); //// ObjEditor.aConstraints.gridx += 1; - fastnormals = AddCheckBox(oe, "Fast", spring.IsFastNormals()); + fastnormals = AddCheckBox(firstrowPanel, "Fast", spring.IsFastNormals()); // oe.ctrlPanel.add(fastnormals = new JCheckBox("Fast", spring.IsFastNormals()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - springs = AddCheckBox(oe, "Show", spring.showsprings); + springs = AddCheckBox(firstrowPanel, "Show", spring.showsprings); // oe.ctrlPanel.add(springs = new JCheckBox("Springs", spring.showsprings), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - info = AddCheckBox(oe, "Info", spring.ShowInfo()); + info = AddCheckBox(firstrowPanel, "Info", spring.ShowInfo()); // oe.ctrlPanel.add(info = new JCheckBox("Info", spring.ShowInfo()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); - Return(); + oe.ctrlPanel.add(firstrowPanel); + oe.ctrlPanel.Return(); // ObjEditor.aConstraints.gridy += 1; // ObjEditor.aConstraints.gridx = 0; + + stiffnessPanel = AddSlider(oe.ctrlPanel, "Stiffness:", 0, 20.0, Math.log(spring.K+1), 1); // ObjEditor.aConstraints.anchor = GridBagConstraints.WEST; // ObjEditor.aConstraints.gridwidth = 1; @@ -96,8 +100,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - stiffnessField = AddSlider(oe.ctrlPanel, "Stiffness:", 0, 20.0, Math.log(spring.K+1), 1); - Return(); + stiffnessField = (cNumberSlider)stiffnessPanel.getComponent(1); + oe.ctrlPanel.Return(); + massPanel = AddSlider(oe.ctrlPanel, "Mass:", 0, 20.0, Math.log(spring.M+1), 1); // oe.ctrlPanel.add(massLabel = new JLabel("Mass"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // massLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -109,8 +114,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - massField = AddSlider(oe.ctrlPanel, "Mass:", 0, 20.0, Math.log(spring.M+1), 1); - Return(); + massField = (cNumberSlider)massPanel.getComponent(1); + oe.ctrlPanel.Return(); + gravityPanel = AddSlider(oe.ctrlPanel, "Gravity:", 0, 20.0, Math.log(spring.G.acceleration+1), 1); // oe.ctrlPanel.add(gravityLabel = new JLabel("Gravity"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // gravityLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -122,8 +128,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - gravityField = AddSlider(oe.ctrlPanel, "Gravity:", 0, 20.0, Math.log(spring.G.acceleration+1), 1); - Return(); + gravityField = (cNumberSlider)gravityPanel.getComponent(1); + oe.ctrlPanel.Return(); + normalPanel = AddSlider(oe.ctrlPanel, "Normal:", 0, 20.0, Math.log(spring.normalpush+1), 1); // oe.ctrlPanel.add(normalLabel = new JLabel("Normal"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // normalLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -135,8 +142,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - normalField = AddSlider(oe.ctrlPanel, "Normal:", 0, 20.0, Math.log(spring.normalpush+1), 1); - Return(); + normalField = (cNumberSlider)normalPanel.getComponent(1); + oe.ctrlPanel.Return(); + restlengthPanel = AddSlider(oe.ctrlPanel, "Restlength:", 0, 2.0, spring.restlengthFactor, 1); /**/ // oe.ctrlPanel.add(thicknessLabel = new JLabel("Restlength"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); @@ -149,8 +157,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - restlengthField = AddSlider(oe.ctrlPanel, "Restlength:", 0, 2.0, spring.restlengthFactor, 1); - Return(); + restlengthField = (cNumberSlider)restlengthPanel.getComponent(1); + oe.ctrlPanel.Return(); + distortionPanel = AddSlider(oe.ctrlPanel, "Distortion:", 0, 2.0, spring.distortion, 1); // oe.ctrlPanel.add(distortionLabel = new JLabel("Distortion"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // distortionLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -162,9 +171,10 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - distortionField = AddSlider(oe.ctrlPanel, "Distortion:", 0, 2.0, spring.distortion, 1); - Return(); + distortionField = (cNumberSlider)distortionPanel.getComponent(1); + oe.ctrlPanel.Return(); /**/ + limitPanel = AddSlider(oe.ctrlPanel, "Limit:", 0, 20.0, Math.log(spring.limit+1), 1); // oe.ctrlPanel.add(limitLabel = new JLabel("Limit"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // limitLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -176,8 +186,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - limitField = AddSlider(oe.ctrlPanel, "Limit:", 0, 20.0, Math.log(spring.limit+1), 1); - Return(); + limitField = (cNumberSlider)limitPanel.getComponent(1); + oe.ctrlPanel.Return(); + viscosityPanel = AddSlider(oe.ctrlPanel, "Viscosity:", 0, 20.0, Math.log(spring.W.wind+1), 1); // oe.ctrlPanel.add(viscosityLabel = new JLabel("Viscosity"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // viscosityLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -189,8 +200,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - viscosityField = AddSlider(oe.ctrlPanel, "Viscosity:", 0, 20.0, Math.log(spring.W.wind+1), 1); - Return(); + viscosityField = (cNumberSlider)viscosityPanel.getComponent(1); + oe.ctrlPanel.Return(); + fluidspeedPanel = AddSlider(oe.ctrlPanel, "Speed:", 0, 20.0, Math.log(spring.W.speed+1), 1); // oe.ctrlPanel.add(fluidspeedLabel = new JLabel("Speed"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // fluidspeedLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -202,8 +214,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - fluidspeedField = AddSlider(oe.ctrlPanel, "Speed:", 0, 20.0, Math.log(spring.W.speed+1), 1); - Return(); + fluidspeedField = (cNumberSlider)fluidspeedPanel.getComponent(1); + oe.ctrlPanel.Return(); + liftPanel = AddSlider(oe.ctrlPanel, "Lift:", 0, 1.0, spring.W.lift, 1); // oe.ctrlPanel.add(liftLabel = new JLabel("Lift"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // liftLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -215,8 +228,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - liftField = AddSlider(oe.ctrlPanel, "Lift:", 0, 1.0, spring.W.lift, 1); - Return(); + liftField = (cNumberSlider)liftPanel.getComponent(1); + oe.ctrlPanel.Return(); + frictionPanel = AddSlider(oe.ctrlPanel, "Friction:", 0, 1.0, spring.friction, 1); // oe.ctrlPanel.add(frictionLabel = new JLabel("Friction"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // frictionLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -228,8 +242,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - frictionField = AddSlider(oe.ctrlPanel, "Friction:", 0, 1.0, spring.friction, 1); - Return(); + frictionField = (cNumberSlider)frictionPanel.getComponent(1); + oe.ctrlPanel.Return(); + timestepPanel = AddSlider(oe.ctrlPanel, "Timestep:", 0, 1.0, spring.timestep, 1); // oe.ctrlPanel.add(timestepLabel = new JLabel("Timestep"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // timestepLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -241,8 +256,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - timestepField = AddSlider(oe.ctrlPanel, "Timestep:", 0, 1.0, spring.timestep, 1); - Return(); + timestepField = (cNumberSlider)timestepPanel.getComponent(1); + oe.ctrlPanel.Return(); + poseslownessPanel = AddSlider(oe.ctrlPanel, "Slowness:", 0, 100.0, spring.slowness, 1); // oe.ctrlPanel.add(poseslownessLabel = new JLabel("Slowness"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // timestepLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -254,8 +270,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - poseslownessField = AddSlider(oe.ctrlPanel, "Slowness:", 0, 100.0, spring.slowness, 1); - Return(); + poseslownessField = (cNumberSlider)poseslownessPanel.getComponent(1); + oe.ctrlPanel.Return(); + dampingPanel = AddSlider(oe.ctrlPanel, "Damping:", 0, 20.0, -Math.log(spring.damping)*10, 1); // oe.ctrlPanel.add(dampingLabel = new JLabel("Damping"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // dampingLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -267,8 +284,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - dampingField = AddSlider(oe.ctrlPanel, "Damping:", 0, 20.0, -Math.log(spring.damping)*10, 1); - Return(); + dampingField = (cNumberSlider)dampingPanel.getComponent(1); + oe.ctrlPanel.Return(); + solidityPanel = AddSlider(oe.ctrlPanel, "Solidity:", 0, 20.0, Math.log(spring.solidity+1), 1); // oe.ctrlPanel.add(solidityLabel = new JLabel("Solidity"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // solidityLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -280,8 +298,8 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - solidityField = AddSlider(oe.ctrlPanel, "Solidity:", 0, 20.0, Math.log(spring.solidity+1), 1); - Return(); + solidityField = (cNumberSlider)solidityPanel.getComponent(1); + oe.ctrlPanel.Return(); //System.out.println("K = " + spring.K + "; G = " + spring.G.acceleration + "; H = " + spring.H + "; V = " + spring.W.wind); @@ -316,52 +334,61 @@ // solidityField.setFloat(Math.log(spring.solidity+1)); // solidityField.addChangeListener(this); + secondrowPanel = new cGridBag(); + // ObjEditor.aConstraints.gridwidth = 1; // ObjEditor.aConstraints.anchor = GridBagConstraints.WEST; // oe.ctrlPanel.add(revertButton = new cButton("Revert"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - revertButton = AddButton(oe, "Revert"); + revertButton = AddButton(secondrowPanel, "Revert"); // oe.ctrlPanel.add(epsequal = new JCheckBox("Eps", spring.IsEpsEqual()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - epsequal = AddCheckBox(oe, "Eps", spring.IsEpsEqual()); + epsequal = AddCheckBox(secondrowPanel, "Eps", spring.IsEpsEqual()); // oe.ctrlPanel.add(linkUV = new JCheckBox("link UV", spring.IsLinkUV()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridy += 1; // ObjEditor.aConstraints.gridx = 0; - linkUV = AddCheckBox(oe, "UV", spring.IsLinkUV()); + linkUV = AddCheckBox(secondrowPanel, "UV", spring.IsLinkUV()); // oe.ctrlPanel.add(poseCB = new JCheckBox("Change:", spring.IsPoseMesh()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - poseCB = AddCheckBox(oe, "Loop", spring.IsPoseMesh()); + poseCB = AddCheckBox(secondrowPanel, "Loop", spring.IsPoseMesh()); // oe.ctrlPanel.add(poseButton = new cButton("Pose"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridy += 1; // ObjEditor.aConstraints.gridx = 0; - poseButton = AddButton(oe, "Pose"); - Return(); - - poseField = AddSlider(oe.ctrlPanel, "Pose:", 0, spring.posegroup==null?0:spring.posegroup.size()-1, spring.poseid); - Return(); + poseButton = AddButton(secondrowPanel, "Pose"); + oe.ctrlPanel.add(secondrowPanel); + oe.ctrlPanel.Return(); + + posePanel = AddSlider(oe.ctrlPanel, "Pose:", 0, spring.posegroup==null?0:spring.posegroup.size()-1, spring.poseid); + + poseField = (cNumberSlider)posePanel.getComponent(1); + oe.ctrlPanel.Return(); + + thirdrowPanel = new cGridBag(); + // oe.ctrlPanel.add(solid = new JCheckBox("Solid", spring.IsSolid()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - solid = AddCheckBox(oe, "3D", spring.IsSolid()); + solid = AddCheckBox(thirdrowPanel, "3D", spring.IsSolid()); // oe.ctrlPanel.add(soft = new JCheckBox("Soft", spring.IsSoft()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridy += 1; // ObjEditor.aConstraints.gridx = 0; - soft = AddCheckBox(oe, "Soft", spring.IsSoft()); + soft = AddCheckBox(thirdrowPanel, "Soft", spring.IsSoft()); // oe.ctrlPanel.add(fold = new JCheckBox("Fold", spring.IsFold()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - fold = AddCheckBox(oe, "Fold", spring.IsFold()); + fold = AddCheckBox(thirdrowPanel, "Fold", spring.IsFold()); // oe.ctrlPanel.add(unfold = new JCheckBox("Unfold", spring.IsUnfold()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - unfold = AddCheckBox(oe, "Unf", spring.IsUnfold()); + unfold = AddCheckBox(thirdrowPanel, "Unf", spring.IsUnfold()); // oe.ctrlPanel.add(normalizeCounts = new JCheckBox("Counts", spring.IsNormalize()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; // ObjEditor.aConstraints.gridy += 1; // ObjEditor.aConstraints.gridx = 0; - normalizeCounts = AddCheckBox(oe, "Cnt", spring.IsNormalize()); + normalizeCounts = AddCheckBox(thirdrowPanel, "Cnt", spring.IsNormalize()); // Invariants?... oe.ctrlPanel.add(updatehandles = new JCheckBox("Update handles", spring.IsUpdateHandles()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - Return(); + oe.ctrlPanel.add(thirdrowPanel); + oe.ctrlPanel.Return(); // oe.ctrlPanel.add(freezeButton = new cButton(" Freeze "), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; // oe.ctrlPanel.add(stepButton = new cButton(" Step "), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); @@ -595,21 +622,40 @@ { ObjEditor oe = objEditor; - Remove(stiffnessField); - Remove(massField); - Remove(gravityField); - Remove(normalField); - Remove(limitField); - Remove(restlengthField); - Remove(distortionField); - Remove(viscosityField); - Remove(fluidspeedField); - Remove(liftField); - Remove(frictionField); - Remove(timestepField); - Remove(poseslownessField); - Remove(dampingField); - Remove(solidityField); +// Remove(stiffnessField); +// Remove(massField); +// Remove(gravityField); +// Remove(normalField); +// Remove(limitField); +// Remove(restlengthField); +// Remove(distortionField); +// Remove(viscosityField); +// Remove(fluidspeedField); +// Remove(liftField); +// Remove(frictionField); +// Remove(timestepField); +// Remove(poseslownessField); +// Remove(dampingField); +// Remove(solidityField); + objEditor.ctrlPanel.remove(firstrowPanel); + objEditor.ctrlPanel.remove(secondrowPanel); + objEditor.ctrlPanel.remove(thirdrowPanel); + objEditor.ctrlPanel.remove(stiffnessPanel); + objEditor.ctrlPanel.remove(massPanel); + objEditor.ctrlPanel.remove(gravityPanel); + objEditor.ctrlPanel.remove(normalPanel); + objEditor.ctrlPanel.remove(limitPanel); + objEditor.ctrlPanel.remove(restlengthPanel); + objEditor.ctrlPanel.remove(distortionPanel); + objEditor.ctrlPanel.remove(viscosityPanel); + objEditor.ctrlPanel.remove(fluidspeedPanel); + objEditor.ctrlPanel.remove(liftPanel); + objEditor.ctrlPanel.remove(frictionPanel); + objEditor.ctrlPanel.remove(timestepPanel); + objEditor.ctrlPanel.remove(poseslownessPanel); + objEditor.ctrlPanel.remove(dampingPanel); + objEditor.ctrlPanel.remove(solidityPanel); + objEditor.ctrlPanel.remove(posePanel); // stiffnessField.removeChangeListener(this); // massField.removeChangeListener(this); // gravityField.removeChangeListener(this); @@ -754,10 +800,8 @@ cNumberSlider massField; cNumberSlider gravityField; cNumberSlider normalField; - cNumberSlider mgravityField; cNumberSlider fluidspeedField; cNumberSlider viscosityField; - cNumberSlider floorField; cNumberSlider limitField; cNumberSlider restlengthField; cNumberSlider distortionField; @@ -770,6 +814,27 @@ cNumberSlider poseField; + cGridBag firstrowPanel; + cGridBag secondrowPanel; + cGridBag thirdrowPanel; + + cGridBag stiffnessPanel; + cGridBag massPanel; + cGridBag gravityPanel; + cGridBag normalPanel; + cGridBag fluidspeedPanel; + cGridBag viscosityPanel; + cGridBag limitPanel; + cGridBag restlengthPanel; + cGridBag distortionPanel; + cGridBag dampingPanel; + cGridBag frictionPanel; + cGridBag liftPanel; + cGridBag poseslownessPanel; + cGridBag solidityPanel; + cGridBag timestepPanel; + cGridBag posePanel; + // JCheckBox animate; JCheckBox thick; JCheckBox single; -- Gitblit v1.6.2