You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
162 lines
3.5 KiB
162 lines
3.5 KiB
//
|
|
// C++ Interface: configspamcheck
|
|
//
|
|
// Description:
|
|
//
|
|
//
|
|
// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
|
|
//
|
|
// Copyright: See COPYING file that comes with this distribution
|
|
//
|
|
//
|
|
#ifndef CONFIGSPAMCHECK_H
|
|
#define CONFIGSPAMCHECK_H
|
|
|
|
//C-headers
|
|
#include <unistd.h>
|
|
#include <stdlib.h>
|
|
#include <stdio.h>
|
|
#include <string.h>
|
|
|
|
//TQt headers
|
|
#include <tqlayout.h>
|
|
#include <tqlabel.h>
|
|
#include <tqgroupbox.h>
|
|
#include <tqtooltip.h>
|
|
|
|
//KDE headers
|
|
#include <tdecmodule.h>
|
|
#include <tdeconfig.h>
|
|
#include <kgenericfactory.h>
|
|
#include <tdeapplication.h>
|
|
#include <kpushbutton.h>
|
|
#include <kstdguiitem.h>
|
|
#include <kcombobox.h>
|
|
#include <klineedit.h>
|
|
#include <tdemessagebox.h>
|
|
|
|
//Kshowmail headers
|
|
#include "../constants.h"
|
|
#include "mailboxwizard.h"
|
|
|
|
//radio button IDs
|
|
#define ID_SPAM_ACTION_BUTTONS_DELETE 0
|
|
#define ID_SPAM_ACTION_BUTTONS_MARK 1
|
|
#define ID_SPAM_ACTION_BUTTONS_MOVE 2
|
|
|
|
|
|
/**
|
|
* @brief Part of the setup dialog (KShowMailApp::SetupDialog) to configure the spam check.
|
|
* @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
|
|
*/
|
|
class ConfigSpamcheck : public TDECModule
|
|
{
|
|
|
|
TQ_OBJECT
|
|
|
|
|
|
public:
|
|
/**
|
|
* Generic constructor
|
|
*/
|
|
ConfigSpamcheck( TQWidget* parent = 0, const char* name = 0, const TQStringList &args = TQStringList() );
|
|
|
|
/**
|
|
* Destructor
|
|
*/
|
|
~ConfigSpamcheck();
|
|
|
|
/**
|
|
* Overloaded method of TDECModule.
|
|
* Sets the user interface elements to reflect the current settings stored in the
|
|
* config file.
|
|
*/
|
|
virtual void load();
|
|
|
|
/**
|
|
* Overloaded method of TDECModule.
|
|
* Sets the user interface elements to default values.
|
|
* This method is called when the user clicks the "Default" button.
|
|
*/
|
|
virtual void defaults();
|
|
|
|
/**
|
|
* Overloaded method of TDECModule.
|
|
* Stores the config information as shown in the user interface in the
|
|
* config file.
|
|
* Is called when the user clicks "Apply" or "Ok".
|
|
*/
|
|
virtual void save();
|
|
|
|
private:
|
|
|
|
/**
|
|
* Connector to the configuration file
|
|
*/
|
|
TDEConfig* config;
|
|
|
|
/**
|
|
* Button to test for a running SpamAssassin
|
|
*/
|
|
KPushButton* btnTest;
|
|
|
|
/**
|
|
* Combobox to select the action for spam.
|
|
*/
|
|
KComboBox* cmbAction;
|
|
|
|
/**
|
|
* If selected, the spam mails will be moved to the mailbox which is written in this edit line.
|
|
*/
|
|
KLineEdit* txtMailbox;
|
|
|
|
/**
|
|
* This button opens a wizard which will help to get the right mailbox
|
|
*/
|
|
KPushButton* btnMailboxWizard;
|
|
|
|
/**
|
|
* Contains the widgets of action configuration.
|
|
*/
|
|
TQGroupBox* gboxAction;
|
|
|
|
private slots:
|
|
|
|
/**
|
|
* Connected with the configuration items.
|
|
* Calls the slot changed() of TDECModule to notify the dialog about the change.
|
|
*/
|
|
void slotChanged();
|
|
|
|
/**
|
|
* Connected with combobox cmbAction.
|
|
* Enables or disables additional widgets for action configuration.
|
|
* @param index position (index) of the selected action
|
|
*/
|
|
void slotActionChanged( int index );
|
|
|
|
/**
|
|
* Connected with button btnMailboxWizard.
|
|
* Opens a wizard to configure the mailbox
|
|
*/
|
|
void slotOpenMailBoxWizard();
|
|
|
|
/**
|
|
* Connected with btnTest.
|
|
* Tests whether SpamAssassin is running and shows a message box containing the result.
|
|
* Enables or disables the action widgets.
|
|
*/
|
|
void slotTestSpamAssassin();
|
|
|
|
protected:
|
|
|
|
/**
|
|
* Looks for a running spamd daemon of SpamAssassin.
|
|
* @return TRUE - SpamAssassin is running
|
|
*/
|
|
bool isSpamAssassinRunning() const;
|
|
|
|
};
|
|
|
|
#endif
|