download glview2d.h
Language: C++
License: GPL
Copyright: (C) 2000-2005 Vincent LE PRINCE
LOC: 36
Project Info
Truevision
Server: SourceForge
Type: cvs
...evision\Truevision\include\
   atmosphere.h
   bicubic.h
   blob.h
   box.h
   camera.h
   cone.h
   cylinder.h
   density.h
   disc.h
   dlgutils.h
   fnintern.h
   fog.h
   function.h
   glview.h
   glview2d.h
   glview3d.h
   heightfield.h
   impsurface.h
   interface.h
   interior.h
   isosurface.h
   julia.h
   lathe.h
   lights.h
   linkobj.h
   main.h
   mapedit.h
   material.h
   matlib.h
   matlist.h
   matpov.h
   media.h
   mesh.h
   meshrotate.h
   meshscale.h
   meshtool.h
   meshtranslate.h
   obj3dcsg.h
   obj3ddef.h
   object3d.h
   objectlayer.h
   objectlist.h
   parametric.h
   plane.h
   polygon.h
   povfe.h
   povpreview.h
   povscript.h
   preferences.h
   prism.h
   proppanel.h
   pycamera.h
   pyengine.h
   pylights.h
   pyobjects.h
   pyscriptdb.h
   pyscriptobj.h
   pyutils.h
   rotation.h
   scene.h
   scriptobj.h
   slopemap.h
   sphere.h
   spheresweep.h
   spline2d.h
   spline3d.h
   superellipsoid.h
   texfinish.h
   texnormal.h
   texpigment.h
   text.h
   torus.h
   tvio.h
   tvwidgets.h
   undo.h
   utils3d.h
   vertex.h
   viewmanager.h

//*****************************************************************************************
// Truevision - a 3d modeler for povray
//
// glview2d.h
//
// Vincent LE PRINCE <vincentleprince@users.sourceforge.net>
// Copyright (C) 2000-2005 Vincent LE PRINCE
// This file is part of the TRUEVISION Package

//   This program is free software; you can redistribute it and/or modify
//   it under the terms of the GNU General Public License as published by
//   the Free Software Foundation; either version 2 of the License, or
//   (at your option) any later version.
//
//   This program is distributed in the hope that it will be useful,
//   but WITHOUT ANY WARRANTY; without even the implied warranty of
//   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//   GNU General Public License for more details.
//
//   You should have received a copy of the GNU General Public License
//   along with this program; if not, write to the Free Software
//   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */ 
//*******************************************************************************************
#ifndef GLVIEW2D_H
#define GLVIEW2D_H
using namespace std;
#include "glview.h"

// Classe 2D
class glview2d : public glview {	
	#define SENDER ((glview2d*)obj)
	friend void sign_toggle_grid( GtkWidget *wid, gpointer obj ) { SENDER->grid->toggle(); }
	friend void sign_toggle_labels( GtkWidget *wid, gpointer obj ) { SENDER->label->toggle(); }		
	#undef SENDER

	private:
		// Grid & Labels
		TvWidget_bool *grid;
		GtkWidget *menu_grid;
		static GlDisplayList labels2D_lists[3];
		GtkWidget *menu_labels;

		// Zoom
		static TvWidget_float *common_zoom;
		TvWidget_float *local_zoom;
		TvWidget_float *zoom;

		void refresh();
		void pref_changed();

		void mouse_moved( GdkEventMotion *ev );
		virtual void mouse_scrolled( GdkEventScroll *ev );
		void set_viewport();
		void add_menu();
		void draw_labels();
		void reset_view( int type );
		void set_rotate();
	    void key_press( GdkEventKey *ev );

	public:
		glview2d( app_objs *appref,  ViewType mode, GtkWidget *box, GtkWidget *f1, GtkWidget *f2 );
		~glview2d();
		
		void save( ofstream & file );
		bool load( ifstream & file, char * tag );
		void clear( ViewType cltype );
		
		void reset_home();
};

#endif

About Koders | Resources | Downloads | Support | Black Duck | Submit Project | Terms of Service | DMCA | Privacy Policy | Site Map| Contact Us