Dooble
Main Page
Classes
Files
File List
Source
dooble_web_engine_view.h
1
/*
2
** Copyright (c) 2008 - present, Alexis Megas.
3
** All rights reserved.
4
**
5
** Redistribution and use in source and binary forms, with or without
6
** modification, are permitted provided that the following conditions
7
** are met:
8
** 1. Redistributions of source code must retain the above copyright
9
** notice, this list of conditions and the following disclaimer.
10
** 2. Redistributions in binary form must reproduce the above copyright
11
** notice, this list of conditions and the following disclaimer in the
12
** documentation and/or other materials provided with the distribution.
13
** 3. The name of the author may not be used to endorse or promote products
14
** derived from Dooble without specific prior written permission.
15
**
16
** DOOBLE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17
** IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18
** OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19
** IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20
** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21
** NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25
** DOOBLE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
*/
27
28
#ifndef dooble_web_engine_view_h
29
#define dooble_web_engine_view_h
30
31
#include <QWebEngineView>
32
33
class
dooble_web_engine_page
;
34
35
class
dooble_web_engine_view
:
public
QWebEngineView
36
{
37
Q_OBJECT
38
39
public
:
40
dooble_web_engine_view
(QWebEngineProfile *web_engine_profile,
41
QWidget *parent);
42
~
dooble_web_engine_view
();
43
QWebEngineProfile *web_engine_profile(
void
)
const
;
44
bool
is_private(
void
)
const
;
45
void
save(
const
QString &file_name);
46
47
protected
:
48
dooble_web_engine_view
*createWindow(QWebEnginePage::WebWindowType type);
49
void
contextMenuEvent(QContextMenuEvent *event);
50
51
private
:
52
QList<dooble_web_engine_view *> m_dialog_requests;
53
bool
m_is_private;
54
dooble_web_engine_page
*m_page;
55
56
private
slots:
57
void
slot_accept_or_block_domain(
void
);
58
void
slot_certificate_exception_accepted(
const
QUrl &url);
59
void
slot_create_dialog_requests(
void
);
60
void
slot_open_link_in_new_private_window(
void
);
61
void
slot_open_link_in_new_tab(
void
);
62
void
slot_open_link_in_new_window(
void
);
63
void
slot_settings_applied(
void
);
64
65
signals:
66
void
create_dialog(
dooble_web_engine_view
*view);
67
void
create_dialog_request(
dooble_web_engine_view
*view);
68
void
create_tab(
dooble_web_engine_view
*view);
69
void
create_window(
dooble_web_engine_view
*view);
70
void
downloadRequested(QWebEngineDownloadItem *download);
71
void
open_link_in_new_private_window(
const
QUrl &url);
72
void
open_link_in_new_tab(
const
QUrl &url);
73
void
open_link_in_new_window(
const
QUrl &url);
74
};
75
76
#endif
dooble_web_engine_view
Definition:
dooble_web_engine_view.h:35
dooble_web_engine_page
Definition:
dooble_web_engine_page.h:36
Generated by
1.8.11