/***************************************************************************
                            KEMailSettings.java -  description
                             -------------------
    begin                : Sun Jan 27 16:22:17 2002
    copyright            : (C) 2000-2001 Lost Highway Ltd.
    email                : Richard_Dale@tipitina.demon.co.uk
    generated by         : duke@tipitina on Sun Jan 27 16:22:17 2002, using kalyptus 0.9.
 ***************************************************************************/

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

package org.kde.koala;

import org.kde.qt.*;
import java.util.*;
import java.lang.Error;

/**

 This is just a small class to facilitate accessing e-mail settings in 
 a sane way, and allowing any program to manage multiple e-mail 
 profiles effortlessly

 @author Alex Zepeda jazepeda@pacbell.net

 @short 
 This is just a small class to facilitate accessing e-mail settings in 
 a sane way, and allowing any program to manage multiple e-mail 
 profiles effortlessly

*/
public class  KEMailSettings implements QtSupport {
	private long _qt;
	private boolean _allocatedInJavaWorld = true;

	protected KEMailSettings(Class dummy){}

	private native void newKEMailSettings();

/** 
 Default constructor, just sets things up.

*/
	public KEMailSettings() {
		newKEMailSettings();
	}

/** 
 Default destructor, nothing to see here.

*/
	protected native void finalize() throws InternalError;
	public native void dispose();
	public native boolean isDisposed();

/** 
 List of profiles available.

*/
	public native ArrayList profiles();

/** 

*/
	public native String currentProfileName();

/** 
 Change the current profile.

*/
	public native void setProfile( String arg1);

/** 

*/
	public native String defaultProfileName();

/** 
 New default..

*/
	public native void setDefault( String arg1);

/** 
 Get a "basic" setting, one that I've already thought of..

*/
	public native String getSetting( int s);
	public native void setSetting( int s, String v);

/** 
 Use this when trying to get at currently unimplemented settings
 such as POP3 authentication methods, or mail specific TLS settings
 or something I haven't already thought of.

*/
	public native String getExtendedSetting( int e, String s);

/** 
 Use this when trying to get at currently unimplemented settings
 such as POP3 authentication methods, or mail specific TLS settings
 or something I haven't already thought of.

*/
	public native void setExtendedSetting( int e, String s, String v);
	public static final int ClientProgram = 0;
	public static final int ClientTerminal = 1;
	public static final int RealName = 2;
	public static final int EmailAddress = 3;
	public static final int ReplyToAddress = 4;
	public static final int Organization = 5;
	public static final int OutServer = 6;
	public static final int OutServerLogin = 7;
	public static final int OutServerPass = 8;
	public static final int OutServerType = 9;
	public static final int OutServerCommand = 10;
	public static final int OutServerTLS = 11;
	public static final int InServer = 12;
	public static final int InServerLogin = 13;
	public static final int InServerPass = 14;
	public static final int InServerType = 15;
	public static final int InServerMBXType = 16;
	public static final int InServerTLS = 17;
	public static final int POP3 = 0;
	public static final int SMTP = 1;
	public static final int OTHER = 2;
}
