Sha256: 0533ad4bbc1608327c68e9207eedea3a6c2067be24d49b2fe8ca335c41722745

Contents?: true

Size: 938 Bytes

Versions: 4

Compression:

Stored size: 938 Bytes

Contents

#include <QObject>
#include <QStringList>

class Command;
class Response;
class WebPage;

/*
 * Decorates a Command by deferring the finished() signal until any pending
 * page loads are complete.
 *
 * If a Command starts a page load, no signal will be emitted until the page
 * load is finished.
 *
 * If a pending page load fails, the command's response will be discarded and a
 * failure response will be emitted instead.
 */
class PageLoadingCommand : public QObject {
  Q_OBJECT

  public:
    PageLoadingCommand(Command *command, WebPage *page, QObject *parent = 0);
    void start();

  public slots:
    void pageLoadingFromCommand();
    void pendingLoadFinished(bool success);
    void commandFinished(Response *response);

  signals:
    void finished(Response *response);

  private:
    WebPage *m_page;
    Command *m_command;
    Response *m_pendingResponse;
    bool m_pageSuccess;
    bool m_pageLoadingFromCommand;
};

Version data entries

4 entries across 4 versions & 3 rubygems

Version Path
imseng-capybara-webkit-0.12.1 src/PageLoadingCommand.h
capybara-webkit-0.12.1 src/PageLoadingCommand.h
otherinbox-capybara-webkit-0.12.0 src/PageLoadingCommand.h
capybara-webkit-0.12.0 src/PageLoadingCommand.h