Example #1
0
void KHTMLPartBrowserExtension::setExtensionProxy( KParts::BrowserExtension *proxy )
{
    if ( m_extensionProxy )
    {
        disconnect( m_extensionProxy, SIGNAL(enableAction(const char*,bool)),
                    this, SLOT(extensionProxyActionEnabled(const char*,bool)) );
        if ( m_extensionProxy->inherits( "KHTMLPartBrowserExtension" ) )
        {
            disconnect( m_extensionProxy, SIGNAL(editableWidgetFocused()),
                        this, SLOT(extensionProxyEditableWidgetFocused()) );
            disconnect( m_extensionProxy, SIGNAL(editableWidgetBlurred()),
                        this, SLOT(extensionProxyEditableWidgetBlurred()) );
        }
    }

    m_extensionProxy = proxy;

    if ( m_extensionProxy )
    {
        connect( m_extensionProxy, SIGNAL(enableAction(const char*,bool)),
                 this, SLOT(extensionProxyActionEnabled(const char*,bool)) );
        if ( m_extensionProxy->inherits( "KHTMLPartBrowserExtension" ) )
        {
            connect( m_extensionProxy, SIGNAL(editableWidgetFocused()),
                     this, SLOT(extensionProxyEditableWidgetFocused()) );
            connect( m_extensionProxy, SIGNAL(editableWidgetBlurred()),
                     this, SLOT(extensionProxyEditableWidgetBlurred()) );
        }

        enableAction( "cut", m_extensionProxy->isActionEnabled( "cut" ) );
        enableAction( "copy", m_extensionProxy->isActionEnabled( "copy" ) );
        enableAction( "paste", m_extensionProxy->isActionEnabled( "paste" ) );
    }
    else
    {
Example #2
0
void KHTMLPartBrowserExtension::editableWidgetFocused(QWidget *widget)
{
    m_editableFormWidget = widget;
    updateEditActions();

    if(!m_connectedToClipboard && m_editableFormWidget)
    {
        connect(QApplication::clipboard(), SIGNAL(dataChanged()), this, SLOT(updateEditActions()));

        if(m_editableFormWidget->inherits("QLineEdit") || m_editableFormWidget->inherits("QTextEdit"))
            connect(m_editableFormWidget, SIGNAL(selectionChanged()), this, SLOT(updateEditActions()));

        m_connectedToClipboard = true;
    }
    editableWidgetFocused();
}