//Auto-generated by kalyptus. DO NOT EDIT.
namespace Kimono {
    using System;
    using Qyoto;
    using System.Collections.Generic;
    /// <remarks>
    ///  Abstract baseclass for all preview widgets which shall be used via
    ///  KFileDialog.SetPreviewWidget(const KPreviewWidgetBase ).
    ///  Ownership will be transferred to KFileDialog, so you have to create
    ///  the preview with "new" and let KFileDialog delete it.
    ///  Just derive your custom preview widget from KPreviewWidgetBase and implement
    ///  all the pure methods. The slot showPreview(KUrl) is called
    ///  every time the file selection changes.
    /// </remarks>        <author> Frerich Raabe <raabe@kde.org>
    ///  </author>
    ///         <short> Abstract baseclass for all preview widgets. </short>
    [SmokeClass("KPreviewWidgetBase")]
    public abstract class KPreviewWidgetBase : QWidget {
        protected KPreviewWidgetBase(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(KPreviewWidgetBase), this);
        }
        /// <remarks>
        ///  Constructor. Construct the user interface of your preview widget here
        ///  and pass the KFileDialog this preview widget is going to be used in as
        ///  the parent.
        /// <param> name="parent" The KFileDialog this preview widget is going to be used in
        ///      </param></remarks>        <short>    Constructor.</short>
        public KPreviewWidgetBase(QWidget parent) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("KPreviewWidgetBase#", "KPreviewWidgetBase(QWidget*)", typeof(void), typeof(QWidget), parent);
        }
        /// <remarks>
        ///  This slot is called every time the user selects another file in the
        ///  file dialog. Implement the stuff necessary to reflect the change here.
        /// <param> name="url" The URL of the currently selected file.
        ///      </param></remarks>        <short>    This slot is called every time the user selects another file in the  file dialog.</short>
        [SmokeMethod("showPreview(const KUrl&)")]
        public abstract void ShowPreview(KUrl url);
        /// <remarks>
        ///  Reimplement this to clear the preview. This is called when e.g. the
        ///  selection is cleared or when multiple selections exist, or the directory
        ///  is changed.
        ///      </remarks>        <short>    Reimplement this to clear the preview.</short>
        [SmokeMethod("clearPreview()")]
        public abstract void ClearPreview();
        [Q_SLOT("QStringList supportedMimeTypes()")]
        public List<string> SupportedMimeTypes() {
            return (List<string>) interceptor.Invoke("supportedMimeTypes", "supportedMimeTypes() const", typeof(List<string>));
        }
        protected void SetSupportedMimeTypes(List<string> mimeTypes) {
            interceptor.Invoke("setSupportedMimeTypes?", "setSupportedMimeTypes(const QStringList&)", typeof(void), typeof(List<string>), mimeTypes);
        }
        protected new IKPreviewWidgetBaseSignals Emit {
            get { return (IKPreviewWidgetBaseSignals) Q_EMIT; }
        }
    }

    public interface IKPreviewWidgetBaseSignals : IQWidgetSignals {
    }
}
