// CodeGear C++Builder
// Copyright (c) 1995, 2025 by Embarcadero Technologies, Inc.
// All rights reserved

// (DO NOT EDIT: machine generated header) 'SMCntrl.pas' rev: 37.00 (Windows)

#ifndef SMCntrlHPP
#define SMCntrlHPP

#pragma delphiheader begin
#pragma option push
#if defined(__BORLANDC__) && !defined(__clang__)
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member 
#endif
#pragma pack(push,8)
#include <System.hpp>
#include <SysInit.hpp>
#include <Winapi.Windows.hpp>
#include <Winapi.Messages.hpp>
#include <System.SysUtils.hpp>
#include <System.Classes.hpp>
#include <Vcl.Graphics.hpp>
#include <Vcl.Controls.hpp>
#include <Vcl.Forms.hpp>
#include <Vcl.Dialogs.hpp>
#include <Vcl.StdCtrls.hpp>
#include <Vcl.ExtCtrls.hpp>
#include <Vcl.ComCtrls.hpp>
#include <SMPWhen.hpp>
#include <SMRTypes.hpp>
#include <ColorBtn.hpp>
#include <SMREdit.hpp>
#include <SMRDMan.hpp>
#include <SMRBase.hpp>
#include <System.Types.hpp>

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

namespace Smcntrl
{
//-- forward type declarations -----------------------------------------------
class DELPHICLASS TfrmControl;
//-- type declarations -------------------------------------------------------
enum DECLSPEC_DENUM TfrmTypeControl : unsigned char { tcNone, tcBand, tcLabel, tcExpression, tcSysData, tcImage, tcShape, tcBarCode, tcRichText };

class PASCALIMPLEMENTATION TfrmControl : public Smredit::TSMRBaseEditor
{
	typedef Smredit::TSMRBaseEditor inherited;
	
__published:
	Vcl::Extctrls::TBevel* bvlButton;
	Vcl::Stdctrls::TButton* btnOk;
	Vcl::Stdctrls::TButton* btnCancel;
	Vcl::Extctrls::TImage* imgControl;
	Vcl::Comctrls::TPageControl* pcElement;
	Vcl::Comctrls::TTabSheet* tsGeneral;
	Vcl::Comctrls::TTabSheet* tsComment;
	Vcl::Stdctrls::TMemo* memoComment;
	Vcl::Stdctrls::TLabel* lblDisplayName;
	Vcl::Stdctrls::TEdit* edDisplayName;
	Vcl::Extctrls::TRadioGroup* rgPosition;
	Vcl::Stdctrls::TCheckBox* cbTransparent;
	Vcl::Stdctrls::TButton* btnPrintWhen;
	Vcl::Comctrls::TTabSheet* tsHighLights;
	Vcl::Stdctrls::TButton* btnAdd;
	Vcl::Stdctrls::TButton* btnDelete;
	Vcl::Dialogs::TFontDialog* FontDlg;
	Vcl::Stdctrls::TLabel* lblHint;
	Vcl::Stdctrls::TEdit* edHint;
	Vcl::Stdctrls::TListBox* lbHighLight;
	Vcl::Extctrls::TPanel* pnlHighlight;
	Vcl::Stdctrls::TButton* btnHLFont;
	Colorbtn::TColorButton* btnHLColor;
	Vcl::Stdctrls::TEdit* edHLExpression;
	Vcl::Stdctrls::TButton* btnHLExp;
	void __fastcall btnPrintWhenClick(System::TObject* Sender);
	void __fastcall FormCreate(System::TObject* Sender);
	void __fastcall FormDestroy(System::TObject* Sender);
	void __fastcall FormResize(System::TObject* Sender);
	void __fastcall btnAddClick(System::TObject* Sender);
	void __fastcall btnDeleteClick(System::TObject* Sender);
	void __fastcall btnHLFontClick(System::TObject* Sender);
	void __fastcall lbHighLightClick(System::TObject* Sender);
	void __fastcall lbHighLightDrawItem(Vcl::Controls::TWinControl* Control, int Index, const Winapi::Windows::TRect &Rect, Winapi::Windows::TOwnerDrawState State);
	void __fastcall HLControlFill(System::TObject* Sender);
	void __fastcall btnHLExpClick(System::TObject* Sender);
	
protected:
	virtual void __fastcall FillStringsFromRes();
	
public:
	Smpwhen::TSMPrintWhen* PrintWhen;
	Smpwhen::TfrmPrintWhen* frmPrintWhen;
	TfrmTypeControl TypeControl;
	Smrtypes::TSMRHighLights* SMRHighLights;
	Smrdman::TSMRDataManager* FDataManager;
	System::Classes::TCollection* lstVariables;
	System::Classes::TCollection* lstParameters;
	void __fastcall UpdateHLPanel();
	void __fastcall SetDisplayName(System::UnicodeString strNew, System::UnicodeString strOld);
	virtual void __fastcall BeforeEditProperties();
	virtual void __fastcall AfterEditProperties();
public:
	/* TCustomForm.Create */ inline __fastcall virtual TfrmControl(System::Classes::TComponent* AOwner) : Smredit::TSMRBaseEditor(AOwner) { }
	/* TCustomForm.CreateNew */ inline __fastcall virtual TfrmControl(System::Classes::TComponent* AOwner, int Dummy) : Smredit::TSMRBaseEditor(AOwner, Dummy) { }
	/* TCustomForm.CreateScaledNew */ inline __fastcall virtual TfrmControl(System::Classes::TComponent* AOwner, int ADPI, int Dummy) : Smredit::TSMRBaseEditor(AOwner, ADPI, Dummy) { }
	/* TCustomForm.Destroy */ inline __fastcall virtual ~TfrmControl() { }
	
public:
	/* TWinControl.CreateParented */ inline __fastcall TfrmControl(HWND ParentWindow) : Smredit::TSMRBaseEditor(ParentWindow) { }
	
};


//-- var, const, procedure ---------------------------------------------------
}	/* namespace Smcntrl */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_SMCNTRL)
using namespace Smcntrl;
#endif
#pragma pack(pop)
#pragma option pop

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// SMCntrlHPP
