//
// C++ Interface:
//
// Description:
//
//
// Author: Christian Hubinger <chubinger@irrsinnig.org>, (C) 2007
//
// Copyright: See COPYING file that comes with this distribution
//
//

#ifndef KMFNETHOSTPROPERTIESWIDGET_H
#define KMFNETHOSTPROPERTIESWIDGET_H

#include "kmyfirewallnethostproperties.h"

// TQt include
#include <tqguardedptr.h>
#include <tdemacros.h>

namespace KMF {
class KMFNetHost;
class KMFIPv4AddressWidget;

class TDE_EXPORT KMFNetHostPropertiesWidget : public KMyFirewallNetHostProperties {
		TQ_OBJECT
  

	public:
		KMFNetHostPropertiesWidget ( TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
		~KMFNetHostPropertiesWidget();
		/*$PUBLIC_FUNCTIONS$*/
		
		void loadHost( KMFNetHost* );
	public slots:
		/*$PUBLIC_SLOTS$*/
		
	protected:
		/*$PROTECTED_FUNCTIONS$*/

	protected slots:
		/*$PROTECTED_SLOTS$*/
		void slotAddressChanged( int, int, int, int );
		void slotHostLimitToggled( bool );
		void slotHostLogToggled( bool );
		void slotHostLimitValueChanged( int );
		void slotHostLimitScaleChanged( int );
		void slotDescriptionChanged();
		void slotHostDeleted();	
	
	private:
		void blockAllSignals( bool );
	
	private: 
		TQGuardedPtr<KMFNetHost> m_host;
		KMFIPv4AddressWidget *m_address_widget;
		
	signals:	
		void sigHostAddressChanged( const TQString& );
		void sigHostChanged( KMFNetHost* );
};
}
#endif

