// Borland C++ Builder
// Copyright (c) 1995, 1998 by Borland International
// All rights reserved

// (DO NOT EDIT: machine generated header) 'ImageEn.pas' rev: 3.00

#ifndef ImageEnHPP
#define ImageEnHPP
#include <iedefs.hpp>
#include <ImageEnIO.hpp>
#include <ImageEnProc.hpp>
#include <ImageEnView.hpp>
#include <StdCtrls.hpp>
#include <Clipbrd.hpp>
#include <ExtCtrls.hpp>
#include <Dialogs.hpp>
#include <Forms.hpp>
#include <Controls.hpp>
#include <Graphics.hpp>
#include <Classes.hpp>
#include <SysUtils.hpp>
#include <Messages.hpp>
#include <Windows.hpp>
#include <SysInit.hpp>
#include <System.hpp>

//-- user supplied -----------------------------------------------------------

namespace Imageen
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TImageEn;
class PASCALIMPLEMENTATION TImageEn : public Imageenview::TImageEnView 
{
	typedef Imageenview::TImageEnView inherited;
	
private:
	void __fastcall SetAutoUndo(bool v);
	bool __fastcall GetAutoUndo(void);
	void __fastcall SetOnProgress(Iedefs::TProgressEvent v);
	Iedefs::TProgressEvent __fastcall GetOnProgress(void);
	Imageenproc::TPRPreviewsParams __fastcall GetProcPreviewsParams(void);
	void __fastcall SetProcPreviewsParams(Imageenproc::TPRPreviewsParams v);
	Imageenio::TIOPreviewsParams __fastcall GetIOPreviewsParams(void);
	void __fastcall SetIOPreviewsParams(Imageenio::TIOPreviewsParams v);
	Imageenio::TIOParamsVals* __fastcall GetIOParams(void);
	void __fastcall SetPreviewFont(Graphics::TFont* f);
	Graphics::TFont* __fastcall GetPreviewFont(void);
	Iedefs::TMsgLanguage __fastcall GetMsgLanguage(void);
	void __fastcall SetMsgLanguage(Iedefs::TMsgLanguage v);
	void __fastcall SetStreamHeaders(bool v);
	bool __fastcall GetStreamHeaders(void);
	void __fastcall SetAborting(bool v);
	bool __fastcall GetAborting(void);
	bool __fastcall GetCanUndo(void);
	Imageenio::TIETWainParams* __fastcall GetTWainParams(void);
	
protected:
	Imageenproc::TImageEnProc* fImageEnProc;
	Imageenio::TImageEnIO* fImageEnIO;
	
public:
	__fastcall virtual TImageEn(Classes::TComponent* Owner);
	__fastcall virtual ~TImageEn(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	void __fastcall AssignIOParams(System::TObject* Source);
	void __fastcall SaveToFileJpeg(const System::AnsiString nf);
	void __fastcall LoadFromFileJpeg(const System::AnsiString nf);
	int __fastcall LoadFromFileGif(const System::AnsiString nf);
	void __fastcall SaveToFileGif(const System::AnsiString nf);
	int __fastcall InsertToFileGif(const System::AnsiString nf);
	DYNAMIC void __fastcall LoadFromFile(const System::AnsiString nf);
	DYNAMIC void __fastcall SaveToFile(const System::AnsiString nf);
	void __fastcall SaveToStreamJpeg(Classes::TStream* Stream);
	void __fastcall LoadFromStreamJpeg(Classes::TStream* Stream);
	int __fastcall LoadFromStreamGif(Classes::TStream* Stream);
	void __fastcall SaveToStreamGif(Classes::TStream* Stream);
	void __fastcall SaveToStreamPCX(Classes::TStream* Stream);
	void __fastcall LoadFromStreamPCX(Classes::TStream* Stream);
	int __fastcall LoadFromFileTIFF(const System::AnsiString nf);
	int __fastcall LoadFromStreamTIFF(Classes::TStream* Stream);
	void __fastcall SaveToStreamBMP(Classes::TStream* Stream);
	void __fastcall LoadFromStreamBMP(Classes::TStream* Stream);
	void __fastcall SaveToFileBMP(const System::AnsiString nf);
	void __fastcall LoadFromFileBMP(const System::AnsiString nf);
	void __fastcall LoadFromFilePCX(const System::AnsiString nf);
	void __fastcall SaveToFilePCX(const System::AnsiString nf);
	void __fastcall SaveToStreamTIFF(Classes::TStream* Stream);
	void __fastcall SaveToFileTIFF(const System::AnsiString nf);
	void __fastcall LoadFromFileICO(const System::AnsiString nf);
	void __fastcall LoadFromStreamICO(Classes::TStream* Stream);
	void __fastcall LoadFromFileCUR(const System::AnsiString nf);
	void __fastcall LoadFromStreamCUR(Classes::TStream* Stream);
	void __fastcall LoadFromFilePNG(const System::AnsiString nf);
	void __fastcall LoadFromStreamPNG(Classes::TStream* Stream);
	void __fastcall SaveToFilePNG(const System::AnsiString nf);
	void __fastcall saveToStreamPNG(Classes::TStream* Stream);
	void __fastcall ImportMetafile(const System::AnsiString nf, int Width, int Height);
	int __fastcall InsertToFileTIFF(const System::AnsiString nf);
	__property Imageenio::TIOParamsVals* IOParams = {read=GetIOParams};
	__property bool Aborting = {read=GetAborting, write=SetAborting, nodefault};
	DYNAMIC void __fastcall ParamsFromFile(const System::AnsiString nf);
	DYNAMIC void __fastcall ParamsFromStream(Classes::TStream* Stream);
	bool __fastcall Acquire(void);
	void __fastcall SelectAcquireSource(void);
	__property Imageenio::TIETWainParams* TWainParams = {read=GetTWainParams};
	void __fastcall Negative(void);
	void __fastcall HSLvar(int oHue, int oSat, int oLum);
	void __fastcall HSVvar(int oHue, int oSat, int oVal);
	void __fastcall IntensityRGBall(int r, int g, int b);
	void __fastcall Contrast(int vv);
	void __fastcall ApplyFilter(const Imageenproc::TGraphFilter &filter);
	void __fastcall ApplyFilterPreset(Imageenproc::TIEFilterPresets filter);
	void __fastcall ConvertToGray(void);
	void __fastcall ConvertTo(int NumColors);
	void __fastcall CropSel(void);
	void __fastcall CastColorRange(Iedefs::TRGB BeginColor, Iedefs::TRGB EndColor, Iedefs::TRGB CastColor
		);
	void __fastcall Rotate(int fangle, bool antialias);
	void __fastcall Flip(Imageenproc::TFlipDir dir);
	void __fastcall ImageResize(int newWidth, int newHeight);
	void __fastcall Resample(int NewWidth, int NewHeight, Iedefs::TResampleFilter FilterType);
	bool __fastcall DoPreviews(Imageenproc::TPreviewEffects pe);
	bool __fastcall DoIOPreviews(Imageenio::TPreviewParams pp);
	HIDESBASE void __fastcall Clear(void);
	void __fastcall ClearSel(void);
	void __fastcall Merge(Graphics::TBitmap* DBitmap, int pcf);
	void __fastcall Threshold(Iedefs::TRGB DownLimit, Iedefs::TRGB UpLimit, Iedefs::TRGB DownVal, Iedefs::TRGB 
		UpVal);
	void __fastcall HistEqualize(Iedefs::TRGB LoThresh, Iedefs::TRGB HiThresh);
	void __fastcall HistAutoEqualize(void);
	void __fastcall BumpMapping(int LightX, int LightY, int LampX, int LampY, int pcf, Iedefs::TRGB Color
		);
	void __fastcall Lens(int cx, int cy, int Width, int Height, double Refraction);
	void __fastcall Wave(int amplitude, int wavelength, int phase, bool reflective);
	int __fastcall WriteHiddenText(System::AnsiString text);
	int __fastcall WriteHiddenData(char * data, int count);
	void __fastcall GetHistogram(Imageenproc::THistogramItem * Hist);
	void __fastcall CalcImagePalette(Iedefs::TRGB * Palette, const int Palette_Size, int MaxCol);
	int __fastcall CalcImageNumColors(void);
	Graphics::TBitmap* __fastcall GetHSVChannel(int ch);
	void __fastcall GetHSVChannelAll(Graphics::TBitmap* BitmapH, Graphics::TBitmap* BitmapS, Graphics::TBitmap* 
		BitmapV);
	void __fastcall ConvertToBWOrdered(void);
	void __fastcall ConvertToBWThreshold(int Threshold);
	void __fastcall ConvertTo24Bit(void);
	System::AnsiString __fastcall ReadHiddenText(void);
	int __fastcall ReadHiddenData(char * data, int maxlen);
	int __fastcall GetHiddenDataSpace(void);
	void __fastcall SaveUndo(void);
	void __fastcall ClearUndo(void);
	void __fastcall Undo(void);
	__property bool CanUndo = {read=GetCanUndo, nodefault};
	void __fastcall SelCopyToClip(void);
	void __fastcall CopyToClipboard(void);
	void __fastcall SelPasteFromClipStretch(void);
	void __fastcall PasteFromClipboard(void);
	void __fastcall PointPasteFromClip(int x1, int y1);
	void __fastcall SelCutToClip(void);
	__property Imageenproc::TImageEnProc* ImageEnProc = {read=fImageEnProc};
	__property Imageenio::TImageEnIO* ImageEnIO = {read=fImageEnIO};
	
__published:
	__property bool AutoUndo = {read=GetAutoUndo, write=SetAutoUndo, default=1};
	__property Iedefs::TProgressEvent OnProgress = {read=GetOnProgress, write=SetOnProgress};
	__property Iedefs::TMsgLanguage MsgLanguage = {read=GetMsgLanguage, write=SetMsgLanguage, default=0
		};
	__property Imageenproc::TPRPreviewsParams ProcPreviewsParams = {read=GetProcPreviewsParams, write=SetProcPreviewsParams
		, default=0};
	__property Imageenio::TIOPreviewsParams IOPreviewsParams = {read=GetIOPreviewsParams, write=SetIOPreviewsParams
		, default=0};
	__property Graphics::TFont* PreviewFont = {read=GetPreviewFont, write=SetPreviewFont};
	__property bool StreamHeaders = {read=GetStreamHeaders, write=SetStreamHeaders, default=0};
public:
	/* TWinControl.CreateParented */ __fastcall TImageEn(HWND ParentWindow) : Imageenview::TImageEnView(
		ParentWindow) { }
	
};

//-- var, const, procedure ---------------------------------------------------

}	/* namespace Imageen */
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using namespace Imageen;
#endif
//-- end unit ----------------------------------------------------------------
#endif	// ImageEn
