Code Search for Developers
 
 
  

Spline.cs from MASE: Agile Software Engineering at Krugle


Show Spline.cs syntax highlighted

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using Tao.Platform.Windows;
using Tao.OpenGl;

namespace New_Study_Project
{
	
	public abstract class Spline : Object 
	{
		/* Definitions of the Program */

		public enum Typ{MoveAbleSpline, NoneMoveAbleSpline};

		/* all stuff which is needed */ 

		protected PointF Center;
		protected PointF leftTop;
		protected PointF rightTop;
		protected PointF rightBut;
		protected PointF leftBut;

		protected Typ typ;

		protected InterfaceGrid interfaceSP;

		protected ControlPoint MOVINGControlPoint;
		protected ControlPoint SAVEControlPoint;

		protected PointF menuPos;
		public PointF MOVINGSplinePoint;

		protected List nodeList;
		protected List nodeList_old;
		protected List insideList;
		protected List insideList_old;

		protected float objScaleValue;
		protected float fuzzyWidth;

		protected float menuScale;
		protected float menuArmScale;
		protected float fadeMenu;
		protected float menuAngle;
		
		protected ArrayList InterfaceObjectList;
		protected ArrayList IOSelectObjectList;

		protected int waitCloseTime;
		protected int[] IconTextures;

		protected bool drawInterfaceObject;
		protected bool drawMenus;
		protected bool drawOpenMenu;
		protected bool drawCloseMenu;
		
		/* for logfile stuff */

		//protected LogFile logfile;
		protected int ObjectID;

		/* other stuff */

		private int GlList_Star;

		/* End of Definitions of the Program */

		/*******************************************************************/
		/* End of the head of this Object - now the user code stuff begins */
		/*******************************************************************/	


		public virtual void addInterfaceObjectToSpline(InterfaceObject obj)
		{
			if (!this.InterfaceObjectList.Contains(obj)) this.InterfaceObjectList.Add(obj);
		}

		public virtual void removeInterfaceObjectFromSpline(InterfaceObject obj)
		{
			this.InterfaceObjectList.Remove(obj);
		}

	
		public virtual void addIOSelectObjectToSpline(IOSelectObject IOSEL)
		{
			if (!this.IOSelectObjectList.Contains(IOSEL)) this.IOSelectObjectList.Add(IOSEL);
		}

		public virtual void removeIOSelectObjectFromSpline(IOSelectObject IOSEL)
		{
			this.IOSelectObjectList.Remove(IOSEL);
		}

	
		protected void addInterfaceObjectsToGrid()
		{
			foreach (InterfaceObject obj in this.InterfaceObjectList) 
			{
				obj.translateEndInterfaceObject();
				obj.addThisInterfaceObjectToGrid();	
			}

			foreach (IOSelectObject IOSEL in this.IOSelectObjectList) 
			{
				IOSEL.translateEndIOSelectObject();
				IOSEL.addCompletly();	
			}
		}

		protected void removeInterfaceObjectsFromGrid()
		{
			foreach (InterfaceObject obj in this.InterfaceObjectList) 
			{
				obj.removeThisInterfaceObjectFromGrid();	
			}

			foreach (IOSelectObject IOSEL in this.IOSelectObjectList) 
			{
				IOSEL.removeCompletly();	
			}
		}

		protected void translateInterfaceObjects(PointF translatePoint)
		{
			foreach (InterfaceObject obj in this.InterfaceObjectList) 
			{
				obj.translateInterfaceObject(translatePoint);	
			}

			foreach (IOSelectObject IOSEL in this.IOSelectObjectList) 
			{
				IOSEL.translateIOSelectObject(translatePoint);	
			}
		}


		protected void testIOSelectObjectsInStorageArea()
		{
			int hits;
			int[] pickmod;
			int[] viewport;
			PointF lastP;

			viewport = new int[4];
			Gl.glGetIntegerv(Gl.GL_VIEWPORT,viewport);		

			foreach (IOSelectObject IOSEL in this.IOSelectObjectList) 
			{
				hits = 0;
				pickmod = new int[20];
				lastP = IOSEL.getLastMousePoint();
				Gl.glSelectBuffer(20, pickmod);
				Gl.glRenderMode(Gl.GL_SELECT);
				Gl.glInitNames();
				Gl.glMatrixMode(Gl.GL_PROJECTION);
				Gl.glPushMatrix();				
				Gl.glLoadIdentity();
				Glu.gluPickMatrix (lastP.X, viewport[3]-lastP.Y, 1.0, 1.0,viewport);
				Glu.gluOrtho2D(0,(double) viewport[2], (double) viewport[3] , 0);
				Gl.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
				Gl.glClear(Gl.GL_COLOR_BUFFER_BIT | Gl.GL_DEPTH_BUFFER_BIT);	// Clear Screen And Depth Buffer
				Gl.glMatrixMode(Gl.GL_MODELVIEW);
				Gl.glPushMatrix();	
				Gl.glLoadIdentity();
				Gl.glPushName(969);
				this.drawBackGround(true);
				Gl.glPopName();	
				Gl.glPopMatrix();
				Gl.glMatrixMode(Gl.GL_PROJECTION);
				Gl.glPopMatrix();
				Gl.glFlush();
				hits = Gl.glRenderMode(Gl.GL_RENDER);	
				if ((hits == 0 && IOSEL.getStoredAreaPart() == 99) || (hits > 0 && IOSEL.getStoredAreaPart() == 99 && IOSEL.getStoredAreaPart() != pickmod[(hits-1)*5+4])) this.repositonIOSelectObjectToInside(IOSEL, lastP);
				else if ((hits == 0 && IOSEL.getStoredAreaPart() == 66)) this.repositonIOSelectObjectToOutside(IOSEL, lastP);
				else if ((hits > 0 && IOSEL.getStoredAreaPart() == 66) && pickmod[(hits-1)*5+4] == 99) this.repositonIOSelectObjectToInside(IOSEL, lastP);
			}
		}
		protected void testInterfaceObjectsInStorageArea()
		{
			int hits;
			int[] pickmod;
			int[] viewport;
			PointF lastP;

			viewport = new int[4];
			Gl.glGetIntegerv(Gl.GL_VIEWPORT,viewport);		

			foreach (InterfaceObject obj in this.InterfaceObjectList) 
			{
				hits = 0;
				pickmod = new int[20];
				lastP = obj.getLastMousePoint();
				Gl.glSelectBuffer(20, pickmod);
				Gl.glRenderMode(Gl.GL_SELECT);
				Gl.glInitNames();
				Gl.glMatrixMode(Gl.GL_PROJECTION);
				Gl.glPushMatrix();				
				Gl.glLoadIdentity();
				Glu.gluPickMatrix (lastP.X, viewport[3]-lastP.Y, 1.0, 1.0,viewport);
				Glu.gluOrtho2D(0,(double) viewport[2], (double) viewport[3] , 0);
				Gl.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
				Gl.glClear(Gl.GL_COLOR_BUFFER_BIT | Gl.GL_DEPTH_BUFFER_BIT);	// Clear Screen And Depth Buffer
				Gl.glMatrixMode(Gl.GL_MODELVIEW);
				Gl.glPushMatrix();	
				Gl.glLoadIdentity();
				Gl.glPushName(969);
				this.drawBackGround(true);
				Gl.glPopName();	
				Gl.glPopMatrix();
				Gl.glMatrixMode(Gl.GL_PROJECTION);
				Gl.glPopMatrix();
				Gl.glFlush();
				hits = Gl.glRenderMode(Gl.GL_RENDER);
				if ((hits == 0 && obj.getStoredAreaPart() == 99) || (hits > 0 && obj.getStoredAreaPart() == 99 && obj.getStoredAreaPart() != pickmod[(hits-1)*5+4])) this.repositonInterfaceObjectToInside(obj, lastP);
				else if ((hits == 0 && obj.getStoredAreaPart() == 66)) this.repositonInterfaceObjectToOutside(obj, lastP);
				else if ((hits > 0 && obj.getStoredAreaPart() == 66) && pickmod[(hits-1)*5+4] == 99) this.repositonInterfaceObjectToInside(obj, lastP);
			}
		}



		protected virtual void repositonIOSelectObjectToInside(IOSelectObject IOSEL, PointF lastP)
		{
		}

		protected virtual void repositonIOSelectObjectToOutside(IOSelectObject IOSEL, PointF lastP)
		{
		}


		protected virtual void repositonInterfaceObjectToInside(InterfaceObject obj, PointF lastP)
		{
		}

		protected virtual void repositonInterfaceObjectToOutside(InterfaceObject obj, PointF lastP)
		{
		}


		/*******************************************************************/
		/*   This are the drawing Functions which draw MoveSpline stuff    */
		/*******************************************************************/


		protected void create_List_Star()
		{
			this.GlList_Star = Gl.glGenLists(1);
			Gl.glNewList(this.GlList_Star, Gl.GL_COMPILE);

			Gl.glScalef(4.0f, 4.0f, 4.0f);

			Gl.glBegin(Gl.GL_POLYGON);

			Gl.glColor4f(0.3f, 0.6f, 0.9f, 1.0f);
			Gl.glVertex3f(0.0f, 0.0f, 0.0f);
			Gl.glColor4f(0.0f, 0.0f, 0.0f, 0.0f);
			Gl.glVertex3f(-4.0f, 0.0f, 0.0f);
			Gl.glVertex3f(-1.0f, -1.0f, 0.0f);
			Gl.glVertex3f(0.0f, -4.0f, 0.0f);
			Gl.glColor4f(0.3f, 0.6f, 0.9f, 1.0f);
			Gl.glVertex3f(0.0f, 0.0f, 0.0f);
			 
			Gl.glEnd();
	
			Gl.glBegin(Gl.GL_POLYGON);

			Gl.glColor4f(0.3f, 0.6f, 0.9f, 1.0f);
			Gl.glVertex3f(0.0f, 0.0f, 0.0f);
			Gl.glColor4f(0.0f, 0.0f, 0.0f, 0.0f);
			Gl.glVertex3f(0.0f, -4.0f, 0.0f);
			Gl.glVertex3f(1.0f, -1.0f, 0.0f);
			Gl.glVertex3f(4.0f, 0.0f, 0.0f);
			Gl.glColor4f(0.3f, 0.6f, 0.9f, 1.0f);
			Gl.glVertex3f(0.0f, 0.0f, 0.0f);
			
			Gl.glEnd();

			Gl.glBegin(Gl.GL_POLYGON);
			
			Gl.glColor4f(0.3f, 0.6f, 0.9f, 1.0f);
			Gl.glVertex3f(0.0f, 0.0f, 0.0f);
			Gl.glColor4f(0.0f, 0.0f, 0.0f, 0.0f);
			Gl.glVertex3f(4.0f, 0.0f, 0.0f);
			Gl.glVertex3f(1.0f, 1.0f, 0.0f);
			Gl.glVertex3f(0.0f, 4.0f, 0.0f);
			Gl.glColor4f(0.3f, 0.6f, 0.9f, 1.0f);
			Gl.glVertex3f(0.0f, 0.0f, 0.0f);
			Gl.glEnd();

			Gl.glBegin(Gl.GL_POLYGON);
			Gl.glColor4f(0.3f, 0.6f, 0.9f, 1.0f);
			Gl.glVertex3f(0.0f, 0.0f, 0.0f);
			Gl.glColor4f(0.0f, 0.0f, 0.0f, 0.0f);
			Gl.glVertex3f(0.0f, 4.0f, 0.0f);
			Gl.glVertex3f(-1.0f, 1.0f, 0.0f);
			Gl.glVertex3f(-4.0f, 0.0f, 0.0f);
			Gl.glColor4f(0.3f, 0.6f, 0.9f, 1.0f);
			Gl.glVertex3f(0.0f, 0.0f, 0.0f);
			Gl.glEnd();

			Gl.glEndList();
		}

		protected void drawControlPoints()
		{
			Gl.glPushMatrix();
			Gl.glCallList(this.GlList_Star);
			Gl.glPopMatrix();			
		}


		public virtual void drawSpline(bool moveSP)
		{
			
		}

		public virtual void drawBackGround(bool moveSP)
		{
			
		}


		/*******************************************************************/
		/*                          Mouse Events                           */
		/*******************************************************************/


		public virtual void mouseDOWN(ControlPoint MOVINGCP, int inputID)
		{
		}

		public virtual void mouseMOVE(Point MOVEPoint)
		{
		}

		public virtual void mouseUP(Point UPPoint)
		{
		
		}

		public virtual void clickedStorageButton(Point CLICKEDPoint, ObjectButton getStoreButton, int inputID)
		{
			
		}


		public virtual void changeBorderSize(int valueSize)
		{
		}
		public virtual void changeObjectSize(float objSize)
		{
		}
		

		
		/*******************************************************************/
		/*               some function for returning values                */
		/*******************************************************************/


		public float getObjectScaleValue()
		{
			return this.objScaleValue;
		}
		
		public Typ getTyp()
		{
			return this.typ;
		}

		public int getObjectID()
		{
			return this.ObjectID;
		}

		public PointF getCenter()
		{
			return Center;
		}
		public PointF getLeftTop()
		{	
			return leftTop;
		}
		public PointF getRightTop()
		{
			return rightTop;
		}
		public PointF getRightBut()
		{
			return rightBut;
		}
		public PointF getLeftBut()
		{
			return leftBut;
		}


		/*******************************************************************/
		/*   -----------------------------------------------------------   */
		/*******************************************************************/

	}
}




See more files for this project here

MASE: Agile Software Engineering

The MASE project investigates methods to support the coordination and executable acceptance testing of software projects. Keywords: Agile methods, distributed teams, Extreme Programming. See http://ebe.cpsc.ucalgary.ca/ebe for more information.

Project homepage: http://sourceforge.net/projects/mase
Programming language(s): Java,XML
License: other

  ControlPoint.cs
  CustomTreeNode.cs
  CustomTreeView.cs
  Dashboard.cs
  Dashboard.resx
  EStoryForm.cs
  EStoryForm.resx
  IOSelectObject.cs
  InterfaceGrid.cs
  InterfaceObject.cs
  List.cs
  ListNode.cs
  LogFile.cs
  MenuForm.cs
  MenuForm.resx
  MoveAbleSpline.cs
  NonMoveAbleSpline.cs
  ObjectButton.cs
  Old_MoveAbleSpline.cs
  PenCalibration.cs
  PenCalibration.resx
  RNTObject.cs
  Spline.cs
  StartupScreen.cs
  StartupScreen.resx
  StorageButton.cs
  Study_Project.cs
  Study_Project.resx
  TabletUI.cs
  TabletUI.resx
  Workspace.cs
  Workspace.resx
  testCalibration.cs
  testCalibration.resx