//Auto-generated by kalyptus. DO NOT EDIT.
namespace Plasma {
    using Plasma;
    using System;
    using Kimono;
    using Qyoto;
    /// <remarks>
    ///  @class LineEdit plasma/widgets/lineedit.h <Plasma/Widgets/LineEdit>
    ///  See <see cref="ILineEditSignals"></see> for signals emitted by LineEdit
    /// </remarks>        <short> Provides a plasma-themed KLineEdit.  </short>
    [SmokeClass("Plasma::LineEdit")]
    public class LineEdit : QGraphicsProxyWidget, IDisposable {
        protected LineEdit(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(LineEdit), this);
        }
        [Q_PROPERTY("QGraphicsWidget*", "parentWidget")]
        public QGraphicsWidget ParentWidget {
            get { return (QGraphicsWidget) interceptor.Invoke("parentWidget", "parentWidget()", typeof(QGraphicsWidget)); }
        }
        [Q_PROPERTY("QString", "text")]
        public string Text {
            get { return (string) interceptor.Invoke("text", "text()", typeof(string)); }
            set { interceptor.Invoke("setText$", "setText(QString)", typeof(void), typeof(string), value); }
        }
        [Q_PROPERTY("bool", "isClearButtonShown")]
        public bool IsClearButtonShown {
            get { return (bool) interceptor.Invoke("isClearButtonShown", "isClearButtonShown()", typeof(bool)); }
            set { interceptor.Invoke("setClearButtonShown$", "setClearButtonShown(bool)", typeof(void), typeof(bool), value); }
        }
        [Q_PROPERTY("QString", "styleSheet")]
        public string StyleSheet {
            get { return (string) interceptor.Invoke("styleSheet", "styleSheet()", typeof(string)); }
            set { interceptor.Invoke("setStyleSheet$", "setStyleSheet(QString)", typeof(void), typeof(string), value); }
        }
        [Q_PROPERTY("KLineEdit*", "nativeWidget")]
        public KLineEdit NativeWidget {
            get { return (KLineEdit) interceptor.Invoke("nativeWidget", "nativeWidget()", typeof(KLineEdit)); }
        }
        public LineEdit(QGraphicsWidget parent) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("LineEdit#", "LineEdit(QGraphicsWidget*)", typeof(void), typeof(QGraphicsWidget), parent);
        }
        public LineEdit() : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("LineEdit", "LineEdit()", typeof(void));
        }
        ~LineEdit() {
            interceptor.Invoke("~LineEdit", "~LineEdit()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~LineEdit", "~LineEdit()", typeof(void));
        }
        protected new ILineEditSignals Emit {
            get { return (ILineEditSignals) Q_EMIT; }
        }
    }

    public interface ILineEditSignals : IQGraphicsProxyWidgetSignals {
        [Q_SIGNAL("void editingFinished()")]
        void EditingFinished();
        [Q_SIGNAL("void returnPressed()")]
        void ReturnPressed();
        [Q_SIGNAL("void textEdited(QString)")]
        void TextEdited(string text);
    }
}
