/***************************************************************************
                          modcalcgeodcoord.h  -  description
                             -------------------
    begin                : Tue Jan 15 2002
    copyright            : (C) 2002 by Pablo de Vicente
    email                : vicente@oan.es
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   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.                                   *
 *                                                                         *
 ***************************************************************************/

#ifndef MODCALCGEODCOORD_H
#define MODCALCGEODCOORD_H

#include "modcalcgeoddlg.h"

/**
  * Class which implements the KStars calculator module to compute
  * Geodetic coordinates to/from Cartesian coordinates.
  *  
  * Inherits TQVBox
  *@author Pablo de Vicente
	*@version 0.9
  */

//class TQWidget;
//class TQLineEdit;
//class TQRadioButton;
//class dmsBox;
class GeoLocation;

class modCalcGeodCoord : public modCalcGeodCoordDlg {

	TQ_OBJECT
  
	public:
	
		modCalcGeodCoord(TQWidget *p, const char *n);
		~modCalcGeodCoord();
	
		void genGeoCoords(void);
		void getCartGeoCoords (void);
		void getSphGeoCoords (void);
		void showSpheGeoCoords(void);
		void showCartGeoCoords(void);

	public slots:
	
		void slotComputeGeoCoords (void);
		void slotClearGeoCoords (void);		
		void setEllipsoid(int i);
		void slotLongCheckedBatch();
		void slotLatCheckedBatch();
		void slotElevCheckedBatch();
		void slotXCheckedBatch();
		void slotYCheckedBatch();
		void slotZCheckedBatch();
		void slotOutputFile();
		void slotInputFile();
	private:

		void geoCheck(void);
		void xyzCheck(void);
		void showLongLat(void);
		void processLines( TQTextStream &istream );
		void slotRunBatch(void);

//		TQRadioButton *cartRadio, *spheRadio;
//		TQVBox *vbox, *rightBox;
//		TQLineEdit *xGeoName, *yGeoName, *zGeoName, *altGeoName;
//		dmsBox *timeBox, *dateBox, *lonGeoBox, *latGeoBox;

		GeoLocation *geoPlace;
		bool xyzInputCoords;

};
	
#endif
