创建版本

This commit is contained in:
shileiye 2021-12-24 18:15:44 +08:00
commit 10c41537c9
1266 changed files with 291253 additions and 0 deletions

8
.idea/.gitignore generated vendored Normal file
View File

@ -0,0 +1,8 @@
# 默认忽略的文件
/shelf/
/workspace.xml
# 数据源本地存储已忽略文件
/dataSources/
/dataSources.local.xml
# 基于编辑器的 HTTP 客户端请求
/httpRequests/

3
.idea/dictionaries/sl.xml generated Normal file
View File

@ -0,0 +1,3 @@
<component name="ProjectDictionaryState">
<dictionary name="sl" />
</component>

6
.idea/encodings.xml generated Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" defaultCharsetForPropertiesFiles="UTF-8">
<file url="PROJECT" charset="UTF-8" />
</component>
</project>

View File

@ -0,0 +1,6 @@
<component name="InspectionProjectProfileManager">
<settings>
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>
</component>

4
.idea/misc.xml generated Normal file
View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.9 (onekey)" project-jdk-type="Python SDK" />
</project>

8
.idea/modules.xml generated Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/onekey.iml" filepath="$PROJECT_DIR$/.idea/onekey.iml" />
</modules>
</component>
</project>

10
.idea/onekey.iml generated Normal file
View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/venv" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

Binary file not shown.

Binary file not shown.

26
config.ini Normal file
View File

@ -0,0 +1,26 @@
[DEFAULT]
dir = D:\LYserver\
file_encoding = utf-8
[GAME_SET]
game_name = 幽冥传奇
now_ip = 192.168.0.186
new_ip = 192.168.0.186
[SERVER_PATH]
php_path = ${dir}phpstudy_pro\Extensions\php\php5.6.9nts\
php_spawner_path = ${dir}phpstudy_pro\COM\
php_cgi_port = 9001
nginx_path = ${dir}phpstudy_pro\Extensions\Nginx1.15.11\
mysql_path = ${dir}phpstudy_pro\Extensions\MySQL5.7.26\
[GAME_PATH]
game_path = ${dir}build_pub\Common\AMServer\x64\AMServer64_R.exe|${dir}build_pub\Common\LocalLogServer\x64\LocalLogServer64_R.exe|${dir}build_pub\Common\LoggerServer\x64\LoggerServer64_R.exe|${dir}build_pub\Common\SessionServer\x64\SessionServer64_R.exe|${dir}build_pub\Common\NameServer\x64\NameServer64_R.exe|${dir}build_pub\Common\BackStageServer\x64\BackStageServer64_R.exe,10|${dir}build_pub\Server\DBServer\x64\DBServer64_R.exe|${dir}build_pub\Server\GateServer\x64\GateServer64_R.exe|${dir}build_pub\Server\LogicServer\x64\LogicServerCQ64_R.exe|${dir}build_pub\Server2\DBServer\x64\DBServer64_R.exe|${dir}build_pub\Server2\GateServer\x64\GateServer64_R.exe|${dir}build_pub\Server2\LogicServer\x64\LogicServerCQ64_R.exe|${dir}build_pub\Server跨服\DBServer\x64\DBServer64_R.exe|${dir}build_pub\Server跨服\GateServer\x64\GateServer64_R.exe|${dir}build_pub\Server跨服\LogicServer\x64\LogicServerCQ64_R.exe
[MODFILE]
dirname = ${dir}测试1.txt|${dir}测试2.txt|${dir}apk\game\assets\data\scripts\platform\platform_adapter.lua|${dir}apk\game\assets\data\scripts\platform\windows\platform_adapter.lua|${dir}build_pub\server\LogicServer\crossserver.txt|${dir}build_pub\server\DBServer\crossserver.txt|${dir}build_pub\server2\LogicServer\crossserver.txt|${dir}build_pub\server2\DBServer\crossserver.txt|${dir}build_pub\server跨服\LogicServer\crossserver.txt|${dir}build_pub\server跨服\DBServer\crossserver.txt|${dir}phpstudy_pro\WWW\args.php|${dir}phpstudy_pro\WWW\args_ios.php|${dir}phpstudy_pro\WWW\api\notice.php
[OTHER]
about = shileiye
email = shileiye@qq.com

275
dome.py Normal file
View File

@ -0,0 +1,275 @@
# -*- coding:utf-8 -*-
from pyec.wx模块 import *
import wx
import configparser
import re
import psutil
import time
from subprocess import Popen
import sys
import mainui
from PyQt5.QtWidgets import QApplication, QMainWindow, QMessageBox
# 界面文件为 FirstMainWin.py
from mainui import *
import requests
import os
configFile = 'config.ini'
# 创建配置文件对象
config = configparser.ConfigParser()
# 读取文件
config.read(configFile, encoding='utf-8')
class MainWindow(QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent)
self.setupUi(self)
# 初始赋值
self.nowIpLabel.setText(config['DEFAULT']['now_ip'])
self.newIpInput.setText(config['DEFAULT']['new_ip'])
self.nowGameLabel.setText(config['DEFAULT']['game_name'])
self.newGameInput.setText(config['DEFAULT']['game_name'])
if isinstance(checkprocess("nginx.exe"), int):
# self.启动Nginx.Label = '关闭Nginx'
self.nginxButton.setText("关闭Nginx")
else:
# self.启动Nginx.Label = '启动Nginx'
self.nginxButton.setText("启动Nginx")
def saveSet(self, event):
print('保存设置,按钮被单击')
message = QMessageBox.information(self, "提示信息", "确定要保存设置吗?", QMessageBox.Ok | QMessageBox.No, QMessageBox.No);
if message == QMessageBox.No:
return
now_ip = config['DEFAULT']['now_ip']
new_ip = self.newIpInput.text()
now_game = config['DEFAULT']['game_name']
new_game = self.newGameInput.text()
compile_ip = re.compile('^(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[1-9])\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$')
# 验证IP地址格式
if (new_ip == "") or new_game == "" or not (compile_ip.match(new_ip)):
QMessageBox.information(self, "提示信息", "IP地址、游戏名称为空或有误请正确填写IPv4地址或游戏名称!", QMessageBox.Ok, QMessageBox.Ok);
return
dirname = config['MODFILE']['dirname']
print(dirname.split("|")[1])
# filedir = dirname.split("|")
sum = 0
for filedir in dirname.split("|"):
# fileencoding = filedir.split(",")
# 执行文本替换
if len(filedir.split(",")) < 2:
isencoding = config['DEFAULT']['file_encoding']
else:
isencoding = filedir.split(",")[1]
filename = config['DEFAULT']['dir'] + filedir.split(",")[0]
try:
with open(filename, 'rt+', encoding=isencoding) as f:
t = f.read()
t = t.replace(now_ip, new_ip)
t = t.replace(now_game, new_game)
# 读写偏移位置移到最开始处
f.seek(0, 0)
f.write(t)
# 设置文件结尾 EOF
f.truncate()
sum = sum + 1
except:
QMessageBox.information(self, "提示信息", "替换“" + filename + "”出错,可能文件不存在或编码不对,请检查需要替换的文件编码与配置文件编码是否相符!", QMessageBox.Ok, QMessageBox.Ok)
return
# 写入配置文件
config.set('DEFAULT', 'game_name', new_game)
config.set('DEFAULT', 'now_ip', new_ip)
config.set('DEFAULT', 'new_ip', new_ip)
saveconfig = open(configFile, 'wt', encoding=config['DEFAULT']['file_encoding'])
config.write(saveconfig) # 把要修改的节点的内容写到文件中
saveconfig.close()
# 设置界面显示
self.nowGameLabel.setText(new_game)
self.nowIpLabel.setText(new_ip)
# 成功提示
QMessageBox.information(self, "提示信息", "游戏名称和IP修改成功", QMessageBox.Ok, QMessageBox.Ok)
print('修改完成:' + new_game + ':' + new_ip)
return
def nginx(self, event):
if self.nginxButton.text() == '启动Nginx':
nginx_process = Popen('start .\\nginx.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'phpstudy_pro\\Extensions\\Nginx1.15.11',
# encoding='utf-8'
)
php_process = Popen('.\\COM\\php-cgi-spawner.exe "Extensions\\php\\php5.6.9nts\\php-cgi.exe -c Extensions\\php\\php5.6.9nts\\php.ini" 9001 1+16',
shell=True,
cwd=config['DEFAULT']['dir'] + 'phpstudy_pro',
# encoding='utf-8'
)
self.nginxButton.setText("关闭Nginx")
else:
nginx_process = Popen('.\\nginx.exe -s stop',
shell=True,
cwd=config['DEFAULT']['dir'] + 'phpstudy_pro\\Extensions\\Nginx1.15.11',
# encoding='utf-8'
)
PHP_process = Popen('taskkill /f /t /im php-cgi.exe',
shell=True,
# encoding='utf-8'
)
spawner_process = Popen('taskkill /f /t /im php-cgi-spawner.exe',
shell=True,
# encoding='utf-8'
)
self.nginxButton.setText("启动Nginx")
# print(process)
# os.chdir("D:\\LYserver\\phpstudy_pro\\Extensions\\Nginx1.15.11")
# nginxtype = os.system('start .\\nginx.exe') # 不弹出界面
# if nginxtype
# os.system('start .\\nginx.exe') #弹出界面
print('启动Nginx,按钮被单击')
def mysql(self, event):
if self.启动MySql.Label == '启动MySql':
php_process = Popen('.\\mysqld.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'phpstudy_pro\\Extensions\\MySQL5.7.26\\bin',
# encoding='utf-8'
)
self.启动MySql.Label = '关闭MySql'
else:
kill_process = Popen('taskkill /f /t /im mysqld.exe',
shell=True,
# encoding='utf-8'
)
self.启动MySql.Label = '启动MySql'
print('启动MySql,按钮被单击')
def game(self, event):
if self.启动服务端.Label == '启动服务端':
AMServer64_R = Popen('start .\\AMServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Common\\AMServer\\x64',
# encoding='utf-8'
)
LocalLogServer64_R = Popen('start .\\LocalLogServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Common\\LocalLogServer\\x64',
# encoding='utf-8'
)
LoggerServer64_R = Popen('start .\\LoggerServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Common\\LoggerServer\\x64',
# encoding='utf-8'
)
NameServer64_R = Popen('start .\\SessionServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Common\\SessionServer\\x64',
# encoding='utf-8'
)
NameServer64_R = Popen('start .\\NameServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Common\\NameServer\\x64',
# encoding='utf-8'
)
BackStageServer64_R = Popen('start .\\BackStageServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Common\\BackStageServer\\x64',
# encoding='utf-8'
)
time.sleep(5) # 延迟5秒
# 一区
DBServer64_R = Popen('start .\\DBServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Server\\DBServer\\x64',
# encoding='utf-8'
)
GateServer64_R = Popen('start .\\GateServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Server\\GateServer\\x64',
# encoding='utf-8'
)
LogicServerCQ64_R = Popen('start .\\LogicServerCQ64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Server\\LogicServer\\x64',
# encoding='utf-8'
)
# 二区
DBServer64_R = Popen('start .\\DBServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Server2\\DBServer\\x64',
# encoding='utf-8'
)
GateServer64_R = Popen('start .\\GateServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Server2\\GateServer\\x64',
# encoding='utf-8'
)
LogicServerCQ64_R = Popen('start .\\LogicServerCQ64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Server2\\LogicServer\\x64',
# encoding='utf-8'
)
# 跨服
DBServer64_R = Popen('start .\\DBServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Server跨服\\DBServer\\x64',
# encoding='utf-8'
)
GateServer64_R = Popen('start .\\GateServer64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Server跨服\\GateServer\\x64',
# encoding='utf-8'
)
LogicServerCQ64_R = Popen('start .\\LogicServerCQ64_R.exe',
shell=True,
cwd=config['DEFAULT']['dir'] + 'build_pub\\Server跨服\\LogicServer\\x64',
# encoding='utf-8'
)
self.启动服务端.Label = '关闭服务端'
else:
kill_process = Popen(
'taskkill /f /t /im LocalLogServer64_R.exe & taskkill /f /t /im LoggerServer64_R.exe & taskkill /f /t /im SessionServer64_R.exe & taskkill /f /t /im NameServer64_R.exe & taskkill /f /t /im LogicServerCQ64_R.exe & taskkill /f /t /im GateServer64_R.exe & taskkill /f /t /im DBCenterServer64_R.exe & taskkill /f /t /im DBServer64_R.exe & taskkill /f /t /im BackStageServer64_R.exe & taskkill /f /t /im AMServer64_R.exe',
shell=True,
# encoding='utf-8'
)
self.启动服务端.Label = '启动服务端'
print('启动服务端,按钮被单击')
def fanbianyi(self, event):
apktool = Popen('apktool d game.apk',
shell=True,
cwd=config['DEFAULT']['dir'] + 'apk',
# encoding='utf-8'
)
print('反编译APK,按钮被单击')
def shengcheng(self, event):
apktool = Popen('apktool b game',
shell=True,
cwd=config['DEFAULT']['dir'] + 'apk',
# encoding='utf-8'
)
print('生成APK,按钮被单击')
def qianming(self, event):
apktool = Popen('jarsigner -verbose -keystore key.keystore -storepass 123456 -signedjar game-signed.apk game/dist/game.apk key.keystore',
shell=True,
cwd=config['DEFAULT']['dir'] + 'apk',
# encoding='utf-8'
)
print('APK签名,按钮被单击')
# 进程判断返回进程ID
def checkprocess(processname):
pl = psutil.pids()
for pid in pl:
if psutil.Process(pid).name() == processname:
return pid
if __name__ == '__main__':
app = QApplication(sys.argv)
myWin = MainWindow()
myWin.show()
sys.exit(app.exec_())

15
icon.qrc Normal file
View File

@ -0,0 +1,15 @@
<RCC>
<qresource lang="CN" prefix="icon">
<file>src/icon/cha.svg</file>
<file>src/icon/dengdai.svg</file>
<file>src/icon/fanhui.svg</file>
<file>src/icon/gou.svg</file>
<file>src/icon/qidong.svg</file>
<file>src/icon/shuaxin.svg</file>
<file>src/icon/tanhao.svg</file>
<file>src/icon/tingzhi.svg</file>
<file>src/icon/yichang.svg</file>
<file>src/icon/zanting.svg</file>
<file>src/icon/zhengchang.svg</file>
</qresource>
</RCC>

845
icon_rc.py Normal file
View File

@ -0,0 +1,845 @@
# -*- coding: utf-8 -*-
# Resource object code
#
# Created by: The Resource Compiler for PyQt5 (Qt v5.15.2)
#
# WARNING! All changes made in this file will be lost!
from PyQt5 import QtCore
qt_resource_data = b"\
\x00\x00\x02\x10\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x64\x3d\x22\x4d\x30\x20\x35\x31\x32\
\x61\x35\x31\x32\x20\x35\x31\x32\x20\x30\x20\x31\x20\x30\x20\x31\
\x30\x32\x34\x20\x30\x41\x35\x31\x32\x20\x35\x31\x32\x20\x30\x20\
\x31\x20\x30\x20\x30\x20\x35\x31\x32\x7a\x22\x20\x66\x69\x6c\x6c\
\x3d\x22\x23\x45\x43\x34\x31\x34\x31\x22\x20\x2f\x3e\x3c\x70\x61\
\x74\x68\x20\x64\x3d\x22\x4d\x38\x34\x39\x2e\x39\x32\x20\x35\x38\
\x30\x2e\x32\x36\x37\x48\x31\x37\x34\x2e\x30\x38\x63\x2d\x33\x30\
\x2e\x37\x32\x20\x30\x2d\x35\x34\x2e\x36\x31\x33\x2d\x32\x33\x2e\
\x38\x39\x34\x2d\x35\x34\x2e\x36\x31\x33\x2d\x35\x34\x2e\x36\x31\
\x34\x73\x32\x33\x2e\x38\x39\x33\x2d\x35\x34\x2e\x36\x31\x33\x20\
\x35\x34\x2e\x36\x31\x33\x2d\x35\x34\x2e\x36\x31\x33\x68\x36\x37\
\x35\x2e\x38\x34\x63\x33\x30\x2e\x37\x32\x20\x30\x20\x35\x34\x2e\
\x36\x31\x33\x20\x32\x33\x2e\x38\x39\x33\x20\x35\x34\x2e\x36\x31\
\x33\x20\x35\x34\x2e\x36\x31\x33\x73\x2d\x32\x33\x2e\x38\x39\x33\
\x20\x35\x34\x2e\x36\x31\x34\x2d\x35\x34\x2e\x36\x31\x33\x20\x35\
\x34\x2e\x36\x31\x34\x7a\x22\x20\x66\x69\x6c\x6c\x3d\x22\x23\x46\
\x46\x46\x46\x46\x46\x22\x20\x2f\x3e\x3c\x2f\x73\x76\x67\x3e\
\x00\x00\x02\x42\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x66\x69\x6c\x6c\x3d\x22\x23\x33\x33\
\x33\x33\x33\x33\x22\x20\x64\x3d\x22\x4d\x35\x31\x32\x20\x39\x32\
\x38\x43\x32\x38\x32\x2e\x32\x35\x20\x39\x32\x38\x20\x39\x36\x20\
\x37\x34\x31\x2e\x37\x35\x20\x39\x36\x20\x35\x31\x32\x53\x32\x38\
\x32\x2e\x32\x35\x20\x39\x36\x20\x35\x31\x32\x20\x39\x36\x73\x34\
\x31\x36\x20\x31\x38\x36\x2e\x32\x35\x20\x34\x31\x36\x20\x34\x31\
\x36\x2d\x31\x38\x36\x2e\x32\x35\x20\x34\x31\x36\x2d\x34\x31\x36\
\x20\x34\x31\x36\x7a\x20\x6d\x31\x37\x32\x2e\x36\x35\x33\x2d\x34\
\x30\x36\x2e\x39\x32\x32\x61\x31\x30\x2e\x39\x33\x37\x20\x31\x30\
\x2e\x39\x33\x37\x20\x30\x20\x30\x20\x30\x20\x31\x2e\x37\x39\x34\
\x2d\x31\x2e\x37\x39\x33\x63\x33\x2e\x37\x34\x37\x2d\x34\x2e\x37\
\x33\x38\x20\x32\x2e\x39\x34\x34\x2d\x31\x31\x2e\x36\x31\x37\x2d\
\x31\x2e\x37\x39\x34\x2d\x31\x35\x2e\x33\x36\x33\x4c\x34\x33\x32\
\x2e\x35\x20\x33\x30\x34\x2e\x35\x76\x33\x39\x33\x2e\x34\x30\x36\
\x63\x30\x20\x32\x2e\x34\x36\x32\x20\x30\x2e\x38\x33\x31\x20\x34\
\x2e\x38\x35\x33\x20\x32\x2e\x33\x35\x39\x20\x36\x2e\x37\x38\x34\
\x20\x33\x2e\x37\x34\x37\x20\x34\x2e\x37\x33\x38\x20\x31\x30\x2e\
\x36\x32\x35\x20\x35\x2e\x35\x34\x31\x20\x31\x35\x2e\x33\x36\x33\
\x20\x31\x2e\x37\x39\x34\x6c\x32\x33\x34\x2e\x34\x33\x31\x2d\x31\
\x38\x35\x2e\x34\x30\x36\x7a\x22\x20\x2f\x3e\x3c\x2f\x73\x76\x67\
\x3e\
\x00\x00\x02\xe9\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x66\x69\x6c\x6c\x3d\x22\x23\x33\x33\
\x33\x33\x33\x33\x22\x20\x64\x3d\x22\x4d\x35\x31\x32\x20\x36\x33\
\x2e\x35\x43\x32\x36\x34\x2e\x33\x20\x36\x33\x2e\x35\x20\x36\x33\
\x2e\x35\x20\x32\x36\x34\x2e\x33\x20\x36\x33\x2e\x35\x20\x35\x31\
\x32\x53\x32\x36\x34\x2e\x33\x20\x39\x36\x30\x2e\x35\x20\x35\x31\
\x32\x20\x39\x36\x30\x2e\x35\x20\x39\x36\x30\x2e\x35\x20\x37\x35\
\x39\x2e\x37\x20\x39\x36\x30\x2e\x35\x20\x35\x31\x32\x20\x37\x35\
\x39\x2e\x37\x20\x36\x33\x2e\x35\x20\x35\x31\x32\x20\x36\x33\x2e\
\x35\x7a\x4d\x31\x39\x38\x20\x35\x30\x39\x2e\x36\x68\x38\x37\x2e\
\x36\x63\x30\x2d\x31\x33\x36\x2e\x33\x20\x31\x30\x32\x2e\x33\x2d\
\x32\x34\x33\x2e\x34\x20\x32\x33\x33\x2e\x37\x2d\x32\x33\x38\x2e\
\x35\x20\x34\x33\x2e\x38\x20\x30\x20\x38\x32\x2e\x38\x20\x31\x34\
\x2e\x36\x20\x31\x32\x31\x2e\x37\x20\x33\x34\x2e\x31\x4c\x35\x39\
\x37\x2e\x32\x20\x33\x34\x39\x63\x2d\x32\x34\x2e\x34\x2d\x39\x2e\
\x38\x2d\x35\x33\x2e\x36\x2d\x31\x39\x2e\x35\x2d\x38\x32\x2e\x38\
\x2d\x31\x39\x2e\x35\x2d\x39\x32\x2e\x35\x20\x30\x2d\x31\x37\x30\
\x2e\x34\x20\x37\x37\x2e\x39\x2d\x31\x37\x30\x2e\x34\x20\x31\x38\
\x30\x2e\x31\x68\x38\x37\x2e\x36\x4c\x33\x31\x34\x2e\x38\x20\x36\
\x33\x31\x2e\x33\x20\x31\x39\x38\x20\x35\x30\x39\x2e\x36\x7a\x20\
\x6d\x35\x34\x30\x2e\x33\x2d\x30\x2e\x31\x63\x30\x20\x31\x33\x31\
\x2e\x34\x2d\x31\x30\x32\x2e\x32\x20\x32\x34\x33\x2e\x34\x2d\x32\
\x32\x38\x2e\x38\x20\x32\x34\x33\x2e\x34\x2d\x34\x33\x2e\x38\x20\
\x30\x2d\x38\x32\x2e\x38\x2d\x31\x39\x2e\x34\x2d\x31\x32\x31\x2e\
\x37\x2d\x33\x38\x2e\x39\x6c\x34\x33\x2e\x38\x2d\x34\x33\x2e\x38\
\x63\x32\x34\x2e\x34\x20\x39\x2e\x38\x20\x35\x33\x2e\x36\x20\x31\
\x39\x2e\x35\x20\x38\x32\x2e\x38\x20\x31\x39\x2e\x35\x20\x39\x32\
\x2e\x35\x20\x30\x20\x31\x37\x30\x2e\x34\x2d\x37\x37\x2e\x39\x20\
\x31\x37\x30\x2e\x34\x2d\x31\x38\x30\x2e\x31\x68\x2d\x39\x32\x2e\
\x35\x6c\x31\x31\x36\x2e\x39\x2d\x31\x32\x31\x2e\x37\x4c\x38\x32\
\x36\x20\x35\x30\x39\x2e\x35\x68\x2d\x38\x37\x2e\x37\x7a\x22\x20\
\x2f\x3e\x3c\x2f\x73\x76\x67\x3e\
\x00\x00\x02\x19\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x66\x69\x6c\x6c\x3d\x22\x23\x33\x33\
\x33\x33\x33\x33\x22\x20\x64\x3d\x22\x4d\x35\x31\x30\x2e\x39\x20\
\x36\x30\x2e\x37\x63\x2d\x32\x34\x35\x2e\x36\x20\x30\x2d\x34\x34\
\x36\x2e\x37\x20\x31\x39\x39\x2e\x38\x2d\x34\x34\x36\x2e\x37\x20\
\x34\x34\x36\x2e\x37\x43\x36\x34\x2e\x32\x20\x37\x35\x33\x20\x32\
\x36\x33\x2e\x39\x20\x39\x35\x34\x20\x35\x31\x30\x2e\x38\x20\x39\
\x35\x34\x73\x34\x34\x36\x2e\x36\x2d\x31\x39\x39\x2e\x37\x20\x34\
\x34\x36\x2e\x36\x2d\x34\x34\x36\x2e\x36\x63\x30\x2e\x31\x2d\x32\
\x34\x35\x2e\x36\x2d\x31\x39\x39\x2e\x36\x2d\x34\x34\x36\x2e\x37\
\x2d\x34\x34\x36\x2e\x35\x2d\x34\x34\x36\x2e\x37\x7a\x20\x6d\x31\
\x33\x39\x2e\x38\x20\x35\x37\x34\x63\x30\x20\x38\x2e\x38\x2d\x37\
\x2e\x32\x20\x31\x36\x2d\x31\x36\x20\x31\x36\x48\x33\x38\x39\x2e\
\x33\x63\x2d\x38\x2e\x38\x20\x30\x2d\x31\x36\x2d\x37\x2e\x32\x2d\
\x31\x36\x2d\x31\x36\x56\x33\x38\x39\x2e\x33\x63\x30\x2d\x38\x2e\
\x38\x20\x37\x2e\x32\x2d\x31\x36\x20\x31\x36\x2d\x31\x36\x68\x32\
\x34\x35\x2e\x35\x63\x38\x2e\x38\x20\x30\x20\x31\x36\x20\x37\x2e\
\x32\x20\x31\x36\x20\x31\x36\x76\x32\x34\x35\x2e\x34\x7a\x22\x20\
\x2f\x3e\x3c\x2f\x73\x76\x67\x3e\
\x00\x00\x02\x97\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x66\x69\x6c\x6c\x3d\x22\x23\x33\x33\
\x33\x33\x33\x33\x22\x20\x64\x3d\x22\x4d\x35\x31\x32\x20\x36\x34\
\x43\x32\x36\x34\x2e\x36\x20\x36\x34\x20\x36\x34\x20\x32\x36\x34\
\x2e\x36\x20\x36\x34\x20\x35\x31\x32\x73\x32\x30\x30\x2e\x36\x20\
\x34\x34\x38\x20\x34\x34\x38\x20\x34\x34\x38\x20\x34\x34\x38\x2d\
\x32\x30\x30\x2e\x36\x20\x34\x34\x38\x2d\x34\x34\x38\x53\x37\x35\
\x39\x2e\x34\x20\x36\x34\x20\x35\x31\x32\x20\x36\x34\x7a\x20\x6d\
\x31\x36\x35\x2e\x34\x20\x36\x31\x38\x2e\x32\x6c\x2d\x36\x36\x2d\
\x30\x2e\x33\x4c\x35\x31\x32\x20\x35\x36\x33\x2e\x34\x6c\x2d\x39\
\x39\x2e\x33\x20\x31\x31\x38\x2e\x34\x2d\x36\x36\x2e\x31\x20\x30\
\x2e\x33\x63\x2d\x34\x2e\x34\x20\x30\x2d\x38\x2d\x33\x2e\x35\x2d\
\x38\x2d\x38\x20\x30\x2d\x31\x2e\x39\x20\x30\x2e\x37\x2d\x33\x2e\
\x37\x20\x31\x2e\x39\x2d\x35\x2e\x32\x6c\x31\x33\x30\x2e\x31\x2d\
\x31\x35\x35\x4c\x33\x34\x30\x2e\x35\x20\x33\x35\x39\x63\x2d\x31\
\x2e\x32\x2d\x31\x2e\x35\x2d\x31\x2e\x39\x2d\x33\x2e\x33\x2d\x31\
\x2e\x39\x2d\x35\x2e\x32\x20\x30\x2d\x34\x2e\x34\x20\x33\x2e\x36\
\x2d\x38\x20\x38\x2d\x38\x6c\x36\x36\x2e\x31\x20\x30\x2e\x33\x4c\
\x35\x31\x32\x20\x34\x36\x34\x2e\x36\x6c\x39\x39\x2e\x33\x2d\x31\
\x31\x38\x2e\x34\x20\x36\x36\x2d\x30\x2e\x33\x63\x34\x2e\x34\x20\
\x30\x20\x38\x20\x33\x2e\x35\x20\x38\x20\x38\x20\x30\x20\x31\x2e\
\x39\x2d\x30\x2e\x37\x20\x33\x2e\x37\x2d\x31\x2e\x39\x20\x35\x2e\
\x32\x4c\x35\x35\x33\x2e\x35\x20\x35\x31\x34\x6c\x31\x33\x30\x20\
\x31\x35\x35\x63\x31\x2e\x32\x20\x31\x2e\x35\x20\x31\x2e\x39\x20\
\x33\x2e\x33\x20\x31\x2e\x39\x20\x35\x2e\x32\x20\x30\x20\x34\x2e\
\x34\x2d\x33\x2e\x36\x20\x38\x2d\x38\x20\x38\x7a\x22\x20\x2f\x3e\
\x3c\x2f\x73\x76\x67\x3e\
\x00\x00\x0b\x19\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x66\x69\x6c\x6c\x3d\x22\x23\x33\x33\
\x33\x33\x33\x33\x22\x20\x64\x3d\x22\x4d\x35\x31\x31\x2e\x39\x39\
\x38\x34\x36\x35\x20\x36\x35\x2e\x32\x37\x39\x37\x37\x32\x63\x2d\
\x32\x34\x36\x2e\x37\x30\x36\x38\x34\x35\x20\x30\x2d\x34\x34\x36\
\x2e\x37\x30\x38\x39\x37\x31\x20\x32\x30\x30\x2e\x30\x31\x35\x34\
\x33\x2d\x34\x34\x36\x2e\x37\x30\x38\x39\x37\x31\x20\x34\x34\x36\
\x2e\x37\x30\x39\x39\x39\x35\x20\x30\x20\x32\x34\x36\x2e\x37\x30\
\x30\x37\x30\x35\x20\x32\x30\x30\x2e\x30\x30\x31\x31\x30\x33\x20\
\x34\x34\x36\x2e\x37\x33\x31\x34\x38\x34\x20\x34\x34\x36\x2e\x37\
\x30\x38\x39\x37\x31\x20\x34\x34\x36\x2e\x37\x33\x31\x34\x38\x34\
\x20\x32\x34\x36\x2e\x37\x30\x38\x38\x39\x31\x20\x30\x20\x34\x34\
\x36\x2e\x37\x31\x31\x30\x31\x38\x2d\x32\x30\x30\x2e\x30\x33\x30\
\x37\x37\x39\x20\x34\x34\x36\x2e\x37\x31\x31\x30\x31\x38\x2d\x34\
\x34\x36\x2e\x37\x33\x31\x34\x38\x34\x43\x39\x35\x38\x2e\x37\x30\
\x39\x34\x38\x33\x20\x32\x36\x35\x2e\x32\x39\x35\x32\x30\x32\x20\
\x37\x35\x38\x2e\x37\x30\x37\x33\x35\x36\x20\x36\x35\x2e\x32\x37\
\x39\x37\x37\x32\x20\x35\x31\x31\x2e\x39\x39\x38\x34\x36\x35\x20\
\x36\x35\x2e\x32\x37\x39\x37\x37\x32\x7a\x4d\x36\x30\x33\x2e\x33\
\x34\x37\x39\x38\x36\x20\x33\x36\x30\x2e\x34\x39\x30\x33\x30\x38\
\x6c\x34\x31\x2e\x33\x32\x36\x32\x32\x31\x2d\x34\x31\x2e\x33\x32\
\x36\x32\x32\x31\x63\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x2d\x31\
\x38\x2e\x33\x35\x31\x39\x37\x33\x20\x34\x31\x2e\x33\x32\x36\x32\
\x32\x31\x2d\x31\x38\x2e\x33\x35\x31\x39\x37\x33\x20\x35\x39\x2e\
\x36\x39\x31\x34\x39\x37\x20\x30\x20\x31\x38\x2e\x33\x36\x35\x32\
\x37\x36\x20\x31\x33\x2e\x37\x37\x37\x37\x39\x35\x20\x31\x38\x2e\
\x33\x36\x35\x32\x37\x36\x20\x34\x31\x2e\x33\x32\x36\x32\x32\x31\
\x20\x30\x20\x35\x39\x2e\x36\x39\x31\x34\x39\x37\x6c\x2d\x34\x31\
\x2e\x33\x32\x36\x32\x32\x31\x20\x34\x31\x2e\x33\x31\x31\x38\x39\
\x35\x63\x2d\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x20\x31\x38\x2e\
\x33\x36\x35\x32\x37\x36\x2d\x34\x31\x2e\x33\x31\x31\x38\x39\x35\
\x20\x31\x38\x2e\x33\x36\x35\x32\x37\x36\x2d\x35\x39\x2e\x36\x39\
\x31\x34\x39\x37\x20\x30\x43\x35\x38\x34\x2e\x39\x39\x37\x30\x33\
\x36\x20\x34\x30\x36\x2e\x33\x38\x39\x36\x38\x34\x20\x35\x38\x34\
\x2e\x39\x39\x37\x30\x33\x36\x20\x33\x37\x38\x2e\x38\x35\x35\x35\
\x38\x34\x20\x36\x30\x33\x2e\x33\x34\x37\x39\x38\x36\x20\x33\x36\
\x30\x2e\x34\x39\x30\x33\x30\x38\x7a\x4d\x32\x33\x36\x2e\x30\x36\
\x32\x39\x32\x35\x20\x35\x32\x35\x2e\x37\x36\x36\x35\x33\x38\x6c\
\x30\x2d\x32\x37\x2e\x35\x34\x31\x32\x36\x33\x63\x30\x2d\x31\x38\
\x2e\x33\x35\x38\x31\x31\x33\x20\x31\x33\x2e\x37\x37\x30\x36\x33\
\x32\x2d\x32\x37\x2e\x35\x34\x38\x34\x32\x36\x20\x32\x37\x2e\x35\
\x34\x31\x32\x36\x33\x2d\x32\x37\x2e\x35\x34\x38\x34\x32\x36\x6c\
\x39\x31\x2e\x38\x34\x32\x37\x35\x35\x20\x30\x63\x31\x33\x2e\x37\
\x37\x30\x36\x33\x32\x20\x30\x20\x32\x37\x2e\x35\x32\x36\x39\x33\
\x37\x20\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x20\x32\x37\x2e\x35\
\x32\x36\x39\x33\x37\x20\x32\x37\x2e\x35\x34\x38\x34\x32\x36\x6c\
\x30\x20\x32\x37\x2e\x35\x34\x31\x32\x36\x33\x63\x30\x20\x31\x38\
\x2e\x33\x36\x35\x32\x37\x36\x2d\x31\x33\x2e\x37\x35\x36\x33\x30\
\x35\x20\x32\x37\x2e\x35\x35\x35\x35\x38\x39\x2d\x33\x32\x2e\x31\
\x33\x36\x39\x33\x31\x20\x32\x37\x2e\x35\x35\x35\x35\x38\x39\x6c\
\x2d\x38\x37\x2e\x32\x33\x33\x37\x38\x33\x20\x30\x43\x32\x34\x39\
\x2e\x38\x33\x33\x35\x35\x37\x20\x35\x35\x33\x2e\x33\x32\x32\x31\
\x32\x38\x20\x32\x33\x36\x2e\x30\x36\x32\x39\x32\x35\x20\x35\x33\
\x39\x2e\x35\x33\x37\x31\x37\x20\x32\x33\x36\x2e\x30\x36\x32\x39\
\x32\x35\x20\x35\x32\x35\x2e\x37\x36\x36\x35\x33\x38\x7a\x4d\x34\
\x31\x39\x2e\x37\x30\x35\x34\x35\x36\x20\x36\x36\x33\x2e\x35\x30\
\x32\x35\x32\x39\x6c\x2d\x34\x31\x2e\x33\x31\x31\x38\x39\x35\x20\
\x34\x31\x2e\x33\x32\x36\x32\x32\x31\x63\x2d\x31\x33\x2e\x37\x38\
\x34\x39\x35\x38\x20\x31\x38\x2e\x33\x36\x35\x32\x37\x36\x2d\x34\
\x31\x2e\x33\x32\x36\x32\x32\x31\x20\x31\x38\x2e\x33\x36\x35\x32\
\x37\x36\x2d\x35\x39\x2e\x36\x39\x32\x35\x32\x20\x30\x2d\x31\x38\
\x2e\x33\x35\x30\x39\x35\x2d\x31\x33\x2e\x37\x37\x30\x36\x33\x32\
\x2d\x31\x38\x2e\x33\x35\x30\x39\x35\x2d\x34\x31\x2e\x33\x32\x36\
\x32\x32\x31\x20\x30\x2d\x35\x39\x2e\x36\x39\x31\x34\x39\x37\x6c\
\x34\x31\x2e\x33\x32\x36\x32\x32\x31\x2d\x34\x31\x2e\x33\x32\x37\
\x32\x34\x34\x63\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x2d\x31\x38\
\x2e\x33\x35\x30\x39\x35\x20\x34\x31\x2e\x33\x31\x31\x38\x39\x35\
\x2d\x31\x38\x2e\x33\x35\x30\x39\x35\x20\x35\x39\x2e\x36\x37\x37\
\x31\x37\x31\x20\x30\x43\x34\x33\x38\x2e\x30\x37\x30\x37\x33\x32\
\x20\x36\x31\x37\x2e\x35\x39\x35\x39\x39\x20\x34\x33\x38\x2e\x30\
\x37\x30\x37\x33\x32\x20\x36\x34\x35\x2e\x31\x33\x37\x32\x35\x33\
\x20\x34\x31\x39\x2e\x37\x30\x35\x34\x35\x36\x20\x36\x36\x33\x2e\
\x35\x30\x32\x35\x32\x39\x7a\x4d\x34\x31\x39\x2e\x37\x30\x35\x34\
\x35\x36\x20\x34\x32\x30\x2e\x31\x36\x37\x34\x37\x38\x63\x2d\x31\
\x38\x2e\x33\x36\x35\x32\x37\x36\x20\x31\x38\x2e\x33\x36\x35\x32\
\x37\x36\x2d\x34\x35\x2e\x39\x30\x36\x35\x33\x39\x20\x31\x38\x2e\
\x33\x36\x35\x32\x37\x36\x2d\x35\x39\x2e\x36\x37\x37\x31\x37\x31\
\x20\x30\x6c\x2d\x34\x31\x2e\x33\x32\x36\x32\x32\x31\x2d\x34\x31\
\x2e\x33\x31\x31\x38\x39\x35\x63\x2d\x31\x38\x2e\x33\x35\x30\x39\
\x35\x2d\x31\x33\x2e\x37\x38\x34\x39\x35\x38\x2d\x31\x38\x2e\x33\
\x35\x30\x39\x35\x2d\x34\x31\x2e\x33\x31\x39\x30\x35\x38\x20\x30\
\x2d\x35\x39\x2e\x36\x39\x31\x34\x39\x37\x20\x31\x33\x2e\x37\x37\
\x30\x36\x33\x32\x2d\x31\x38\x2e\x33\x35\x31\x39\x37\x33\x20\x34\
\x31\x2e\x33\x32\x36\x32\x32\x31\x2d\x31\x38\x2e\x33\x35\x31\x39\
\x37\x33\x20\x35\x39\x2e\x36\x39\x32\x35\x32\x20\x30\x6c\x34\x31\
\x2e\x33\x31\x31\x38\x39\x35\x20\x34\x31\x2e\x33\x32\x36\x32\x32\
\x31\x43\x34\x33\x38\x2e\x30\x37\x30\x37\x33\x32\x20\x33\x37\x34\
\x2e\x32\x36\x30\x39\x33\x39\x20\x34\x33\x38\x2e\x30\x37\x30\x37\
\x33\x32\x20\x34\x30\x31\x2e\x38\x30\x38\x33\x34\x32\x20\x34\x31\
\x39\x2e\x37\x30\x35\x34\x35\x36\x20\x34\x32\x30\x2e\x31\x36\x37\
\x34\x37\x38\x7a\x4d\x35\x35\x32\x2e\x38\x36\x31\x31\x32\x38\x20\
\x37\x35\x39\x2e\x39\x32\x35\x36\x30\x32\x63\x30\x20\x31\x33\x2e\
\x37\x36\x39\x36\x30\x38\x2d\x31\x33\x2e\x37\x38\x34\x39\x35\x38\
\x20\x32\x37\x2e\x35\x34\x30\x32\x34\x2d\x32\x37\x2e\x35\x35\x35\
\x35\x38\x39\x20\x32\x37\x2e\x35\x34\x30\x32\x34\x6c\x2d\x32\x37\
\x2e\x35\x34\x31\x32\x36\x33\x20\x30\x63\x2d\x31\x33\x2e\x37\x37\
\x31\x36\x35\x35\x20\x30\x2d\x32\x37\x2e\x35\x35\x36\x36\x31\x33\
\x2d\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x2d\x32\x37\x2e\x35\x35\
\x36\x36\x31\x33\x2d\x32\x37\x2e\x35\x34\x30\x32\x34\x6c\x30\x2d\
\x38\x37\x2e\x32\x33\x33\x37\x38\x33\x63\x30\x2d\x31\x33\x2e\x37\
\x38\x34\x39\x35\x38\x20\x31\x33\x2e\x37\x38\x35\x39\x38\x31\x2d\
\x32\x37\x2e\x35\x35\x35\x35\x38\x39\x20\x32\x37\x2e\x35\x35\x36\
\x36\x31\x33\x2d\x32\x37\x2e\x35\x35\x35\x35\x38\x39\x6c\x32\x37\
\x2e\x35\x34\x31\x32\x36\x33\x20\x30\x63\x31\x38\x2e\x33\x36\x35\
\x32\x37\x36\x20\x30\x20\x32\x37\x2e\x35\x35\x35\x35\x38\x39\x20\
\x39\x2e\x31\x37\x34\x39\x36\x33\x20\x32\x37\x2e\x35\x35\x35\x35\
\x38\x39\x20\x32\x37\x2e\x35\x35\x35\x35\x38\x39\x4c\x35\x35\x32\
\x2e\x38\x36\x31\x31\x32\x38\x20\x37\x35\x39\x2e\x39\x32\x35\x36\
\x30\x32\x7a\x4d\x35\x35\x32\x2e\x38\x36\x31\x31\x32\x38\x20\x33\
\x35\x31\x2e\x32\x39\x39\x39\x39\x35\x63\x30\x20\x31\x33\x2e\x37\
\x37\x30\x36\x33\x32\x2d\x31\x33\x2e\x37\x38\x34\x39\x35\x38\x20\
\x32\x37\x2e\x35\x35\x35\x35\x38\x39\x2d\x32\x37\x2e\x35\x35\x35\
\x35\x38\x39\x20\x32\x37\x2e\x35\x35\x35\x35\x38\x39\x6c\x2d\x32\
\x37\x2e\x35\x34\x31\x32\x36\x33\x20\x30\x63\x2d\x31\x33\x2e\x37\
\x37\x31\x36\x35\x35\x20\x30\x2d\x32\x37\x2e\x35\x35\x36\x36\x31\
\x33\x2d\x31\x33\x2e\x37\x38\x34\x39\x35\x38\x2d\x32\x37\x2e\x35\
\x35\x36\x36\x31\x33\x2d\x32\x37\x2e\x35\x35\x35\x35\x38\x39\x6c\
\x30\x2d\x38\x37\x2e\x32\x32\x35\x35\x39\x37\x63\x30\x2d\x31\x33\
\x2e\x37\x37\x38\x38\x31\x38\x20\x39\x2e\x31\x39\x30\x33\x31\x33\
\x2d\x32\x37\x2e\x35\x34\x39\x34\x34\x39\x20\x32\x37\x2e\x35\x35\
\x36\x36\x31\x33\x2d\x32\x37\x2e\x35\x34\x39\x34\x34\x39\x6c\x32\
\x37\x2e\x35\x34\x31\x32\x36\x33\x20\x30\x63\x31\x38\x2e\x33\x36\
\x35\x32\x37\x36\x20\x30\x20\x32\x37\x2e\x35\x35\x35\x35\x38\x39\
\x20\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x20\x32\x37\x2e\x35\x35\
\x35\x35\x38\x39\x20\x32\x37\x2e\x35\x34\x39\x34\x34\x39\x4c\x35\
\x35\x32\x2e\x38\x36\x31\x31\x32\x38\x20\x33\x35\x31\x2e\x32\x39\
\x39\x39\x39\x35\x7a\x4d\x37\x30\x34\x2e\x33\x36\x35\x37\x30\x34\
\x20\x37\x30\x34\x2e\x38\x32\x38\x37\x35\x63\x2d\x31\x33\x2e\x37\
\x37\x30\x36\x33\x32\x20\x31\x38\x2e\x33\x36\x35\x32\x37\x36\x2d\
\x34\x31\x2e\x33\x32\x36\x32\x32\x31\x20\x31\x38\x2e\x33\x36\x35\
\x32\x37\x36\x2d\x35\x39\x2e\x36\x39\x31\x34\x39\x37\x20\x30\x6c\
\x2d\x34\x31\x2e\x33\x32\x36\x32\x32\x31\x2d\x34\x31\x2e\x33\x32\
\x36\x32\x32\x31\x63\x2d\x31\x38\x2e\x33\x35\x31\x39\x37\x33\x2d\
\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x2d\x31\x38\x2e\x33\x35\x31\
\x39\x37\x33\x2d\x34\x31\x2e\x33\x31\x31\x38\x39\x35\x20\x30\x2d\
\x35\x39\x2e\x36\x39\x32\x35\x32\x20\x31\x33\x2e\x37\x38\x34\x39\
\x35\x38\x2d\x31\x38\x2e\x33\x35\x30\x39\x35\x20\x34\x31\x2e\x33\
\x32\x36\x32\x32\x31\x2d\x31\x38\x2e\x33\x35\x30\x39\x35\x20\x35\
\x39\x2e\x36\x39\x31\x34\x39\x37\x20\x30\x6c\x34\x31\x2e\x33\x32\
\x36\x32\x32\x31\x20\x34\x31\x2e\x33\x32\x37\x32\x34\x34\x43\x37\
\x32\x32\x2e\x37\x33\x30\x39\x38\x20\x36\x35\x38\x2e\x39\x30\x37\
\x38\x38\x34\x20\x37\x32\x32\x2e\x37\x33\x30\x39\x38\x20\x36\x38\
\x36\x2e\x34\x36\x32\x34\x35\x20\x37\x30\x34\x2e\x33\x36\x35\x37\
\x30\x34\x20\x37\x30\x34\x2e\x38\x32\x38\x37\x35\x7a\x4d\x37\x38\
\x37\x2e\x30\x30\x33\x38\x31\x39\x20\x35\x32\x35\x2e\x37\x36\x36\
\x35\x33\x38\x63\x30\x20\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x2d\
\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x20\x32\x37\x2e\x35\x35\x35\
\x35\x38\x39\x2d\x32\x37\x2e\x35\x34\x31\x32\x36\x33\x20\x32\x37\
\x2e\x35\x35\x35\x35\x38\x39\x6c\x2d\x38\x37\x2e\x32\x34\x37\x30\
\x38\x36\x20\x30\x63\x2d\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x20\
\x30\x2d\x32\x37\x2e\x35\x34\x31\x32\x36\x33\x2d\x31\x33\x2e\x37\
\x38\x34\x39\x35\x38\x2d\x32\x37\x2e\x35\x34\x31\x32\x36\x33\x2d\
\x32\x37\x2e\x35\x35\x35\x35\x38\x39\x6c\x30\x2d\x32\x37\x2e\x35\
\x34\x31\x32\x36\x33\x63\x30\x2d\x31\x33\x2e\x37\x37\x37\x37\x39\
\x35\x20\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x2d\x32\x37\x2e\x35\
\x34\x38\x34\x32\x36\x20\x32\x37\x2e\x35\x34\x31\x32\x36\x33\x2d\
\x32\x37\x2e\x35\x34\x38\x34\x32\x36\x6c\x38\x37\x2e\x32\x34\x37\
\x30\x38\x36\x20\x30\x63\x31\x33\x2e\x37\x37\x30\x36\x33\x32\x20\
\x30\x20\x32\x37\x2e\x35\x34\x31\x32\x36\x33\x20\x39\x2e\x31\x38\
\x39\x32\x39\x20\x32\x37\x2e\x35\x34\x31\x32\x36\x33\x20\x32\x37\
\x2e\x35\x34\x38\x34\x32\x36\x4c\x37\x38\x37\x2e\x30\x30\x33\x38\
\x31\x39\x20\x35\x32\x35\x2e\x37\x36\x36\x35\x33\x38\x7a\x22\x20\
\x2f\x3e\x3c\x2f\x73\x76\x67\x3e\
\x00\x00\x02\x99\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x64\x3d\x22\x4d\x30\x20\x35\x31\x32\
\x61\x35\x31\x32\x20\x35\x31\x32\x20\x30\x20\x31\x20\x30\x20\x31\
\x30\x32\x34\x20\x30\x41\x35\x31\x32\x20\x35\x31\x32\x20\x30\x20\
\x31\x20\x30\x20\x30\x20\x35\x31\x32\x7a\x22\x20\x66\x69\x6c\x6c\
\x3d\x22\x23\x32\x39\x43\x43\x34\x30\x22\x20\x2f\x3e\x3c\x70\x61\
\x74\x68\x20\x64\x3d\x22\x4d\x38\x32\x36\x2e\x30\x32\x37\x20\x33\
\x32\x34\x2e\x32\x36\x37\x63\x2d\x32\x30\x2e\x34\x38\x2d\x32\x33\
\x2e\x38\x39\x34\x2d\x35\x34\x2e\x36\x31\x34\x2d\x32\x33\x2e\x38\
\x39\x34\x2d\x37\x35\x2e\x30\x39\x34\x2d\x36\x2e\x38\x32\x37\x4c\
\x34\x33\x30\x2e\x30\x38\x20\x35\x39\x30\x2e\x35\x30\x37\x20\x32\
\x37\x36\x2e\x34\x38\x20\x34\x35\x30\x2e\x35\x36\x63\x2d\x32\x33\
\x2e\x38\x39\x33\x2d\x32\x30\x2e\x34\x38\x2d\x35\x38\x2e\x30\x32\
\x37\x2d\x31\x37\x2e\x30\x36\x37\x2d\x37\x38\x2e\x35\x30\x37\x20\
\x33\x2e\x34\x31\x33\x2d\x32\x30\x2e\x34\x38\x20\x32\x33\x2e\x38\
\x39\x34\x2d\x31\x37\x2e\x30\x36\x36\x20\x35\x38\x2e\x30\x32\x37\
\x20\x33\x2e\x34\x31\x34\x20\x37\x38\x2e\x35\x30\x37\x6c\x31\x38\
\x30\x2e\x39\x30\x36\x20\x31\x36\x33\x2e\x38\x34\x73\x30\x20\x33\
\x2e\x34\x31\x33\x20\x33\x2e\x34\x31\x34\x20\x33\x2e\x34\x31\x33\
\x63\x32\x30\x2e\x34\x38\x20\x32\x33\x2e\x38\x39\x34\x20\x35\x34\
\x2e\x36\x31\x33\x20\x32\x33\x2e\x38\x39\x34\x20\x37\x35\x2e\x30\
\x39\x33\x20\x36\x2e\x38\x32\x37\x6c\x33\x35\x38\x2e\x34\x2d\x33\
\x30\x33\x2e\x37\x38\x37\x63\x32\x33\x2e\x38\x39\x33\x2d\x32\x30\
\x2e\x34\x38\x20\x32\x37\x2e\x33\x30\x37\x2d\x35\x34\x2e\x36\x31\
\x33\x20\x36\x2e\x38\x32\x37\x2d\x37\x38\x2e\x35\x30\x36\x7a\x22\
\x20\x66\x69\x6c\x6c\x3d\x22\x23\x46\x46\x46\x46\x46\x46\x22\x20\
\x2f\x3e\x3c\x2f\x73\x76\x67\x3e\
\x00\x00\x06\x56\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x66\x69\x6c\x6c\x3d\x22\x23\x33\x33\
\x33\x33\x33\x33\x22\x20\x64\x3d\x22\x4d\x35\x31\x31\x2e\x35\x38\
\x32\x34\x39\x31\x20\x36\x33\x2e\x34\x31\x33\x32\x36\x32\x43\x32\
\x36\x35\x2e\x31\x33\x34\x35\x34\x33\x20\x36\x33\x2e\x34\x31\x33\
\x32\x36\x32\x20\x36\x34\x2e\x36\x32\x35\x38\x38\x20\x32\x36\x33\
\x2e\x39\x32\x31\x39\x32\x35\x20\x36\x34\x2e\x36\x32\x35\x38\x38\
\x20\x35\x31\x30\x2e\x33\x36\x39\x38\x37\x33\x73\x32\x30\x30\x2e\
\x35\x30\x38\x36\x36\x33\x20\x34\x34\x36\x2e\x39\x35\x37\x36\x33\
\x35\x20\x34\x34\x36\x2e\x39\x35\x37\x36\x33\x35\x20\x34\x34\x36\
\x2e\x39\x35\x37\x36\x33\x35\x20\x34\x34\x36\x2e\x39\x35\x37\x36\
\x33\x35\x2d\x32\x30\x30\x2e\x35\x30\x38\x36\x36\x33\x20\x34\x34\
\x36\x2e\x39\x35\x37\x36\x33\x35\x2d\x34\x34\x36\x2e\x39\x35\x37\
\x36\x33\x35\x53\x37\x35\x38\x2e\x30\x33\x31\x34\x36\x33\x20\x36\
\x33\x2e\x34\x31\x33\x32\x36\x32\x20\x35\x31\x31\x2e\x35\x38\x32\
\x34\x39\x31\x20\x36\x33\x2e\x34\x31\x33\x32\x36\x32\x7a\x4d\x35\
\x30\x39\x2e\x30\x30\x31\x37\x31\x33\x20\x37\x35\x31\x2e\x38\x35\
\x39\x39\x30\x33\x63\x2d\x39\x38\x2e\x35\x31\x37\x37\x38\x31\x20\
\x30\x2d\x31\x38\x32\x2e\x34\x36\x37\x37\x37\x35\x2d\x36\x32\x2e\
\x36\x32\x33\x32\x36\x39\x2d\x32\x31\x34\x2e\x37\x37\x31\x35\x30\
\x35\x2d\x31\x35\x30\x2e\x30\x35\x36\x35\x39\x38\x6c\x30\x2e\x33\
\x32\x37\x34\x35\x38\x2d\x30\x2e\x31\x33\x34\x30\x35\x33\x63\x2d\
\x32\x2e\x30\x30\x37\x37\x32\x37\x2d\x34\x2e\x30\x33\x36\x39\x34\
\x33\x2d\x33\x2e\x33\x38\x33\x30\x35\x2d\x38\x2e\x34\x32\x32\x38\
\x33\x33\x2d\x33\x2e\x33\x38\x33\x30\x35\x2d\x31\x33\x2e\x32\x33\
\x37\x34\x38\x39\x20\x30\x2d\x31\x36\x2e\x36\x34\x37\x31\x34\x35\
\x20\x31\x33\x2e\x34\x39\x34\x33\x33\x39\x2d\x33\x30\x2e\x31\x34\
\x32\x35\x30\x37\x20\x33\x30\x2e\x31\x34\x32\x35\x30\x37\x2d\x33\
\x30\x2e\x31\x34\x32\x35\x30\x37\x20\x31\x33\x2e\x33\x38\x39\x39\
\x36\x32\x20\x30\x20\x32\x34\x2e\x33\x35\x38\x37\x38\x31\x20\x38\
\x2e\x38\x37\x37\x31\x38\x31\x20\x32\x38\x2e\x32\x38\x39\x33\x20\
\x32\x30\x2e\x39\x35\x35\x32\x36\x34\x6c\x30\x2e\x34\x32\x32\x36\
\x32\x35\x2d\x30\x2e\x31\x37\x32\x39\x33\x39\x63\x32\x33\x2e\x32\
\x36\x39\x39\x38\x33\x20\x36\x35\x2e\x34\x34\x32\x34\x37\x38\x20\
\x38\x35\x2e\x36\x34\x35\x36\x31\x32\x20\x31\x31\x32\x2e\x35\x30\
\x33\x33\x30\x37\x20\x31\x35\x38\x2e\x39\x37\x32\x36\x36\x35\x20\
\x31\x31\x32\x2e\x35\x30\x33\x33\x30\x37\x20\x39\x33\x2e\x31\x30\
\x36\x35\x33\x38\x20\x30\x20\x31\x36\x38\x2e\x38\x34\x35\x35\x32\
\x33\x2d\x37\x35\x2e\x37\x33\x38\x39\x38\x35\x20\x31\x36\x38\x2e\
\x38\x34\x35\x35\x32\x33\x2d\x31\x36\x38\x2e\x38\x34\x35\x35\x32\
\x33\x73\x2d\x37\x35\x2e\x37\x33\x38\x39\x38\x35\x2d\x31\x36\x38\
\x2e\x38\x34\x35\x35\x32\x33\x2d\x31\x36\x38\x2e\x38\x34\x35\x35\
\x32\x33\x2d\x31\x36\x38\x2e\x38\x34\x35\x35\x32\x33\x63\x2d\x32\
\x30\x2e\x34\x33\x32\x33\x35\x35\x20\x30\x2d\x33\x39\x2e\x38\x37\
\x34\x31\x34\x39\x20\x33\x2e\x39\x38\x30\x36\x36\x31\x2d\x35\x38\
\x2e\x30\x31\x33\x32\x37\x35\x20\x31\x30\x2e\x36\x36\x38\x39\x39\
\x6c\x32\x31\x2e\x32\x34\x38\x39\x35\x33\x20\x34\x30\x2e\x37\x34\
\x32\x39\x33\x36\x63\x32\x2e\x34\x38\x36\x36\x33\x34\x20\x32\x2e\
\x36\x37\x37\x39\x39\x32\x20\x34\x2e\x30\x31\x37\x35\x20\x36\x2e\
\x32\x38\x33\x31\x20\x34\x2e\x30\x31\x37\x35\x20\x31\x30\x2e\x32\
\x34\x33\x32\x39\x35\x20\x30\x20\x38\x2e\x34\x31\x37\x37\x31\x37\
\x2d\x38\x2e\x34\x30\x34\x34\x31\x34\x20\x31\x34\x2e\x39\x32\x31\
\x38\x35\x31\x2d\x31\x35\x2e\x33\x36\x35\x39\x36\x36\x20\x31\x35\
\x2e\x30\x37\x30\x32\x33\x2d\x30\x2e\x31\x30\x32\x33\x33\x31\x20\
\x30\x2d\x30\x2e\x32\x30\x36\x37\x30\x38\x20\x30\x2d\x30\x2e\x33\
\x30\x39\x30\x33\x38\x20\x30\x2d\x30\x2e\x32\x32\x30\x30\x31\x31\
\x20\x30\x2d\x30\x2e\x34\x32\x37\x37\x34\x32\x20\x30\x2d\x30\x2e\
\x36\x34\x37\x37\x35\x33\x2d\x30\x2e\x30\x31\x33\x33\x30\x33\x6c\
\x2d\x31\x35\x30\x2e\x35\x37\x39\x35\x30\x37\x2d\x36\x2e\x34\x36\
\x33\x32\x30\x32\x63\x2d\x35\x2e\x33\x37\x32\x33\x35\x38\x2d\x30\
\x2e\x32\x33\x34\x33\x33\x37\x2d\x31\x30\x2e\x32\x32\x39\x39\x39\
\x32\x2d\x33\x2e\x33\x31\x30\x33\x39\x36\x2d\x31\x32\x2e\x37\x31\
\x36\x36\x32\x36\x2d\x38\x2e\x30\x39\x33\x33\x32\x39\x2d\x32\x2e\
\x34\x38\x36\x36\x33\x34\x2d\x34\x2e\x37\x36\x39\x36\x33\x2d\x32\
\x2e\x32\x33\x36\x39\x34\x37\x2d\x31\x30\x2e\x35\x30\x39\x33\x35\
\x35\x20\x30\x2e\x36\x34\x37\x37\x35\x33\x2d\x31\x35\x2e\x30\x35\
\x35\x39\x30\x34\x6c\x38\x30\x2e\x38\x39\x30\x33\x30\x38\x2d\x31\
\x32\x37\x2e\x31\x37\x39\x35\x36\x34\x63\x32\x2e\x38\x38\x34\x37\
\x2d\x34\x2e\x35\x33\x33\x32\x34\x36\x20\x38\x2e\x30\x30\x36\x33\
\x34\x38\x2d\x37\x2e\x31\x35\x31\x38\x38\x37\x20\x31\x33\x2e\x33\
\x36\x35\x34\x30\x32\x2d\x36\x2e\x39\x36\x30\x35\x32\x39\x20\x35\
\x2e\x33\x37\x32\x33\x35\x38\x20\x30\x2e\x32\x33\x34\x33\x33\x37\
\x20\x31\x30\x2e\x32\x32\x37\x39\x34\x35\x20\x33\x2e\x33\x31\x32\
\x34\x34\x32\x20\x31\x32\x2e\x37\x31\x34\x35\x38\x20\x38\x2e\x30\
\x39\x35\x33\x37\x35\x6c\x31\x38\x2e\x35\x38\x30\x31\x37\x31\x20\
\x33\x35\x2e\x36\x32\x35\x33\x38\x32\x63\x32\x36\x2e\x36\x32\x39\
\x34\x39\x37\x2d\x31\x30\x2e\x38\x35\x35\x32\x33\x32\x20\x35\x35\
\x2e\x36\x38\x33\x32\x30\x37\x2d\x31\x36\x2e\x39\x36\x33\x33\x34\
\x37\x20\x38\x36\x2e\x31\x36\x38\x35\x32\x32\x2d\x31\x36\x2e\x39\
\x36\x33\x33\x34\x37\x20\x31\x32\x36\x2e\x33\x33\x38\x34\x30\x37\
\x20\x30\x20\x32\x32\x39\x2e\x31\x33\x30\x35\x33\x37\x20\x31\x30\
\x32\x2e\x37\x39\x31\x31\x30\x38\x20\x32\x32\x39\x2e\x31\x33\x30\
\x35\x33\x37\x20\x32\x32\x39\x2e\x31\x33\x30\x35\x33\x37\x53\x36\
\x33\x35\x2e\x33\x34\x30\x31\x31\x39\x20\x37\x35\x31\x2e\x38\x35\
\x39\x39\x30\x33\x20\x35\x30\x39\x2e\x30\x30\x31\x37\x31\x33\x20\
\x37\x35\x31\x2e\x38\x35\x39\x39\x30\x33\x7a\x22\x20\x2f\x3e\x3c\
\x2f\x73\x76\x67\x3e\
\x00\x00\x02\x86\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x66\x69\x6c\x6c\x3d\x22\x23\x33\x33\
\x33\x33\x33\x33\x22\x20\x64\x3d\x22\x4d\x35\x31\x32\x20\x38\x35\
\x2e\x33\x33\x33\x33\x33\x33\x63\x32\x33\x35\x2e\x36\x34\x38\x20\
\x30\x20\x34\x32\x36\x2e\x36\x36\x36\x36\x36\x37\x20\x31\x39\x31\
\x2e\x30\x31\x38\x36\x36\x37\x20\x34\x32\x36\x2e\x36\x36\x36\x36\
\x36\x37\x20\x34\x32\x36\x2e\x36\x36\x36\x36\x36\x37\x73\x2d\x31\
\x39\x31\x2e\x30\x31\x38\x36\x36\x37\x20\x34\x32\x36\x2e\x36\x36\
\x36\x36\x36\x37\x2d\x34\x32\x36\x2e\x36\x36\x36\x36\x36\x37\x20\
\x34\x32\x36\x2e\x36\x36\x36\x36\x36\x37\x53\x38\x35\x2e\x33\x33\
\x33\x33\x33\x33\x20\x37\x34\x37\x2e\x36\x34\x38\x20\x38\x35\x2e\
\x33\x33\x33\x33\x33\x33\x20\x35\x31\x32\x20\x32\x37\x36\x2e\x33\
\x35\x32\x20\x38\x35\x2e\x33\x33\x33\x33\x33\x33\x20\x35\x31\x32\
\x20\x38\x35\x2e\x33\x33\x33\x33\x33\x33\x7a\x20\x6d\x31\x2e\x37\
\x30\x36\x36\x36\x37\x20\x35\x34\x36\x2e\x31\x33\x33\x33\x33\x34\
\x61\x35\x35\x2e\x34\x36\x36\x36\x36\x37\x20\x35\x35\x2e\x34\x36\
\x36\x36\x36\x37\x20\x30\x20\x31\x20\x30\x20\x30\x20\x31\x31\x30\
\x2e\x39\x33\x33\x33\x33\x33\x20\x35\x35\x2e\x34\x36\x36\x36\x36\
\x37\x20\x35\x35\x2e\x34\x36\x36\x36\x36\x37\x20\x30\x20\x30\x20\
\x30\x20\x30\x2d\x31\x31\x30\x2e\x39\x33\x33\x33\x33\x33\x7a\x20\
\x6d\x35\x33\x2e\x37\x36\x2d\x33\x34\x31\x2e\x33\x33\x33\x33\x33\
\x34\x68\x2d\x31\x30\x36\x2e\x36\x36\x36\x36\x36\x37\x6c\x32\x31\
\x2e\x33\x33\x33\x33\x33\x33\x20\x32\x39\x38\x2e\x36\x36\x36\x36\
\x36\x37\x68\x36\x34\x6c\x32\x31\x2e\x33\x33\x33\x33\x33\x34\x2d\
\x32\x39\x38\x2e\x36\x36\x36\x36\x36\x37\x7a\x22\x20\x2f\x3e\x3c\
\x2f\x73\x76\x67\x3e\
\x00\x00\x02\x86\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x66\x69\x6c\x6c\x3d\x22\x23\x33\x33\
\x33\x33\x33\x33\x22\x20\x64\x3d\x22\x4d\x35\x31\x30\x2e\x39\x20\
\x36\x30\x2e\x37\x63\x2d\x32\x34\x35\x2e\x36\x20\x30\x2d\x34\x34\
\x36\x2e\x37\x20\x31\x39\x39\x2e\x38\x2d\x34\x34\x36\x2e\x37\x20\
\x34\x34\x36\x2e\x37\x43\x36\x34\x2e\x32\x20\x37\x35\x33\x20\x32\
\x36\x33\x2e\x39\x20\x39\x35\x34\x20\x35\x31\x30\x2e\x38\x20\x39\
\x35\x34\x73\x34\x34\x36\x2e\x36\x2d\x31\x39\x39\x2e\x37\x20\x34\
\x34\x36\x2e\x36\x2d\x34\x34\x36\x2e\x36\x63\x30\x2e\x31\x2d\x32\
\x34\x35\x2e\x36\x2d\x31\x39\x39\x2e\x36\x2d\x34\x34\x36\x2e\x37\
\x2d\x34\x34\x36\x2e\x35\x2d\x34\x34\x36\x2e\x37\x7a\x20\x6d\x2d\
\x32\x34\x2e\x37\x20\x35\x37\x34\x63\x30\x20\x38\x2e\x38\x2d\x37\
\x2e\x32\x20\x31\x36\x2d\x31\x36\x20\x31\x36\x68\x2d\x39\x34\x2e\
\x39\x63\x2d\x38\x2e\x38\x20\x30\x2d\x31\x36\x2d\x37\x2e\x32\x2d\
\x31\x36\x2d\x31\x36\x56\x33\x38\x39\x2e\x33\x63\x30\x2d\x38\x2e\
\x38\x20\x37\x2e\x32\x2d\x31\x36\x20\x31\x36\x2d\x31\x36\x68\x39\
\x34\x2e\x39\x63\x38\x2e\x38\x20\x30\x20\x31\x36\x20\x37\x2e\x32\
\x20\x31\x36\x20\x31\x36\x76\x32\x34\x35\x2e\x34\x7a\x20\x6d\x31\
\x37\x38\x2e\x35\x20\x30\x63\x30\x20\x38\x2e\x38\x2d\x37\x2e\x32\
\x20\x31\x36\x2d\x31\x36\x20\x31\x36\x68\x2d\x39\x34\x2e\x39\x63\
\x2d\x38\x2e\x38\x20\x30\x2d\x31\x36\x2d\x37\x2e\x32\x2d\x31\x36\
\x2d\x31\x36\x56\x33\x38\x39\x2e\x33\x63\x30\x2d\x38\x2e\x38\x20\
\x37\x2e\x32\x2d\x31\x36\x20\x31\x36\x2d\x31\x36\x68\x39\x34\x2e\
\x39\x63\x38\x2e\x38\x20\x30\x20\x31\x36\x20\x37\x2e\x32\x20\x31\
\x36\x20\x31\x36\x76\x32\x34\x35\x2e\x34\x7a\x22\x20\x2f\x3e\x3c\
\x2f\x73\x76\x67\x3e\
\x00\x00\x05\xb3\
\x3c\
\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\
\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\
\x6f\x22\x3f\x3e\x3c\x21\x44\x4f\x43\x54\x59\x50\x45\x20\x73\x76\
\x67\x20\x50\x55\x42\x4c\x49\x43\x20\x22\x2d\x2f\x2f\x57\x33\x43\
\x2f\x2f\x44\x54\x44\x20\x53\x56\x47\x20\x31\x2e\x31\x2f\x2f\x45\
\x4e\x22\x20\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\
\x33\x2e\x6f\x72\x67\x2f\x47\x72\x61\x70\x68\x69\x63\x73\x2f\x53\
\x56\x47\x2f\x31\x2e\x31\x2f\x44\x54\x44\x2f\x73\x76\x67\x31\x31\
\x2e\x64\x74\x64\x22\x3e\x3c\x73\x76\x67\x20\x63\x6c\x61\x73\x73\
\x3d\x22\x69\x63\x6f\x6e\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x32\
\x30\x30\x70\x78\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x32\x30\
\x30\x2e\x30\x30\x70\x78\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\
\x22\x30\x20\x30\x20\x31\x30\x32\x34\x20\x31\x30\x32\x34\x22\x20\
\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\x22\x20\x78\x6d\
\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\
\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\
\x3e\x3c\x70\x61\x74\x68\x20\x66\x69\x6c\x6c\x3d\x22\x23\x33\x33\
\x33\x33\x33\x33\x22\x20\x64\x3d\x22\x4d\x35\x31\x30\x2e\x31\x39\
\x34\x33\x37\x36\x20\x36\x34\x2e\x37\x35\x35\x38\x34\x63\x2d\x32\
\x34\x36\x2e\x35\x39\x35\x33\x30\x34\x20\x30\x2d\x34\x34\x37\x2e\
\x32\x34\x34\x31\x36\x20\x32\x30\x30\x2e\x36\x34\x39\x38\x37\x39\
\x2d\x34\x34\x37\x2e\x32\x34\x34\x31\x36\x20\x34\x34\x37\x2e\x32\
\x34\x35\x31\x38\x34\x20\x30\x20\x32\x34\x36\x2e\x36\x32\x39\x30\
\x37\x33\x20\x32\x30\x30\x2e\x36\x31\x34\x30\x36\x34\x20\x34\x34\
\x37\x2e\x32\x34\x33\x31\x33\x37\x20\x34\x34\x37\x2e\x32\x34\x34\
\x31\x36\x20\x34\x34\x37\x2e\x32\x34\x33\x31\x33\x37\x73\x34\x34\
\x37\x2e\x32\x34\x34\x31\x36\x2d\x32\x30\x30\x2e\x36\x31\x34\x30\
\x36\x34\x20\x34\x34\x37\x2e\x32\x34\x34\x31\x36\x2d\x34\x34\x37\
\x2e\x32\x34\x33\x31\x33\x37\x43\x39\x35\x37\x2e\x34\x33\x38\x35\
\x33\x37\x20\x32\x36\x35\x2e\x34\x30\x35\x37\x31\x39\x20\x37\x35\
\x36\x2e\x38\x32\x33\x34\x35\x20\x36\x34\x2e\x37\x35\x35\x38\x34\
\x20\x35\x31\x30\x2e\x31\x39\x34\x33\x37\x36\x20\x36\x34\x2e\x37\
\x35\x35\x38\x34\x4c\x35\x31\x30\x2e\x31\x39\x34\x33\x37\x36\x20\
\x36\x34\x2e\x37\x35\x35\x38\x34\x7a\x4d\x37\x32\x36\x2e\x30\x32\
\x30\x39\x31\x20\x34\x33\x38\x2e\x32\x32\x37\x38\x31\x20\x34\x36\
\x39\x2e\x30\x39\x31\x32\x33\x36\x20\x36\x39\x37\x2e\x39\x35\x31\
\x31\x30\x39\x63\x2d\x30\x2e\x30\x36\x34\x34\x36\x38\x20\x30\x2e\
\x30\x36\x34\x34\x36\x38\x2d\x30\x2e\x31\x39\x31\x33\x35\x38\x20\
\x30\x2e\x30\x39\x38\x32\x33\x37\x2d\x30\x2e\x32\x36\x30\x39\x34\
\x33\x20\x30\x2e\x31\x39\x35\x34\x35\x31\x2d\x30\x2e\x30\x39\x32\
\x30\x39\x38\x20\x30\x2e\x30\x36\x34\x34\x36\x38\x2d\x30\x2e\x30\
\x39\x32\x30\x39\x38\x20\x30\x2e\x31\x39\x30\x33\x33\x35\x2d\x30\
\x2e\x31\x39\x30\x33\x33\x35\x20\x30\x2e\x32\x35\x33\x37\x38\x2d\
\x32\x2e\x30\x35\x31\x37\x32\x39\x20\x31\x2e\x39\x38\x38\x32\x38\
\x34\x2d\x34\x2e\x35\x38\x37\x34\x38\x32\x20\x33\x2e\x32\x30\x38\
\x30\x36\x35\x2d\x36\x2e\x39\x36\x32\x35\x37\x35\x20\x34\x2e\x35\
\x35\x38\x38\x32\x39\x2d\x31\x2e\x31\x38\x33\x39\x36\x35\x20\x30\
\x2e\x36\x36\x39\x32\x34\x32\x2d\x32\x2e\x31\x34\x38\x39\x34\x33\
\x20\x31\x2e\x36\x39\x38\x36\x38\x38\x2d\x33\x2e\x34\x30\x31\x34\
\x37\x20\x32\x2e\x31\x37\x38\x36\x31\x39\x2d\x33\x2e\x38\x34\x38\
\x36\x35\x35\x20\x31\x2e\x35\x34\x33\x31\x34\x36\x2d\x37\x2e\x39\
\x32\x33\x34\x36\x20\x32\x2e\x33\x34\x34\x33\x39\x35\x2d\x31\x32\
\x2e\x30\x30\x32\x33\x35\x38\x20\x32\x2e\x33\x34\x34\x33\x39\x35\
\x2d\x34\x2e\x31\x30\x37\x35\x35\x31\x20\x30\x2d\x38\x2e\x32\x34\
\x34\x37\x37\x38\x2d\x30\x2e\x38\x30\x31\x32\x34\x39\x2d\x31\x32\
\x2e\x31\x32\x37\x32\x30\x32\x2d\x32\x2e\x34\x30\x38\x38\x36\x33\
\x2d\x31\x2e\x32\x38\x33\x32\x32\x36\x2d\x30\x2e\x35\x34\x33\x33\
\x37\x36\x2d\x32\x2e\x33\x31\x31\x36\x34\x39\x2d\x31\x2e\x36\x33\
\x35\x32\x34\x33\x2d\x33\x2e\x35\x33\x31\x34\x33\x2d\x32\x2e\x33\
\x31\x30\x36\x32\x35\x2d\x32\x2e\x33\x37\x34\x30\x37\x2d\x31\x2e\
\x33\x34\x36\x36\x37\x31\x2d\x34\x2e\x38\x34\x32\x32\x38\x35\x2d\
\x32\x2e\x35\x33\x36\x37\x37\x36\x2d\x36\x2e\x38\x39\x39\x31\x33\
\x2d\x34\x2e\x35\x35\x32\x36\x38\x39\x2d\x30\x2e\x30\x36\x32\x34\
\x32\x32\x2d\x30\x2e\x30\x36\x34\x34\x36\x38\x2d\x30\x2e\x30\x39\
\x37\x32\x31\x34\x2d\x30\x2e\x31\x39\x35\x34\x35\x31\x2d\x30\x2e\
\x31\x36\x31\x36\x38\x32\x2d\x30\x2e\x32\x35\x39\x39\x32\x2d\x30\
\x2e\x30\x36\x32\x34\x32\x32\x2d\x30\x2e\x30\x39\x34\x31\x34\x34\
\x2d\x30\x2e\x31\x39\x30\x33\x33\x35\x2d\x30\x2e\x30\x39\x34\x31\
\x34\x34\x2d\x30\x2e\x32\x35\x34\x38\x30\x33\x2d\x30\x2e\x31\x39\
\x32\x33\x38\x32\x4c\x32\x39\x36\x2e\x39\x33\x37\x33\x36\x34\x20\
\x35\x36\x37\x2e\x38\x39\x37\x30\x37\x38\x63\x2d\x31\x32\x2e\x33\
\x35\x33\x33\x35\x32\x2d\x31\x32\x2e\x37\x30\x37\x34\x31\x36\x2d\
\x31\x32\x2e\x30\x36\x34\x37\x38\x2d\x33\x33\x2e\x30\x31\x35\x39\
\x35\x31\x20\x30\x2e\x36\x34\x31\x36\x31\x33\x2d\x34\x35\x2e\x33\
\x37\x31\x33\x35\x20\x31\x32\x2e\x37\x30\x35\x33\x37\x2d\x31\x32\
\x2e\x33\x32\x32\x36\x35\x33\x20\x33\x32\x2e\x39\x38\x35\x32\x35\
\x32\x2d\x31\x32\x2e\x30\x39\x37\x35\x32\x36\x20\x34\x35\x2e\x33\
\x37\x33\x33\x39\x37\x20\x30\x2e\x36\x34\x33\x36\x36\x6c\x31\x30\
\x33\x2e\x35\x34\x36\x33\x30\x38\x20\x31\x30\x36\x2e\x34\x30\x30\
\x33\x30\x39\x20\x32\x33\x33\x2e\x39\x32\x32\x36\x38\x2d\x32\x33\
\x36\x2e\x34\x38\x39\x31\x33\x32\x63\x31\x32\x2e\x34\x35\x31\x35\
\x39\x2d\x31\x32\x2e\x36\x30\x38\x31\x35\x36\x20\x33\x32\x2e\x37\
\x39\x35\x39\x34\x2d\x31\x32\x2e\x37\x33\x35\x30\x34\x36\x20\x34\
\x35\x2e\x33\x37\x34\x34\x32\x2d\x30\x2e\x32\x35\x34\x38\x30\x33\
\x43\x37\x33\x38\x2e\x33\x33\x39\x34\x37\x20\x34\x30\x35\x2e\x33\
\x30\x36\x30\x30\x33\x20\x37\x33\x38\x2e\x34\x36\x37\x33\x38\x33\
\x20\x34\x32\x35\x2e\x36\x32\x30\x36\x37\x37\x20\x37\x32\x36\x2e\
\x30\x32\x30\x39\x31\x20\x34\x33\x38\x2e\x32\x32\x37\x38\x31\x4c\
\x37\x32\x36\x2e\x30\x32\x30\x39\x31\x20\x34\x33\x38\x2e\x32\x32\
\x37\x38\x31\x7a\x4d\x37\x32\x36\x2e\x30\x32\x30\x39\x31\x20\x34\
\x33\x38\x2e\x32\x32\x37\x38\x31\x22\x20\x2f\x3e\x3c\x2f\x73\x76\
\x67\x3e\
"
qt_resource_name = b"\
\x00\x04\
\x00\x06\xfa\x5e\
\x00\x69\
\x00\x63\x00\x6f\x00\x6e\
\x00\x03\
\x00\x00\x7a\x83\
\x00\x73\
\x00\x72\x00\x63\
\x00\x0b\
\x08\xb9\xa9\x07\
\x00\x79\
\x00\x69\x00\x63\x00\x68\x00\x61\x00\x6e\x00\x67\x00\x2e\x00\x73\x00\x76\x00\x67\
\x00\x0a\
\x06\x48\xa5\xa7\
\x00\x71\
\x00\x69\x00\x64\x00\x6f\x00\x6e\x00\x67\x00\x2e\x00\x73\x00\x76\x00\x67\
\x00\x0b\
\x0e\x32\xad\xc7\
\x00\x73\
\x00\x68\x00\x75\x00\x61\x00\x78\x00\x69\x00\x6e\x00\x2e\x00\x73\x00\x76\x00\x67\
\x00\x0b\
\x00\x1e\x53\x27\
\x00\x74\
\x00\x69\x00\x6e\x00\x67\x00\x7a\x00\x68\x00\x69\x00\x2e\x00\x73\x00\x76\x00\x67\
\x00\x07\
\x09\xe4\x5a\x07\
\x00\x63\
\x00\x68\x00\x61\x00\x2e\x00\x73\x00\x76\x00\x67\
\x00\x0b\
\x0a\xb1\xd3\x67\
\x00\x64\
\x00\x65\x00\x6e\x00\x67\x00\x64\x00\x61\x00\x69\x00\x2e\x00\x73\x00\x76\x00\x67\
\x00\x0e\
\x0d\xc3\xc9\x27\
\x00\x7a\
\x00\x68\x00\x65\x00\x6e\x00\x67\x00\x63\x00\x68\x00\x61\x00\x6e\x00\x67\x00\x2e\x00\x73\x00\x76\x00\x67\
\x00\x0a\
\x0f\xb9\xca\x47\
\x00\x66\
\x00\x61\x00\x6e\x00\x68\x00\x75\x00\x69\x00\x2e\x00\x73\x00\x76\x00\x67\
\x00\x0a\
\x0e\x91\x0a\x47\
\x00\x74\
\x00\x61\x00\x6e\x00\x68\x00\x61\x00\x6f\x00\x2e\x00\x73\x00\x76\x00\x67\
\x00\x0b\
\x01\x4b\x51\xa7\
\x00\x7a\
\x00\x61\x00\x6e\x00\x74\x00\x69\x00\x6e\x00\x67\x00\x2e\x00\x73\x00\x76\x00\x67\
\x00\x07\
\x0e\x68\x5a\x07\
\x00\x67\
\x00\x6f\x00\x75\x00\x2e\x00\x73\x00\x76\x00\x67\
"
qt_resource_struct_v1 = b"\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\
\x00\x00\x00\x0e\x00\x02\x00\x00\x00\x01\x00\x00\x00\x03\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x0b\x00\x00\x00\x04\
\x00\x00\x00\x6c\x00\x00\x00\x00\x00\x01\x00\x00\x07\x47\
\x00\x00\x01\x0e\x00\x00\x00\x00\x00\x01\x00\x00\x22\x9d\
\x00\x00\x00\x36\x00\x00\x00\x00\x00\x01\x00\x00\x02\x14\
\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
\x00\x00\x00\x88\x00\x00\x00\x00\x00\x01\x00\x00\x09\x64\
\x00\x00\x00\x9c\x00\x00\x00\x00\x00\x01\x00\x00\x0b\xff\
\x00\x00\x00\xb8\x00\x00\x00\x00\x00\x01\x00\x00\x17\x1c\
\x00\x00\x00\x50\x00\x00\x00\x00\x00\x01\x00\x00\x04\x5a\
\x00\x00\x01\x2a\x00\x00\x00\x00\x00\x01\x00\x00\x25\x27\
\x00\x00\x00\xf4\x00\x00\x00\x00\x00\x01\x00\x00\x20\x13\
\x00\x00\x00\xda\x00\x00\x00\x00\x00\x01\x00\x00\x19\xb9\
"
qt_resource_struct_v2 = b"\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x0e\x00\x02\x00\x00\x00\x01\x00\x00\x00\x03\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x0b\x00\x00\x00\x04\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x6c\x00\x00\x00\x00\x00\x01\x00\x00\x07\x47\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
\x00\x00\x01\x0e\x00\x00\x00\x00\x00\x01\x00\x00\x22\x9d\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
\x00\x00\x00\x36\x00\x00\x00\x00\x00\x01\x00\x00\x02\x14\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
\x00\x00\x00\x88\x00\x00\x00\x00\x00\x01\x00\x00\x09\x64\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
\x00\x00\x00\x9c\x00\x00\x00\x00\x00\x01\x00\x00\x0b\xff\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
\x00\x00\x00\xb8\x00\x00\x00\x00\x00\x01\x00\x00\x17\x1c\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
\x00\x00\x00\x50\x00\x00\x00\x00\x00\x01\x00\x00\x04\x5a\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
\x00\x00\x01\x2a\x00\x00\x00\x00\x00\x01\x00\x00\x25\x27\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
\x00\x00\x00\xf4\x00\x00\x00\x00\x00\x01\x00\x00\x20\x13\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
\x00\x00\x00\xda\x00\x00\x00\x00\x00\x01\x00\x00\x19\xb9\
\x00\x00\x01\x7d\xe7\x96\x1b\x10\
"
qt_version = [int(v) for v in QtCore.qVersion().split('.')]
if qt_version < [5, 8, 0]:
rcc_version = 1
qt_resource_struct = qt_resource_struct_v1
else:
rcc_version = 2
qt_resource_struct = qt_resource_struct_v2
def qInitResources():
QtCore.qRegisterResourceData(rcc_version, qt_resource_struct, qt_resource_name, qt_resource_data)
def qCleanupResources():
QtCore.qUnregisterResourceData(rcc_version, qt_resource_struct, qt_resource_name, qt_resource_data)
qInitResources()

224
main.py Normal file
View File

@ -0,0 +1,224 @@
# -*- coding:utf-8 -*-
import ast
import configparser
import re
import psutil
import time
from subprocess import Popen
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QMessageBox
from configparser import ExtendedInterpolation
# 界面文件为 mainui.py
from mainui import *
import requests
import os
configFile = 'config.ini'
# 创建配置文件对象
config = configparser.ConfigParser(interpolation=ExtendedInterpolation(), inline_comment_prefixes=['#', ';'], allow_no_value=True)
# 读取配置文件
config.read(configFile, encoding='utf-8')
class MainWindow(QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent)
self.setupUi(self)
# 初始赋值
self.nowIpLabel.setText(config['GAME_SET']['now_ip'])
self.newIpInput.setText(config['GAME_SET']['new_ip'])
self.nowGameLabel.setText(config['GAME_SET']['game_name'])
self.newGameInput.setText(config['GAME_SET']['game_name'])
if isinstance(checkprocess("nginx.exe"), int):
# self.启动Nginx.Label = '关闭Nginx'
self.nginxButton.setText("关闭Nginx")
else:
# self.启动Nginx.Label = '启动Nginx'
self.nginxButton.setText("启动Nginx")
def saveSet(self, event):
print('保存设置,按钮被单击')
# print(config['GAME_PATH']['game'])
# tinydict = ast.literal_eval(config['GAME_PATH']['game'])
# print("字典值 : %s" %tinydict.items())
# # 遍历字典列表
# for key, values in tinydict.items():
# print(key, values)
# for key, value in config['GAME_PATH'].items():
# print(key, value)
# print(config.options('GAME_PATH'))
# return
message = QMessageBox.information(self, "提示信息", "确定要保存设置吗?", QMessageBox.Ok | QMessageBox.No, QMessageBox.No)
if message == QMessageBox.No:
return
now_ip = config['GAME_SET']['now_ip']
new_ip = self.newIpInput.text()
now_game = config['GAME_SET']['game_name']
new_game = self.newGameInput.text()
compile_ip = re.compile('^(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[1-9])\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$')
# 验证IP地址格式
if (new_ip == "") or new_game == "" or not (compile_ip.match(new_ip)):
QMessageBox.information(self, "提示信息", "IP地址、游戏名称为空或有误请正确填写IPv4地址或游戏名称!")
return
dirname = config['MODFILE']['dirname']
sum = 0
for filedir in dirname.split("|"):
# 执行文本替换
if len(filedir.split(",")) < 2:
isencoding = config['DEFAULT']['file_encoding']
else:
isencoding = filedir.split(",")[1]
filename = filedir.split(",")[0]
try:
with open(filename, 'rt+', encoding=isencoding) as f:
t = f.read()
t = t.replace(now_ip, new_ip)
t = t.replace(now_game, new_game)
# 读写偏移位置移到最开始处
f.seek(0, 0)
f.write(t)
# 设置文件结尾 EOF
f.truncate()
sum = sum + 1
except:
QMessageBox.information(self, "提示信息", "替换“" + filename + "”出错,可能文件不存在或编码不对,请检查需要替换的文件编码与配置文件编码是否相符!")
return
# 写入配置文件
config.set('GAME_SET', 'game_name', new_game)
config.set('GAME_SET', 'now_ip', new_ip)
config.set('GAME_SET', 'new_ip', new_ip)
saveconfig = open(configFile, 'wt', encoding=config['DEFAULT']['file_encoding'])
config.write(saveconfig) # 把要修改的节点的内容写到文件中
saveconfig.close()
# 设置界面显示
self.nowGameLabel.setText(new_game)
self.nowIpLabel.setText(new_ip)
# 成功提示
QMessageBox.information(self, "提示信息", "配置保存成功!重启游戏后生效!<br>游戏名称:" + new_game + "----游戏IP" + new_ip + "<br>共配置了" + str(sum) + "个文件")
print('修改完成:' + new_game + ':' + new_ip)
return
def nginx(self, event):
if self.nginxButton.text() == '启动Nginx':
nginx_process = Popen('start .\\nginx.exe',
shell=True,
cwd=config['SERVER_PATH']['nginx_path'],
# encoding='utf-8'
)
php_process = Popen(config['SERVER_PATH']['php_spawner_path'] + 'php-cgi-spawner.exe "' + config['SERVER_PATH']['php_path'] + 'php-cgi.exe -c ' + config['SERVER_PATH']['php_path'] + 'php.ini" ' + config['SERVER_PATH']['php_cgi_port'] + ' 1+16',
shell=True,
# cwd=config['DEFAULT']['dir'] + 'phpstudy_pro',
# encoding='utf-8'
)
self.nginxButton.setText("关闭Nginx")
else:
nginx_process = Popen('.\\nginx.exe -s stop',
shell=True,
cwd=config['SERVER_PATH']['nginx_path'],
# encoding='utf-8'
)
spawner_process = Popen('taskkill /f /t /im php-cgi-spawner.exe',
shell=True,
# encoding='utf-8'
)
PHP_process = Popen('taskkill /f /t /im php-cgi.exe',
shell=True,
# encoding='utf-8'
)
self.nginxButton.setText("启动Nginx")
# print(process)
# os.chdir("D:\\LYserver\\phpstudy_pro\\Extensions\\Nginx1.15.11")
# nginxtype = os.system('start .\\nginx.exe') # 不弹出界面
# if nginxtype
# os.system('start .\\nginx.exe') #弹出界面
print('启动Nginx,按钮被单击')
def mysql(self, event):
if self.mysqlButton.text() == '启动MySql':
php_process = Popen('.\\mysqld.exe',
shell=True,
cwd=config['SERVER_PATH']['mysql_path'] + 'bin',
# encoding='utf-8'
)
self.mysqlButton.setText("关闭MySql")
else:
kill_process = Popen('taskkill /f /t /im mysqld.exe',
shell=True,
# encoding='utf-8'
)
self.mysqlButton.setText("启动MySql")
print('启动MySql,按钮被单击')
def game(self, event):
if self.gameButton.text() == '启动游戏':
# tinydict = ast.literal_eval(config['GAME_PATH']['game_path'])
game_path = config['GAME_PATH']['game_path'].split("|")
# print("字典值 : %s" %game_path.items())
# 遍历字典列表
for f in game_path:
print(f)
# 执行文本替换
if len(f.split(",")) < 2:
sleeptime = 0
else:
sleeptime = float(f.split(",")[1])
game_file = f.split(",")[0]
try:
Popen('start ' + game_file,
shell=True,
# cwd=values,
# encoding='utf-8'
)
time.sleep(float(sleeptime)) # 延迟时间
except:
QMessageBox.information(self, "提示信息", "启动“" + game_file + "”出错,可能文件不存在或配置不对!")
return
self.gameButton.setText("关闭游戏")
else:
Popen(
'taskkill /f /t /im LocalLogServer64_R.exe & taskkill /f /t /im LoggerServer64_R.exe & taskkill /f /t /im SessionServer64_R.exe & taskkill /f /t /im NameServer64_R.exe & taskkill /f /t /im LogicServerCQ64_R.exe & taskkill /f /t /im GateServer64_R.exe & taskkill /f /t /im DBCenterServer64_R.exe & taskkill /f /t /im DBServer64_R.exe & taskkill /f /t /im BackStageServer64_R.exe & taskkill /f /t /im AMServer64_R.exe',
shell=True,
# encoding='utf-8'
)
self.gameButton.setText("启动游戏")
print('启动游戏,按钮被单击')
def fanbianyi(self, event):
apktool = Popen('apktool d game.apk',
shell=True,
cwd=config['DEFAULT']['dir'] + 'apk',
# encoding='utf-8'
)
print('反编译APK,按钮被单击')
def shengcheng(self, event):
apktool = Popen('apktool b game',
shell=True,
cwd=config['DEFAULT']['dir'] + 'apk',
# encoding='utf-8'
)
print('生成APK,按钮被单击')
def qianming(self, event):
apktool = Popen('jarsigner -verbose -keystore key.keystore -storepass 123456 -signedjar game-signed.apk game/dist/game.apk key.keystore',
shell=True,
cwd=config['DEFAULT']['dir'] + 'apk',
# encoding='utf-8'
)
print('APK签名,按钮被单击')
# 进程判断返回进程ID
def checkprocess(processname):
pl = psutil.pids()
for pid in pl:
if psutil.Process(pid).name() == processname:
return pid
if __name__ == '__main__':
app = QApplication(sys.argv)
myWin = MainWindow()
myWin.show()
sys.exit(app.exec_())

120
mainui.py Normal file
View File

@ -0,0 +1,120 @@
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'mainui.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(560, 333)
MainWindow.setMouseTracking(False)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.groupBox = QtWidgets.QGroupBox(self.centralwidget)
self.groupBox.setGeometry(QtCore.QRect(20, 20, 520, 100))
self.groupBox.setObjectName("groupBox")
self.saveSetButton = QtWidgets.QPushButton(self.groupBox)
self.saveSetButton.setGeometry(QtCore.QRect(420, 30, 75, 52))
self.saveSetButton.setObjectName("saveSetButton")
self.newGameInput = QtWidgets.QLineEdit(self.groupBox)
self.newGameInput.setGeometry(QtCore.QRect(70, 60, 120, 20))
self.newGameInput.setObjectName("newGameInput")
self.label_4 = QtWidgets.QLabel(self.groupBox)
self.label_4.setGeometry(QtCore.QRect(210, 60, 60, 20))
self.label_4.setLayoutDirection(QtCore.Qt.LeftToRight)
self.label_4.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
self.label_4.setObjectName("label_4")
self.newIpInput = QtWidgets.QLineEdit(self.groupBox)
self.newIpInput.setGeometry(QtCore.QRect(270, 60, 120, 20))
self.newIpInput.setObjectName("newIpInput")
self.label_2 = QtWidgets.QLabel(self.groupBox)
self.label_2.setGeometry(QtCore.QRect(10, 60, 60, 20))
self.label_2.setLayoutDirection(QtCore.Qt.LeftToRight)
self.label_2.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
self.label_2.setObjectName("label_2")
self.nowIpLabel = QtWidgets.QLabel(self.groupBox)
self.nowIpLabel.setGeometry(QtCore.QRect(270, 30, 120, 20))
self.nowIpLabel.setStyleSheet("color: rgb(53, 132, 17);")
self.nowIpLabel.setObjectName("nowIpLabel")
self.label = QtWidgets.QLabel(self.groupBox)
self.label.setGeometry(QtCore.QRect(10, 30, 60, 20))
self.label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
self.label.setObjectName("label")
self.nowGameLabel = QtWidgets.QLabel(self.groupBox)
self.nowGameLabel.setGeometry(QtCore.QRect(70, 30, 120, 20))
self.nowGameLabel.setStyleSheet("color: rgb(53, 132, 17);")
self.nowGameLabel.setObjectName("nowGameLabel")
self.label_5 = QtWidgets.QLabel(self.groupBox)
self.label_5.setGeometry(QtCore.QRect(210, 30, 60, 20))
self.label_5.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
self.label_5.setObjectName("label_5")
self.groupBox_2 = QtWidgets.QGroupBox(self.centralwidget)
self.groupBox_2.setGeometry(QtCore.QRect(20, 130, 520, 80))
self.groupBox_2.setObjectName("groupBox_2")
self.nginxButton = QtWidgets.QPushButton(self.groupBox_2)
self.nginxButton.setGeometry(QtCore.QRect(10, 20, 80, 45))
self.nginxButton.setObjectName("nginxButton")
self.mysqlButton = QtWidgets.QPushButton(self.groupBox_2)
self.mysqlButton.setGeometry(QtCore.QRect(100, 20, 80, 45))
self.mysqlButton.setObjectName("mysqlButton")
self.gameButton = QtWidgets.QPushButton(self.groupBox_2)
self.gameButton.setGeometry(QtCore.QRect(190, 20, 80, 45))
self.gameButton.setObjectName("gameButton")
self.groupBox_3 = QtWidgets.QGroupBox(self.centralwidget)
self.groupBox_3.setGeometry(QtCore.QRect(20, 220, 521, 80))
self.groupBox_3.setObjectName("groupBox_3")
self.fanbianyiButton = QtWidgets.QPushButton(self.groupBox_3)
self.fanbianyiButton.setGeometry(QtCore.QRect(10, 20, 80, 45))
self.fanbianyiButton.setObjectName("fanbianyiButton")
self.shengchengButton = QtWidgets.QPushButton(self.groupBox_3)
self.shengchengButton.setGeometry(QtCore.QRect(100, 20, 80, 45))
self.shengchengButton.setObjectName("shengchengButton")
self.qianmingButton = QtWidgets.QPushButton(self.groupBox_3)
self.qianmingButton.setGeometry(QtCore.QRect(190, 20, 80, 45))
self.qianmingButton.setObjectName("qianmingButton")
MainWindow.setCentralWidget(self.centralwidget)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName("statusbar")
MainWindow.setStatusBar(self.statusbar)
self.retranslateUi(MainWindow)
self.saveSetButton.clicked.connect(MainWindow.saveSet)
self.shengchengButton.clicked.connect(MainWindow.shengcheng)
self.qianmingButton.clicked.connect(MainWindow.qianming)
self.nginxButton.clicked.connect(MainWindow.nginx)
self.mysqlButton.clicked.connect(MainWindow.mysql)
self.gameButton.clicked.connect(MainWindow.game)
self.fanbianyiButton.clicked.connect(MainWindow.fanbianyi)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "通用游戏部署工具 v1.0 By:shileiye"))
self.groupBox.setTitle(_translate("MainWindow", "基本设置"))
self.saveSetButton.setText(_translate("MainWindow", "保存"))
self.newGameInput.setText(_translate("MainWindow", "撒打算"))
self.newGameInput.setPlaceholderText(_translate("MainWindow", "输入新名称"))
self.label_4.setText(_translate("MainWindow", "新IP"))
self.newIpInput.setPlaceholderText(_translate("MainWindow", "输入IP"))
self.label_2.setText(_translate("MainWindow", "新名称:"))
self.nowIpLabel.setText(_translate("MainWindow", "255.255.255.255"))
self.label.setText(_translate("MainWindow", "游戏名称:"))
self.nowGameLabel.setText(_translate("MainWindow", "XX游戏"))
self.label_5.setText(_translate("MainWindow", "游戏IP"))
self.groupBox_2.setTitle(_translate("MainWindow", "基础服务"))
self.nginxButton.setText(_translate("MainWindow", "启动Nginx"))
self.mysqlButton.setText(_translate("MainWindow", "启动MySql"))
self.gameButton.setText(_translate("MainWindow", "启动游戏"))
self.groupBox_3.setTitle(_translate("MainWindow", "辅助工具"))
self.fanbianyiButton.setText(_translate("MainWindow", "反编译APK"))
self.shengchengButton.setText(_translate("MainWindow", "生成APK"))
self.qianmingButton.setText(_translate("MainWindow", "APK签名"))
import icon_rc

401
mainui.ui Normal file
View File

@ -0,0 +1,401 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>560</width>
<height>333</height>
</rect>
</property>
<property name="mouseTracking">
<bool>false</bool>
</property>
<property name="windowTitle">
<string>通用游戏部署工具 v1.0 By:shileiye</string>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QGroupBox" name="groupBox">
<property name="geometry">
<rect>
<x>20</x>
<y>20</y>
<width>520</width>
<height>100</height>
</rect>
</property>
<property name="title">
<string>基本设置</string>
</property>
<widget class="QPushButton" name="saveSetButton">
<property name="geometry">
<rect>
<x>420</x>
<y>30</y>
<width>75</width>
<height>52</height>
</rect>
</property>
<property name="text">
<string>保存</string>
</property>
</widget>
<widget class="QLineEdit" name="newGameInput">
<property name="geometry">
<rect>
<x>70</x>
<y>60</y>
<width>120</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>撒打算</string>
</property>
<property name="placeholderText">
<string>输入新名称</string>
</property>
</widget>
<widget class="QLabel" name="label_4">
<property name="geometry">
<rect>
<x>210</x>
<y>60</y>
<width>60</width>
<height>20</height>
</rect>
</property>
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
<property name="text">
<string>新IP</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
<widget class="QLineEdit" name="newIpInput">
<property name="geometry">
<rect>
<x>270</x>
<y>60</y>
<width>120</width>
<height>20</height>
</rect>
</property>
<property name="placeholderText">
<string>输入IP</string>
</property>
</widget>
<widget class="QLabel" name="label_2">
<property name="geometry">
<rect>
<x>10</x>
<y>60</y>
<width>60</width>
<height>20</height>
</rect>
</property>
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
<property name="text">
<string>新名称:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
<widget class="QLabel" name="nowIpLabel">
<property name="geometry">
<rect>
<x>270</x>
<y>30</y>
<width>120</width>
<height>20</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(53, 132, 17);</string>
</property>
<property name="text">
<string>255.255.255.255</string>
</property>
</widget>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>10</x>
<y>30</y>
<width>60</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>游戏名称:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
<widget class="QLabel" name="nowGameLabel">
<property name="geometry">
<rect>
<x>70</x>
<y>30</y>
<width>120</width>
<height>20</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(53, 132, 17);</string>
</property>
<property name="text">
<string>XX游戏</string>
</property>
</widget>
<widget class="QLabel" name="label_5">
<property name="geometry">
<rect>
<x>210</x>
<y>30</y>
<width>60</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>游戏IP</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_2">
<property name="geometry">
<rect>
<x>20</x>
<y>130</y>
<width>520</width>
<height>80</height>
</rect>
</property>
<property name="title">
<string>基础服务</string>
</property>
<widget class="QPushButton" name="nginxButton">
<property name="geometry">
<rect>
<x>10</x>
<y>20</y>
<width>80</width>
<height>45</height>
</rect>
</property>
<property name="text">
<string>启动Nginx</string>
</property>
</widget>
<widget class="QPushButton" name="mysqlButton">
<property name="geometry">
<rect>
<x>100</x>
<y>20</y>
<width>80</width>
<height>45</height>
</rect>
</property>
<property name="text">
<string>启动MySql</string>
</property>
</widget>
<widget class="QPushButton" name="gameButton">
<property name="geometry">
<rect>
<x>190</x>
<y>20</y>
<width>80</width>
<height>45</height>
</rect>
</property>
<property name="text">
<string>启动游戏</string>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_3">
<property name="geometry">
<rect>
<x>20</x>
<y>220</y>
<width>521</width>
<height>80</height>
</rect>
</property>
<property name="title">
<string>辅助工具</string>
</property>
<widget class="QPushButton" name="fanbianyiButton">
<property name="geometry">
<rect>
<x>10</x>
<y>20</y>
<width>80</width>
<height>45</height>
</rect>
</property>
<property name="text">
<string>反编译APK</string>
</property>
</widget>
<widget class="QPushButton" name="shengchengButton">
<property name="geometry">
<rect>
<x>100</x>
<y>20</y>
<width>80</width>
<height>45</height>
</rect>
</property>
<property name="text">
<string>生成APK</string>
</property>
</widget>
<widget class="QPushButton" name="qianmingButton">
<property name="geometry">
<rect>
<x>190</x>
<y>20</y>
<width>80</width>
<height>45</height>
</rect>
</property>
<property name="text">
<string>APK签名</string>
</property>
</widget>
</widget>
</widget>
<widget class="QStatusBar" name="statusbar"/>
</widget>
<resources>
<include location="icon.qrc"/>
</resources>
<connections>
<connection>
<sender>saveSetButton</sender>
<signal>clicked()</signal>
<receiver>MainWindow</receiver>
<slot>lower()</slot>
<hints>
<hint type="sourcelabel">
<x>477</x>
<y>75</y>
</hint>
<hint type="destinationlabel">
<x>279</x>
<y>166</y>
</hint>
</hints>
</connection>
<connection>
<sender>shengchengButton</sender>
<signal>clicked()</signal>
<receiver>MainWindow</receiver>
<slot>lower()</slot>
<hints>
<hint type="sourcelabel">
<x>159</x>
<y>262</y>
</hint>
<hint type="destinationlabel">
<x>279</x>
<y>166</y>
</hint>
</hints>
</connection>
<connection>
<sender>qianmingButton</sender>
<signal>clicked()</signal>
<receiver>MainWindow</receiver>
<slot>lower()</slot>
<hints>
<hint type="sourcelabel">
<x>249</x>
<y>262</y>
</hint>
<hint type="destinationlabel">
<x>279</x>
<y>166</y>
</hint>
</hints>
</connection>
<connection>
<sender>nginxButton</sender>
<signal>clicked()</signal>
<receiver>MainWindow</receiver>
<slot>lower()</slot>
<hints>
<hint type="sourcelabel">
<x>69</x>
<y>172</y>
</hint>
<hint type="destinationlabel">
<x>279</x>
<y>166</y>
</hint>
</hints>
</connection>
<connection>
<sender>mysqlButton</sender>
<signal>clicked()</signal>
<receiver>MainWindow</receiver>
<slot>lower()</slot>
<hints>
<hint type="sourcelabel">
<x>159</x>
<y>172</y>
</hint>
<hint type="destinationlabel">
<x>279</x>
<y>166</y>
</hint>
</hints>
</connection>
<connection>
<sender>gameButton</sender>
<signal>clicked()</signal>
<receiver>MainWindow</receiver>
<slot>lower()</slot>
<hints>
<hint type="sourcelabel">
<x>249</x>
<y>172</y>
</hint>
<hint type="destinationlabel">
<x>279</x>
<y>166</y>
</hint>
</hints>
</connection>
<connection>
<sender>fanbianyiButton</sender>
<signal>clicked()</signal>
<receiver>MainWindow</receiver>
<slot>lower()</slot>
<hints>
<hint type="sourcelabel">
<x>69</x>
<y>262</y>
</hint>
<hint type="destinationlabel">
<x>279</x>
<y>166</y>
</hint>
</hints>
</connection>
</connections>
</ui>

1
src/icon/cha.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64z m165.4 618.2l-66-0.3L512 563.4l-99.3 118.4-66.1 0.3c-4.4 0-8-3.5-8-8 0-1.9 0.7-3.7 1.9-5.2l130.1-155L340.5 359c-1.2-1.5-1.9-3.3-1.9-5.2 0-4.4 3.6-8 8-8l66.1 0.3L512 464.6l99.3-118.4 66-0.3c4.4 0 8 3.5 8 8 0 1.9-0.7 3.7-1.9 5.2L553.5 514l130 155c1.2 1.5 1.9 3.3 1.9 5.2 0 4.4-3.6 8-8 8z" /></svg>

After

Width:  |  Height:  |  Size: 663 B

1
src/icon/dengdai.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M511.998465 65.279772c-246.706845 0-446.708971 200.01543-446.708971 446.709995 0 246.700705 200.001103 446.731484 446.708971 446.731484 246.708891 0 446.711018-200.030779 446.711018-446.731484C958.709483 265.295202 758.707356 65.279772 511.998465 65.279772zM603.347986 360.490308l41.326221-41.326221c13.770632-18.351973 41.326221-18.351973 59.691497 0 18.365276 13.777795 18.365276 41.326221 0 59.691497l-41.326221 41.311895c-13.770632 18.365276-41.311895 18.365276-59.691497 0C584.997036 406.389684 584.997036 378.855584 603.347986 360.490308zM236.062925 525.766538l0-27.541263c0-18.358113 13.770632-27.548426 27.541263-27.548426l91.842755 0c13.770632 0 27.526937 13.770632 27.526937 27.548426l0 27.541263c0 18.365276-13.756305 27.555589-32.136931 27.555589l-87.233783 0C249.833557 553.322128 236.062925 539.53717 236.062925 525.766538zM419.705456 663.502529l-41.311895 41.326221c-13.784958 18.365276-41.326221 18.365276-59.69252 0-18.35095-13.770632-18.35095-41.326221 0-59.691497l41.326221-41.327244c13.770632-18.35095 41.311895-18.35095 59.677171 0C438.070732 617.59599 438.070732 645.137253 419.705456 663.502529zM419.705456 420.167478c-18.365276 18.365276-45.906539 18.365276-59.677171 0l-41.326221-41.311895c-18.35095-13.784958-18.35095-41.319058 0-59.691497 13.770632-18.351973 41.326221-18.351973 59.69252 0l41.311895 41.326221C438.070732 374.260939 438.070732 401.808342 419.705456 420.167478zM552.861128 759.925602c0 13.769608-13.784958 27.54024-27.555589 27.54024l-27.541263 0c-13.771655 0-27.556613-13.770632-27.556613-27.54024l0-87.233783c0-13.784958 13.785981-27.555589 27.556613-27.555589l27.541263 0c18.365276 0 27.555589 9.174963 27.555589 27.555589L552.861128 759.925602zM552.861128 351.299995c0 13.770632-13.784958 27.555589-27.555589 27.555589l-27.541263 0c-13.771655 0-27.556613-13.784958-27.556613-27.555589l0-87.225597c0-13.778818 9.190313-27.549449 27.556613-27.549449l27.541263 0c18.365276 0 27.555589 13.770632 27.555589 27.549449L552.861128 351.299995zM704.365704 704.82875c-13.770632 18.365276-41.326221 18.365276-59.691497 0l-41.326221-41.326221c-18.351973-13.770632-18.351973-41.311895 0-59.69252 13.784958-18.35095 41.326221-18.35095 59.691497 0l41.326221 41.327244C722.73098 658.907884 722.73098 686.46245 704.365704 704.82875zM787.003819 525.766538c0 13.770632-13.770632 27.555589-27.541263 27.555589l-87.247086 0c-13.770632 0-27.541263-13.784958-27.541263-27.555589l0-27.541263c0-13.777795 13.770632-27.548426 27.541263-27.548426l87.247086 0c13.770632 0 27.541263 9.18929 27.541263 27.548426L787.003819 525.766538z" /></svg>

After

Width:  |  Height:  |  Size: 2.8 KiB

1
src/icon/fanhui.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M511.582491 63.413262C265.134543 63.413262 64.62588 263.921925 64.62588 510.369873s200.508663 446.957635 446.957635 446.957635 446.957635-200.508663 446.957635-446.957635S758.031463 63.413262 511.582491 63.413262zM509.001713 751.859903c-98.517781 0-182.467775-62.623269-214.771505-150.056598l0.327458-0.134053c-2.007727-4.036943-3.38305-8.422833-3.38305-13.237489 0-16.647145 13.494339-30.142507 30.142507-30.142507 13.389962 0 24.358781 8.877181 28.2893 20.955264l0.422625-0.172939c23.269983 65.442478 85.645612 112.503307 158.972665 112.503307 93.106538 0 168.845523-75.738985 168.845523-168.845523s-75.738985-168.845523-168.845523-168.845523c-20.432355 0-39.874149 3.980661-58.013275 10.66899l21.248953 40.742936c2.486634 2.677992 4.0175 6.2831 4.0175 10.243295 0 8.417717-8.404414 14.921851-15.365966 15.07023-0.102331 0-0.206708 0-0.309038 0-0.220011 0-0.427742 0-0.647753-0.013303l-150.579507-6.463202c-5.372358-0.234337-10.229992-3.310396-12.716626-8.093329-2.486634-4.76963-2.236947-10.509355 0.647753-15.055904l80.890308-127.179564c2.8847-4.533246 8.006348-7.151887 13.365402-6.960529 5.372358 0.234337 10.227945 3.312442 12.71458 8.095375l18.580171 35.625382c26.629497-10.855232 55.683207-16.963347 86.168522-16.963347 126.338407 0 229.130537 102.791108 229.130537 229.130537S635.340119 751.859903 509.001713 751.859903z" /></svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

1
src/icon/gou.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M510.194376 64.75584c-246.595304 0-447.24416 200.649879-447.24416 447.245184 0 246.629073 200.614064 447.243137 447.24416 447.243137s447.24416-200.614064 447.24416-447.243137C957.438537 265.405719 756.82345 64.75584 510.194376 64.75584L510.194376 64.75584zM726.02091 438.22781 469.091236 697.951109c-0.064468 0.064468-0.191358 0.098237-0.260943 0.195451-0.092098 0.064468-0.092098 0.190335-0.190335 0.25378-2.051729 1.988284-4.587482 3.208065-6.962575 4.558829-1.183965 0.669242-2.148943 1.698688-3.40147 2.178619-3.848655 1.543146-7.92346 2.344395-12.002358 2.344395-4.107551 0-8.244778-0.801249-12.127202-2.408863-1.283226-0.543376-2.311649-1.635243-3.53143-2.310625-2.37407-1.346671-4.842285-2.536776-6.89913-4.552689-0.062422-0.064468-0.097214-0.195451-0.161682-0.25992-0.062422-0.094144-0.190335-0.094144-0.254803-0.192382L296.937364 567.897078c-12.353352-12.707416-12.06478-33.015951 0.641613-45.37135 12.70537-12.322653 32.985252-12.097526 45.373397 0.64366l103.546308 106.400309 233.92268-236.489132c12.45159-12.608156 32.79594-12.735046 45.37442-0.254803C738.33947 405.306003 738.467383 425.620677 726.02091 438.22781L726.02091 438.22781zM726.02091 438.22781" /></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

1
src/icon/qidong.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M512 928C282.25 928 96 741.75 96 512S282.25 96 512 96s416 186.25 416 416-186.25 416-416 416z m172.653-406.922a10.937 10.937 0 0 0 1.794-1.793c3.747-4.738 2.944-11.617-1.794-15.363L432.5 304.5v393.406c0 2.462 0.831 4.853 2.359 6.784 3.747 4.738 10.625 5.541 15.363 1.794l234.431-185.406z" /></svg>

After

Width:  |  Height:  |  Size: 578 B

1
src/icon/shuaxin.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M512 63.5C264.3 63.5 63.5 264.3 63.5 512S264.3 960.5 512 960.5 960.5 759.7 960.5 512 759.7 63.5 512 63.5zM198 509.6h87.6c0-136.3 102.3-243.4 233.7-238.5 43.8 0 82.8 14.6 121.7 34.1L597.2 349c-24.4-9.8-53.6-19.5-82.8-19.5-92.5 0-170.4 77.9-170.4 180.1h87.6L314.8 631.3 198 509.6z m540.3-0.1c0 131.4-102.2 243.4-228.8 243.4-43.8 0-82.8-19.4-121.7-38.9l43.8-43.8c24.4 9.8 53.6 19.5 82.8 19.5 92.5 0 170.4-77.9 170.4-180.1h-92.5l116.9-121.7L826 509.5h-87.7z" /></svg>

After

Width:  |  Height:  |  Size: 745 B

1
src/icon/tanhao.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M512 85.333333c235.648 0 426.666667 191.018667 426.666667 426.666667s-191.018667 426.666667-426.666667 426.666667S85.333333 747.648 85.333333 512 276.352 85.333333 512 85.333333z m1.706667 546.133334a55.466667 55.466667 0 1 0 0 110.933333 55.466667 55.466667 0 0 0 0-110.933333z m53.76-341.333334h-106.666667l21.333333 298.666667h64l21.333334-298.666667z" /></svg>

After

Width:  |  Height:  |  Size: 646 B

1
src/icon/tingzhi.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M510.9 60.7c-245.6 0-446.7 199.8-446.7 446.7C64.2 753 263.9 954 510.8 954s446.6-199.7 446.6-446.6c0.1-245.6-199.6-446.7-446.5-446.7z m139.8 574c0 8.8-7.2 16-16 16H389.3c-8.8 0-16-7.2-16-16V389.3c0-8.8 7.2-16 16-16h245.5c8.8 0 16 7.2 16 16v245.4z" /></svg>

After

Width:  |  Height:  |  Size: 537 B

1
src/icon/yichang.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M0 512a512 512 0 1 0 1024 0A512 512 0 1 0 0 512z" fill="#EC4141" /><path d="M849.92 580.267H174.08c-30.72 0-54.613-23.894-54.613-54.614s23.893-54.613 54.613-54.613h675.84c30.72 0 54.613 23.893 54.613 54.613s-23.893 54.614-54.613 54.614z" fill="#FFFFFF" /></svg>

After

Width:  |  Height:  |  Size: 528 B

1
src/icon/zanting.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M510.9 60.7c-245.6 0-446.7 199.8-446.7 446.7C64.2 753 263.9 954 510.8 954s446.6-199.7 446.6-446.6c0.1-245.6-199.6-446.7-446.5-446.7z m-24.7 574c0 8.8-7.2 16-16 16h-94.9c-8.8 0-16-7.2-16-16V389.3c0-8.8 7.2-16 16-16h94.9c8.8 0 16 7.2 16 16v245.4z m178.5 0c0 8.8-7.2 16-16 16h-94.9c-8.8 0-16-7.2-16-16V389.3c0-8.8 7.2-16 16-16h94.9c8.8 0 16 7.2 16 16v245.4z" /></svg>

After

Width:  |  Height:  |  Size: 646 B

1
src/icon/zhengchang.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M0 512a512 512 0 1 0 1024 0A512 512 0 1 0 0 512z" fill="#29CC40" /><path d="M826.027 324.267c-20.48-23.894-54.614-23.894-75.094-6.827L430.08 590.507 276.48 450.56c-23.893-20.48-58.027-17.067-78.507 3.413-20.48 23.894-17.066 58.027 3.414 78.507l180.906 163.84s0 3.413 3.414 3.413c20.48 23.894 54.613 23.894 75.093 6.827l358.4-303.787c23.893-20.48 27.307-54.613 6.827-78.506z" fill="#FFFFFF" /></svg>

After

Width:  |  Height:  |  Size: 665 B

View File

@ -0,0 +1,446 @@
# The PEP 484 type hints stub file for the Qt3DAnimation module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt3D.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtGui
from PyQt5 import QtCore
from PyQt5 import Qt3DRender
from PyQt5 import Qt3DCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QAbstractAnimation(QtCore.QObject):
class AnimationType(int): ...
KeyframeAnimation = ... # type: 'QAbstractAnimation.AnimationType'
MorphingAnimation = ... # type: 'QAbstractAnimation.AnimationType'
VertexBlendAnimation = ... # type: 'QAbstractAnimation.AnimationType'
def durationChanged(self, duration: float) -> None: ...
def positionChanged(self, position: float) -> None: ...
def animationNameChanged(self, name: str) -> None: ...
def setDuration(self, duration: float) -> None: ...
def setPosition(self, position: float) -> None: ...
def setAnimationName(self, name: str) -> None: ...
def duration(self) -> float: ...
def position(self) -> float: ...
def animationType(self) -> 'QAbstractAnimation.AnimationType': ...
def animationName(self) -> str: ...
class QAbstractAnimationClip(Qt3DCore.QNode):
def sceneChangeEvent(self, change: Qt3DCore.QSceneChange) -> None: ...
def durationChanged(self, duration: float) -> None: ...
def duration(self) -> float: ...
class QAbstractChannelMapping(Qt3DCore.QNode): ...
class QAbstractClipAnimator(Qt3DCore.QComponent):
class Loops(int): ...
Infinite = ... # type: 'QAbstractClipAnimator.Loops'
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def sceneChangeEvent(self, change: Qt3DCore.QSceneChange) -> None: ...
def normalizedTimeChanged(self, index: float) -> None: ...
def clockChanged(self, clock: 'QClock') -> None: ...
def loopCountChanged(self, loops: int) -> None: ...
def channelMapperChanged(self, channelMapper: 'QChannelMapper') -> None: ...
def runningChanged(self, running: bool) -> None: ...
def stop(self) -> None: ...
def start(self) -> None: ...
def setNormalizedTime(self, timeFraction: float) -> None: ...
def setClock(self, clock: 'QClock') -> None: ...
def setLoopCount(self, loops: int) -> None: ...
def setChannelMapper(self, channelMapper: 'QChannelMapper') -> None: ...
def setRunning(self, running: bool) -> None: ...
def normalizedTime(self) -> float: ...
def clock(self) -> 'QClock': ...
def loopCount(self) -> int: ...
def channelMapper(self) -> 'QChannelMapper': ...
def isRunning(self) -> bool: ...
class QAbstractClipBlendNode(Qt3DCore.QNode):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
class QAdditiveClipBlend('QAbstractClipBlendNode'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def additiveClipChanged(self, additiveClip: 'QAbstractClipBlendNode') -> None: ...
def baseClipChanged(self, baseClip: 'QAbstractClipBlendNode') -> None: ...
def additiveFactorChanged(self, additiveFactor: float) -> None: ...
def setAdditiveClip(self, additiveClip: 'QAbstractClipBlendNode') -> None: ...
def setBaseClip(self, baseClip: 'QAbstractClipBlendNode') -> None: ...
def setAdditiveFactor(self, additiveFactor: float) -> None: ...
def additiveClip(self) -> 'QAbstractClipBlendNode': ...
def baseClip(self) -> 'QAbstractClipBlendNode': ...
def additiveFactor(self) -> float: ...
class QAnimationAspect(Qt3DCore.QAbstractAspect):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
class QAnimationClip('QAbstractAnimationClip'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def clipDataChanged(self, clipData: 'QAnimationClipData') -> None: ...
def setClipData(self, clipData: 'QAnimationClipData') -> None: ...
def clipData(self) -> 'QAnimationClipData': ...
class QAnimationClipData(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QAnimationClipData') -> None: ...
def isValid(self) -> bool: ...
def clearChannels(self) -> None: ...
def removeChannel(self, index: int) -> None: ...
def insertChannel(self, index: int, c: 'QChannel') -> None: ...
def appendChannel(self, c: 'QChannel') -> None: ...
def channelCount(self) -> int: ...
def name(self) -> str: ...
def setName(self, name: str) -> None: ...
class QAnimationClipLoader('QAbstractAnimationClip'):
class Status(int): ...
NotReady = ... # type: 'QAnimationClipLoader.Status'
Ready = ... # type: 'QAnimationClipLoader.Status'
Error = ... # type: 'QAnimationClipLoader.Status'
@typing.overload
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
@typing.overload
def __init__(self, source: QtCore.QUrl, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def sceneChangeEvent(self, change: Qt3DCore.QSceneChange) -> None: ...
def statusChanged(self, status: 'QAnimationClipLoader.Status') -> None: ...
def sourceChanged(self, source: QtCore.QUrl) -> None: ...
def setSource(self, source: QtCore.QUrl) -> None: ...
def status(self) -> 'QAnimationClipLoader.Status': ...
def source(self) -> QtCore.QUrl: ...
class QAnimationController(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def recursiveChanged(self, recursive: bool) -> None: ...
def entityChanged(self, entity: Qt3DCore.QEntity) -> None: ...
def positionOffsetChanged(self, offset: float) -> None: ...
def positionScaleChanged(self, scale: float) -> None: ...
def positionChanged(self, position: float) -> None: ...
def activeAnimationGroupChanged(self, index: int) -> None: ...
def setRecursive(self, recursive: bool) -> None: ...
def setEntity(self, entity: Qt3DCore.QEntity) -> None: ...
def setPositionOffset(self, offset: float) -> None: ...
def setPositionScale(self, scale: float) -> None: ...
def setPosition(self, position: float) -> None: ...
def setActiveAnimationGroup(self, index: int) -> None: ...
def getGroup(self, index: int) -> 'QAnimationGroup': ...
def getAnimationIndex(self, name: str) -> int: ...
def removeAnimationGroup(self, animationGroups: 'QAnimationGroup') -> None: ...
def addAnimationGroup(self, animationGroups: 'QAnimationGroup') -> None: ...
def setAnimationGroups(self, animationGroups: typing.Iterable['QAnimationGroup']) -> None: ...
def recursive(self) -> bool: ...
def entity(self) -> Qt3DCore.QEntity: ...
def positionOffset(self) -> float: ...
def positionScale(self) -> float: ...
def position(self) -> float: ...
def activeAnimationGroup(self) -> int: ...
def animationGroupList(self) -> typing.List['QAnimationGroup']: ...
class QAnimationGroup(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def durationChanged(self, duration: float) -> None: ...
def positionChanged(self, position: float) -> None: ...
def nameChanged(self, name: str) -> None: ...
def setPosition(self, position: float) -> None: ...
def setName(self, name: str) -> None: ...
def removeAnimation(self, animation: 'QAbstractAnimation') -> None: ...
def addAnimation(self, animation: 'QAbstractAnimation') -> None: ...
def setAnimations(self, animations: typing.Iterable['QAbstractAnimation']) -> None: ...
def duration(self) -> float: ...
def position(self) -> float: ...
def animationList(self) -> typing.List['QAbstractAnimation']: ...
def name(self) -> str: ...
class QBlendedClipAnimator('QAbstractClipAnimator'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def blendTreeChanged(self, blendTree: 'QAbstractClipBlendNode') -> None: ...
def setBlendTree(self, blendTree: 'QAbstractClipBlendNode') -> None: ...
def blendTree(self) -> 'QAbstractClipBlendNode': ...
class QChannel(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, name: str) -> None: ...
@typing.overload
def __init__(self, a0: 'QChannel') -> None: ...
def clearChannelComponents(self) -> None: ...
def removeChannelComponent(self, index: int) -> None: ...
def insertChannelComponent(self, index: int, component: 'QChannelComponent') -> None: ...
def appendChannelComponent(self, component: 'QChannelComponent') -> None: ...
def channelComponentCount(self) -> int: ...
def jointIndex(self) -> int: ...
def setJointIndex(self, jointIndex: int) -> None: ...
def name(self) -> str: ...
def setName(self, name: str) -> None: ...
class QChannelComponent(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, name: str) -> None: ...
@typing.overload
def __init__(self, a0: 'QChannelComponent') -> None: ...
def clearKeyFrames(self) -> None: ...
def removeKeyFrame(self, index: int) -> None: ...
def insertKeyFrame(self, index: int, kf: 'QKeyFrame') -> None: ...
def appendKeyFrame(self, kf: 'QKeyFrame') -> None: ...
def keyFrameCount(self) -> int: ...
def name(self) -> str: ...
def setName(self, name: str) -> None: ...
class QChannelMapper(Qt3DCore.QNode):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def mappings(self) -> typing.List['QAbstractChannelMapping']: ...
def removeMapping(self, mapping: 'QAbstractChannelMapping') -> None: ...
def addMapping(self, mapping: 'QAbstractChannelMapping') -> None: ...
class QChannelMapping('QAbstractChannelMapping'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def propertyChanged(self, property: str) -> None: ...
def targetChanged(self, target: Qt3DCore.QNode) -> None: ...
def channelNameChanged(self, channelName: str) -> None: ...
def setProperty(self, property: str) -> None: ... # type: ignore[override]
def setTarget(self, target: Qt3DCore.QNode) -> None: ...
def setChannelName(self, channelName: str) -> None: ...
def property(self) -> str: ... # type: ignore[override]
def target(self) -> Qt3DCore.QNode: ...
def channelName(self) -> str: ...
class QClipAnimator('QAbstractClipAnimator'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def clipChanged(self, clip: 'QAbstractAnimationClip') -> None: ...
def setClip(self, clip: 'QAbstractAnimationClip') -> None: ...
def clip(self) -> 'QAbstractAnimationClip': ...
class QClipBlendNodeCreatedChangeBase(Qt3DCore.QNodeCreatedChangeBase):
def __init__(self, node: 'QAbstractClipBlendNode') -> None: ...
class QClipBlendValue('QAbstractClipBlendNode'):
@typing.overload
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
@typing.overload
def __init__(self, clip: 'QAbstractAnimationClip', parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def clipChanged(self, clip: 'QAbstractAnimationClip') -> None: ...
def setClip(self, clip: 'QAbstractAnimationClip') -> None: ...
def clip(self) -> 'QAbstractAnimationClip': ...
class QClock(Qt3DCore.QNode):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def playbackRateChanged(self, playbackRate: float) -> None: ...
def setPlaybackRate(self, playbackRate: float) -> None: ...
def playbackRate(self) -> float: ...
class QKeyFrame(sip.simplewrapper):
class InterpolationType(int): ...
ConstantInterpolation = ... # type: 'QKeyFrame.InterpolationType'
LinearInterpolation = ... # type: 'QKeyFrame.InterpolationType'
BezierInterpolation = ... # type: 'QKeyFrame.InterpolationType'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, coords: QtGui.QVector2D) -> None: ...
@typing.overload
def __init__(self, coords: QtGui.QVector2D, lh: QtGui.QVector2D, rh: QtGui.QVector2D) -> None: ...
@typing.overload
def __init__(self, a0: 'QKeyFrame') -> None: ...
def interpolationType(self) -> 'QKeyFrame.InterpolationType': ...
def setInterpolationType(self, interp: 'QKeyFrame.InterpolationType') -> None: ...
def rightControlPoint(self) -> QtGui.QVector2D: ...
def setRightControlPoint(self, rh: QtGui.QVector2D) -> None: ...
def leftControlPoint(self) -> QtGui.QVector2D: ...
def setLeftControlPoint(self, lh: QtGui.QVector2D) -> None: ...
def coordinates(self) -> QtGui.QVector2D: ...
def setCoordinates(self, coords: QtGui.QVector2D) -> None: ...
class QKeyframeAnimation('QAbstractAnimation'):
class RepeatMode(int): ...
None_ = ... # type: 'QKeyframeAnimation.RepeatMode'
Constant = ... # type: 'QKeyframeAnimation.RepeatMode'
Repeat = ... # type: 'QKeyframeAnimation.RepeatMode'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def endModeChanged(self, endMode: 'QKeyframeAnimation.RepeatMode') -> None: ...
def startModeChanged(self, startMode: 'QKeyframeAnimation.RepeatMode') -> None: ...
def targetNameChanged(self, name: str) -> None: ...
def easingChanged(self, easing: typing.Union[QtCore.QEasingCurve, QtCore.QEasingCurve.Type]) -> None: ...
def targetChanged(self, target: Qt3DCore.QTransform) -> None: ...
def framePositionsChanged(self, positions: typing.Iterable[float]) -> None: ...
def setEndMode(self, mode: 'QKeyframeAnimation.RepeatMode') -> None: ...
def setStartMode(self, mode: 'QKeyframeAnimation.RepeatMode') -> None: ...
def setTargetName(self, name: str) -> None: ...
def setEasing(self, easing: typing.Union[QtCore.QEasingCurve, QtCore.QEasingCurve.Type]) -> None: ...
def setTarget(self, target: Qt3DCore.QTransform) -> None: ...
def setFramePositions(self, positions: typing.Iterable[float]) -> None: ...
def removeKeyframe(self, keyframe: Qt3DCore.QTransform) -> None: ...
def addKeyframe(self, keyframe: Qt3DCore.QTransform) -> None: ...
def setKeyframes(self, keyframes: typing.Iterable[Qt3DCore.QTransform]) -> None: ...
def endMode(self) -> 'QKeyframeAnimation.RepeatMode': ...
def startMode(self) -> 'QKeyframeAnimation.RepeatMode': ...
def targetName(self) -> str: ...
def easing(self) -> QtCore.QEasingCurve: ...
def target(self) -> Qt3DCore.QTransform: ...
def keyframeList(self) -> typing.List[Qt3DCore.QTransform]: ...
def framePositions(self) -> typing.List[float]: ...
class QLerpClipBlend('QAbstractClipBlendNode'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def endClipChanged(self, endClip: 'QAbstractClipBlendNode') -> None: ...
def startClipChanged(self, startClip: 'QAbstractClipBlendNode') -> None: ...
def blendFactorChanged(self, blendFactor: float) -> None: ...
def setEndClip(self, endClip: 'QAbstractClipBlendNode') -> None: ...
def setStartClip(self, startClip: 'QAbstractClipBlendNode') -> None: ...
def setBlendFactor(self, blendFactor: float) -> None: ...
def endClip(self) -> 'QAbstractClipBlendNode': ...
def startClip(self) -> 'QAbstractClipBlendNode': ...
def blendFactor(self) -> float: ...
class QMorphingAnimation('QAbstractAnimation'):
class Method(int): ...
Normalized = ... # type: 'QMorphingAnimation.Method'
Relative = ... # type: 'QMorphingAnimation.Method'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def easingChanged(self, easing: typing.Union[QtCore.QEasingCurve, QtCore.QEasingCurve.Type]) -> None: ...
def methodChanged(self, method: 'QMorphingAnimation.Method') -> None: ...
def targetNameChanged(self, name: str) -> None: ...
def targetChanged(self, target: Qt3DRender.QGeometryRenderer) -> None: ...
def interpolatorChanged(self, interpolator: float) -> None: ...
def targetPositionsChanged(self, targetPositions: typing.Iterable[float]) -> None: ...
def setEasing(self, easing: typing.Union[QtCore.QEasingCurve, QtCore.QEasingCurve.Type]) -> None: ...
def setMethod(self, method: 'QMorphingAnimation.Method') -> None: ...
def setTargetName(self, name: str) -> None: ...
def setTarget(self, target: Qt3DRender.QGeometryRenderer) -> None: ...
def setTargetPositions(self, targetPositions: typing.Iterable[float]) -> None: ...
def morphTargetList(self) -> typing.List['QMorphTarget']: ...
def getWeights(self, positionIndex: int) -> typing.List[float]: ...
def setWeights(self, positionIndex: int, weights: typing.Iterable[float]) -> None: ...
def removeMorphTarget(self, target: 'QMorphTarget') -> None: ...
def addMorphTarget(self, target: 'QMorphTarget') -> None: ...
def setMorphTargets(self, targets: typing.Iterable['QMorphTarget']) -> None: ...
def easing(self) -> QtCore.QEasingCurve: ...
def method(self) -> 'QMorphingAnimation.Method': ...
def targetName(self) -> str: ...
def target(self) -> Qt3DRender.QGeometryRenderer: ...
def interpolator(self) -> float: ...
def targetPositions(self) -> typing.List[float]: ...
class QMorphTarget(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def attributeNamesChanged(self, attributeNames: typing.Iterable[str]) -> None: ...
@staticmethod
def fromGeometry(geometry: Qt3DRender.QGeometry, attributes: typing.Iterable[str]) -> 'QMorphTarget': ...
def removeAttribute(self, attribute: Qt3DRender.QAttribute) -> None: ...
def addAttribute(self, attribute: Qt3DRender.QAttribute) -> None: ...
def setAttributes(self, attributes: typing.Iterable[Qt3DRender.QAttribute]) -> None: ...
def attributeNames(self) -> typing.List[str]: ...
def attributeList(self) -> typing.List[Qt3DRender.QAttribute]: ...
class QSkeletonMapping('QAbstractChannelMapping'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def skeletonChanged(self, skeleton: Qt3DCore.QAbstractSkeleton) -> None: ...
def setSkeleton(self, skeleton: Qt3DCore.QAbstractSkeleton) -> None: ...
def skeleton(self) -> Qt3DCore.QAbstractSkeleton: ...
class QVertexBlendAnimation('QAbstractAnimation'):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def targetNameChanged(self, name: str) -> None: ...
def targetChanged(self, target: Qt3DRender.QGeometryRenderer) -> None: ...
def interpolatorChanged(self, interpolator: float) -> None: ...
def targetPositionsChanged(self, targetPositions: typing.Iterable[float]) -> None: ...
def setTargetName(self, name: str) -> None: ...
def setTarget(self, target: Qt3DRender.QGeometryRenderer) -> None: ...
def setTargetPositions(self, targetPositions: typing.Iterable[float]) -> None: ...
def morphTargetList(self) -> typing.List['QMorphTarget']: ...
def removeMorphTarget(self, target: 'QMorphTarget') -> None: ...
def addMorphTarget(self, target: 'QMorphTarget') -> None: ...
def setMorphTargets(self, targets: typing.Iterable['QMorphTarget']) -> None: ...
def targetName(self) -> str: ...
def target(self) -> Qt3DRender.QGeometryRenderer: ...
def interpolator(self) -> float: ...
def targetPositions(self) -> typing.List[float]: ...

View File

@ -0,0 +1,499 @@
# The PEP 484 type hints stub file for the Qt3DCore module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt3D.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class ChangeFlag(int): ...
NodeCreated = ... # type: 'ChangeFlag'
NodeDeleted = ... # type: 'ChangeFlag'
PropertyUpdated = ... # type: 'ChangeFlag'
PropertyValueAdded = ... # type: 'ChangeFlag'
PropertyValueRemoved = ... # type: 'ChangeFlag'
ComponentAdded = ... # type: 'ChangeFlag'
ComponentRemoved = ... # type: 'ChangeFlag'
CommandRequested = ... # type: 'ChangeFlag'
CallbackTriggered = ... # type: 'ChangeFlag'
AllChanges = ... # type: 'ChangeFlag'
class QAbstractAspect(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def unregisterBackendType(self, a0: QtCore.QMetaObject) -> None: ...
@typing.overload
def registerBackendType(self, a0: QtCore.QMetaObject, functor: 'QBackendNodeMapper') -> None: ...
@typing.overload
def registerBackendType(self, obj: QtCore.QMetaObject, functor: 'QBackendNodeMapper', supportsSyncing: bool) -> None: ...
def rootEntityId(self) -> 'QNodeId': ...
class QAspectEngine(QtCore.QObject):
class RunMode(int): ...
Manual = ... # type: 'QAspectEngine.RunMode'
Automatic = ... # type: 'QAspectEngine.RunMode'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def processFrame(self) -> None: ...
def runMode(self) -> 'QAspectEngine.RunMode': ...
def setRunMode(self, mode: 'QAspectEngine.RunMode') -> None: ...
def executeCommand(self, command: str) -> typing.Any: ...
def aspects(self) -> typing.List['QAbstractAspect']: ...
@typing.overload
def unregisterAspect(self, aspect: 'QAbstractAspect') -> None: ...
@typing.overload
def unregisterAspect(self, name: str) -> None: ...
@typing.overload
def registerAspect(self, aspect: 'QAbstractAspect') -> None: ...
@typing.overload
def registerAspect(self, name: str) -> None: ...
def rootEntity(self) -> 'QEntity': ...
def setRootEntity(self, root: 'QEntity') -> None: ...
class QNode(QtCore.QObject):
class PropertyTrackingMode(int): ...
TrackFinalValues = ... # type: 'QNode.PropertyTrackingMode'
DontTrackValues = ... # type: 'QNode.PropertyTrackingMode'
TrackAllValues = ... # type: 'QNode.PropertyTrackingMode'
def __init__(self, parent: typing.Optional['QNode'] = ...) -> None: ...
def sendReply(self, command: 'QNodeCommand') -> None: ...
def sendCommand(self, name: str, data: typing.Any = ..., replyTo: int = ...) -> int: ...
def defaultPropertyTrackingModeChanged(self, mode: 'QNode.PropertyTrackingMode') -> None: ...
def setDefaultPropertyTrackingMode(self, mode: 'QNode.PropertyTrackingMode') -> None: ...
def clearPropertyTrackings(self) -> None: ...
def clearPropertyTracking(self, propertyName: str) -> None: ...
def propertyTracking(self, propertyName: str) -> 'QNode.PropertyTrackingMode': ...
def setPropertyTracking(self, propertyName: str, trackMode: 'QNode.PropertyTrackingMode') -> None: ...
def defaultPropertyTrackingMode(self) -> 'QNode.PropertyTrackingMode': ...
def sceneChangeEvent(self, change: 'QSceneChange') -> None: ...
def notifyObservers(self, change: 'QSceneChange') -> None: ...
def nodeDestroyed(self) -> None: ...
def enabledChanged(self, enabled: bool) -> None: ...
def parentChanged(self, parent: QtCore.QObject) -> None: ...
def setEnabled(self, isEnabled: bool) -> None: ...
def setParent(self, parent: 'QNode') -> None: ... # type: ignore[override]
def isEnabled(self) -> bool: ...
def childNodes(self) -> typing.List['QNode']: ...
def blockNotifications(self, block: bool) -> bool: ...
def notificationsBlocked(self) -> bool: ...
def parentNode(self) -> 'QNode': ...
def id(self) -> 'QNodeId': ...
class QAbstractSkeleton('QNode'):
def sceneChangeEvent(self, change: 'QSceneChange') -> None: ...
def jointCountChanged(self, jointCount: int) -> None: ...
def jointCount(self) -> int: ...
class QComponent('QNode'):
def __init__(self, parent: typing.Optional['QNode'] = ...) -> None: ...
def removedFromEntity(self, entity: 'QEntity') -> None: ...
def addedToEntity(self, entity: 'QEntity') -> None: ...
def shareableChanged(self, isShareable: bool) -> None: ...
def setShareable(self, isShareable: bool) -> None: ...
def entities(self) -> typing.List['QEntity']: ...
def isShareable(self) -> bool: ...
class QArmature('QComponent'):
def __init__(self, parent: typing.Optional['QNode'] = ...) -> None: ...
def skeletonChanged(self, skeleton: 'QAbstractSkeleton') -> None: ...
def setSkeleton(self, skeleton: 'QAbstractSkeleton') -> None: ...
def skeleton(self) -> 'QAbstractSkeleton': ...
class QBackendNodeMapper(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QBackendNodeMapper') -> None: ...
def destroy(self, id: 'QNodeId') -> None: ...
def get(self, id: 'QNodeId') -> 'QBackendNode': ...
def create(self, change: 'QNodeCreatedChangeBase') -> 'QBackendNode': ...
class QBackendNode(sip.simplewrapper):
class Mode(int): ...
ReadOnly = ... # type: 'QBackendNode.Mode'
ReadWrite = ... # type: 'QBackendNode.Mode'
def __init__(self, mode: 'QBackendNode.Mode' = ...) -> None: ...
def sendReply(self, command: 'QNodeCommand') -> None: ...
def sendCommand(self, name: str, data: typing.Any, replyTo: int = ...) -> int: ...
def sceneChangeEvent(self, e: 'QSceneChange') -> None: ...
def notifyObservers(self, e: 'QSceneChange') -> None: ...
def mode(self) -> 'QBackendNode.Mode': ...
def isEnabled(self) -> bool: ...
def setEnabled(self, enabled: bool) -> None: ...
def peerId(self) -> 'QNodeId': ...
class QSceneChange(sip.simplewrapper):
class DeliveryFlag(int): ...
BackendNodes = ... # type: 'QSceneChange.DeliveryFlag'
Nodes = ... # type: 'QSceneChange.DeliveryFlag'
DeliverToAll = ... # type: 'QSceneChange.DeliveryFlag'
class DeliveryFlags(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QSceneChange.DeliveryFlags', 'QSceneChange.DeliveryFlag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QSceneChange.DeliveryFlags') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QSceneChange.DeliveryFlags': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
def __init__(self, type: 'ChangeFlag', subjectId: 'QNodeId') -> None: ...
def subjectId(self) -> 'QNodeId': ...
def deliveryFlags(self) -> 'QSceneChange.DeliveryFlags': ...
def setDeliveryFlags(self, flags: typing.Union['QSceneChange.DeliveryFlags', 'QSceneChange.DeliveryFlag']) -> None: ...
def type(self) -> 'ChangeFlag': ...
class QComponentAddedChange('QSceneChange'):
@typing.overload
def __init__(self, entity: 'QEntity', component: 'QComponent') -> None: ...
@typing.overload
def __init__(self, component: 'QComponent', entity: 'QEntity') -> None: ...
def componentMetaObject(self) -> QtCore.QMetaObject: ...
def componentId(self) -> 'QNodeId': ...
def entityId(self) -> 'QNodeId': ...
class QComponentRemovedChange('QSceneChange'):
@typing.overload
def __init__(self, entity: 'QEntity', component: 'QComponent') -> None: ...
@typing.overload
def __init__(self, component: 'QComponent', entity: 'QEntity') -> None: ...
def componentMetaObject(self) -> QtCore.QMetaObject: ...
def componentId(self) -> 'QNodeId': ...
def entityId(self) -> 'QNodeId': ...
class QPropertyUpdatedChangeBase('QSceneChange'):
def __init__(self, subjectId: 'QNodeId') -> None: ...
class QDynamicPropertyUpdatedChange('QPropertyUpdatedChangeBase'):
def __init__(self, subjectId: 'QNodeId') -> None: ...
def setValue(self, value: typing.Any) -> None: ...
def value(self) -> typing.Any: ...
def setPropertyName(self, name: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def propertyName(self) -> QtCore.QByteArray: ...
class QEntity('QNode'):
def __init__(self, parent: typing.Optional['QNode'] = ...) -> None: ...
def parentEntity(self) -> 'QEntity': ...
def removeComponent(self, comp: 'QComponent') -> None: ...
def addComponent(self, comp: 'QComponent') -> None: ...
def components(self) -> typing.List['QComponent']: ...
class QJoint('QNode'):
def __init__(self, parent: typing.Optional['QNode'] = ...) -> None: ...
def nameChanged(self, name: str) -> None: ...
def rotationZChanged(self, rotationZ: float) -> None: ...
def rotationYChanged(self, rotationY: float) -> None: ...
def rotationXChanged(self, rotationX: float) -> None: ...
def inverseBindMatrixChanged(self, inverseBindMatrix: QtGui.QMatrix4x4) -> None: ...
def translationChanged(self, translation: QtGui.QVector3D) -> None: ...
def rotationChanged(self, rotation: QtGui.QQuaternion) -> None: ...
def scaleChanged(self, scale: QtGui.QVector3D) -> None: ...
def setToIdentity(self) -> None: ...
def setName(self, name: str) -> None: ...
def setRotationZ(self, rotationZ: float) -> None: ...
def setRotationY(self, rotationY: float) -> None: ...
def setRotationX(self, rotationX: float) -> None: ...
def setInverseBindMatrix(self, inverseBindMatrix: QtGui.QMatrix4x4) -> None: ...
def setTranslation(self, translation: QtGui.QVector3D) -> None: ...
def setRotation(self, rotation: QtGui.QQuaternion) -> None: ...
def setScale(self, scale: QtGui.QVector3D) -> None: ...
def childJoints(self) -> typing.List['QJoint']: ...
def removeChildJoint(self, joint: 'QJoint') -> None: ...
def addChildJoint(self, joint: 'QJoint') -> None: ...
def name(self) -> str: ...
def rotationZ(self) -> float: ...
def rotationY(self) -> float: ...
def rotationX(self) -> float: ...
def inverseBindMatrix(self) -> QtGui.QMatrix4x4: ...
def translation(self) -> QtGui.QVector3D: ...
def rotation(self) -> QtGui.QQuaternion: ...
def scale(self) -> QtGui.QVector3D: ...
class QNodeIdTypePair(sip.simplewrapper):
id = ... # type: 'QNodeId'
type = ... # type: QtCore.QMetaObject
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, _id: 'QNodeId', _type: QtCore.QMetaObject) -> None: ...
@typing.overload
def __init__(self, a0: 'QNodeIdTypePair') -> None: ...
class QNodeCommand('QSceneChange'):
def __init__(self, id: 'QNodeId') -> None: ...
def setReplyToCommandId(self, id: int) -> None: ...
def inReplyTo(self) -> int: ...
def setData(self, data: typing.Any) -> None: ...
def data(self) -> typing.Any: ...
def setName(self, name: str) -> None: ...
def name(self) -> str: ...
def commandId(self) -> int: ...
class QNodeCreatedChangeBase('QSceneChange'):
def __init__(self, node: 'QNode') -> None: ...
def isNodeEnabled(self) -> bool: ...
def metaObject(self) -> QtCore.QMetaObject: ...
def parentId(self) -> 'QNodeId': ...
class QNodeDestroyedChange('QSceneChange'):
def __init__(self, node: 'QNode', subtreeIdsAndTypes: typing.Iterable['QNodeIdTypePair']) -> None: ...
def subtreeIdsAndTypes(self) -> typing.List['QNodeIdTypePair']: ...
class QNodeId(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QNodeId') -> None: ...
def __hash__(self) -> int: ...
def __int__(self) -> bool: ...
def id(self) -> int: ...
def isNull(self) -> bool: ...
@staticmethod
def createId() -> 'QNodeId': ...
class QPropertyValueAddedChangeBase('QSceneChange'):
def __init__(self, subjectId: 'QNodeId') -> None: ...
class QStaticPropertyValueAddedChangeBase('QPropertyValueAddedChangeBase'):
def __init__(self, subjectId: 'QNodeId') -> None: ...
def setPropertyName(self, name: str) -> None: ...
def propertyName(self) -> str: ...
class QPropertyNodeAddedChange('QStaticPropertyValueAddedChangeBase'):
def __init__(self, subjectId: 'QNodeId', node: 'QNode') -> None: ...
def metaObject(self) -> QtCore.QMetaObject: ...
def addedNodeId(self) -> 'QNodeId': ...
class QPropertyValueRemovedChangeBase('QSceneChange'):
def __init__(self, subjectId: 'QNodeId') -> None: ...
class QStaticPropertyValueRemovedChangeBase('QPropertyValueRemovedChangeBase'):
def __init__(self, subjectId: 'QNodeId') -> None: ...
def setPropertyName(self, name: str) -> None: ...
def propertyName(self) -> str: ...
class QPropertyNodeRemovedChange('QStaticPropertyValueRemovedChangeBase'):
def __init__(self, subjectId: 'QNodeId', node: 'QNode') -> None: ...
def metaObject(self) -> QtCore.QMetaObject: ...
def removedNodeId(self) -> 'QNodeId': ...
class QStaticPropertyUpdatedChangeBase('QPropertyUpdatedChangeBase'):
def __init__(self, subjectId: 'QNodeId') -> None: ...
def setPropertyName(self, name: str) -> None: ...
def propertyName(self) -> str: ...
class QPropertyUpdatedChange('QStaticPropertyUpdatedChangeBase'):
def __init__(self, subjectId: 'QNodeId') -> None: ...
def setValue(self, value: typing.Any) -> None: ...
def value(self) -> typing.Any: ...
class QPropertyValueAddedChange('QStaticPropertyValueAddedChangeBase'):
def __init__(self, subjectId: 'QNodeId') -> None: ...
def addedValue(self) -> typing.Any: ...
def setAddedValue(self, value: typing.Any) -> None: ...
class QPropertyValueRemovedChange('QStaticPropertyValueRemovedChangeBase'):
def __init__(self, subjectId: 'QNodeId') -> None: ...
def removedValue(self) -> typing.Any: ...
def setRemovedValue(self, value: typing.Any) -> None: ...
class ChangeFlags(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['ChangeFlags', 'ChangeFlag']) -> None: ...
@typing.overload
def __init__(self, a0: 'ChangeFlags') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'ChangeFlags': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
class QSkeleton('QAbstractSkeleton'):
def __init__(self, parent: typing.Optional['QNode'] = ...) -> None: ...
def rootJointChanged(self, rootJoint: 'QJoint') -> None: ...
def setRootJoint(self, rootJoint: 'QJoint') -> None: ...
def rootJoint(self) -> 'QJoint': ...
class QSkeletonLoader('QAbstractSkeleton'):
class Status(int): ...
NotReady = ... # type: 'QSkeletonLoader.Status'
Ready = ... # type: 'QSkeletonLoader.Status'
Error = ... # type: 'QSkeletonLoader.Status'
@typing.overload
def __init__(self, parent: typing.Optional['QNode'] = ...) -> None: ...
@typing.overload
def __init__(self, source: QtCore.QUrl, parent: typing.Optional['QNode'] = ...) -> None: ...
def sceneChangeEvent(self, change: 'QSceneChange') -> None: ...
def rootJointChanged(self, rootJoint: 'QJoint') -> None: ...
def createJointsEnabledChanged(self, createJointsEnabled: bool) -> None: ...
def statusChanged(self, status: 'QSkeletonLoader.Status') -> None: ...
def sourceChanged(self, source: QtCore.QUrl) -> None: ...
def setCreateJointsEnabled(self, enabled: bool) -> None: ...
def setSource(self, source: QtCore.QUrl) -> None: ...
def rootJoint(self) -> 'QJoint': ...
def isCreateJointsEnabled(self) -> bool: ...
def status(self) -> 'QSkeletonLoader.Status': ...
def source(self) -> QtCore.QUrl: ...
class QTransform('QComponent'):
def __init__(self, parent: typing.Optional['QNode'] = ...) -> None: ...
def sceneChangeEvent(self, change: 'QSceneChange') -> None: ...
def worldMatrixChanged(self, worldMatrix: QtGui.QMatrix4x4) -> None: ...
def worldMatrix(self) -> QtGui.QMatrix4x4: ...
def rotationZChanged(self, rotationZ: float) -> None: ...
def rotationYChanged(self, rotationY: float) -> None: ...
def rotationXChanged(self, rotationX: float) -> None: ...
def matrixChanged(self) -> None: ...
def translationChanged(self, translation: QtGui.QVector3D) -> None: ...
def rotationChanged(self, rotation: QtGui.QQuaternion) -> None: ...
def scale3DChanged(self, scale: QtGui.QVector3D) -> None: ...
def scaleChanged(self, scale: float) -> None: ...
def setRotationZ(self, rotationZ: float) -> None: ...
def setRotationY(self, rotationY: float) -> None: ...
def setRotationX(self, rotationX: float) -> None: ...
def setMatrix(self, matrix: QtGui.QMatrix4x4) -> None: ...
def setTranslation(self, translation: QtGui.QVector3D) -> None: ...
def setRotation(self, rotation: QtGui.QQuaternion) -> None: ...
def setScale3D(self, scale: QtGui.QVector3D) -> None: ...
def setScale(self, scale: float) -> None: ...
def rotationZ(self) -> float: ...
def rotationY(self) -> float: ...
def rotationX(self) -> float: ...
def matrix(self) -> QtGui.QMatrix4x4: ...
@staticmethod
def rotateFromAxes(xAxis: QtGui.QVector3D, yAxis: QtGui.QVector3D, zAxis: QtGui.QVector3D) -> QtGui.QMatrix4x4: ...
@staticmethod
def rotateAround(point: QtGui.QVector3D, angle: float, axis: QtGui.QVector3D) -> QtGui.QMatrix4x4: ...
@typing.overload
@staticmethod
def fromEulerAngles(eulerAngles: QtGui.QVector3D) -> QtGui.QQuaternion: ...
@typing.overload
@staticmethod
def fromEulerAngles(pitch: float, yaw: float, roll: float) -> QtGui.QQuaternion: ...
@typing.overload
@staticmethod
def fromAxesAndAngles(axis1: QtGui.QVector3D, angle1: float, axis2: QtGui.QVector3D, angle2: float) -> QtGui.QQuaternion: ...
@typing.overload
@staticmethod
def fromAxesAndAngles(axis1: QtGui.QVector3D, angle1: float, axis2: QtGui.QVector3D, angle2: float, axis3: QtGui.QVector3D, angle3: float) -> QtGui.QQuaternion: ...
@typing.overload
@staticmethod
def fromAxisAndAngle(axis: QtGui.QVector3D, angle: float) -> QtGui.QQuaternion: ...
@typing.overload
@staticmethod
def fromAxisAndAngle(x: float, y: float, z: float, angle: float) -> QtGui.QQuaternion: ...
@staticmethod
def fromAxes(xAxis: QtGui.QVector3D, yAxis: QtGui.QVector3D, zAxis: QtGui.QVector3D) -> QtGui.QQuaternion: ...
def translation(self) -> QtGui.QVector3D: ...
def rotation(self) -> QtGui.QQuaternion: ...
def scale3D(self) -> QtGui.QVector3D: ...
def scale(self) -> float: ...
def qIdForNode(node: 'QNode') -> 'QNodeId': ...

View File

@ -0,0 +1,782 @@
# The PEP 484 type hints stub file for the Qt3DExtras module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt3D.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtGui
from PyQt5 import QtCore
from PyQt5 import Qt3DRender
from PyQt5 import Qt3DInput
from PyQt5 import Qt3DCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QAbstractCameraController(Qt3DCore.QEntity):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def mouseDevice(self) -> Qt3DInput.QMouseDevice: ...
def keyboardDevice(self) -> Qt3DInput.QKeyboardDevice: ...
def decelerationChanged(self, deceleration: float) -> None: ...
def accelerationChanged(self, acceleration: float) -> None: ...
def lookSpeedChanged(self) -> None: ...
def linearSpeedChanged(self) -> None: ...
def cameraChanged(self) -> None: ...
def setDeceleration(self, deceleration: float) -> None: ...
def setAcceleration(self, acceleration: float) -> None: ...
def setLookSpeed(self, lookSpeed: float) -> None: ...
def setLinearSpeed(self, linearSpeed: float) -> None: ...
def setCamera(self, camera: Qt3DRender.QCamera) -> None: ...
def deceleration(self) -> float: ...
def acceleration(self) -> float: ...
def lookSpeed(self) -> float: ...
def linearSpeed(self) -> float: ...
def camera(self) -> Qt3DRender.QCamera: ...
class QAbstractSpriteSheet(Qt3DCore.QNode):
def currentIndexChanged(self, currentIndex: int) -> None: ...
def textureTransformChanged(self, textureTransform: QtGui.QMatrix3x3) -> None: ...
def textureChanged(self, texture: Qt3DRender.QAbstractTexture) -> None: ...
def setCurrentIndex(self, currentIndex: int) -> None: ...
def setTexture(self, texture: Qt3DRender.QAbstractTexture) -> None: ...
def currentIndex(self) -> int: ...
def textureTransform(self) -> QtGui.QMatrix3x3: ...
def texture(self) -> Qt3DRender.QAbstractTexture: ...
class QConeGeometry(Qt3DRender.QGeometry):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def lengthChanged(self, length: float) -> None: ...
def slicesChanged(self, slices: int) -> None: ...
def ringsChanged(self, rings: int) -> None: ...
def bottomRadiusChanged(self, bottomRadius: float) -> None: ...
def topRadiusChanged(self, topRadius: float) -> None: ...
def hasBottomEndcapChanged(self, hasBottomEndcap: bool) -> None: ...
def hasTopEndcapChanged(self, hasTopEndcap: bool) -> None: ...
def setLength(self, length: float) -> None: ...
def setSlices(self, slices: int) -> None: ...
def setRings(self, rings: int) -> None: ...
def setBottomRadius(self, bottomRadius: float) -> None: ...
def setTopRadius(self, topRadius: float) -> None: ...
def setHasBottomEndcap(self, hasBottomEndcap: bool) -> None: ...
def setHasTopEndcap(self, hasTopEndcap: bool) -> None: ...
def indexAttribute(self) -> Qt3DRender.QAttribute: ...
def texCoordAttribute(self) -> Qt3DRender.QAttribute: ...
def normalAttribute(self) -> Qt3DRender.QAttribute: ...
def positionAttribute(self) -> Qt3DRender.QAttribute: ...
def length(self) -> float: ...
def slices(self) -> int: ...
def rings(self) -> int: ...
def bottomRadius(self) -> float: ...
def topRadius(self) -> float: ...
def hasBottomEndcap(self) -> bool: ...
def hasTopEndcap(self) -> bool: ...
def updateIndices(self) -> None: ...
def updateVertices(self) -> None: ...
class QConeMesh(Qt3DRender.QGeometryRenderer):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def lengthChanged(self, length: float) -> None: ...
def slicesChanged(self, slices: int) -> None: ...
def ringsChanged(self, rings: int) -> None: ...
def bottomRadiusChanged(self, bottomRadius: float) -> None: ...
def topRadiusChanged(self, topRadius: float) -> None: ...
def hasBottomEndcapChanged(self, hasBottomEndcap: bool) -> None: ...
def hasTopEndcapChanged(self, hasTopEndcap: bool) -> None: ...
def setLength(self, length: float) -> None: ...
def setSlices(self, slices: int) -> None: ...
def setRings(self, rings: int) -> None: ...
def setBottomRadius(self, bottomRadius: float) -> None: ...
def setTopRadius(self, topRadius: float) -> None: ...
def setHasBottomEndcap(self, hasBottomEndcap: bool) -> None: ...
def setHasTopEndcap(self, hasTopEndcap: bool) -> None: ...
def length(self) -> float: ...
def bottomRadius(self) -> float: ...
def topRadius(self) -> float: ...
def hasBottomEndcap(self) -> bool: ...
def hasTopEndcap(self) -> bool: ...
def slices(self) -> int: ...
def rings(self) -> int: ...
class QCuboidGeometry(Qt3DRender.QGeometry):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def xyMeshResolutionChanged(self, xyMeshResolution: QtCore.QSize) -> None: ...
def xzMeshResolutionChanged(self, xzMeshResolution: QtCore.QSize) -> None: ...
def yzMeshResolutionChanged(self, yzMeshResolution: QtCore.QSize) -> None: ...
def zExtentChanged(self, zExtent: float) -> None: ...
def yExtentChanged(self, yExtent: float) -> None: ...
def xExtentChanged(self, xExtent: float) -> None: ...
def setXYMeshResolution(self, resolution: QtCore.QSize) -> None: ...
def setXZMeshResolution(self, resolution: QtCore.QSize) -> None: ...
def setYZMeshResolution(self, resolution: QtCore.QSize) -> None: ...
def setZExtent(self, zExtent: float) -> None: ...
def setYExtent(self, yExtent: float) -> None: ...
def setXExtent(self, xExtent: float) -> None: ...
def indexAttribute(self) -> Qt3DRender.QAttribute: ...
def tangentAttribute(self) -> Qt3DRender.QAttribute: ...
def texCoordAttribute(self) -> Qt3DRender.QAttribute: ...
def normalAttribute(self) -> Qt3DRender.QAttribute: ...
def positionAttribute(self) -> Qt3DRender.QAttribute: ...
def xzMeshResolution(self) -> QtCore.QSize: ...
def xyMeshResolution(self) -> QtCore.QSize: ...
def yzMeshResolution(self) -> QtCore.QSize: ...
def zExtent(self) -> float: ...
def yExtent(self) -> float: ...
def xExtent(self) -> float: ...
def updateVertices(self) -> None: ...
def updateIndices(self) -> None: ...
class QCuboidMesh(Qt3DRender.QGeometryRenderer):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def xyMeshResolutionChanged(self, xyMeshResolution: QtCore.QSize) -> None: ...
def xzMeshResolutionChanged(self, xzMeshResolution: QtCore.QSize) -> None: ...
def yzMeshResolutionChanged(self, yzMeshResolution: QtCore.QSize) -> None: ...
def zExtentChanged(self, zExtent: float) -> None: ...
def yExtentChanged(self, yExtent: float) -> None: ...
def xExtentChanged(self, xExtent: float) -> None: ...
def setXYMeshResolution(self, resolution: QtCore.QSize) -> None: ...
def setXZMeshResolution(self, resolution: QtCore.QSize) -> None: ...
def setYZMeshResolution(self, resolution: QtCore.QSize) -> None: ...
def setZExtent(self, zExtent: float) -> None: ...
def setYExtent(self, yExtent: float) -> None: ...
def setXExtent(self, xExtent: float) -> None: ...
def xyMeshResolution(self) -> QtCore.QSize: ...
def xzMeshResolution(self) -> QtCore.QSize: ...
def yzMeshResolution(self) -> QtCore.QSize: ...
def zExtent(self) -> float: ...
def yExtent(self) -> float: ...
def xExtent(self) -> float: ...
class QCylinderGeometry(Qt3DRender.QGeometry):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def lengthChanged(self, length: float) -> None: ...
def slicesChanged(self, slices: int) -> None: ...
def ringsChanged(self, rings: int) -> None: ...
def radiusChanged(self, radius: float) -> None: ...
def setLength(self, length: float) -> None: ...
def setRadius(self, radius: float) -> None: ...
def setSlices(self, slices: int) -> None: ...
def setRings(self, rings: int) -> None: ...
def indexAttribute(self) -> Qt3DRender.QAttribute: ...
def texCoordAttribute(self) -> Qt3DRender.QAttribute: ...
def normalAttribute(self) -> Qt3DRender.QAttribute: ...
def positionAttribute(self) -> Qt3DRender.QAttribute: ...
def length(self) -> float: ...
def radius(self) -> float: ...
def slices(self) -> int: ...
def rings(self) -> int: ...
def updateIndices(self) -> None: ...
def updateVertices(self) -> None: ...
class QCylinderMesh(Qt3DRender.QGeometryRenderer):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def lengthChanged(self, length: float) -> None: ...
def slicesChanged(self, slices: int) -> None: ...
def ringsChanged(self, rings: int) -> None: ...
def radiusChanged(self, radius: float) -> None: ...
def setLength(self, length: float) -> None: ...
def setRadius(self, radius: float) -> None: ...
def setSlices(self, slices: int) -> None: ...
def setRings(self, rings: int) -> None: ...
def length(self) -> float: ...
def radius(self) -> float: ...
def slices(self) -> int: ...
def rings(self) -> int: ...
class QDiffuseMapMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def textureScaleChanged(self, textureScale: float) -> None: ...
def shininessChanged(self, shininess: float) -> None: ...
def specularChanged(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def diffuseChanged(self, diffuse: Qt3DRender.QAbstractTexture) -> None: ...
def ambientChanged(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setTextureScale(self, textureScale: float) -> None: ...
def setDiffuse(self, diffuse: Qt3DRender.QAbstractTexture) -> None: ...
def setShininess(self, shininess: float) -> None: ...
def setSpecular(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setAmbient(self, color: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def textureScale(self) -> float: ...
def diffuse(self) -> Qt3DRender.QAbstractTexture: ...
def shininess(self) -> float: ...
def specular(self) -> QtGui.QColor: ...
def ambient(self) -> QtGui.QColor: ...
class QDiffuseSpecularMapMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def textureScaleChanged(self, textureScale: float) -> None: ...
def shininessChanged(self, shininess: float) -> None: ...
def specularChanged(self, specular: Qt3DRender.QAbstractTexture) -> None: ...
def diffuseChanged(self, diffuse: Qt3DRender.QAbstractTexture) -> None: ...
def ambientChanged(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setTextureScale(self, textureScale: float) -> None: ...
def setShininess(self, shininess: float) -> None: ...
def setSpecular(self, specular: Qt3DRender.QAbstractTexture) -> None: ...
def setDiffuse(self, diffuse: Qt3DRender.QAbstractTexture) -> None: ...
def setAmbient(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def textureScale(self) -> float: ...
def shininess(self) -> float: ...
def specular(self) -> Qt3DRender.QAbstractTexture: ...
def diffuse(self) -> Qt3DRender.QAbstractTexture: ...
def ambient(self) -> QtGui.QColor: ...
class QDiffuseSpecularMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def alphaBlendingEnabledChanged(self, enabled: bool) -> None: ...
def textureScaleChanged(self, textureScale: float) -> None: ...
def normalChanged(self, normal: typing.Any) -> None: ...
def shininessChanged(self, shininess: float) -> None: ...
def specularChanged(self, specular: typing.Any) -> None: ...
def diffuseChanged(self, diffuse: typing.Any) -> None: ...
def ambientChanged(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setAlphaBlendingEnabled(self, enabled: bool) -> None: ...
def setTextureScale(self, textureScale: float) -> None: ...
def setNormal(self, normal: typing.Any) -> None: ...
def setShininess(self, shininess: float) -> None: ...
def setSpecular(self, specular: typing.Any) -> None: ...
def setDiffuse(self, diffuse: typing.Any) -> None: ...
def setAmbient(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def isAlphaBlendingEnabled(self) -> bool: ...
def textureScale(self) -> float: ...
def normal(self) -> typing.Any: ...
def shininess(self) -> float: ...
def specular(self) -> typing.Any: ...
def diffuse(self) -> typing.Any: ...
def ambient(self) -> QtGui.QColor: ...
class QExtrudedTextGeometry(Qt3DRender.QGeometry):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def depthChanged(self, extrusionLength: float) -> None: ...
def fontChanged(self, font: QtGui.QFont) -> None: ...
def textChanged(self, text: str) -> None: ...
def setDepth(self, extrusionLength: float) -> None: ...
def setFont(self, font: QtGui.QFont) -> None: ...
def setText(self, text: str) -> None: ...
def extrusionLength(self) -> float: ...
def font(self) -> QtGui.QFont: ...
def text(self) -> str: ...
def indexAttribute(self) -> Qt3DRender.QAttribute: ...
def normalAttribute(self) -> Qt3DRender.QAttribute: ...
def positionAttribute(self) -> Qt3DRender.QAttribute: ...
class QExtrudedTextMesh(Qt3DRender.QGeometryRenderer):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def depthChanged(self, depth: float) -> None: ...
def fontChanged(self, font: QtGui.QFont) -> None: ...
def textChanged(self, text: str) -> None: ...
def setDepth(self, depth: float) -> None: ...
def setFont(self, font: QtGui.QFont) -> None: ...
def setText(self, text: str) -> None: ...
def depth(self) -> float: ...
def font(self) -> QtGui.QFont: ...
def text(self) -> str: ...
class QFirstPersonCameraController('QAbstractCameraController'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
class QForwardRenderer(Qt3DRender.QTechniqueFilter):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def showDebugOverlayChanged(self, showDebugOverlay: bool) -> None: ...
def setShowDebugOverlay(self, showDebugOverlay: bool) -> None: ...
def showDebugOverlay(self) -> bool: ...
def buffersToClearChanged(self, a0: Qt3DRender.QClearBuffers.BufferType) -> None: ...
def setBuffersToClear(self, a0: Qt3DRender.QClearBuffers.BufferType) -> None: ...
def buffersToClear(self) -> Qt3DRender.QClearBuffers.BufferType: ...
def gammaChanged(self, gamma: float) -> None: ...
def frustumCullingEnabledChanged(self, enabled: bool) -> None: ...
def setGamma(self, gamma: float) -> None: ...
def setFrustumCullingEnabled(self, enabled: bool) -> None: ...
def gamma(self) -> float: ...
def isFrustumCullingEnabled(self) -> bool: ...
def externalRenderTargetSizeChanged(self, size: QtCore.QSize) -> None: ...
def surfaceChanged(self, surface: QtCore.QObject) -> None: ...
def cameraChanged(self, camera: Qt3DCore.QEntity) -> None: ...
def clearColorChanged(self, clearColor: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def viewportRectChanged(self, viewportRect: QtCore.QRectF) -> None: ...
def setExternalRenderTargetSize(self, size: QtCore.QSize) -> None: ...
def setSurface(self, surface: QtCore.QObject) -> None: ...
def setCamera(self, camera: Qt3DCore.QEntity) -> None: ...
def setClearColor(self, clearColor: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setViewportRect(self, viewportRect: QtCore.QRectF) -> None: ...
def externalRenderTargetSize(self) -> QtCore.QSize: ...
def surface(self) -> QtCore.QObject: ...
def camera(self) -> Qt3DCore.QEntity: ...
def clearColor(self) -> QtGui.QColor: ...
def viewportRect(self) -> QtCore.QRectF: ...
class QGoochMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def shininessChanged(self, shininess: float) -> None: ...
def betaChanged(self, beta: float) -> None: ...
def alphaChanged(self, alpha: float) -> None: ...
def warmChanged(self, warm: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def coolChanged(self, cool: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def specularChanged(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def diffuseChanged(self, diffuse: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setShininess(self, shininess: float) -> None: ...
def setBeta(self, beta: float) -> None: ...
def setAlpha(self, alpha: float) -> None: ...
def setWarm(self, warm: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setCool(self, cool: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setSpecular(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setDiffuse(self, diffuse: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def shininess(self) -> float: ...
def beta(self) -> float: ...
def alpha(self) -> float: ...
def warm(self) -> QtGui.QColor: ...
def cool(self) -> QtGui.QColor: ...
def specular(self) -> QtGui.QColor: ...
def diffuse(self) -> QtGui.QColor: ...
class QMetalRoughMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def textureScaleChanged(self, textureScale: float) -> None: ...
def normalChanged(self, normal: typing.Any) -> None: ...
def ambientOcclusionChanged(self, ambientOcclusion: typing.Any) -> None: ...
def roughnessChanged(self, roughness: typing.Any) -> None: ...
def metalnessChanged(self, metalness: typing.Any) -> None: ...
def baseColorChanged(self, baseColor: typing.Any) -> None: ...
def setTextureScale(self, textureScale: float) -> None: ...
def setNormal(self, normal: typing.Any) -> None: ...
def setAmbientOcclusion(self, ambientOcclusion: typing.Any) -> None: ...
def setRoughness(self, roughness: typing.Any) -> None: ...
def setMetalness(self, metalness: typing.Any) -> None: ...
def setBaseColor(self, baseColor: typing.Any) -> None: ...
def textureScale(self) -> float: ...
def normal(self) -> typing.Any: ...
def ambientOcclusion(self) -> typing.Any: ...
def roughness(self) -> typing.Any: ...
def metalness(self) -> typing.Any: ...
def baseColor(self) -> typing.Any: ...
class QMorphPhongMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def interpolatorChanged(self, interpolator: float) -> None: ...
def shininessChanged(self, shininess: float) -> None: ...
def specularChanged(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def diffuseChanged(self, diffuse: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def ambientChanged(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setInterpolator(self, interpolator: float) -> None: ...
def setShininess(self, shininess: float) -> None: ...
def setSpecular(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setDiffuse(self, diffuse: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setAmbient(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def interpolator(self) -> float: ...
def shininess(self) -> float: ...
def specular(self) -> QtGui.QColor: ...
def diffuse(self) -> QtGui.QColor: ...
def ambient(self) -> QtGui.QColor: ...
class QNormalDiffuseMapMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def textureScaleChanged(self, textureScale: float) -> None: ...
def shininessChanged(self, shininess: float) -> None: ...
def specularChanged(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def normalChanged(self, normal: Qt3DRender.QAbstractTexture) -> None: ...
def diffuseChanged(self, diffuse: Qt3DRender.QAbstractTexture) -> None: ...
def ambientChanged(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setTextureScale(self, textureScale: float) -> None: ...
def setShininess(self, shininess: float) -> None: ...
def setNormal(self, normal: Qt3DRender.QAbstractTexture) -> None: ...
def setDiffuse(self, diffuse: Qt3DRender.QAbstractTexture) -> None: ...
def setSpecular(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setAmbient(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def textureScale(self) -> float: ...
def shininess(self) -> float: ...
def normal(self) -> Qt3DRender.QAbstractTexture: ...
def diffuse(self) -> Qt3DRender.QAbstractTexture: ...
def specular(self) -> QtGui.QColor: ...
def ambient(self) -> QtGui.QColor: ...
class QNormalDiffuseMapAlphaMaterial('QNormalDiffuseMapMaterial'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
class QNormalDiffuseSpecularMapMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def textureScaleChanged(self, textureScale: float) -> None: ...
def shininessChanged(self, shininess: float) -> None: ...
def specularChanged(self, specular: Qt3DRender.QAbstractTexture) -> None: ...
def normalChanged(self, normal: Qt3DRender.QAbstractTexture) -> None: ...
def diffuseChanged(self, diffuse: Qt3DRender.QAbstractTexture) -> None: ...
def ambientChanged(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setTextureScale(self, textureScale: float) -> None: ...
def setShininess(self, shininess: float) -> None: ...
def setSpecular(self, specular: Qt3DRender.QAbstractTexture) -> None: ...
def setNormal(self, normal: Qt3DRender.QAbstractTexture) -> None: ...
def setDiffuse(self, diffuse: Qt3DRender.QAbstractTexture) -> None: ...
def setAmbient(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def textureScale(self) -> float: ...
def shininess(self) -> float: ...
def specular(self) -> Qt3DRender.QAbstractTexture: ...
def normal(self) -> Qt3DRender.QAbstractTexture: ...
def diffuse(self) -> Qt3DRender.QAbstractTexture: ...
def ambient(self) -> QtGui.QColor: ...
class QOrbitCameraController('QAbstractCameraController'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def zoomInLimitChanged(self) -> None: ...
def setZoomInLimit(self, zoomInLimit: float) -> None: ...
def zoomInLimit(self) -> float: ...
class QPerVertexColorMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
class QPhongAlphaMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def blendFunctionArgChanged(self, blendFunctionArg: Qt3DRender.QBlendEquation.BlendFunction) -> None: ...
def destinationAlphaArgChanged(self, destinationAlphaArg: Qt3DRender.QBlendEquationArguments.Blending) -> None: ...
def sourceAlphaArgChanged(self, sourceAlphaArg: Qt3DRender.QBlendEquationArguments.Blending) -> None: ...
def destinationRgbArgChanged(self, destinationRgbArg: Qt3DRender.QBlendEquationArguments.Blending) -> None: ...
def sourceRgbArgChanged(self, sourceRgbArg: Qt3DRender.QBlendEquationArguments.Blending) -> None: ...
def setBlendFunctionArg(self, blendFunctionArg: Qt3DRender.QBlendEquation.BlendFunction) -> None: ...
def setDestinationAlphaArg(self, destinationAlphaArg: Qt3DRender.QBlendEquationArguments.Blending) -> None: ...
def setSourceAlphaArg(self, sourceAlphaArg: Qt3DRender.QBlendEquationArguments.Blending) -> None: ...
def setDestinationRgbArg(self, destinationRgbArg: Qt3DRender.QBlendEquationArguments.Blending) -> None: ...
def setSourceRgbArg(self, sourceRgbArg: Qt3DRender.QBlendEquationArguments.Blending) -> None: ...
def blendFunctionArg(self) -> Qt3DRender.QBlendEquation.BlendFunction: ...
def destinationAlphaArg(self) -> Qt3DRender.QBlendEquationArguments.Blending: ...
def sourceAlphaArg(self) -> Qt3DRender.QBlendEquationArguments.Blending: ...
def destinationRgbArg(self) -> Qt3DRender.QBlendEquationArguments.Blending: ...
def sourceRgbArg(self) -> Qt3DRender.QBlendEquationArguments.Blending: ...
def alphaChanged(self, alpha: float) -> None: ...
def shininessChanged(self, shininess: float) -> None: ...
def specularChanged(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def diffuseChanged(self, diffuse: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def ambientChanged(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setAlpha(self, alpha: float) -> None: ...
def setShininess(self, shininess: float) -> None: ...
def setSpecular(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setDiffuse(self, diffuse: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setAmbient(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def alpha(self) -> float: ...
def shininess(self) -> float: ...
def specular(self) -> QtGui.QColor: ...
def diffuse(self) -> QtGui.QColor: ...
def ambient(self) -> QtGui.QColor: ...
class QPhongMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def shininessChanged(self, shininess: float) -> None: ...
def specularChanged(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def diffuseChanged(self, diffuse: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def ambientChanged(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setShininess(self, shininess: float) -> None: ...
def setSpecular(self, specular: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setDiffuse(self, diffuse: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def setAmbient(self, ambient: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def shininess(self) -> float: ...
def specular(self) -> QtGui.QColor: ...
def diffuse(self) -> QtGui.QColor: ...
def ambient(self) -> QtGui.QColor: ...
class QPlaneGeometry(Qt3DRender.QGeometry):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def mirroredChanged(self, mirrored: bool) -> None: ...
def setMirrored(self, mirrored: bool) -> None: ...
def mirrored(self) -> bool: ...
def heightChanged(self, height: float) -> None: ...
def widthChanged(self, width: float) -> None: ...
def resolutionChanged(self, resolution: QtCore.QSize) -> None: ...
def setHeight(self, height: float) -> None: ...
def setWidth(self, width: float) -> None: ...
def setResolution(self, resolution: QtCore.QSize) -> None: ...
def indexAttribute(self) -> Qt3DRender.QAttribute: ...
def tangentAttribute(self) -> Qt3DRender.QAttribute: ...
def texCoordAttribute(self) -> Qt3DRender.QAttribute: ...
def normalAttribute(self) -> Qt3DRender.QAttribute: ...
def positionAttribute(self) -> Qt3DRender.QAttribute: ...
def height(self) -> float: ...
def width(self) -> float: ...
def resolution(self) -> QtCore.QSize: ...
def updateIndices(self) -> None: ...
def updateVertices(self) -> None: ...
class QPlaneMesh(Qt3DRender.QGeometryRenderer):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def mirroredChanged(self, mirrored: bool) -> None: ...
def setMirrored(self, mirrored: bool) -> None: ...
def mirrored(self) -> bool: ...
def heightChanged(self, height: float) -> None: ...
def widthChanged(self, width: float) -> None: ...
def meshResolutionChanged(self, meshResolution: QtCore.QSize) -> None: ...
def setMeshResolution(self, resolution: QtCore.QSize) -> None: ...
def setHeight(self, height: float) -> None: ...
def setWidth(self, width: float) -> None: ...
def meshResolution(self) -> QtCore.QSize: ...
def height(self) -> float: ...
def width(self) -> float: ...
class QSkyboxEntity(Qt3DCore.QEntity):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def gammaCorrectEnabledChanged(self, enabled: bool) -> None: ...
def baseNameChanged(self, path: str) -> None: ...
def setGammaCorrectEnabled(self, enabled: bool) -> None: ...
def isGammaCorrectEnabled(self) -> bool: ...
def extensionChanged(self, extension: str) -> None: ...
def extension(self) -> str: ...
def setExtension(self, extension: str) -> None: ...
def baseName(self) -> str: ...
def setBaseName(self, path: str) -> None: ...
class QSphereGeometry(Qt3DRender.QGeometry):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def generateTangentsChanged(self, generateTangents: bool) -> None: ...
def slicesChanged(self, slices: int) -> None: ...
def ringsChanged(self, rings: int) -> None: ...
def radiusChanged(self, radius: float) -> None: ...
def setGenerateTangents(self, gen: bool) -> None: ...
def setRadius(self, radius: float) -> None: ...
def setSlices(self, slices: int) -> None: ...
def setRings(self, rings: int) -> None: ...
def indexAttribute(self) -> Qt3DRender.QAttribute: ...
def tangentAttribute(self) -> Qt3DRender.QAttribute: ...
def texCoordAttribute(self) -> Qt3DRender.QAttribute: ...
def normalAttribute(self) -> Qt3DRender.QAttribute: ...
def positionAttribute(self) -> Qt3DRender.QAttribute: ...
def radius(self) -> float: ...
def slices(self) -> int: ...
def rings(self) -> int: ...
def generateTangents(self) -> bool: ...
def updateIndices(self) -> None: ...
def updateVertices(self) -> None: ...
class QSphereMesh(Qt3DRender.QGeometryRenderer):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def generateTangentsChanged(self, generateTangents: bool) -> None: ...
def slicesChanged(self, slices: int) -> None: ...
def ringsChanged(self, rings: int) -> None: ...
def radiusChanged(self, radius: float) -> None: ...
def setGenerateTangents(self, gen: bool) -> None: ...
def setRadius(self, radius: float) -> None: ...
def setSlices(self, slices: int) -> None: ...
def setRings(self, rings: int) -> None: ...
def generateTangents(self) -> bool: ...
def radius(self) -> float: ...
def slices(self) -> int: ...
def rings(self) -> int: ...
class QSpriteGrid('QAbstractSpriteSheet'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def columnsChanged(self, columns: int) -> None: ...
def rowsChanged(self, rows: int) -> None: ...
def setColumns(self, columns: int) -> None: ...
def setRows(self, rows: int) -> None: ...
def columns(self) -> int: ...
def rows(self) -> int: ...
class QSpriteSheet('QAbstractSpriteSheet'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def spritesChanged(self, sprites: typing.Iterable['QSpriteSheetItem']) -> None: ...
def setSprites(self, sprites: typing.Iterable['QSpriteSheetItem']) -> None: ...
def removeSprite(self, sprite: 'QSpriteSheetItem') -> None: ...
@typing.overload
def addSprite(self, x: int, y: int, width: int, height: int) -> 'QSpriteSheetItem': ...
@typing.overload
def addSprite(self, sprite: 'QSpriteSheetItem') -> None: ...
def sprites(self) -> typing.List['QSpriteSheetItem']: ...
class QSpriteSheetItem(Qt3DCore.QNode):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def heightChanged(self, height: int) -> None: ...
def widthChanged(self, width: int) -> None: ...
def yChanged(self, y: int) -> None: ...
def xChanged(self, x: int) -> None: ...
def setHeight(self, height: int) -> None: ...
def setWidth(self, width: int) -> None: ...
def setY(self, y: int) -> None: ...
def setX(self, x: int) -> None: ...
def height(self) -> int: ...
def width(self) -> int: ...
def y(self) -> int: ...
def x(self) -> int: ...
class Qt3DWindow(QtGui.QWindow):
def __init__(self, screen: typing.Optional[QtGui.QScreen] = ...) -> None: ...
def event(self, e: QtCore.QEvent) -> bool: ...
def resizeEvent(self, a0: QtGui.QResizeEvent) -> None: ...
def showEvent(self, e: QtGui.QShowEvent) -> None: ...
def renderSettings(self) -> Qt3DRender.QRenderSettings: ...
def camera(self) -> Qt3DRender.QCamera: ...
def defaultFrameGraph(self) -> 'QForwardRenderer': ...
def activeFrameGraph(self) -> Qt3DRender.QFrameGraphNode: ...
def setActiveFrameGraph(self, activeFrameGraph: Qt3DRender.QFrameGraphNode) -> None: ...
def setRootEntity(self, root: Qt3DCore.QEntity) -> None: ...
@typing.overload
def registerAspect(self, aspect: Qt3DCore.QAbstractAspect) -> None: ...
@typing.overload
def registerAspect(self, name: str) -> None: ...
class QText2DEntity(Qt3DCore.QEntity):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def heightChanged(self, height: float) -> None: ...
def widthChanged(self, width: float) -> None: ...
def textChanged(self, text: str) -> None: ...
def colorChanged(self, color: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def fontChanged(self, font: QtGui.QFont) -> None: ...
def setHeight(self, height: float) -> None: ...
def setWidth(self, width: float) -> None: ...
def height(self) -> float: ...
def width(self) -> float: ...
def setText(self, text: str) -> None: ...
def text(self) -> str: ...
def setColor(self, color: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def color(self) -> QtGui.QColor: ...
def setFont(self, font: QtGui.QFont) -> None: ...
def font(self) -> QtGui.QFont: ...
class QTexturedMetalRoughMaterial('QMetalRoughMaterial'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def normalChanged(self, normal: typing.Any) -> None: ...
def ambientOcclusionChanged(self, ambientOcclusion: typing.Any) -> None: ...
class QTextureMaterial(Qt3DRender.QMaterial):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def alphaBlendingEnabledChanged(self, enabled: bool) -> None: ...
def textureTransformChanged(self, textureTransform: QtGui.QMatrix3x3) -> None: ...
def textureOffsetChanged(self, textureOffset: QtGui.QVector2D) -> None: ...
def textureChanged(self, texture: Qt3DRender.QAbstractTexture) -> None: ...
def setAlphaBlendingEnabled(self, enabled: bool) -> None: ...
def setTextureTransform(self, matrix: QtGui.QMatrix3x3) -> None: ...
def setTextureOffset(self, textureOffset: QtGui.QVector2D) -> None: ...
def setTexture(self, texture: Qt3DRender.QAbstractTexture) -> None: ...
def isAlphaBlendingEnabled(self) -> bool: ...
def textureTransform(self) -> QtGui.QMatrix3x3: ...
def textureOffset(self) -> QtGui.QVector2D: ...
def texture(self) -> Qt3DRender.QAbstractTexture: ...
class QTorusGeometry(Qt3DRender.QGeometry):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def minorRadiusChanged(self, minorRadius: float) -> None: ...
def slicesChanged(self, slices: int) -> None: ...
def ringsChanged(self, rings: int) -> None: ...
def radiusChanged(self, radius: float) -> None: ...
def setMinorRadius(self, minorRadius: float) -> None: ...
def setRadius(self, radius: float) -> None: ...
def setSlices(self, slices: int) -> None: ...
def setRings(self, rings: int) -> None: ...
def indexAttribute(self) -> Qt3DRender.QAttribute: ...
def texCoordAttribute(self) -> Qt3DRender.QAttribute: ...
def normalAttribute(self) -> Qt3DRender.QAttribute: ...
def positionAttribute(self) -> Qt3DRender.QAttribute: ...
def minorRadius(self) -> float: ...
def radius(self) -> float: ...
def slices(self) -> int: ...
def rings(self) -> int: ...
def updateIndices(self) -> None: ...
def updateVertices(self) -> None: ...
class QTorusMesh(Qt3DRender.QGeometryRenderer):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def minorRadiusChanged(self, minorRadius: float) -> None: ...
def slicesChanged(self, slices: int) -> None: ...
def ringsChanged(self, rings: int) -> None: ...
def radiusChanged(self, radius: float) -> None: ...
def setMinorRadius(self, minorRadius: float) -> None: ...
def setRadius(self, radius: float) -> None: ...
def setSlices(self, slices: int) -> None: ...
def setRings(self, rings: int) -> None: ...
def minorRadius(self) -> float: ...
def radius(self) -> float: ...
def slices(self) -> int: ...
def rings(self) -> int: ...

View File

@ -0,0 +1,400 @@
# The PEP 484 type hints stub file for the Qt3DInput module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt3D.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtGui
from PyQt5 import QtCore
from PyQt5 import Qt3DCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QAbstractActionInput(Qt3DCore.QNode): ...
class QAbstractAxisInput(Qt3DCore.QNode):
def sourceDeviceChanged(self, sourceDevice: 'QAbstractPhysicalDevice') -> None: ...
def setSourceDevice(self, sourceDevice: 'QAbstractPhysicalDevice') -> None: ...
def sourceDevice(self) -> 'QAbstractPhysicalDevice': ...
class QAbstractPhysicalDevice(Qt3DCore.QNode):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def axisSettings(self) -> typing.List['QAxisSetting']: ...
def removeAxisSetting(self, axisSetting: 'QAxisSetting') -> None: ...
def addAxisSetting(self, axisSetting: 'QAxisSetting') -> None: ...
def buttonIdentifier(self, name: str) -> int: ...
def axisIdentifier(self, name: str) -> int: ...
def buttonNames(self) -> typing.List[str]: ...
def axisNames(self) -> typing.List[str]: ...
def buttonCount(self) -> int: ...
def axisCount(self) -> int: ...
class QAction(Qt3DCore.QNode):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def sceneChangeEvent(self, change: Qt3DCore.QSceneChange) -> None: ...
def activeChanged(self, isActive: bool) -> None: ...
def inputs(self) -> typing.List['QAbstractActionInput']: ...
def removeInput(self, input: 'QAbstractActionInput') -> None: ...
def addInput(self, input: 'QAbstractActionInput') -> None: ...
def isActive(self) -> bool: ...
class QActionInput('QAbstractActionInput'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def buttonsChanged(self, buttons: typing.Iterable[int]) -> None: ...
def sourceDeviceChanged(self, sourceDevice: 'QAbstractPhysicalDevice') -> None: ...
def setButtons(self, buttons: typing.Iterable[int]) -> None: ...
def setSourceDevice(self, sourceDevice: 'QAbstractPhysicalDevice') -> None: ...
def buttons(self) -> typing.List[int]: ...
def sourceDevice(self) -> 'QAbstractPhysicalDevice': ...
class QAnalogAxisInput('QAbstractAxisInput'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def axisChanged(self, axis: int) -> None: ...
def setAxis(self, axis: int) -> None: ...
def axis(self) -> int: ...
class QAxis(Qt3DCore.QNode):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def sceneChangeEvent(self, change: Qt3DCore.QSceneChange) -> None: ...
def valueChanged(self, value: float) -> None: ...
def value(self) -> float: ...
def inputs(self) -> typing.List['QAbstractAxisInput']: ...
def removeInput(self, input: 'QAbstractAxisInput') -> None: ...
def addInput(self, input: 'QAbstractAxisInput') -> None: ...
class QAxisAccumulator(Qt3DCore.QComponent):
class SourceAxisType(int): ...
Velocity = ... # type: 'QAxisAccumulator.SourceAxisType'
Acceleration = ... # type: 'QAxisAccumulator.SourceAxisType'
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def sceneChangeEvent(self, change: Qt3DCore.QSceneChange) -> None: ...
def scaleChanged(self, scale: float) -> None: ...
def velocityChanged(self, value: float) -> None: ...
def valueChanged(self, value: float) -> None: ...
def sourceAxisTypeChanged(self, sourceAxisType: 'QAxisAccumulator.SourceAxisType') -> None: ...
def sourceAxisChanged(self, sourceAxis: 'QAxis') -> None: ...
def setScale(self, scale: float) -> None: ...
def setSourceAxisType(self, sourceAxisType: 'QAxisAccumulator.SourceAxisType') -> None: ...
def setSourceAxis(self, sourceAxis: 'QAxis') -> None: ...
def scale(self) -> float: ...
def velocity(self) -> float: ...
def value(self) -> float: ...
def sourceAxisType(self) -> 'QAxisAccumulator.SourceAxisType': ...
def sourceAxis(self) -> 'QAxis': ...
class QAxisSetting(Qt3DCore.QNode):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def smoothChanged(self, smooth: bool) -> None: ...
def axesChanged(self, axes: typing.Iterable[int]) -> None: ...
def deadZoneRadiusChanged(self, deadZoneRadius: float) -> None: ...
def setSmoothEnabled(self, enabled: bool) -> None: ...
def setAxes(self, axes: typing.Iterable[int]) -> None: ...
def setDeadZoneRadius(self, deadZoneRadius: float) -> None: ...
def isSmoothEnabled(self) -> bool: ...
def axes(self) -> typing.List[int]: ...
def deadZoneRadius(self) -> float: ...
class QButtonAxisInput('QAbstractAxisInput'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def decelerationChanged(self, deceleration: float) -> None: ...
def accelerationChanged(self, acceleration: float) -> None: ...
def buttonsChanged(self, buttons: typing.Iterable[int]) -> None: ...
def scaleChanged(self, scale: float) -> None: ...
def setDeceleration(self, deceleration: float) -> None: ...
def setAcceleration(self, acceleration: float) -> None: ...
def setButtons(self, buttons: typing.Iterable[int]) -> None: ...
def setScale(self, scale: float) -> None: ...
def deceleration(self) -> float: ...
def acceleration(self) -> float: ...
def buttons(self) -> typing.List[int]: ...
def scale(self) -> float: ...
class QInputAspect(Qt3DCore.QAbstractAspect):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def availablePhysicalDevices(self) -> typing.List[str]: ...
def createPhysicalDevice(self, name: str) -> 'QAbstractPhysicalDevice': ...
class QInputChord('QAbstractActionInput'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def timeoutChanged(self, timeout: int) -> None: ...
def setTimeout(self, timeout: int) -> None: ...
def chords(self) -> typing.List['QAbstractActionInput']: ...
def removeChord(self, input: 'QAbstractActionInput') -> None: ...
def addChord(self, input: 'QAbstractActionInput') -> None: ...
def timeout(self) -> int: ...
class QInputSequence('QAbstractActionInput'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def buttonIntervalChanged(self, buttonInterval: int) -> None: ...
def timeoutChanged(self, timeout: int) -> None: ...
def setButtonInterval(self, buttonInterval: int) -> None: ...
def setTimeout(self, timeout: int) -> None: ...
def sequences(self) -> typing.List['QAbstractActionInput']: ...
def removeSequence(self, input: 'QAbstractActionInput') -> None: ...
def addSequence(self, input: 'QAbstractActionInput') -> None: ...
def buttonInterval(self) -> int: ...
def timeout(self) -> int: ...
class QInputSettings(Qt3DCore.QComponent):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def eventSourceChanged(self, a0: QtCore.QObject) -> None: ...
def setEventSource(self, eventSource: QtCore.QObject) -> None: ...
def eventSource(self) -> QtCore.QObject: ...
class QKeyboardDevice('QAbstractPhysicalDevice'):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def activeInputChanged(self, activeInput: 'QKeyboardHandler') -> None: ...
def sceneChangeEvent(self, change: Qt3DCore.QSceneChange) -> None: ...
def buttonIdentifier(self, name: str) -> int: ...
def axisIdentifier(self, name: str) -> int: ...
def buttonNames(self) -> typing.List[str]: ...
def axisNames(self) -> typing.List[str]: ...
def buttonCount(self) -> int: ...
def axisCount(self) -> int: ...
def activeInput(self) -> 'QKeyboardHandler': ...
class QKeyboardHandler(Qt3DCore.QComponent):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def sceneChangeEvent(self, change: Qt3DCore.QSceneChange) -> None: ...
def released(self, event: 'QKeyEvent') -> None: ...
def pressed(self, event: 'QKeyEvent') -> None: ...
def volumeDownPressed(self, event: 'QKeyEvent') -> None: ...
def volumeUpPressed(self, event: 'QKeyEvent') -> None: ...
def menuPressed(self, event: 'QKeyEvent') -> None: ...
def flipPressed(self, event: 'QKeyEvent') -> None: ...
def hangupPressed(self, event: 'QKeyEvent') -> None: ...
def callPressed(self, event: 'QKeyEvent') -> None: ...
def context4Pressed(self, event: 'QKeyEvent') -> None: ...
def context3Pressed(self, event: 'QKeyEvent') -> None: ...
def context2Pressed(self, event: 'QKeyEvent') -> None: ...
def context1Pressed(self, event: 'QKeyEvent') -> None: ...
def noPressed(self, event: 'QKeyEvent') -> None: ...
def yesPressed(self, event: 'QKeyEvent') -> None: ...
def selectPressed(self, event: 'QKeyEvent') -> None: ...
def cancelPressed(self, event: 'QKeyEvent') -> None: ...
def backPressed(self, event: 'QKeyEvent') -> None: ...
def spacePressed(self, event: 'QKeyEvent') -> None: ...
def deletePressed(self, event: 'QKeyEvent') -> None: ...
def enterPressed(self, event: 'QKeyEvent') -> None: ...
def returnPressed(self, event: 'QKeyEvent') -> None: ...
def escapePressed(self, event: 'QKeyEvent') -> None: ...
def numberSignPressed(self, event: 'QKeyEvent') -> None: ...
def asteriskPressed(self, event: 'QKeyEvent') -> None: ...
def backtabPressed(self, event: 'QKeyEvent') -> None: ...
def tabPressed(self, event: 'QKeyEvent') -> None: ...
def downPressed(self, event: 'QKeyEvent') -> None: ...
def upPressed(self, event: 'QKeyEvent') -> None: ...
def rightPressed(self, event: 'QKeyEvent') -> None: ...
def leftPressed(self, event: 'QKeyEvent') -> None: ...
def digit9Pressed(self, event: 'QKeyEvent') -> None: ...
def digit8Pressed(self, event: 'QKeyEvent') -> None: ...
def digit7Pressed(self, event: 'QKeyEvent') -> None: ...
def digit6Pressed(self, event: 'QKeyEvent') -> None: ...
def digit5Pressed(self, event: 'QKeyEvent') -> None: ...
def digit4Pressed(self, event: 'QKeyEvent') -> None: ...
def digit3Pressed(self, event: 'QKeyEvent') -> None: ...
def digit2Pressed(self, event: 'QKeyEvent') -> None: ...
def digit1Pressed(self, event: 'QKeyEvent') -> None: ...
def digit0Pressed(self, event: 'QKeyEvent') -> None: ...
def focusChanged(self, focus: bool) -> None: ...
def sourceDeviceChanged(self, keyboardDevice: 'QKeyboardDevice') -> None: ...
def setFocus(self, focus: bool) -> None: ...
def setSourceDevice(self, keyboardDevice: 'QKeyboardDevice') -> None: ...
def focus(self) -> bool: ...
def sourceDevice(self) -> 'QKeyboardDevice': ...
class QKeyEvent(QtCore.QObject):
@typing.overload
def __init__(self, type: QtCore.QEvent.Type, key: int, modifiers: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier], text: str = ..., autorep: bool = ..., count: int = ...) -> None: ...
@typing.overload
def __init__(self, ke: QtGui.QKeyEvent) -> None: ...
def matches(self, key_: QtGui.QKeySequence.StandardKey) -> bool: ...
def type(self) -> QtCore.QEvent.Type: ...
def setAccepted(self, accepted: bool) -> None: ...
def isAccepted(self) -> bool: ...
def nativeScanCode(self) -> int: ...
def count(self) -> int: ...
def isAutoRepeat(self) -> bool: ...
def modifiers(self) -> int: ...
def text(self) -> str: ...
def key(self) -> int: ...
class QLogicalDevice(Qt3DCore.QComponent):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def axes(self) -> typing.List['QAxis']: ...
def removeAxis(self, axis: 'QAxis') -> None: ...
def addAxis(self, axis: 'QAxis') -> None: ...
def actions(self) -> typing.List['QAction']: ...
def removeAction(self, action: 'QAction') -> None: ...
def addAction(self, action: 'QAction') -> None: ...
class QMouseDevice('QAbstractPhysicalDevice'):
class Axis(int): ...
X = ... # type: 'QMouseDevice.Axis'
Y = ... # type: 'QMouseDevice.Axis'
WheelX = ... # type: 'QMouseDevice.Axis'
WheelY = ... # type: 'QMouseDevice.Axis'
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def updateAxesContinuouslyChanged(self, updateAxesContinuously: bool) -> None: ...
def setUpdateAxesContinuously(self, updateAxesContinuously: bool) -> None: ...
def updateAxesContinuously(self) -> bool: ...
def sceneChangeEvent(self, change: Qt3DCore.QSceneChange) -> None: ...
def sensitivityChanged(self, value: float) -> None: ...
def setSensitivity(self, value: float) -> None: ...
def sensitivity(self) -> float: ...
def buttonIdentifier(self, name: str) -> int: ...
def axisIdentifier(self, name: str) -> int: ...
def buttonNames(self) -> typing.List[str]: ...
def axisNames(self) -> typing.List[str]: ...
def buttonCount(self) -> int: ...
def axisCount(self) -> int: ...
class QMouseEvent(QtCore.QObject):
class Modifiers(int): ...
NoModifier = ... # type: 'QMouseEvent.Modifiers'
ShiftModifier = ... # type: 'QMouseEvent.Modifiers'
ControlModifier = ... # type: 'QMouseEvent.Modifiers'
AltModifier = ... # type: 'QMouseEvent.Modifiers'
MetaModifier = ... # type: 'QMouseEvent.Modifiers'
KeypadModifier = ... # type: 'QMouseEvent.Modifiers'
class Buttons(int): ...
LeftButton = ... # type: 'QMouseEvent.Buttons'
RightButton = ... # type: 'QMouseEvent.Buttons'
MiddleButton = ... # type: 'QMouseEvent.Buttons'
BackButton = ... # type: 'QMouseEvent.Buttons'
NoButton = ... # type: 'QMouseEvent.Buttons'
def __init__(self, e: QtGui.QMouseEvent) -> None: ...
def type(self) -> QtCore.QEvent.Type: ...
def setAccepted(self, accepted: bool) -> None: ...
def isAccepted(self) -> bool: ...
def modifiers(self) -> 'QMouseEvent.Modifiers': ...
def buttons(self) -> int: ...
def button(self) -> 'QMouseEvent.Buttons': ...
def wasHeld(self) -> bool: ...
def y(self) -> int: ...
def x(self) -> int: ...
class QWheelEvent(QtCore.QObject):
class Modifiers(int): ...
NoModifier = ... # type: 'QWheelEvent.Modifiers'
ShiftModifier = ... # type: 'QWheelEvent.Modifiers'
ControlModifier = ... # type: 'QWheelEvent.Modifiers'
AltModifier = ... # type: 'QWheelEvent.Modifiers'
MetaModifier = ... # type: 'QWheelEvent.Modifiers'
KeypadModifier = ... # type: 'QWheelEvent.Modifiers'
class Buttons(int): ...
LeftButton = ... # type: 'QWheelEvent.Buttons'
RightButton = ... # type: 'QWheelEvent.Buttons'
MiddleButton = ... # type: 'QWheelEvent.Buttons'
BackButton = ... # type: 'QWheelEvent.Buttons'
NoButton = ... # type: 'QWheelEvent.Buttons'
def __init__(self, e: QtGui.QWheelEvent) -> None: ...
def type(self) -> QtCore.QEvent.Type: ...
def setAccepted(self, accepted: bool) -> None: ...
def isAccepted(self) -> bool: ...
def modifiers(self) -> 'QWheelEvent.Modifiers': ...
def buttons(self) -> int: ...
def angleDelta(self) -> QtCore.QPoint: ...
def y(self) -> int: ...
def x(self) -> int: ...
class QMouseHandler(Qt3DCore.QComponent):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def sceneChangeEvent(self, change: Qt3DCore.QSceneChange) -> None: ...
def wheel(self, wheel: 'QWheelEvent') -> None: ...
def positionChanged(self, mouse: 'QMouseEvent') -> None: ...
def pressAndHold(self, mouse: 'QMouseEvent') -> None: ...
def released(self, mouse: 'QMouseEvent') -> None: ...
def pressed(self, mouse: 'QMouseEvent') -> None: ...
def exited(self) -> None: ...
def entered(self) -> None: ...
def doubleClicked(self, mouse: 'QMouseEvent') -> None: ...
def clicked(self, mouse: 'QMouseEvent') -> None: ...
def containsMouseChanged(self, containsMouse: bool) -> None: ...
def sourceDeviceChanged(self, mouseDevice: 'QMouseDevice') -> None: ...
def setSourceDevice(self, mouseDevice: 'QMouseDevice') -> None: ...
def containsMouse(self) -> bool: ...
def sourceDevice(self) -> 'QMouseDevice': ...
class QPhysicalDeviceCreatedChangeBase(Qt3DCore.QNodeCreatedChangeBase):
def __init__(self, device: 'QAbstractPhysicalDevice') -> None: ...
def axisSettingIds(self) -> typing.List[Qt3DCore.QNodeId]: ...

View File

@ -0,0 +1,50 @@
# The PEP 484 type hints stub file for the Qt3DLogic module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt3D.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
from PyQt5 import Qt3DCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QFrameAction(Qt3DCore.QComponent):
def __init__(self, parent: typing.Optional[Qt3DCore.QNode] = ...) -> None: ...
def triggered(self, dt: float) -> None: ...
class QLogicAspect(Qt3DCore.QAbstractAspect):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,517 @@
# The PEP 484 type hints stub file for the QtDBus module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QDBusAbstractAdaptor(QtCore.QObject):
def __init__(self, parent: QtCore.QObject) -> None: ...
def autoRelaySignals(self) -> bool: ...
def setAutoRelaySignals(self, enable: bool) -> None: ...
class QDBusAbstractInterface(QtCore.QObject):
def __init__(self, service: str, path: str, interface: str, connection: 'QDBusConnection', parent: QtCore.QObject) -> None: ...
def disconnectNotify(self, signal: QtCore.QMetaMethod) -> None: ...
def connectNotify(self, signal: QtCore.QMetaMethod) -> None: ...
def asyncCallWithArgumentList(self, method: str, args: typing.Iterable[typing.Any]) -> 'QDBusPendingCall': ...
def asyncCall(self, method: str, arg1: typing.Any = ..., arg2: typing.Any = ..., arg3: typing.Any = ..., arg4: typing.Any = ..., arg5: typing.Any = ..., arg6: typing.Any = ..., arg7: typing.Any = ..., arg8: typing.Any = ...) -> 'QDBusPendingCall': ...
@typing.overload
def callWithCallback(self, method: str, args: typing.Iterable[typing.Any], returnMethod: PYQT_SLOT, errorMethod: PYQT_SLOT) -> bool: ...
@typing.overload
def callWithCallback(self, method: str, args: typing.Iterable[typing.Any], slot: PYQT_SLOT) -> bool: ...
def callWithArgumentList(self, mode: 'QDBus.CallMode', method: str, args: typing.Iterable[typing.Any]) -> 'QDBusMessage': ...
@typing.overload
def call(self, method: str, arg1: typing.Any = ..., arg2: typing.Any = ..., arg3: typing.Any = ..., arg4: typing.Any = ..., arg5: typing.Any = ..., arg6: typing.Any = ..., arg7: typing.Any = ..., arg8: typing.Any = ...) -> 'QDBusMessage': ...
@typing.overload
def call(self, mode: 'QDBus.CallMode', method: str, arg1: typing.Any = ..., arg2: typing.Any = ..., arg3: typing.Any = ..., arg4: typing.Any = ..., arg5: typing.Any = ..., arg6: typing.Any = ..., arg7: typing.Any = ..., arg8: typing.Any = ...) -> 'QDBusMessage': ...
def timeout(self) -> int: ...
def setTimeout(self, timeout: int) -> None: ...
def lastError(self) -> 'QDBusError': ...
def interface(self) -> str: ...
def path(self) -> str: ...
def service(self) -> str: ...
def connection(self) -> 'QDBusConnection': ...
def isValid(self) -> bool: ...
class QDBusArgument(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QDBusArgument') -> None: ...
@typing.overload
def __init__(self, arg: typing.Any, id: int = ...) -> None: ...
def swap(self, other: 'QDBusArgument') -> None: ...
def endMapEntry(self) -> None: ...
def beginMapEntry(self) -> None: ...
def endMap(self) -> None: ...
def beginMap(self, kid: int, vid: int) -> None: ...
def endArray(self) -> None: ...
def beginArray(self, id: int) -> None: ...
def endStructure(self) -> None: ...
def beginStructure(self) -> None: ...
def add(self, arg: typing.Any, id: int = ...) -> None: ...
class QDBus(sip.simplewrapper):
class CallMode(int): ...
NoBlock = ... # type: 'QDBus.CallMode'
Block = ... # type: 'QDBus.CallMode'
BlockWithGui = ... # type: 'QDBus.CallMode'
AutoDetect = ... # type: 'QDBus.CallMode'
class QDBusConnection(sip.simplewrapper):
class ConnectionCapability(int): ...
UnixFileDescriptorPassing = ... # type: 'QDBusConnection.ConnectionCapability'
class UnregisterMode(int): ...
UnregisterNode = ... # type: 'QDBusConnection.UnregisterMode'
UnregisterTree = ... # type: 'QDBusConnection.UnregisterMode'
class RegisterOption(int): ...
ExportAdaptors = ... # type: 'QDBusConnection.RegisterOption'
ExportScriptableSlots = ... # type: 'QDBusConnection.RegisterOption'
ExportScriptableSignals = ... # type: 'QDBusConnection.RegisterOption'
ExportScriptableProperties = ... # type: 'QDBusConnection.RegisterOption'
ExportScriptableInvokables = ... # type: 'QDBusConnection.RegisterOption'
ExportScriptableContents = ... # type: 'QDBusConnection.RegisterOption'
ExportNonScriptableSlots = ... # type: 'QDBusConnection.RegisterOption'
ExportNonScriptableSignals = ... # type: 'QDBusConnection.RegisterOption'
ExportNonScriptableProperties = ... # type: 'QDBusConnection.RegisterOption'
ExportNonScriptableInvokables = ... # type: 'QDBusConnection.RegisterOption'
ExportNonScriptableContents = ... # type: 'QDBusConnection.RegisterOption'
ExportAllSlots = ... # type: 'QDBusConnection.RegisterOption'
ExportAllSignals = ... # type: 'QDBusConnection.RegisterOption'
ExportAllProperties = ... # type: 'QDBusConnection.RegisterOption'
ExportAllInvokables = ... # type: 'QDBusConnection.RegisterOption'
ExportAllContents = ... # type: 'QDBusConnection.RegisterOption'
ExportAllSignal = ... # type: 'QDBusConnection.RegisterOption'
ExportChildObjects = ... # type: 'QDBusConnection.RegisterOption'
class BusType(int): ...
SessionBus = ... # type: 'QDBusConnection.BusType'
SystemBus = ... # type: 'QDBusConnection.BusType'
ActivationBus = ... # type: 'QDBusConnection.BusType'
class RegisterOptions(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QDBusConnection.RegisterOptions', 'QDBusConnection.RegisterOption']) -> None: ...
@typing.overload
def __init__(self, a0: 'QDBusConnection.RegisterOptions') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QDBusConnection.RegisterOptions': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
class ConnectionCapabilities(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QDBusConnection.ConnectionCapabilities', 'QDBusConnection.ConnectionCapability']) -> None: ...
@typing.overload
def __init__(self, a0: 'QDBusConnection.ConnectionCapabilities') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QDBusConnection.ConnectionCapabilities': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
@typing.overload
def __init__(self, name: str) -> None: ...
@typing.overload
def __init__(self, other: 'QDBusConnection') -> None: ...
def swap(self, other: 'QDBusConnection') -> None: ...
@staticmethod
def sender() -> 'QDBusConnection': ...
@staticmethod
def systemBus() -> 'QDBusConnection': ...
@staticmethod
def sessionBus() -> 'QDBusConnection': ...
@staticmethod
def localMachineId() -> QtCore.QByteArray: ...
@staticmethod
def disconnectFromPeer(name: str) -> None: ...
@staticmethod
def disconnectFromBus(name: str) -> None: ...
@staticmethod
def connectToPeer(address: str, name: str) -> 'QDBusConnection': ...
@typing.overload
@staticmethod
def connectToBus(type: 'QDBusConnection.BusType', name: str) -> 'QDBusConnection': ...
@typing.overload
@staticmethod
def connectToBus(address: str, name: str) -> 'QDBusConnection': ...
def interface(self) -> 'QDBusConnectionInterface': ...
def unregisterService(self, serviceName: str) -> bool: ...
def registerService(self, serviceName: str) -> bool: ...
def objectRegisteredAt(self, path: str) -> QtCore.QObject: ...
def unregisterObject(self, path: str, mode: 'QDBusConnection.UnregisterMode' = ...) -> None: ...
@typing.overload
def registerObject(self, path: str, object: QtCore.QObject, options: typing.Union['QDBusConnection.RegisterOptions', 'QDBusConnection.RegisterOption'] = ...) -> bool: ...
@typing.overload
def registerObject(self, path: str, interface: str, object: QtCore.QObject, options: typing.Union['QDBusConnection.RegisterOptions', 'QDBusConnection.RegisterOption'] = ...) -> bool: ...
@typing.overload
def disconnect(self, service: str, path: str, interface: str, name: str, slot: PYQT_SLOT) -> bool: ...
@typing.overload
def disconnect(self, service: str, path: str, interface: str, name: str, signature: str, slot: PYQT_SLOT) -> bool: ...
@typing.overload
def disconnect(self, service: str, path: str, interface: str, name: str, argumentMatch: typing.Iterable[str], signature: str, slot: PYQT_SLOT) -> bool: ...
@typing.overload
def connect(self, service: str, path: str, interface: str, name: str, slot: PYQT_SLOT) -> bool: ...
@typing.overload
def connect(self, service: str, path: str, interface: str, name: str, signature: str, slot: PYQT_SLOT) -> bool: ...
@typing.overload
def connect(self, service: str, path: str, interface: str, name: str, argumentMatch: typing.Iterable[str], signature: str, slot: PYQT_SLOT) -> bool: ...
def asyncCall(self, message: 'QDBusMessage', timeout: int = ...) -> 'QDBusPendingCall': ...
def call(self, message: 'QDBusMessage', mode: QDBus.CallMode = ..., timeout: int = ...) -> 'QDBusMessage': ...
def callWithCallback(self, message: 'QDBusMessage', returnMethod: PYQT_SLOT, errorMethod: PYQT_SLOT, timeout: int = ...) -> bool: ...
def send(self, message: 'QDBusMessage') -> bool: ...
def connectionCapabilities(self) -> 'QDBusConnection.ConnectionCapabilities': ...
def name(self) -> str: ...
def lastError(self) -> 'QDBusError': ...
def baseService(self) -> str: ...
def isConnected(self) -> bool: ...
class QDBusConnectionInterface(QDBusAbstractInterface):
class RegisterServiceReply(int): ...
ServiceNotRegistered = ... # type: 'QDBusConnectionInterface.RegisterServiceReply'
ServiceRegistered = ... # type: 'QDBusConnectionInterface.RegisterServiceReply'
ServiceQueued = ... # type: 'QDBusConnectionInterface.RegisterServiceReply'
class ServiceReplacementOptions(int): ...
DontAllowReplacement = ... # type: 'QDBusConnectionInterface.ServiceReplacementOptions'
AllowReplacement = ... # type: 'QDBusConnectionInterface.ServiceReplacementOptions'
class ServiceQueueOptions(int): ...
DontQueueService = ... # type: 'QDBusConnectionInterface.ServiceQueueOptions'
QueueService = ... # type: 'QDBusConnectionInterface.ServiceQueueOptions'
ReplaceExistingService = ... # type: 'QDBusConnectionInterface.ServiceQueueOptions'
def disconnectNotify(self, a0: QtCore.QMetaMethod) -> None: ...
def connectNotify(self, a0: QtCore.QMetaMethod) -> None: ...
def callWithCallbackFailed(self, error: 'QDBusError', call: 'QDBusMessage') -> None: ...
def serviceOwnerChanged(self, name: str, oldOwner: str, newOwner: str) -> None: ...
def serviceUnregistered(self, service: str) -> None: ...
def serviceRegistered(self, service: str) -> None: ...
def startService(self, name: str) -> 'QDBusReply': ...
def serviceUid(self, serviceName: str) -> 'QDBusReply': ...
def servicePid(self, serviceName: str) -> 'QDBusReply': ...
def registerService(self, serviceName: str, qoption: 'QDBusConnectionInterface.ServiceQueueOptions' = ..., roption: 'QDBusConnectionInterface.ServiceReplacementOptions' = ...) -> 'QDBusReply': ...
def unregisterService(self, serviceName: str) -> 'QDBusReply': ...
def serviceOwner(self, name: str) -> 'QDBusReply': ...
def isServiceRegistered(self, serviceName: str) -> 'QDBusReply': ...
def activatableServiceNames(self) -> 'QDBusReply': ...
def registeredServiceNames(self) -> 'QDBusReply': ...
class QDBusError(sip.simplewrapper):
class ErrorType(int): ...
NoError = ... # type: 'QDBusError.ErrorType'
Other = ... # type: 'QDBusError.ErrorType'
Failed = ... # type: 'QDBusError.ErrorType'
NoMemory = ... # type: 'QDBusError.ErrorType'
ServiceUnknown = ... # type: 'QDBusError.ErrorType'
NoReply = ... # type: 'QDBusError.ErrorType'
BadAddress = ... # type: 'QDBusError.ErrorType'
NotSupported = ... # type: 'QDBusError.ErrorType'
LimitsExceeded = ... # type: 'QDBusError.ErrorType'
AccessDenied = ... # type: 'QDBusError.ErrorType'
NoServer = ... # type: 'QDBusError.ErrorType'
Timeout = ... # type: 'QDBusError.ErrorType'
NoNetwork = ... # type: 'QDBusError.ErrorType'
AddressInUse = ... # type: 'QDBusError.ErrorType'
Disconnected = ... # type: 'QDBusError.ErrorType'
InvalidArgs = ... # type: 'QDBusError.ErrorType'
UnknownMethod = ... # type: 'QDBusError.ErrorType'
TimedOut = ... # type: 'QDBusError.ErrorType'
InvalidSignature = ... # type: 'QDBusError.ErrorType'
UnknownInterface = ... # type: 'QDBusError.ErrorType'
InternalError = ... # type: 'QDBusError.ErrorType'
UnknownObject = ... # type: 'QDBusError.ErrorType'
InvalidService = ... # type: 'QDBusError.ErrorType'
InvalidObjectPath = ... # type: 'QDBusError.ErrorType'
InvalidInterface = ... # type: 'QDBusError.ErrorType'
InvalidMember = ... # type: 'QDBusError.ErrorType'
UnknownProperty = ... # type: 'QDBusError.ErrorType'
PropertyReadOnly = ... # type: 'QDBusError.ErrorType'
def __init__(self, other: 'QDBusError') -> None: ...
def swap(self, other: 'QDBusError') -> None: ...
@staticmethod
def errorString(error: 'QDBusError.ErrorType') -> str: ...
def isValid(self) -> bool: ...
def message(self) -> str: ...
def name(self) -> str: ...
def type(self) -> 'QDBusError.ErrorType': ...
class QDBusObjectPath(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, objectPath: str) -> None: ...
@typing.overload
def __init__(self, a0: 'QDBusObjectPath') -> None: ...
def swap(self, other: 'QDBusObjectPath') -> None: ...
def __hash__(self) -> int: ...
def setPath(self, objectPath: str) -> None: ...
def path(self) -> str: ...
class QDBusSignature(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, dBusSignature: str) -> None: ...
@typing.overload
def __init__(self, a0: 'QDBusSignature') -> None: ...
def swap(self, other: 'QDBusSignature') -> None: ...
def __hash__(self) -> int: ...
def setSignature(self, dBusSignature: str) -> None: ...
def signature(self) -> str: ...
class QDBusVariant(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, dBusVariant: typing.Any) -> None: ...
@typing.overload
def __init__(self, a0: 'QDBusVariant') -> None: ...
def swap(self, other: 'QDBusVariant') -> None: ...
def setVariant(self, dBusVariant: typing.Any) -> None: ...
def variant(self) -> typing.Any: ...
class QDBusInterface(QDBusAbstractInterface):
def __init__(self, service: str, path: str, interface: str = ..., connection: QDBusConnection = ..., parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
class QDBusMessage(sip.simplewrapper):
class MessageType(int): ...
InvalidMessage = ... # type: 'QDBusMessage.MessageType'
MethodCallMessage = ... # type: 'QDBusMessage.MessageType'
ReplyMessage = ... # type: 'QDBusMessage.MessageType'
ErrorMessage = ... # type: 'QDBusMessage.MessageType'
SignalMessage = ... # type: 'QDBusMessage.MessageType'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QDBusMessage') -> None: ...
def isInteractiveAuthorizationAllowed(self) -> bool: ...
def setInteractiveAuthorizationAllowed(self, enable: bool) -> None: ...
@staticmethod
def createTargetedSignal(service: str, path: str, interface: str, name: str) -> 'QDBusMessage': ...
def swap(self, other: 'QDBusMessage') -> None: ...
def arguments(self) -> typing.List[typing.Any]: ...
def setArguments(self, arguments: typing.Iterable[typing.Any]) -> None: ...
def autoStartService(self) -> bool: ...
def setAutoStartService(self, enable: bool) -> None: ...
def isDelayedReply(self) -> bool: ...
def setDelayedReply(self, enable: bool) -> None: ...
def isReplyRequired(self) -> bool: ...
def signature(self) -> str: ...
def type(self) -> 'QDBusMessage.MessageType': ...
def errorMessage(self) -> str: ...
def errorName(self) -> str: ...
def member(self) -> str: ...
def interface(self) -> str: ...
def path(self) -> str: ...
def service(self) -> str: ...
@typing.overload
def createErrorReply(self, name: str, msg: str) -> 'QDBusMessage': ...
@typing.overload
def createErrorReply(self, error: QDBusError) -> 'QDBusMessage': ...
@typing.overload
def createErrorReply(self, type: QDBusError.ErrorType, msg: str) -> 'QDBusMessage': ...
@typing.overload
def createReply(self, arguments: typing.Iterable[typing.Any] = ...) -> 'QDBusMessage': ...
@typing.overload
def createReply(self, argument: typing.Any) -> 'QDBusMessage': ...
@typing.overload
@staticmethod
def createError(name: str, msg: str) -> 'QDBusMessage': ...
@typing.overload
@staticmethod
def createError(error: QDBusError) -> 'QDBusMessage': ...
@typing.overload
@staticmethod
def createError(type: QDBusError.ErrorType, msg: str) -> 'QDBusMessage': ...
@staticmethod
def createMethodCall(service: str, path: str, interface: str, method: str) -> 'QDBusMessage': ...
@staticmethod
def createSignal(path: str, interface: str, name: str) -> 'QDBusMessage': ...
class QDBusPendingCall(sip.simplewrapper):
def __init__(self, other: 'QDBusPendingCall') -> None: ...
def swap(self, other: 'QDBusPendingCall') -> None: ...
@staticmethod
def fromCompletedCall(message: QDBusMessage) -> 'QDBusPendingCall': ...
@staticmethod
def fromError(error: QDBusError) -> 'QDBusPendingCall': ...
class QDBusPendingCallWatcher(QtCore.QObject, QDBusPendingCall):
def __init__(self, call: QDBusPendingCall, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def finished(self, watcher: typing.Optional['QDBusPendingCallWatcher'] = ...) -> None: ...
def waitForFinished(self) -> None: ...
def isFinished(self) -> bool: ...
class QDBusServiceWatcher(QtCore.QObject):
class WatchModeFlag(int): ...
WatchForRegistration = ... # type: 'QDBusServiceWatcher.WatchModeFlag'
WatchForUnregistration = ... # type: 'QDBusServiceWatcher.WatchModeFlag'
WatchForOwnerChange = ... # type: 'QDBusServiceWatcher.WatchModeFlag'
class WatchMode(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QDBusServiceWatcher.WatchMode', 'QDBusServiceWatcher.WatchModeFlag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QDBusServiceWatcher.WatchMode') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QDBusServiceWatcher.WatchMode': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, service: str, connection: QDBusConnection, watchMode: typing.Union['QDBusServiceWatcher.WatchMode', 'QDBusServiceWatcher.WatchModeFlag'] = ..., parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def serviceOwnerChanged(self, service: str, oldOwner: str, newOwner: str) -> None: ...
def serviceUnregistered(self, service: str) -> None: ...
def serviceRegistered(self, service: str) -> None: ...
def setConnection(self, connection: QDBusConnection) -> None: ...
def connection(self) -> QDBusConnection: ...
def setWatchMode(self, mode: typing.Union['QDBusServiceWatcher.WatchMode', 'QDBusServiceWatcher.WatchModeFlag']) -> None: ...
def watchMode(self) -> 'QDBusServiceWatcher.WatchMode': ...
def removeWatchedService(self, service: str) -> bool: ...
def addWatchedService(self, newService: str) -> None: ...
def setWatchedServices(self, services: typing.Iterable[str]) -> None: ...
def watchedServices(self) -> typing.List[str]: ...
class QDBusUnixFileDescriptor(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, fileDescriptor: int) -> None: ...
@typing.overload
def __init__(self, other: 'QDBusUnixFileDescriptor') -> None: ...
def swap(self, other: 'QDBusUnixFileDescriptor') -> None: ...
@staticmethod
def isSupported() -> bool: ...
def setFileDescriptor(self, fileDescriptor: int) -> None: ...
def fileDescriptor(self) -> int: ...
def isValid(self) -> bool: ...
class QDBusReply(sip.simplewrapper):
@typing.overload
def __init__(self, reply: QDBusMessage) -> None: ...
@typing.overload
def __init__(self, call: QDBusPendingCall) -> None: ...
@typing.overload
def __init__(self, error: QDBusError) -> None: ...
@typing.overload
def __init__(self, other: 'QDBusReply') -> None: ...
def value(self, type: typing.Any = ...) -> typing.Any: ...
def isValid(self) -> bool: ...
def error(self) -> QDBusError: ...
class QDBusPendingReply(QDBusPendingCall):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QDBusPendingReply') -> None: ...
@typing.overload
def __init__(self, call: QDBusPendingCall) -> None: ...
@typing.overload
def __init__(self, reply: QDBusMessage) -> None: ...
def value(self, type: typing.Any = ...) -> typing.Any: ...
def waitForFinished(self) -> None: ...
def reply(self) -> QDBusMessage: ...
def isValid(self) -> bool: ...
def isFinished(self) -> bool: ...
def isError(self) -> bool: ...
def error(self) -> QDBusError: ...
def argumentAt(self, index: int) -> typing.Any: ...

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,482 @@
# The PEP 484 type hints stub file for the QtDesigner module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWidgets
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QDesignerActionEditorInterface(QtWidgets.QWidget):
def __init__(self, parent: QtWidgets.QWidget, flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
def setFormWindow(self, formWindow: 'QDesignerFormWindowInterface') -> None: ...
def unmanageAction(self, action: QtWidgets.QAction) -> None: ...
def manageAction(self, action: QtWidgets.QAction) -> None: ...
def core(self) -> 'QDesignerFormEditorInterface': ...
class QAbstractFormBuilder(sip.simplewrapper):
def __init__(self) -> None: ...
def errorString(self) -> str: ...
def workingDirectory(self) -> QtCore.QDir: ...
def setWorkingDirectory(self, directory: QtCore.QDir) -> None: ...
def save(self, dev: QtCore.QIODevice, widget: QtWidgets.QWidget) -> None: ...
def load(self, device: QtCore.QIODevice, parent: typing.Optional[QtWidgets.QWidget] = ...) -> QtWidgets.QWidget: ...
class QDesignerFormEditorInterface(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def setActionEditor(self, actionEditor: QDesignerActionEditorInterface) -> None: ...
def setObjectInspector(self, objectInspector: 'QDesignerObjectInspectorInterface') -> None: ...
def setPropertyEditor(self, propertyEditor: 'QDesignerPropertyEditorInterface') -> None: ...
def setWidgetBox(self, widgetBox: 'QDesignerWidgetBoxInterface') -> None: ...
def actionEditor(self) -> QDesignerActionEditorInterface: ...
def formWindowManager(self) -> 'QDesignerFormWindowManagerInterface': ...
def objectInspector(self) -> 'QDesignerObjectInspectorInterface': ...
def propertyEditor(self) -> 'QDesignerPropertyEditorInterface': ...
def widgetBox(self) -> 'QDesignerWidgetBoxInterface': ...
def topLevel(self) -> QtWidgets.QWidget: ...
def extensionManager(self) -> 'QExtensionManager': ...
class QDesignerFormWindowInterface(QtWidgets.QWidget):
class FeatureFlag(int): ...
EditFeature = ... # type: 'QDesignerFormWindowInterface.FeatureFlag'
GridFeature = ... # type: 'QDesignerFormWindowInterface.FeatureFlag'
TabOrderFeature = ... # type: 'QDesignerFormWindowInterface.FeatureFlag'
DefaultFeature = ... # type: 'QDesignerFormWindowInterface.FeatureFlag'
class Feature(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QDesignerFormWindowInterface.Feature', 'QDesignerFormWindowInterface.FeatureFlag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QDesignerFormWindowInterface.Feature') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QDesignerFormWindowInterface.Feature': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ..., flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
def activateResourceFilePaths(self, paths: typing.Iterable[str]) -> typing.Tuple[int, str]: ...
def formContainer(self) -> QtWidgets.QWidget: ...
def activeResourceFilePaths(self) -> typing.List[str]: ...
def checkContents(self) -> typing.List[str]: ...
def objectRemoved(self, o: QtCore.QObject) -> None: ...
def widgetRemoved(self, w: QtWidgets.QWidget) -> None: ...
def changed(self) -> None: ...
def activated(self, widget: QtWidgets.QWidget) -> None: ...
def aboutToUnmanageWidget(self, widget: QtWidgets.QWidget) -> None: ...
def widgetUnmanaged(self, widget: QtWidgets.QWidget) -> None: ...
def widgetManaged(self, widget: QtWidgets.QWidget) -> None: ...
def resourceFilesChanged(self) -> None: ...
def geometryChanged(self) -> None: ...
def selectionChanged(self) -> None: ...
def featureChanged(self, f: typing.Union['QDesignerFormWindowInterface.Feature', 'QDesignerFormWindowInterface.FeatureFlag']) -> None: ...
def fileNameChanged(self, fileName: str) -> None: ...
def mainContainerChanged(self, mainContainer: QtWidgets.QWidget) -> None: ...
def setFileName(self, fileName: str) -> None: ...
def setGrid(self, grid: QtCore.QPoint) -> None: ...
def selectWidget(self, widget: QtWidgets.QWidget, select: bool = ...) -> None: ...
def clearSelection(self, update: bool = ...) -> None: ...
def setDirty(self, dirty: bool) -> None: ...
def setFeatures(self, f: typing.Union['QDesignerFormWindowInterface.Feature', 'QDesignerFormWindowInterface.FeatureFlag']) -> None: ...
def unmanageWidget(self, widget: QtWidgets.QWidget) -> None: ...
def manageWidget(self, widget: QtWidgets.QWidget) -> None: ...
def removeResourceFile(self, path: str) -> None: ...
def addResourceFile(self, path: str) -> None: ...
def resourceFiles(self) -> typing.List[str]: ...
def emitSelectionChanged(self) -> None: ...
@typing.overload
@staticmethod
def findFormWindow(w: QtWidgets.QWidget) -> 'QDesignerFormWindowInterface': ...
@typing.overload
@staticmethod
def findFormWindow(obj: QtCore.QObject) -> 'QDesignerFormWindowInterface': ...
def isDirty(self) -> bool: ...
def isManaged(self, widget: QtWidgets.QWidget) -> bool: ...
def setMainContainer(self, mainContainer: QtWidgets.QWidget) -> None: ...
def mainContainer(self) -> QtWidgets.QWidget: ...
def grid(self) -> QtCore.QPoint: ...
def cursor(self) -> 'QDesignerFormWindowCursorInterface': ... # type: ignore[override]
def core(self) -> QDesignerFormEditorInterface: ...
def setIncludeHints(self, includeHints: typing.Iterable[str]) -> None: ...
def includeHints(self) -> typing.List[str]: ...
def setExportMacro(self, exportMacro: str) -> None: ...
def exportMacro(self) -> str: ...
def setPixmapFunction(self, pixmapFunction: str) -> None: ...
def pixmapFunction(self) -> str: ...
def setLayoutFunction(self, margin: str, spacing: str) -> None: ...
def layoutFunction(self) -> typing.Tuple[str, str]: ...
def setLayoutDefault(self, margin: int, spacing: int) -> None: ...
def layoutDefault(self) -> typing.Tuple[int, int]: ...
def setComment(self, comment: str) -> None: ...
def comment(self) -> str: ...
def setAuthor(self, author: str) -> None: ...
def author(self) -> str: ...
def hasFeature(self, f: typing.Union['QDesignerFormWindowInterface.Feature', 'QDesignerFormWindowInterface.FeatureFlag']) -> bool: ...
def features(self) -> 'QDesignerFormWindowInterface.Feature': ...
@typing.overload
def setContents(self, dev: QtCore.QIODevice, errorMessage: typing.Optional[str] = ...) -> bool: ...
@typing.overload
def setContents(self, contents: str) -> bool: ...
def contents(self) -> str: ...
def absoluteDir(self) -> QtCore.QDir: ...
def fileName(self) -> str: ...
class QDesignerFormWindowCursorInterface(sip.simplewrapper):
class MoveMode(int): ...
MoveAnchor = ... # type: 'QDesignerFormWindowCursorInterface.MoveMode'
KeepAnchor = ... # type: 'QDesignerFormWindowCursorInterface.MoveMode'
class MoveOperation(int): ...
NoMove = ... # type: 'QDesignerFormWindowCursorInterface.MoveOperation'
Start = ... # type: 'QDesignerFormWindowCursorInterface.MoveOperation'
End = ... # type: 'QDesignerFormWindowCursorInterface.MoveOperation'
Next = ... # type: 'QDesignerFormWindowCursorInterface.MoveOperation'
Prev = ... # type: 'QDesignerFormWindowCursorInterface.MoveOperation'
Left = ... # type: 'QDesignerFormWindowCursorInterface.MoveOperation'
Right = ... # type: 'QDesignerFormWindowCursorInterface.MoveOperation'
Up = ... # type: 'QDesignerFormWindowCursorInterface.MoveOperation'
Down = ... # type: 'QDesignerFormWindowCursorInterface.MoveOperation'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDesignerFormWindowCursorInterface') -> None: ...
def isWidgetSelected(self, widget: QtWidgets.QWidget) -> bool: ...
def resetWidgetProperty(self, widget: QtWidgets.QWidget, name: str) -> None: ...
def setWidgetProperty(self, widget: QtWidgets.QWidget, name: str, value: typing.Any) -> None: ...
def setProperty(self, name: str, value: typing.Any) -> None: ...
def selectedWidget(self, index: int) -> QtWidgets.QWidget: ...
def selectedWidgetCount(self) -> int: ...
def hasSelection(self) -> bool: ...
def widget(self, index: int) -> QtWidgets.QWidget: ...
def widgetCount(self) -> int: ...
def current(self) -> QtWidgets.QWidget: ...
def setPosition(self, pos: int, mode: 'QDesignerFormWindowCursorInterface.MoveMode' = ...) -> None: ...
def position(self) -> int: ...
def movePosition(self, op: 'QDesignerFormWindowCursorInterface.MoveOperation', mode: 'QDesignerFormWindowCursorInterface.MoveMode' = ...) -> bool: ...
def formWindow(self) -> QDesignerFormWindowInterface: ...
class QDesignerFormWindowManagerInterface(QtCore.QObject):
class ActionGroup(int): ...
StyledPreviewActionGroup = ... # type: 'QDesignerFormWindowManagerInterface.ActionGroup'
class Action(int): ...
CutAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
CopyAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
PasteAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
DeleteAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
SelectAllAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
LowerAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
RaiseAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
UndoAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
RedoAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
HorizontalLayoutAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
VerticalLayoutAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
SplitHorizontalAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
SplitVerticalAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
GridLayoutAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
FormLayoutAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
BreakLayoutAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
AdjustSizeAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
SimplifyLayoutAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
DefaultPreviewAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
FormWindowSettingsDialogAction = ... # type: 'QDesignerFormWindowManagerInterface.Action'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def showPluginDialog(self) -> None: ...
def closeAllPreviews(self) -> None: ...
def showPreview(self) -> None: ...
def actionGroup(self, actionGroup: 'QDesignerFormWindowManagerInterface.ActionGroup') -> QtWidgets.QActionGroup: ...
def action(self, action: 'QDesignerFormWindowManagerInterface.Action') -> QtWidgets.QAction: ...
def setActiveFormWindow(self, formWindow: QDesignerFormWindowInterface) -> None: ...
def removeFormWindow(self, formWindow: QDesignerFormWindowInterface) -> None: ...
def addFormWindow(self, formWindow: QDesignerFormWindowInterface) -> None: ...
def formWindowSettingsChanged(self, fw: QDesignerFormWindowInterface) -> None: ...
def activeFormWindowChanged(self, formWindow: QDesignerFormWindowInterface) -> None: ...
def formWindowRemoved(self, formWindow: QDesignerFormWindowInterface) -> None: ...
def formWindowAdded(self, formWindow: QDesignerFormWindowInterface) -> None: ...
def core(self) -> QDesignerFormEditorInterface: ...
def createFormWindow(self, parent: typing.Optional[QtWidgets.QWidget] = ..., flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> QDesignerFormWindowInterface: ...
def formWindow(self, index: int) -> QDesignerFormWindowInterface: ...
def formWindowCount(self) -> int: ...
def activeFormWindow(self) -> QDesignerFormWindowInterface: ...
def actionSimplifyLayout(self) -> QtWidgets.QAction: ...
def actionFormLayout(self) -> QtWidgets.QAction: ...
class QDesignerObjectInspectorInterface(QtWidgets.QWidget):
def __init__(self, parent: QtWidgets.QWidget, flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
def setFormWindow(self, formWindow: QDesignerFormWindowInterface) -> None: ...
def core(self) -> QDesignerFormEditorInterface: ...
class QDesignerPropertyEditorInterface(QtWidgets.QWidget):
def __init__(self, parent: QtWidgets.QWidget, flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
def setReadOnly(self, readOnly: bool) -> None: ...
def setPropertyValue(self, name: str, value: typing.Any, changed: bool = ...) -> None: ...
def setObject(self, object: QtCore.QObject) -> None: ...
def propertyChanged(self, name: str, value: typing.Any) -> None: ...
def currentPropertyName(self) -> str: ...
def object(self) -> QtCore.QObject: ...
def isReadOnly(self) -> bool: ...
def core(self) -> QDesignerFormEditorInterface: ...
class QDesignerWidgetBoxInterface(QtWidgets.QWidget):
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ..., flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
def save(self) -> bool: ...
def load(self) -> bool: ...
def fileName(self) -> str: ...
def setFileName(self, file_name: str) -> None: ...
class QDesignerContainerExtension(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDesignerContainerExtension') -> None: ...
def canRemove(self, index: int) -> bool: ...
def canAddWidget(self) -> bool: ...
def remove(self, index: int) -> None: ...
def insertWidget(self, index: int, widget: QtWidgets.QWidget) -> None: ...
def addWidget(self, widget: QtWidgets.QWidget) -> None: ...
def setCurrentIndex(self, index: int) -> None: ...
def currentIndex(self) -> int: ...
def widget(self, index: int) -> QtWidgets.QWidget: ...
def __len__(self) -> int: ...
def count(self) -> int: ...
class QDesignerCustomWidgetInterface(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDesignerCustomWidgetInterface') -> None: ...
def codeTemplate(self) -> str: ...
def domXml(self) -> str: ...
def initialize(self, core: QDesignerFormEditorInterface) -> None: ...
def isInitialized(self) -> bool: ...
def createWidget(self, parent: QtWidgets.QWidget) -> QtWidgets.QWidget: ...
def isContainer(self) -> bool: ...
def icon(self) -> QtGui.QIcon: ...
def includeFile(self) -> str: ...
def whatsThis(self) -> str: ...
def toolTip(self) -> str: ...
def group(self) -> str: ...
def name(self) -> str: ...
class QDesignerCustomWidgetCollectionInterface(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDesignerCustomWidgetCollectionInterface') -> None: ...
def customWidgets(self) -> typing.List[QDesignerCustomWidgetInterface]: ...
class QAbstractExtensionFactory(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QAbstractExtensionFactory') -> None: ...
def extension(self, object: QtCore.QObject, iid: str) -> QtCore.QObject: ...
class QExtensionFactory(QtCore.QObject, QAbstractExtensionFactory):
def __init__(self, parent: typing.Optional['QExtensionManager'] = ...) -> None: ...
def createExtension(self, object: QtCore.QObject, iid: str, parent: QtCore.QObject) -> QtCore.QObject: ...
def extensionManager(self) -> 'QExtensionManager': ...
def extension(self, object: QtCore.QObject, iid: str) -> QtCore.QObject: ...
class QAbstractExtensionManager(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QAbstractExtensionManager') -> None: ...
def extension(self, object: QtCore.QObject, iid: str) -> QtCore.QObject: ...
def unregisterExtensions(self, factory: QAbstractExtensionFactory, iid: str) -> None: ...
def registerExtensions(self, factory: QAbstractExtensionFactory, iid: str) -> None: ...
class QFormBuilder(QAbstractFormBuilder):
def __init__(self) -> None: ...
def customWidgets(self) -> typing.List[QDesignerCustomWidgetInterface]: ...
def setPluginPath(self, pluginPaths: typing.Iterable[str]) -> None: ...
def addPluginPath(self, pluginPath: str) -> None: ...
def clearPluginPaths(self) -> None: ...
def pluginPaths(self) -> typing.List[str]: ...
class QDesignerMemberSheetExtension(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDesignerMemberSheetExtension') -> None: ...
def parameterNames(self, index: int) -> typing.List[QtCore.QByteArray]: ...
def parameterTypes(self, index: int) -> typing.List[QtCore.QByteArray]: ...
def signature(self, index: int) -> str: ...
def declaredInClass(self, index: int) -> str: ...
def inheritedFromWidget(self, index: int) -> bool: ...
def isSlot(self, index: int) -> bool: ...
def isSignal(self, index: int) -> bool: ...
def setVisible(self, index: int, b: bool) -> None: ...
def isVisible(self, index: int) -> bool: ...
def setMemberGroup(self, index: int, group: str) -> None: ...
def memberGroup(self, index: int) -> str: ...
def memberName(self, index: int) -> str: ...
def indexOf(self, name: str) -> int: ...
def __len__(self) -> int: ...
def count(self) -> int: ...
class QDesignerPropertySheetExtension(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDesignerPropertySheetExtension') -> None: ...
def isEnabled(self, index: int) -> bool: ...
def setChanged(self, index: int, changed: bool) -> None: ...
def isChanged(self, index: int) -> bool: ...
def setProperty(self, index: int, value: typing.Any) -> None: ...
def property(self, index: int) -> typing.Any: ...
def setAttribute(self, index: int, b: bool) -> None: ...
def isAttribute(self, index: int) -> bool: ...
def setVisible(self, index: int, b: bool) -> None: ...
def isVisible(self, index: int) -> bool: ...
def reset(self, index: int) -> bool: ...
def hasReset(self, index: int) -> bool: ...
def setPropertyGroup(self, index: int, group: str) -> None: ...
def propertyGroup(self, index: int) -> str: ...
def propertyName(self, index: int) -> str: ...
def indexOf(self, name: str) -> int: ...
def __len__(self) -> int: ...
def count(self) -> int: ...
class QExtensionManager(QtCore.QObject, QAbstractExtensionManager):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def extension(self, object: QtCore.QObject, iid: str) -> QtCore.QObject: ...
def unregisterExtensions(self, factory: QAbstractExtensionFactory, iid: str = ...) -> None: ...
def registerExtensions(self, factory: QAbstractExtensionFactory, iid: str = ...) -> None: ...
class QDesignerTaskMenuExtension(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDesignerTaskMenuExtension') -> None: ...
def preferredEditAction(self) -> QtWidgets.QAction: ...
def taskActions(self) -> typing.List[QtWidgets.QAction]: ...
class QPyDesignerContainerExtension(QtCore.QObject, QDesignerContainerExtension):
def __init__(self, parent: QtCore.QObject) -> None: ...
class QPyDesignerCustomWidgetCollectionPlugin(QtCore.QObject, QDesignerCustomWidgetCollectionInterface):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
class QPyDesignerCustomWidgetPlugin(QtCore.QObject, QDesignerCustomWidgetInterface):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
class QPyDesignerTaskMenuExtension(QtCore.QObject, QDesignerTaskMenuExtension):
def __init__(self, parent: QtCore.QObject) -> None: ...
class QPyDesignerPropertySheetExtension(QtCore.QObject, QDesignerPropertySheetExtension): # type: ignore[misc]
def __init__(self, parent: QtCore.QObject) -> None: ...
class QPyDesignerMemberSheetExtension(QtCore.QObject, QDesignerMemberSheetExtension):
def __init__(self, parent: QtCore.QObject) -> None: ...

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,310 @@
# The PEP 484 type hints stub file for the QtHelp module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWidgets
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QCompressedHelpInfo(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QCompressedHelpInfo') -> None: ...
def isNull(self) -> bool: ...
@staticmethod
def fromCompressedHelpFile(documentationFileName: str) -> 'QCompressedHelpInfo': ...
def version(self) -> QtCore.QVersionNumber: ...
def component(self) -> str: ...
def namespaceName(self) -> str: ...
def swap(self, other: 'QCompressedHelpInfo') -> None: ...
class QHelpContentItem(sip.simplewrapper):
def childPosition(self, child: 'QHelpContentItem') -> int: ...
def parent(self) -> 'QHelpContentItem': ...
def row(self) -> int: ...
def url(self) -> QtCore.QUrl: ...
def title(self) -> str: ...
def childCount(self) -> int: ...
def child(self, row: int) -> 'QHelpContentItem': ...
class QHelpContentModel(QtCore.QAbstractItemModel):
def contentsCreated(self) -> None: ...
def contentsCreationStarted(self) -> None: ...
def isCreatingContents(self) -> bool: ...
def columnCount(self, parent: QtCore.QModelIndex = ...) -> int: ...
def rowCount(self, parent: QtCore.QModelIndex = ...) -> int: ...
def parent(self, index: QtCore.QModelIndex) -> QtCore.QModelIndex: ... # type: ignore[override]
def index(self, row: int, column: int, parent: QtCore.QModelIndex = ...) -> QtCore.QModelIndex: ...
def data(self, index: QtCore.QModelIndex, role: int) -> typing.Any: ... # type: ignore[override]
def contentItemAt(self, index: QtCore.QModelIndex) -> QHelpContentItem: ...
def createContents(self, customFilterName: str) -> None: ...
class QHelpContentWidget(QtWidgets.QTreeView):
def linkActivated(self, link: QtCore.QUrl) -> None: ...
def indexOf(self, link: QtCore.QUrl) -> QtCore.QModelIndex: ...
class QHelpEngineCore(QtCore.QObject):
def __init__(self, collectionFile: str, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def documentsForKeyword(self, keyword: str) -> typing.List['QHelpLink']: ...
@typing.overload
def documentsForKeyword(self, keyword: str, filterName: str) -> typing.List['QHelpLink']: ...
@typing.overload
def documentsForIdentifier(self, id: str) -> typing.List['QHelpLink']: ...
@typing.overload
def documentsForIdentifier(self, id: str, filterName: str) -> typing.List['QHelpLink']: ...
def usesFilterEngine(self) -> bool: ...
def setUsesFilterEngine(self, uses: bool) -> None: ...
def filterEngine(self) -> 'QHelpFilterEngine': ...
def readersAboutToBeInvalidated(self) -> None: ...
def warning(self, msg: str) -> None: ...
def currentFilterChanged(self, newFilter: str) -> None: ...
def setupFinished(self) -> None: ...
def setupStarted(self) -> None: ...
def setAutoSaveFilter(self, save: bool) -> None: ...
def autoSaveFilter(self) -> bool: ...
def error(self) -> str: ...
@staticmethod
def metaData(documentationFileName: str, name: str) -> typing.Any: ...
def setCustomValue(self, key: str, value: typing.Any) -> bool: ...
def customValue(self, key: str, defaultValue: typing.Any = ...) -> typing.Any: ...
def removeCustomValue(self, key: str) -> bool: ...
def linksForKeyword(self, keyword: str) -> typing.Dict[str, QtCore.QUrl]: ...
def linksForIdentifier(self, id: str) -> typing.Dict[str, QtCore.QUrl]: ...
def fileData(self, url: QtCore.QUrl) -> QtCore.QByteArray: ...
def findFile(self, url: QtCore.QUrl) -> QtCore.QUrl: ...
@typing.overload
def files(self, namespaceName: str, filterAttributes: typing.Iterable[str], extensionFilter: str = ...) -> typing.List[QtCore.QUrl]: ...
@typing.overload
def files(self, namespaceName: str, filterName: str, extensionFilter: str = ...) -> typing.List[QtCore.QUrl]: ...
def filterAttributeSets(self, namespaceName: str) -> typing.List[typing.List[str]]: ...
def registeredDocumentations(self) -> typing.List[str]: ...
def setCurrentFilter(self, filterName: str) -> None: ...
def currentFilter(self) -> str: ...
@typing.overload
def filterAttributes(self) -> typing.List[str]: ...
@typing.overload
def filterAttributes(self, filterName: str) -> typing.List[str]: ...
def addCustomFilter(self, filterName: str, attributes: typing.Iterable[str]) -> bool: ...
def removeCustomFilter(self, filterName: str) -> bool: ...
def customFilters(self) -> typing.List[str]: ...
def documentationFileName(self, namespaceName: str) -> str: ...
def unregisterDocumentation(self, namespaceName: str) -> bool: ...
def registerDocumentation(self, documentationFileName: str) -> bool: ...
@staticmethod
def namespaceName(documentationFileName: str) -> str: ...
def copyCollectionFile(self, fileName: str) -> bool: ...
def setCollectionFile(self, fileName: str) -> None: ...
def collectionFile(self) -> str: ...
def setupData(self) -> bool: ...
class QHelpEngine(QHelpEngineCore):
def __init__(self, collectionFile: str, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def searchEngine(self) -> 'QHelpSearchEngine': ...
def indexWidget(self) -> 'QHelpIndexWidget': ...
def contentWidget(self) -> QHelpContentWidget: ...
def indexModel(self) -> 'QHelpIndexModel': ...
def contentModel(self) -> QHelpContentModel: ...
class QHelpFilterData(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QHelpFilterData') -> None: ...
def versions(self) -> typing.List[QtCore.QVersionNumber]: ...
def components(self) -> typing.List[str]: ...
def setVersions(self, versions: typing.Iterable[QtCore.QVersionNumber]) -> None: ...
def setComponents(self, components: typing.Iterable[str]) -> None: ...
def swap(self, other: 'QHelpFilterData') -> None: ...
class QHelpFilterEngine(QtCore.QObject):
@typing.overload
def indices(self) -> typing.List[str]: ...
@typing.overload
def indices(self, filterName: str) -> typing.List[str]: ...
def availableVersions(self) -> typing.List[QtCore.QVersionNumber]: ...
def filterActivated(self, newFilter: str) -> None: ...
def namespacesForFilter(self, filterName: str) -> typing.List[str]: ...
def removeFilter(self, filterName: str) -> bool: ...
def setFilterData(self, filterName: str, filterData: QHelpFilterData) -> bool: ...
def filterData(self, filterName: str) -> QHelpFilterData: ...
def availableComponents(self) -> typing.List[str]: ...
def setActiveFilter(self, filterName: str) -> bool: ...
def activeFilter(self) -> str: ...
def filters(self) -> typing.List[str]: ...
def namespaceToVersion(self) -> typing.Dict[str, QtCore.QVersionNumber]: ...
def namespaceToComponent(self) -> typing.Dict[str, str]: ...
class QHelpFilterSettingsWidget(QtWidgets.QWidget):
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def applySettings(self, filterEngine: QHelpFilterEngine) -> bool: ...
def readSettings(self, filterEngine: QHelpFilterEngine) -> None: ...
def setAvailableVersions(self, versions: typing.Iterable[QtCore.QVersionNumber]) -> None: ...
def setAvailableComponents(self, components: typing.Iterable[str]) -> None: ...
class QHelpIndexModel(QtCore.QStringListModel):
def indexCreated(self) -> None: ...
def indexCreationStarted(self) -> None: ...
def isCreatingIndex(self) -> bool: ...
def linksForKeyword(self, keyword: str) -> typing.Dict[str, QtCore.QUrl]: ...
def filter(self, filter: str, wildcard: str = ...) -> QtCore.QModelIndex: ...
def createIndex(self, customFilterName: str) -> None: ... # type: ignore[override]
def helpEngine(self) -> QHelpEngineCore: ...
class QHelpIndexWidget(QtWidgets.QListView):
def documentsActivated(self, documents: typing.Iterable['QHelpLink'], keyword: str) -> None: ...
def documentActivated(self, document: 'QHelpLink', keyword: str) -> None: ...
def activateCurrentItem(self) -> None: ...
def filterIndices(self, filter: str, wildcard: str = ...) -> None: ...
def linksActivated(self, links: typing.Dict[str, QtCore.QUrl], keyword: str) -> None: ...
def linkActivated(self, link: QtCore.QUrl, keyword: str) -> None: ...
class QHelpLink(sip.simplewrapper):
title = ... # type: str
url = ... # type: QtCore.QUrl
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QHelpLink') -> None: ...
class QHelpSearchQuery(sip.simplewrapper):
class FieldName(int): ...
DEFAULT = ... # type: 'QHelpSearchQuery.FieldName'
FUZZY = ... # type: 'QHelpSearchQuery.FieldName'
WITHOUT = ... # type: 'QHelpSearchQuery.FieldName'
PHRASE = ... # type: 'QHelpSearchQuery.FieldName'
ALL = ... # type: 'QHelpSearchQuery.FieldName'
ATLEAST = ... # type: 'QHelpSearchQuery.FieldName'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, field: 'QHelpSearchQuery.FieldName', wordList: typing.Iterable[str]) -> None: ...
@typing.overload
def __init__(self, a0: 'QHelpSearchQuery') -> None: ...
class QHelpSearchEngine(QtCore.QObject):
def __init__(self, helpEngine: QHelpEngineCore, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def searchInput(self) -> str: ...
def searchResults(self, start: int, end: int) -> typing.List['QHelpSearchResult']: ...
def searchResultCount(self) -> int: ...
def searchingFinished(self, hits: int) -> None: ...
def searchingStarted(self) -> None: ...
def indexingFinished(self) -> None: ...
def indexingStarted(self) -> None: ...
def cancelSearching(self) -> None: ...
@typing.overload
def search(self, queryList: typing.Iterable[QHelpSearchQuery]) -> None: ...
@typing.overload
def search(self, searchInput: str) -> None: ...
def cancelIndexing(self) -> None: ...
def reindexDocumentation(self) -> None: ...
def hits(self, start: int, end: int) -> typing.List[typing.Tuple[str, str]]: ...
def hitCount(self) -> int: ...
def resultWidget(self) -> 'QHelpSearchResultWidget': ...
def queryWidget(self) -> 'QHelpSearchQueryWidget': ...
def query(self) -> typing.List[QHelpSearchQuery]: ...
class QHelpSearchResult(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QHelpSearchResult') -> None: ...
@typing.overload
def __init__(self, url: QtCore.QUrl, title: str, snippet: str) -> None: ...
def snippet(self) -> str: ...
def url(self) -> QtCore.QUrl: ...
def title(self) -> str: ...
class QHelpSearchQueryWidget(QtWidgets.QWidget):
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def setSearchInput(self, searchInput: str) -> None: ...
def searchInput(self) -> str: ...
def setCompactMode(self, on: bool) -> None: ...
def isCompactMode(self) -> bool: ...
def search(self) -> None: ...
def collapseExtendedSearch(self) -> None: ...
def expandExtendedSearch(self) -> None: ...
def setQuery(self, queryList: typing.Iterable[QHelpSearchQuery]) -> None: ...
def query(self) -> typing.List[QHelpSearchQuery]: ...
class QHelpSearchResultWidget(QtWidgets.QWidget):
def requestShowLink(self, url: QtCore.QUrl) -> None: ...
def linkAt(self, point: QtCore.QPoint) -> QtCore.QUrl: ...

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,126 @@
# The PEP 484 type hints stub file for the QtMultimediaWidgets module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWidgets
from PyQt5 import QtMultimedia
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QVideoWidget(QtWidgets.QWidget, QtMultimedia.QMediaBindableInterface):
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def videoSurface(self) -> QtMultimedia.QAbstractVideoSurface: ...
def setMediaObject(self, object: QtMultimedia.QMediaObject) -> bool: ...
def paintEvent(self, event: QtGui.QPaintEvent) -> None: ...
def moveEvent(self, event: QtGui.QMoveEvent) -> None: ...
def resizeEvent(self, event: QtGui.QResizeEvent) -> None: ...
def hideEvent(self, event: QtGui.QHideEvent) -> None: ...
def showEvent(self, event: QtGui.QShowEvent) -> None: ...
def event(self, event: QtCore.QEvent) -> bool: ...
def saturationChanged(self, saturation: int) -> None: ...
def hueChanged(self, hue: int) -> None: ...
def contrastChanged(self, contrast: int) -> None: ...
def brightnessChanged(self, brightness: int) -> None: ...
def fullScreenChanged(self, fullScreen: bool) -> None: ...
def setSaturation(self, saturation: int) -> None: ...
def setHue(self, hue: int) -> None: ...
def setContrast(self, contrast: int) -> None: ...
def setBrightness(self, brightness: int) -> None: ...
def setAspectRatioMode(self, mode: QtCore.Qt.AspectRatioMode) -> None: ...
def setFullScreen(self, fullScreen: bool) -> None: ...
def sizeHint(self) -> QtCore.QSize: ...
def saturation(self) -> int: ...
def hue(self) -> int: ...
def contrast(self) -> int: ...
def brightness(self) -> int: ...
def aspectRatioMode(self) -> QtCore.Qt.AspectRatioMode: ...
def mediaObject(self) -> QtMultimedia.QMediaObject: ...
class QCameraViewfinder(QVideoWidget):
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def setMediaObject(self, object: QtMultimedia.QMediaObject) -> bool: ...
def mediaObject(self) -> QtMultimedia.QMediaObject: ...
class QGraphicsVideoItem(QtWidgets.QGraphicsObject, QtMultimedia.QMediaBindableInterface):
def __init__(self, parent: typing.Optional[QtWidgets.QGraphicsItem] = ...) -> None: ...
def videoSurface(self) -> QtMultimedia.QAbstractVideoSurface: ...
def setMediaObject(self, object: QtMultimedia.QMediaObject) -> bool: ...
def itemChange(self, change: QtWidgets.QGraphicsItem.GraphicsItemChange, value: typing.Any) -> typing.Any: ...
def timerEvent(self, event: QtCore.QTimerEvent) -> None: ...
def nativeSizeChanged(self, size: QtCore.QSizeF) -> None: ...
def paint(self, painter: QtGui.QPainter, option: QtWidgets.QStyleOptionGraphicsItem, widget: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def boundingRect(self) -> QtCore.QRectF: ...
def nativeSize(self) -> QtCore.QSizeF: ...
def setSize(self, size: QtCore.QSizeF) -> None: ...
def size(self) -> QtCore.QSizeF: ...
def setOffset(self, offset: typing.Union[QtCore.QPointF, QtCore.QPoint]) -> None: ...
def offset(self) -> QtCore.QPointF: ...
def setAspectRatioMode(self, mode: QtCore.Qt.AspectRatioMode) -> None: ...
def aspectRatioMode(self) -> QtCore.Qt.AspectRatioMode: ...
def mediaObject(self) -> QtMultimedia.QMediaObject: ...
class QVideoWidgetControl(QtMultimedia.QMediaControl):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def saturationChanged(self, saturation: int) -> None: ...
def hueChanged(self, hue: int) -> None: ...
def contrastChanged(self, contrast: int) -> None: ...
def brightnessChanged(self, brightness: int) -> None: ...
def fullScreenChanged(self, fullScreen: bool) -> None: ...
def setSaturation(self, saturation: int) -> None: ...
def saturation(self) -> int: ...
def setHue(self, hue: int) -> None: ...
def hue(self) -> int: ...
def setContrast(self, contrast: int) -> None: ...
def contrast(self) -> int: ...
def setBrightness(self, brightness: int) -> None: ...
def brightness(self) -> int: ...
def setFullScreen(self, fullScreen: bool) -> None: ...
def isFullScreen(self) -> bool: ...
def setAspectRatioMode(self, mode: QtCore.Qt.AspectRatioMode) -> None: ...
def aspectRatioMode(self) -> QtCore.Qt.AspectRatioMode: ...
def videoWidget(self) -> QtWidgets.QWidget: ...

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,313 @@
# The PEP 484 type hints stub file for the QtNetworkAuth module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtNetwork
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QAbstractOAuth(QtCore.QObject):
class ContentType(int):
WwwFormUrlEncoded = ... # type: 'QAbstractOAuth.ContentType'
Json = ... # type: 'QAbstractOAuth.ContentType'
class Error(int):
NoError = ... # type: 'QAbstractOAuth.Error'
NetworkError = ... # type: 'QAbstractOAuth.Error'
ServerError = ... # type: 'QAbstractOAuth.Error'
OAuthTokenNotFoundError = ... # type: 'QAbstractOAuth.Error'
OAuthTokenSecretNotFoundError = ... # type: 'QAbstractOAuth.Error'
OAuthCallbackNotVerified = ... # type: 'QAbstractOAuth.Error'
class Stage(int):
RequestingTemporaryCredentials = ... # type: 'QAbstractOAuth.Stage'
RequestingAuthorization = ... # type: 'QAbstractOAuth.Stage'
RequestingAccessToken = ... # type: 'QAbstractOAuth.Stage'
RefreshingAccessToken = ... # type: 'QAbstractOAuth.Stage'
class Status(int):
NotAuthenticated = ... # type: 'QAbstractOAuth.Status'
TemporaryCredentialsReceived = ... # type: 'QAbstractOAuth.Status'
Granted = ... # type: 'QAbstractOAuth.Status'
RefreshingToken = ... # type: 'QAbstractOAuth.Status'
@staticmethod
def generateRandomString(length: int) -> QtCore.QByteArray: ...
def resourceOwnerAuthorization(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any]) -> None: ...
def callback(self) -> str: ...
def setStatus(self, status: 'QAbstractOAuth.Status') -> None: ...
def replyDataReceived(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def finished(self, reply: QtNetwork.QNetworkReply) -> None: ...
def granted(self) -> None: ...
def authorizeWithBrowser(self, url: QtCore.QUrl) -> None: ...
def requestFailed(self, error: 'QAbstractOAuth.Error') -> None: ...
def contentTypeChanged(self, contentType: 'QAbstractOAuth.ContentType') -> None: ...
def extraTokensChanged(self, tokens: typing.Dict[str, typing.Any]) -> None: ...
def authorizationUrlChanged(self, url: QtCore.QUrl) -> None: ...
def statusChanged(self, status: 'QAbstractOAuth.Status') -> None: ...
def tokenChanged(self, token: str) -> None: ...
def clientIdentifierChanged(self, clientIdentifier: str) -> None: ...
def grant(self) -> None: ...
def prepareRequest(self, request: QtNetwork.QNetworkRequest, verb: typing.Union[QtCore.QByteArray, bytes, bytearray], body: typing.Union[QtCore.QByteArray, bytes, bytearray] = ...) -> None: ...
def setContentType(self, contentType: 'QAbstractOAuth.ContentType') -> None: ...
def contentType(self) -> 'QAbstractOAuth.ContentType': ...
def setModifyParametersFunction(self, modifyParametersFunction: typing.Callable[..., None]) -> None: ...
def modifyParametersFunction(self) -> typing.Callable[..., None]: ...
def deleteResource(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def put(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def post(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def get(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def head(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def setReplyHandler(self, handler: 'QAbstractOAuthReplyHandler') -> None: ...
def replyHandler(self) -> 'QAbstractOAuthReplyHandler': ...
def extraTokens(self) -> typing.Dict[str, typing.Any]: ...
def setAuthorizationUrl(self, url: QtCore.QUrl) -> None: ...
def authorizationUrl(self) -> QtCore.QUrl: ...
def status(self) -> 'QAbstractOAuth.Status': ...
def setNetworkAccessManager(self, networkAccessManager: QtNetwork.QNetworkAccessManager) -> None: ...
def networkAccessManager(self) -> QtNetwork.QNetworkAccessManager: ...
def setToken(self, token: str) -> None: ...
def token(self) -> str: ...
def setClientIdentifier(self, clientIdentifier: str) -> None: ...
def clientIdentifier(self) -> str: ...
class QAbstractOAuth2(QAbstractOAuth):
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, manager: QtNetwork.QNetworkAccessManager, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def setResponseType(self, responseType: str) -> None: ...
def authorizationCallbackReceived(self, data: typing.Dict[str, typing.Any]) -> None: ...
def error(self, error: str, errorDescription: str, uri: QtCore.QUrl) -> None: ...
def expirationAtChanged(self, expiration: typing.Union[QtCore.QDateTime, datetime.datetime]) -> None: ...
def stateChanged(self, state: str) -> None: ...
def clientIdentifierSharedKeyChanged(self, clientIdentifierSharedKey: str) -> None: ...
def responseTypeChanged(self, responseType: str) -> None: ...
def refreshTokenChanged(self, refreshToken: str) -> None: ...
def userAgentChanged(self, userAgent: str) -> None: ...
def scopeChanged(self, scope: str) -> None: ...
def setRefreshToken(self, refreshToken: str) -> None: ...
def refreshToken(self) -> str: ...
def expirationAt(self) -> QtCore.QDateTime: ...
def setState(self, state: str) -> None: ...
def state(self) -> str: ...
def setClientIdentifierSharedKey(self, clientIdentifierSharedKey: str) -> None: ...
def clientIdentifierSharedKey(self) -> str: ...
def responseType(self) -> str: ...
def setUserAgent(self, userAgent: str) -> None: ...
def userAgent(self) -> str: ...
def setScope(self, scope: str) -> None: ...
def scope(self) -> str: ...
def deleteResource(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
@typing.overload
def put(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
@typing.overload
def put(self, url: QtCore.QUrl, data: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> QtNetwork.QNetworkReply: ...
@typing.overload
def put(self, url: QtCore.QUrl, multiPart: QtNetwork.QHttpMultiPart) -> QtNetwork.QNetworkReply: ...
@typing.overload
def post(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
@typing.overload
def post(self, url: QtCore.QUrl, data: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> QtNetwork.QNetworkReply: ...
@typing.overload
def post(self, url: QtCore.QUrl, multiPart: QtNetwork.QHttpMultiPart) -> QtNetwork.QNetworkReply: ...
def get(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def head(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def createAuthenticatedUrl(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtCore.QUrl: ...
class QAbstractOAuthReplyHandler(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def callbackDataReceived(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def replyDataReceived(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def tokensReceived(self, tokens: typing.Dict[str, typing.Any]) -> None: ...
def callbackReceived(self, values: typing.Dict[str, typing.Any]) -> None: ...
def networkReplyFinished(self, reply: QtNetwork.QNetworkReply) -> None: ...
def callback(self) -> str: ...
class QOAuth1(QAbstractOAuth):
class SignatureMethod(int):
Hmac_Sha1 = ... # type: 'QOAuth1.SignatureMethod'
Rsa_Sha1 = ... # type: 'QOAuth1.SignatureMethod'
PlainText = ... # type: 'QOAuth1.SignatureMethod'
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, manager: QtNetwork.QNetworkAccessManager, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, clientIdentifier: str, clientSharedSecret: str, manager: QtNetwork.QNetworkAccessManager, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@staticmethod
def generateAuthorizationHeader(oauthParams: typing.Dict[str, typing.Any]) -> QtCore.QByteArray: ...
@staticmethod
def nonce() -> QtCore.QByteArray: ...
@typing.overload
def setup(self, request: QtNetwork.QNetworkRequest, signingParameters: typing.Dict[str, typing.Any], operation: QtNetwork.QNetworkAccessManager.Operation) -> None: ...
@typing.overload
def setup(self, request: QtNetwork.QNetworkRequest, signingParameters: typing.Dict[str, typing.Any], operationVerb: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def requestTokenCredentials(self, operation: QtNetwork.QNetworkAccessManager.Operation, url: QtCore.QUrl, temporaryToken: typing.Tuple[str, str], parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def requestTemporaryCredentials(self, operation: QtNetwork.QNetworkAccessManager.Operation, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def tokenCredentialsUrlChanged(self, url: QtCore.QUrl) -> None: ...
def temporaryCredentialsUrlChanged(self, url: QtCore.QUrl) -> None: ...
def tokenSecretChanged(self, token: str) -> None: ...
def clientSharedSecretChanged(self, credential: str) -> None: ...
def signatureMethodChanged(self, method: 'QOAuth1.SignatureMethod') -> None: ...
def continueGrantWithVerifier(self, verifier: str) -> None: ...
def grant(self) -> None: ...
def deleteResource(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def put(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def post(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def get(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def head(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> QtNetwork.QNetworkReply: ...
def setSignatureMethod(self, value: 'QOAuth1.SignatureMethod') -> None: ...
def signatureMethod(self) -> 'QOAuth1.SignatureMethod': ...
def setTokenCredentialsUrl(self, url: QtCore.QUrl) -> None: ...
def tokenCredentialsUrl(self) -> QtCore.QUrl: ...
def setTemporaryCredentialsUrl(self, url: QtCore.QUrl) -> None: ...
def temporaryCredentialsUrl(self) -> QtCore.QUrl: ...
@typing.overload
def setTokenCredentials(self, tokenCredentials: typing.Tuple[str, str]) -> None: ...
@typing.overload
def setTokenCredentials(self, token: str, tokenSecret: str) -> None: ...
def tokenCredentials(self) -> typing.Tuple[str, str]: ...
def setTokenSecret(self, tokenSecret: str) -> None: ...
def tokenSecret(self) -> str: ...
@typing.overload
def setClientCredentials(self, clientCredentials: typing.Tuple[str, str]) -> None: ...
@typing.overload
def setClientCredentials(self, clientIdentifier: str, clientSharedSecret: str) -> None: ...
def clientCredentials(self) -> typing.Tuple[str, str]: ...
def setClientSharedSecret(self, clientSharedSecret: str) -> None: ...
def clientSharedSecret(self) -> str: ...
class QOAuth1Signature(sip.simplewrapper):
class HttpRequestMethod(int):
Head = ... # type: 'QOAuth1Signature.HttpRequestMethod'
Get = ... # type: 'QOAuth1Signature.HttpRequestMethod'
Put = ... # type: 'QOAuth1Signature.HttpRequestMethod'
Post = ... # type: 'QOAuth1Signature.HttpRequestMethod'
Delete = ... # type: 'QOAuth1Signature.HttpRequestMethod'
Custom = ... # type: 'QOAuth1Signature.HttpRequestMethod'
Unknown = ... # type: 'QOAuth1Signature.HttpRequestMethod'
@typing.overload
def __init__(self, url: QtCore.QUrl = ..., method: 'QOAuth1Signature.HttpRequestMethod' = ..., parameters: typing.Dict[str, typing.Any] = ...) -> None: ...
@typing.overload
def __init__(self, url: QtCore.QUrl, clientSharedKey: str, tokenSecret: str, method: 'QOAuth1Signature.HttpRequestMethod' = ..., parameters: typing.Dict[str, typing.Any] = ...) -> None: ...
@typing.overload
def __init__(self, other: 'QOAuth1Signature') -> None: ...
def setCustomMethodString(self, verb: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def customMethodString(self) -> QtCore.QByteArray: ...
def swap(self, other: 'QOAuth1Signature') -> None: ...
@typing.overload # type: ignore[misc]
def plainText(self) -> QtCore.QByteArray: ...
@typing.overload
@staticmethod
def plainText(clientSharedSecret: str, tokenSecret: str) -> QtCore.QByteArray: ...
def rsaSha1(self) -> QtCore.QByteArray: ...
def hmacSha1(self) -> QtCore.QByteArray: ...
def setTokenSecret(self, secret: str) -> None: ...
def tokenSecret(self) -> str: ...
def setClientSharedKey(self, secret: str) -> None: ...
def clientSharedKey(self) -> str: ...
def value(self, key: str, defaultValue: typing.Any = ...) -> typing.Any: ...
def take(self, key: str) -> typing.Any: ...
def keys(self) -> typing.List[str]: ...
def insert(self, key: str, value: typing.Any) -> None: ...
def addRequestBody(self, body: QtCore.QUrlQuery) -> None: ...
def setParameters(self, parameters: typing.Dict[str, typing.Any]) -> None: ...
def parameters(self) -> typing.Dict[str, typing.Any]: ...
def setUrl(self, url: QtCore.QUrl) -> None: ...
def url(self) -> QtCore.QUrl: ...
def setHttpRequestMethod(self, method: 'QOAuth1Signature.HttpRequestMethod') -> None: ...
def httpRequestMethod(self) -> 'QOAuth1Signature.HttpRequestMethod': ...
class QOAuth2AuthorizationCodeFlow(QAbstractOAuth2):
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, manager: QtNetwork.QNetworkAccessManager, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, clientIdentifier: str, manager: QtNetwork.QNetworkAccessManager, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, authorizationUrl: QtCore.QUrl, accessTokenUrl: QtCore.QUrl, manager: QtNetwork.QNetworkAccessManager, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, clientIdentifier: str, authorizationUrl: QtCore.QUrl, accessTokenUrl: QtCore.QUrl, manager: QtNetwork.QNetworkAccessManager, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def resourceOwnerAuthorization(self, url: QtCore.QUrl, parameters: typing.Dict[str, typing.Any] = ...) -> None: ...
def requestAccessToken(self, code: str) -> None: ...
def buildAuthenticateUrl(self, parameters: typing.Dict[str, typing.Any] = ...) -> QtCore.QUrl: ...
def accessTokenUrlChanged(self, accessTokenUrl: QtCore.QUrl) -> None: ...
def refreshAccessToken(self) -> None: ...
def grant(self) -> None: ...
def setAccessTokenUrl(self, accessTokenUrl: QtCore.QUrl) -> None: ...
def accessTokenUrl(self) -> QtCore.QUrl: ...
class QOAuthOobReplyHandler(QAbstractOAuthReplyHandler):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def networkReplyFinished(self, reply: QtNetwork.QNetworkReply) -> None: ...
def callback(self) -> str: ...
class QOAuthHttpServerReplyHandler(QOAuthOobReplyHandler):
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, port: int, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, address: typing.Union[QtNetwork.QHostAddress, QtNetwork.QHostAddress.SpecialAddress], port: int, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def isListening(self) -> bool: ...
def close(self) -> None: ...
def listen(self, address: typing.Union[QtNetwork.QHostAddress, QtNetwork.QHostAddress.SpecialAddress] = ..., port: int = ...) -> bool: ...
def port(self) -> int: ...
def setCallbackText(self, text: str) -> None: ...
def callbackText(self) -> str: ...
def setCallbackPath(self, path: str) -> None: ...
def callbackPath(self) -> str: ...
def callback(self) -> str: ...

View File

@ -0,0 +1,433 @@
# The PEP 484 type hints stub file for the QtNfc module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QNdefFilter(sip.simplewrapper):
class Record(sip.simplewrapper):
maximum = ... # type: int
minimum = ... # type: int
type = ... # type: typing.Union[QtCore.QByteArray, bytes, bytearray]
typeNameFormat = ... # type: 'QNdefRecord.TypeNameFormat'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QNdefFilter.Record') -> None: ...
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QNdefFilter') -> None: ...
def recordAt(self, i: int) -> 'QNdefFilter.Record': ...
def __len__(self) -> int: ...
def recordCount(self) -> int: ...
@typing.overload
def appendRecord(self, typeNameFormat: 'QNdefRecord.TypeNameFormat', type: typing.Union[QtCore.QByteArray, bytes, bytearray], min: int = ..., max: int = ...) -> None: ...
@typing.overload
def appendRecord(self, record: 'QNdefFilter.Record') -> None: ...
def orderMatch(self) -> bool: ...
def setOrderMatch(self, on: bool) -> None: ...
def clear(self) -> None: ...
class QNdefMessage(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, record: 'QNdefRecord') -> None: ...
@typing.overload
def __init__(self, message: 'QNdefMessage') -> None: ...
@typing.overload
def __init__(self, records: typing.Iterable['QNdefRecord']) -> None: ...
@staticmethod
def fromByteArray(message: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> 'QNdefMessage': ...
def __delitem__(self, i: int) -> None: ...
def __setitem__(self, i: int, value: 'QNdefRecord') -> None: ...
def __getitem__(self, i: int) -> 'QNdefRecord': ...
def __len__(self) -> int: ...
def toByteArray(self) -> QtCore.QByteArray: ...
class QNdefRecord(sip.simplewrapper):
class TypeNameFormat(int): ...
Empty = ... # type: 'QNdefRecord.TypeNameFormat'
NfcRtd = ... # type: 'QNdefRecord.TypeNameFormat'
Mime = ... # type: 'QNdefRecord.TypeNameFormat'
Uri = ... # type: 'QNdefRecord.TypeNameFormat'
ExternalRtd = ... # type: 'QNdefRecord.TypeNameFormat'
Unknown = ... # type: 'QNdefRecord.TypeNameFormat'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QNdefRecord') -> None: ...
def __hash__(self) -> int: ...
def isEmpty(self) -> bool: ...
def payload(self) -> QtCore.QByteArray: ...
def setPayload(self, payload: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def id(self) -> QtCore.QByteArray: ...
def setId(self, id: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def type(self) -> QtCore.QByteArray: ...
def setType(self, type: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def typeNameFormat(self) -> 'QNdefRecord.TypeNameFormat': ...
def setTypeNameFormat(self, typeNameFormat: 'QNdefRecord.TypeNameFormat') -> None: ...
class QNdefNfcIconRecord(QNdefRecord):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: QNdefRecord) -> None: ...
@typing.overload
def __init__(self, a0: 'QNdefNfcIconRecord') -> None: ...
def data(self) -> QtCore.QByteArray: ...
def setData(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
class QNdefNfcSmartPosterRecord(QNdefRecord):
class Action(int): ...
UnspecifiedAction = ... # type: 'QNdefNfcSmartPosterRecord.Action'
DoAction = ... # type: 'QNdefNfcSmartPosterRecord.Action'
SaveAction = ... # type: 'QNdefNfcSmartPosterRecord.Action'
EditAction = ... # type: 'QNdefNfcSmartPosterRecord.Action'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QNdefNfcSmartPosterRecord') -> None: ...
@typing.overload
def __init__(self, other: QNdefRecord) -> None: ...
def setTypeInfo(self, type: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def typeInfo(self) -> QtCore.QByteArray: ...
def setSize(self, size: int) -> None: ...
def size(self) -> int: ...
def setIcons(self, icons: typing.Iterable[QNdefNfcIconRecord]) -> None: ...
@typing.overload
def removeIcon(self, icon: QNdefNfcIconRecord) -> bool: ...
@typing.overload
def removeIcon(self, type: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> bool: ...
@typing.overload
def addIcon(self, icon: QNdefNfcIconRecord) -> None: ...
@typing.overload
def addIcon(self, type: typing.Union[QtCore.QByteArray, bytes, bytearray], data: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def iconRecords(self) -> typing.List[QNdefNfcIconRecord]: ...
def iconRecord(self, index: int) -> QNdefNfcIconRecord: ...
def icon(self, mimetype: typing.Union[QtCore.QByteArray, bytes, bytearray] = ...) -> QtCore.QByteArray: ...
def iconCount(self) -> int: ...
def setAction(self, act: 'QNdefNfcSmartPosterRecord.Action') -> None: ...
def action(self) -> 'QNdefNfcSmartPosterRecord.Action': ...
@typing.overload
def setUri(self, url: 'QNdefNfcUriRecord') -> None: ...
@typing.overload
def setUri(self, url: QtCore.QUrl) -> None: ...
def uriRecord(self) -> 'QNdefNfcUriRecord': ...
def uri(self) -> QtCore.QUrl: ...
def setTitles(self, titles: typing.Iterable['QNdefNfcTextRecord']) -> None: ...
@typing.overload
def removeTitle(self, text: 'QNdefNfcTextRecord') -> bool: ...
@typing.overload
def removeTitle(self, locale: str) -> bool: ...
@typing.overload
def addTitle(self, text: 'QNdefNfcTextRecord') -> bool: ...
@typing.overload
def addTitle(self, text: str, locale: str, encoding: 'QNdefNfcTextRecord.Encoding') -> bool: ...
def titleRecords(self) -> typing.List['QNdefNfcTextRecord']: ...
def titleRecord(self, index: int) -> 'QNdefNfcTextRecord': ...
def title(self, locale: str = ...) -> str: ...
def titleCount(self) -> int: ...
def hasTypeInfo(self) -> bool: ...
def hasSize(self) -> bool: ...
def hasIcon(self, mimetype: typing.Union[QtCore.QByteArray, bytes, bytearray] = ...) -> bool: ...
def hasAction(self) -> bool: ...
def hasTitle(self, locale: str = ...) -> bool: ...
def setPayload(self, payload: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
class QNdefNfcTextRecord(QNdefRecord):
class Encoding(int): ...
Utf8 = ... # type: 'QNdefNfcTextRecord.Encoding'
Utf16 = ... # type: 'QNdefNfcTextRecord.Encoding'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: QNdefRecord) -> None: ...
@typing.overload
def __init__(self, a0: 'QNdefNfcTextRecord') -> None: ...
def setEncoding(self, encoding: 'QNdefNfcTextRecord.Encoding') -> None: ...
def encoding(self) -> 'QNdefNfcTextRecord.Encoding': ...
def setText(self, text: str) -> None: ...
def text(self) -> str: ...
def setLocale(self, locale: str) -> None: ...
def locale(self) -> str: ...
class QNdefNfcUriRecord(QNdefRecord):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: QNdefRecord) -> None: ...
@typing.overload
def __init__(self, a0: 'QNdefNfcUriRecord') -> None: ...
def setUri(self, uri: QtCore.QUrl) -> None: ...
def uri(self) -> QtCore.QUrl: ...
class QNearFieldManager(QtCore.QObject):
class AdapterState(int):
Offline = ... # type: 'QNearFieldManager.AdapterState'
TurningOn = ... # type: 'QNearFieldManager.AdapterState'
Online = ... # type: 'QNearFieldManager.AdapterState'
TurningOff = ... # type: 'QNearFieldManager.AdapterState'
class TargetAccessMode(int): ...
NoTargetAccess = ... # type: 'QNearFieldManager.TargetAccessMode'
NdefReadTargetAccess = ... # type: 'QNearFieldManager.TargetAccessMode'
NdefWriteTargetAccess = ... # type: 'QNearFieldManager.TargetAccessMode'
TagTypeSpecificTargetAccess = ... # type: 'QNearFieldManager.TargetAccessMode'
class TargetAccessModes(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QNearFieldManager.TargetAccessModes', 'QNearFieldManager.TargetAccessMode']) -> None: ...
@typing.overload
def __init__(self, a0: 'QNearFieldManager.TargetAccessModes') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QNearFieldManager.TargetAccessModes': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def adapterStateChanged(self, state: 'QNearFieldManager.AdapterState') -> None: ...
def isSupported(self) -> bool: ...
def targetLost(self, target: 'QNearFieldTarget') -> None: ...
def targetDetected(self, target: 'QNearFieldTarget') -> None: ...
def unregisterNdefMessageHandler(self, handlerId: int) -> bool: ...
@typing.overload
def registerNdefMessageHandler(self, slot: PYQT_SLOT) -> int: ...
@typing.overload
def registerNdefMessageHandler(self, typeNameFormat: QNdefRecord.TypeNameFormat, type: typing.Union[QtCore.QByteArray, bytes, bytearray], slot: PYQT_SLOT) -> int: ...
@typing.overload
def registerNdefMessageHandler(self, filter: QNdefFilter, slot: PYQT_SLOT) -> int: ...
def stopTargetDetection(self) -> None: ...
def startTargetDetection(self) -> bool: ...
def targetAccessModes(self) -> 'QNearFieldManager.TargetAccessModes': ...
def setTargetAccessModes(self, accessModes: typing.Union['QNearFieldManager.TargetAccessModes', 'QNearFieldManager.TargetAccessMode']) -> None: ...
def isAvailable(self) -> bool: ...
class QNearFieldShareManager(QtCore.QObject):
class ShareMode(int): ...
NoShare = ... # type: 'QNearFieldShareManager.ShareMode'
NdefShare = ... # type: 'QNearFieldShareManager.ShareMode'
FileShare = ... # type: 'QNearFieldShareManager.ShareMode'
class ShareError(int): ...
NoError = ... # type: 'QNearFieldShareManager.ShareError'
UnknownError = ... # type: 'QNearFieldShareManager.ShareError'
InvalidShareContentError = ... # type: 'QNearFieldShareManager.ShareError'
ShareCanceledError = ... # type: 'QNearFieldShareManager.ShareError'
ShareInterruptedError = ... # type: 'QNearFieldShareManager.ShareError'
ShareRejectedError = ... # type: 'QNearFieldShareManager.ShareError'
UnsupportedShareModeError = ... # type: 'QNearFieldShareManager.ShareError'
ShareAlreadyInProgressError = ... # type: 'QNearFieldShareManager.ShareError'
SharePermissionDeniedError = ... # type: 'QNearFieldShareManager.ShareError'
class ShareModes(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QNearFieldShareManager.ShareModes', 'QNearFieldShareManager.ShareMode']) -> None: ...
@typing.overload
def __init__(self, a0: 'QNearFieldShareManager.ShareModes') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QNearFieldShareManager.ShareModes': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def error(self, error: 'QNearFieldShareManager.ShareError') -> None: ...
def shareModesChanged(self, modes: typing.Union['QNearFieldShareManager.ShareModes', 'QNearFieldShareManager.ShareMode']) -> None: ...
def targetDetected(self, shareTarget: 'QNearFieldShareTarget') -> None: ...
def shareError(self) -> 'QNearFieldShareManager.ShareError': ...
def shareModes(self) -> 'QNearFieldShareManager.ShareModes': ...
def setShareModes(self, modes: typing.Union['QNearFieldShareManager.ShareModes', 'QNearFieldShareManager.ShareMode']) -> None: ...
@staticmethod
def supportedShareModes() -> 'QNearFieldShareManager.ShareModes': ...
class QNearFieldShareTarget(QtCore.QObject):
def shareFinished(self) -> None: ...
def error(self, error: QNearFieldShareManager.ShareError) -> None: ...
def shareError(self) -> QNearFieldShareManager.ShareError: ...
def isShareInProgress(self) -> bool: ...
def cancel(self) -> None: ...
@typing.overload
def share(self, message: QNdefMessage) -> bool: ...
@typing.overload
def share(self, files: typing.Iterable[QtCore.QFileInfo]) -> bool: ...
def shareModes(self) -> QNearFieldShareManager.ShareModes: ...
class QNearFieldTarget(QtCore.QObject):
class Error(int): ...
NoError = ... # type: 'QNearFieldTarget.Error'
UnknownError = ... # type: 'QNearFieldTarget.Error'
UnsupportedError = ... # type: 'QNearFieldTarget.Error'
TargetOutOfRangeError = ... # type: 'QNearFieldTarget.Error'
NoResponseError = ... # type: 'QNearFieldTarget.Error'
ChecksumMismatchError = ... # type: 'QNearFieldTarget.Error'
InvalidParametersError = ... # type: 'QNearFieldTarget.Error'
NdefReadError = ... # type: 'QNearFieldTarget.Error'
NdefWriteError = ... # type: 'QNearFieldTarget.Error'
CommandError = ... # type: 'QNearFieldTarget.Error'
class AccessMethod(int): ...
UnknownAccess = ... # type: 'QNearFieldTarget.AccessMethod'
NdefAccess = ... # type: 'QNearFieldTarget.AccessMethod'
TagTypeSpecificAccess = ... # type: 'QNearFieldTarget.AccessMethod'
LlcpAccess = ... # type: 'QNearFieldTarget.AccessMethod'
class Type(int): ...
ProprietaryTag = ... # type: 'QNearFieldTarget.Type'
NfcTagType1 = ... # type: 'QNearFieldTarget.Type'
NfcTagType2 = ... # type: 'QNearFieldTarget.Type'
NfcTagType3 = ... # type: 'QNearFieldTarget.Type'
NfcTagType4 = ... # type: 'QNearFieldTarget.Type'
MifareTag = ... # type: 'QNearFieldTarget.Type'
class AccessMethods(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QNearFieldTarget.AccessMethods', 'QNearFieldTarget.AccessMethod']) -> None: ...
@typing.overload
def __init__(self, a0: 'QNearFieldTarget.AccessMethods') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QNearFieldTarget.AccessMethods': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
class RequestId(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QNearFieldTarget.RequestId') -> None: ...
def refCount(self) -> int: ...
def isValid(self) -> bool: ...
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def maxCommandLength(self) -> int: ...
def disconnect(self) -> bool: ... # type: ignore[override]
def setKeepConnection(self, isPersistent: bool) -> bool: ...
def keepConnection(self) -> bool: ...
def error(self, error: 'QNearFieldTarget.Error', id: 'QNearFieldTarget.RequestId') -> None: ...
def requestCompleted(self, id: 'QNearFieldTarget.RequestId') -> None: ...
def ndefMessagesWritten(self) -> None: ...
def ndefMessageRead(self, message: QNdefMessage) -> None: ...
def disconnected(self) -> None: ...
def reportError(self, error: 'QNearFieldTarget.Error', id: 'QNearFieldTarget.RequestId') -> None: ...
def handleResponse(self, id: 'QNearFieldTarget.RequestId', response: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> bool: ...
def setResponseForRequest(self, id: 'QNearFieldTarget.RequestId', response: typing.Any, emitRequestCompleted: bool = ...) -> None: ...
def requestResponse(self, id: 'QNearFieldTarget.RequestId') -> typing.Any: ...
def waitForRequestCompleted(self, id: 'QNearFieldTarget.RequestId', msecs: int = ...) -> bool: ...
def sendCommands(self, commands: typing.Iterable[typing.Union[QtCore.QByteArray, bytes, bytearray]]) -> 'QNearFieldTarget.RequestId': ...
def sendCommand(self, command: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> 'QNearFieldTarget.RequestId': ...
def writeNdefMessages(self, messages: typing.Iterable[QNdefMessage]) -> 'QNearFieldTarget.RequestId': ...
def readNdefMessages(self) -> 'QNearFieldTarget.RequestId': ...
def hasNdefMessage(self) -> bool: ...
def isProcessingCommand(self) -> bool: ...
def accessMethods(self) -> 'QNearFieldTarget.AccessMethods': ...
def type(self) -> 'QNearFieldTarget.Type': ...
def url(self) -> QtCore.QUrl: ...
def uid(self) -> QtCore.QByteArray: ...
class QQmlNdefRecord(QtCore.QObject):
class TypeNameFormat(int): ...
Empty = ... # type: 'QQmlNdefRecord.TypeNameFormat'
NfcRtd = ... # type: 'QQmlNdefRecord.TypeNameFormat'
Mime = ... # type: 'QQmlNdefRecord.TypeNameFormat'
Uri = ... # type: 'QQmlNdefRecord.TypeNameFormat'
ExternalRtd = ... # type: 'QQmlNdefRecord.TypeNameFormat'
Unknown = ... # type: 'QQmlNdefRecord.TypeNameFormat'
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, record: QNdefRecord, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def recordChanged(self) -> None: ...
def typeNameFormatChanged(self) -> None: ...
def typeChanged(self) -> None: ...
def setRecord(self, record: QNdefRecord) -> None: ...
def record(self) -> QNdefRecord: ...
def typeNameFormat(self) -> 'QQmlNdefRecord.TypeNameFormat': ...
def setTypeNameFormat(self, typeNameFormat: 'QQmlNdefRecord.TypeNameFormat') -> None: ...
def setType(self, t: str) -> None: ...
def type(self) -> str: ...

View File

@ -0,0 +1,332 @@
# The PEP 484 type hints stub file for the QtOpenGL module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWidgets
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QGL(sip.simplewrapper):
class FormatOption(int): ...
DoubleBuffer = ... # type: 'QGL.FormatOption'
DepthBuffer = ... # type: 'QGL.FormatOption'
Rgba = ... # type: 'QGL.FormatOption'
AlphaChannel = ... # type: 'QGL.FormatOption'
AccumBuffer = ... # type: 'QGL.FormatOption'
StencilBuffer = ... # type: 'QGL.FormatOption'
StereoBuffers = ... # type: 'QGL.FormatOption'
DirectRendering = ... # type: 'QGL.FormatOption'
HasOverlay = ... # type: 'QGL.FormatOption'
SampleBuffers = ... # type: 'QGL.FormatOption'
SingleBuffer = ... # type: 'QGL.FormatOption'
NoDepthBuffer = ... # type: 'QGL.FormatOption'
ColorIndex = ... # type: 'QGL.FormatOption'
NoAlphaChannel = ... # type: 'QGL.FormatOption'
NoAccumBuffer = ... # type: 'QGL.FormatOption'
NoStencilBuffer = ... # type: 'QGL.FormatOption'
NoStereoBuffers = ... # type: 'QGL.FormatOption'
IndirectRendering = ... # type: 'QGL.FormatOption'
NoOverlay = ... # type: 'QGL.FormatOption'
NoSampleBuffers = ... # type: 'QGL.FormatOption'
DeprecatedFunctions = ... # type: 'QGL.FormatOption'
NoDeprecatedFunctions = ... # type: 'QGL.FormatOption'
class FormatOptions(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QGL.FormatOptions', 'QGL.FormatOption']) -> None: ...
@typing.overload
def __init__(self, a0: 'QGL.FormatOptions') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QGL.FormatOptions': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
class QGLFormat(sip.simplewrapper):
class OpenGLContextProfile(int): ...
NoProfile = ... # type: 'QGLFormat.OpenGLContextProfile'
CoreProfile = ... # type: 'QGLFormat.OpenGLContextProfile'
CompatibilityProfile = ... # type: 'QGLFormat.OpenGLContextProfile'
class OpenGLVersionFlag(int): ...
OpenGL_Version_None = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_1_1 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_1_2 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_1_3 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_1_4 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_1_5 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_2_0 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_2_1 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_3_0 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_3_1 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_3_2 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_3_3 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_4_0 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_4_1 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_4_2 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_Version_4_3 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_ES_Common_Version_1_0 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_ES_CommonLite_Version_1_0 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_ES_Common_Version_1_1 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_ES_CommonLite_Version_1_1 = ... # type: 'QGLFormat.OpenGLVersionFlag'
OpenGL_ES_Version_2_0 = ... # type: 'QGLFormat.OpenGLVersionFlag'
class OpenGLVersionFlags(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QGLFormat.OpenGLVersionFlags', 'QGLFormat.OpenGLVersionFlag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QGLFormat.OpenGLVersionFlags') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QGLFormat.OpenGLVersionFlags': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, options: typing.Union[QGL.FormatOptions, QGL.FormatOption], plane: int = ...) -> None: ...
@typing.overload
def __init__(self, other: 'QGLFormat') -> None: ...
def profile(self) -> 'QGLFormat.OpenGLContextProfile': ...
def setProfile(self, profile: 'QGLFormat.OpenGLContextProfile') -> None: ...
def minorVersion(self) -> int: ...
def majorVersion(self) -> int: ...
def setVersion(self, major: int, minor: int) -> None: ...
@staticmethod
def openGLVersionFlags() -> 'QGLFormat.OpenGLVersionFlags': ...
def swapInterval(self) -> int: ...
def setSwapInterval(self, interval: int) -> None: ...
def blueBufferSize(self) -> int: ...
def setBlueBufferSize(self, size: int) -> None: ...
def greenBufferSize(self) -> int: ...
def setGreenBufferSize(self, size: int) -> None: ...
def redBufferSize(self) -> int: ...
def setRedBufferSize(self, size: int) -> None: ...
def sampleBuffers(self) -> bool: ...
def hasOverlay(self) -> bool: ...
def directRendering(self) -> bool: ...
def stereo(self) -> bool: ...
def stencil(self) -> bool: ...
def accum(self) -> bool: ...
def alpha(self) -> bool: ...
def rgba(self) -> bool: ...
def depth(self) -> bool: ...
def doubleBuffer(self) -> bool: ...
@staticmethod
def hasOpenGLOverlays() -> bool: ...
@staticmethod
def hasOpenGL() -> bool: ...
@staticmethod
def setDefaultOverlayFormat(f: 'QGLFormat') -> None: ...
@staticmethod
def defaultOverlayFormat() -> 'QGLFormat': ...
@staticmethod
def setDefaultFormat(f: 'QGLFormat') -> None: ...
@staticmethod
def defaultFormat() -> 'QGLFormat': ...
def testOption(self, opt: typing.Union[QGL.FormatOptions, QGL.FormatOption]) -> bool: ...
def setOption(self, opt: typing.Union[QGL.FormatOptions, QGL.FormatOption]) -> None: ...
def setPlane(self, plane: int) -> None: ...
def plane(self) -> int: ...
def setOverlay(self, enable: bool) -> None: ...
def setDirectRendering(self, enable: bool) -> None: ...
def setStereo(self, enable: bool) -> None: ...
def setStencil(self, enable: bool) -> None: ...
def setAccum(self, enable: bool) -> None: ...
def setAlpha(self, enable: bool) -> None: ...
def setRgba(self, enable: bool) -> None: ...
def setDepth(self, enable: bool) -> None: ...
def setDoubleBuffer(self, enable: bool) -> None: ...
def samples(self) -> int: ...
def setSamples(self, numSamples: int) -> None: ...
def setSampleBuffers(self, enable: bool) -> None: ...
def stencilBufferSize(self) -> int: ...
def setStencilBufferSize(self, size: int) -> None: ...
def alphaBufferSize(self) -> int: ...
def setAlphaBufferSize(self, size: int) -> None: ...
def accumBufferSize(self) -> int: ...
def setAccumBufferSize(self, size: int) -> None: ...
def depthBufferSize(self) -> int: ...
def setDepthBufferSize(self, size: int) -> None: ...
class QGLContext(sip.wrapper):
class BindOption(int): ...
NoBindOption = ... # type: 'QGLContext.BindOption'
InvertedYBindOption = ... # type: 'QGLContext.BindOption'
MipmapBindOption = ... # type: 'QGLContext.BindOption'
PremultipliedAlphaBindOption = ... # type: 'QGLContext.BindOption'
LinearFilteringBindOption = ... # type: 'QGLContext.BindOption'
DefaultBindOption = ... # type: 'QGLContext.BindOption'
class BindOptions(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QGLContext.BindOptions', 'QGLContext.BindOption']) -> None: ...
@typing.overload
def __init__(self, a0: 'QGLContext.BindOptions') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QGLContext.BindOptions': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
def __init__(self, format: QGLFormat) -> None: ...
def moveToThread(self, thread: QtCore.QThread) -> None: ...
@staticmethod
def areSharing(context1: 'QGLContext', context2: 'QGLContext') -> bool: ...
def setInitialized(self, on: bool) -> None: ...
def initialized(self) -> bool: ...
def setWindowCreated(self, on: bool) -> None: ...
def windowCreated(self) -> bool: ...
def deviceIsPixmap(self) -> bool: ...
def chooseContext(self, shareContext: typing.Optional['QGLContext'] = ...) -> bool: ...
@staticmethod
def currentContext() -> 'QGLContext': ...
def overlayTransparentColor(self) -> QtGui.QColor: ...
def device(self) -> QtGui.QPaintDevice: ...
def getProcAddress(self, proc: str) -> sip.voidptr: ...
@staticmethod
def textureCacheLimit() -> int: ...
@staticmethod
def setTextureCacheLimit(size: int) -> None: ...
def deleteTexture(self, tx_id: int) -> None: ...
@typing.overload
def drawTexture(self, target: QtCore.QRectF, textureId: int, textureTarget: int = ...) -> None: ...
@typing.overload
def drawTexture(self, point: typing.Union[QtCore.QPointF, QtCore.QPoint], textureId: int, textureTarget: int = ...) -> None: ...
@typing.overload
def bindTexture(self, image: QtGui.QImage, target: int = ..., format: int = ...) -> int: ...
@typing.overload
def bindTexture(self, pixmap: QtGui.QPixmap, target: int = ..., format: int = ...) -> int: ...
@typing.overload
def bindTexture(self, fileName: str) -> int: ...
@typing.overload
def bindTexture(self, image: QtGui.QImage, target: int, format: int, options: typing.Union['QGLContext.BindOptions', 'QGLContext.BindOption']) -> int: ...
@typing.overload
def bindTexture(self, pixmap: QtGui.QPixmap, target: int, format: int, options: typing.Union['QGLContext.BindOptions', 'QGLContext.BindOption']) -> int: ...
def swapBuffers(self) -> None: ...
def doneCurrent(self) -> None: ...
def makeCurrent(self) -> None: ...
def setFormat(self, format: QGLFormat) -> None: ...
def requestedFormat(self) -> QGLFormat: ...
def format(self) -> QGLFormat: ...
def reset(self) -> None: ...
def isSharing(self) -> bool: ...
def isValid(self) -> bool: ...
def create(self, shareContext: typing.Optional['QGLContext'] = ...) -> bool: ...
class QGLWidget(QtWidgets.QWidget):
@typing.overload
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ..., shareWidget: typing.Optional['QGLWidget'] = ..., flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
@typing.overload
def __init__(self, context: QGLContext, parent: typing.Optional[QtWidgets.QWidget] = ..., shareWidget: typing.Optional['QGLWidget'] = ..., flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
@typing.overload
def __init__(self, format: QGLFormat, parent: typing.Optional[QtWidgets.QWidget] = ..., shareWidget: typing.Optional['QGLWidget'] = ..., flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
def glDraw(self) -> None: ...
def glInit(self) -> None: ...
def resizeEvent(self, a0: QtGui.QResizeEvent) -> None: ...
def paintEvent(self, a0: QtGui.QPaintEvent) -> None: ...
def autoBufferSwap(self) -> bool: ...
def setAutoBufferSwap(self, on: bool) -> None: ...
def paintOverlayGL(self) -> None: ...
def resizeOverlayGL(self, w: int, h: int) -> None: ...
def initializeOverlayGL(self) -> None: ...
def paintGL(self) -> None: ...
def resizeGL(self, w: int, h: int) -> None: ...
def initializeGL(self) -> None: ...
def event(self, a0: QtCore.QEvent) -> bool: ...
def updateOverlayGL(self) -> None: ...
def updateGL(self) -> None: ...
def deleteTexture(self, tx_id: int) -> None: ...
@typing.overload
def drawTexture(self, target: QtCore.QRectF, textureId: int, textureTarget: int = ...) -> None: ...
@typing.overload
def drawTexture(self, point: typing.Union[QtCore.QPointF, QtCore.QPoint], textureId: int, textureTarget: int = ...) -> None: ...
@typing.overload
def bindTexture(self, image: QtGui.QImage, target: int = ..., format: int = ...) -> int: ...
@typing.overload
def bindTexture(self, pixmap: QtGui.QPixmap, target: int = ..., format: int = ...) -> int: ...
@typing.overload
def bindTexture(self, fileName: str) -> int: ...
@typing.overload
def bindTexture(self, image: QtGui.QImage, target: int, format: int, options: typing.Union[QGLContext.BindOptions, QGLContext.BindOption]) -> int: ...
@typing.overload
def bindTexture(self, pixmap: QtGui.QPixmap, target: int, format: int, options: typing.Union[QGLContext.BindOptions, QGLContext.BindOption]) -> int: ...
def paintEngine(self) -> QtGui.QPaintEngine: ...
@typing.overload
def renderText(self, x: int, y: int, str: str, font: QtGui.QFont = ...) -> None: ...
@typing.overload
def renderText(self, x: float, y: float, z: float, str: str, font: QtGui.QFont = ...) -> None: ...
@staticmethod
def convertToGLFormat(img: QtGui.QImage) -> QtGui.QImage: ...
def overlayContext(self) -> QGLContext: ...
def makeOverlayCurrent(self) -> None: ...
def grabFrameBuffer(self, withAlpha: bool = ...) -> QtGui.QImage: ...
def renderPixmap(self, width: int = ..., height: int = ..., useContext: bool = ...) -> QtGui.QPixmap: ...
def setContext(self, context: QGLContext, shareContext: typing.Optional[QGLContext] = ..., deleteOldContext: bool = ...) -> None: ...
def context(self) -> QGLContext: ...
def format(self) -> QGLFormat: ...
def swapBuffers(self) -> None: ...
def doubleBuffer(self) -> bool: ...
def doneCurrent(self) -> None: ...
def makeCurrent(self) -> None: ...
def isSharing(self) -> bool: ...
def isValid(self) -> bool: ...
def qglClearColor(self, c: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def qglColor(self, c: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...

View File

@ -0,0 +1,534 @@
# The PEP 484 type hints stub file for the QtPositioning module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QGeoAddress(sip.wrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoAddress') -> None: ...
def isTextGenerated(self) -> bool: ...
def clear(self) -> None: ...
def isEmpty(self) -> bool: ...
def setStreet(self, street: str) -> None: ...
def street(self) -> str: ...
def setPostalCode(self, postalCode: str) -> None: ...
def postalCode(self) -> str: ...
def setDistrict(self, district: str) -> None: ...
def district(self) -> str: ...
def setCity(self, city: str) -> None: ...
def city(self) -> str: ...
def setCounty(self, county: str) -> None: ...
def county(self) -> str: ...
def setState(self, state: str) -> None: ...
def state(self) -> str: ...
def setCountryCode(self, countryCode: str) -> None: ...
def countryCode(self) -> str: ...
def setCountry(self, country: str) -> None: ...
def country(self) -> str: ...
def setText(self, text: str) -> None: ...
def text(self) -> str: ...
class QGeoAreaMonitorInfo(sip.wrapper):
@typing.overload
def __init__(self, name: str = ...) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoAreaMonitorInfo') -> None: ...
def setNotificationParameters(self, parameters: typing.Dict[str, typing.Any]) -> None: ...
def notificationParameters(self) -> typing.Dict[str, typing.Any]: ...
def setPersistent(self, isPersistent: bool) -> None: ...
def isPersistent(self) -> bool: ...
def setExpiration(self, expiry: typing.Union[QtCore.QDateTime, datetime.datetime]) -> None: ...
def expiration(self) -> QtCore.QDateTime: ...
def setArea(self, newShape: 'QGeoShape') -> None: ...
def area(self) -> 'QGeoShape': ...
def isValid(self) -> bool: ...
def identifier(self) -> str: ...
def setName(self, name: str) -> None: ...
def name(self) -> str: ...
class QGeoAreaMonitorSource(QtCore.QObject):
class AreaMonitorFeature(int): ...
PersistentAreaMonitorFeature = ... # type: 'QGeoAreaMonitorSource.AreaMonitorFeature'
AnyAreaMonitorFeature = ... # type: 'QGeoAreaMonitorSource.AreaMonitorFeature'
class Error(int): ...
AccessError = ... # type: 'QGeoAreaMonitorSource.Error'
InsufficientPositionInfo = ... # type: 'QGeoAreaMonitorSource.Error'
UnknownSourceError = ... # type: 'QGeoAreaMonitorSource.Error'
NoError = ... # type: 'QGeoAreaMonitorSource.Error'
class AreaMonitorFeatures(sip.wrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QGeoAreaMonitorSource.AreaMonitorFeatures', 'QGeoAreaMonitorSource.AreaMonitorFeature']) -> None: ...
@typing.overload
def __init__(self, a0: 'QGeoAreaMonitorSource.AreaMonitorFeatures') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QGeoAreaMonitorSource.AreaMonitorFeatures': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
def __init__(self, parent: QtCore.QObject) -> None: ...
def monitorExpired(self, monitor: QGeoAreaMonitorInfo) -> None: ...
def areaExited(self, monitor: QGeoAreaMonitorInfo, update: 'QGeoPositionInfo') -> None: ...
def areaEntered(self, monitor: QGeoAreaMonitorInfo, update: 'QGeoPositionInfo') -> None: ...
@typing.overload
def activeMonitors(self) -> typing.List[QGeoAreaMonitorInfo]: ...
@typing.overload
def activeMonitors(self, lookupArea: 'QGeoShape') -> typing.List[QGeoAreaMonitorInfo]: ...
def requestUpdate(self, monitor: QGeoAreaMonitorInfo, signal: str) -> bool: ...
def stopMonitoring(self, monitor: QGeoAreaMonitorInfo) -> bool: ...
def startMonitoring(self, monitor: QGeoAreaMonitorInfo) -> bool: ...
def supportedAreaMonitorFeatures(self) -> 'QGeoAreaMonitorSource.AreaMonitorFeatures': ...
@typing.overload
def error(self) -> 'QGeoAreaMonitorSource.Error': ...
@typing.overload
def error(self, error: 'QGeoAreaMonitorSource.Error') -> None: ...
def sourceName(self) -> str: ...
def positionInfoSource(self) -> 'QGeoPositionInfoSource': ...
def setPositionInfoSource(self, source: 'QGeoPositionInfoSource') -> None: ...
@staticmethod
def availableSources() -> typing.List[str]: ...
@staticmethod
def createSource(sourceName: str, parent: QtCore.QObject) -> 'QGeoAreaMonitorSource': ...
@staticmethod
def createDefaultSource(parent: QtCore.QObject) -> 'QGeoAreaMonitorSource': ...
class QGeoShape(sip.wrapper):
class ShapeType(int): ...
UnknownType = ... # type: 'QGeoShape.ShapeType'
RectangleType = ... # type: 'QGeoShape.ShapeType'
CircleType = ... # type: 'QGeoShape.ShapeType'
PathType = ... # type: 'QGeoShape.ShapeType'
PolygonType = ... # type: 'QGeoShape.ShapeType'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoShape') -> None: ...
def boundingGeoRectangle(self) -> 'QGeoRectangle': ...
def toString(self) -> str: ...
def center(self) -> 'QGeoCoordinate': ...
def extendShape(self, coordinate: 'QGeoCoordinate') -> None: ...
def contains(self, coordinate: 'QGeoCoordinate') -> bool: ...
def isEmpty(self) -> bool: ...
def isValid(self) -> bool: ...
def type(self) -> 'QGeoShape.ShapeType': ...
class QGeoCircle(QGeoShape):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, center: 'QGeoCoordinate', radius: float = ...) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoCircle') -> None: ...
@typing.overload
def __init__(self, other: QGeoShape) -> None: ...
def extendCircle(self, coordinate: 'QGeoCoordinate') -> None: ...
def toString(self) -> str: ...
def translated(self, degreesLatitude: float, degreesLongitude: float) -> 'QGeoCircle': ...
def translate(self, degreesLatitude: float, degreesLongitude: float) -> None: ...
def radius(self) -> float: ...
def setRadius(self, radius: float) -> None: ...
def center(self) -> 'QGeoCoordinate': ...
def setCenter(self, center: 'QGeoCoordinate') -> None: ...
class QGeoCoordinate(sip.wrapper):
class CoordinateFormat(int): ...
Degrees = ... # type: 'QGeoCoordinate.CoordinateFormat'
DegreesWithHemisphere = ... # type: 'QGeoCoordinate.CoordinateFormat'
DegreesMinutes = ... # type: 'QGeoCoordinate.CoordinateFormat'
DegreesMinutesWithHemisphere = ... # type: 'QGeoCoordinate.CoordinateFormat'
DegreesMinutesSeconds = ... # type: 'QGeoCoordinate.CoordinateFormat'
DegreesMinutesSecondsWithHemisphere = ... # type: 'QGeoCoordinate.CoordinateFormat'
class CoordinateType(int): ...
InvalidCoordinate = ... # type: 'QGeoCoordinate.CoordinateType'
Coordinate2D = ... # type: 'QGeoCoordinate.CoordinateType'
Coordinate3D = ... # type: 'QGeoCoordinate.CoordinateType'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, latitude: float, longitude: float) -> None: ...
@typing.overload
def __init__(self, latitude: float, longitude: float, altitude: float) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoCoordinate') -> None: ...
def __hash__(self) -> int: ...
def toString(self, format: 'QGeoCoordinate.CoordinateFormat' = ...) -> str: ...
def atDistanceAndAzimuth(self, distance: float, azimuth: float, distanceUp: float = ...) -> 'QGeoCoordinate': ...
def azimuthTo(self, other: 'QGeoCoordinate') -> float: ...
def distanceTo(self, other: 'QGeoCoordinate') -> float: ...
def altitude(self) -> float: ...
def setAltitude(self, altitude: float) -> None: ...
def longitude(self) -> float: ...
def setLongitude(self, longitude: float) -> None: ...
def latitude(self) -> float: ...
def setLatitude(self, latitude: float) -> None: ...
def type(self) -> 'QGeoCoordinate.CoordinateType': ...
def isValid(self) -> bool: ...
class QGeoLocation(sip.wrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoLocation') -> None: ...
def setExtendedAttributes(self, data: typing.Dict[str, typing.Any]) -> None: ...
def extendedAttributes(self) -> typing.Dict[str, typing.Any]: ...
def isEmpty(self) -> bool: ...
def setBoundingBox(self, box: 'QGeoRectangle') -> None: ...
def boundingBox(self) -> 'QGeoRectangle': ...
def setCoordinate(self, position: QGeoCoordinate) -> None: ...
def coordinate(self) -> QGeoCoordinate: ...
def setAddress(self, address: QGeoAddress) -> None: ...
def address(self) -> QGeoAddress: ...
class QGeoPath(QGeoShape):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, path: typing.Iterable[QGeoCoordinate], width: float = ...) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoPath') -> None: ...
@typing.overload
def __init__(self, other: QGeoShape) -> None: ...
def clearPath(self) -> None: ...
def size(self) -> int: ...
def toString(self) -> str: ...
@typing.overload
def removeCoordinate(self, coordinate: QGeoCoordinate) -> None: ...
@typing.overload
def removeCoordinate(self, index: int) -> None: ...
def containsCoordinate(self, coordinate: QGeoCoordinate) -> bool: ...
def coordinateAt(self, index: int) -> QGeoCoordinate: ...
def replaceCoordinate(self, index: int, coordinate: QGeoCoordinate) -> None: ...
def insertCoordinate(self, index: int, coordinate: QGeoCoordinate) -> None: ...
def addCoordinate(self, coordinate: QGeoCoordinate) -> None: ...
def length(self, indexFrom: int = ..., indexTo: int = ...) -> float: ...
def translated(self, degreesLatitude: float, degreesLongitude: float) -> 'QGeoPath': ...
def translate(self, degreesLatitude: float, degreesLongitude: float) -> None: ...
def width(self) -> float: ...
def setWidth(self, width: float) -> None: ...
def path(self) -> typing.List[QGeoCoordinate]: ...
def setPath(self, path: typing.Iterable[QGeoCoordinate]) -> None: ...
class QGeoPolygon(QGeoShape):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, path: typing.Iterable[QGeoCoordinate]) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoPolygon') -> None: ...
@typing.overload
def __init__(self, other: QGeoShape) -> None: ...
def perimeter(self) -> typing.List[typing.Any]: ...
def setPerimeter(self, path: typing.Iterable[typing.Any]) -> None: ...
def holesCount(self) -> int: ...
def removeHole(self, index: int) -> None: ...
def holePath(self, index: int) -> typing.List[QGeoCoordinate]: ...
def hole(self, index: int) -> typing.List[typing.Any]: ...
@typing.overload
def addHole(self, holePath: typing.Iterable[QGeoCoordinate]) -> None: ...
@typing.overload
def addHole(self, holePath: typing.Any) -> None: ...
def toString(self) -> str: ...
@typing.overload
def removeCoordinate(self, coordinate: QGeoCoordinate) -> None: ...
@typing.overload
def removeCoordinate(self, index: int) -> None: ...
def containsCoordinate(self, coordinate: QGeoCoordinate) -> bool: ...
def coordinateAt(self, index: int) -> QGeoCoordinate: ...
def replaceCoordinate(self, index: int, coordinate: QGeoCoordinate) -> None: ...
def insertCoordinate(self, index: int, coordinate: QGeoCoordinate) -> None: ...
def addCoordinate(self, coordinate: QGeoCoordinate) -> None: ...
def size(self) -> int: ...
def length(self, indexFrom: int = ..., indexTo: int = ...) -> float: ...
def translated(self, degreesLatitude: float, degreesLongitude: float) -> 'QGeoPolygon': ...
def translate(self, degreesLatitude: float, degreesLongitude: float) -> None: ...
def path(self) -> typing.List[QGeoCoordinate]: ...
def setPath(self, path: typing.Iterable[QGeoCoordinate]) -> None: ...
class QGeoPositionInfo(sip.wrapper):
class Attribute(int): ...
Direction = ... # type: 'QGeoPositionInfo.Attribute'
GroundSpeed = ... # type: 'QGeoPositionInfo.Attribute'
VerticalSpeed = ... # type: 'QGeoPositionInfo.Attribute'
MagneticVariation = ... # type: 'QGeoPositionInfo.Attribute'
HorizontalAccuracy = ... # type: 'QGeoPositionInfo.Attribute'
VerticalAccuracy = ... # type: 'QGeoPositionInfo.Attribute'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, coordinate: QGeoCoordinate, updateTime: typing.Union[QtCore.QDateTime, datetime.datetime]) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoPositionInfo') -> None: ...
def hasAttribute(self, attribute: 'QGeoPositionInfo.Attribute') -> bool: ...
def removeAttribute(self, attribute: 'QGeoPositionInfo.Attribute') -> None: ...
def attribute(self, attribute: 'QGeoPositionInfo.Attribute') -> float: ...
def setAttribute(self, attribute: 'QGeoPositionInfo.Attribute', value: float) -> None: ...
def coordinate(self) -> QGeoCoordinate: ...
def setCoordinate(self, coordinate: QGeoCoordinate) -> None: ...
def timestamp(self) -> QtCore.QDateTime: ...
def setTimestamp(self, timestamp: typing.Union[QtCore.QDateTime, datetime.datetime]) -> None: ...
def isValid(self) -> bool: ...
class QGeoPositionInfoSource(QtCore.QObject):
class PositioningMethod(int): ...
NoPositioningMethods = ... # type: 'QGeoPositionInfoSource.PositioningMethod'
SatellitePositioningMethods = ... # type: 'QGeoPositionInfoSource.PositioningMethod'
NonSatellitePositioningMethods = ... # type: 'QGeoPositionInfoSource.PositioningMethod'
AllPositioningMethods = ... # type: 'QGeoPositionInfoSource.PositioningMethod'
class Error(int): ...
AccessError = ... # type: 'QGeoPositionInfoSource.Error'
ClosedError = ... # type: 'QGeoPositionInfoSource.Error'
UnknownSourceError = ... # type: 'QGeoPositionInfoSource.Error'
NoError = ... # type: 'QGeoPositionInfoSource.Error'
class PositioningMethods(sip.wrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QGeoPositionInfoSource.PositioningMethods', 'QGeoPositionInfoSource.PositioningMethod']) -> None: ...
@typing.overload
def __init__(self, a0: 'QGeoPositionInfoSource.PositioningMethods') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QGeoPositionInfoSource.PositioningMethods': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
def __init__(self, parent: QtCore.QObject) -> None: ...
def backendProperty(self, name: str) -> typing.Any: ...
def setBackendProperty(self, name: str, value: typing.Any) -> bool: ...
def supportedPositioningMethodsChanged(self) -> None: ...
def updateTimeout(self) -> None: ...
def positionUpdated(self, update: QGeoPositionInfo) -> None: ...
def requestUpdate(self, timeout: int = ...) -> None: ...
def stopUpdates(self) -> None: ...
def startUpdates(self) -> None: ...
# If the error signal is real, it isn't accessible in PyQt 5.15.1
def error(self) -> 'QGeoPositionInfoSource.Error': ...
@staticmethod
def availableSources() -> typing.List[str]: ...
@typing.overload
@staticmethod
def createSource(sourceName: str, parent: QtCore.QObject) -> 'QGeoPositionInfoSource': ...
@typing.overload
@staticmethod
def createSource(sourceName: str, parameters: typing.Dict[str, typing.Any], parent: QtCore.QObject) -> 'QGeoPositionInfoSource': ...
@typing.overload
@staticmethod
def createDefaultSource(parent: QtCore.QObject) -> 'QGeoPositionInfoSource': ...
@typing.overload
@staticmethod
def createDefaultSource(parameters: typing.Dict[str, typing.Any], parent: QtCore.QObject) -> 'QGeoPositionInfoSource': ...
def sourceName(self) -> str: ...
def minimumUpdateInterval(self) -> int: ...
def supportedPositioningMethods(self) -> 'QGeoPositionInfoSource.PositioningMethods': ...
def lastKnownPosition(self, fromSatellitePositioningMethodsOnly: bool = ...) -> QGeoPositionInfo: ...
def preferredPositioningMethods(self) -> 'QGeoPositionInfoSource.PositioningMethods': ...
def setPreferredPositioningMethods(self, methods: typing.Union['QGeoPositionInfoSource.PositioningMethods', 'QGeoPositionInfoSource.PositioningMethod']) -> None: ...
def updateInterval(self) -> int: ...
def setUpdateInterval(self, msec: int) -> None: ...
class QGeoRectangle(QGeoShape):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, center: QGeoCoordinate, degreesWidth: float, degreesHeight: float) -> None: ...
@typing.overload
def __init__(self, topLeft: QGeoCoordinate, bottomRight: QGeoCoordinate) -> None: ...
@typing.overload
def __init__(self, coordinates: typing.Iterable[QGeoCoordinate]) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoRectangle') -> None: ...
@typing.overload
def __init__(self, other: QGeoShape) -> None: ...
def extendRectangle(self, coordinate: QGeoCoordinate) -> None: ...
def toString(self) -> str: ...
def united(self, rectangle: 'QGeoRectangle') -> 'QGeoRectangle': ...
def translated(self, degreesLatitude: float, degreesLongitude: float) -> 'QGeoRectangle': ...
def translate(self, degreesLatitude: float, degreesLongitude: float) -> None: ...
def intersects(self, rectangle: 'QGeoRectangle') -> bool: ...
def contains(self, rectangle: 'QGeoRectangle') -> bool: ... # type: ignore[override]
def height(self) -> float: ...
def setHeight(self, degreesHeight: float) -> None: ...
def width(self) -> float: ...
def setWidth(self, degreesWidth: float) -> None: ...
def center(self) -> QGeoCoordinate: ...
def setCenter(self, center: QGeoCoordinate) -> None: ...
def bottomRight(self) -> QGeoCoordinate: ...
def setBottomRight(self, bottomRight: QGeoCoordinate) -> None: ...
def bottomLeft(self) -> QGeoCoordinate: ...
def setBottomLeft(self, bottomLeft: QGeoCoordinate) -> None: ...
def topRight(self) -> QGeoCoordinate: ...
def setTopRight(self, topRight: QGeoCoordinate) -> None: ...
def topLeft(self) -> QGeoCoordinate: ...
def setTopLeft(self, topLeft: QGeoCoordinate) -> None: ...
class QGeoSatelliteInfo(sip.wrapper):
class SatelliteSystem(int): ...
Undefined = ... # type: 'QGeoSatelliteInfo.SatelliteSystem'
GPS = ... # type: 'QGeoSatelliteInfo.SatelliteSystem'
GLONASS = ... # type: 'QGeoSatelliteInfo.SatelliteSystem'
class Attribute(int): ...
Elevation = ... # type: 'QGeoSatelliteInfo.Attribute'
Azimuth = ... # type: 'QGeoSatelliteInfo.Attribute'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QGeoSatelliteInfo') -> None: ...
def hasAttribute(self, attribute: 'QGeoSatelliteInfo.Attribute') -> bool: ...
def removeAttribute(self, attribute: 'QGeoSatelliteInfo.Attribute') -> None: ...
def attribute(self, attribute: 'QGeoSatelliteInfo.Attribute') -> float: ...
def setAttribute(self, attribute: 'QGeoSatelliteInfo.Attribute', value: float) -> None: ...
def signalStrength(self) -> int: ...
def setSignalStrength(self, signalStrength: int) -> None: ...
def satelliteIdentifier(self) -> int: ...
def setSatelliteIdentifier(self, satId: int) -> None: ...
def satelliteSystem(self) -> 'QGeoSatelliteInfo.SatelliteSystem': ...
def setSatelliteSystem(self, system: 'QGeoSatelliteInfo.SatelliteSystem') -> None: ...
class QGeoSatelliteInfoSource(QtCore.QObject):
class Error(int): ...
AccessError = ... # type: 'QGeoSatelliteInfoSource.Error'
ClosedError = ... # type: 'QGeoSatelliteInfoSource.Error'
NoError = ... # type: 'QGeoSatelliteInfoSource.Error'
UnknownSourceError = ... # type: 'QGeoSatelliteInfoSource.Error'
def __init__(self, parent: QtCore.QObject) -> None: ...
def requestTimeout(self) -> None: ...
def satellitesInUseUpdated(self, satellites: typing.Iterable[QGeoSatelliteInfo]) -> None: ...
def satellitesInViewUpdated(self, satellites: typing.Iterable[QGeoSatelliteInfo]) -> None: ...
def requestUpdate(self, timeout: int = ...) -> None: ...
def stopUpdates(self) -> None: ...
def startUpdates(self) -> None: ...
@typing.overload
def error(self) -> 'QGeoSatelliteInfoSource.Error': ...
@typing.overload
def error(self, a0: 'QGeoSatelliteInfoSource.Error') -> None: ...
def minimumUpdateInterval(self) -> int: ...
def updateInterval(self) -> int: ...
def setUpdateInterval(self, msec: int) -> None: ...
def sourceName(self) -> str: ...
@staticmethod
def availableSources() -> typing.List[str]: ...
@typing.overload
@staticmethod
def createSource(sourceName: str, parent: QtCore.QObject) -> 'QGeoSatelliteInfoSource': ...
@typing.overload
@staticmethod
def createSource(sourceName: str, parameters: typing.Dict[str, typing.Any], parent: QtCore.QObject) -> 'QGeoSatelliteInfoSource': ...
@typing.overload
@staticmethod
def createDefaultSource(parent: QtCore.QObject) -> 'QGeoSatelliteInfoSource': ...
@typing.overload
@staticmethod
def createDefaultSource(parameters: typing.Dict[str, typing.Any], parent: QtCore.QObject) -> 'QGeoSatelliteInfoSource': ...
class QNmeaPositionInfoSource(QGeoPositionInfoSource):
class UpdateMode(int): ...
RealTimeMode = ... # type: 'QNmeaPositionInfoSource.UpdateMode'
SimulationMode = ... # type: 'QNmeaPositionInfoSource.UpdateMode'
def __init__(self, updateMode: 'QNmeaPositionInfoSource.UpdateMode', parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def userEquivalentRangeError(self) -> float: ...
def setUserEquivalentRangeError(self, uere: float) -> None: ...
def parsePosInfoFromNmeaData(self, data: str, size: int, posInfo: QGeoPositionInfo) -> typing.Tuple[bool, bool]: ...
def requestUpdate(self, timeout: int = ...) -> None: ...
def stopUpdates(self) -> None: ...
def startUpdates(self) -> None: ...
def error(self) -> QGeoPositionInfoSource.Error: ...
def minimumUpdateInterval(self) -> int: ...
def supportedPositioningMethods(self) -> QGeoPositionInfoSource.PositioningMethods: ...
def lastKnownPosition(self, fromSatellitePositioningMethodsOnly: bool = ...) -> QGeoPositionInfo: ...
def setUpdateInterval(self, msec: int) -> None: ...
def device(self) -> QtCore.QIODevice: ...
def setDevice(self, source: QtCore.QIODevice) -> None: ...
def updateMode(self) -> 'QNmeaPositionInfoSource.UpdateMode': ...

View File

@ -0,0 +1,438 @@
# The PEP 484 type hints stub file for the QtPrintSupport module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWidgets
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QAbstractPrintDialog(QtWidgets.QDialog):
class PrintDialogOption(int): ...
None_ = ... # type: 'QAbstractPrintDialog.PrintDialogOption'
PrintToFile = ... # type: 'QAbstractPrintDialog.PrintDialogOption'
PrintSelection = ... # type: 'QAbstractPrintDialog.PrintDialogOption'
PrintPageRange = ... # type: 'QAbstractPrintDialog.PrintDialogOption'
PrintCollateCopies = ... # type: 'QAbstractPrintDialog.PrintDialogOption'
PrintShowPageSize = ... # type: 'QAbstractPrintDialog.PrintDialogOption'
PrintCurrentPage = ... # type: 'QAbstractPrintDialog.PrintDialogOption'
class PrintRange(int): ...
AllPages = ... # type: 'QAbstractPrintDialog.PrintRange'
Selection = ... # type: 'QAbstractPrintDialog.PrintRange'
PageRange = ... # type: 'QAbstractPrintDialog.PrintRange'
CurrentPage = ... # type: 'QAbstractPrintDialog.PrintRange'
class PrintDialogOptions(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QAbstractPrintDialog.PrintDialogOptions', 'QAbstractPrintDialog.PrintDialogOption']) -> None: ...
@typing.overload
def __init__(self, a0: 'QAbstractPrintDialog.PrintDialogOptions') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QAbstractPrintDialog.PrintDialogOptions': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
def __init__(self, printer: 'QPrinter', parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def enabledOptions(self) -> 'QAbstractPrintDialog.PrintDialogOptions': ...
def setEnabledOptions(self, options: typing.Union['QAbstractPrintDialog.PrintDialogOptions', 'QAbstractPrintDialog.PrintDialogOption']) -> None: ...
def setOptionTabs(self, tabs: typing.Iterable[QtWidgets.QWidget]) -> None: ...
def printer(self) -> 'QPrinter': ...
def toPage(self) -> int: ...
def fromPage(self) -> int: ...
def setFromTo(self, fromPage: int, toPage: int) -> None: ...
def maxPage(self) -> int: ...
def minPage(self) -> int: ...
def setMinMax(self, min: int, max: int) -> None: ...
def printRange(self) -> 'QAbstractPrintDialog.PrintRange': ...
def setPrintRange(self, range: 'QAbstractPrintDialog.PrintRange') -> None: ...
def exec(self) -> int: ...
def exec_(self) -> int: ...
class QPageSetupDialog(QtWidgets.QDialog):
@typing.overload
def __init__(self, printer: 'QPrinter', parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
@typing.overload
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def printer(self) -> 'QPrinter': ...
def done(self, result: int) -> None: ...
@typing.overload
def open(self) -> None: ...
@typing.overload
def open(self, slot: PYQT_SLOT) -> None: ...
def exec(self) -> int: ...
def exec_(self) -> int: ...
def setVisible(self, visible: bool) -> None: ...
class QPrintDialog(QAbstractPrintDialog):
@typing.overload
def __init__(self, printer: 'QPrinter', parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
@typing.overload
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
@typing.overload # type: ignore[override]
def accepted(self) -> None: ...
@typing.overload
def accepted(self, printer: 'QPrinter') -> None: ...
@typing.overload
def open(self) -> None: ...
@typing.overload
def open(self, slot: PYQT_SLOT) -> None: ...
def setVisible(self, visible: bool) -> None: ...
def options(self) -> QAbstractPrintDialog.PrintDialogOptions: ...
def setOptions(self, options: typing.Union[QAbstractPrintDialog.PrintDialogOptions, QAbstractPrintDialog.PrintDialogOption]) -> None: ...
def testOption(self, option: QAbstractPrintDialog.PrintDialogOption) -> bool: ...
def setOption(self, option: QAbstractPrintDialog.PrintDialogOption, on: bool = ...) -> None: ...
def done(self, result: int) -> None: ...
def accept(self) -> None: ...
def exec(self) -> int: ...
def exec_(self) -> int: ...
class QPrintEngine(sip.simplewrapper):
class PrintEnginePropertyKey(int): ...
PPK_CollateCopies = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_ColorMode = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_Creator = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_DocumentName = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_FullPage = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_NumberOfCopies = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_Orientation = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_OutputFileName = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PageOrder = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PageRect = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PageSize = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PaperRect = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PaperSource = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PrinterName = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PrinterProgram = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_Resolution = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_SelectionOption = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_SupportedResolutions = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_WindowsPageSize = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_FontEmbedding = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_Duplex = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PaperSources = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_CustomPaperSize = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PageMargins = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PaperSize = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_CopyCount = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_SupportsMultipleCopies = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_PaperName = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_QPageSize = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_QPageMargins = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_QPageLayout = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
PPK_CustomBase = ... # type: 'QPrintEngine.PrintEnginePropertyKey'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QPrintEngine') -> None: ...
def printerState(self) -> 'QPrinter.PrinterState': ...
def metric(self, a0: QtGui.QPaintDevice.PaintDeviceMetric) -> int: ...
def abort(self) -> bool: ...
def newPage(self) -> bool: ...
def property(self, key: 'QPrintEngine.PrintEnginePropertyKey') -> typing.Any: ...
def setProperty(self, key: 'QPrintEngine.PrintEnginePropertyKey', value: typing.Any) -> None: ...
class QPrinter(QtGui.QPagedPaintDevice):
class DuplexMode(int): ...
DuplexNone = ... # type: 'QPrinter.DuplexMode'
DuplexAuto = ... # type: 'QPrinter.DuplexMode'
DuplexLongSide = ... # type: 'QPrinter.DuplexMode'
DuplexShortSide = ... # type: 'QPrinter.DuplexMode'
class Unit(int): ...
Millimeter = ... # type: 'QPrinter.Unit'
Point = ... # type: 'QPrinter.Unit'
Inch = ... # type: 'QPrinter.Unit'
Pica = ... # type: 'QPrinter.Unit'
Didot = ... # type: 'QPrinter.Unit'
Cicero = ... # type: 'QPrinter.Unit'
DevicePixel = ... # type: 'QPrinter.Unit'
class PrintRange(int): ...
AllPages = ... # type: 'QPrinter.PrintRange'
Selection = ... # type: 'QPrinter.PrintRange'
PageRange = ... # type: 'QPrinter.PrintRange'
CurrentPage = ... # type: 'QPrinter.PrintRange'
class OutputFormat(int): ...
NativeFormat = ... # type: 'QPrinter.OutputFormat'
PdfFormat = ... # type: 'QPrinter.OutputFormat'
class PrinterState(int): ...
Idle = ... # type: 'QPrinter.PrinterState'
Active = ... # type: 'QPrinter.PrinterState'
Aborted = ... # type: 'QPrinter.PrinterState'
Error = ... # type: 'QPrinter.PrinterState'
class PaperSource(int): ...
OnlyOne = ... # type: 'QPrinter.PaperSource'
Lower = ... # type: 'QPrinter.PaperSource'
Middle = ... # type: 'QPrinter.PaperSource'
Manual = ... # type: 'QPrinter.PaperSource'
Envelope = ... # type: 'QPrinter.PaperSource'
EnvelopeManual = ... # type: 'QPrinter.PaperSource'
Auto = ... # type: 'QPrinter.PaperSource'
Tractor = ... # type: 'QPrinter.PaperSource'
SmallFormat = ... # type: 'QPrinter.PaperSource'
LargeFormat = ... # type: 'QPrinter.PaperSource'
LargeCapacity = ... # type: 'QPrinter.PaperSource'
Cassette = ... # type: 'QPrinter.PaperSource'
FormSource = ... # type: 'QPrinter.PaperSource'
MaxPageSource = ... # type: 'QPrinter.PaperSource'
Upper = ... # type: 'QPrinter.PaperSource'
CustomSource = ... # type: 'QPrinter.PaperSource'
LastPaperSource = ... # type: 'QPrinter.PaperSource'
class ColorMode(int): ...
GrayScale = ... # type: 'QPrinter.ColorMode'
Color = ... # type: 'QPrinter.ColorMode'
class PageOrder(int): ...
FirstPageFirst = ... # type: 'QPrinter.PageOrder'
LastPageFirst = ... # type: 'QPrinter.PageOrder'
class Orientation(int): ...
Portrait = ... # type: 'QPrinter.Orientation'
Landscape = ... # type: 'QPrinter.Orientation'
class PrinterMode(int): ...
ScreenResolution = ... # type: 'QPrinter.PrinterMode'
PrinterResolution = ... # type: 'QPrinter.PrinterMode'
HighResolution = ... # type: 'QPrinter.PrinterMode'
@typing.overload
def __init__(self, mode: 'QPrinter.PrinterMode' = ...) -> None: ...
@typing.overload
def __init__(self, printer: 'QPrinterInfo', mode: 'QPrinter.PrinterMode' = ...) -> None: ...
def pdfVersion(self) -> QtGui.QPagedPaintDevice.PdfVersion: ...
def setPdfVersion(self, version: QtGui.QPagedPaintDevice.PdfVersion) -> None: ...
def paperName(self) -> str: ...
def setPaperName(self, paperName: str) -> None: ...
def setEngines(self, printEngine: QPrintEngine, paintEngine: QtGui.QPaintEngine) -> None: ...
def metric(self, a0: QtGui.QPaintDevice.PaintDeviceMetric) -> int: ...
def getPageMargins(self, unit: 'QPrinter.Unit') -> typing.Tuple[float, float, float, float]: ...
def setPageMargins(self, left: float, top: float, right: float, bottom: float, unit: 'QPrinter.Unit') -> None: ... # type: ignore[override]
def setMargins(self, m: QtGui.QPagedPaintDevice.Margins) -> None: ...
def printRange(self) -> 'QPrinter.PrintRange': ...
def setPrintRange(self, range: 'QPrinter.PrintRange') -> None: ...
def toPage(self) -> int: ...
def fromPage(self) -> int: ...
def setFromTo(self, fromPage: int, toPage: int) -> None: ...
def printEngine(self) -> QPrintEngine: ...
def paintEngine(self) -> QtGui.QPaintEngine: ...
def printerState(self) -> 'QPrinter.PrinterState': ...
def abort(self) -> bool: ...
def newPage(self) -> bool: ...
def setPrinterSelectionOption(self, a0: str) -> None: ...
def printerSelectionOption(self) -> str: ...
@typing.overload
def pageRect(self) -> QtCore.QRect: ...
@typing.overload
def pageRect(self, a0: 'QPrinter.Unit') -> QtCore.QRectF: ...
@typing.overload
def paperRect(self) -> QtCore.QRect: ...
@typing.overload
def paperRect(self, a0: 'QPrinter.Unit') -> QtCore.QRectF: ...
def doubleSidedPrinting(self) -> bool: ...
def setDoubleSidedPrinting(self, enable: bool) -> None: ...
def fontEmbeddingEnabled(self) -> bool: ...
def setFontEmbeddingEnabled(self, enable: bool) -> None: ...
def supportedResolutions(self) -> typing.List[int]: ...
def duplex(self) -> 'QPrinter.DuplexMode': ...
def setDuplex(self, duplex: 'QPrinter.DuplexMode') -> None: ...
def paperSource(self) -> 'QPrinter.PaperSource': ...
def setPaperSource(self, a0: 'QPrinter.PaperSource') -> None: ...
def supportsMultipleCopies(self) -> bool: ...
def copyCount(self) -> int: ...
def setCopyCount(self, a0: int) -> None: ...
def fullPage(self) -> bool: ...
def setFullPage(self, a0: bool) -> None: ...
def collateCopies(self) -> bool: ...
def setCollateCopies(self, collate: bool) -> None: ...
def colorMode(self) -> 'QPrinter.ColorMode': ...
def setColorMode(self, a0: 'QPrinter.ColorMode') -> None: ...
def resolution(self) -> int: ...
def setResolution(self, a0: int) -> None: ...
def pageOrder(self) -> 'QPrinter.PageOrder': ...
def setPageOrder(self, a0: 'QPrinter.PageOrder') -> None: ...
@typing.overload
def paperSize(self) -> QtGui.QPagedPaintDevice.PageSize: ...
@typing.overload
def paperSize(self, unit: 'QPrinter.Unit') -> QtCore.QSizeF: ...
@typing.overload
def setPaperSize(self, a0: QtGui.QPagedPaintDevice.PageSize) -> None: ...
@typing.overload
def setPaperSize(self, paperSize: QtCore.QSizeF, unit: 'QPrinter.Unit') -> None: ...
def setPageSizeMM(self, size: QtCore.QSizeF) -> None: ...
def orientation(self) -> 'QPrinter.Orientation': ...
def setOrientation(self, a0: 'QPrinter.Orientation') -> None: ...
def creator(self) -> str: ...
def setCreator(self, a0: str) -> None: ...
def docName(self) -> str: ...
def setDocName(self, a0: str) -> None: ...
def printProgram(self) -> str: ...
def setPrintProgram(self, a0: str) -> None: ...
def outputFileName(self) -> str: ...
def setOutputFileName(self, a0: str) -> None: ...
def isValid(self) -> bool: ...
def printerName(self) -> str: ...
def setPrinterName(self, a0: str) -> None: ...
def outputFormat(self) -> 'QPrinter.OutputFormat': ...
def setOutputFormat(self, format: 'QPrinter.OutputFormat') -> None: ...
class QPrinterInfo(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, src: 'QPrinterInfo') -> None: ...
@typing.overload
def __init__(self, printer: QPrinter) -> None: ...
def supportedColorModes(self) -> typing.List[QPrinter.ColorMode]: ...
def defaultColorMode(self) -> QPrinter.ColorMode: ...
def supportedDuplexModes(self) -> typing.List[QPrinter.DuplexMode]: ...
def defaultDuplexMode(self) -> QPrinter.DuplexMode: ...
@staticmethod
def defaultPrinterName() -> str: ...
@staticmethod
def availablePrinterNames() -> typing.List[str]: ...
def supportedResolutions(self) -> typing.List[int]: ...
def maximumPhysicalPageSize(self) -> QtGui.QPageSize: ...
def minimumPhysicalPageSize(self) -> QtGui.QPageSize: ...
def supportsCustomPageSizes(self) -> bool: ...
def defaultPageSize(self) -> QtGui.QPageSize: ...
def supportedPageSizes(self) -> typing.List[QtGui.QPageSize]: ...
def state(self) -> QPrinter.PrinterState: ...
def isRemote(self) -> bool: ...
@staticmethod
def printerInfo(printerName: str) -> 'QPrinterInfo': ...
def makeAndModel(self) -> str: ...
def location(self) -> str: ...
def description(self) -> str: ...
@staticmethod
def defaultPrinter() -> 'QPrinterInfo': ...
@staticmethod
def availablePrinters() -> typing.List['QPrinterInfo']: ...
def supportedSizesWithNames(self) -> typing.List[typing.Tuple[str, QtCore.QSizeF]]: ...
def supportedPaperSizes(self) -> typing.List[QtGui.QPagedPaintDevice.PageSize]: ...
def isDefault(self) -> bool: ...
def isNull(self) -> bool: ...
def printerName(self) -> str: ...
class QPrintPreviewDialog(QtWidgets.QDialog):
@typing.overload
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ..., flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
@typing.overload
def __init__(self, printer: QPrinter, parent: typing.Optional[QtWidgets.QWidget] = ..., flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
paintRequested: typing.ClassVar[QtCore.pyqtSignal]
def done(self, result: int) -> None: ...
def printer(self) -> QPrinter: ...
@typing.overload
def open(self) -> None: ...
@typing.overload
def open(self, slot: PYQT_SLOT) -> None: ...
def setVisible(self, visible: bool) -> None: ...
class QPrintPreviewWidget(QtWidgets.QWidget):
class ZoomMode(int): ...
CustomZoom = ... # type: 'QPrintPreviewWidget.ZoomMode'
FitToWidth = ... # type: 'QPrintPreviewWidget.ZoomMode'
FitInView = ... # type: 'QPrintPreviewWidget.ZoomMode'
class ViewMode(int): ...
SinglePageView = ... # type: 'QPrintPreviewWidget.ViewMode'
FacingPagesView = ... # type: 'QPrintPreviewWidget.ViewMode'
AllPagesView = ... # type: 'QPrintPreviewWidget.ViewMode'
@typing.overload
def __init__(self, printer: QPrinter, parent: typing.Optional[QtWidgets.QWidget] = ..., flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
@typing.overload
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ..., flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = ...) -> None: ...
def pageCount(self) -> int: ...
previewChanged: typing.ClassVar[QtCore.pyqtSignal]
paintRequested: typing.ClassVar[QtCore.pyqtSignal]
def updatePreview(self) -> None: ...
def setAllPagesViewMode(self) -> None: ...
def setFacingPagesViewMode(self) -> None: ...
def setSinglePageViewMode(self) -> None: ...
def setPortraitOrientation(self) -> None: ...
def setLandscapeOrientation(self) -> None: ...
def fitInView(self) -> None: ...
def fitToWidth(self) -> None: ...
def setCurrentPage(self, pageNumber: int) -> None: ...
def setZoomMode(self, zoomMode: 'QPrintPreviewWidget.ZoomMode') -> None: ...
def setViewMode(self, viewMode: 'QPrintPreviewWidget.ViewMode') -> None: ...
def setOrientation(self, orientation: QPrinter.Orientation) -> None: ...
def setZoomFactor(self, zoomFactor: float) -> None: ...
def zoomOut(self, factor: float = ...) -> None: ...
def zoomIn(self, factor: float = ...) -> None: ...
def print(self) -> None: ...
def print_(self) -> None: ...
def setVisible(self, visible: bool) -> None: ...
def currentPage(self) -> int: ...
def zoomMode(self) -> 'QPrintPreviewWidget.ZoomMode': ...
def viewMode(self) -> 'QPrintPreviewWidget.ViewMode': ...
def orientation(self) -> QPrinter.Orientation: ...
def zoomFactor(self) -> float: ...

View File

@ -0,0 +1,88 @@
# The PEP 484 type hints stub file for the QtPurchasing module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQtPurchasing.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QInAppProduct(QtCore.QObject):
class ProductType(int): ...
Consumable = ... # type: 'QInAppProduct.ProductType'
Unlockable = ... # type: 'QInAppProduct.ProductType'
def purchase(self) -> None: ...
def description(self) -> str: ...
def title(self) -> str: ...
def price(self) -> str: ...
def productType(self) -> 'QInAppProduct.ProductType': ...
def identifier(self) -> str: ...
class QInAppStore(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def transactionReady(self, transaction: 'QInAppTransaction') -> None: ...
def productUnknown(self, productType: QInAppProduct.ProductType, identifier: str) -> None: ...
def productRegistered(self, product: QInAppProduct) -> None: ...
def setPlatformProperty(self, propertyName: str, value: str) -> None: ...
def registeredProduct(self, identifier: str) -> QInAppProduct: ...
def registerProduct(self, productType: QInAppProduct.ProductType, identifier: str) -> None: ...
def restorePurchases(self) -> None: ...
class QInAppTransaction(QtCore.QObject):
class FailureReason(int): ...
NoFailure = ... # type: 'QInAppTransaction.FailureReason'
CanceledByUser = ... # type: 'QInAppTransaction.FailureReason'
ErrorOccurred = ... # type: 'QInAppTransaction.FailureReason'
class TransactionStatus(int): ...
Unknown = ... # type: 'QInAppTransaction.TransactionStatus'
PurchaseApproved = ... # type: 'QInAppTransaction.TransactionStatus'
PurchaseFailed = ... # type: 'QInAppTransaction.TransactionStatus'
PurchaseRestored = ... # type: 'QInAppTransaction.TransactionStatus'
def status(self) -> 'QInAppTransaction.TransactionStatus': ...
def platformProperty(self, propertyName: str) -> str: ...
def finalize(self) -> None: ...
def timestamp(self) -> QtCore.QDateTime: ...
def errorString(self) -> str: ...
def failureReason(self) -> 'QInAppTransaction.FailureReason': ...
def orderId(self) -> str: ...
def product(self) -> QInAppProduct: ...
PYQT_PURCHASING_VERSION = ... # type: int
PYQT_PURCHASING_VERSION_STR = ... # type: str
QTPURCHASING_VERSION = ... # type: int
QTPURCHASING_VERSION_STR = ... # type: str

View File

@ -0,0 +1,667 @@
# The PEP 484 type hints stub file for the QtQml module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtNetwork
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QJSEngine(QtCore.QObject):
class Extension(int): ...
TranslationExtension = ... # type: 'QJSEngine.Extension'
ConsoleExtension = ... # type: 'QJSEngine.Extension'
GarbageCollectionExtension = ... # type: 'QJSEngine.Extension'
AllExtensions = ... # type: 'QJSEngine.Extension'
class Extensions(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QJSEngine.Extensions', 'QJSEngine.Extension']) -> None: ...
@typing.overload
def __init__(self, a0: 'QJSEngine.Extensions') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QJSEngine.Extensions': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, parent: QtCore.QObject) -> None: ...
def uiLanguageChanged(self) -> None: ...
def setUiLanguage(self, language: str) -> None: ...
def uiLanguage(self) -> str: ...
def isInterrupted(self) -> bool: ...
def setInterrupted(self, interrupted: bool) -> None: ...
@typing.overload
def throwError(self, message: str) -> None: ...
@typing.overload
def throwError(self, errorType: 'QJSValue.ErrorType', message: str = ...) -> None: ...
def newErrorObject(self, errorType: 'QJSValue.ErrorType', message: str = ...) -> 'QJSValue': ...
def importModule(self, fileName: str) -> 'QJSValue': ...
def newQMetaObject(self, metaObject: QtCore.QMetaObject) -> 'QJSValue': ...
def installExtensions(self, extensions: typing.Union['QJSEngine.Extensions', 'QJSEngine.Extension'], object: typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str] = ...) -> None: ...
def installTranslatorFunctions(self, object: typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str] = ...) -> None: ...
def collectGarbage(self) -> None: ...
def newQObject(self, object: QtCore.QObject) -> 'QJSValue': ...
def newArray(self, length: int = ...) -> 'QJSValue': ...
def newObject(self) -> 'QJSValue': ...
def evaluate(self, program: str, fileName: str = ..., lineNumber: int = ...) -> 'QJSValue': ...
def globalObject(self) -> 'QJSValue': ...
class QJSValue(sip.simplewrapper):
class ErrorType(int): ...
GenericError = ... # type: 'QJSValue.ErrorType'
EvalError = ... # type: 'QJSValue.ErrorType'
RangeError = ... # type: 'QJSValue.ErrorType'
ReferenceError = ... # type: 'QJSValue.ErrorType'
SyntaxError = ... # type: 'QJSValue.ErrorType'
TypeError = ... # type: 'QJSValue.ErrorType'
URIError = ... # type: 'QJSValue.ErrorType'
class SpecialValue(int): ...
NullValue = ... # type: 'QJSValue.SpecialValue'
UndefinedValue = ... # type: 'QJSValue.SpecialValue'
@typing.overload
def __init__(self, value: 'QJSValue.SpecialValue' = ...) -> None: ...
@typing.overload
def __init__(self, other: typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str]) -> None: ...
def errorType(self) -> 'QJSValue.ErrorType': ...
def callAsConstructor(self, args: typing.Iterable[typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str]] = ...) -> 'QJSValue': ...
def callWithInstance(self, instance: typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str], args: typing.Iterable[typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str]] = ...) -> 'QJSValue': ...
def call(self, args: typing.Iterable[typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str]] = ...) -> 'QJSValue': ...
def isCallable(self) -> bool: ...
def deleteProperty(self, name: str) -> bool: ...
def hasOwnProperty(self, name: str) -> bool: ...
def hasProperty(self, name: str) -> bool: ...
@typing.overload
def setProperty(self, name: str, value: typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str]) -> None: ...
@typing.overload
def setProperty(self, arrayIndex: int, value: typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str]) -> None: ...
@typing.overload
def property(self, name: str) -> 'QJSValue': ...
@typing.overload
def property(self, arrayIndex: int) -> 'QJSValue': ...
def setPrototype(self, prototype: typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str]) -> None: ...
def prototype(self) -> 'QJSValue': ...
def strictlyEquals(self, other: typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str]) -> bool: ...
def equals(self, other: typing.Union['QJSValue', 'QJSValue.SpecialValue', bool, int, float, str]) -> bool: ...
def toDateTime(self) -> QtCore.QDateTime: ...
def toQObject(self) -> QtCore.QObject: ...
def toVariant(self) -> typing.Any: ...
def toBool(self) -> bool: ...
def toUInt(self) -> int: ...
def toInt(self) -> int: ...
def toNumber(self) -> float: ...
def toString(self) -> str: ...
def isError(self) -> bool: ...
def isArray(self) -> bool: ...
def isRegExp(self) -> bool: ...
def isDate(self) -> bool: ...
def isObject(self) -> bool: ...
def isQObject(self) -> bool: ...
def isVariant(self) -> bool: ...
def isUndefined(self) -> bool: ...
def isString(self) -> bool: ...
def isNull(self) -> bool: ...
def isNumber(self) -> bool: ...
def isBool(self) -> bool: ...
class QJSValueIterator(sip.simplewrapper):
def __init__(self, value: typing.Union[QJSValue, QJSValue.SpecialValue, bool, int, float, str]) -> None: ...
def value(self) -> QJSValue: ...
def name(self) -> str: ...
def next(self) -> bool: ...
def hasNext(self) -> bool: ...
class QQmlAbstractUrlInterceptor(sip.simplewrapper):
class DataType(int): ...
QmlFile = ... # type: 'QQmlAbstractUrlInterceptor.DataType'
JavaScriptFile = ... # type: 'QQmlAbstractUrlInterceptor.DataType'
QmldirFile = ... # type: 'QQmlAbstractUrlInterceptor.DataType'
UrlString = ... # type: 'QQmlAbstractUrlInterceptor.DataType'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlAbstractUrlInterceptor') -> None: ...
def intercept(self, path: QtCore.QUrl, type: 'QQmlAbstractUrlInterceptor.DataType') -> QtCore.QUrl: ...
class QQmlEngine(QJSEngine):
class ObjectOwnership(int): ...
CppOwnership = ... # type: 'QQmlEngine.ObjectOwnership'
JavaScriptOwnership = ... # type: 'QQmlEngine.ObjectOwnership'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def singletonInstance(self, qmlTypeId: int) -> QtCore.QObject: ...
def retranslate(self) -> None: ...
def offlineStorageDatabaseFilePath(self, databaseName: str) -> str: ...
exit: typing.ClassVar[QtCore.pyqtSignal]
warnings: typing.ClassVar[QtCore.pyqtSignal]
quit: typing.ClassVar[QtCore.pyqtSignal]
def event(self, a0: QtCore.QEvent) -> bool: ...
@staticmethod
def objectOwnership(a0: QtCore.QObject) -> 'QQmlEngine.ObjectOwnership': ...
@staticmethod
def setObjectOwnership(a0: QtCore.QObject, a1: 'QQmlEngine.ObjectOwnership') -> None: ...
@staticmethod
def setContextForObject(a0: QtCore.QObject, a1: 'QQmlContext') -> None: ...
@staticmethod
def contextForObject(a0: QtCore.QObject) -> 'QQmlContext': ...
def setOutputWarningsToStandardError(self, a0: bool) -> None: ...
def outputWarningsToStandardError(self) -> bool: ...
def setBaseUrl(self, a0: QtCore.QUrl) -> None: ...
def baseUrl(self) -> QtCore.QUrl: ...
def offlineStoragePath(self) -> str: ...
def setOfflineStoragePath(self, dir: str) -> None: ...
def incubationController(self) -> 'QQmlIncubationController': ...
def setIncubationController(self, a0: 'QQmlIncubationController') -> None: ...
def removeImageProvider(self, id: str) -> None: ...
def imageProvider(self, id: str) -> 'QQmlImageProviderBase': ...
def addImageProvider(self, id: str, a1: 'QQmlImageProviderBase') -> None: ...
def networkAccessManager(self) -> QtNetwork.QNetworkAccessManager: ...
def networkAccessManagerFactory(self) -> 'QQmlNetworkAccessManagerFactory': ...
def setNetworkAccessManagerFactory(self, a0: 'QQmlNetworkAccessManagerFactory') -> None: ...
def importPlugin(self, filePath: str, uri: str, errors: typing.Iterable['QQmlError']) -> bool: ...
def addNamedBundle(self, name: str, fileName: str) -> bool: ...
def addPluginPath(self, dir: str) -> None: ...
def setPluginPathList(self, paths: typing.Iterable[str]) -> None: ...
def pluginPathList(self) -> typing.List[str]: ...
def addImportPath(self, dir: str) -> None: ...
def setImportPathList(self, paths: typing.Iterable[str]) -> None: ...
def importPathList(self) -> typing.List[str]: ...
def trimComponentCache(self) -> None: ...
def clearComponentCache(self) -> None: ...
def rootContext(self) -> 'QQmlContext': ...
class QQmlApplicationEngine(QQmlEngine):
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, url: QtCore.QUrl, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, filePath: str, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
objectCreated: typing.ClassVar[QtCore.pyqtSignal]
def setInitialProperties(self, initialProperties: typing.Dict[str, typing.Any]) -> None: ...
def loadData(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray], url: QtCore.QUrl = ...) -> None: ...
@typing.overload
def load(self, url: QtCore.QUrl) -> None: ...
@typing.overload
def load(self, filePath: str) -> None: ...
def rootObjects(self) -> typing.List[QtCore.QObject]: ...
class QQmlComponent(QtCore.QObject):
class Status(int): ...
Null = ... # type: 'QQmlComponent.Status'
Ready = ... # type: 'QQmlComponent.Status'
Loading = ... # type: 'QQmlComponent.Status'
Error = ... # type: 'QQmlComponent.Status'
class CompilationMode(int): ...
PreferSynchronous = ... # type: 'QQmlComponent.CompilationMode'
Asynchronous = ... # type: 'QQmlComponent.CompilationMode'
@typing.overload
def __init__(self, a0: QQmlEngine, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, a0: QQmlEngine, fileName: str, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, a0: QQmlEngine, fileName: str, mode: 'QQmlComponent.CompilationMode', parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, a0: QQmlEngine, url: QtCore.QUrl, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, a0: QQmlEngine, url: QtCore.QUrl, mode: 'QQmlComponent.CompilationMode', parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def setInitialProperties(self, component: QtCore.QObject, properties: typing.Dict[str, typing.Any]) -> None: ...
def engine(self) -> QQmlEngine: ...
def progressChanged(self, a0: float) -> None: ...
def statusChanged(self, a0: 'QQmlComponent.Status') -> None: ...
def setData(self, a0: typing.Union[QtCore.QByteArray, bytes, bytearray], baseUrl: QtCore.QUrl) -> None: ...
@typing.overload
def loadUrl(self, url: QtCore.QUrl) -> None: ...
@typing.overload
def loadUrl(self, url: QtCore.QUrl, mode: 'QQmlComponent.CompilationMode') -> None: ...
def creationContext(self) -> 'QQmlContext': ...
def completeCreate(self) -> None: ...
def beginCreate(self, a0: 'QQmlContext') -> QtCore.QObject: ...
def createWithInitialProperties(self, initialProperties: typing.Dict[str, typing.Any], context: typing.Optional['QQmlContext'] = ...) -> QtCore.QObject: ...
@typing.overload
def create(self, context: typing.Optional['QQmlContext'] = ...) -> QtCore.QObject: ...
@typing.overload
def create(self, a0: 'QQmlIncubator', context: typing.Optional['QQmlContext'] = ..., forContext: typing.Optional['QQmlContext'] = ...) -> None: ...
def url(self) -> QtCore.QUrl: ...
def progress(self) -> float: ...
def errors(self) -> typing.List['QQmlError']: ...
def isLoading(self) -> bool: ...
def isError(self) -> bool: ...
def isReady(self) -> bool: ...
def isNull(self) -> bool: ...
def status(self) -> 'QQmlComponent.Status': ...
class QQmlContext(QtCore.QObject):
class PropertyPair(sip.simplewrapper):
name = ... # type: str
value = ... # type: typing.Any
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlContext.PropertyPair') -> None: ...
@typing.overload
def __init__(self, engine: QQmlEngine, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, parentContext: 'QQmlContext', parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def setContextProperties(self, properties: typing.Iterable['QQmlContext.PropertyPair']) -> None: ...
def baseUrl(self) -> QtCore.QUrl: ...
def setBaseUrl(self, a0: QtCore.QUrl) -> None: ...
def resolvedUrl(self, a0: QtCore.QUrl) -> QtCore.QUrl: ...
def nameForObject(self, a0: QtCore.QObject) -> str: ...
@typing.overload
def setContextProperty(self, a0: str, a1: QtCore.QObject) -> None: ...
@typing.overload
def setContextProperty(self, a0: str, a1: typing.Any) -> None: ...
def contextProperty(self, a0: str) -> typing.Any: ...
def setContextObject(self, a0: QtCore.QObject) -> None: ...
def contextObject(self) -> QtCore.QObject: ...
def parentContext(self) -> 'QQmlContext': ...
def engine(self) -> QQmlEngine: ...
def isValid(self) -> bool: ...
class QQmlImageProviderBase(sip.wrapper):
class Flag(int): ...
ForceAsynchronousImageLoading = ... # type: 'QQmlImageProviderBase.Flag'
class ImageType(int): ...
Image = ... # type: 'QQmlImageProviderBase.ImageType'
Pixmap = ... # type: 'QQmlImageProviderBase.ImageType'
Texture = ... # type: 'QQmlImageProviderBase.ImageType'
ImageResponse = ... # type: 'QQmlImageProviderBase.ImageType'
class Flags(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QQmlImageProviderBase.Flags', 'QQmlImageProviderBase.Flag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlImageProviderBase.Flags') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QQmlImageProviderBase.Flags': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
def __init__(self, a0: 'QQmlImageProviderBase') -> None: ...
def flags(self) -> 'QQmlImageProviderBase.Flags': ...
def imageType(self) -> 'QQmlImageProviderBase.ImageType': ...
class QQmlError(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlError') -> None: ...
def setMessageType(self, messageType: QtCore.QtMsgType) -> None: ...
def messageType(self) -> QtCore.QtMsgType: ...
def setObject(self, a0: QtCore.QObject) -> None: ...
def object(self) -> QtCore.QObject: ...
def toString(self) -> str: ...
def setColumn(self, a0: int) -> None: ...
def column(self) -> int: ...
def setLine(self, a0: int) -> None: ...
def line(self) -> int: ...
def setDescription(self, a0: str) -> None: ...
def description(self) -> str: ...
def setUrl(self, a0: QtCore.QUrl) -> None: ...
def url(self) -> QtCore.QUrl: ...
def isValid(self) -> bool: ...
class QQmlExpression(QtCore.QObject):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: QQmlContext, a1: QtCore.QObject, a2: str, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlScriptString', context: typing.Optional[QQmlContext] = ..., scope: typing.Optional[QtCore.QObject] = ..., parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def valueChanged(self) -> None: ...
def evaluate(self) -> typing.Tuple[typing.Any, bool]: ...
def error(self) -> QQmlError: ...
def clearError(self) -> None: ...
def hasError(self) -> bool: ...
def scopeObject(self) -> QtCore.QObject: ...
def setSourceLocation(self, fileName: str, line: int, column: int = ...) -> None: ...
def columnNumber(self) -> int: ...
def lineNumber(self) -> int: ...
def sourceFile(self) -> str: ...
def setNotifyOnValueChanged(self, a0: bool) -> None: ...
def notifyOnValueChanged(self) -> bool: ...
def setExpression(self, a0: str) -> None: ...
def expression(self) -> str: ...
def context(self) -> QQmlContext: ...
def engine(self) -> QQmlEngine: ...
class QQmlExtensionPlugin(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def baseUrl(self) -> QtCore.QUrl: ...
def initializeEngine(self, engine: QQmlEngine, uri: str) -> None: ...
def registerTypes(self, uri: str) -> None: ...
class QQmlEngineExtensionPlugin(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def initializeEngine(self, engine: QQmlEngine, uri: str) -> None: ...
class QQmlFileSelector(QtCore.QObject):
def __init__(self, engine: QQmlEngine, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def selector(self) -> QtCore.QFileSelector: ...
@staticmethod
def get(a0: QQmlEngine) -> 'QQmlFileSelector': ...
def setExtraSelectors(self, strings: typing.Iterable[str]) -> None: ...
def setSelector(self, selector: QtCore.QFileSelector) -> None: ...
class QQmlIncubator(sip.simplewrapper):
class Status(int): ...
Null = ... # type: 'QQmlIncubator.Status'
Ready = ... # type: 'QQmlIncubator.Status'
Loading = ... # type: 'QQmlIncubator.Status'
Error = ... # type: 'QQmlIncubator.Status'
class IncubationMode(int): ...
Asynchronous = ... # type: 'QQmlIncubator.IncubationMode'
AsynchronousIfNested = ... # type: 'QQmlIncubator.IncubationMode'
Synchronous = ... # type: 'QQmlIncubator.IncubationMode'
def __init__(self, mode: 'QQmlIncubator.IncubationMode' = ...) -> None: ...
def setInitialState(self, a0: QtCore.QObject) -> None: ...
def statusChanged(self, a0: 'QQmlIncubator.Status') -> None: ...
def setInitialProperties(self, initialProperties: typing.Dict[str, typing.Any]) -> None: ...
def object(self) -> QtCore.QObject: ...
def status(self) -> 'QQmlIncubator.Status': ...
def incubationMode(self) -> 'QQmlIncubator.IncubationMode': ...
def errors(self) -> typing.List[QQmlError]: ...
def isLoading(self) -> bool: ...
def isError(self) -> bool: ...
def isReady(self) -> bool: ...
def isNull(self) -> bool: ...
def forceCompletion(self) -> None: ...
def clear(self) -> None: ...
class QQmlIncubationController(sip.simplewrapper):
def __init__(self) -> None: ...
def incubatingObjectCountChanged(self, a0: int) -> None: ...
def incubateFor(self, msecs: int) -> None: ...
def incubatingObjectCount(self) -> int: ...
def engine(self) -> QQmlEngine: ...
class QQmlListReference(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: QtCore.QObject, property: str, engine: typing.Optional[QQmlEngine] = ...) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlListReference') -> None: ...
def removeLast(self) -> bool: ...
def replace(self, a0: int, a1: QtCore.QObject) -> bool: ...
def canRemoveLast(self) -> bool: ...
def canReplace(self) -> bool: ...
def count(self) -> int: ...
def clear(self) -> bool: ...
def at(self, a0: int) -> QtCore.QObject: ...
def append(self, a0: QtCore.QObject) -> bool: ...
def isReadable(self) -> bool: ...
def isManipulable(self) -> bool: ...
def canCount(self) -> bool: ...
def canClear(self) -> bool: ...
def canAt(self) -> bool: ...
def canAppend(self) -> bool: ...
def listElementType(self) -> QtCore.QMetaObject: ...
def object(self) -> QtCore.QObject: ...
def isValid(self) -> bool: ...
class QQmlNetworkAccessManagerFactory(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlNetworkAccessManagerFactory') -> None: ...
def create(self, parent: QtCore.QObject) -> QtNetwork.QNetworkAccessManager: ...
class QQmlParserStatus(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlParserStatus') -> None: ...
def componentComplete(self) -> None: ...
def classBegin(self) -> None: ...
class QQmlProperty(sip.simplewrapper):
class Type(int): ...
Invalid = ... # type: 'QQmlProperty.Type'
Property = ... # type: 'QQmlProperty.Type'
SignalProperty = ... # type: 'QQmlProperty.Type'
class PropertyTypeCategory(int): ...
InvalidCategory = ... # type: 'QQmlProperty.PropertyTypeCategory'
List = ... # type: 'QQmlProperty.PropertyTypeCategory'
Object = ... # type: 'QQmlProperty.PropertyTypeCategory'
Normal = ... # type: 'QQmlProperty.PropertyTypeCategory'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: QtCore.QObject) -> None: ...
@typing.overload
def __init__(self, a0: QtCore.QObject, a1: QQmlContext) -> None: ...
@typing.overload
def __init__(self, a0: QtCore.QObject, a1: QQmlEngine) -> None: ...
@typing.overload
def __init__(self, a0: QtCore.QObject, a1: str) -> None: ...
@typing.overload
def __init__(self, a0: QtCore.QObject, a1: str, a2: QQmlContext) -> None: ...
@typing.overload
def __init__(self, a0: QtCore.QObject, a1: str, a2: QQmlEngine) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlProperty') -> None: ...
def method(self) -> QtCore.QMetaMethod: ...
def property(self) -> QtCore.QMetaProperty: ...
def index(self) -> int: ...
def object(self) -> QtCore.QObject: ...
def isResettable(self) -> bool: ...
def isDesignable(self) -> bool: ...
def isWritable(self) -> bool: ...
@typing.overload
def connectNotifySignal(self, slot: PYQT_SLOT) -> bool: ...
@typing.overload
def connectNotifySignal(self, dest: QtCore.QObject, method: int) -> bool: ...
def needsNotifySignal(self) -> bool: ...
def hasNotifySignal(self) -> bool: ...
def reset(self) -> bool: ...
@typing.overload # type: ignore[misc]
def write(self, a0: typing.Any) -> bool: ...
@typing.overload
@staticmethod
def write(a0: QtCore.QObject, a1: str, a2: typing.Any) -> bool: ...
@typing.overload
@staticmethod
def write(a0: QtCore.QObject, a1: str, a2: typing.Any, a3: QQmlContext) -> bool: ...
@typing.overload
@staticmethod
def write(a0: QtCore.QObject, a1: str, a2: typing.Any, a3: QQmlEngine) -> bool: ...
@typing.overload # type: ignore[misc]
def read(self) -> typing.Any: ...
@typing.overload
@staticmethod
def read(a0: QtCore.QObject, a1: str) -> typing.Any: ...
@typing.overload
@staticmethod
def read(a0: QtCore.QObject, a1: str, a2: QQmlContext) -> typing.Any: ...
@typing.overload
@staticmethod
def read(a0: QtCore.QObject, a1: str, a2: QQmlEngine) -> typing.Any: ...
def name(self) -> str: ...
def propertyTypeName(self) -> str: ...
def propertyTypeCategory(self) -> 'QQmlProperty.PropertyTypeCategory': ...
def propertyType(self) -> int: ...
def isSignalProperty(self) -> bool: ...
def isProperty(self) -> bool: ...
def isValid(self) -> bool: ...
def type(self) -> 'QQmlProperty.Type': ...
def __hash__(self) -> int: ...
class QQmlPropertyMap(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def updateValue(self, key: str, input: typing.Any) -> typing.Any: ...
def valueChanged(self, key: str, value: typing.Any) -> None: ...
def __getitem__(self, key: str) -> typing.Any: ...
def contains(self, key: str) -> bool: ...
def isEmpty(self) -> bool: ...
def __len__(self) -> int: ...
def size(self) -> int: ...
def count(self) -> int: ...
def keys(self) -> typing.List[str]: ...
def clear(self, key: str) -> None: ...
def insert(self, key: str, value: typing.Any) -> None: ...
def value(self, key: str) -> typing.Any: ...
class QQmlPropertyValueSource(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlPropertyValueSource') -> None: ...
def setTarget(self, a0: QQmlProperty) -> None: ...
class QQmlScriptString(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QQmlScriptString') -> None: ...
def booleanLiteral(self) -> typing.Tuple[bool, bool]: ...
def numberLiteral(self) -> typing.Tuple[float, bool]: ...
def stringLiteral(self) -> str: ...
def isNullLiteral(self) -> bool: ...
def isUndefinedLiteral(self) -> bool: ...
def isEmpty(self) -> bool: ...
@typing.overload
def qmlRegisterUncreatableType(a0: type, uri: str, major: int, minor: int, qmlName: str, reason: str) -> int: ...
@typing.overload
def qmlRegisterUncreatableType(a0: type, revision: int, uri: str, major: int, minor: int, qmlName: str, reason: str) -> int: ...
@typing.overload
def qmlRegisterType(url: QtCore.QUrl, uri: str, major: int, minor: int, qmlName: str) -> int: ...
@typing.overload
def qmlRegisterType(a0: type, attachedProperties: type = ...) -> int: ...
@typing.overload
def qmlRegisterType(a0: type, uri: str, major: int, minor: int, qmlName: str, attachedProperties: type = ...) -> int: ...
@typing.overload
def qmlRegisterType(a0: type, revision: int, uri: str, major: int, minor: int, qmlName: str, attachedProperties: type = ...) -> int: ...
@typing.overload
def qmlRegisterSingletonType(url: QtCore.QUrl, uri: str, major: int, minor: int, qmlName: str) -> int: ...
@typing.overload
def qmlRegisterSingletonType(a0: type, uri: str, major: int, minor: int, typeName: str, factory: typing.Callable[[QQmlEngine, QJSEngine], typing.Any]) -> int: ...
def qmlRegisterRevision(a0: type, revision: int, uri: str, major: int, minor: int, attachedProperties: type = ...) -> int: ...
def qmlAttachedPropertiesObject(a0: type, object: QtCore.QObject, create: bool = ...) -> QtCore.QObject: ...
def qjsEngine(a0: QtCore.QObject) -> QJSEngine: ...
def qmlTypeId(uri: str, versionMajor: int, versionMinor: int, qmlName: str) -> int: ...
def qmlClearTypeRegistrations() -> None: ...

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,101 @@
# The PEP 484 type hints stub file for the QtQuickWidgets module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWidgets
from PyQt5 import QtQuick
from PyQt5 import QtQml
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QQuickWidget(QtWidgets.QWidget):
class Status(int): ...
Null = ... # type: 'QQuickWidget.Status'
Ready = ... # type: 'QQuickWidget.Status'
Loading = ... # type: 'QQuickWidget.Status'
Error = ... # type: 'QQuickWidget.Status'
class ResizeMode(int): ...
SizeViewToRootObject = ... # type: 'QQuickWidget.ResizeMode'
SizeRootObjectToView = ... # type: 'QQuickWidget.ResizeMode'
@typing.overload
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
@typing.overload
def __init__(self, engine: QtQml.QQmlEngine, parent: QtWidgets.QWidget) -> None: ...
@typing.overload
def __init__(self, source: QtCore.QUrl, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def focusNextPrevChild(self, next: bool) -> bool: ...
def quickWindow(self) -> QtQuick.QQuickWindow: ...
def setClearColor(self, color: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def grabFramebuffer(self) -> QtGui.QImage: ...
def paintEvent(self, event: QtGui.QPaintEvent) -> None: ...
def dropEvent(self, a0: QtGui.QDropEvent) -> None: ...
def dragLeaveEvent(self, a0: QtGui.QDragLeaveEvent) -> None: ...
def dragMoveEvent(self, a0: QtGui.QDragMoveEvent) -> None: ...
def dragEnterEvent(self, a0: QtGui.QDragEnterEvent) -> None: ...
def focusOutEvent(self, event: QtGui.QFocusEvent) -> None: ...
def focusInEvent(self, event: QtGui.QFocusEvent) -> None: ...
def event(self, a0: QtCore.QEvent) -> bool: ...
def wheelEvent(self, a0: QtGui.QWheelEvent) -> None: ...
def hideEvent(self, a0: QtGui.QHideEvent) -> None: ...
def showEvent(self, a0: QtGui.QShowEvent) -> None: ...
def mouseDoubleClickEvent(self, a0: QtGui.QMouseEvent) -> None: ...
def mouseMoveEvent(self, a0: QtGui.QMouseEvent) -> None: ...
def mouseReleaseEvent(self, a0: QtGui.QMouseEvent) -> None: ...
def mousePressEvent(self, a0: QtGui.QMouseEvent) -> None: ...
def keyReleaseEvent(self, a0: QtGui.QKeyEvent) -> None: ...
def keyPressEvent(self, a0: QtGui.QKeyEvent) -> None: ...
def timerEvent(self, a0: QtCore.QTimerEvent) -> None: ...
def resizeEvent(self, a0: QtGui.QResizeEvent) -> None: ...
def sceneGraphError(self, error: QtQuick.QQuickWindow.SceneGraphError, message: str) -> None: ...
def statusChanged(self, a0: 'QQuickWidget.Status') -> None: ...
def setSource(self, a0: QtCore.QUrl) -> None: ...
def format(self) -> QtGui.QSurfaceFormat: ...
def setFormat(self, format: QtGui.QSurfaceFormat) -> None: ...
def initialSize(self) -> QtCore.QSize: ...
def sizeHint(self) -> QtCore.QSize: ...
def errors(self) -> typing.List[QtQml.QQmlError]: ...
def status(self) -> 'QQuickWidget.Status': ...
def setResizeMode(self, a0: 'QQuickWidget.ResizeMode') -> None: ...
def resizeMode(self) -> 'QQuickWidget.ResizeMode': ...
def rootObject(self) -> QtQuick.QQuickItem: ...
def rootContext(self) -> QtQml.QQmlContext: ...
def engine(self) -> QtQml.QQmlEngine: ...
def source(self) -> QtCore.QUrl: ...

View File

@ -0,0 +1,192 @@
# The PEP 484 type hints stub file for the QtRemoteObjects module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QAbstractItemModelReplica(QtCore.QAbstractItemModel):
def initialized(self) -> None: ...
def setRootCacheSize(self, rootCacheSize: int) -> None: ...
def rootCacheSize(self) -> int: ...
def hasData(self, index: QtCore.QModelIndex, role: int) -> bool: ...
def isInitialized(self) -> bool: ...
def roleNames(self) -> typing.Dict[int, QtCore.QByteArray]: ...
def availableRoles(self) -> typing.List[int]: ...
def flags(self, index: QtCore.QModelIndex) -> QtCore.Qt.ItemFlags: ...
def headerData(self, section: int, orientation: QtCore.Qt.Orientation, role: int) -> typing.Any: ... # type: ignore[override]
def columnCount(self, parent: QtCore.QModelIndex = ...) -> int: ...
def rowCount(self, parent: QtCore.QModelIndex = ...) -> int: ...
def hasChildren(self, parent: QtCore.QModelIndex = ...) -> bool: ...
def index(self, row: int, column: int, parent: QtCore.QModelIndex = ...) -> QtCore.QModelIndex: ...
def parent(self, index: QtCore.QModelIndex) -> QtCore.QModelIndex: ... # type: ignore[override]
def setData(self, index: QtCore.QModelIndex, value: typing.Any, role: int = ...) -> bool: ...
def data(self, index: QtCore.QModelIndex, role: int = ...) -> typing.Any: ...
def selectionModel(self) -> QtCore.QItemSelectionModel: ...
class QRemoteObjectReplica(QtCore.QObject):
class State(int): ...
Uninitialized = ... # type: 'QRemoteObjectReplica.State'
Default = ... # type: 'QRemoteObjectReplica.State'
Valid = ... # type: 'QRemoteObjectReplica.State'
Suspect = ... # type: 'QRemoteObjectReplica.State'
SignatureMismatch = ... # type: 'QRemoteObjectReplica.State'
def notified(self) -> None: ...
def stateChanged(self, state: 'QRemoteObjectReplica.State', oldState: 'QRemoteObjectReplica.State') -> None: ...
def initialized(self) -> None: ...
def setNode(self, node: 'QRemoteObjectNode') -> None: ...
def node(self) -> 'QRemoteObjectNode': ...
def state(self) -> 'QRemoteObjectReplica.State': ...
def isInitialized(self) -> bool: ...
def waitForSource(self, timeout: int = ...) -> bool: ...
def isReplicaValid(self) -> bool: ...
class QRemoteObjectDynamicReplica(QRemoteObjectReplica): ...
class QRemoteObjectAbstractPersistedStore(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def restoreProperties(self, repName: str, repSig: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> typing.List[typing.Any]: ...
def saveProperties(self, repName: str, repSig: typing.Union[QtCore.QByteArray, bytes, bytearray], values: typing.Iterable[typing.Any]) -> None: ...
class QRemoteObjectNode(QtCore.QObject):
class ErrorCode(int): ...
NoError = ... # type: 'QRemoteObjectNode.ErrorCode'
RegistryNotAcquired = ... # type: 'QRemoteObjectNode.ErrorCode'
RegistryAlreadyHosted = ... # type: 'QRemoteObjectNode.ErrorCode'
NodeIsNoServer = ... # type: 'QRemoteObjectNode.ErrorCode'
ServerAlreadyCreated = ... # type: 'QRemoteObjectNode.ErrorCode'
UnintendedRegistryHosting = ... # type: 'QRemoteObjectNode.ErrorCode'
OperationNotValidOnClientNode = ... # type: 'QRemoteObjectNode.ErrorCode'
SourceNotRegistered = ... # type: 'QRemoteObjectNode.ErrorCode'
MissingObjectName = ... # type: 'QRemoteObjectNode.ErrorCode'
HostUrlInvalid = ... # type: 'QRemoteObjectNode.ErrorCode'
ProtocolMismatch = ... # type: 'QRemoteObjectNode.ErrorCode'
ListenFailed = ... # type: 'QRemoteObjectNode.ErrorCode'
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, registryAddress: QtCore.QUrl, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def timerEvent(self, a0: QtCore.QTimerEvent) -> None: ...
def heartbeatIntervalChanged(self, heartbeatInterval: int) -> None: ...
def error(self, errorCode: 'QRemoteObjectNode.ErrorCode') -> None: ...
def remoteObjectRemoved(self, a0: typing.Tuple[str, 'QRemoteObjectSourceLocationInfo']) -> None: ...
def remoteObjectAdded(self, a0: typing.Tuple[str, 'QRemoteObjectSourceLocationInfo']) -> None: ...
def setHeartbeatInterval(self, interval: int) -> None: ...
def heartbeatInterval(self) -> int: ...
def lastError(self) -> 'QRemoteObjectNode.ErrorCode': ...
def setPersistedStore(self, persistedStore: QRemoteObjectAbstractPersistedStore) -> None: ...
def persistedStore(self) -> QRemoteObjectAbstractPersistedStore: ...
def registry(self) -> 'QRemoteObjectRegistry': ...
def waitForRegistry(self, timeout: int = ...) -> bool: ...
def setRegistryUrl(self, registryAddress: QtCore.QUrl) -> bool: ...
def registryUrl(self) -> QtCore.QUrl: ...
def acquireModel(self, name: str, action: 'QtRemoteObjects.InitialAction' = ..., rolesHint: typing.Iterable[int] = ...) -> QAbstractItemModelReplica: ...
def acquireDynamic(self, name: str) -> QRemoteObjectDynamicReplica: ...
def instances(self, typeName: str) -> typing.List[str]: ...
def setName(self, name: str) -> None: ...
def addClientSideConnection(self, ioDevice: QtCore.QIODevice) -> None: ...
def connectToNode(self, address: QtCore.QUrl) -> bool: ...
class QRemoteObjectHostBase(QRemoteObjectNode):
class AllowedSchemas(int): ...
BuiltInSchemasOnly = ... # type: 'QRemoteObjectHostBase.AllowedSchemas'
AllowExternalRegistration = ... # type: 'QRemoteObjectHostBase.AllowedSchemas'
def reverseProxy(self) -> bool: ...
def proxy(self, registryUrl: QtCore.QUrl, hostUrl: QtCore.QUrl = ...) -> bool: ...
def addHostSideConnection(self, ioDevice: QtCore.QIODevice) -> None: ...
def disableRemoting(self, remoteObject: QtCore.QObject) -> bool: ...
@typing.overload
def enableRemoting(self, object: QtCore.QObject, name: str = ...) -> bool: ...
@typing.overload
def enableRemoting(self, model: QtCore.QAbstractItemModel, name: str, roles: typing.Iterable[int], selectionModel: typing.Optional[QtCore.QItemSelectionModel] = ...) -> bool: ...
def setName(self, name: str) -> None: ...
class QRemoteObjectHost(QRemoteObjectHostBase):
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, address: QtCore.QUrl, registryAddress: QtCore.QUrl = ..., allowedSchemas: QRemoteObjectHostBase.AllowedSchemas = ..., parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, address: QtCore.QUrl, parent: QtCore.QObject) -> None: ...
def hostUrlChanged(self) -> None: ...
def setHostUrl(self, hostAddress: QtCore.QUrl, allowedSchemas: QRemoteObjectHostBase.AllowedSchemas = ...) -> bool: ...
def hostUrl(self) -> QtCore.QUrl: ...
class QRemoteObjectRegistryHost(QRemoteObjectHostBase):
def __init__(self, registryAddress: QtCore.QUrl = ..., parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def setRegistryUrl(self, registryUrl: QtCore.QUrl) -> bool: ...
class QRemoteObjectRegistry(QRemoteObjectReplica):
def remoteObjectRemoved(self, entry: typing.Tuple[str, 'QRemoteObjectSourceLocationInfo']) -> None: ...
def remoteObjectAdded(self, entry: typing.Tuple[str, 'QRemoteObjectSourceLocationInfo']) -> None: ...
def sourceLocations(self) -> typing.Dict[str, 'QRemoteObjectSourceLocationInfo']: ...
class QRemoteObjectSourceLocationInfo(sip.simplewrapper):
hostUrl = ... # type: QtCore.QUrl
typeName = ... # type: str
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, typeName_: str, hostUrl_: QtCore.QUrl) -> None: ...
@typing.overload
def __init__(self, a0: 'QRemoteObjectSourceLocationInfo') -> None: ...
class QtRemoteObjects(sip.simplewrapper):
class InitialAction(int): ...
FetchRootSize = ... # type: 'QtRemoteObjects.InitialAction'
PrefetchData = ... # type: 'QtRemoteObjects.InitialAction'

View File

@ -0,0 +1,662 @@
# The PEP 484 type hints stub file for the QtSensors module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QSensorReading(QtCore.QObject):
def value(self, index: int) -> typing.Any: ...
def valueCount(self) -> int: ...
def setTimestamp(self, timestamp: int) -> None: ...
def timestamp(self) -> int: ...
class QAccelerometerReading(QSensorReading):
def setZ(self, z: float) -> None: ...
def z(self) -> float: ...
def setY(self, y: float) -> None: ...
def y(self) -> float: ...
def setX(self, x: float) -> None: ...
def x(self) -> float: ...
class QSensorFilter(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QSensorFilter') -> None: ...
def filter(self, reading: QSensorReading) -> bool: ...
class QAccelerometerFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QAccelerometerFilter') -> None: ...
def filter(self, reading: QAccelerometerReading) -> bool: ... # type: ignore[override]
class QSensor(QtCore.QObject):
class AxesOrientationMode(int): ...
FixedOrientation = ... # type: 'QSensor.AxesOrientationMode'
AutomaticOrientation = ... # type: 'QSensor.AxesOrientationMode'
UserOrientation = ... # type: 'QSensor.AxesOrientationMode'
class Feature(int): ...
Buffering = ... # type: 'QSensor.Feature'
AlwaysOn = ... # type: 'QSensor.Feature'
GeoValues = ... # type: 'QSensor.Feature'
FieldOfView = ... # type: 'QSensor.Feature'
AccelerationMode = ... # type: 'QSensor.Feature'
SkipDuplicates = ... # type: 'QSensor.Feature'
AxesOrientation = ... # type: 'QSensor.Feature'
PressureSensorTemperature = ... # type: 'QSensor.Feature'
def __init__(self, type: typing.Union[QtCore.QByteArray, bytes, bytearray], parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def bufferSizeChanged(self, bufferSize: int) -> None: ...
def efficientBufferSizeChanged(self, efficientBufferSize: int) -> None: ...
def maxBufferSizeChanged(self, maxBufferSize: int) -> None: ...
def userOrientationChanged(self, userOrientation: int) -> None: ...
def currentOrientationChanged(self, currentOrientation: int) -> None: ...
def axesOrientationModeChanged(self, axesOrientationMode: 'QSensor.AxesOrientationMode') -> None: ...
def skipDuplicatesChanged(self, skipDuplicates: bool) -> None: ...
def dataRateChanged(self) -> None: ...
def alwaysOnChanged(self) -> None: ...
def availableSensorsChanged(self) -> None: ...
def sensorError(self, error: int) -> None: ...
def readingChanged(self) -> None: ...
def activeChanged(self) -> None: ...
def busyChanged(self) -> None: ...
def stop(self) -> None: ...
def start(self) -> bool: ...
def setBufferSize(self, bufferSize: int) -> None: ...
def bufferSize(self) -> int: ...
def setEfficientBufferSize(self, efficientBufferSize: int) -> None: ...
def efficientBufferSize(self) -> int: ...
def setMaxBufferSize(self, maxBufferSize: int) -> None: ...
def maxBufferSize(self) -> int: ...
def setUserOrientation(self, userOrientation: int) -> None: ...
def userOrientation(self) -> int: ...
def setCurrentOrientation(self, currentOrientation: int) -> None: ...
def currentOrientation(self) -> int: ...
def setAxesOrientationMode(self, axesOrientationMode: 'QSensor.AxesOrientationMode') -> None: ...
def axesOrientationMode(self) -> 'QSensor.AxesOrientationMode': ...
def isFeatureSupported(self, feature: 'QSensor.Feature') -> bool: ...
@staticmethod
def defaultSensorForType(type: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> QtCore.QByteArray: ...
@staticmethod
def sensorsForType(type: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> typing.List[QtCore.QByteArray]: ...
@staticmethod
def sensorTypes() -> typing.List[QtCore.QByteArray]: ...
def reading(self) -> QSensorReading: ...
def filters(self) -> typing.List[QSensorFilter]: ...
def removeFilter(self, filter: QSensorFilter) -> None: ...
def addFilter(self, filter: QSensorFilter) -> None: ...
def error(self) -> int: ...
def description(self) -> str: ...
def setOutputRange(self, index: int) -> None: ...
def outputRange(self) -> int: ...
def outputRanges(self) -> typing.List['qoutputrange']: ...
def setDataRate(self, rate: int) -> None: ...
def dataRate(self) -> int: ...
def availableDataRates(self) -> typing.List[typing.Tuple[int, int]]: ...
def setSkipDuplicates(self, skipDuplicates: bool) -> None: ...
def skipDuplicates(self) -> bool: ...
def setAlwaysOn(self, alwaysOn: bool) -> None: ...
def isAlwaysOn(self) -> bool: ...
def isActive(self) -> bool: ...
def setActive(self, active: bool) -> None: ...
def isBusy(self) -> bool: ...
def isConnectedToBackend(self) -> bool: ...
def connectToBackend(self) -> bool: ...
def type(self) -> QtCore.QByteArray: ...
def setIdentifier(self, identifier: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def identifier(self) -> QtCore.QByteArray: ...
class QAccelerometer(QSensor):
class AccelerationMode(int): ...
Combined = ... # type: 'QAccelerometer.AccelerationMode'
Gravity = ... # type: 'QAccelerometer.AccelerationMode'
User = ... # type: 'QAccelerometer.AccelerationMode'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def accelerationModeChanged(self, accelerationMode: 'QAccelerometer.AccelerationMode') -> None: ...
def reading(self) -> QAccelerometerReading: ...
def setAccelerationMode(self, accelerationMode: 'QAccelerometer.AccelerationMode') -> None: ...
def accelerationMode(self) -> 'QAccelerometer.AccelerationMode': ...
class QAltimeterReading(QSensorReading):
def setAltitude(self, altitude: float) -> None: ...
def altitude(self) -> float: ...
class QAltimeterFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QAltimeterFilter') -> None: ...
def filter(self, reading: QAltimeterReading) -> bool: ... # type: ignore[override]
class QAltimeter(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QAltimeterReading: ...
class QAmbientLightReading(QSensorReading):
class LightLevel(int): ...
Undefined = ... # type: 'QAmbientLightReading.LightLevel'
Dark = ... # type: 'QAmbientLightReading.LightLevel'
Twilight = ... # type: 'QAmbientLightReading.LightLevel'
Light = ... # type: 'QAmbientLightReading.LightLevel'
Bright = ... # type: 'QAmbientLightReading.LightLevel'
Sunny = ... # type: 'QAmbientLightReading.LightLevel'
def setLightLevel(self, lightLevel: 'QAmbientLightReading.LightLevel') -> None: ...
def lightLevel(self) -> 'QAmbientLightReading.LightLevel': ...
class QAmbientLightFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QAmbientLightFilter') -> None: ...
def filter(self, reading: QAmbientLightReading) -> bool: ... # type: ignore[override]
class QAmbientLightSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QAmbientLightReading: ...
class QAmbientTemperatureReading(QSensorReading):
def setTemperature(self, temperature: float) -> None: ...
def temperature(self) -> float: ...
class QAmbientTemperatureFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QAmbientTemperatureFilter') -> None: ...
def filter(self, reading: QAmbientTemperatureReading) -> bool: ... # type: ignore[override]
class QAmbientTemperatureSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QAmbientTemperatureReading: ...
class QCompassReading(QSensorReading):
def setCalibrationLevel(self, calibrationLevel: float) -> None: ...
def calibrationLevel(self) -> float: ...
def setAzimuth(self, azimuth: float) -> None: ...
def azimuth(self) -> float: ...
class QCompassFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QCompassFilter') -> None: ...
def filter(self, reading: QCompassReading) -> bool: ... # type: ignore[override]
class QCompass(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QCompassReading: ...
class QDistanceReading(QSensorReading):
def setDistance(self, distance: float) -> None: ...
def distance(self) -> float: ...
class QDistanceFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDistanceFilter') -> None: ...
def filter(self, reading: QDistanceReading) -> bool: ... # type: ignore[override]
class QDistanceSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QDistanceReading: ...
class QGyroscopeReading(QSensorReading):
def setZ(self, z: float) -> None: ...
def z(self) -> float: ...
def setY(self, y: float) -> None: ...
def y(self) -> float: ...
def setX(self, x: float) -> None: ...
def x(self) -> float: ...
class QGyroscopeFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QGyroscopeFilter') -> None: ...
def filter(self, reading: QGyroscopeReading) -> bool: ... # type: ignore[override]
class QGyroscope(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QGyroscopeReading: ...
class QHolsterReading(QSensorReading):
def setHolstered(self, holstered: bool) -> None: ...
def holstered(self) -> bool: ...
class QHolsterFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QHolsterFilter') -> None: ...
def filter(self, reading: QHolsterReading) -> bool: ... # type: ignore[override]
class QHolsterSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QHolsterReading: ...
class QHumidityReading(QSensorReading):
def setAbsoluteHumidity(self, value: float) -> None: ...
def absoluteHumidity(self) -> float: ...
def setRelativeHumidity(self, percent: float) -> None: ...
def relativeHumidity(self) -> float: ...
class QHumidityFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QHumidityFilter') -> None: ...
def filter(self, reading: QHumidityReading) -> bool: ... # type: ignore[override]
class QHumiditySensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QHumidityReading: ...
class QIRProximityReading(QSensorReading):
def setReflectance(self, reflectance: float) -> None: ...
def reflectance(self) -> float: ...
class QIRProximityFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QIRProximityFilter') -> None: ...
def filter(self, reading: QIRProximityReading) -> bool: ... # type: ignore[override]
class QIRProximitySensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QIRProximityReading: ...
class QLidReading(QSensorReading):
def frontLidChanged(self, closed: bool) -> None: ...
def backLidChanged(self, closed: bool) -> None: ...
def setFrontLidClosed(self, closed: bool) -> None: ...
def frontLidClosed(self) -> bool: ...
def setBackLidClosed(self, closed: bool) -> None: ...
def backLidClosed(self) -> bool: ...
class QLidFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QLidFilter') -> None: ...
def filter(self, reading: QLidReading) -> bool: ... # type: ignore[override]
class QLidSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QLidReading: ...
class QLightReading(QSensorReading):
def setLux(self, lux: float) -> None: ...
def lux(self) -> float: ...
class QLightFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QLightFilter') -> None: ...
def filter(self, reading: QLightReading) -> bool: ... # type: ignore[override]
class QLightSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def fieldOfViewChanged(self, fieldOfView: float) -> None: ...
def setFieldOfView(self, fieldOfView: float) -> None: ...
def fieldOfView(self) -> float: ...
def reading(self) -> QLightReading: ...
class QMagnetometerReading(QSensorReading):
def setCalibrationLevel(self, calibrationLevel: float) -> None: ...
def calibrationLevel(self) -> float: ...
def setZ(self, z: float) -> None: ...
def z(self) -> float: ...
def setY(self, y: float) -> None: ...
def y(self) -> float: ...
def setX(self, x: float) -> None: ...
def x(self) -> float: ...
class QMagnetometerFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QMagnetometerFilter') -> None: ...
def filter(self, reading: QMagnetometerReading) -> bool: ... # type: ignore[override]
class QMagnetometer(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def returnGeoValuesChanged(self, returnGeoValues: bool) -> None: ...
def setReturnGeoValues(self, returnGeoValues: bool) -> None: ...
def returnGeoValues(self) -> bool: ...
def reading(self) -> QMagnetometerReading: ...
class QOrientationReading(QSensorReading):
class Orientation(int): ...
Undefined = ... # type: 'QOrientationReading.Orientation'
TopUp = ... # type: 'QOrientationReading.Orientation'
TopDown = ... # type: 'QOrientationReading.Orientation'
LeftUp = ... # type: 'QOrientationReading.Orientation'
RightUp = ... # type: 'QOrientationReading.Orientation'
FaceUp = ... # type: 'QOrientationReading.Orientation'
FaceDown = ... # type: 'QOrientationReading.Orientation'
def setOrientation(self, orientation: 'QOrientationReading.Orientation') -> None: ...
def orientation(self) -> 'QOrientationReading.Orientation': ...
class QOrientationFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QOrientationFilter') -> None: ...
def filter(self, reading: QOrientationReading) -> bool: ... # type: ignore[override]
class QOrientationSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QOrientationReading: ...
class QPressureReading(QSensorReading):
def setTemperature(self, temperature: float) -> None: ...
def temperature(self) -> float: ...
def setPressure(self, pressure: float) -> None: ...
def pressure(self) -> float: ...
class QPressureFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QPressureFilter') -> None: ...
def filter(self, reading: QPressureReading) -> bool: ... # type: ignore[override]
class QPressureSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QPressureReading: ...
class QProximityReading(QSensorReading):
def setClose(self, close: bool) -> None: ...
def close(self) -> bool: ...
class QProximityFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QProximityFilter') -> None: ...
def filter(self, reading: QProximityReading) -> bool: ... # type: ignore[override]
class QProximitySensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def reading(self) -> QProximityReading: ...
class qoutputrange(sip.simplewrapper):
accuracy = ... # type: float
maximum = ... # type: float
minimum = ... # type: float
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'qoutputrange') -> None: ...
class QTapReading(QSensorReading):
class TapDirection(int): ...
Undefined = ... # type: 'QTapReading.TapDirection'
X = ... # type: 'QTapReading.TapDirection'
Y = ... # type: 'QTapReading.TapDirection'
Z = ... # type: 'QTapReading.TapDirection'
X_Pos = ... # type: 'QTapReading.TapDirection'
Y_Pos = ... # type: 'QTapReading.TapDirection'
Z_Pos = ... # type: 'QTapReading.TapDirection'
X_Neg = ... # type: 'QTapReading.TapDirection'
Y_Neg = ... # type: 'QTapReading.TapDirection'
Z_Neg = ... # type: 'QTapReading.TapDirection'
X_Both = ... # type: 'QTapReading.TapDirection'
Y_Both = ... # type: 'QTapReading.TapDirection'
Z_Both = ... # type: 'QTapReading.TapDirection'
def setDoubleTap(self, doubleTap: bool) -> None: ...
def isDoubleTap(self) -> bool: ...
def setTapDirection(self, tapDirection: 'QTapReading.TapDirection') -> None: ...
def tapDirection(self) -> 'QTapReading.TapDirection': ...
class QTapFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QTapFilter') -> None: ...
def filter(self, reading: QTapReading) -> bool: ... # type: ignore[override]
class QTapSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def returnDoubleTapEventsChanged(self, returnDoubleTapEvents: bool) -> None: ...
def setReturnDoubleTapEvents(self, returnDoubleTapEvents: bool) -> None: ...
def returnDoubleTapEvents(self) -> bool: ...
def reading(self) -> QTapReading: ...
class QTiltReading(QSensorReading):
def setXRotation(self, x: float) -> None: ...
def xRotation(self) -> float: ...
def setYRotation(self, y: float) -> None: ...
def yRotation(self) -> float: ...
class QTiltFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QTiltFilter') -> None: ...
def filter(self, reading: QTiltReading) -> bool: ... # type: ignore[override]
class QTiltSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def calibrate(self) -> None: ...
def reading(self) -> QTiltReading: ...
class QRotationReading(QSensorReading):
def setFromEuler(self, x: float, y: float, z: float) -> None: ...
def z(self) -> float: ...
def y(self) -> float: ...
def x(self) -> float: ...
class QRotationFilter(QSensorFilter):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QRotationFilter') -> None: ...
def filter(self, reading: QRotationReading) -> bool: ... # type: ignore[override]
class QRotationSensor(QSensor):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def hasZChanged(self, hasZ: bool) -> None: ...
def setHasZ(self, hasZ: bool) -> None: ...
def hasZ(self) -> bool: ...
def reading(self) -> QRotationReading: ...

View File

@ -0,0 +1,240 @@
# The PEP 484 type hints stub file for the QtSerialPort module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QSerialPort(QtCore.QIODevice):
class SerialPortError(int): ...
NoError = ... # type: 'QSerialPort.SerialPortError'
DeviceNotFoundError = ... # type: 'QSerialPort.SerialPortError'
PermissionError = ... # type: 'QSerialPort.SerialPortError'
OpenError = ... # type: 'QSerialPort.SerialPortError'
ParityError = ... # type: 'QSerialPort.SerialPortError'
FramingError = ... # type: 'QSerialPort.SerialPortError'
BreakConditionError = ... # type: 'QSerialPort.SerialPortError'
WriteError = ... # type: 'QSerialPort.SerialPortError'
ReadError = ... # type: 'QSerialPort.SerialPortError'
ResourceError = ... # type: 'QSerialPort.SerialPortError'
UnsupportedOperationError = ... # type: 'QSerialPort.SerialPortError'
TimeoutError = ... # type: 'QSerialPort.SerialPortError'
NotOpenError = ... # type: 'QSerialPort.SerialPortError'
UnknownError = ... # type: 'QSerialPort.SerialPortError'
class DataErrorPolicy(int): ...
SkipPolicy = ... # type: 'QSerialPort.DataErrorPolicy'
PassZeroPolicy = ... # type: 'QSerialPort.DataErrorPolicy'
IgnorePolicy = ... # type: 'QSerialPort.DataErrorPolicy'
StopReceivingPolicy = ... # type: 'QSerialPort.DataErrorPolicy'
UnknownPolicy = ... # type: 'QSerialPort.DataErrorPolicy'
class PinoutSignal(int): ...
NoSignal = ... # type: 'QSerialPort.PinoutSignal'
TransmittedDataSignal = ... # type: 'QSerialPort.PinoutSignal'
ReceivedDataSignal = ... # type: 'QSerialPort.PinoutSignal'
DataTerminalReadySignal = ... # type: 'QSerialPort.PinoutSignal'
DataCarrierDetectSignal = ... # type: 'QSerialPort.PinoutSignal'
DataSetReadySignal = ... # type: 'QSerialPort.PinoutSignal'
RingIndicatorSignal = ... # type: 'QSerialPort.PinoutSignal'
RequestToSendSignal = ... # type: 'QSerialPort.PinoutSignal'
ClearToSendSignal = ... # type: 'QSerialPort.PinoutSignal'
SecondaryTransmittedDataSignal = ... # type: 'QSerialPort.PinoutSignal'
SecondaryReceivedDataSignal = ... # type: 'QSerialPort.PinoutSignal'
class FlowControl(int): ...
NoFlowControl = ... # type: 'QSerialPort.FlowControl'
HardwareControl = ... # type: 'QSerialPort.FlowControl'
SoftwareControl = ... # type: 'QSerialPort.FlowControl'
UnknownFlowControl = ... # type: 'QSerialPort.FlowControl'
class StopBits(int): ...
OneStop = ... # type: 'QSerialPort.StopBits'
OneAndHalfStop = ... # type: 'QSerialPort.StopBits'
TwoStop = ... # type: 'QSerialPort.StopBits'
UnknownStopBits = ... # type: 'QSerialPort.StopBits'
class Parity(int): ...
NoParity = ... # type: 'QSerialPort.Parity'
EvenParity = ... # type: 'QSerialPort.Parity'
OddParity = ... # type: 'QSerialPort.Parity'
SpaceParity = ... # type: 'QSerialPort.Parity'
MarkParity = ... # type: 'QSerialPort.Parity'
UnknownParity = ... # type: 'QSerialPort.Parity'
class DataBits(int): ...
Data5 = ... # type: 'QSerialPort.DataBits'
Data6 = ... # type: 'QSerialPort.DataBits'
Data7 = ... # type: 'QSerialPort.DataBits'
Data8 = ... # type: 'QSerialPort.DataBits'
UnknownDataBits = ... # type: 'QSerialPort.DataBits'
class BaudRate(int): ...
Baud1200 = ... # type: 'QSerialPort.BaudRate'
Baud2400 = ... # type: 'QSerialPort.BaudRate'
Baud4800 = ... # type: 'QSerialPort.BaudRate'
Baud9600 = ... # type: 'QSerialPort.BaudRate'
Baud19200 = ... # type: 'QSerialPort.BaudRate'
Baud38400 = ... # type: 'QSerialPort.BaudRate'
Baud57600 = ... # type: 'QSerialPort.BaudRate'
Baud115200 = ... # type: 'QSerialPort.BaudRate'
UnknownBaud = ... # type: 'QSerialPort.BaudRate'
class Direction(int): ...
Input = ... # type: 'QSerialPort.Direction'
Output = ... # type: 'QSerialPort.Direction'
AllDirections = ... # type: 'QSerialPort.Direction'
class Directions(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QSerialPort.Directions', 'QSerialPort.Direction']) -> None: ...
@typing.overload
def __init__(self, a0: 'QSerialPort.Directions') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QSerialPort.Directions': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
class PinoutSignals(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QSerialPort.PinoutSignals', 'QSerialPort.PinoutSignal']) -> None: ...
@typing.overload
def __init__(self, a0: 'QSerialPort.PinoutSignals') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QSerialPort.PinoutSignals': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, name: str, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, info: 'QSerialPortInfo', parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def errorOccurred(self, error: 'QSerialPort.SerialPortError') -> None: ...
def breakEnabledChanged(self, set: bool) -> None: ...
def isBreakEnabled(self) -> bool: ...
def handle(self) -> int: ...
def writeData(self, data: bytes) -> int: ...
def readLineData(self, maxlen: int) -> bytes: ...
def readData(self, maxlen: int) -> bytes: ...
def settingsRestoredOnCloseChanged(self, restore: bool) -> None: ...
def requestToSendChanged(self, set: bool) -> None: ...
def dataTerminalReadyChanged(self, set: bool) -> None: ...
def dataErrorPolicyChanged(self, policy: 'QSerialPort.DataErrorPolicy') -> None: ...
def flowControlChanged(self, flow: 'QSerialPort.FlowControl') -> None: ...
def stopBitsChanged(self, stopBits: 'QSerialPort.StopBits') -> None: ...
def parityChanged(self, parity: 'QSerialPort.Parity') -> None: ...
def dataBitsChanged(self, dataBits: 'QSerialPort.DataBits') -> None: ...
def baudRateChanged(self, baudRate: int, directions: typing.Union['QSerialPort.Directions', 'QSerialPort.Direction']) -> None: ...
def setBreakEnabled(self, enabled: bool = ...) -> bool: ...
def sendBreak(self, duration: int = ...) -> bool: ...
def waitForBytesWritten(self, msecs: int = ...) -> bool: ...
def waitForReadyRead(self, msecs: int = ...) -> bool: ...
def canReadLine(self) -> bool: ...
def bytesToWrite(self) -> int: ...
def bytesAvailable(self) -> int: ...
def isSequential(self) -> bool: ...
def setReadBufferSize(self, size: int) -> None: ...
def readBufferSize(self) -> int: ...
def clearError(self) -> None: ...
@typing.overload
def error(self) -> 'QSerialPort.SerialPortError': ...
@typing.overload
def error(self, serialPortError: 'QSerialPort.SerialPortError') -> None: ...
def dataErrorPolicy(self) -> 'QSerialPort.DataErrorPolicy': ...
def setDataErrorPolicy(self, policy: 'QSerialPort.DataErrorPolicy' = ...) -> bool: ...
def atEnd(self) -> bool: ...
def clear(self, dir: typing.Union['QSerialPort.Directions', 'QSerialPort.Direction'] = ...) -> bool: ...
def flush(self) -> bool: ...
def pinoutSignals(self) -> 'QSerialPort.PinoutSignals': ...
def isRequestToSend(self) -> bool: ...
def setRequestToSend(self, set: bool) -> bool: ...
def isDataTerminalReady(self) -> bool: ...
def setDataTerminalReady(self, set: bool) -> bool: ...
def flowControl(self) -> 'QSerialPort.FlowControl': ...
def setFlowControl(self, flow: 'QSerialPort.FlowControl') -> bool: ...
def stopBits(self) -> 'QSerialPort.StopBits': ...
def setStopBits(self, stopBits: 'QSerialPort.StopBits') -> bool: ...
def parity(self) -> 'QSerialPort.Parity': ...
def setParity(self, parity: 'QSerialPort.Parity') -> bool: ...
def dataBits(self) -> 'QSerialPort.DataBits': ...
def setDataBits(self, dataBits: 'QSerialPort.DataBits') -> bool: ...
def baudRate(self, dir: typing.Union['QSerialPort.Directions', 'QSerialPort.Direction'] = ...) -> int: ...
def setBaudRate(self, baudRate: int, dir: typing.Union['QSerialPort.Directions', 'QSerialPort.Direction'] = ...) -> bool: ...
def settingsRestoredOnClose(self) -> bool: ...
def setSettingsRestoredOnClose(self, restore: bool) -> None: ...
def close(self) -> None: ...
def open(self, mode: typing.Union[QtCore.QIODevice.OpenMode, QtCore.QIODevice.OpenModeFlag]) -> bool: ...
def setPort(self, info: 'QSerialPortInfo') -> None: ...
def portName(self) -> str: ...
def setPortName(self, name: str) -> None: ...
class QSerialPortInfo(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, port: QSerialPort) -> None: ...
@typing.overload
def __init__(self, name: str) -> None: ...
@typing.overload
def __init__(self, other: 'QSerialPortInfo') -> None: ...
def serialNumber(self) -> str: ...
def isNull(self) -> bool: ...
@staticmethod
def availablePorts() -> typing.List['QSerialPortInfo']: ...
@staticmethod
def standardBaudRates() -> typing.List[int]: ...
def isValid(self) -> bool: ...
def isBusy(self) -> bool: ...
def hasProductIdentifier(self) -> bool: ...
def hasVendorIdentifier(self) -> bool: ...
def productIdentifier(self) -> int: ...
def vendorIdentifier(self) -> int: ...
def manufacturer(self) -> str: ...
def description(self) -> str: ...
def systemLocation(self) -> str: ...
def portName(self) -> str: ...
def swap(self, other: 'QSerialPortInfo') -> None: ...

View File

@ -0,0 +1,668 @@
# The PEP 484 type hints stub file for the QtSql module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWidgets
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QSqlDriverCreatorBase(sip.wrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QSqlDriverCreatorBase') -> None: ...
def createObject(self) -> 'QSqlDriver': ...
class QSqlDatabase(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QSqlDatabase') -> None: ...
@typing.overload
def __init__(self, type: str) -> None: ...
@typing.overload
def __init__(self, driver: 'QSqlDriver') -> None: ...
def numericalPrecisionPolicy(self) -> 'QSql.NumericalPrecisionPolicy': ...
def setNumericalPrecisionPolicy(self, precisionPolicy: 'QSql.NumericalPrecisionPolicy') -> None: ...
@staticmethod
def isDriverAvailable(name: str) -> bool: ...
@staticmethod
def registerSqlDriver(name: str, creator: QSqlDriverCreatorBase) -> None: ...
@staticmethod
def connectionNames() -> typing.List[str]: ...
@staticmethod
def drivers() -> typing.List[str]: ...
@staticmethod
def contains(connectionName: str = ...) -> bool: ...
@staticmethod
def removeDatabase(connectionName: str) -> None: ...
@staticmethod
def database(connectionName: str = ..., open: bool = ...) -> 'QSqlDatabase': ...
@typing.overload
@staticmethod
def cloneDatabase(other: 'QSqlDatabase', connectionName: str) -> 'QSqlDatabase': ...
@typing.overload
@staticmethod
def cloneDatabase(other: str, connectionName: str) -> 'QSqlDatabase': ...
@typing.overload
@staticmethod
def addDatabase(type: str, connectionName: str = ...) -> 'QSqlDatabase': ...
@typing.overload
@staticmethod
def addDatabase(driver: 'QSqlDriver', connectionName: str = ...) -> 'QSqlDatabase': ...
def driver(self) -> 'QSqlDriver': ...
def connectionName(self) -> str: ...
def connectOptions(self) -> str: ...
def port(self) -> int: ...
def driverName(self) -> str: ...
def hostName(self) -> str: ...
def password(self) -> str: ...
def userName(self) -> str: ...
def databaseName(self) -> str: ...
def setConnectOptions(self, options: str = ...) -> None: ...
def setPort(self, p: int) -> None: ...
def setHostName(self, host: str) -> None: ...
def setPassword(self, password: str) -> None: ...
def setUserName(self, name: str) -> None: ...
def setDatabaseName(self, name: str) -> None: ...
def rollback(self) -> bool: ...
def commit(self) -> bool: ...
def transaction(self) -> bool: ...
def isValid(self) -> bool: ...
def lastError(self) -> 'QSqlError': ...
def exec(self, query: str = ...) -> 'QSqlQuery': ...
def exec_(self, query: str = ...) -> 'QSqlQuery': ...
def record(self, tablename: str) -> 'QSqlRecord': ...
def primaryIndex(self, tablename: str) -> 'QSqlIndex': ...
def tables(self, type: 'QSql.TableType' = ...) -> typing.List[str]: ...
def isOpenError(self) -> bool: ...
def isOpen(self) -> bool: ...
def close(self) -> None: ...
@typing.overload
def open(self) -> bool: ...
@typing.overload
def open(self, user: str, password: str) -> bool: ...
class QSqlDriver(QtCore.QObject):
class DbmsType(int): ...
UnknownDbms = ... # type: 'QSqlDriver.DbmsType'
MSSqlServer = ... # type: 'QSqlDriver.DbmsType'
MySqlServer = ... # type: 'QSqlDriver.DbmsType'
PostgreSQL = ... # type: 'QSqlDriver.DbmsType'
Oracle = ... # type: 'QSqlDriver.DbmsType'
Sybase = ... # type: 'QSqlDriver.DbmsType'
SQLite = ... # type: 'QSqlDriver.DbmsType'
Interbase = ... # type: 'QSqlDriver.DbmsType'
DB2 = ... # type: 'QSqlDriver.DbmsType'
class NotificationSource(int): ...
UnknownSource = ... # type: 'QSqlDriver.NotificationSource'
SelfSource = ... # type: 'QSqlDriver.NotificationSource'
OtherSource = ... # type: 'QSqlDriver.NotificationSource'
class IdentifierType(int): ...
FieldName = ... # type: 'QSqlDriver.IdentifierType'
TableName = ... # type: 'QSqlDriver.IdentifierType'
class StatementType(int): ...
WhereStatement = ... # type: 'QSqlDriver.StatementType'
SelectStatement = ... # type: 'QSqlDriver.StatementType'
UpdateStatement = ... # type: 'QSqlDriver.StatementType'
InsertStatement = ... # type: 'QSqlDriver.StatementType'
DeleteStatement = ... # type: 'QSqlDriver.StatementType'
class DriverFeature(int): ...
Transactions = ... # type: 'QSqlDriver.DriverFeature'
QuerySize = ... # type: 'QSqlDriver.DriverFeature'
BLOB = ... # type: 'QSqlDriver.DriverFeature'
Unicode = ... # type: 'QSqlDriver.DriverFeature'
PreparedQueries = ... # type: 'QSqlDriver.DriverFeature'
NamedPlaceholders = ... # type: 'QSqlDriver.DriverFeature'
PositionalPlaceholders = ... # type: 'QSqlDriver.DriverFeature'
LastInsertId = ... # type: 'QSqlDriver.DriverFeature'
BatchOperations = ... # type: 'QSqlDriver.DriverFeature'
SimpleLocking = ... # type: 'QSqlDriver.DriverFeature'
LowPrecisionNumbers = ... # type: 'QSqlDriver.DriverFeature'
EventNotifications = ... # type: 'QSqlDriver.DriverFeature'
FinishQuery = ... # type: 'QSqlDriver.DriverFeature'
MultipleResultSets = ... # type: 'QSqlDriver.DriverFeature'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def dbmsType(self) -> 'QSqlDriver.DbmsType': ...
def numericalPrecisionPolicy(self) -> 'QSql.NumericalPrecisionPolicy': ...
def setNumericalPrecisionPolicy(self, precisionPolicy: 'QSql.NumericalPrecisionPolicy') -> None: ...
def stripDelimiters(self, identifier: str, type: 'QSqlDriver.IdentifierType') -> str: ...
def isIdentifierEscaped(self, identifier: str, type: 'QSqlDriver.IdentifierType') -> bool: ...
@typing.overload
def notification(self, name: str) -> None: ...
@typing.overload
def notification(self, name: str, source: 'QSqlDriver.NotificationSource', payload: typing.Any) -> None: ...
def subscribedToNotifications(self) -> typing.List[str]: ...
def unsubscribeFromNotification(self, name: str) -> bool: ...
def subscribeToNotification(self, name: str) -> bool: ...
def setLastError(self, e: 'QSqlError') -> None: ...
def setOpenError(self, e: bool) -> None: ...
def setOpen(self, o: bool) -> None: ...
def open(self, db: str, user: str = ..., password: str = ..., host: str = ..., port: int = ..., options: str = ...) -> bool: ...
def createResult(self) -> 'QSqlResult': ...
def close(self) -> None: ...
def hasFeature(self, f: 'QSqlDriver.DriverFeature') -> bool: ...
def handle(self) -> typing.Any: ...
def lastError(self) -> 'QSqlError': ...
def sqlStatement(self, type: 'QSqlDriver.StatementType', tableName: str, rec: 'QSqlRecord', preparedStatement: bool) -> str: ...
def escapeIdentifier(self, identifier: str, type: 'QSqlDriver.IdentifierType') -> str: ...
def formatValue(self, field: 'QSqlField', trimStrings: bool = ...) -> str: ...
def record(self, tableName: str) -> 'QSqlRecord': ...
def primaryIndex(self, tableName: str) -> 'QSqlIndex': ...
def tables(self, tableType: 'QSql.TableType') -> typing.List[str]: ...
def rollbackTransaction(self) -> bool: ...
def commitTransaction(self) -> bool: ...
def beginTransaction(self) -> bool: ...
def isOpenError(self) -> bool: ...
def isOpen(self) -> bool: ...
class QSqlError(sip.simplewrapper):
class ErrorType(int): ...
NoError = ... # type: 'QSqlError.ErrorType'
ConnectionError = ... # type: 'QSqlError.ErrorType'
StatementError = ... # type: 'QSqlError.ErrorType'
TransactionError = ... # type: 'QSqlError.ErrorType'
UnknownError = ... # type: 'QSqlError.ErrorType'
@typing.overload
def __init__(self, driverText: str = ..., databaseText: str = ..., type: 'QSqlError.ErrorType' = ..., errorCode: str = ...) -> None: ...
@typing.overload
def __init__(self, driverText: str, databaseText: str, type: 'QSqlError.ErrorType', number: int) -> None: ...
@typing.overload
def __init__(self, other: 'QSqlError') -> None: ...
def swap(self, other: 'QSqlError') -> None: ...
def nativeErrorCode(self) -> str: ...
def isValid(self) -> bool: ...
def text(self) -> str: ...
def setNumber(self, number: int) -> None: ...
def number(self) -> int: ...
def setType(self, type: 'QSqlError.ErrorType') -> None: ...
def type(self) -> 'QSqlError.ErrorType': ...
def setDatabaseText(self, databaseText: str) -> None: ...
def databaseText(self) -> str: ...
def setDriverText(self, driverText: str) -> None: ...
def driverText(self) -> str: ...
class QSqlField(sip.simplewrapper):
class RequiredStatus(int): ...
Unknown = ... # type: 'QSqlField.RequiredStatus'
Optional = ... # type: 'QSqlField.RequiredStatus'
Required = ... # type: 'QSqlField.RequiredStatus'
@typing.overload
def __init__(self, fieldName: str = ..., type: QtCore.QVariant.Type = ...) -> None: ...
@typing.overload
def __init__(self, fieldName: str, type: QtCore.QVariant.Type, tableName: str) -> None: ...
@typing.overload
def __init__(self, other: 'QSqlField') -> None: ...
def tableName(self) -> str: ...
def setTableName(self, tableName: str) -> None: ...
def isValid(self) -> bool: ...
def isGenerated(self) -> bool: ...
def typeID(self) -> int: ...
def defaultValue(self) -> typing.Any: ...
def precision(self) -> int: ...
def length(self) -> int: ...
def requiredStatus(self) -> 'QSqlField.RequiredStatus': ...
def setAutoValue(self, autoVal: bool) -> None: ...
def setGenerated(self, gen: bool) -> None: ...
def setSqlType(self, type: int) -> None: ...
def setDefaultValue(self, value: typing.Any) -> None: ...
def setPrecision(self, precision: int) -> None: ...
def setLength(self, fieldLength: int) -> None: ...
def setRequired(self, required: bool) -> None: ...
def setRequiredStatus(self, status: 'QSqlField.RequiredStatus') -> None: ...
def setType(self, type: QtCore.QVariant.Type) -> None: ...
def isAutoValue(self) -> bool: ...
def type(self) -> QtCore.QVariant.Type: ...
def clear(self) -> None: ...
def isReadOnly(self) -> bool: ...
def setReadOnly(self, readOnly: bool) -> None: ...
def isNull(self) -> bool: ...
def name(self) -> str: ...
def setName(self, name: str) -> None: ...
def value(self) -> typing.Any: ...
def setValue(self, value: typing.Any) -> None: ...
class QSqlRecord(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QSqlRecord') -> None: ...
def keyValues(self, keyFields: 'QSqlRecord') -> 'QSqlRecord': ...
def __len__(self) -> int: ...
def count(self) -> int: ...
def clearValues(self) -> None: ...
def clear(self) -> None: ...
def contains(self, name: str) -> bool: ...
def isEmpty(self) -> bool: ...
def remove(self, pos: int) -> None: ...
def insert(self, pos: int, field: QSqlField) -> None: ...
def replace(self, pos: int, field: QSqlField) -> None: ...
def append(self, field: QSqlField) -> None: ...
@typing.overload
def setGenerated(self, name: str, generated: bool) -> None: ...
@typing.overload
def setGenerated(self, i: int, generated: bool) -> None: ...
@typing.overload
def isGenerated(self, i: int) -> bool: ...
@typing.overload
def isGenerated(self, name: str) -> bool: ...
@typing.overload
def field(self, i: int) -> QSqlField: ...
@typing.overload
def field(self, name: str) -> QSqlField: ...
def fieldName(self, i: int) -> str: ...
def indexOf(self, name: str) -> int: ...
@typing.overload
def isNull(self, i: int) -> bool: ...
@typing.overload
def isNull(self, name: str) -> bool: ...
@typing.overload
def setNull(self, i: int) -> None: ...
@typing.overload
def setNull(self, name: str) -> None: ...
@typing.overload
def setValue(self, i: int, val: typing.Any) -> None: ...
@typing.overload
def setValue(self, name: str, val: typing.Any) -> None: ...
@typing.overload
def value(self, i: int) -> typing.Any: ...
@typing.overload
def value(self, name: str) -> typing.Any: ...
class QSqlIndex(QSqlRecord):
@typing.overload
def __init__(self, cursorName: str = ..., name: str = ...) -> None: ...
@typing.overload
def __init__(self, other: 'QSqlIndex') -> None: ...
def setDescending(self, i: int, desc: bool) -> None: ...
def isDescending(self, i: int) -> bool: ...
@typing.overload
def append(self, field: QSqlField) -> None: ...
@typing.overload
def append(self, field: QSqlField, desc: bool) -> None: ...
def name(self) -> str: ...
def setName(self, name: str) -> None: ...
def cursorName(self) -> str: ...
def setCursorName(self, cursorName: str) -> None: ...
class QSqlQuery(sip.simplewrapper):
class BatchExecutionMode(int): ...
ValuesAsRows = ... # type: 'QSqlQuery.BatchExecutionMode'
ValuesAsColumns = ... # type: 'QSqlQuery.BatchExecutionMode'
@typing.overload
def __init__(self, r: 'QSqlResult') -> None: ...
@typing.overload
def __init__(self, query: str = ..., db: QSqlDatabase = ...) -> None: ...
@typing.overload
def __init__(self, db: QSqlDatabase) -> None: ...
@typing.overload
def __init__(self, other: 'QSqlQuery') -> None: ...
def nextResult(self) -> bool: ...
def finish(self) -> None: ...
def numericalPrecisionPolicy(self) -> 'QSql.NumericalPrecisionPolicy': ...
def setNumericalPrecisionPolicy(self, precisionPolicy: 'QSql.NumericalPrecisionPolicy') -> None: ...
def lastInsertId(self) -> typing.Any: ...
def executedQuery(self) -> str: ...
def boundValues(self) -> typing.Dict[str, typing.Any]: ...
@typing.overload
def boundValue(self, placeholder: str) -> typing.Any: ...
@typing.overload
def boundValue(self, pos: int) -> typing.Any: ...
def addBindValue(self, val: typing.Any, type: typing.Union['QSql.ParamType', 'QSql.ParamTypeFlag'] = ...) -> None: ...
@typing.overload
def bindValue(self, placeholder: str, val: typing.Any, type: typing.Union['QSql.ParamType', 'QSql.ParamTypeFlag'] = ...) -> None: ...
@typing.overload
def bindValue(self, pos: int, val: typing.Any, type: typing.Union['QSql.ParamType', 'QSql.ParamTypeFlag'] = ...) -> None: ...
def prepare(self, query: str) -> bool: ...
def execBatch(self, mode: 'QSqlQuery.BatchExecutionMode' = ...) -> bool: ...
def clear(self) -> None: ...
def last(self) -> bool: ...
def first(self) -> bool: ...
def previous(self) -> bool: ...
def next(self) -> bool: ...
def seek(self, index: int, relative: bool = ...) -> bool: ...
@typing.overload
def value(self, i: int) -> typing.Any: ...
@typing.overload
def value(self, name: str) -> typing.Any: ...
@typing.overload
def exec(self, query: str) -> bool: ...
@typing.overload
def exec(self) -> bool: ...
@typing.overload
def exec_(self, query: str) -> bool: ...
@typing.overload
def exec_(self) -> bool: ...
def setForwardOnly(self, forward: bool) -> None: ...
def record(self) -> QSqlRecord: ...
def isForwardOnly(self) -> bool: ...
def result(self) -> 'QSqlResult': ...
def driver(self) -> QSqlDriver: ...
def size(self) -> int: ...
def isSelect(self) -> bool: ...
def lastError(self) -> QSqlError: ...
def numRowsAffected(self) -> int: ...
def lastQuery(self) -> str: ...
def at(self) -> int: ...
@typing.overload
def isNull(self, field: int) -> bool: ...
@typing.overload
def isNull(self, name: str) -> bool: ...
def isActive(self) -> bool: ...
def isValid(self) -> bool: ...
class QSqlQueryModel(QtCore.QAbstractTableModel):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def roleNames(self) -> typing.Dict[int, QtCore.QByteArray]: ...
def endRemoveColumns(self) -> None: ...
def beginRemoveColumns(self, parent: QtCore.QModelIndex, first: int, last: int) -> None: ...
def endInsertColumns(self) -> None: ...
def beginInsertColumns(self, parent: QtCore.QModelIndex, first: int, last: int) -> None: ...
def endRemoveRows(self) -> None: ...
def beginRemoveRows(self, parent: QtCore.QModelIndex, first: int, last: int) -> None: ...
def endInsertRows(self) -> None: ...
def beginInsertRows(self, parent: QtCore.QModelIndex, first: int, last: int) -> None: ...
def endResetModel(self) -> None: ...
def beginResetModel(self) -> None: ...
def setLastError(self, error: QSqlError) -> None: ...
def indexInQuery(self, item: QtCore.QModelIndex) -> QtCore.QModelIndex: ...
def queryChange(self) -> None: ...
def canFetchMore(self, parent: QtCore.QModelIndex = ...) -> bool: ...
def fetchMore(self, parent: QtCore.QModelIndex = ...) -> None: ...
def lastError(self) -> QSqlError: ...
def clear(self) -> None: ...
def query(self) -> QSqlQuery: ...
@typing.overload
def setQuery(self, query: QSqlQuery) -> None: ...
@typing.overload
def setQuery(self, query: str, db: QSqlDatabase = ...) -> None: ...
def removeColumns(self, column: int, count: int, parent: QtCore.QModelIndex = ...) -> bool: ...
def insertColumns(self, column: int, count: int, parent: QtCore.QModelIndex = ...) -> bool: ...
def setHeaderData(self, section: int, orientation: QtCore.Qt.Orientation, value: typing.Any, role: int = ...) -> bool: ...
def headerData(self, section: int, orientation: QtCore.Qt.Orientation, role: int = ...) -> typing.Any: ...
def data(self, item: QtCore.QModelIndex, role: int = ...) -> typing.Any: ...
@typing.overload
def record(self, row: int) -> QSqlRecord: ...
@typing.overload
def record(self) -> QSqlRecord: ...
def columnCount(self, parent: QtCore.QModelIndex = ...) -> int: ...
def rowCount(self, parent: QtCore.QModelIndex = ...) -> int: ...
class QSqlRelationalDelegate(QtWidgets.QItemDelegate):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def setEditorData(self, editor: QtWidgets.QWidget, index: QtCore.QModelIndex) -> None: ...
def setModelData(self, editor: QtWidgets.QWidget, model: QtCore.QAbstractItemModel, index: QtCore.QModelIndex) -> None: ...
def createEditor(self, parent: QtWidgets.QWidget, option: QtWidgets.QStyleOptionViewItem, index: QtCore.QModelIndex) -> QtWidgets.QWidget: ...
class QSqlRelation(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, aTableName: str, indexCol: str, displayCol: str) -> None: ...
@typing.overload
def __init__(self, a0: 'QSqlRelation') -> None: ...
def swap(self, other: 'QSqlRelation') -> None: ...
def isValid(self) -> bool: ...
def displayColumn(self) -> str: ...
def indexColumn(self) -> str: ...
def tableName(self) -> str: ...
class QSqlTableModel(QSqlQueryModel):
class EditStrategy(int): ...
OnFieldChange = ... # type: 'QSqlTableModel.EditStrategy'
OnRowChange = ... # type: 'QSqlTableModel.EditStrategy'
OnManualSubmit = ... # type: 'QSqlTableModel.EditStrategy'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ..., db: QSqlDatabase = ...) -> None: ...
def primaryValues(self, row: int) -> QSqlRecord: ...
@typing.overload # type: ignore[override]
def record(self) -> QSqlRecord: ...
@typing.overload
def record(self, row: int) -> QSqlRecord: ...
def selectRow(self, row: int) -> bool: ...
def indexInQuery(self, item: QtCore.QModelIndex) -> QtCore.QModelIndex: ...
def setQuery(self, query: QSqlQuery) -> None: ... # type: ignore[override]
def setPrimaryKey(self, key: QSqlIndex) -> None: ...
def selectStatement(self) -> str: ...
def orderByClause(self) -> str: ...
def deleteRowFromTable(self, row: int) -> bool: ...
def insertRowIntoTable(self, values: QSqlRecord) -> bool: ...
def updateRowInTable(self, row: int, values: QSqlRecord) -> bool: ...
def beforeDelete(self, row: int) -> None: ...
def beforeUpdate(self, row: int, record: QSqlRecord) -> None: ...
def beforeInsert(self, record: QSqlRecord) -> None: ...
def primeInsert(self, row: int, record: QSqlRecord) -> None: ...
def revertAll(self) -> None: ...
def submitAll(self) -> bool: ...
def revert(self) -> None: ...
def submit(self) -> bool: ...
def revertRow(self, row: int) -> None: ...
def setRecord(self, row: int, record: QSqlRecord) -> bool: ...
def insertRecord(self, row: int, record: QSqlRecord) -> bool: ...
def insertRows(self, row: int, count: int, parent: QtCore.QModelIndex = ...) -> bool: ...
def removeRows(self, row: int, count: int, parent: QtCore.QModelIndex = ...) -> bool: ...
def removeColumns(self, column: int, count: int, parent: QtCore.QModelIndex = ...) -> bool: ...
def rowCount(self, parent: QtCore.QModelIndex = ...) -> int: ...
def setFilter(self, filter: str) -> None: ...
def filter(self) -> str: ...
def setSort(self, column: int, order: QtCore.Qt.SortOrder) -> None: ...
def sort(self, column: int, order: QtCore.Qt.SortOrder) -> None: ... # type: ignore[override]
def fieldIndex(self, fieldName: str) -> int: ...
def database(self) -> QSqlDatabase: ...
def primaryKey(self) -> QSqlIndex: ...
def editStrategy(self) -> 'QSqlTableModel.EditStrategy': ...
def setEditStrategy(self, strategy: 'QSqlTableModel.EditStrategy') -> None: ...
def clear(self) -> None: ...
@typing.overload
def isDirty(self, index: QtCore.QModelIndex) -> bool: ...
@typing.overload
def isDirty(self) -> bool: ...
def headerData(self, section: int, orientation: QtCore.Qt.Orientation, role: int = ...) -> typing.Any: ...
def setData(self, index: QtCore.QModelIndex, value: typing.Any, role: int = ...) -> bool: ...
def data(self, idx: QtCore.QModelIndex, role: int = ...) -> typing.Any: ...
def flags(self, index: QtCore.QModelIndex) -> QtCore.Qt.ItemFlags: ...
def tableName(self) -> str: ...
def setTable(self, tableName: str) -> None: ...
def select(self) -> bool: ...
class QSqlRelationalTableModel(QSqlTableModel):
class JoinMode(int): ...
InnerJoin = ... # type: 'QSqlRelationalTableModel.JoinMode'
LeftJoin = ... # type: 'QSqlRelationalTableModel.JoinMode'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ..., db: QSqlDatabase = ...) -> None: ...
def setJoinMode(self, joinMode: 'QSqlRelationalTableModel.JoinMode') -> None: ...
def insertRowIntoTable(self, values: QSqlRecord) -> bool: ...
def orderByClause(self) -> str: ...
def updateRowInTable(self, row: int, values: QSqlRecord) -> bool: ...
def selectStatement(self) -> str: ...
def removeColumns(self, column: int, count: int, parent: QtCore.QModelIndex = ...) -> bool: ...
def revertRow(self, row: int) -> None: ...
def relationModel(self, column: int) -> QSqlTableModel: ...
def relation(self, column: int) -> QSqlRelation: ...
def setRelation(self, column: int, relation: QSqlRelation) -> None: ...
def setTable(self, tableName: str) -> None: ...
def select(self) -> bool: ...
def clear(self) -> None: ...
def setData(self, index: QtCore.QModelIndex, value: typing.Any, role: int = ...) -> bool: ... # Rename first argument from item to index
def data(self, index: QtCore.QModelIndex, role: int = ...) -> typing.Any: ... # Rename first argument from item to index
class QSqlResult(sip.wrapper):
class BindingSyntax(int): ...
PositionalBinding = ... # type: 'QSqlResult.BindingSyntax'
NamedBinding = ... # type: 'QSqlResult.BindingSyntax'
def __init__(self, db: QSqlDriver) -> None: ...
def lastInsertId(self) -> typing.Any: ...
def record(self) -> QSqlRecord: ...
def numRowsAffected(self) -> int: ...
def size(self) -> int: ...
def fetchLast(self) -> bool: ...
def fetchFirst(self) -> bool: ...
def fetchPrevious(self) -> bool: ...
def fetchNext(self) -> bool: ...
def fetch(self, i: int) -> bool: ...
def reset(self, sqlquery: str) -> bool: ...
def isNull(self, i: int) -> bool: ...
def data(self, i: int) -> typing.Any: ...
def bindingSyntax(self) -> 'QSqlResult.BindingSyntax': ...
def hasOutValues(self) -> bool: ...
def clear(self) -> None: ...
def boundValueName(self, pos: int) -> str: ...
def executedQuery(self) -> str: ...
def boundValues(self) -> typing.List[typing.Any]: ...
def boundValueCount(self) -> int: ...
@typing.overload
def bindValueType(self, placeholder: str) -> 'QSql.ParamType': ...
@typing.overload
def bindValueType(self, pos: int) -> 'QSql.ParamType': ...
@typing.overload
def boundValue(self, placeholder: str) -> typing.Any: ...
@typing.overload
def boundValue(self, pos: int) -> typing.Any: ...
def addBindValue(self, val: typing.Any, type: typing.Union['QSql.ParamType', 'QSql.ParamTypeFlag']) -> None: ...
@typing.overload
def bindValue(self, pos: int, val: typing.Any, type: typing.Union['QSql.ParamType', 'QSql.ParamTypeFlag']) -> None: ...
@typing.overload
def bindValue(self, placeholder: str, val: typing.Any, type: typing.Union['QSql.ParamType', 'QSql.ParamTypeFlag']) -> None: ...
def savePrepare(self, sqlquery: str) -> bool: ...
def prepare(self, query: str) -> bool: ...
def exec(self) -> bool: ...
def exec_(self) -> bool: ...
def setForwardOnly(self, forward: bool) -> None: ...
def setSelect(self, s: bool) -> None: ...
def setQuery(self, query: str) -> None: ...
def setLastError(self, e: QSqlError) -> None: ...
def setActive(self, a: bool) -> None: ...
def setAt(self, at: int) -> None: ...
def driver(self) -> QSqlDriver: ...
def isForwardOnly(self) -> bool: ...
def isSelect(self) -> bool: ...
def isActive(self) -> bool: ...
def isValid(self) -> bool: ...
def lastError(self) -> QSqlError: ...
def lastQuery(self) -> str: ...
def at(self) -> int: ...
def handle(self) -> typing.Any: ...
class QSql(sip.simplewrapper):
class NumericalPrecisionPolicy(int): ...
LowPrecisionInt32 = ... # type: 'QSql.NumericalPrecisionPolicy'
LowPrecisionInt64 = ... # type: 'QSql.NumericalPrecisionPolicy'
LowPrecisionDouble = ... # type: 'QSql.NumericalPrecisionPolicy'
HighPrecision = ... # type: 'QSql.NumericalPrecisionPolicy'
class TableType(int): ...
Tables = ... # type: 'QSql.TableType'
SystemTables = ... # type: 'QSql.TableType'
Views = ... # type: 'QSql.TableType'
AllTables = ... # type: 'QSql.TableType'
class ParamTypeFlag(int): ...
In = ... # type: 'QSql.ParamTypeFlag'
Out = ... # type: 'QSql.ParamTypeFlag'
InOut = ... # type: 'QSql.ParamTypeFlag'
Binary = ... # type: 'QSql.ParamTypeFlag'
class Location(int): ...
BeforeFirstRow = ... # type: 'QSql.Location'
AfterLastRow = ... # type: 'QSql.Location'
class ParamType(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QSql.ParamType', 'QSql.ParamTypeFlag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QSql.ParamType') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QSql.ParamType': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...

View File

@ -0,0 +1,145 @@
# The PEP 484 type hints stub file for the QtSvg module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWidgets
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QGraphicsSvgItem(QtWidgets.QGraphicsObject):
@typing.overload
def __init__(self, parent: typing.Optional[QtWidgets.QGraphicsItem] = ...) -> None: ...
@typing.overload
def __init__(self, fileName: str, parent: typing.Optional[QtWidgets.QGraphicsItem] = ...) -> None: ...
def type(self) -> int: ...
def paint(self, painter: QtGui.QPainter, option: QtWidgets.QStyleOptionGraphicsItem, widget: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def boundingRect(self) -> QtCore.QRectF: ...
def maximumCacheSize(self) -> QtCore.QSize: ...
def setMaximumCacheSize(self, size: QtCore.QSize) -> None: ...
def elementId(self) -> str: ...
def setElementId(self, id: str) -> None: ...
def renderer(self) -> 'QSvgRenderer': ...
def setSharedRenderer(self, renderer: 'QSvgRenderer') -> None: ...
class QSvgGenerator(QtGui.QPaintDevice):
def __init__(self) -> None: ...
def metric(self, metric: QtGui.QPaintDevice.PaintDeviceMetric) -> int: ...
def paintEngine(self) -> QtGui.QPaintEngine: ...
@typing.overload
def setViewBox(self, viewBox: QtCore.QRect) -> None: ...
@typing.overload
def setViewBox(self, viewBox: QtCore.QRectF) -> None: ...
def viewBoxF(self) -> QtCore.QRectF: ...
def viewBox(self) -> QtCore.QRect: ...
def setDescription(self, description: str) -> None: ...
def description(self) -> str: ...
def setTitle(self, title: str) -> None: ...
def title(self) -> str: ...
def setResolution(self, resolution: int) -> None: ...
def resolution(self) -> int: ...
def setOutputDevice(self, outputDevice: QtCore.QIODevice) -> None: ...
def outputDevice(self) -> QtCore.QIODevice: ...
def setFileName(self, fileName: str) -> None: ...
def fileName(self) -> str: ...
def setSize(self, size: QtCore.QSize) -> None: ...
def size(self) -> QtCore.QSize: ...
class QSvgRenderer(QtCore.QObject):
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, filename: str, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, contents: typing.Union[QtCore.QByteArray, bytes, bytearray], parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, contents: QtCore.QXmlStreamReader, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def transformForElement(self, id: str) -> QtGui.QTransform: ...
def setAspectRatioMode(self, mode: QtCore.Qt.AspectRatioMode) -> None: ...
def aspectRatioMode(self) -> QtCore.Qt.AspectRatioMode: ...
def repaintNeeded(self) -> None: ...
@typing.overload
def render(self, p: QtGui.QPainter) -> None: ...
@typing.overload
def render(self, p: QtGui.QPainter, bounds: QtCore.QRectF) -> None: ...
@typing.overload
def render(self, painter: QtGui.QPainter, elementId: str, bounds: QtCore.QRectF = ...) -> None: ...
@typing.overload
def load(self, filename: str) -> bool: ...
@typing.overload
def load(self, contents: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> bool: ...
@typing.overload
def load(self, contents: QtCore.QXmlStreamReader) -> bool: ...
def animationDuration(self) -> int: ...
def setCurrentFrame(self, a0: int) -> None: ...
def currentFrame(self) -> int: ...
def setFramesPerSecond(self, num: int) -> None: ...
def framesPerSecond(self) -> int: ...
def boundsOnElement(self, id: str) -> QtCore.QRectF: ...
def animated(self) -> bool: ...
@typing.overload
def setViewBox(self, viewbox: QtCore.QRect) -> None: ...
@typing.overload
def setViewBox(self, viewbox: QtCore.QRectF) -> None: ...
def viewBoxF(self) -> QtCore.QRectF: ...
def viewBox(self) -> QtCore.QRect: ...
def elementExists(self, id: str) -> bool: ...
def defaultSize(self) -> QtCore.QSize: ...
def isValid(self) -> bool: ...
class QSvgWidget(QtWidgets.QWidget):
@typing.overload
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
@typing.overload
def __init__(self, file: str, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def paintEvent(self, event: QtGui.QPaintEvent) -> None: ...
@typing.overload
def load(self, file: str) -> None: ...
@typing.overload
def load(self, contents: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def sizeHint(self) -> QtCore.QSize: ...
def renderer(self) -> QSvgRenderer: ...

View File

@ -0,0 +1,207 @@
# The PEP 484 type hints stub file for the QtTest module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWidgets
from PyQt5 import QtCore
from PyQt5 import QtGui # add import of QtGui
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QAbstractItemModelTester(QtCore.QObject):
class FailureReportingMode(int):
QtTest = ... # type: 'QAbstractItemModelTester.FailureReportingMode'
Warning = ... # type: 'QAbstractItemModelTester.FailureReportingMode'
Fatal = ... # type: 'QAbstractItemModelTester.FailureReportingMode'
@typing.overload
def __init__(self, model: QtCore.QAbstractItemModel, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, model: QtCore.QAbstractItemModel, mode: 'QAbstractItemModelTester.FailureReportingMode', parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def failureReportingMode(self) -> 'QAbstractItemModelTester.FailureReportingMode': ...
def model(self) -> QtCore.QAbstractItemModel: ...
class QSignalSpy(QtCore.QObject):
@typing.overload
def __init__(self, signal: QtCore.pyqtBoundSignal) -> None: ...
@typing.overload
def __init__(self, obj: QtCore.QObject, signal: QtCore.QMetaMethod) -> None: ...
def __delitem__(self, i: int) -> None: ...
def __setitem__(self, i: int, value: typing.Iterable[typing.Any]) -> None: ...
def __getitem__(self, i: int) -> typing.List[typing.Any]: ...
def __len__(self) -> int: ...
def wait(self, timeout: int = ...) -> bool: ...
def signal(self) -> QtCore.QByteArray: ...
def isValid(self) -> bool: ...
class QTest(sip.simplewrapper):
class KeyAction(int): ...
Press = ... # type: 'QTest.KeyAction'
Release = ... # type: 'QTest.KeyAction'
Click = ... # type: 'QTest.KeyAction'
Shortcut = ... # type: 'QTest.KeyAction'
class QTouchEventSequence(sip.simplewrapper):
def __init__(self, a0: 'QTest.QTouchEventSequence') -> None: ...
def commit(self, processEvents: bool = ...) -> None: ...
def stationary(self, touchId: int) -> 'QTest.QTouchEventSequence': ...
@typing.overload
def release(self, touchId: int, pt: QtCore.QPoint, window: typing.Optional[QtGui.QWindow] = ...) -> 'QTest.QTouchEventSequence': ...
@typing.overload
def release(self, touchId: int, pt: QtCore.QPoint, widget: QtWidgets.QWidget) -> 'QTest.QTouchEventSequence': ...
@typing.overload
def move(self, touchId: int, pt: QtCore.QPoint, window: typing.Optional[QtGui.QWindow] = ...) -> 'QTest.QTouchEventSequence': ...
@typing.overload
def move(self, touchId: int, pt: QtCore.QPoint, widget: QtWidgets.QWidget) -> 'QTest.QTouchEventSequence': ...
@typing.overload
def press(self, touchId: int, pt: QtCore.QPoint, window: typing.Optional[QtGui.QWindow] = ...) -> 'QTest.QTouchEventSequence': ...
@typing.overload
def press(self, touchId: int, pt: QtCore.QPoint, widget: QtWidgets.QWidget) -> 'QTest.QTouchEventSequence': ...
@typing.overload
@staticmethod
def touchEvent(widget: QtWidgets.QWidget, device: QtGui.QTouchDevice) -> 'QTest.QTouchEventSequence': ...
@typing.overload
@staticmethod
def touchEvent(window: QtGui.QWindow, device: QtGui.QTouchDevice) -> 'QTest.QTouchEventSequence': ...
@typing.overload
@staticmethod
def qWaitForWindowExposed(window: QtGui.QWindow, timeout: int = ...) -> bool: ...
@typing.overload
@staticmethod
def qWaitForWindowExposed(widget: QtWidgets.QWidget, timeout: int = ...) -> bool: ...
@typing.overload
@staticmethod
def qWaitForWindowActive(window: QtGui.QWindow, timeout: int = ...) -> bool: ...
@typing.overload
@staticmethod
def qWaitForWindowActive(widget: QtWidgets.QWidget, timeout: int = ...) -> bool: ...
@staticmethod
def qWait(ms: int) -> None: ...
@typing.overload
@staticmethod
def mouseRelease(widget: QtWidgets.QWidget, button: QtCore.Qt.MouseButton, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., pos: QtCore.QPoint = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def mouseRelease(window: QtGui.QWindow, button: QtCore.Qt.MouseButton, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., pos: QtCore.QPoint = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def mousePress(widget: QtWidgets.QWidget, button: QtCore.Qt.MouseButton, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., pos: QtCore.QPoint = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def mousePress(window: QtGui.QWindow, button: QtCore.Qt.MouseButton, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., pos: QtCore.QPoint = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def mouseMove(widget: QtWidgets.QWidget, pos: QtCore.QPoint = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def mouseMove(window: QtGui.QWindow, pos: QtCore.QPoint = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def mouseDClick(widget: QtWidgets.QWidget, button: QtCore.Qt.MouseButton, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., pos: QtCore.QPoint = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def mouseDClick(window: QtGui.QWindow, button: QtCore.Qt.MouseButton, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., pos: QtCore.QPoint = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def mouseClick(widget: QtWidgets.QWidget, button: QtCore.Qt.MouseButton, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., pos: QtCore.QPoint = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def mouseClick(window: QtGui.QWindow, button: QtCore.Qt.MouseButton, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., pos: QtCore.QPoint = ..., delay: int = ...) -> None: ...
@typing.overload
def keySequence(self, widget: QtWidgets.QWidget, keySequence: typing.Union[QtGui.QKeySequence, QtGui.QKeySequence.StandardKey, str, int]) -> None: ...
@typing.overload
def keySequence(self, window: QtGui.QWindow, keySequence: typing.Union[QtGui.QKeySequence, QtGui.QKeySequence.StandardKey, str, int]) -> None: ...
@typing.overload
@staticmethod
def keyRelease(widget: QtWidgets.QWidget, key: QtCore.Qt.Key, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyRelease(widget: QtWidgets.QWidget, key: str, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyRelease(window: QtGui.QWindow, key: QtCore.Qt.Key, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyRelease(window: QtGui.QWindow, key: str, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyPress(widget: QtWidgets.QWidget, key: QtCore.Qt.Key, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyPress(widget: QtWidgets.QWidget, key: str, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyPress(window: QtGui.QWindow, key: QtCore.Qt.Key, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyPress(window: QtGui.QWindow, key: str, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyEvent(action: 'QTest.KeyAction', widget: QtWidgets.QWidget, key: QtCore.Qt.Key, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyEvent(action: 'QTest.KeyAction', widget: QtWidgets.QWidget, ascii: str, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyEvent(action: 'QTest.KeyAction', window: QtGui.QWindow, key: QtCore.Qt.Key, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyEvent(action: 'QTest.KeyAction', window: QtGui.QWindow, ascii: str, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@staticmethod
def keyClicks(widget: QtWidgets.QWidget, sequence: str, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyClick(widget: QtWidgets.QWidget, key: QtCore.Qt.Key, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyClick(widget: QtWidgets.QWidget, key: str, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyClick(window: QtGui.QWindow, key: QtCore.Qt.Key, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@typing.overload
@staticmethod
def keyClick(window: QtGui.QWindow, key: str, modifier: typing.Union[QtCore.Qt.KeyboardModifiers, QtCore.Qt.KeyboardModifier] = ..., delay: int = ...) -> None: ...
@staticmethod
def qSleep(ms: int) -> None: ...

View File

@ -0,0 +1,55 @@
# The PEP 484 type hints stub file for the QtWebChannel module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QWebChannel(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def disconnectFrom(self, transport: 'QWebChannelAbstractTransport') -> None: ...
def connectTo(self, transport: 'QWebChannelAbstractTransport') -> None: ...
def blockUpdatesChanged(self, block: bool) -> None: ...
def setBlockUpdates(self, block: bool) -> None: ...
def blockUpdates(self) -> bool: ...
def deregisterObject(self, object: QtCore.QObject) -> None: ...
def registerObject(self, id: str, object: QtCore.QObject) -> None: ...
def registeredObjects(self) -> typing.Dict[str, QtCore.QObject]: ...
def registerObjects(self, objects: typing.Dict[str, QtCore.QObject]) -> None: ...
class QWebChannelAbstractTransport(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def messageReceived(self, message: typing.Dict[str, typing.Union[QtCore.QJsonValue, QtCore.QJsonValue.Type, typing.Iterable[QtCore.QJsonValue], bool, int, float, None, str]], transport: 'QWebChannelAbstractTransport') -> None: ...
def sendMessage(self, message: typing.Dict[str, typing.Union[QtCore.QJsonValue, QtCore.QJsonValue.Type, typing.Iterable[QtCore.QJsonValue], bool, int, float, None, str]]) -> None: ...

View File

@ -0,0 +1,152 @@
# The PEP 484 type hints stub file for the QtWebEngine module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQtWebEngine.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWebEngineCore
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QQuickWebEngineProfile(QtCore.QObject):
class PersistentCookiesPolicy(int): ...
NoPersistentCookies = ... # type: 'QQuickWebEngineProfile.PersistentCookiesPolicy'
AllowPersistentCookies = ... # type: 'QQuickWebEngineProfile.PersistentCookiesPolicy'
ForcePersistentCookies = ... # type: 'QQuickWebEngineProfile.PersistentCookiesPolicy'
class HttpCacheType(int): ...
MemoryHttpCache = ... # type: 'QQuickWebEngineProfile.HttpCacheType'
DiskHttpCache = ... # type: 'QQuickWebEngineProfile.HttpCacheType'
NoCache = ... # type: 'QQuickWebEngineProfile.HttpCacheType'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def presentNotification(self, notification: QtWebEngineCore.QWebEngineNotification) -> None: ...
def downloadPathChanged(self) -> None: ...
def useForGlobalCertificateVerificationChanged(self) -> None: ...
def clientCertificateStore(self) -> QtWebEngineCore.QWebEngineClientCertificateStore: ...
def setDownloadPath(self, path: str) -> None: ...
def downloadPath(self) -> str: ...
def isUsedForGlobalCertificateVerification(self) -> bool: ...
def setUseForGlobalCertificateVerification(self, b: bool) -> None: ...
def spellCheckEnabledChanged(self) -> None: ...
def spellCheckLanguagesChanged(self) -> None: ...
def isSpellCheckEnabled(self) -> bool: ...
def setSpellCheckEnabled(self, enabled: bool) -> None: ...
def spellCheckLanguages(self) -> typing.List[str]: ...
def setSpellCheckLanguages(self, languages: typing.Iterable[str]) -> None: ...
def httpAcceptLanguageChanged(self) -> None: ...
def httpCacheMaximumSizeChanged(self) -> None: ...
def persistentCookiesPolicyChanged(self) -> None: ...
def httpCacheTypeChanged(self) -> None: ...
def httpUserAgentChanged(self) -> None: ...
def cachePathChanged(self) -> None: ...
def persistentStoragePathChanged(self) -> None: ...
def offTheRecordChanged(self) -> None: ...
def storageNameChanged(self) -> None: ...
@staticmethod
def defaultProfile() -> 'QQuickWebEngineProfile': ...
def clearHttpCache(self) -> None: ...
def removeAllUrlSchemeHandlers(self) -> None: ...
def removeUrlSchemeHandler(self, a0: QtWebEngineCore.QWebEngineUrlSchemeHandler) -> None: ...
def removeUrlScheme(self, scheme: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def installUrlSchemeHandler(self, scheme: typing.Union[QtCore.QByteArray, bytes, bytearray], a1: QtWebEngineCore.QWebEngineUrlSchemeHandler) -> None: ...
def urlSchemeHandler(self, a0: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> QtWebEngineCore.QWebEngineUrlSchemeHandler: ...
def setRequestInterceptor(self, interceptor: QtWebEngineCore.QWebEngineUrlRequestInterceptor) -> None: ...
def setUrlRequestInterceptor(self, interceptor: QtWebEngineCore.QWebEngineUrlRequestInterceptor) -> None: ...
def cookieStore(self) -> QtWebEngineCore.QWebEngineCookieStore: ...
def setHttpAcceptLanguage(self, httpAcceptLanguage: str) -> None: ...
def httpAcceptLanguage(self) -> str: ...
def setHttpCacheMaximumSize(self, maxSize: int) -> None: ...
def httpCacheMaximumSize(self) -> int: ...
def setPersistentCookiesPolicy(self, a0: 'QQuickWebEngineProfile.PersistentCookiesPolicy') -> None: ...
def persistentCookiesPolicy(self) -> 'QQuickWebEngineProfile.PersistentCookiesPolicy': ...
def setHttpCacheType(self, a0: 'QQuickWebEngineProfile.HttpCacheType') -> None: ...
def httpCacheType(self) -> 'QQuickWebEngineProfile.HttpCacheType': ...
def setHttpUserAgent(self, userAgent: str) -> None: ...
def httpUserAgent(self) -> str: ...
def setCachePath(self, path: str) -> None: ...
def cachePath(self) -> str: ...
def setPersistentStoragePath(self, path: str) -> None: ...
def persistentStoragePath(self) -> str: ...
def setOffTheRecord(self, offTheRecord: bool) -> None: ...
def isOffTheRecord(self) -> bool: ...
def setStorageName(self, name: str) -> None: ...
def storageName(self) -> str: ...
class QQuickWebEngineScript(QtCore.QObject):
class ScriptWorldId(int): ...
MainWorld = ... # type: 'QQuickWebEngineScript.ScriptWorldId'
ApplicationWorld = ... # type: 'QQuickWebEngineScript.ScriptWorldId'
UserWorld = ... # type: 'QQuickWebEngineScript.ScriptWorldId'
class InjectionPoint(int): ...
Deferred = ... # type: 'QQuickWebEngineScript.InjectionPoint'
DocumentReady = ... # type: 'QQuickWebEngineScript.InjectionPoint'
DocumentCreation = ... # type: 'QQuickWebEngineScript.InjectionPoint'
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def timerEvent(self, e: QtCore.QTimerEvent) -> None: ...
def runOnSubframesChanged(self, on: bool) -> None: ...
def worldIdChanged(self, scriptWorldId: 'QQuickWebEngineScript.ScriptWorldId') -> None: ...
def injectionPointChanged(self, injectionPoint: 'QQuickWebEngineScript.InjectionPoint') -> None: ...
def sourceCodeChanged(self, code: str) -> None: ...
def sourceUrlChanged(self, url: QtCore.QUrl) -> None: ...
def nameChanged(self, name: str) -> None: ...
def setRunOnSubframes(self, on: bool) -> None: ...
def setWorldId(self, scriptWorldId: 'QQuickWebEngineScript.ScriptWorldId') -> None: ...
def setInjectionPoint(self, injectionPoint: 'QQuickWebEngineScript.InjectionPoint') -> None: ...
def setSourceCode(self, code: str) -> None: ...
def setSourceUrl(self, url: QtCore.QUrl) -> None: ...
def setName(self, name: str) -> None: ...
def runOnSubframes(self) -> bool: ...
def worldId(self) -> 'QQuickWebEngineScript.ScriptWorldId': ...
def injectionPoint(self) -> 'QQuickWebEngineScript.InjectionPoint': ...
def sourceCode(self) -> str: ...
def sourceUrl(self) -> QtCore.QUrl: ...
def name(self) -> str: ...
def toString(self) -> str: ...
class QtWebEngine(sip.simplewrapper):
def initialize(self) -> None: ...
PYQT_WEBENGINE_VERSION = ... # type: int
PYQT_WEBENGINE_VERSION_STR = ... # type: str

View File

@ -0,0 +1,289 @@
# The PEP 484 type hints stub file for the QtWebEngineCore module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQtWebEngine.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtNetwork
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QtWebEngineCore(sip.simplewrapper): ...
class QWebEngineClientCertificateStore(sip.simplewrapper):
def clear(self) -> None: ...
def remove(self, certificate: QtNetwork.QSslCertificate) -> None: ...
def certificates(self) -> typing.List[QtNetwork.QSslCertificate]: ...
def add(self, certificate: QtNetwork.QSslCertificate, privateKey: QtNetwork.QSslKey) -> None: ...
class QWebEngineCookieStore(QtCore.QObject):
class FilterRequest(sip.simplewrapper):
firstPartyUrl = ... # type: QtCore.QUrl
origin = ... # type: QtCore.QUrl
thirdParty = ... # type: bool
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebEngineCookieStore.FilterRequest') -> None: ...
def setCookieFilter(self, filterCallback: typing.Optional[typing.Callable[[FilterRequest], bool]] = ...) -> None: ...
def cookieRemoved(self, cookie: QtNetwork.QNetworkCookie) -> None: ...
def cookieAdded(self, cookie: QtNetwork.QNetworkCookie) -> None: ...
def loadAllCookies(self) -> None: ...
def deleteAllCookies(self) -> None: ...
def deleteSessionCookies(self) -> None: ...
def deleteCookie(self, cookie: QtNetwork.QNetworkCookie, origin: QtCore.QUrl = ...) -> None: ...
def setCookie(self, cookie: QtNetwork.QNetworkCookie, origin: QtCore.QUrl = ...) -> None: ...
class QWebEngineFindTextResult(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QWebEngineFindTextResult') -> None: ...
def activeMatch(self) -> int: ...
def numberOfMatches(self) -> int: ...
class QWebEngineHttpRequest(sip.simplewrapper):
class Method(int): ...
Get = ... # type: 'QWebEngineHttpRequest.Method'
Post = ... # type: 'QWebEngineHttpRequest.Method'
@typing.overload
def __init__(self, url: QtCore.QUrl = ..., method: 'QWebEngineHttpRequest.Method' = ...) -> None: ...
@typing.overload
def __init__(self, other: 'QWebEngineHttpRequest') -> None: ...
def unsetHeader(self, headerName: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def setHeader(self, headerName: typing.Union[QtCore.QByteArray, bytes, bytearray], value: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def header(self, headerName: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> QtCore.QByteArray: ...
def headers(self) -> typing.List[QtCore.QByteArray]: ...
def hasHeader(self, headerName: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> bool: ...
def setPostData(self, postData: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def postData(self) -> QtCore.QByteArray: ...
def setUrl(self, url: QtCore.QUrl) -> None: ...
def url(self) -> QtCore.QUrl: ...
def setMethod(self, method: 'QWebEngineHttpRequest.Method') -> None: ...
def method(self) -> 'QWebEngineHttpRequest.Method': ...
def swap(self, other: 'QWebEngineHttpRequest') -> None: ...
@staticmethod
def postRequest(url: QtCore.QUrl, postData: typing.Dict[str, str]) -> 'QWebEngineHttpRequest': ...
class QWebEngineNotification(QtCore.QObject):
def closed(self) -> None: ...
def close(self) -> None: ...
def click(self) -> None: ...
def show(self) -> None: ...
def direction(self) -> QtCore.Qt.LayoutDirection: ...
def language(self) -> str: ...
def tag(self) -> str: ...
def message(self) -> str: ...
def title(self) -> str: ...
def icon(self) -> QtGui.QImage: ...
def origin(self) -> QtCore.QUrl: ...
def matches(self, other: 'QWebEngineNotification') -> bool: ...
class QWebEngineQuotaRequest(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebEngineQuotaRequest') -> None: ...
def requestedSize(self) -> int: ...
def origin(self) -> QtCore.QUrl: ...
def reject(self) -> None: ...
def accept(self) -> None: ...
class QWebEngineRegisterProtocolHandlerRequest(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebEngineRegisterProtocolHandlerRequest') -> None: ...
def scheme(self) -> str: ...
def origin(self) -> QtCore.QUrl: ...
def reject(self) -> None: ...
def accept(self) -> None: ...
class QWebEngineUrlRequestInfo(sip.simplewrapper):
class NavigationType(int): ...
NavigationTypeLink = ... # type: 'QWebEngineUrlRequestInfo.NavigationType'
NavigationTypeTyped = ... # type: 'QWebEngineUrlRequestInfo.NavigationType'
NavigationTypeFormSubmitted = ... # type: 'QWebEngineUrlRequestInfo.NavigationType'
NavigationTypeBackForward = ... # type: 'QWebEngineUrlRequestInfo.NavigationType'
NavigationTypeReload = ... # type: 'QWebEngineUrlRequestInfo.NavigationType'
NavigationTypeRedirect = ... # type: 'QWebEngineUrlRequestInfo.NavigationType'
NavigationTypeOther = ... # type: 'QWebEngineUrlRequestInfo.NavigationType'
class ResourceType(int): ...
ResourceTypeMainFrame = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeSubFrame = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeStylesheet = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeScript = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeImage = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeFontResource = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeSubResource = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeObject = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeMedia = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeWorker = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeSharedWorker = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypePrefetch = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeFavicon = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeXhr = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypePing = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeServiceWorker = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeUnknown = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeCspReport = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypePluginResource = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeNavigationPreloadMainFrame = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
ResourceTypeNavigationPreloadSubFrame = ... # type: 'QWebEngineUrlRequestInfo.ResourceType'
def initiator(self) -> QtCore.QUrl: ...
def setHttpHeader(self, name: typing.Union[QtCore.QByteArray, bytes, bytearray], value: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def redirect(self, url: QtCore.QUrl) -> None: ...
def block(self, shouldBlock: bool) -> None: ...
def requestMethod(self) -> QtCore.QByteArray: ...
def firstPartyUrl(self) -> QtCore.QUrl: ...
def requestUrl(self) -> QtCore.QUrl: ...
def navigationType(self) -> 'QWebEngineUrlRequestInfo.NavigationType': ...
def resourceType(self) -> 'QWebEngineUrlRequestInfo.ResourceType': ...
class QWebEngineUrlRequestInterceptor(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def interceptRequest(self, info: QWebEngineUrlRequestInfo) -> None: ...
class QWebEngineUrlRequestJob(QtCore.QObject):
class Error(int): ...
NoError = ... # type: 'QWebEngineUrlRequestJob.Error'
UrlNotFound = ... # type: 'QWebEngineUrlRequestJob.Error'
UrlInvalid = ... # type: 'QWebEngineUrlRequestJob.Error'
RequestAborted = ... # type: 'QWebEngineUrlRequestJob.Error'
RequestDenied = ... # type: 'QWebEngineUrlRequestJob.Error'
RequestFailed = ... # type: 'QWebEngineUrlRequestJob.Error'
def requestHeaders(self) -> typing.Dict[QtCore.QByteArray, QtCore.QByteArray]: ...
def initiator(self) -> QtCore.QUrl: ...
def redirect(self, url: QtCore.QUrl) -> None: ...
def fail(self, error: 'QWebEngineUrlRequestJob.Error') -> None: ...
def reply(self, contentType: typing.Union[QtCore.QByteArray, bytes, bytearray], device: QtCore.QIODevice) -> None: ...
def requestMethod(self) -> QtCore.QByteArray: ...
def requestUrl(self) -> QtCore.QUrl: ...
class QWebEngineUrlScheme(sip.simplewrapper):
class Flag(int): ...
SecureScheme = ... # type: 'QWebEngineUrlScheme.Flag'
LocalScheme = ... # type: 'QWebEngineUrlScheme.Flag'
LocalAccessAllowed = ... # type: 'QWebEngineUrlScheme.Flag'
NoAccessAllowed = ... # type: 'QWebEngineUrlScheme.Flag'
ServiceWorkersAllowed = ... # type: 'QWebEngineUrlScheme.Flag'
ViewSourceAllowed = ... # type: 'QWebEngineUrlScheme.Flag'
ContentSecurityPolicyIgnored = ... # type: 'QWebEngineUrlScheme.Flag'
CorsEnabled = ... # type: 'QWebEngineUrlScheme.Flag'
class SpecialPort(int): ...
PortUnspecified = ... # type: 'QWebEngineUrlScheme.SpecialPort'
class Syntax(int):
HostPortAndUserInformation = ... # type: 'QWebEngineUrlScheme.Syntax'
HostAndPort = ... # type: 'QWebEngineUrlScheme.Syntax'
Host = ... # type: 'QWebEngineUrlScheme.Syntax'
Path = ... # type: 'QWebEngineUrlScheme.Syntax'
class Flags(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QWebEngineUrlScheme.Flags', 'QWebEngineUrlScheme.Flag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebEngineUrlScheme.Flags') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QWebEngineUrlScheme.Flags': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, name: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
@typing.overload
def __init__(self, that: 'QWebEngineUrlScheme') -> None: ...
@staticmethod
def schemeByName(name: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> 'QWebEngineUrlScheme': ...
@staticmethod
def registerScheme(scheme: 'QWebEngineUrlScheme') -> None: ...
def setFlags(self, newValue: typing.Union['QWebEngineUrlScheme.Flags', 'QWebEngineUrlScheme.Flag']) -> None: ...
def flags(self) -> 'QWebEngineUrlScheme.Flags': ...
def setDefaultPort(self, newValue: int) -> None: ...
def defaultPort(self) -> int: ...
def setSyntax(self, newValue: 'QWebEngineUrlScheme.Syntax') -> None: ...
def syntax(self) -> 'QWebEngineUrlScheme.Syntax': ...
def setName(self, newValue: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def name(self) -> QtCore.QByteArray: ...
class QWebEngineUrlSchemeHandler(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def requestStarted(self, a0: QWebEngineUrlRequestJob) -> None: ...

View File

@ -0,0 +1,763 @@
# The PEP 484 type hints stub file for the QtWebEngineWidgets module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQtWebEngine.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWebChannel
from PyQt5 import QtWebEngineCore
from PyQt5 import QtWidgets
from PyQt5 import QtPrintSupport
from PyQt5 import QtNetwork
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QWebEngineCertificateError(sip.simplewrapper):
class Error(int): ...
SslPinnedKeyNotInCertificateChain = ... # type: 'QWebEngineCertificateError.Error'
CertificateCommonNameInvalid = ... # type: 'QWebEngineCertificateError.Error'
CertificateDateInvalid = ... # type: 'QWebEngineCertificateError.Error'
CertificateAuthorityInvalid = ... # type: 'QWebEngineCertificateError.Error'
CertificateContainsErrors = ... # type: 'QWebEngineCertificateError.Error'
CertificateNoRevocationMechanism = ... # type: 'QWebEngineCertificateError.Error'
CertificateUnableToCheckRevocation = ... # type: 'QWebEngineCertificateError.Error'
CertificateRevoked = ... # type: 'QWebEngineCertificateError.Error'
CertificateInvalid = ... # type: 'QWebEngineCertificateError.Error'
CertificateWeakSignatureAlgorithm = ... # type: 'QWebEngineCertificateError.Error'
CertificateNonUniqueName = ... # type: 'QWebEngineCertificateError.Error'
CertificateWeakKey = ... # type: 'QWebEngineCertificateError.Error'
CertificateNameConstraintViolation = ... # type: 'QWebEngineCertificateError.Error'
CertificateValidityTooLong = ... # type: 'QWebEngineCertificateError.Error'
CertificateTransparencyRequired = ... # type: 'QWebEngineCertificateError.Error'
CertificateKnownInterceptionBlocked = ... # type: 'QWebEngineCertificateError.Error'
def __init__(self, other: 'QWebEngineCertificateError') -> None: ...
def certificateChain(self) -> typing.List[QtNetwork.QSslCertificate]: ...
def answered(self) -> bool: ...
def ignoreCertificateError(self) -> None: ...
def rejectCertificate(self) -> None: ...
def deferred(self) -> bool: ...
def defer(self) -> None: ...
def errorDescription(self) -> str: ...
def isOverridable(self) -> bool: ...
def url(self) -> QtCore.QUrl: ...
def error(self) -> 'QWebEngineCertificateError.Error': ...
class QWebEngineClientCertificateSelection(sip.simplewrapper):
def __init__(self, a0: 'QWebEngineClientCertificateSelection') -> None: ...
def certificates(self) -> typing.List[QtNetwork.QSslCertificate]: ...
def selectNone(self) -> None: ...
def select(self, certificate: QtNetwork.QSslCertificate) -> None: ...
def host(self) -> QtCore.QUrl: ...
class QWebEngineContextMenuData(sip.simplewrapper):
class EditFlag(int): ...
CanUndo = ... # type: 'QWebEngineContextMenuData.EditFlag'
CanRedo = ... # type: 'QWebEngineContextMenuData.EditFlag'
CanCut = ... # type: 'QWebEngineContextMenuData.EditFlag'
CanCopy = ... # type: 'QWebEngineContextMenuData.EditFlag'
CanPaste = ... # type: 'QWebEngineContextMenuData.EditFlag'
CanDelete = ... # type: 'QWebEngineContextMenuData.EditFlag'
CanSelectAll = ... # type: 'QWebEngineContextMenuData.EditFlag'
CanTranslate = ... # type: 'QWebEngineContextMenuData.EditFlag'
CanEditRichly = ... # type: 'QWebEngineContextMenuData.EditFlag'
class MediaFlag(int): ...
MediaInError = ... # type: 'QWebEngineContextMenuData.MediaFlag'
MediaPaused = ... # type: 'QWebEngineContextMenuData.MediaFlag'
MediaMuted = ... # type: 'QWebEngineContextMenuData.MediaFlag'
MediaLoop = ... # type: 'QWebEngineContextMenuData.MediaFlag'
MediaCanSave = ... # type: 'QWebEngineContextMenuData.MediaFlag'
MediaHasAudio = ... # type: 'QWebEngineContextMenuData.MediaFlag'
MediaCanToggleControls = ... # type: 'QWebEngineContextMenuData.MediaFlag'
MediaControls = ... # type: 'QWebEngineContextMenuData.MediaFlag'
MediaCanPrint = ... # type: 'QWebEngineContextMenuData.MediaFlag'
MediaCanRotate = ... # type: 'QWebEngineContextMenuData.MediaFlag'
class MediaType(int): ...
MediaTypeNone = ... # type: 'QWebEngineContextMenuData.MediaType'
MediaTypeImage = ... # type: 'QWebEngineContextMenuData.MediaType'
MediaTypeVideo = ... # type: 'QWebEngineContextMenuData.MediaType'
MediaTypeAudio = ... # type: 'QWebEngineContextMenuData.MediaType'
MediaTypeCanvas = ... # type: 'QWebEngineContextMenuData.MediaType'
MediaTypeFile = ... # type: 'QWebEngineContextMenuData.MediaType'
MediaTypePlugin = ... # type: 'QWebEngineContextMenuData.MediaType'
class MediaFlags(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QWebEngineContextMenuData.MediaFlags', 'QWebEngineContextMenuData.MediaFlag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebEngineContextMenuData.MediaFlags') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QWebEngineContextMenuData.MediaFlags': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
class EditFlags(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QWebEngineContextMenuData.EditFlags', 'QWebEngineContextMenuData.EditFlag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebEngineContextMenuData.EditFlags') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QWebEngineContextMenuData.EditFlags': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QWebEngineContextMenuData') -> None: ...
def editFlags(self) -> 'QWebEngineContextMenuData.EditFlags': ...
def mediaFlags(self) -> 'QWebEngineContextMenuData.MediaFlags': ...
def spellCheckerSuggestions(self) -> typing.List[str]: ...
def misspelledWord(self) -> str: ...
def isContentEditable(self) -> bool: ...
def mediaType(self) -> 'QWebEngineContextMenuData.MediaType': ...
def mediaUrl(self) -> QtCore.QUrl: ...
def linkUrl(self) -> QtCore.QUrl: ...
def linkText(self) -> str: ...
def selectedText(self) -> str: ...
def position(self) -> QtCore.QPoint: ...
def isValid(self) -> bool: ...
class QWebEngineDownloadItem(QtCore.QObject):
class DownloadInterruptReason(int): ...
NoReason = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileFailed = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileAccessDenied = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileNoSpace = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileNameTooLong = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileTooLarge = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileVirusInfected = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileTransientError = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileBlocked = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileSecurityCheckFailed = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileTooShort = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
FileHashMismatch = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
NetworkFailed = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
NetworkTimeout = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
NetworkDisconnected = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
NetworkServerDown = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
NetworkInvalidRequest = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
ServerFailed = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
ServerBadContent = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
ServerUnauthorized = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
ServerCertProblem = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
ServerForbidden = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
ServerUnreachable = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
UserCanceled = ... # type: 'QWebEngineDownloadItem.DownloadInterruptReason'
class DownloadType(int): ...
Attachment = ... # type: 'QWebEngineDownloadItem.DownloadType'
DownloadAttribute = ... # type: 'QWebEngineDownloadItem.DownloadType'
UserRequested = ... # type: 'QWebEngineDownloadItem.DownloadType'
SavePage = ... # type: 'QWebEngineDownloadItem.DownloadType'
class SavePageFormat(int): ...
UnknownSaveFormat = ... # type: 'QWebEngineDownloadItem.SavePageFormat'
SingleHtmlSaveFormat = ... # type: 'QWebEngineDownloadItem.SavePageFormat'
CompleteHtmlSaveFormat = ... # type: 'QWebEngineDownloadItem.SavePageFormat'
MimeHtmlSaveFormat = ... # type: 'QWebEngineDownloadItem.SavePageFormat'
class DownloadState(int): ...
DownloadRequested = ... # type: 'QWebEngineDownloadItem.DownloadState'
DownloadInProgress = ... # type: 'QWebEngineDownloadItem.DownloadState'
DownloadCompleted = ... # type: 'QWebEngineDownloadItem.DownloadState'
DownloadCancelled = ... # type: 'QWebEngineDownloadItem.DownloadState'
DownloadInterrupted = ... # type: 'QWebEngineDownloadItem.DownloadState'
def setDownloadFileName(self, fileName: str) -> None: ...
def downloadFileName(self) -> str: ...
def setDownloadDirectory(self, directory: str) -> None: ...
def downloadDirectory(self) -> str: ...
def suggestedFileName(self) -> str: ...
def page(self) -> 'QWebEnginePage': ...
def isSavePageDownload(self) -> bool: ...
def isPausedChanged(self, isPaused: bool) -> None: ...
def resume(self) -> None: ...
def pause(self) -> None: ...
def isPaused(self) -> bool: ...
def interruptReasonString(self) -> str: ...
def interruptReason(self) -> 'QWebEngineDownloadItem.DownloadInterruptReason': ...
def type(self) -> 'QWebEngineDownloadItem.DownloadType': ...
def setSavePageFormat(self, format: 'QWebEngineDownloadItem.SavePageFormat') -> None: ...
def savePageFormat(self) -> 'QWebEngineDownloadItem.SavePageFormat': ...
def mimeType(self) -> str: ...
def downloadProgress(self, bytesReceived: int, bytesTotal: int) -> None: ...
def stateChanged(self, state: 'QWebEngineDownloadItem.DownloadState') -> None: ...
def finished(self) -> None: ...
def cancel(self) -> None: ...
def accept(self) -> None: ...
def isFinished(self) -> bool: ...
def setPath(self, path: str) -> None: ...
def path(self) -> str: ...
def url(self) -> QtCore.QUrl: ...
def receivedBytes(self) -> int: ...
def totalBytes(self) -> int: ...
def state(self) -> 'QWebEngineDownloadItem.DownloadState': ...
def id(self) -> int: ...
class QWebEngineFullScreenRequest(sip.simplewrapper):
def origin(self) -> QtCore.QUrl: ...
def toggleOn(self) -> bool: ...
def accept(self) -> None: ...
def reject(self) -> None: ...
class QWebEngineHistoryItem(sip.simplewrapper):
def __init__(self, other: 'QWebEngineHistoryItem') -> None: ...
def swap(self, other: 'QWebEngineHistoryItem') -> None: ...
def isValid(self) -> bool: ...
def iconUrl(self) -> QtCore.QUrl: ...
def lastVisited(self) -> QtCore.QDateTime: ...
def title(self) -> str: ...
def url(self) -> QtCore.QUrl: ...
def originalUrl(self) -> QtCore.QUrl: ...
class QWebEngineHistory(sip.simplewrapper):
def __len__(self) -> int: ...
def count(self) -> int: ...
def currentItemIndex(self) -> int: ...
def itemAt(self, i: int) -> QWebEngineHistoryItem: ...
def forwardItem(self) -> QWebEngineHistoryItem: ...
def currentItem(self) -> QWebEngineHistoryItem: ...
def backItem(self) -> QWebEngineHistoryItem: ...
def goToItem(self, item: QWebEngineHistoryItem) -> None: ...
def forward(self) -> None: ...
def back(self) -> None: ...
def canGoForward(self) -> bool: ...
def canGoBack(self) -> bool: ...
def forwardItems(self, maxItems: int) -> typing.List[QWebEngineHistoryItem]: ...
def backItems(self, maxItems: int) -> typing.List[QWebEngineHistoryItem]: ...
def items(self) -> typing.List[QWebEngineHistoryItem]: ...
def clear(self) -> None: ...
class QWebEnginePage(QtCore.QObject):
class LifecycleState(int):
Active = ... # type: 'QWebEnginePage.LifecycleState'
Frozen = ... # type: 'QWebEnginePage.LifecycleState'
Discarded = ... # type: 'QWebEnginePage.LifecycleState'
class RenderProcessTerminationStatus(int): ...
NormalTerminationStatus = ... # type: 'QWebEnginePage.RenderProcessTerminationStatus'
AbnormalTerminationStatus = ... # type: 'QWebEnginePage.RenderProcessTerminationStatus'
CrashedTerminationStatus = ... # type: 'QWebEnginePage.RenderProcessTerminationStatus'
KilledTerminationStatus = ... # type: 'QWebEnginePage.RenderProcessTerminationStatus'
class NavigationType(int): ...
NavigationTypeLinkClicked = ... # type: 'QWebEnginePage.NavigationType'
NavigationTypeTyped = ... # type: 'QWebEnginePage.NavigationType'
NavigationTypeFormSubmitted = ... # type: 'QWebEnginePage.NavigationType'
NavigationTypeBackForward = ... # type: 'QWebEnginePage.NavigationType'
NavigationTypeReload = ... # type: 'QWebEnginePage.NavigationType'
NavigationTypeRedirect = ... # type: 'QWebEnginePage.NavigationType'
NavigationTypeOther = ... # type: 'QWebEnginePage.NavigationType'
class JavaScriptConsoleMessageLevel(int): ...
InfoMessageLevel = ... # type: 'QWebEnginePage.JavaScriptConsoleMessageLevel'
WarningMessageLevel = ... # type: 'QWebEnginePage.JavaScriptConsoleMessageLevel'
ErrorMessageLevel = ... # type: 'QWebEnginePage.JavaScriptConsoleMessageLevel'
class FileSelectionMode(int): ...
FileSelectOpen = ... # type: 'QWebEnginePage.FileSelectionMode'
FileSelectOpenMultiple = ... # type: 'QWebEnginePage.FileSelectionMode'
class Feature(int): ...
Notifications = ... # type: 'QWebEnginePage.Feature'
Geolocation = ... # type: 'QWebEnginePage.Feature'
MediaAudioCapture = ... # type: 'QWebEnginePage.Feature'
MediaVideoCapture = ... # type: 'QWebEnginePage.Feature'
MediaAudioVideoCapture = ... # type: 'QWebEnginePage.Feature'
MouseLock = ... # type: 'QWebEnginePage.Feature'
DesktopVideoCapture = ... # type: 'QWebEnginePage.Feature'
DesktopAudioVideoCapture = ... # type: 'QWebEnginePage.Feature'
class PermissionPolicy(int): ...
PermissionUnknown = ... # type: 'QWebEnginePage.PermissionPolicy'
PermissionGrantedByUser = ... # type: 'QWebEnginePage.PermissionPolicy'
PermissionDeniedByUser = ... # type: 'QWebEnginePage.PermissionPolicy'
class WebWindowType(int): ...
WebBrowserWindow = ... # type: 'QWebEnginePage.WebWindowType'
WebBrowserTab = ... # type: 'QWebEnginePage.WebWindowType'
WebDialog = ... # type: 'QWebEnginePage.WebWindowType'
WebBrowserBackgroundTab = ... # type: 'QWebEnginePage.WebWindowType'
class FindFlag(int): ...
FindBackward = ... # type: 'QWebEnginePage.FindFlag'
FindCaseSensitively = ... # type: 'QWebEnginePage.FindFlag'
class WebAction(int): ...
NoWebAction = ... # type: 'QWebEnginePage.WebAction'
Back = ... # type: 'QWebEnginePage.WebAction'
Forward = ... # type: 'QWebEnginePage.WebAction'
Stop = ... # type: 'QWebEnginePage.WebAction'
Reload = ... # type: 'QWebEnginePage.WebAction'
Cut = ... # type: 'QWebEnginePage.WebAction'
Copy = ... # type: 'QWebEnginePage.WebAction'
Paste = ... # type: 'QWebEnginePage.WebAction'
Undo = ... # type: 'QWebEnginePage.WebAction'
Redo = ... # type: 'QWebEnginePage.WebAction'
SelectAll = ... # type: 'QWebEnginePage.WebAction'
ReloadAndBypassCache = ... # type: 'QWebEnginePage.WebAction'
PasteAndMatchStyle = ... # type: 'QWebEnginePage.WebAction'
OpenLinkInThisWindow = ... # type: 'QWebEnginePage.WebAction'
OpenLinkInNewWindow = ... # type: 'QWebEnginePage.WebAction'
OpenLinkInNewTab = ... # type: 'QWebEnginePage.WebAction'
CopyLinkToClipboard = ... # type: 'QWebEnginePage.WebAction'
DownloadLinkToDisk = ... # type: 'QWebEnginePage.WebAction'
CopyImageToClipboard = ... # type: 'QWebEnginePage.WebAction'
CopyImageUrlToClipboard = ... # type: 'QWebEnginePage.WebAction'
DownloadImageToDisk = ... # type: 'QWebEnginePage.WebAction'
CopyMediaUrlToClipboard = ... # type: 'QWebEnginePage.WebAction'
ToggleMediaControls = ... # type: 'QWebEnginePage.WebAction'
ToggleMediaLoop = ... # type: 'QWebEnginePage.WebAction'
ToggleMediaPlayPause = ... # type: 'QWebEnginePage.WebAction'
ToggleMediaMute = ... # type: 'QWebEnginePage.WebAction'
DownloadMediaToDisk = ... # type: 'QWebEnginePage.WebAction'
InspectElement = ... # type: 'QWebEnginePage.WebAction'
ExitFullScreen = ... # type: 'QWebEnginePage.WebAction'
RequestClose = ... # type: 'QWebEnginePage.WebAction'
Unselect = ... # type: 'QWebEnginePage.WebAction'
SavePage = ... # type: 'QWebEnginePage.WebAction'
OpenLinkInNewBackgroundTab = ... # type: 'QWebEnginePage.WebAction'
ViewSource = ... # type: 'QWebEnginePage.WebAction'
ToggleBold = ... # type: 'QWebEnginePage.WebAction'
ToggleItalic = ... # type: 'QWebEnginePage.WebAction'
ToggleUnderline = ... # type: 'QWebEnginePage.WebAction'
ToggleStrikethrough = ... # type: 'QWebEnginePage.WebAction'
AlignLeft = ... # type: 'QWebEnginePage.WebAction'
AlignCenter = ... # type: 'QWebEnginePage.WebAction'
AlignRight = ... # type: 'QWebEnginePage.WebAction'
AlignJustified = ... # type: 'QWebEnginePage.WebAction'
Indent = ... # type: 'QWebEnginePage.WebAction'
Outdent = ... # type: 'QWebEnginePage.WebAction'
InsertOrderedList = ... # type: 'QWebEnginePage.WebAction'
InsertUnorderedList = ... # type: 'QWebEnginePage.WebAction'
class FindFlags(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QWebEnginePage.FindFlags', 'QWebEnginePage.FindFlag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebEnginePage.FindFlags') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QWebEnginePage.FindFlags': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, profile: 'QWebEngineProfile', parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def renderProcessPidChanged(self, pid: int) -> None: ...
def renderProcessPid(self) -> int: ...
def findTextFinished(self, result: QtWebEngineCore.QWebEngineFindTextResult) -> None: ...
def recommendedStateChanged(self, state: 'QWebEnginePage.LifecycleState') -> None: ...
def lifecycleStateChanged(self, state: 'QWebEnginePage.LifecycleState') -> None: ...
def visibleChanged(self, visible: bool) -> None: ...
def setVisible(self, visible: bool) -> None: ...
def isVisible(self) -> bool: ...
def recommendedState(self) -> 'QWebEnginePage.LifecycleState': ...
def setLifecycleState(self, state: 'QWebEnginePage.LifecycleState') -> None: ...
def lifecycleState(self) -> 'QWebEnginePage.LifecycleState': ...
def setUrlRequestInterceptor(self, interceptor: QtWebEngineCore.QWebEngineUrlRequestInterceptor) -> None: ...
def printRequested(self) -> None: ...
def selectClientCertificate(self, clientCertSelection: QWebEngineClientCertificateSelection) -> None: ...
def registerProtocolHandlerRequested(self, request: QtWebEngineCore.QWebEngineRegisterProtocolHandlerRequest) -> None: ...
def quotaRequested(self, quotaRequest: QtWebEngineCore.QWebEngineQuotaRequest) -> None: ...
def devToolsPage(self) -> 'QWebEnginePage': ...
def setDevToolsPage(self, page: 'QWebEnginePage') -> None: ...
def inspectedPage(self) -> 'QWebEnginePage': ...
def setInspectedPage(self, page: 'QWebEnginePage') -> None: ...
def download(self, url: QtCore.QUrl, filename: str = ...) -> None: ...
def print(self, printer: QtPrintSupport.QPrinter, resultCallback: typing.Callable[[bool], None]) -> None: ...
def save(self, filePath: str, format: QWebEngineDownloadItem.SavePageFormat = ...) -> None: ...
def replaceMisspelledWord(self, replacement: str) -> None: ...
def pdfPrintingFinished(self, filePath: str, success: bool) -> None: ...
def recentlyAudibleChanged(self, recentlyAudible: bool) -> None: ...
def audioMutedChanged(self, muted: bool) -> None: ...
def contentsSizeChanged(self, size: QtCore.QSizeF) -> None: ...
def scrollPositionChanged(self, position: typing.Union[QtCore.QPointF, QtCore.QPoint]) -> None: ...
def iconChanged(self, icon: QtGui.QIcon) -> None: ...
def contextMenuData(self) -> QWebEngineContextMenuData: ...
@typing.overload
def printToPdf(self, filePath: str, pageLayout: QtGui.QPageLayout = ...) -> None: ...
@typing.overload
def printToPdf(self, resultCallback: typing.Callable[[typing.Union[QtCore.QByteArray, bytes, bytearray]], None], pageLayout: QtGui.QPageLayout = ...) -> None: ...
def recentlyAudible(self) -> bool: ...
def setAudioMuted(self, muted: bool) -> None: ...
def isAudioMuted(self) -> bool: ...
def contentsSize(self) -> QtCore.QSizeF: ...
def scrollPosition(self) -> QtCore.QPointF: ...
def icon(self) -> QtGui.QIcon: ...
def renderProcessTerminated(self, terminationStatus: 'QWebEnginePage.RenderProcessTerminationStatus', exitCode: int) -> None: ...
def fullScreenRequested(self, fullScreenRequest: QWebEngineFullScreenRequest) -> None: ...
def setBackgroundColor(self, color: typing.Union[QtGui.QColor, QtCore.Qt.GlobalColor]) -> None: ...
def backgroundColor(self) -> QtGui.QColor: ...
def acceptNavigationRequest(self, url: QtCore.QUrl, type: 'QWebEnginePage.NavigationType', isMainFrame: bool) -> bool: ...
@typing.overload
def setWebChannel(self, a0: QtWebChannel.QWebChannel) -> None: ...
@typing.overload
def setWebChannel(self, a0: QtWebChannel.QWebChannel, worldId: int) -> None: ...
def webChannel(self) -> QtWebChannel.QWebChannel: ...
def scripts(self) -> 'QWebEngineScriptCollection': ...
def profile(self) -> 'QWebEngineProfile': ...
def certificateError(self, certificateError: QWebEngineCertificateError) -> bool: ...
def javaScriptConsoleMessage(self, level: 'QWebEnginePage.JavaScriptConsoleMessageLevel', message: str, lineNumber: int, sourceID: str) -> None: ...
def javaScriptPrompt(self, securityOrigin: QtCore.QUrl, msg: str, defaultValue: str) -> typing.Tuple[bool, str]: ...
def javaScriptConfirm(self, securityOrigin: QtCore.QUrl, msg: str) -> bool: ...
def javaScriptAlert(self, securityOrigin: QtCore.QUrl, msg: str) -> None: ...
def chooseFiles(self, mode: 'QWebEnginePage.FileSelectionMode', oldFiles: typing.Iterable[str], acceptedMimeTypes: typing.Iterable[str]) -> typing.List[str]: ...
def createWindow(self, type: 'QWebEnginePage.WebWindowType') -> 'QWebEnginePage': ...
def iconUrlChanged(self, url: QtCore.QUrl) -> None: ...
def urlChanged(self, url: QtCore.QUrl) -> None: ...
def titleChanged(self, title: str) -> None: ...
def proxyAuthenticationRequired(self, requestUrl: QtCore.QUrl, authenticator: QtNetwork.QAuthenticator, proxyHost: str) -> None: ...
def authenticationRequired(self, requestUrl: QtCore.QUrl, authenticator: QtNetwork.QAuthenticator) -> None: ...
def featurePermissionRequestCanceled(self, securityOrigin: QtCore.QUrl, feature: 'QWebEnginePage.Feature') -> None: ...
def featurePermissionRequested(self, securityOrigin: QtCore.QUrl, feature: 'QWebEnginePage.Feature') -> None: ...
def windowCloseRequested(self) -> None: ...
def geometryChangeRequested(self, geom: QtCore.QRect) -> None: ...
def selectionChanged(self) -> None: ...
def linkHovered(self, url: str) -> None: ...
def loadFinished(self, ok: bool) -> None: ...
def loadProgress(self, progress: int) -> None: ...
def loadStarted(self) -> None: ...
def settings(self) -> 'QWebEngineSettings': ...
@typing.overload
def runJavaScript(self, scriptSource: str, worldId: int) -> None: ...
@typing.overload
def runJavaScript(self, scriptSource: str, worldId: int, resultCallback: typing.Callable[..., None]) -> None: ...
@typing.overload
def runJavaScript(self, scriptSource: str) -> None: ...
@typing.overload
def runJavaScript(self, scriptSource: str, resultCallback: typing.Callable[[typing.Any], None]) -> None: ...
def setZoomFactor(self, factor: float) -> None: ...
def zoomFactor(self) -> float: ...
def iconUrl(self) -> QtCore.QUrl: ...
def requestedUrl(self) -> QtCore.QUrl: ...
def url(self) -> QtCore.QUrl: ...
def setUrl(self, url: QtCore.QUrl) -> None: ...
def title(self) -> str: ...
def toPlainText(self, resultCallback: typing.Callable[[str], None]) -> None: ...
def toHtml(self, resultCallback: typing.Callable[[str], None]) -> None: ...
def setContent(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray], mimeType: str = ..., baseUrl: QtCore.QUrl = ...) -> None: ...
def setHtml(self, html: str, baseUrl: QtCore.QUrl = ...) -> None: ...
@typing.overload
def load(self, url: QtCore.QUrl) -> None: ...
@typing.overload
def load(self, request: QtWebEngineCore.QWebEngineHttpRequest) -> None: ...
def setFeaturePermission(self, securityOrigin: QtCore.QUrl, feature: 'QWebEnginePage.Feature', policy: 'QWebEnginePage.PermissionPolicy') -> None: ...
def createStandardContextMenu(self) -> QtWidgets.QMenu: ...
def findText(self, subString: str, options: typing.Union['QWebEnginePage.FindFlags', 'QWebEnginePage.FindFlag'] = ..., resultCallback: typing.Optional[typing.Callable[[bool], None]] = ...) -> None: ...
def event(self, a0: QtCore.QEvent) -> bool: ...
def triggerAction(self, action: 'QWebEnginePage.WebAction', checked: bool = ...) -> None: ...
def action(self, action: 'QWebEnginePage.WebAction') -> QtWidgets.QAction: ...
def selectedText(self) -> str: ...
def hasSelection(self) -> bool: ...
def view(self) -> QtWidgets.QWidget: ...
def setView(self, view: QtWidgets.QWidget) -> None: ...
def history(self) -> QWebEngineHistory: ...
class QWebEngineProfile(QtCore.QObject):
class PersistentCookiesPolicy(int): ...
NoPersistentCookies = ... # type: 'QWebEngineProfile.PersistentCookiesPolicy'
AllowPersistentCookies = ... # type: 'QWebEngineProfile.PersistentCookiesPolicy'
ForcePersistentCookies = ... # type: 'QWebEngineProfile.PersistentCookiesPolicy'
class HttpCacheType(int): ...
MemoryHttpCache = ... # type: 'QWebEngineProfile.HttpCacheType'
DiskHttpCache = ... # type: 'QWebEngineProfile.HttpCacheType'
NoCache = ... # type: 'QWebEngineProfile.HttpCacheType'
@typing.overload
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@typing.overload
def __init__(self, name: str, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def clientCertificateStore(self) -> QtWebEngineCore.QWebEngineClientCertificateStore: ...
def setNotificationPresenter(self, a0: typing.Callable[[QtWebEngineCore.QWebEngineNotification], None]) -> None: ...
def setDownloadPath(self, path: str) -> None: ...
def downloadPath(self) -> str: ...
def isUsedForGlobalCertificateVerification(self) -> bool: ...
def setUseForGlobalCertificateVerification(self, enabled: bool = ...) -> None: ...
def isSpellCheckEnabled(self) -> bool: ...
def setSpellCheckEnabled(self, enabled: bool) -> None: ...
def spellCheckLanguages(self) -> typing.List[str]: ...
def setSpellCheckLanguages(self, languages: typing.Iterable[str]) -> None: ...
def clearHttpCache(self) -> None: ...
def removeAllUrlSchemeHandlers(self) -> None: ...
def removeUrlSchemeHandler(self, a0: QtWebEngineCore.QWebEngineUrlSchemeHandler) -> None: ...
def removeUrlScheme(self, scheme: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def installUrlSchemeHandler(self, scheme: typing.Union[QtCore.QByteArray, bytes, bytearray], a1: QtWebEngineCore.QWebEngineUrlSchemeHandler) -> None: ...
def urlSchemeHandler(self, a0: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> QtWebEngineCore.QWebEngineUrlSchemeHandler: ...
def setRequestInterceptor(self, interceptor: QtWebEngineCore.QWebEngineUrlRequestInterceptor) -> None: ...
def setUrlRequestInterceptor(self, interceptor: QtWebEngineCore.QWebEngineUrlRequestInterceptor) -> None: ...
def cookieStore(self) -> QtWebEngineCore.QWebEngineCookieStore: ...
def httpAcceptLanguage(self) -> str: ...
def setHttpAcceptLanguage(self, httpAcceptLanguage: str) -> None: ...
def downloadRequested(self, download: QWebEngineDownloadItem) -> None: ...
@staticmethod
def defaultProfile() -> 'QWebEngineProfile': ...
def scripts(self) -> 'QWebEngineScriptCollection': ...
def settings(self) -> 'QWebEngineSettings': ...
def visitedLinksContainsUrl(self, url: QtCore.QUrl) -> bool: ...
def clearVisitedLinks(self, urls: typing.Iterable[QtCore.QUrl]) -> None: ...
def clearAllVisitedLinks(self) -> None: ...
def setHttpCacheMaximumSize(self, maxSize: int) -> None: ...
def httpCacheMaximumSize(self) -> int: ...
def setPersistentCookiesPolicy(self, a0: 'QWebEngineProfile.PersistentCookiesPolicy') -> None: ...
def persistentCookiesPolicy(self) -> 'QWebEngineProfile.PersistentCookiesPolicy': ...
def setHttpCacheType(self, a0: 'QWebEngineProfile.HttpCacheType') -> None: ...
def httpCacheType(self) -> 'QWebEngineProfile.HttpCacheType': ...
def setHttpUserAgent(self, userAgent: str) -> None: ...
def httpUserAgent(self) -> str: ...
def setCachePath(self, path: str) -> None: ...
def cachePath(self) -> str: ...
def setPersistentStoragePath(self, path: str) -> None: ...
def persistentStoragePath(self) -> str: ...
def isOffTheRecord(self) -> bool: ...
def storageName(self) -> str: ...
class QWebEngineScript(sip.simplewrapper):
class ScriptWorldId(int): ...
MainWorld = ... # type: 'QWebEngineScript.ScriptWorldId'
ApplicationWorld = ... # type: 'QWebEngineScript.ScriptWorldId'
UserWorld = ... # type: 'QWebEngineScript.ScriptWorldId'
class InjectionPoint(int): ...
Deferred = ... # type: 'QWebEngineScript.InjectionPoint'
DocumentReady = ... # type: 'QWebEngineScript.InjectionPoint'
DocumentCreation = ... # type: 'QWebEngineScript.InjectionPoint'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QWebEngineScript') -> None: ...
def swap(self, other: 'QWebEngineScript') -> None: ...
def setRunsOnSubFrames(self, on: bool) -> None: ...
def runsOnSubFrames(self) -> bool: ...
def setWorldId(self, a0: int) -> None: ...
def worldId(self) -> int: ...
def setInjectionPoint(self, a0: 'QWebEngineScript.InjectionPoint') -> None: ...
def injectionPoint(self) -> 'QWebEngineScript.InjectionPoint': ...
def setSourceCode(self, a0: str) -> None: ...
def sourceCode(self) -> str: ...
def setName(self, a0: str) -> None: ...
def name(self) -> str: ...
def isNull(self) -> bool: ...
class QWebEngineScriptCollection(sip.simplewrapper):
def toList(self) -> typing.List[QWebEngineScript]: ...
def clear(self) -> None: ...
def remove(self, a0: QWebEngineScript) -> bool: ...
@typing.overload
def insert(self, a0: QWebEngineScript) -> None: ...
@typing.overload
def insert(self, list: typing.Iterable[QWebEngineScript]) -> None: ...
def findScripts(self, name: str) -> typing.List[QWebEngineScript]: ...
def findScript(self, name: str) -> QWebEngineScript: ...
def contains(self, value: QWebEngineScript) -> bool: ...
def __len__(self) -> int: ...
def count(self) -> int: ...
def isEmpty(self) -> bool: ...
class QWebEngineSettings(sip.simplewrapper):
class UnknownUrlSchemePolicy(int): ...
DisallowUnknownUrlSchemes = ... # type: 'QWebEngineSettings.UnknownUrlSchemePolicy'
AllowUnknownUrlSchemesFromUserInteraction = ... # type: 'QWebEngineSettings.UnknownUrlSchemePolicy'
AllowAllUnknownUrlSchemes = ... # type: 'QWebEngineSettings.UnknownUrlSchemePolicy'
class FontSize(int): ...
MinimumFontSize = ... # type: 'QWebEngineSettings.FontSize'
MinimumLogicalFontSize = ... # type: 'QWebEngineSettings.FontSize'
DefaultFontSize = ... # type: 'QWebEngineSettings.FontSize'
DefaultFixedFontSize = ... # type: 'QWebEngineSettings.FontSize'
class WebAttribute(int): ...
AutoLoadImages = ... # type: 'QWebEngineSettings.WebAttribute'
JavascriptEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
JavascriptCanOpenWindows = ... # type: 'QWebEngineSettings.WebAttribute'
JavascriptCanAccessClipboard = ... # type: 'QWebEngineSettings.WebAttribute'
LinksIncludedInFocusChain = ... # type: 'QWebEngineSettings.WebAttribute'
LocalStorageEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
LocalContentCanAccessRemoteUrls = ... # type: 'QWebEngineSettings.WebAttribute'
XSSAuditingEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
SpatialNavigationEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
LocalContentCanAccessFileUrls = ... # type: 'QWebEngineSettings.WebAttribute'
HyperlinkAuditingEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
ScrollAnimatorEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
ErrorPageEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
PluginsEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
FullScreenSupportEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
ScreenCaptureEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
WebGLEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
Accelerated2dCanvasEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
AutoLoadIconsForPage = ... # type: 'QWebEngineSettings.WebAttribute'
TouchIconsEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
FocusOnNavigationEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
PrintElementBackgrounds = ... # type: 'QWebEngineSettings.WebAttribute'
AllowRunningInsecureContent = ... # type: 'QWebEngineSettings.WebAttribute'
AllowGeolocationOnInsecureOrigins = ... # type: 'QWebEngineSettings.WebAttribute'
AllowWindowActivationFromJavaScript = ... # type: 'QWebEngineSettings.WebAttribute'
ShowScrollBars = ... # type: 'QWebEngineSettings.WebAttribute'
PlaybackRequiresUserGesture = ... # type: 'QWebEngineSettings.WebAttribute'
WebRTCPublicInterfacesOnly = ... # type: 'QWebEngineSettings.WebAttribute'
JavascriptCanPaste = ... # type: 'QWebEngineSettings.WebAttribute'
DnsPrefetchEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
PdfViewerEnabled = ... # type: 'QWebEngineSettings.WebAttribute'
class FontFamily(int): ...
StandardFont = ... # type: 'QWebEngineSettings.FontFamily'
FixedFont = ... # type: 'QWebEngineSettings.FontFamily'
SerifFont = ... # type: 'QWebEngineSettings.FontFamily'
SansSerifFont = ... # type: 'QWebEngineSettings.FontFamily'
CursiveFont = ... # type: 'QWebEngineSettings.FontFamily'
FantasyFont = ... # type: 'QWebEngineSettings.FontFamily'
PictographFont = ... # type: 'QWebEngineSettings.FontFamily'
def resetUnknownUrlSchemePolicy(self) -> None: ...
def setUnknownUrlSchemePolicy(self, policy: 'QWebEngineSettings.UnknownUrlSchemePolicy') -> None: ...
def unknownUrlSchemePolicy(self) -> 'QWebEngineSettings.UnknownUrlSchemePolicy': ...
def defaultTextEncoding(self) -> str: ...
def setDefaultTextEncoding(self, encoding: str) -> None: ...
def resetAttribute(self, attr: 'QWebEngineSettings.WebAttribute') -> None: ...
def testAttribute(self, attr: 'QWebEngineSettings.WebAttribute') -> bool: ...
def setAttribute(self, attr: 'QWebEngineSettings.WebAttribute', on: bool) -> None: ...
def resetFontSize(self, type: 'QWebEngineSettings.FontSize') -> None: ...
def fontSize(self, type: 'QWebEngineSettings.FontSize') -> int: ...
def setFontSize(self, type: 'QWebEngineSettings.FontSize', size: int) -> None: ...
def resetFontFamily(self, which: 'QWebEngineSettings.FontFamily') -> None: ...
def fontFamily(self, which: 'QWebEngineSettings.FontFamily') -> str: ...
def setFontFamily(self, which: 'QWebEngineSettings.FontFamily', family: str) -> None: ...
@staticmethod
def globalSettings() -> 'QWebEngineSettings': ...
@staticmethod
def defaultSettings() -> 'QWebEngineSettings': ...
class QWebEngineView(QtWidgets.QWidget):
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def closeEvent(self, a0: QtGui.QCloseEvent) -> None: ...
def dropEvent(self, e: QtGui.QDropEvent) -> None: ...
def dragMoveEvent(self, e: QtGui.QDragMoveEvent) -> None: ...
def dragLeaveEvent(self, e: QtGui.QDragLeaveEvent) -> None: ...
def dragEnterEvent(self, e: QtGui.QDragEnterEvent) -> None: ...
def iconChanged(self, a0: QtGui.QIcon) -> None: ...
def icon(self) -> QtGui.QIcon: ...
def hideEvent(self, a0: QtGui.QHideEvent) -> None: ...
def showEvent(self, a0: QtGui.QShowEvent) -> None: ...
def event(self, a0: QtCore.QEvent) -> bool: ...
def contextMenuEvent(self, a0: QtGui.QContextMenuEvent) -> None: ...
def createWindow(self, type: QWebEnginePage.WebWindowType) -> 'QWebEngineView': ...
def renderProcessTerminated(self, terminationStatus: QWebEnginePage.RenderProcessTerminationStatus, exitCode: int) -> None: ...
def iconUrlChanged(self, a0: QtCore.QUrl) -> None: ...
def urlChanged(self, a0: QtCore.QUrl) -> None: ...
def selectionChanged(self) -> None: ...
def titleChanged(self, title: str) -> None: ...
def loadFinished(self, a0: bool) -> None: ...
def loadProgress(self, progress: int) -> None: ...
def loadStarted(self) -> None: ...
def reload(self) -> None: ...
def forward(self) -> None: ...
def back(self) -> None: ...
def stop(self) -> None: ...
def settings(self) -> QWebEngineSettings: ...
def sizeHint(self) -> QtCore.QSize: ...
def findText(self, subString: str, options: typing.Union[QWebEnginePage.FindFlags, QWebEnginePage.FindFlag] = ..., resultCallback: typing.Optional[typing.Callable[[bool], None]] = ...) -> None: ...
def setZoomFactor(self, factor: float) -> None: ...
def zoomFactor(self) -> float: ...
def triggerPageAction(self, action: QWebEnginePage.WebAction, checked: bool = ...) -> None: ...
def pageAction(self, action: QWebEnginePage.WebAction) -> QtWidgets.QAction: ...
def selectedText(self) -> str: ...
def hasSelection(self) -> bool: ...
def iconUrl(self) -> QtCore.QUrl: ...
def url(self) -> QtCore.QUrl: ...
def setUrl(self, url: QtCore.QUrl) -> None: ...
def title(self) -> str: ...
def history(self) -> QWebEngineHistory: ...
def setContent(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray], mimeType: str = ..., baseUrl: QtCore.QUrl = ...) -> None: ...
def setHtml(self, html: str, baseUrl: QtCore.QUrl = ...) -> None: ...
@typing.overload
def load(self, url: QtCore.QUrl) -> None: ...
@typing.overload
def load(self, request: QtWebEngineCore.QWebEngineHttpRequest) -> None: ...
def setPage(self, page: QWebEnginePage) -> None: ...
def page(self) -> QWebEnginePage: ...

View File

@ -0,0 +1,427 @@
# The PEP 484 type hints stub file for the QtWebKit module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWebKitWidgets
from PyQt5 import QtNetwork
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QWebDatabase(sip.simplewrapper):
def __init__(self, other: 'QWebDatabase') -> None: ...
@staticmethod
def removeAllDatabases() -> None: ...
@staticmethod
def removeDatabase(db: 'QWebDatabase') -> None: ...
def origin(self) -> 'QWebSecurityOrigin': ...
def fileName(self) -> str: ...
def size(self) -> int: ...
def expectedSize(self) -> int: ...
def displayName(self) -> str: ...
def name(self) -> str: ...
class QWebElement(sip.simplewrapper):
class StyleResolveStrategy(int): ...
InlineStyle = ... # type: 'QWebElement.StyleResolveStrategy'
CascadedStyle = ... # type: 'QWebElement.StyleResolveStrategy'
ComputedStyle = ... # type: 'QWebElement.StyleResolveStrategy'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebElement') -> None: ...
@typing.overload
def render(self, painter: QtGui.QPainter) -> None: ...
@typing.overload
def render(self, painter: QtGui.QPainter, clip: QtCore.QRect) -> None: ...
def setStyleProperty(self, name: str, value: str) -> None: ...
def styleProperty(self, name: str, strategy: 'QWebElement.StyleResolveStrategy') -> str: ...
def evaluateJavaScript(self, scriptSource: str) -> typing.Any: ...
def removeAllChildren(self) -> None: ...
def removeFromDocument(self) -> None: ...
def takeFromDocument(self) -> 'QWebElement': ...
def clone(self) -> 'QWebElement': ...
@typing.overload
def replace(self, markup: str) -> None: ...
@typing.overload
def replace(self, element: 'QWebElement') -> None: ...
@typing.overload
def encloseWith(self, markup: str) -> None: ...
@typing.overload
def encloseWith(self, element: 'QWebElement') -> None: ...
@typing.overload
def encloseContentsWith(self, element: 'QWebElement') -> None: ...
@typing.overload
def encloseContentsWith(self, markup: str) -> None: ...
@typing.overload
def prependOutside(self, markup: str) -> None: ...
@typing.overload
def prependOutside(self, element: 'QWebElement') -> None: ...
@typing.overload
def appendOutside(self, markup: str) -> None: ...
@typing.overload
def appendOutside(self, element: 'QWebElement') -> None: ...
@typing.overload
def prependInside(self, markup: str) -> None: ...
@typing.overload
def prependInside(self, element: 'QWebElement') -> None: ...
@typing.overload
def appendInside(self, markup: str) -> None: ...
@typing.overload
def appendInside(self, element: 'QWebElement') -> None: ...
def webFrame(self) -> QtWebKitWidgets.QWebFrame: ...
def document(self) -> 'QWebElement': ...
def previousSibling(self) -> 'QWebElement': ...
def nextSibling(self) -> 'QWebElement': ...
def lastChild(self) -> 'QWebElement': ...
def firstChild(self) -> 'QWebElement': ...
def parent(self) -> 'QWebElement': ...
def namespaceUri(self) -> str: ...
def localName(self) -> str: ...
def prefix(self) -> str: ...
def tagName(self) -> str: ...
def geometry(self) -> QtCore.QRect: ...
def setFocus(self) -> None: ...
def hasFocus(self) -> bool: ...
def toggleClass(self, name: str) -> None: ...
def removeClass(self, name: str) -> None: ...
def addClass(self, name: str) -> None: ...
def hasClass(self, name: str) -> bool: ...
def classes(self) -> typing.List[str]: ...
def attributeNames(self, namespaceUri: str = ...) -> typing.List[str]: ...
def hasAttributes(self) -> bool: ...
def removeAttributeNS(self, namespaceUri: str, name: str) -> None: ...
def removeAttribute(self, name: str) -> None: ...
def hasAttributeNS(self, namespaceUri: str, name: str) -> bool: ...
def hasAttribute(self, name: str) -> bool: ...
def attributeNS(self, namespaceUri: str, name: str, defaultValue: str = ...) -> str: ...
def attribute(self, name: str, defaultValue: str = ...) -> str: ...
def setAttributeNS(self, namespaceUri: str, name: str, value: str) -> None: ...
def setAttribute(self, name: str, value: str) -> None: ...
def toInnerXml(self) -> str: ...
def setInnerXml(self, markup: str) -> None: ...
def toOuterXml(self) -> str: ...
def setOuterXml(self, markup: str) -> None: ...
def toPlainText(self) -> str: ...
def setPlainText(self, text: str) -> None: ...
def findFirst(self, selectorQuery: str) -> 'QWebElement': ...
def findAll(self, selectorQuery: str) -> 'QWebElementCollection': ...
def isNull(self) -> bool: ...
class QWebElementCollection(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, contextElement: QWebElement, query: str) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebElementCollection') -> None: ...
def toList(self) -> typing.List[QWebElement]: ...
def last(self) -> QWebElement: ...
def first(self) -> QWebElement: ...
def __getitem__(self, i: int) -> QWebElement: ...
def at(self, i: int) -> QWebElement: ...
def __len__(self) -> int: ...
def count(self) -> int: ...
def append(self, collection: 'QWebElementCollection') -> None: ...
class QWebHistoryItem(sip.simplewrapper):
def __init__(self, other: 'QWebHistoryItem') -> None: ...
def isValid(self) -> bool: ...
def setUserData(self, userData: typing.Any) -> None: ...
def userData(self) -> typing.Any: ...
def icon(self) -> QtGui.QIcon: ...
def lastVisited(self) -> QtCore.QDateTime: ...
def title(self) -> str: ...
def url(self) -> QtCore.QUrl: ...
def originalUrl(self) -> QtCore.QUrl: ...
class QWebHistory(sip.simplewrapper):
def setMaximumItemCount(self, count: int) -> None: ...
def maximumItemCount(self) -> int: ...
def currentItemIndex(self) -> int: ...
def __len__(self) -> int: ...
def count(self) -> int: ...
def itemAt(self, i: int) -> QWebHistoryItem: ...
def forwardItem(self) -> QWebHistoryItem: ...
def currentItem(self) -> QWebHistoryItem: ...
def backItem(self) -> QWebHistoryItem: ...
def goToItem(self, item: QWebHistoryItem) -> None: ...
def forward(self) -> None: ...
def back(self) -> None: ...
def canGoForward(self) -> bool: ...
def canGoBack(self) -> bool: ...
def forwardItems(self, maxItems: int) -> typing.List[QWebHistoryItem]: ...
def backItems(self, maxItems: int) -> typing.List[QWebHistoryItem]: ...
def items(self) -> typing.List[QWebHistoryItem]: ...
def clear(self) -> None: ...
class QWebHistoryInterface(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def addHistoryEntry(self, url: str) -> None: ...
def historyContains(self, url: str) -> bool: ...
@staticmethod
def defaultInterface() -> 'QWebHistoryInterface': ...
@staticmethod
def setDefaultInterface(defaultInterface: 'QWebHistoryInterface') -> None: ...
class QWebPluginFactory(QtCore.QObject):
class Extension(int): ...
class MimeType(sip.simplewrapper):
description = ... # type: str
fileExtensions = ... # type: typing.Iterable[str]
name = ... # type: str
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPluginFactory.MimeType') -> None: ...
class Plugin(sip.simplewrapper):
description = ... # type: str
mimeTypes = ... # type: typing.Iterable['QWebPluginFactory.MimeType']
name = ... # type: str
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPluginFactory.Plugin') -> None: ...
class ExtensionOption(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPluginFactory.ExtensionOption') -> None: ...
class ExtensionReturn(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPluginFactory.ExtensionReturn') -> None: ...
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def supportsExtension(self, extension: 'QWebPluginFactory.Extension') -> bool: ...
def extension(self, extension: 'QWebPluginFactory.Extension', option: typing.Optional['QWebPluginFactory.ExtensionOption'] = ..., output: typing.Optional['QWebPluginFactory.ExtensionReturn'] = ...) -> bool: ...
def create(self, mimeType: str, url: QtCore.QUrl, argumentNames: typing.Iterable[str], argumentValues: typing.Iterable[str]) -> QtCore.QObject: ...
def refreshPlugins(self) -> None: ...
def plugins(self) -> typing.List['QWebPluginFactory.Plugin']: ...
class QWebSecurityOrigin(sip.simplewrapper):
class SubdomainSetting(int): ...
AllowSubdomains = ... # type: 'QWebSecurityOrigin.SubdomainSetting'
DisallowSubdomains = ... # type: 'QWebSecurityOrigin.SubdomainSetting'
@typing.overload
def __init__(self, url: QtCore.QUrl) -> None: ...
@typing.overload
def __init__(self, other: 'QWebSecurityOrigin') -> None: ...
def removeAccessWhitelistEntry(self, scheme: str, host: str, subdomainSetting: 'QWebSecurityOrigin.SubdomainSetting') -> None: ...
def addAccessWhitelistEntry(self, scheme: str, host: str, subdomainSetting: 'QWebSecurityOrigin.SubdomainSetting') -> None: ...
def setApplicationCacheQuota(self, quota: int) -> None: ...
@staticmethod
def localSchemes() -> typing.List[str]: ...
@staticmethod
def removeLocalScheme(scheme: str) -> None: ...
@staticmethod
def addLocalScheme(scheme: str) -> None: ...
def databases(self) -> typing.List[QWebDatabase]: ...
def setDatabaseQuota(self, quota: int) -> None: ...
def databaseQuota(self) -> int: ...
def databaseUsage(self) -> int: ...
def port(self) -> int: ...
def host(self) -> str: ...
def scheme(self) -> str: ...
@staticmethod
def allOrigins() -> typing.List['QWebSecurityOrigin']: ...
class QWebSettings(sip.simplewrapper):
class ThirdPartyCookiePolicy(int): ...
AlwaysAllowThirdPartyCookies = ... # type: 'QWebSettings.ThirdPartyCookiePolicy'
AlwaysBlockThirdPartyCookies = ... # type: 'QWebSettings.ThirdPartyCookiePolicy'
AllowThirdPartyWithExistingCookies = ... # type: 'QWebSettings.ThirdPartyCookiePolicy'
class FontSize(int): ...
MinimumFontSize = ... # type: 'QWebSettings.FontSize'
MinimumLogicalFontSize = ... # type: 'QWebSettings.FontSize'
DefaultFontSize = ... # type: 'QWebSettings.FontSize'
DefaultFixedFontSize = ... # type: 'QWebSettings.FontSize'
class WebGraphic(int): ...
MissingImageGraphic = ... # type: 'QWebSettings.WebGraphic'
MissingPluginGraphic = ... # type: 'QWebSettings.WebGraphic'
DefaultFrameIconGraphic = ... # type: 'QWebSettings.WebGraphic'
TextAreaSizeGripCornerGraphic = ... # type: 'QWebSettings.WebGraphic'
InputSpeechButtonGraphic = ... # type: 'QWebSettings.WebGraphic'
SearchCancelButtonGraphic = ... # type: 'QWebSettings.WebGraphic'
SearchCancelButtonPressedGraphic = ... # type: 'QWebSettings.WebGraphic'
class WebAttribute(int): ...
AutoLoadImages = ... # type: 'QWebSettings.WebAttribute'
JavascriptEnabled = ... # type: 'QWebSettings.WebAttribute'
JavaEnabled = ... # type: 'QWebSettings.WebAttribute'
PluginsEnabled = ... # type: 'QWebSettings.WebAttribute'
PrivateBrowsingEnabled = ... # type: 'QWebSettings.WebAttribute'
JavascriptCanOpenWindows = ... # type: 'QWebSettings.WebAttribute'
JavascriptCanCloseWindows = ... # type: 'QWebSettings.WebAttribute'
JavascriptCanAccessClipboard = ... # type: 'QWebSettings.WebAttribute'
DeveloperExtrasEnabled = ... # type: 'QWebSettings.WebAttribute'
LinksIncludedInFocusChain = ... # type: 'QWebSettings.WebAttribute'
ZoomTextOnly = ... # type: 'QWebSettings.WebAttribute'
PrintElementBackgrounds = ... # type: 'QWebSettings.WebAttribute'
OfflineStorageDatabaseEnabled = ... # type: 'QWebSettings.WebAttribute'
OfflineWebApplicationCacheEnabled = ... # type: 'QWebSettings.WebAttribute'
LocalStorageDatabaseEnabled = ... # type: 'QWebSettings.WebAttribute'
LocalStorageEnabled = ... # type: 'QWebSettings.WebAttribute'
LocalContentCanAccessRemoteUrls = ... # type: 'QWebSettings.WebAttribute'
DnsPrefetchEnabled = ... # type: 'QWebSettings.WebAttribute'
XSSAuditingEnabled = ... # type: 'QWebSettings.WebAttribute'
AcceleratedCompositingEnabled = ... # type: 'QWebSettings.WebAttribute'
SpatialNavigationEnabled = ... # type: 'QWebSettings.WebAttribute'
LocalContentCanAccessFileUrls = ... # type: 'QWebSettings.WebAttribute'
TiledBackingStoreEnabled = ... # type: 'QWebSettings.WebAttribute'
FrameFlatteningEnabled = ... # type: 'QWebSettings.WebAttribute'
SiteSpecificQuirksEnabled = ... # type: 'QWebSettings.WebAttribute'
WebGLEnabled = ... # type: 'QWebSettings.WebAttribute'
HyperlinkAuditingEnabled = ... # type: 'QWebSettings.WebAttribute'
CSSRegionsEnabled = ... # type: 'QWebSettings.WebAttribute'
CSSGridLayoutEnabled = ... # type: 'QWebSettings.WebAttribute'
ScrollAnimatorEnabled = ... # type: 'QWebSettings.WebAttribute'
CaretBrowsingEnabled = ... # type: 'QWebSettings.WebAttribute'
NotificationsEnabled = ... # type: 'QWebSettings.WebAttribute'
WebAudioEnabled = ... # type: 'QWebSettings.WebAttribute'
Accelerated2dCanvasEnabled = ... # type: 'QWebSettings.WebAttribute'
class FontFamily(int): ...
StandardFont = ... # type: 'QWebSettings.FontFamily'
FixedFont = ... # type: 'QWebSettings.FontFamily'
SerifFont = ... # type: 'QWebSettings.FontFamily'
SansSerifFont = ... # type: 'QWebSettings.FontFamily'
CursiveFont = ... # type: 'QWebSettings.FontFamily'
FantasyFont = ... # type: 'QWebSettings.FontFamily'
def cssMediaType(self) -> str: ...
def setCSSMediaType(self, a0: str) -> None: ...
def thirdPartyCookiePolicy(self) -> 'QWebSettings.ThirdPartyCookiePolicy': ...
def setThirdPartyCookiePolicy(self, a0: 'QWebSettings.ThirdPartyCookiePolicy') -> None: ...
@staticmethod
def enablePersistentStorage(path: str = ...) -> None: ...
@staticmethod
def clearMemoryCaches() -> None: ...
def localStoragePath(self) -> str: ...
def setLocalStoragePath(self, path: str) -> None: ...
@staticmethod
def offlineWebApplicationCacheQuota() -> int: ...
@staticmethod
def setOfflineWebApplicationCacheQuota(maximumSize: int) -> None: ...
@staticmethod
def offlineWebApplicationCachePath() -> str: ...
@staticmethod
def setOfflineWebApplicationCachePath(path: str) -> None: ...
def defaultTextEncoding(self) -> str: ...
def setDefaultTextEncoding(self, encoding: str) -> None: ...
@staticmethod
def offlineStorageDefaultQuota() -> int: ...
@staticmethod
def setOfflineStorageDefaultQuota(maximumSize: int) -> None: ...
@staticmethod
def offlineStoragePath() -> str: ...
@staticmethod
def setOfflineStoragePath(path: str) -> None: ...
@staticmethod
def setObjectCacheCapacities(cacheMinDeadCapacity: int, cacheMaxDead: int, totalCapacity: int) -> None: ...
@staticmethod
def maximumPagesInCache() -> int: ...
@staticmethod
def setMaximumPagesInCache(pages: int) -> None: ...
@staticmethod
def webGraphic(type: 'QWebSettings.WebGraphic') -> QtGui.QPixmap: ...
@staticmethod
def setWebGraphic(type: 'QWebSettings.WebGraphic', graphic: QtGui.QPixmap) -> None: ...
@staticmethod
def iconForUrl(url: QtCore.QUrl) -> QtGui.QIcon: ...
@staticmethod
def clearIconDatabase() -> None: ...
@staticmethod
def iconDatabasePath() -> str: ...
@staticmethod
def setIconDatabasePath(location: str) -> None: ...
def userStyleSheetUrl(self) -> QtCore.QUrl: ...
def setUserStyleSheetUrl(self, location: QtCore.QUrl) -> None: ...
def resetAttribute(self, attr: 'QWebSettings.WebAttribute') -> None: ...
def testAttribute(self, attr: 'QWebSettings.WebAttribute') -> bool: ...
def setAttribute(self, attr: 'QWebSettings.WebAttribute', on: bool) -> None: ...
def resetFontSize(self, type: 'QWebSettings.FontSize') -> None: ...
def fontSize(self, type: 'QWebSettings.FontSize') -> int: ...
def setFontSize(self, type: 'QWebSettings.FontSize', size: int) -> None: ...
def resetFontFamily(self, which: 'QWebSettings.FontFamily') -> None: ...
def fontFamily(self, which: 'QWebSettings.FontFamily') -> str: ...
def setFontFamily(self, which: 'QWebSettings.FontFamily', family: str) -> None: ...
@staticmethod
def globalSettings() -> 'QWebSettings': ...
def qWebKitMinorVersion() -> int: ...
def qWebKitMajorVersion() -> int: ...
def qWebKitVersion() -> str: ...

View File

@ -0,0 +1,625 @@
# The PEP 484 type hints stub file for the QtWebKitWidgets module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtWidgets
from PyQt5 import QtWebKit
from PyQt5 import QtPrintSupport
from PyQt5 import QtNetwork as QtNetwork_
from PyQt5 import QtGui
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
# Convenient aliases for complicated OpenGL types.
PYQT_OPENGL_ARRAY = typing.Union[typing.Sequence[int], typing.Sequence[float],
sip.Buffer, None]
PYQT_OPENGL_BOUND_ARRAY = typing.Union[typing.Sequence[int],
typing.Sequence[float], sip.Buffer, int, None]
class QGraphicsWebView(QtWidgets.QGraphicsWidget):
def __init__(self, parent: typing.Optional[QtWidgets.QGraphicsItem] = ...) -> None: ...
def setRenderHint(self, hint: QtGui.QPainter.RenderHint, enabled: bool = ...) -> None: ...
def setRenderHints(self, hints: QtGui.QPainter.RenderHints) -> None: ...
def renderHints(self) -> QtGui.QPainter.RenderHints: ...
def setTiledBackingStoreFrozen(self, frozen: bool) -> None: ...
def isTiledBackingStoreFrozen(self) -> bool: ...
def setResizesToContents(self, enabled: bool) -> None: ...
def resizesToContents(self) -> bool: ...
def sceneEvent(self, a0: QtCore.QEvent) -> bool: ...
def focusNextPrevChild(self, next: bool) -> bool: ...
def inputMethodEvent(self, a0: QtGui.QInputMethodEvent) -> None: ...
def focusOutEvent(self, a0: QtGui.QFocusEvent) -> None: ...
def focusInEvent(self, a0: QtGui.QFocusEvent) -> None: ...
def dropEvent(self, a0: QtWidgets.QGraphicsSceneDragDropEvent) -> None: ...
def dragMoveEvent(self, a0: QtWidgets.QGraphicsSceneDragDropEvent) -> None: ...
def dragLeaveEvent(self, a0: QtWidgets.QGraphicsSceneDragDropEvent) -> None: ...
def dragEnterEvent(self, a0: QtWidgets.QGraphicsSceneDragDropEvent) -> None: ...
def contextMenuEvent(self, a0: QtWidgets.QGraphicsSceneContextMenuEvent) -> None: ...
def keyReleaseEvent(self, a0: QtGui.QKeyEvent) -> None: ...
def keyPressEvent(self, a0: QtGui.QKeyEvent) -> None: ...
def wheelEvent(self, a0: QtWidgets.QGraphicsSceneWheelEvent) -> None: ...
def hoverLeaveEvent(self, a0: QtWidgets.QGraphicsSceneHoverEvent) -> None: ...
def hoverMoveEvent(self, a0: QtWidgets.QGraphicsSceneHoverEvent) -> None: ...
def mouseMoveEvent(self, a0: QtWidgets.QGraphicsSceneMouseEvent) -> None: ...
def mouseReleaseEvent(self, a0: QtWidgets.QGraphicsSceneMouseEvent) -> None: ...
def mouseDoubleClickEvent(self, a0: QtWidgets.QGraphicsSceneMouseEvent) -> None: ...
def mousePressEvent(self, a0: QtWidgets.QGraphicsSceneMouseEvent) -> None: ...
def linkClicked(self, a0: QtCore.QUrl) -> None: ...
def statusBarMessage(self, message: str) -> None: ...
def iconChanged(self) -> None: ...
def titleChanged(self, a0: str) -> None: ...
def urlChanged(self, a0: QtCore.QUrl) -> None: ...
def loadProgress(self, progress: int) -> None: ...
def loadFinished(self, a0: bool) -> None: ...
def loadStarted(self) -> None: ...
def reload(self) -> None: ...
def forward(self) -> None: ...
def back(self) -> None: ...
def stop(self) -> None: ...
def inputMethodQuery(self, query: QtCore.Qt.InputMethodQuery) -> typing.Any: ...
def sizeHint(self, which: QtCore.Qt.SizeHint, constraint: QtCore.QSizeF) -> QtCore.QSizeF: ... # type: ignore[override]
def event(self, a0: QtCore.QEvent) -> bool: ...
def itemChange(self, change: QtWidgets.QGraphicsItem.GraphicsItemChange, value: typing.Any) -> typing.Any: ...
def paint(self, painter: QtGui.QPainter, option: QtWidgets.QStyleOptionGraphicsItem, widget: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def updateGeometry(self) -> None: ...
def setGeometry(self, rect: QtCore.QRectF) -> None: ... # type: ignore[override]
def findText(self, subString: str, options: 'QWebPage.FindFlags' = ...) -> bool: ...
def triggerPageAction(self, action: 'QWebPage.WebAction', checked: bool = ...) -> None: ...
def pageAction(self, action: 'QWebPage.WebAction') -> QtWidgets.QAction: ...
def settings(self) -> QtWebKit.QWebSettings: ...
def history(self) -> QtWebKit.QWebHistory: ...
def setContent(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray], mimeType: str = ..., baseUrl: QtCore.QUrl = ...) -> None: ...
def setHtml(self, html: str, baseUrl: QtCore.QUrl = ...) -> None: ...
@typing.overload
def load(self, url: QtCore.QUrl) -> None: ...
@typing.overload
def load(self, request: QtNetwork_.QNetworkRequest, operation: QtNetwork_.QNetworkAccessManager.Operation = ..., body: typing.Union[QtCore.QByteArray, bytes, bytearray] = ...) -> None: ...
def isModified(self) -> bool: ...
def setZoomFactor(self, a0: float) -> None: ...
def zoomFactor(self) -> float: ...
def icon(self) -> QtGui.QIcon: ...
def title(self) -> str: ...
def setUrl(self, a0: QtCore.QUrl) -> None: ...
def url(self) -> QtCore.QUrl: ...
def setPage(self, a0: 'QWebPage') -> None: ...
def page(self) -> 'QWebPage': ...
class QWebHitTestResult(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QWebHitTestResult') -> None: ...
def linkTitleString(self) -> str: ...
def mediaUrl(self) -> QtCore.QUrl: ...
def element(self) -> QtWebKit.QWebElement: ...
def linkElement(self) -> QtWebKit.QWebElement: ...
def enclosingBlockElement(self) -> QtWebKit.QWebElement: ...
def boundingRect(self) -> QtCore.QRect: ...
def frame(self) -> 'QWebFrame': ...
def isContentSelected(self) -> bool: ...
def isContentEditable(self) -> bool: ...
def pixmap(self) -> QtGui.QPixmap: ...
def imageUrl(self) -> QtCore.QUrl: ...
def alternateText(self) -> str: ...
def linkTargetFrame(self) -> 'QWebFrame': ...
def linkTitle(self) -> QtCore.QUrl: ...
def linkUrl(self) -> QtCore.QUrl: ...
def linkText(self) -> str: ...
def title(self) -> str: ...
def pos(self) -> QtCore.QPoint: ...
def isNull(self) -> bool: ...
class QWebFrame(QtCore.QObject):
class RenderLayer(int): ...
ContentsLayer = ... # type: 'QWebFrame.RenderLayer'
ScrollBarLayer = ... # type: 'QWebFrame.RenderLayer'
PanIconLayer = ... # type: 'QWebFrame.RenderLayer'
AllLayers = ... # type: 'QWebFrame.RenderLayer'
class ValueOwnership(int): ...
QtOwnership = ... # type: 'QWebFrame.ValueOwnership'
ScriptOwnership = ... # type: 'QWebFrame.ValueOwnership'
AutoOwnership = ... # type: 'QWebFrame.ValueOwnership'
class RenderLayers(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QWebFrame.RenderLayers', 'QWebFrame.RenderLayer']) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebFrame.RenderLayers') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QWebFrame.RenderLayers': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
def scrollToAnchor(self, anchor: str) -> None: ...
def pageChanged(self) -> None: ...
def loadFinished(self, ok: bool) -> None: ...
def loadStarted(self) -> None: ...
def contentsSizeChanged(self, size: QtCore.QSize) -> None: ...
def findFirstElement(self, selectorQuery: str) -> QtWebKit.QWebElement: ...
def findAllElements(self, selectorQuery: str) -> QtWebKit.QWebElementCollection: ...
def documentElement(self) -> QtWebKit.QWebElement: ...
def setFocus(self) -> None: ...
def hasFocus(self) -> bool: ...
@typing.overload
def render(self, a0: QtGui.QPainter, clip: QtGui.QRegion = ...) -> None: ...
@typing.overload
def render(self, a0: QtGui.QPainter, layer: 'QWebFrame.RenderLayers', clip: QtGui.QRegion = ...) -> None: ...
def scrollBarGeometry(self, orientation: QtCore.Qt.Orientation) -> QtCore.QRect: ...
def baseUrl(self) -> QtCore.QUrl: ...
def requestedUrl(self) -> QtCore.QUrl: ...
def securityOrigin(self) -> QtWebKit.QWebSecurityOrigin: ...
def setZoomFactor(self, factor: float) -> None: ...
def zoomFactor(self) -> float: ...
def setScrollPosition(self, pos: QtCore.QPoint) -> None: ...
def scrollPosition(self) -> QtCore.QPoint: ...
def scroll(self, a0: int, a1: int) -> None: ...
def metaData(self) -> typing.Dict[str, typing.List[str]]: ...
def iconChanged(self) -> None: ...
def initialLayoutCompleted(self) -> None: ...
def urlChanged(self, url: QtCore.QUrl) -> None: ...
def titleChanged(self, title: str) -> None: ...
def javaScriptWindowObjectCleared(self) -> None: ...
def print(self, printer: QtPrintSupport.QPrinter) -> None: ...
def print_(self, printer: QtPrintSupport.QPrinter) -> None: ...
def evaluateJavaScript(self, scriptSource: str) -> typing.Any: ...
def event(self, a0: QtCore.QEvent) -> bool: ...
def hitTestContent(self, pos: QtCore.QPoint) -> QWebHitTestResult: ...
def contentsSize(self) -> QtCore.QSize: ...
def geometry(self) -> QtCore.QRect: ...
def pos(self) -> QtCore.QPoint: ...
def scrollBarMaximum(self, orientation: QtCore.Qt.Orientation) -> int: ...
def scrollBarMinimum(self, orientation: QtCore.Qt.Orientation) -> int: ...
def scrollBarValue(self, orientation: QtCore.Qt.Orientation) -> int: ...
def setScrollBarValue(self, orientation: QtCore.Qt.Orientation, value: int) -> None: ...
def setScrollBarPolicy(self, orientation: QtCore.Qt.Orientation, policy: QtCore.Qt.ScrollBarPolicy) -> None: ...
def scrollBarPolicy(self, orientation: QtCore.Qt.Orientation) -> QtCore.Qt.ScrollBarPolicy: ...
def childFrames(self) -> typing.List['QWebFrame']: ...
def parentFrame(self) -> 'QWebFrame': ...
def frameName(self) -> str: ...
def icon(self) -> QtGui.QIcon: ...
def url(self) -> QtCore.QUrl: ...
def setUrl(self, url: QtCore.QUrl) -> None: ...
def title(self) -> str: ...
def toPlainText(self) -> str: ...
def toHtml(self) -> str: ...
def addToJavaScriptWindowObject(self, name: str, object: QtCore.QObject, ownership: 'QWebFrame.ValueOwnership' = ...) -> None: ...
def setContent(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray], mimeType: str = ..., baseUrl: QtCore.QUrl = ...) -> None: ...
def setHtml(self, html: str, baseUrl: QtCore.QUrl = ...) -> None: ...
@typing.overload
def load(self, url: QtCore.QUrl) -> None: ...
@typing.overload
def load(self, request: QtNetwork_.QNetworkRequest, operation: QtNetwork_.QNetworkAccessManager.Operation = ..., body: typing.Union[QtCore.QByteArray, bytes, bytearray] = ...) -> None: ...
def page(self) -> 'QWebPage': ...
class QWebInspector(QtWidgets.QWidget):
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def closeEvent(self, event: QtGui.QCloseEvent) -> None: ...
def hideEvent(self, event: QtGui.QHideEvent) -> None: ...
def showEvent(self, event: QtGui.QShowEvent) -> None: ...
def resizeEvent(self, event: QtGui.QResizeEvent) -> None: ...
def event(self, a0: QtCore.QEvent) -> bool: ...
def sizeHint(self) -> QtCore.QSize: ...
def page(self) -> 'QWebPage': ...
def setPage(self, page: 'QWebPage') -> None: ...
class QWebPage(QtCore.QObject):
class VisibilityState(int): ...
VisibilityStateVisible = ... # type: 'QWebPage.VisibilityState'
VisibilityStateHidden = ... # type: 'QWebPage.VisibilityState'
VisibilityStatePrerender = ... # type: 'QWebPage.VisibilityState'
VisibilityStateUnloaded = ... # type: 'QWebPage.VisibilityState'
class Feature(int): ...
Notifications = ... # type: 'QWebPage.Feature'
Geolocation = ... # type: 'QWebPage.Feature'
class PermissionPolicy(int): ...
PermissionUnknown = ... # type: 'QWebPage.PermissionPolicy'
PermissionGrantedByUser = ... # type: 'QWebPage.PermissionPolicy'
PermissionDeniedByUser = ... # type: 'QWebPage.PermissionPolicy'
class ErrorDomain(int): ...
QtNetwork = ... # type: 'QWebPage.ErrorDomain'
Http = ... # type: 'QWebPage.ErrorDomain'
WebKit = ... # type: 'QWebPage.ErrorDomain'
class Extension(int): ...
ChooseMultipleFilesExtension = ... # type: 'QWebPage.Extension'
ErrorPageExtension = ... # type: 'QWebPage.Extension'
class WebWindowType(int): ...
WebBrowserWindow = ... # type: 'QWebPage.WebWindowType'
WebModalDialog = ... # type: 'QWebPage.WebWindowType'
class LinkDelegationPolicy(int): ...
DontDelegateLinks = ... # type: 'QWebPage.LinkDelegationPolicy'
DelegateExternalLinks = ... # type: 'QWebPage.LinkDelegationPolicy'
DelegateAllLinks = ... # type: 'QWebPage.LinkDelegationPolicy'
class FindFlag(int): ...
FindBackward = ... # type: 'QWebPage.FindFlag'
FindCaseSensitively = ... # type: 'QWebPage.FindFlag'
FindWrapsAroundDocument = ... # type: 'QWebPage.FindFlag'
HighlightAllOccurrences = ... # type: 'QWebPage.FindFlag'
FindAtWordBeginningsOnly = ... # type: 'QWebPage.FindFlag'
TreatMedialCapitalAsWordBeginning = ... # type: 'QWebPage.FindFlag'
FindBeginsInSelection = ... # type: 'QWebPage.FindFlag'
class WebAction(int): ...
NoWebAction = ... # type: 'QWebPage.WebAction'
OpenLink = ... # type: 'QWebPage.WebAction'
OpenLinkInNewWindow = ... # type: 'QWebPage.WebAction'
OpenFrameInNewWindow = ... # type: 'QWebPage.WebAction'
DownloadLinkToDisk = ... # type: 'QWebPage.WebAction'
CopyLinkToClipboard = ... # type: 'QWebPage.WebAction'
OpenImageInNewWindow = ... # type: 'QWebPage.WebAction'
DownloadImageToDisk = ... # type: 'QWebPage.WebAction'
CopyImageToClipboard = ... # type: 'QWebPage.WebAction'
Back = ... # type: 'QWebPage.WebAction'
Forward = ... # type: 'QWebPage.WebAction'
Stop = ... # type: 'QWebPage.WebAction'
Reload = ... # type: 'QWebPage.WebAction'
Cut = ... # type: 'QWebPage.WebAction'
Copy = ... # type: 'QWebPage.WebAction'
Paste = ... # type: 'QWebPage.WebAction'
Undo = ... # type: 'QWebPage.WebAction'
Redo = ... # type: 'QWebPage.WebAction'
MoveToNextChar = ... # type: 'QWebPage.WebAction'
MoveToPreviousChar = ... # type: 'QWebPage.WebAction'
MoveToNextWord = ... # type: 'QWebPage.WebAction'
MoveToPreviousWord = ... # type: 'QWebPage.WebAction'
MoveToNextLine = ... # type: 'QWebPage.WebAction'
MoveToPreviousLine = ... # type: 'QWebPage.WebAction'
MoveToStartOfLine = ... # type: 'QWebPage.WebAction'
MoveToEndOfLine = ... # type: 'QWebPage.WebAction'
MoveToStartOfBlock = ... # type: 'QWebPage.WebAction'
MoveToEndOfBlock = ... # type: 'QWebPage.WebAction'
MoveToStartOfDocument = ... # type: 'QWebPage.WebAction'
MoveToEndOfDocument = ... # type: 'QWebPage.WebAction'
SelectNextChar = ... # type: 'QWebPage.WebAction'
SelectPreviousChar = ... # type: 'QWebPage.WebAction'
SelectNextWord = ... # type: 'QWebPage.WebAction'
SelectPreviousWord = ... # type: 'QWebPage.WebAction'
SelectNextLine = ... # type: 'QWebPage.WebAction'
SelectPreviousLine = ... # type: 'QWebPage.WebAction'
SelectStartOfLine = ... # type: 'QWebPage.WebAction'
SelectEndOfLine = ... # type: 'QWebPage.WebAction'
SelectStartOfBlock = ... # type: 'QWebPage.WebAction'
SelectEndOfBlock = ... # type: 'QWebPage.WebAction'
SelectStartOfDocument = ... # type: 'QWebPage.WebAction'
SelectEndOfDocument = ... # type: 'QWebPage.WebAction'
DeleteStartOfWord = ... # type: 'QWebPage.WebAction'
DeleteEndOfWord = ... # type: 'QWebPage.WebAction'
SetTextDirectionDefault = ... # type: 'QWebPage.WebAction'
SetTextDirectionLeftToRight = ... # type: 'QWebPage.WebAction'
SetTextDirectionRightToLeft = ... # type: 'QWebPage.WebAction'
ToggleBold = ... # type: 'QWebPage.WebAction'
ToggleItalic = ... # type: 'QWebPage.WebAction'
ToggleUnderline = ... # type: 'QWebPage.WebAction'
InspectElement = ... # type: 'QWebPage.WebAction'
InsertParagraphSeparator = ... # type: 'QWebPage.WebAction'
InsertLineSeparator = ... # type: 'QWebPage.WebAction'
SelectAll = ... # type: 'QWebPage.WebAction'
ReloadAndBypassCache = ... # type: 'QWebPage.WebAction'
PasteAndMatchStyle = ... # type: 'QWebPage.WebAction'
RemoveFormat = ... # type: 'QWebPage.WebAction'
ToggleStrikethrough = ... # type: 'QWebPage.WebAction'
ToggleSubscript = ... # type: 'QWebPage.WebAction'
ToggleSuperscript = ... # type: 'QWebPage.WebAction'
InsertUnorderedList = ... # type: 'QWebPage.WebAction'
InsertOrderedList = ... # type: 'QWebPage.WebAction'
Indent = ... # type: 'QWebPage.WebAction'
Outdent = ... # type: 'QWebPage.WebAction'
AlignCenter = ... # type: 'QWebPage.WebAction'
AlignJustified = ... # type: 'QWebPage.WebAction'
AlignLeft = ... # type: 'QWebPage.WebAction'
AlignRight = ... # type: 'QWebPage.WebAction'
StopScheduledPageRefresh = ... # type: 'QWebPage.WebAction'
CopyImageUrlToClipboard = ... # type: 'QWebPage.WebAction'
OpenLinkInThisWindow = ... # type: 'QWebPage.WebAction'
DownloadMediaToDisk = ... # type: 'QWebPage.WebAction'
CopyMediaUrlToClipboard = ... # type: 'QWebPage.WebAction'
ToggleMediaControls = ... # type: 'QWebPage.WebAction'
ToggleMediaLoop = ... # type: 'QWebPage.WebAction'
ToggleMediaPlayPause = ... # type: 'QWebPage.WebAction'
ToggleMediaMute = ... # type: 'QWebPage.WebAction'
ToggleVideoFullscreen = ... # type: 'QWebPage.WebAction'
class NavigationType(int): ...
NavigationTypeLinkClicked = ... # type: 'QWebPage.NavigationType'
NavigationTypeFormSubmitted = ... # type: 'QWebPage.NavigationType'
NavigationTypeBackOrForward = ... # type: 'QWebPage.NavigationType'
NavigationTypeReload = ... # type: 'QWebPage.NavigationType'
NavigationTypeFormResubmitted = ... # type: 'QWebPage.NavigationType'
NavigationTypeOther = ... # type: 'QWebPage.NavigationType'
class FindFlags(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, f: typing.Union['QWebPage.FindFlags', 'QWebPage.FindFlag']) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPage.FindFlags') -> None: ...
def __hash__(self) -> int: ...
def __bool__(self) -> int: ...
def __invert__(self) -> 'QWebPage.FindFlags': ...
def __index__(self) -> int: ...
def __int__(self) -> int: ...
class ExtensionOption(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPage.ExtensionOption') -> None: ...
class ExtensionReturn(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPage.ExtensionReturn') -> None: ...
class ChooseMultipleFilesExtensionOption('QWebPage.ExtensionOption'):
parentFrame = ... # type: QWebFrame
suggestedFileNames = ... # type: typing.Iterable[str]
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPage.ChooseMultipleFilesExtensionOption') -> None: ...
class ChooseMultipleFilesExtensionReturn('QWebPage.ExtensionReturn'):
fileNames = ... # type: typing.Iterable[str]
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPage.ChooseMultipleFilesExtensionReturn') -> None: ...
class ErrorPageExtensionOption('QWebPage.ExtensionOption'):
domain = ... # type: 'QWebPage.ErrorDomain'
error = ... # type: int
errorString = ... # type: str
frame = ... # type: QWebFrame
url = ... # type: QtCore.QUrl
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPage.ErrorPageExtensionOption') -> None: ...
class ErrorPageExtensionReturn('QWebPage.ExtensionReturn'):
baseUrl = ... # type: QtCore.QUrl
content = ... # type: typing.Union[QtCore.QByteArray, bytes, bytearray]
contentType = ... # type: str
encoding = ... # type: str
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QWebPage.ErrorPageExtensionReturn') -> None: ...
class ViewportAttributes(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QWebPage.ViewportAttributes') -> None: ...
def size(self) -> QtCore.QSizeF: ...
def isValid(self) -> bool: ...
def isUserScalable(self) -> bool: ...
def devicePixelRatio(self) -> float: ...
def maximumScaleFactor(self) -> float: ...
def minimumScaleFactor(self) -> float: ...
def initialScaleFactor(self) -> float: ...
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def setVisibilityState(self, a0: 'QWebPage.VisibilityState') -> None: ...
def visibilityState(self) -> 'QWebPage.VisibilityState': ...
def featurePermissionRequestCanceled(self, frame: QWebFrame, feature: 'QWebPage.Feature') -> None: ...
def featurePermissionRequested(self, frame: QWebFrame, feature: 'QWebPage.Feature') -> None: ...
def viewportChangeRequested(self) -> None: ...
def applicationCacheQuotaExceeded(self, origin: QtWebKit.QWebSecurityOrigin, defaultOriginQuota: int, totalSpaceNeeded: int) -> None: ...
def supportsContentType(self, mimeType: str) -> bool: ...
def supportedContentTypes(self) -> typing.List[str]: ...
def setFeaturePermission(self, frame: QWebFrame, feature: 'QWebPage.Feature', policy: 'QWebPage.PermissionPolicy') -> None: ...
def setActualVisibleContentRect(self, rect: QtCore.QRect) -> None: ...
def viewportAttributesForSize(self, availableSize: QtCore.QSize) -> 'QWebPage.ViewportAttributes': ...
def selectedHtml(self) -> str: ...
def hasSelection(self) -> bool: ...
def shouldInterruptJavaScript(self) -> bool: ...
def setPreferredContentsSize(self, size: QtCore.QSize) -> None: ...
def preferredContentsSize(self) -> QtCore.QSize: ...
def frameAt(self, pos: QtCore.QPoint) -> QWebFrame: ...
def restoreFrameStateRequested(self, frame: QWebFrame) -> None: ...
def saveFrameStateRequested(self, frame: QWebFrame, item: QtWebKit.QWebHistoryItem) -> None: ...
def databaseQuotaExceeded(self, frame: QWebFrame, databaseName: str) -> None: ...
def contentsChanged(self) -> None: ...
def createStandardContextMenu(self) -> QtWidgets.QMenu: ...
def isContentEditable(self) -> bool: ...
def setContentEditable(self, editable: bool) -> None: ...
def userAgentForUrl(self, url: QtCore.QUrl) -> str: ...
def javaScriptConsoleMessage(self, message: str, lineNumber: int, sourceID: str) -> None: ...
def javaScriptPrompt(self, originatingFrame: QWebFrame, msg: str, defaultValue: str) -> typing.Tuple[bool, str]: ...
def javaScriptConfirm(self, originatingFrame: QWebFrame, msg: str) -> bool: ...
def javaScriptAlert(self, originatingFrame: QWebFrame, msg: str) -> None: ...
def chooseFile(self, originatingFrame: QWebFrame, oldFile: str) -> str: ...
def acceptNavigationRequest(self, frame: QWebFrame, request: QtNetwork_.QNetworkRequest, type: 'QWebPage.NavigationType') -> bool: ...
def createPlugin(self, classid: str, url: QtCore.QUrl, paramNames: typing.Iterable[str], paramValues: typing.Iterable[str]) -> QtCore.QObject: ...
def createWindow(self, type: 'QWebPage.WebWindowType') -> 'QWebPage': ...
def microFocusChanged(self) -> None: ...
def downloadRequested(self, request: QtNetwork_.QNetworkRequest) -> None: ...
def unsupportedContent(self, reply: QtNetwork_.QNetworkReply) -> None: ...
def menuBarVisibilityChangeRequested(self, visible: bool) -> None: ...
def statusBarVisibilityChangeRequested(self, visible: bool) -> None: ...
def toolBarVisibilityChangeRequested(self, visible: bool) -> None: ...
def linkClicked(self, url: QtCore.QUrl) -> None: ...
def printRequested(self, frame: QWebFrame) -> None: ...
def windowCloseRequested(self) -> None: ...
def scrollRequested(self, dx: int, dy: int, scrollViewRect: QtCore.QRect) -> None: ...
def repaintRequested(self, dirtyRect: QtCore.QRect) -> None: ...
def geometryChangeRequested(self, geom: QtCore.QRect) -> None: ...
def frameCreated(self, frame: QWebFrame) -> None: ...
def selectionChanged(self) -> None: ...
def statusBarMessage(self, text: str) -> None: ...
def linkHovered(self, link: str, title: str, textContent: str) -> None: ...
def loadStarted(self) -> None: ...
def loadProgress(self, progress: int) -> None: ...
def loadFinished(self, ok: bool) -> None: ...
def supportsExtension(self, extension: 'QWebPage.Extension') -> bool: ...
def extension(self, extension: 'QWebPage.Extension', option: typing.Optional['QWebPage.ExtensionOption'] = ..., output: typing.Optional['QWebPage.ExtensionReturn'] = ...) -> bool: ...
def updatePositionDependentActions(self, pos: QtCore.QPoint) -> None: ...
def swallowContextMenuEvent(self, event: QtGui.QContextMenuEvent) -> bool: ...
def palette(self) -> QtGui.QPalette: ...
def setPalette(self, palette: QtGui.QPalette) -> None: ...
def linkDelegationPolicy(self) -> 'QWebPage.LinkDelegationPolicy': ...
def setLinkDelegationPolicy(self, policy: 'QWebPage.LinkDelegationPolicy') -> None: ...
def forwardUnsupportedContent(self) -> bool: ...
def setForwardUnsupportedContent(self, forward: bool) -> None: ...
def findText(self, subString: str, options: 'QWebPage.FindFlags' = ...) -> bool: ...
def inputMethodQuery(self, property: QtCore.Qt.InputMethodQuery) -> typing.Any: ...
def focusNextPrevChild(self, next: bool) -> bool: ...
def event(self, a0: QtCore.QEvent) -> bool: ...
def setViewportSize(self, size: QtCore.QSize) -> None: ...
def viewportSize(self) -> QtCore.QSize: ...
def triggerAction(self, action: 'QWebPage.WebAction', checked: bool = ...) -> None: ...
def action(self, action: 'QWebPage.WebAction') -> QtWidgets.QAction: ...
def selectedText(self) -> str: ...
def bytesReceived(self) -> int: ...
def totalBytes(self) -> int: ...
def pluginFactory(self) -> QtWebKit.QWebPluginFactory: ...
def setPluginFactory(self, factory: QtWebKit.QWebPluginFactory) -> None: ...
def networkAccessManager(self) -> QtNetwork_.QNetworkAccessManager: ...
def setNetworkAccessManager(self, manager: QtNetwork_.QNetworkAccessManager) -> None: ...
def undoStack(self) -> QtWidgets.QUndoStack: ...
def isModified(self) -> bool: ...
def view(self) -> QtWidgets.QWidget: ...
def setView(self, view: QtWidgets.QWidget) -> None: ...
def settings(self) -> QtWebKit.QWebSettings: ...
def history(self) -> QtWebKit.QWebHistory: ...
def currentFrame(self) -> QWebFrame: ...
def mainFrame(self) -> QWebFrame: ...
class QWebView(QtWidgets.QWidget):
def __init__(self, parent: typing.Optional[QtWidgets.QWidget] = ...) -> None: ...
def selectedHtml(self) -> str: ...
def hasSelection(self) -> bool: ...
def setRenderHint(self, hint: QtGui.QPainter.RenderHint, enabled: bool = ...) -> None: ...
def setRenderHints(self, hints: QtGui.QPainter.RenderHints) -> None: ...
def renderHints(self) -> QtGui.QPainter.RenderHints: ...
def setZoomFactor(self, factor: float) -> None: ...
def zoomFactor(self) -> float: ...
def focusNextPrevChild(self, next: bool) -> bool: ...
def inputMethodEvent(self, a0: QtGui.QInputMethodEvent) -> None: ...
def focusOutEvent(self, a0: QtGui.QFocusEvent) -> None: ...
def focusInEvent(self, a0: QtGui.QFocusEvent) -> None: ...
def dropEvent(self, a0: QtGui.QDropEvent) -> None: ...
def dragMoveEvent(self, a0: QtGui.QDragMoveEvent) -> None: ...
def dragLeaveEvent(self, a0: QtGui.QDragLeaveEvent) -> None: ...
def dragEnterEvent(self, a0: QtGui.QDragEnterEvent) -> None: ...
def keyReleaseEvent(self, a0: QtGui.QKeyEvent) -> None: ...
def keyPressEvent(self, a0: QtGui.QKeyEvent) -> None: ...
def wheelEvent(self, a0: QtGui.QWheelEvent) -> None: ...
def contextMenuEvent(self, a0: QtGui.QContextMenuEvent) -> None: ...
def mouseReleaseEvent(self, a0: QtGui.QMouseEvent) -> None: ...
def mouseDoubleClickEvent(self, a0: QtGui.QMouseEvent) -> None: ...
def mousePressEvent(self, a0: QtGui.QMouseEvent) -> None: ...
def mouseMoveEvent(self, a0: QtGui.QMouseEvent) -> None: ...
def changeEvent(self, a0: QtCore.QEvent) -> None: ...
def paintEvent(self, ev: QtGui.QPaintEvent) -> None: ...
def resizeEvent(self, e: QtGui.QResizeEvent) -> None: ...
def createWindow(self, type: QWebPage.WebWindowType) -> 'QWebView': ...
def urlChanged(self, url: QtCore.QUrl) -> None: ...
def iconChanged(self) -> None: ...
def selectionChanged(self) -> None: ...
def linkClicked(self, url: QtCore.QUrl) -> None: ...
def statusBarMessage(self, text: str) -> None: ...
def titleChanged(self, title: str) -> None: ...
def loadFinished(self, a0: bool) -> None: ...
def loadProgress(self, progress: int) -> None: ...
def loadStarted(self) -> None: ...
def print(self, printer: QtPrintSupport.QPrinter) -> None: ...
def print_(self, printer: QtPrintSupport.QPrinter) -> None: ...
def reload(self) -> None: ...
def forward(self) -> None: ...
def back(self) -> None: ...
def stop(self) -> None: ...
def event(self, a0: QtCore.QEvent) -> bool: ...
def findText(self, subString: str, options: QWebPage.FindFlags = ...) -> bool: ...
def sizeHint(self) -> QtCore.QSize: ...
def inputMethodQuery(self, property: QtCore.Qt.InputMethodQuery) -> typing.Any: ...
def isModified(self) -> bool: ...
def triggerPageAction(self, action: QWebPage.WebAction, checked: bool = ...) -> None: ...
def pageAction(self, action: QWebPage.WebAction) -> QtWidgets.QAction: ...
def selectedText(self) -> str: ...
def icon(self) -> QtGui.QIcon: ...
def url(self) -> QtCore.QUrl: ...
def setUrl(self, url: QtCore.QUrl) -> None: ...
def title(self) -> str: ...
def settings(self) -> QtWebKit.QWebSettings: ...
def history(self) -> QtWebKit.QWebHistory: ...
def setContent(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray], mimeType: str = ..., baseUrl: QtCore.QUrl = ...) -> None: ...
def setHtml(self, html: str, baseUrl: QtCore.QUrl = ...) -> None: ...
@typing.overload
def load(self, url: QtCore.QUrl) -> None: ...
@typing.overload
def load(self, request: QtNetwork_.QNetworkRequest, operation: QtNetwork_.QNetworkAccessManager.Operation = ..., body: typing.Union[QtCore.QByteArray, bytes, bytearray] = ...) -> None: ...
def setPage(self, page: QWebPage) -> None: ...
def page(self) -> QWebPage: ...

View File

@ -0,0 +1,207 @@
# The PEP 484 type hints stub file for the QtWebSockets module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtNetwork
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QMaskGenerator(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def nextMask(self) -> int: ...
def seed(self) -> bool: ...
class QWebSocket(QtCore.QObject):
def __init__(self, origin: str = ..., version: 'QWebSocketProtocol.Version' = ..., parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
@staticmethod
def maxOutgoingFrameSize() -> int: ...
def outgoingFrameSize(self) -> int: ...
def setOutgoingFrameSize(self, outgoingFrameSize: int) -> None: ...
@staticmethod
def maxIncomingFrameSize() -> int: ...
@staticmethod
def maxIncomingMessageSize() -> int: ...
def maxAllowedIncomingMessageSize(self) -> int: ...
def setMaxAllowedIncomingMessageSize(self, maxAllowedIncomingMessageSize: int) -> None: ...
def maxAllowedIncomingFrameSize(self) -> int: ...
def setMaxAllowedIncomingFrameSize(self, maxAllowedIncomingFrameSize: int) -> None: ...
def bytesToWrite(self) -> int: ...
def preSharedKeyAuthenticationRequired(self, authenticator: QtNetwork.QSslPreSharedKeyAuthenticator) -> None: ...
def sslErrors(self, errors: typing.Iterable[QtNetwork.QSslError]) -> None: ...
def bytesWritten(self, bytes: int) -> None: ...
def pong(self, elapsedTime: int, payload: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def binaryMessageReceived(self, message: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
def textMessageReceived(self, message: str) -> None: ...
def binaryFrameReceived(self, frame: typing.Union[QtCore.QByteArray, bytes, bytearray], isLastFrame: bool) -> None: ...
def textFrameReceived(self, frame: str, isLastFrame: bool) -> None: ...
def readChannelFinished(self) -> None: ...
def proxyAuthenticationRequired(self, proxy: QtNetwork.QNetworkProxy, pAuthenticator: QtNetwork.QAuthenticator) -> None: ...
def stateChanged(self, state: QtNetwork.QAbstractSocket.SocketState) -> None: ...
def disconnected(self) -> None: ...
def connected(self) -> None: ...
def aboutToClose(self) -> None: ...
def ping(self, payload: typing.Union[QtCore.QByteArray, bytes, bytearray] = ...) -> None: ...
@typing.overload
def open(self, url: QtCore.QUrl) -> None: ...
@typing.overload
def open(self, request: QtNetwork.QNetworkRequest) -> None: ...
def close(self, closeCode: 'QWebSocketProtocol.CloseCode' = ..., reason: str = ...) -> None: ...
def request(self) -> QtNetwork.QNetworkRequest: ...
def sslConfiguration(self) -> QtNetwork.QSslConfiguration: ...
def setSslConfiguration(self, sslConfiguration: QtNetwork.QSslConfiguration) -> None: ...
@typing.overload
def ignoreSslErrors(self, errors: typing.Iterable[QtNetwork.QSslError]) -> None: ...
@typing.overload
def ignoreSslErrors(self) -> None: ...
def sendBinaryMessage(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> int: ...
def sendTextMessage(self, message: str) -> int: ...
def closeReason(self) -> str: ...
def closeCode(self) -> 'QWebSocketProtocol.CloseCode': ...
def origin(self) -> str: ...
def requestUrl(self) -> QtCore.QUrl: ...
def resourceName(self) -> str: ...
def version(self) -> 'QWebSocketProtocol.Version': ...
def state(self) -> QtNetwork.QAbstractSocket.SocketState: ...
def setPauseMode(self, pauseMode: typing.Union[QtNetwork.QAbstractSocket.PauseModes, QtNetwork.QAbstractSocket.PauseMode]) -> None: ...
def resume(self) -> None: ...
def setReadBufferSize(self, size: int) -> None: ...
def readBufferSize(self) -> int: ...
def maskGenerator(self) -> QMaskGenerator: ...
def setMaskGenerator(self, maskGenerator: QMaskGenerator) -> None: ...
def setProxy(self, networkProxy: QtNetwork.QNetworkProxy) -> None: ...
def proxy(self) -> QtNetwork.QNetworkProxy: ...
def peerPort(self) -> int: ...
def peerName(self) -> str: ...
def peerAddress(self) -> QtNetwork.QHostAddress: ...
def pauseMode(self) -> QtNetwork.QAbstractSocket.PauseModes: ...
def localPort(self) -> int: ...
def localAddress(self) -> QtNetwork.QHostAddress: ...
def isValid(self) -> bool: ...
def flush(self) -> bool: ...
def errorString(self) -> str: ...
@typing.overload
def error(self) -> QtNetwork.QAbstractSocket.SocketError: ...
@typing.overload
def error(self, error: QtNetwork.QAbstractSocket.SocketError) -> None: ...
def abort(self) -> None: ...
class QWebSocketCorsAuthenticator(sip.simplewrapper):
@typing.overload
def __init__(self, origin: str) -> None: ...
@typing.overload
def __init__(self, other: 'QWebSocketCorsAuthenticator') -> None: ...
def allowed(self) -> bool: ...
def setAllowed(self, allowed: bool) -> None: ...
def origin(self) -> str: ...
def swap(self, other: 'QWebSocketCorsAuthenticator') -> None: ...
class QWebSocketProtocol(sip.simplewrapper):
class CloseCode(int): ...
CloseCodeNormal = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeGoingAway = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeProtocolError = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeDatatypeNotSupported = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeReserved1004 = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeMissingStatusCode = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeAbnormalDisconnection = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeWrongDatatype = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodePolicyViolated = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeTooMuchData = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeMissingExtension = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeBadOperation = ... # type: 'QWebSocketProtocol.CloseCode'
CloseCodeTlsHandshakeFailed = ... # type: 'QWebSocketProtocol.CloseCode'
class Version(int): ...
VersionUnknown = ... # type: 'QWebSocketProtocol.Version'
Version0 = ... # type: 'QWebSocketProtocol.Version'
Version4 = ... # type: 'QWebSocketProtocol.Version'
Version5 = ... # type: 'QWebSocketProtocol.Version'
Version6 = ... # type: 'QWebSocketProtocol.Version'
Version7 = ... # type: 'QWebSocketProtocol.Version'
Version8 = ... # type: 'QWebSocketProtocol.Version'
Version13 = ... # type: 'QWebSocketProtocol.Version'
VersionLatest = ... # type: 'QWebSocketProtocol.Version'
class QWebSocketServer(QtCore.QObject):
class SslMode(int): ...
SecureMode = ... # type: 'QWebSocketServer.SslMode'
NonSecureMode = ... # type: 'QWebSocketServer.SslMode'
def __init__(self, serverName: str, secureMode: 'QWebSocketServer.SslMode', parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def handshakeTimeoutMS(self) -> int: ...
def setHandshakeTimeout(self, msec: int) -> None: ...
def nativeDescriptor(self) -> sip.voidptr: ...
def setNativeDescriptor(self, descriptor: sip.voidptr) -> bool: ...
def preSharedKeyAuthenticationRequired(self, authenticator: QtNetwork.QSslPreSharedKeyAuthenticator) -> None: ...
def closed(self) -> None: ...
def sslErrors(self, errors: typing.Iterable[QtNetwork.QSslError]) -> None: ...
def peerVerifyError(self, error: QtNetwork.QSslError) -> None: ...
def newConnection(self) -> None: ...
def originAuthenticationRequired(self, pAuthenticator: QWebSocketCorsAuthenticator) -> None: ...
def serverError(self, closeCode: QWebSocketProtocol.CloseCode) -> None: ...
def acceptError(self, socketError: QtNetwork.QAbstractSocket.SocketError) -> None: ...
def handleConnection(self, socket: QtNetwork.QTcpSocket) -> None: ...
def serverUrl(self) -> QtCore.QUrl: ...
def supportedVersions(self) -> typing.List[QWebSocketProtocol.Version]: ...
def sslConfiguration(self) -> QtNetwork.QSslConfiguration: ...
def setSslConfiguration(self, sslConfiguration: QtNetwork.QSslConfiguration) -> None: ...
def proxy(self) -> QtNetwork.QNetworkProxy: ...
def setProxy(self, networkProxy: QtNetwork.QNetworkProxy) -> None: ...
def serverName(self) -> str: ...
def setServerName(self, serverName: str) -> None: ...
def resumeAccepting(self) -> None: ...
def pauseAccepting(self) -> None: ...
def errorString(self) -> str: ...
def error(self) -> QWebSocketProtocol.CloseCode: ...
def nextPendingConnection(self) -> QWebSocket: ...
def hasPendingConnections(self) -> bool: ...
def socketDescriptor(self) -> int: ...
def setSocketDescriptor(self, socketDescriptor: int) -> bool: ...
def secureMode(self) -> 'QWebSocketServer.SslMode': ...
def serverAddress(self) -> QtNetwork.QHostAddress: ...
def serverPort(self) -> int: ...
def maxPendingConnections(self) -> int: ...
def setMaxPendingConnections(self, numConnections: int) -> None: ...
def isListening(self) -> bool: ...
def close(self) -> None: ...
def listen(self, address: typing.Union[QtNetwork.QHostAddress, QtNetwork.QHostAddress.SpecialAddress] = ..., port: int = ...) -> bool: ...

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,72 @@
# The PEP 484 type hints stub file for the QtX11Extras module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class Display(sip.simplewrapper): ...
class xcb_connection_t(sip.simplewrapper): ...
class QX11Info(sip.simplewrapper):
def __init__(self, a0: 'QX11Info') -> None: ...
@staticmethod
def connection() -> xcb_connection_t: ...
@staticmethod
def display() -> Display: ...
@staticmethod
def setNextStartupId(id: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
@staticmethod
def nextStartupId() -> QtCore.QByteArray: ...
@staticmethod
def getTimestamp() -> int: ...
@staticmethod
def setAppUserTime(time: int) -> None: ...
@staticmethod
def setAppTime(time: int) -> None: ...
@staticmethod
def appUserTime() -> int: ...
@staticmethod
def appTime() -> int: ...
@staticmethod
def appScreen() -> int: ...
@staticmethod
def appRootWindow(screen: int = ...) -> int: ...
@staticmethod
def appDpiY(screen: int = ...) -> int: ...
@staticmethod
def appDpiX(screen: int = ...) -> int: ...
@staticmethod
def isPlatformX11() -> bool: ...

View File

@ -0,0 +1,700 @@
# The PEP 484 type hints stub file for the QtXml module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QDomImplementation(sip.simplewrapper):
class InvalidDataPolicy(int): ...
AcceptInvalidChars = ... # type: 'QDomImplementation.InvalidDataPolicy'
DropInvalidChars = ... # type: 'QDomImplementation.InvalidDataPolicy'
ReturnNullNode = ... # type: 'QDomImplementation.InvalidDataPolicy'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDomImplementation') -> None: ...
def isNull(self) -> bool: ...
@staticmethod
def setInvalidDataPolicy(policy: 'QDomImplementation.InvalidDataPolicy') -> None: ...
@staticmethod
def invalidDataPolicy() -> 'QDomImplementation.InvalidDataPolicy': ...
def createDocument(self, nsURI: str, qName: str, doctype: 'QDomDocumentType') -> 'QDomDocument': ...
def createDocumentType(self, qName: str, publicId: str, systemId: str) -> 'QDomDocumentType': ...
def hasFeature(self, feature: str, version: str) -> bool: ...
class QDomNode(sip.simplewrapper):
class EncodingPolicy(int): ...
EncodingFromDocument = ... # type: 'QDomNode.EncodingPolicy'
EncodingFromTextStream = ... # type: 'QDomNode.EncodingPolicy'
class NodeType(int): ...
ElementNode = ... # type: 'QDomNode.NodeType'
AttributeNode = ... # type: 'QDomNode.NodeType'
TextNode = ... # type: 'QDomNode.NodeType'
CDATASectionNode = ... # type: 'QDomNode.NodeType'
EntityReferenceNode = ... # type: 'QDomNode.NodeType'
EntityNode = ... # type: 'QDomNode.NodeType'
ProcessingInstructionNode = ... # type: 'QDomNode.NodeType'
CommentNode = ... # type: 'QDomNode.NodeType'
DocumentNode = ... # type: 'QDomNode.NodeType'
DocumentTypeNode = ... # type: 'QDomNode.NodeType'
DocumentFragmentNode = ... # type: 'QDomNode.NodeType'
NotationNode = ... # type: 'QDomNode.NodeType'
BaseNode = ... # type: 'QDomNode.NodeType'
CharacterDataNode = ... # type: 'QDomNode.NodeType'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDomNode') -> None: ...
def columnNumber(self) -> int: ...
def lineNumber(self) -> int: ...
def nextSiblingElement(self, taName: str = ...) -> 'QDomElement': ...
def previousSiblingElement(self, tagName: str = ...) -> 'QDomElement': ...
def lastChildElement(self, tagName: str = ...) -> 'QDomElement': ...
def firstChildElement(self, tagName: str = ...) -> 'QDomElement': ...
def save(self, a0: QtCore.QTextStream, a1: int, a2: 'QDomNode.EncodingPolicy' = ...) -> None: ...
def toComment(self) -> 'QDomComment': ...
def toCharacterData(self) -> 'QDomCharacterData': ...
def toProcessingInstruction(self) -> 'QDomProcessingInstruction': ...
def toNotation(self) -> 'QDomNotation': ...
def toEntity(self) -> 'QDomEntity': ...
def toText(self) -> 'QDomText': ...
def toEntityReference(self) -> 'QDomEntityReference': ...
def toElement(self) -> 'QDomElement': ...
def toDocumentType(self) -> 'QDomDocumentType': ...
def toDocument(self) -> 'QDomDocument': ...
def toDocumentFragment(self) -> 'QDomDocumentFragment': ...
def toCDATASection(self) -> 'QDomCDATASection': ...
def toAttr(self) -> 'QDomAttr': ...
def clear(self) -> None: ...
def isNull(self) -> bool: ...
def namedItem(self, name: str) -> 'QDomNode': ...
def isComment(self) -> bool: ...
def isCharacterData(self) -> bool: ...
def isProcessingInstruction(self) -> bool: ...
def isNotation(self) -> bool: ...
def isEntity(self) -> bool: ...
def isText(self) -> bool: ...
def isEntityReference(self) -> bool: ...
def isElement(self) -> bool: ...
def isDocumentType(self) -> bool: ...
def isDocument(self) -> bool: ...
def isDocumentFragment(self) -> bool: ...
def isCDATASection(self) -> bool: ...
def isAttr(self) -> bool: ...
def setPrefix(self, pre: str) -> None: ...
def prefix(self) -> str: ...
def setNodeValue(self, a0: str) -> None: ...
def nodeValue(self) -> str: ...
def hasAttributes(self) -> bool: ...
def localName(self) -> str: ...
def namespaceURI(self) -> str: ...
def ownerDocument(self) -> 'QDomDocument': ...
def attributes(self) -> 'QDomNamedNodeMap': ...
def nextSibling(self) -> 'QDomNode': ...
def previousSibling(self) -> 'QDomNode': ...
def lastChild(self) -> 'QDomNode': ...
def firstChild(self) -> 'QDomNode': ...
def childNodes(self) -> 'QDomNodeList': ...
def parentNode(self) -> 'QDomNode': ...
def nodeType(self) -> 'QDomNode.NodeType': ...
def nodeName(self) -> str: ...
def isSupported(self, feature: str, version: str) -> bool: ...
def normalize(self) -> None: ...
def cloneNode(self, deep: bool = ...) -> 'QDomNode': ...
def hasChildNodes(self) -> bool: ...
def appendChild(self, newChild: 'QDomNode') -> 'QDomNode': ...
def removeChild(self, oldChild: 'QDomNode') -> 'QDomNode': ...
def replaceChild(self, newChild: 'QDomNode', oldChild: 'QDomNode') -> 'QDomNode': ...
def insertAfter(self, newChild: 'QDomNode', refChild: 'QDomNode') -> 'QDomNode': ...
def insertBefore(self, newChild: 'QDomNode', refChild: 'QDomNode') -> 'QDomNode': ...
class QDomNodeList(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDomNodeList') -> None: ...
def isEmpty(self) -> bool: ...
def size(self) -> int: ...
def __len__(self) -> int: ...
def count(self) -> int: ...
def length(self) -> int: ...
def at(self, index: int) -> QDomNode: ...
def item(self, index: int) -> QDomNode: ...
class QDomDocumentType(QDomNode):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomDocumentType') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
def internalSubset(self) -> str: ...
def systemId(self) -> str: ...
def publicId(self) -> str: ...
def notations(self) -> 'QDomNamedNodeMap': ...
def entities(self) -> 'QDomNamedNodeMap': ...
def name(self) -> str: ...
class QDomDocument(QDomNode):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, name: str) -> None: ...
@typing.overload
def __init__(self, doctype: QDomDocumentType) -> None: ...
@typing.overload
def __init__(self, x: 'QDomDocument') -> None: ...
def toByteArray(self, indent: int = ...) -> QtCore.QByteArray: ...
def toString(self, indent: int = ...) -> str: ...
@typing.overload
def setContent(self, text: typing.Union[QtCore.QByteArray, bytes, bytearray], namespaceProcessing: bool) -> typing.Tuple[bool, str, int, int]: ...
@typing.overload
def setContent(self, text: str, namespaceProcessing: bool) -> typing.Tuple[bool, str, int, int]: ...
@typing.overload
def setContent(self, dev: QtCore.QIODevice, namespaceProcessing: bool) -> typing.Tuple[bool, str, int, int]: ...
@typing.overload
def setContent(self, source: 'QXmlInputSource', namespaceProcessing: bool) -> typing.Tuple[bool, str, int, int]: ...
@typing.overload
def setContent(self, text: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> typing.Tuple[bool, str, int, int]: ...
@typing.overload
def setContent(self, text: str) -> typing.Tuple[bool, str, int, int]: ...
@typing.overload
def setContent(self, dev: QtCore.QIODevice) -> typing.Tuple[bool, str, int, int]: ...
@typing.overload
def setContent(self, source: 'QXmlInputSource', reader: 'QXmlReader') -> typing.Tuple[bool, str, int, int]: ...
@typing.overload
def setContent(self, reader: QtCore.QXmlStreamReader, namespaceProcessing: bool) -> typing.Tuple[bool, str, int, int]: ...
def nodeType(self) -> QDomNode.NodeType: ...
def documentElement(self) -> 'QDomElement': ...
def implementation(self) -> QDomImplementation: ...
def doctype(self) -> QDomDocumentType: ...
def elementById(self, elementId: str) -> 'QDomElement': ...
def elementsByTagNameNS(self, nsURI: str, localName: str) -> QDomNodeList: ...
def createAttributeNS(self, nsURI: str, qName: str) -> 'QDomAttr': ...
def createElementNS(self, nsURI: str, qName: str) -> 'QDomElement': ...
def importNode(self, importedNode: QDomNode, deep: bool) -> QDomNode: ...
def elementsByTagName(self, tagname: str) -> QDomNodeList: ...
def createEntityReference(self, name: str) -> 'QDomEntityReference': ...
def createAttribute(self, name: str) -> 'QDomAttr': ...
def createProcessingInstruction(self, target: str, data: str) -> 'QDomProcessingInstruction': ...
def createCDATASection(self, data: str) -> 'QDomCDATASection': ...
def createComment(self, data: str) -> 'QDomComment': ...
def createTextNode(self, data: str) -> 'QDomText': ...
def createDocumentFragment(self) -> 'QDomDocumentFragment': ...
def createElement(self, tagName: str) -> 'QDomElement': ...
class QDomNamedNodeMap(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QDomNamedNodeMap') -> None: ...
def contains(self, name: str) -> bool: ...
def isEmpty(self) -> bool: ...
def size(self) -> int: ...
def __len__(self) -> int: ...
def count(self) -> int: ...
def length(self) -> int: ...
def removeNamedItemNS(self, nsURI: str, localName: str) -> QDomNode: ...
def setNamedItemNS(self, newNode: QDomNode) -> QDomNode: ...
def namedItemNS(self, nsURI: str, localName: str) -> QDomNode: ...
def item(self, index: int) -> QDomNode: ...
def removeNamedItem(self, name: str) -> QDomNode: ...
def setNamedItem(self, newNode: QDomNode) -> QDomNode: ...
def namedItem(self, name: str) -> QDomNode: ...
class QDomDocumentFragment(QDomNode):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomDocumentFragment') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
class QDomCharacterData(QDomNode):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomCharacterData') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
def setData(self, a0: str) -> None: ...
def data(self) -> str: ...
def length(self) -> int: ...
def replaceData(self, offset: int, count: int, arg: str) -> None: ...
def deleteData(self, offset: int, count: int) -> None: ...
def insertData(self, offset: int, arg: str) -> None: ...
def appendData(self, arg: str) -> None: ...
def substringData(self, offset: int, count: int) -> str: ...
class QDomAttr(QDomNode):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomAttr') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
def setValue(self, a0: str) -> None: ...
def value(self) -> str: ...
def ownerElement(self) -> 'QDomElement': ...
def specified(self) -> bool: ...
def name(self) -> str: ...
class QDomElement(QDomNode):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomElement') -> None: ...
def text(self) -> str: ...
def nodeType(self) -> QDomNode.NodeType: ...
def attributes(self) -> QDomNamedNodeMap: ...
def setTagName(self, name: str) -> None: ...
def tagName(self) -> str: ...
def hasAttributeNS(self, nsURI: str, localName: str) -> bool: ...
def elementsByTagNameNS(self, nsURI: str, localName: str) -> QDomNodeList: ...
def setAttributeNodeNS(self, newAttr: QDomAttr) -> QDomAttr: ...
def attributeNodeNS(self, nsURI: str, localName: str) -> QDomAttr: ...
def removeAttributeNS(self, nsURI: str, localName: str) -> None: ...
@typing.overload
def setAttributeNS(self, nsURI: str, qName: str, value: str) -> None: ...
@typing.overload
# def setAttributeNS(self, nsURI: str, qName: str, value: int) -> None: ...
# @typing.overload
# def setAttributeNS(self, nsURI: str, qName: str, value: int) -> None: ...
# @typing.overload
def setAttributeNS(self, nsURI: str, qName: str, value: float) -> None: ...
# @typing.overload
# def setAttributeNS(self, nsURI: str, qName: str, value: int) -> None: ...
def attributeNS(self, nsURI: str, localName: str, defaultValue: str = ...) -> str: ...
def hasAttribute(self, name: str) -> bool: ...
def elementsByTagName(self, tagname: str) -> QDomNodeList: ...
def removeAttributeNode(self, oldAttr: QDomAttr) -> QDomAttr: ...
def setAttributeNode(self, newAttr: QDomAttr) -> QDomAttr: ...
def attributeNode(self, name: str) -> QDomAttr: ...
def removeAttribute(self, name: str) -> None: ...
@typing.overload
def setAttribute(self, name: str, value: str) -> None: ...
@typing.overload
# def setAttribute(self, name: str, value: int) -> None: ...
# @typing.overload
# def setAttribute(self, name: str, value: int) -> None: ...
# @typing.overload
def setAttribute(self, name: str, value: float) -> None: ...
# @typing.overload
# def setAttribute(self, name: str, value: int) -> None: ...
def attribute(self, name: str, defaultValue: str = ...) -> str: ...
class QDomText(QDomCharacterData):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomText') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
def splitText(self, offset: int) -> 'QDomText': ...
class QDomComment(QDomCharacterData):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomComment') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
class QDomCDATASection(QDomText):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomCDATASection') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
class QDomNotation(QDomNode):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomNotation') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
def systemId(self) -> str: ...
def publicId(self) -> str: ...
class QDomEntity(QDomNode):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomEntity') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
def notationName(self) -> str: ...
def systemId(self) -> str: ...
def publicId(self) -> str: ...
class QDomEntityReference(QDomNode):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomEntityReference') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
class QDomProcessingInstruction(QDomNode):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, x: 'QDomProcessingInstruction') -> None: ...
def nodeType(self) -> QDomNode.NodeType: ...
def setData(self, d: str) -> None: ...
def data(self) -> str: ...
def target(self) -> str: ...
class QXmlNamespaceSupport(sip.simplewrapper):
def __init__(self) -> None: ...
def reset(self) -> None: ...
def popContext(self) -> None: ...
def pushContext(self) -> None: ...
@typing.overload
def prefixes(self) -> typing.List[str]: ...
@typing.overload
def prefixes(self, a0: str) -> typing.List[str]: ...
def processName(self, a0: str, a1: bool, a2: str, a3: str) -> None: ...
def splitName(self, a0: str, a1: str, a2: str) -> None: ...
def uri(self, a0: str) -> str: ...
def prefix(self, a0: str) -> str: ...
def setPrefix(self, a0: str, a1: str) -> None: ...
class QXmlAttributes(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QXmlAttributes') -> None: ...
def swap(self, other: 'QXmlAttributes') -> None: ...
def __len__(self) -> int: ...
def count(self) -> int: ...
def append(self, qName: str, uri: str, localPart: str, value: str) -> None: ...
def clear(self) -> None: ...
@typing.overload
def value(self, index: int) -> str: ...
@typing.overload
def value(self, qName: str) -> str: ...
@typing.overload
def value(self, uri: str, localName: str) -> str: ...
@typing.overload
def type(self, index: int) -> str: ...
@typing.overload
def type(self, qName: str) -> str: ...
@typing.overload
def type(self, uri: str, localName: str) -> str: ...
def uri(self, index: int) -> str: ...
def qName(self, index: int) -> str: ...
def localName(self, index: int) -> str: ...
def length(self) -> int: ...
@typing.overload
def index(self, qName: str) -> int: ...
@typing.overload
def index(self, uri: str, localPart: str) -> int: ...
class QXmlInputSource(sip.simplewrapper):
EndOfData = ... # type: int
EndOfDocument = ... # type: int
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, dev: QtCore.QIODevice) -> None: ...
@typing.overload
def __init__(self, a0: 'QXmlInputSource') -> None: ...
def fromRawData(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray], beginning: bool = ...) -> str: ...
def reset(self) -> None: ...
def next(self) -> str: ...
def data(self) -> str: ...
def fetchData(self) -> None: ...
@typing.overload
def setData(self, dat: str) -> None: ...
@typing.overload
def setData(self, dat: typing.Union[QtCore.QByteArray, bytes, bytearray]) -> None: ...
class QXmlParseException(sip.simplewrapper):
@typing.overload
def __init__(self, name: str = ..., column: int = ..., line: int = ..., publicId: str = ..., systemId: str = ...) -> None: ...
@typing.overload
def __init__(self, other: 'QXmlParseException') -> None: ...
def message(self) -> str: ...
def systemId(self) -> str: ...
def publicId(self) -> str: ...
def lineNumber(self) -> int: ...
def columnNumber(self) -> int: ...
class QXmlReader(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QXmlReader') -> None: ...
# @typing.overload
# def parse(self, input: QXmlInputSource) -> bool: ...
# @typing.overload
def parse(self, input: QXmlInputSource) -> bool: ...
def declHandler(self) -> 'QXmlDeclHandler': ...
def setDeclHandler(self, handler: 'QXmlDeclHandler') -> None: ...
def lexicalHandler(self) -> 'QXmlLexicalHandler': ...
def setLexicalHandler(self, handler: 'QXmlLexicalHandler') -> None: ...
def errorHandler(self) -> 'QXmlErrorHandler': ...
def setErrorHandler(self, handler: 'QXmlErrorHandler') -> None: ...
def contentHandler(self) -> 'QXmlContentHandler': ...
def setContentHandler(self, handler: 'QXmlContentHandler') -> None: ...
def DTDHandler(self) -> 'QXmlDTDHandler': ...
def setDTDHandler(self, handler: 'QXmlDTDHandler') -> None: ...
def entityResolver(self) -> 'QXmlEntityResolver': ...
def setEntityResolver(self, handler: 'QXmlEntityResolver') -> None: ...
def hasProperty(self, name: str) -> bool: ...
def setProperty(self, name: str, value: sip.voidptr) -> None: ...
def property(self, name: str) -> typing.Tuple[sip.voidptr, bool]: ...
def hasFeature(self, name: str) -> bool: ...
def setFeature(self, name: str, value: bool) -> None: ...
def feature(self, name: str) -> typing.Tuple[bool, bool]: ...
class QXmlSimpleReader(QXmlReader):
def __init__(self) -> None: ...
def parseContinue(self) -> bool: ...
@typing.overload
def parse(self, input: QXmlInputSource) -> bool: ...
@typing.overload
def parse(self, input: QXmlInputSource, incremental: bool) -> bool: ...
def declHandler(self) -> 'QXmlDeclHandler': ...
def setDeclHandler(self, handler: 'QXmlDeclHandler') -> None: ...
def lexicalHandler(self) -> 'QXmlLexicalHandler': ...
def setLexicalHandler(self, handler: 'QXmlLexicalHandler') -> None: ...
def errorHandler(self) -> 'QXmlErrorHandler': ...
def setErrorHandler(self, handler: 'QXmlErrorHandler') -> None: ...
def contentHandler(self) -> 'QXmlContentHandler': ...
def setContentHandler(self, handler: 'QXmlContentHandler') -> None: ...
def DTDHandler(self) -> 'QXmlDTDHandler': ...
def setDTDHandler(self, handler: 'QXmlDTDHandler') -> None: ...
def entityResolver(self) -> 'QXmlEntityResolver': ...
def setEntityResolver(self, handler: 'QXmlEntityResolver') -> None: ...
def hasProperty(self, name: str) -> bool: ...
def setProperty(self, name: str, value: sip.voidptr) -> None: ...
def property(self, name: str) -> typing.Tuple[sip.voidptr, bool]: ...
def hasFeature(self, name: str) -> bool: ...
def setFeature(self, name: str, value: bool) -> None: ...
def feature(self, name: str) -> typing.Tuple[bool, bool]: ...
class QXmlLocator(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QXmlLocator') -> None: ...
def lineNumber(self) -> int: ...
def columnNumber(self) -> int: ...
class QXmlContentHandler(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QXmlContentHandler') -> None: ...
def errorString(self) -> str: ...
def skippedEntity(self, name: str) -> bool: ...
def processingInstruction(self, target: str, data: str) -> bool: ...
def ignorableWhitespace(self, ch: str) -> bool: ...
def characters(self, ch: str) -> bool: ...
def endElement(self, namespaceURI: str, localName: str, qName: str) -> bool: ...
def startElement(self, namespaceURI: str, localName: str, qName: str, atts: QXmlAttributes) -> bool: ...
def endPrefixMapping(self, prefix: str) -> bool: ...
def startPrefixMapping(self, prefix: str, uri: str) -> bool: ...
def endDocument(self) -> bool: ...
def startDocument(self) -> bool: ...
def setDocumentLocator(self, locator: QXmlLocator) -> None: ...
class QXmlErrorHandler(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QXmlErrorHandler') -> None: ...
def errorString(self) -> str: ...
def fatalError(self, exception: QXmlParseException) -> bool: ...
def error(self, exception: QXmlParseException) -> bool: ...
def warning(self, exception: QXmlParseException) -> bool: ...
class QXmlDTDHandler(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QXmlDTDHandler') -> None: ...
def errorString(self) -> str: ...
def unparsedEntityDecl(self, name: str, publicId: str, systemId: str, notationName: str) -> bool: ...
def notationDecl(self, name: str, publicId: str, systemId: str) -> bool: ...
class QXmlEntityResolver(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QXmlEntityResolver') -> None: ...
def errorString(self) -> str: ...
def resolveEntity(self, publicId: str, systemId: str) -> typing.Tuple[bool, QXmlInputSource]: ...
class QXmlLexicalHandler(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QXmlLexicalHandler') -> None: ...
def errorString(self) -> str: ...
def comment(self, ch: str) -> bool: ...
def endCDATA(self) -> bool: ...
def startCDATA(self) -> bool: ...
def endEntity(self, name: str) -> bool: ...
def startEntity(self, name: str) -> bool: ...
def endDTD(self) -> bool: ...
def startDTD(self, name: str, publicId: str, systemId: str) -> bool: ...
class QXmlDeclHandler(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, a0: 'QXmlDeclHandler') -> None: ...
def errorString(self) -> str: ...
def externalEntityDecl(self, name: str, publicId: str, systemId: str) -> bool: ...
def internalEntityDecl(self, name: str, value: str) -> bool: ...
def attributeDecl(self, eName: str, aName: str, type: str, valueDefault: str, value: str) -> bool: ...
class QXmlDefaultHandler(QXmlContentHandler, QXmlErrorHandler, QXmlDTDHandler, QXmlEntityResolver, QXmlLexicalHandler, QXmlDeclHandler):
def __init__(self) -> None: ...
def errorString(self) -> str: ...
def externalEntityDecl(self, name: str, publicId: str, systemId: str) -> bool: ...
def internalEntityDecl(self, name: str, value: str) -> bool: ...
def attributeDecl(self, eName: str, aName: str, type: str, valueDefault: str, value: str) -> bool: ...
def comment(self, ch: str) -> bool: ...
def endCDATA(self) -> bool: ...
def startCDATA(self) -> bool: ...
def endEntity(self, name: str) -> bool: ...
def startEntity(self, name: str) -> bool: ...
def endDTD(self) -> bool: ...
def startDTD(self, name: str, publicId: str, systemId: str) -> bool: ...
def resolveEntity(self, publicId: str, systemId: str) -> typing.Tuple[bool, QXmlInputSource]: ...
def unparsedEntityDecl(self, name: str, publicId: str, systemId: str, notationName: str) -> bool: ...
def notationDecl(self, name: str, publicId: str, systemId: str) -> bool: ...
def fatalError(self, exception: QXmlParseException) -> bool: ...
def error(self, exception: QXmlParseException) -> bool: ...
def warning(self, exception: QXmlParseException) -> bool: ...
def skippedEntity(self, name: str) -> bool: ...
def processingInstruction(self, target: str, data: str) -> bool: ...
def ignorableWhitespace(self, ch: str) -> bool: ...
def characters(self, ch: str) -> bool: ...
def endElement(self, namespaceURI: str, localName: str, qName: str) -> bool: ...
def startElement(self, namespaceURI: str, localName: str, qName: str, atts: QXmlAttributes) -> bool: ...
def endPrefixMapping(self, prefix: str) -> bool: ...
def startPrefixMapping(self, prefix: str, uri: str) -> bool: ...
def endDocument(self) -> bool: ...
def startDocument(self) -> bool: ...
def setDocumentLocator(self, locator: QXmlLocator) -> None: ...

View File

@ -0,0 +1,367 @@
# The PEP 484 type hints stub file for the QtXmlPatterns module.
#
# Generated by SIP 5.4.0
#
# Copyright (c) 2020 Riverbank Computing Limited <info@riverbankcomputing.com>
#
# This file is part of PyQt5.
#
# This file may be used under the terms of the GNU General Public License
# version 3.0 as published by the Free Software Foundation and appearing in
# the file LICENSE included in the packaging of this file. Please review the
# following information to ensure the GNU General Public License version 3.0
# requirements will be met: http://www.gnu.org/copyleft/gpl.html.
#
# If you do not wish to use this file under the terms of the GPL version 3.0
# then you may purchase a commercial license. For more information contact
# info@riverbankcomputing.com.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
import typing
from PyQt5 import sip
from PyQt5 import QtNetwork
from PyQt5 import QtCore
# Support for QDate, QDateTime and QTime.
import datetime
# Convenient type aliases.
PYQT_SLOT = typing.Union[typing.Callable[..., None], QtCore.pyqtBoundSignal]
class QAbstractMessageHandler(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def handleMessage(self, type: QtCore.QtMsgType, description: str, identifier: QtCore.QUrl, sourceLocation: 'QSourceLocation') -> None: ...
def message(self, type: QtCore.QtMsgType, description: str, identifier: QtCore.QUrl = ..., sourceLocation: 'QSourceLocation' = ...) -> None: ...
class QAbstractUriResolver(QtCore.QObject):
def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None: ...
def resolve(self, relative: QtCore.QUrl, baseURI: QtCore.QUrl) -> QtCore.QUrl: ...
class QXmlNodeModelIndex(sip.simplewrapper):
class DocumentOrder(int): ...
Precedes = ... # type: 'QXmlNodeModelIndex.DocumentOrder'
Is = ... # type: 'QXmlNodeModelIndex.DocumentOrder'
Follows = ... # type: 'QXmlNodeModelIndex.DocumentOrder'
class NodeKind(int): ...
Attribute = ... # type: 'QXmlNodeModelIndex.NodeKind'
Comment = ... # type: 'QXmlNodeModelIndex.NodeKind'
Document = ... # type: 'QXmlNodeModelIndex.NodeKind'
Element = ... # type: 'QXmlNodeModelIndex.NodeKind'
Namespace = ... # type: 'QXmlNodeModelIndex.NodeKind'
ProcessingInstruction = ... # type: 'QXmlNodeModelIndex.NodeKind'
Text = ... # type: 'QXmlNodeModelIndex.NodeKind'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QXmlNodeModelIndex') -> None: ...
def __hash__(self) -> int: ...
def isNull(self) -> bool: ...
def additionalData(self) -> int: ...
def model(self) -> 'QAbstractXmlNodeModel': ...
def internalPointer(self) -> typing.Any: ...
def data(self) -> int: ...
class QAbstractXmlNodeModel(sip.simplewrapper):
class SimpleAxis(int): ...
Parent = ... # type: 'QAbstractXmlNodeModel.SimpleAxis'
FirstChild = ... # type: 'QAbstractXmlNodeModel.SimpleAxis'
PreviousSibling = ... # type: 'QAbstractXmlNodeModel.SimpleAxis'
NextSibling = ... # type: 'QAbstractXmlNodeModel.SimpleAxis'
def __init__(self) -> None: ...
@typing.overload
def createIndex(self, data: int) -> QXmlNodeModelIndex: ...
@typing.overload
def createIndex(self, data: int, additionalData: int) -> QXmlNodeModelIndex: ...
@typing.overload
def createIndex(self, pointer: typing.Any, additionalData: int = ...) -> QXmlNodeModelIndex: ...
def attributes(self, element: QXmlNodeModelIndex) -> typing.List[QXmlNodeModelIndex]: ...
def nextFromSimpleAxis(self, axis: 'QAbstractXmlNodeModel.SimpleAxis', origin: QXmlNodeModelIndex) -> QXmlNodeModelIndex: ...
def sourceLocation(self, index: QXmlNodeModelIndex) -> 'QSourceLocation': ...
def nodesByIdref(self, NCName: 'QXmlName') -> typing.List[QXmlNodeModelIndex]: ...
def elementById(self, NCName: 'QXmlName') -> QXmlNodeModelIndex: ...
def namespaceBindings(self, n: QXmlNodeModelIndex) -> typing.List['QXmlName']: ...
def typedValue(self, n: QXmlNodeModelIndex) -> typing.Any: ...
def stringValue(self, n: QXmlNodeModelIndex) -> str: ...
def name(self, ni: QXmlNodeModelIndex) -> 'QXmlName': ...
def root(self, n: QXmlNodeModelIndex) -> QXmlNodeModelIndex: ...
def compareOrder(self, ni1: QXmlNodeModelIndex, ni2: QXmlNodeModelIndex) -> QXmlNodeModelIndex.DocumentOrder: ...
def kind(self, ni: QXmlNodeModelIndex) -> QXmlNodeModelIndex.NodeKind: ...
def documentUri(self, ni: QXmlNodeModelIndex) -> QtCore.QUrl: ...
def baseUri(self, ni: QXmlNodeModelIndex) -> QtCore.QUrl: ...
class QXmlItem(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QXmlItem') -> None: ...
@typing.overload
def __init__(self, node: QXmlNodeModelIndex) -> None: ...
@typing.overload
def __init__(self, atomicValue: typing.Any) -> None: ...
def toNodeModelIndex(self) -> QXmlNodeModelIndex: ...
def toAtomicValue(self) -> typing.Any: ...
def isAtomicValue(self) -> bool: ...
def isNode(self) -> bool: ...
def isNull(self) -> bool: ...
class QAbstractXmlReceiver(sip.simplewrapper):
def __init__(self) -> None: ...
def endOfSequence(self) -> None: ...
def startOfSequence(self) -> None: ...
def namespaceBinding(self, name: 'QXmlName') -> None: ...
def atomicValue(self, value: typing.Any) -> None: ...
def processingInstruction(self, target: 'QXmlName', value: str) -> None: ...
def endDocument(self) -> None: ...
def startDocument(self) -> None: ...
def characters(self, value: str) -> None: ...
def comment(self, value: str) -> None: ...
def attribute(self, name: 'QXmlName', value: str) -> None: ...
def endElement(self) -> None: ...
def startElement(self, name: 'QXmlName') -> None: ...
class QSimpleXmlNodeModel(QAbstractXmlNodeModel):
def __init__(self, namePool: 'QXmlNamePool') -> None: ...
def nodesByIdref(self, idref: 'QXmlName') -> typing.List[QXmlNodeModelIndex]: ...
def elementById(self, id: 'QXmlName') -> QXmlNodeModelIndex: ...
def stringValue(self, node: QXmlNodeModelIndex) -> str: ...
def namespaceBindings(self, a0: QXmlNodeModelIndex) -> typing.List['QXmlName']: ...
def namePool(self) -> 'QXmlNamePool': ...
def baseUri(self, node: QXmlNodeModelIndex) -> QtCore.QUrl: ...
class QSourceLocation(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QSourceLocation') -> None: ...
@typing.overload
def __init__(self, u: QtCore.QUrl, line: int = ..., column: int = ...) -> None: ...
def __hash__(self) -> int: ...
def isNull(self) -> bool: ...
def setUri(self, newUri: QtCore.QUrl) -> None: ...
def uri(self) -> QtCore.QUrl: ...
def setLine(self, newLine: int) -> None: ...
def line(self) -> int: ...
def setColumn(self, newColumn: int) -> None: ...
def column(self) -> int: ...
class QXmlSerializer(QAbstractXmlReceiver):
def __init__(self, query: 'QXmlQuery', outputDevice: QtCore.QIODevice) -> None: ...
def codec(self) -> QtCore.QTextCodec: ...
def setCodec(self, codec: QtCore.QTextCodec) -> None: ...
def outputDevice(self) -> QtCore.QIODevice: ...
def endOfSequence(self) -> None: ...
def startOfSequence(self) -> None: ...
def endDocument(self) -> None: ...
def startDocument(self) -> None: ...
def atomicValue(self, value: typing.Any) -> None: ...
def processingInstruction(self, name: 'QXmlName', value: str) -> None: ...
def attribute(self, name: 'QXmlName', value: str) -> None: ...
def endElement(self) -> None: ...
def startElement(self, name: 'QXmlName') -> None: ...
def comment(self, value: str) -> None: ...
def characters(self, value: str) -> None: ...
def namespaceBinding(self, nb: 'QXmlName') -> None: ...
class QXmlFormatter(QXmlSerializer):
def __init__(self, query: 'QXmlQuery', outputDevice: QtCore.QIODevice) -> None: ...
def setIndentationDepth(self, depth: int) -> None: ...
def indentationDepth(self) -> int: ...
def endOfSequence(self) -> None: ...
def startOfSequence(self) -> None: ...
def endDocument(self) -> None: ...
def startDocument(self) -> None: ...
def atomicValue(self, value: typing.Any) -> None: ...
def processingInstruction(self, name: 'QXmlName', value: str) -> None: ...
def attribute(self, name: 'QXmlName', value: str) -> None: ...
def endElement(self) -> None: ...
def startElement(self, name: 'QXmlName') -> None: ...
def comment(self, value: str) -> None: ...
def characters(self, value: str) -> None: ...
class QXmlName(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, namePool: 'QXmlNamePool', localName: str, namespaceUri: str = ..., prefix: str = ...) -> None: ...
@typing.overload
def __init__(self, other: 'QXmlName') -> None: ...
def __hash__(self) -> int: ...
@staticmethod
def fromClarkName(clarkName: str, namePool: 'QXmlNamePool') -> 'QXmlName': ...
@staticmethod
def isNCName(candidate: str) -> bool: ...
def isNull(self) -> bool: ...
def toClarkName(self, query: 'QXmlNamePool') -> str: ...
def localName(self, query: 'QXmlNamePool') -> str: ...
def prefix(self, query: 'QXmlNamePool') -> str: ...
def namespaceUri(self, query: 'QXmlNamePool') -> str: ...
class QXmlNamePool(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QXmlNamePool') -> None: ...
class QXmlQuery(sip.simplewrapper):
class QueryLanguage(int): ...
XQuery10 = ... # type: 'QXmlQuery.QueryLanguage'
XSLT20 = ... # type: 'QXmlQuery.QueryLanguage'
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QXmlQuery') -> None: ...
@typing.overload
def __init__(self, np: QXmlNamePool) -> None: ...
@typing.overload
def __init__(self, queryLanguage: 'QXmlQuery.QueryLanguage', pool: QXmlNamePool = ...) -> None: ...
def queryLanguage(self) -> 'QXmlQuery.QueryLanguage': ...
def networkAccessManager(self) -> QtNetwork.QNetworkAccessManager: ...
def setNetworkAccessManager(self, newManager: QtNetwork.QNetworkAccessManager) -> None: ...
def initialTemplateName(self) -> QXmlName: ...
@typing.overload
def setInitialTemplateName(self, name: QXmlName) -> None: ...
@typing.overload
def setInitialTemplateName(self, name: str) -> None: ...
@typing.overload
def setFocus(self, item: QXmlItem) -> None: ...
@typing.overload
def setFocus(self, documentURI: QtCore.QUrl) -> bool: ...
@typing.overload
def setFocus(self, document: QtCore.QIODevice) -> bool: ...
@typing.overload
def setFocus(self, focus: str) -> bool: ...
def uriResolver(self) -> QAbstractUriResolver: ...
def setUriResolver(self, resolver: QAbstractUriResolver) -> None: ...
def evaluateToString(self) -> str: ...
def evaluateToStringList(self) -> typing.List[str]: ...
@typing.overload
def evaluateTo(self, result: 'QXmlResultItems') -> None: ...
@typing.overload
def evaluateTo(self, callback: QAbstractXmlReceiver) -> bool: ...
@typing.overload
def evaluateTo(self, target: QtCore.QIODevice) -> bool: ...
def isValid(self) -> bool: ...
@typing.overload
def bindVariable(self, name: QXmlName, value: QXmlItem) -> None: ...
@typing.overload
def bindVariable(self, name: QXmlName, a1: QtCore.QIODevice) -> None: ...
@typing.overload
def bindVariable(self, name: QXmlName, query: 'QXmlQuery') -> None: ...
@typing.overload
def bindVariable(self, localName: str, value: QXmlItem) -> None: ...
@typing.overload
def bindVariable(self, localName: str, a1: QtCore.QIODevice) -> None: ...
@typing.overload
def bindVariable(self, localName: str, query: 'QXmlQuery') -> None: ...
def namePool(self) -> QXmlNamePool: ...
@typing.overload
def setQuery(self, sourceCode: str, documentUri: QtCore.QUrl = ...) -> None: ...
@typing.overload
def setQuery(self, sourceCode: QtCore.QIODevice, documentUri: QtCore.QUrl = ...) -> None: ...
@typing.overload
def setQuery(self, queryURI: QtCore.QUrl, baseUri: QtCore.QUrl = ...) -> None: ...
def messageHandler(self) -> QAbstractMessageHandler: ...
def setMessageHandler(self, messageHandler: QAbstractMessageHandler) -> None: ...
class QXmlResultItems(sip.simplewrapper):
def __init__(self) -> None: ...
def current(self) -> QXmlItem: ...
def next(self) -> QXmlItem: ...
def hasError(self) -> bool: ...
class QXmlSchema(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, other: 'QXmlSchema') -> None: ...
def networkAccessManager(self) -> QtNetwork.QNetworkAccessManager: ...
def setNetworkAccessManager(self, networkmanager: QtNetwork.QNetworkAccessManager) -> None: ...
def uriResolver(self) -> QAbstractUriResolver: ...
def setUriResolver(self, resolver: QAbstractUriResolver) -> None: ...
def messageHandler(self) -> QAbstractMessageHandler: ...
def setMessageHandler(self, handler: QAbstractMessageHandler) -> None: ...
def documentUri(self) -> QtCore.QUrl: ...
def namePool(self) -> QXmlNamePool: ...
def isValid(self) -> bool: ...
@typing.overload
def load(self, source: QtCore.QUrl) -> bool: ...
@typing.overload
def load(self, source: QtCore.QIODevice, documentUri: QtCore.QUrl = ...) -> bool: ...
@typing.overload
def load(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray], documentUri: QtCore.QUrl = ...) -> bool: ...
class QXmlSchemaValidator(sip.simplewrapper):
@typing.overload
def __init__(self) -> None: ...
@typing.overload
def __init__(self, schema: QXmlSchema) -> None: ...
def networkAccessManager(self) -> QtNetwork.QNetworkAccessManager: ...
def setNetworkAccessManager(self, networkmanager: QtNetwork.QNetworkAccessManager) -> None: ...
def uriResolver(self) -> QAbstractUriResolver: ...
def setUriResolver(self, resolver: QAbstractUriResolver) -> None: ...
def messageHandler(self) -> QAbstractMessageHandler: ...
def setMessageHandler(self, handler: QAbstractMessageHandler) -> None: ...
def schema(self) -> QXmlSchema: ...
def namePool(self) -> QXmlNamePool: ...
@typing.overload
def validate(self, source: QtCore.QUrl) -> bool: ...
@typing.overload
def validate(self, source: QtCore.QIODevice, documentUri: QtCore.QUrl = ...) -> bool: ...
@typing.overload
def validate(self, data: typing.Union[QtCore.QByteArray, bytes, bytearray], documentUri: QtCore.QUrl = ...) -> bool: ...
def setSchema(self, schema: QXmlSchema) -> None: ...

View File

@ -0,0 +1,5 @@
__version__ = "5.15.2.0"
class QMainWindow:
pass

View File

@ -0,0 +1,113 @@
# Copyright (c) 2019, Riverbank Computing Limited
# All rights reserved.
#
# This copy of SIP is licensed for use under the terms of the SIP License
# Agreement. See the file LICENSE for more details.
#
# This copy of SIP may also used under the terms of the GNU General Public
# License v2 or v3 as published by the Free Software Foundation which can be
# found in the files LICENSE-GPL2 and LICENSE-GPL3 included in this package.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
from typing import overload, Any, Generic, Iterable, Sequence, TypeVar, Union
# Constants.
SIP_VERSION = ... # type: int
SIP_VERSION_STR = ... # type: str
# The bases for SIP generated types.
class wrappertype: ...
class simplewrapper: ...
class wrapper(simplewrapper): ...
# PEP 484 has no explicit support for the buffer protocol so we just name types
# we know that implement it.
Buffer = Union['array', 'voidptr', str, bytes, bytearray]
_T = TypeVar("_T")
# The array type.
class array(Sequence[_T], Generic[_T]):
@overload
def __delitem__(self, key: int) -> None: ...
@overload
def __delitem__(self, key: slice) -> None: ...
@overload
def __getitem__(self, key: int) -> _T: ...
@overload
def __getitem__(self, key: slice) -> "array[_T]": ...
def __len__(self) -> int: ...
@overload
def __setitem__(self, key: int, value: _T) -> None: ...
@overload
def __setitem__(self, key: slice, value: Iterable[_T]) -> None: ...
# The voidptr type.
class voidptr:
def __init__(self, addr: Union[int, None, bytes, bytearray, 'voidptr'], size: int = -1, writeable: bool = True) -> None: ...
def __int__(self) -> int: ...
@overload
def __getitem__(self, i: int) -> bytes: ...
@overload
def __getitem__(self, s: slice) -> 'voidptr': ...
def __len__(self) -> int: ...
def __setitem__(self, i: Union[int, slice], v: Buffer) -> None: ...
def asarray(self, size: int = -1) -> array[int]: ...
def ascapsule(self) -> Any: ...
def asstring(self, size: int = -1) -> bytes: ...
def getsize(self) -> int: ...
def getwriteable(self) -> bool: ...
def setsize(self, size: int) -> None: ...
def setwriteable(self, bool: bool) -> None: ...
# Remaining functions.
def assign(obj: simplewrapper, other: simplewrapper) -> None: ...
def cast(obj: simplewrapper, type: wrappertype) -> simplewrapper: ...
def delete(obj: simplewrapper) -> None: ...
def dump(obj: simplewrapper) -> None: ...
def enableautoconversion(type: wrappertype, enable: bool) -> bool: ...
def enableoverflowchecking(enable: bool) -> bool: ...
def getapi(name: str) -> int: ...
def isdeleted(obj: simplewrapper) -> bool: ...
def ispycreated(obj: simplewrapper) -> bool: ...
def ispyowned(obj: simplewrapper) -> bool: ...
def setapi(name: str, version: int) -> None: ...
def setdeleted(obj: simplewrapper) -> None: ...
def setdestroyonexit(destroy: bool) -> None: ...
def settracemask(mask: int) -> None: ...
def transferback(obj: wrapper) -> None: ...
def transferto(obj: wrapper, owner: wrapper) -> None: ...
def unwrapinstance(obj: simplewrapper) -> None: ...
def wrapinstance(addr: int, type: wrappertype) -> simplewrapper: ...

View File

@ -0,0 +1 @@
pip

View File

@ -0,0 +1,674 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<https://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<https://www.gnu.org/licenses/why-not-lgpl.html>.

View File

@ -0,0 +1,90 @@
Metadata-Version: 2.1
Name: PyQt5-stubs
Version: 5.15.2.0
Summary: PEP561 stub files for the PyQt5 framework
Home-page: https://github.com/python-qt-tools/PyQt5-stubs
Author: Stefan Lehmann
Maintainer: Kyle Altendorf, Bryce Beagle, Florian Bruhin
Maintainer-email: sda@fstab.net
License: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development
Requires-Python: >= 3.5
Description-Content-Type: text/markdown
Provides-Extra: build
Requires-Dist: docker (==4.2.0) ; extra == 'build'
<img src="http://mypy-lang.org/static/mypy_light.svg" alt="mypy logo" width="300px"/>
[![PyPI version](https://badge.fury.io/py/PyQt5-stubs.svg)](https://badge.fury.io/py/PyQt5-stubs)
[![mypy checked](https://camo.githubusercontent.com/34b3a249cd6502d0a521ab2f42c8830b7cfd03fa/687474703a2f2f7777772e6d7970792d6c616e672e6f72672f7374617469632f6d7970795f62616467652e737667)](http://mypy-lang.org/)
[![Build Status](https://travis-ci.org/stlehmann/PyQt5-stubs.svg?branch=master)](https://travis-ci.org/stlehmann/PyQt5-stubs)
[![Downloads](https://pepy.tech/badge/pyqt5-stubs)](https://pepy.tech/project/pyqt5-stubs)
[![Downloads](https://pepy.tech/badge/pyqt5-stubs/week)](https://pepy.tech/project/pyqt5-stubs/week)
# Mypy stubs for the PyQt5 framework
This repository holds the stubs of the PyQt5 framework. It uses the stub files that are
produced during compilation process of PyQt5. These stub files have been modified by the author
to allow using them for type-checking via Mypy. This repository is far from complete and the author will
appreciate any PRs or Issues that help making this stub-repository more reliable.
# Installation
Simply install PyQt5-stubs with pip:
$ pip install PyQt5-stubs
Or clone the latest version from Github and install it via Python setuptools:
$ git clone https://github.com/stlehmann/PyQt5-stubs.git
$ python setup.py install
# Supported Modules
The following modules are supported by PyQt5-stubs:
* QtCore
* QtWidgets
* QtGui
* QtDBus
* QtNetwork
* QtOpenGL
* QtPrintSupport
* QtSql
* QtTest
* QtXml
* sip
# Building upstream stubs
The Dockerfile is used to build all of the stubs for the upstream PyQt5 modules.
The Dockerfile consists of multiple build layers:
* core: `PyQt5`
* `PyQt3D`
* `PyQtChart`
* `PyQtDataVisualization`
* `PyQtPurchasing`
* `PyQtWebEngine`
* an output layer
Each module build layer deposits its stub files within `/output/` in its
filesystem. The output layer then collects the contents of each into its own
`/output/` dir for export to the host computer. Build args are provided to
change the version of each module.
A convenience script, `build_upstream.py`, is provided. It builds the stubs and
copies them to the host computer. Make sure you install `docker-py` to use it.
It builds `$PWD/Dockerfile` (overridden with `--dockerfile`) and outputs the
stubs to `$PWD/PyQt5-stubs` (overridden with `--output-dir`).
\* There are a few missing modules: `QtAxContainer`, `QtAndroidExtras`,
`QtMacExtras`, and `QtWindowsExtras`. The current project understanding is that
they need to be built on the target platform, something a Linux-based docker
image cannot do. The deprecated `Enginio` module is also missing.

View File

@ -0,0 +1,53 @@
PyQt5-stubs/Qt3DAnimation.pyi,sha256=47D0ngWS-0XwRHEKKQ98dewLuPqK6Q0pTpewBxSPEyw,20732
PyQt5-stubs/Qt3DCore.pyi,sha256=j0MyFcOY67omhi_vlFPSO35mjSlq6S89DQcGMwkWVSA,20130
PyQt5-stubs/Qt3DExtras.pyi,sha256=yu7NkSX0_6_hM4B3WxCo6Kqy7_Iw04pW42B_CwyERKI,39199
PyQt5-stubs/Qt3DInput.pyi,sha256=kti0vwHQrVPmVbQtNWkdi7UggK_xsN3ITgM2o3NpWEs,17757
PyQt5-stubs/Qt3DLogic.pyi,sha256=1OP58IzHbwNOpR8GVUtZzz14UvuLMPsl2OJugehjRk0,1752
PyQt5-stubs/Qt3DRender.pyi,sha256=uphKrKoUE2Si7LwvlTjCdxXM7RX14Wtz0ah6b2L-rnk,116547
PyQt5-stubs/QtBluetooth.pyi,sha256=3R1ZsMnUxwx6iAInkXiPmWosvAknYbIGuT6SNMwiXCg,74047
PyQt5-stubs/QtChart.pyi,sha256=5Ae5kJdG6R7f9UyzEX17FzkHGx8x9rR939KyB4MJCu4,74343
PyQt5-stubs/QtCore.pyi,sha256=xxBsmbx9RCq56N8Rk67JDtBaLJ_F2vOOd3AELMXJ3A0,411868
PyQt5-stubs/QtDBus.pyi,sha256=4x_DO0cZ73IUQSqhQ7ZtjHxZHdvFfkEdBXUxMUgx5z0,23120
PyQt5-stubs/QtDataVisualization.pyi,sha256=SZHcBAeWfzuXaJJDPg7vn0-CqmvmilSEVVly_3XDJKk,77562
PyQt5-stubs/QtDesigner.pyi,sha256=MA-GXvg-xfng_yv8dxZ6mMjKmhPlOX93IjcXcYsQB1M,22413
PyQt5-stubs/QtGui.pyi,sha256=NIeBXeGYZQIbu80it3ZDy6SB64VOpumu29kMy8tSh_s,423065
PyQt5-stubs/QtHelp.pyi,sha256=J0mBrFHJMqIB1x9lj5C7XWY8EKoimxqvvkK8Igg2SLU,13032
PyQt5-stubs/QtLocation.pyi,sha256=D6rmejzNDmvYnESGJs1yM97mqiiordccK7V57oXUlZ4,53880
PyQt5-stubs/QtMultimedia.pyi,sha256=T4IEKN5jaH0-U4rq5OWz2QC1G97BKflLxod5_xrE5S8,116193
PyQt5-stubs/QtMultimediaWidgets.pyi,sha256=bTyPcLNeKFjo6Ba1ZFUX4QvJsZ8EcN-1VwaLN7meUcE,5757
PyQt5-stubs/QtNetwork.pyi,sha256=upKleHfjbPNEdeboxhGmYemvj_UskZStTnKO9uHXq2w,104807
PyQt5-stubs/QtNetworkAuth.pyi,sha256=E8xrN5Tre81DviF8QtOF1tMg_6QD3QvKAidDQU4x5hI,17951
PyQt5-stubs/QtNfc.pyi,sha256=U8Yw-VOnoJbeAeECiA2SL0qXIbvxNs-y9uBygfm-sJE,19217
PyQt5-stubs/QtOpenGL.pyi,sha256=xFLrLS9imGGjCFeVFM9FkRvGUE0B0aYSe8poP5CPwFM,15709
PyQt5-stubs/QtPositioning.pyi,sha256=EwAzLMDClrjEceaVX-9ZyWAgSqWHeZkv7EvQuZ6BZOc,24164
PyQt5-stubs/QtPrintSupport.pyi,sha256=qU3l3qcmlUB9Q7w9UW5LBh79DAg5RWPfx5Wh2_BINb4,20221
PyQt5-stubs/QtPurchasing.pyi,sha256=nSpMahpUz1RH_SjOTTWwishnOxslPhAev5h93teitZE,3407
PyQt5-stubs/QtQml.pyi,sha256=iPn-0jUDcReFow1UzrjSfMwoz6UKumK8RldGtafefsE,28555
PyQt5-stubs/QtQuick.pyi,sha256=7T2s_h0Au-Rz6Solk_JinvFSFkWFDNe3cd4eb_PfkSI,71560
PyQt5-stubs/QtQuickWidgets.pyi,sha256=8NF8JFBGBkN2TgBf6mPltB25zdbd9Hk94FBmM-tgn2o,4627
PyQt5-stubs/QtRemoteObjects.pyi,sha256=Ic3GMA7tcLRC4SQG98tLrhfjOZ2_GTpKSeJIVSmMI8M,9179
PyQt5-stubs/QtSensors.pyi,sha256=amztQRPlRZ7Cf6uJ-TGIVw9rFTF7J5YCD6EpkYrQJEM,21068
PyQt5-stubs/QtSerialPort.pyi,sha256=oBXipKgEyNontqpYpmIESAepxye4El1wDaYMatPxZps,11060
PyQt5-stubs/QtSql.pyi,sha256=h9pdm9I5SBzKo_j4xxWHCrBc0MqR6-6qsqJn-6AKiaU,29211
PyQt5-stubs/QtSvg.pyi,sha256=InFEMLA-me_pqXP_5nU4OYsGwDkxQ0brsQJGCCRvK2A,6060
PyQt5-stubs/QtTest.pyi,sha256=-CLY2ziuIstEzJW3F-TS3O-BiIJG6RDI9sd09HYiq4c,11662
PyQt5-stubs/QtWebChannel.pyi,sha256=es5ytm0TRYWqhqCpyJMJlh-6_cNeM_3itTJCgkhCyo4,2454
PyQt5-stubs/QtWebEngine.pyi,sha256=lw4iJybFGMPtcsbB1jb97SIOVoHldwkqIlb1fkVjiCA,7576
PyQt5-stubs/QtWebEngineCore.pyi,sha256=aAmaL_M5s0T0C78I9RATW8ijyUSTyA2DyfeadP0XqGU,12783
PyQt5-stubs/QtWebEngineWidgets.pyi,sha256=cAm7qutjI5rK-uLBTAb0yVPhqfP70PhlcAq7YIRUX7g,41601
PyQt5-stubs/QtWebKit.pyi,sha256=QIQ--KjaHi-dw1CP9SjBN7rAMJbLAVyx5y9Sv4diKbg,18464
PyQt5-stubs/QtWebKitWidgets.pyi,sha256=hZKWKucYlxr8bWPP6FiN8H2t816TQnOw-4h1VOMTeJM,32282
PyQt5-stubs/QtWebSockets.pyi,sha256=XuH4TCr-p0H6g7PUt3zpiGtO4Oup-W6UuCH1jU9DIHo,10321
PyQt5-stubs/QtWidgets.pyi,sha256=Fn0Jk4v0Zktl0PA8-wDz26jbU9rkAaKc8-QkMPwbj8A,512462
PyQt5-stubs/QtX11Extras.pyi,sha256=vs9_98jIepRB3D9frBsgDIRYwwErbclQmJDYRX7odzc,2206
PyQt5-stubs/QtXml.pyi,sha256=XlNf_wc4Tbg_A4S7BbravYAo4XwqYLcRweZUWvx_ZlA,27627
PyQt5-stubs/QtXmlPatterns.pyi,sha256=AinhJtd_L9aLf96ZhDMvOuyiYE0kinOpPQ0OHFmcuzw,15122
PyQt5-stubs/__init__.pyi,sha256=vqufYcxqqZ3UbNMxRCeIVFRKdH2YMMybCTJD4V1dpWw,25
PyQt5-stubs/sip.pyi,sha256=sukHBGnY6s7GjrglquHqmfXz9FQL5CUk-Cp7ordesYw,3932
PyQt5_stubs-5.15.2.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
PyQt5_stubs-5.15.2.0.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
PyQt5_stubs-5.15.2.0.dist-info/METADATA,sha256=IAXZSEYstLSxbzE4phITz_hve5gx_Z_F1_tH7HA6onw,3416
PyQt5_stubs-5.15.2.0.dist-info/RECORD,,
PyQt5_stubs-5.15.2.0.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
PyQt5_stubs-5.15.2.0.dist-info/WHEEL,sha256=OqRkF0eY5GHssMorFjlbTIq072vpHpF60fIQA6lS9xA,92
PyQt5_stubs-5.15.2.0.dist-info/top_level.txt,sha256=vGoDan0ecHu7aDb4m3tnfeWtrOE2cnQvtoEMGkHRzng,12

View File

@ -0,0 +1,5 @@
Wheel-Version: 1.0
Generator: bdist_wheel (0.36.2)
Root-Is-Purelib: true
Tag: py3-none-any

View File

@ -0,0 +1 @@
PyQt5-stubs

View File

@ -0,0 +1,140 @@
import sys
import os
import re
import importlib
import warnings
is_pypy = '__pypy__' in sys.builtin_module_names
warnings.filterwarnings('ignore',
r'.+ distutils\b.+ deprecated',
DeprecationWarning)
def warn_distutils_present():
if 'distutils' not in sys.modules:
return
if is_pypy and sys.version_info < (3, 7):
# PyPy for 3.6 unconditionally imports distutils, so bypass the warning
# https://foss.heptapod.net/pypy/pypy/-/blob/be829135bc0d758997b3566062999ee8b23872b4/lib-python/3/site.py#L250
return
warnings.warn(
"Distutils was imported before Setuptools, but importing Setuptools "
"also replaces the `distutils` module in `sys.modules`. This may lead "
"to undesirable behaviors or errors. To avoid these issues, avoid "
"using distutils directly, ensure that setuptools is installed in the "
"traditional way (e.g. not an editable install), and/or make sure "
"that setuptools is always imported before distutils.")
def clear_distutils():
if 'distutils' not in sys.modules:
return
warnings.warn("Setuptools is replacing distutils.")
mods = [name for name in sys.modules if re.match(r'distutils\b', name)]
for name in mods:
del sys.modules[name]
def enabled():
"""
Allow selection of distutils by environment variable.
"""
which = os.environ.get('SETUPTOOLS_USE_DISTUTILS', 'local')
return which == 'local'
def ensure_local_distutils():
clear_distutils()
# With the DistutilsMetaFinder in place,
# perform an import to cause distutils to be
# loaded from setuptools._distutils. Ref #2906.
add_shim()
importlib.import_module('distutils')
remove_shim()
# check that submodules load as expected
core = importlib.import_module('distutils.core')
assert '_distutils' in core.__file__, core.__file__
def do_override():
"""
Ensure that the local copy of distutils is preferred over stdlib.
See https://github.com/pypa/setuptools/issues/417#issuecomment-392298401
for more motivation.
"""
if enabled():
warn_distutils_present()
ensure_local_distutils()
class DistutilsMetaFinder:
def find_spec(self, fullname, path, target=None):
if path is not None:
return
method_name = 'spec_for_{fullname}'.format(**locals())
method = getattr(self, method_name, lambda: None)
return method()
def spec_for_distutils(self):
import importlib.abc
import importlib.util
class DistutilsLoader(importlib.abc.Loader):
def create_module(self, spec):
return importlib.import_module('setuptools._distutils')
def exec_module(self, module):
pass
return importlib.util.spec_from_loader('distutils', DistutilsLoader())
def spec_for_pip(self):
"""
Ensure stdlib distutils when running under pip.
See pypa/pip#8761 for rationale.
"""
if self.pip_imported_during_build():
return
clear_distutils()
self.spec_for_distutils = lambda: None
@classmethod
def pip_imported_during_build(cls):
"""
Detect if pip is being imported in a build script. Ref #2355.
"""
import traceback
return any(
cls.frame_file_is_setup(frame)
for frame, line in traceback.walk_stack(None)
)
@staticmethod
def frame_file_is_setup(frame):
"""
Return True if the indicated frame suggests a setup.py file.
"""
# some frames may not have __file__ (#2940)
return frame.f_globals.get('__file__', '').endswith('setup.py')
DISTUTILS_FINDER = DistutilsMetaFinder()
def add_shim():
sys.meta_path.insert(0, DISTUTILS_FINDER)
def remove_shim():
try:
sys.meta_path.remove(DISTUTILS_FINDER)
except ValueError:
pass

View File

@ -0,0 +1 @@
__import__('_distutils_hack').do_override()

View File

@ -0,0 +1 @@
import os; var = 'SETUPTOOLS_USE_DISTUTILS'; enabled = os.environ.get(var, 'local') == 'local'; enabled and __import__('_distutils_hack').add_shim();

View File

@ -0,0 +1 @@
pip

View File

@ -0,0 +1,20 @@
Copyright (c) 2008-2021 The pip developers (see AUTHORS.txt file)
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@ -0,0 +1,93 @@
Metadata-Version: 2.1
Name: pip
Version: 21.3.1
Summary: The PyPA recommended tool for installing Python packages.
Home-page: https://pip.pypa.io/
Author: The pip developers
Author-email: distutils-sig@python.org
License: MIT
Project-URL: Documentation, https://pip.pypa.io
Project-URL: Source, https://github.com/pypa/pip
Project-URL: Changelog, https://pip.pypa.io/en/stable/news/
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Software Development :: Build Tools
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: >=3.6
License-File: LICENSE.txt
pip - The Python Package Installer
==================================
.. image:: https://img.shields.io/pypi/v/pip.svg
:target: https://pypi.org/project/pip/
.. image:: https://readthedocs.org/projects/pip/badge/?version=latest
:target: https://pip.pypa.io/en/latest
pip is the `package installer`_ for Python. You can use pip to install packages from the `Python Package Index`_ and other indexes.
Please take a look at our documentation for how to install and use pip:
* `Installation`_
* `Usage`_
We release updates regularly, with a new version every 3 months. Find more details in our documentation:
* `Release notes`_
* `Release process`_
In pip 20.3, we've `made a big improvement to the heart of pip`_; `learn more`_. We want your input, so `sign up for our user experience research studies`_ to help us do it right.
**Note**: pip 21.0, in January 2021, removed Python 2 support, per pip's `Python 2 support policy`_. Please migrate to Python 3.
If you find bugs, need help, or want to talk to the developers, please use our mailing lists or chat rooms:
* `Issue tracking`_
* `Discourse channel`_
* `User IRC`_
If you want to get involved head over to GitHub to get the source code, look at our development documentation and feel free to jump on the developer mailing lists and chat rooms:
* `GitHub page`_
* `Development documentation`_
* `Development mailing list`_
* `Development IRC`_
Code of Conduct
---------------
Everyone interacting in the pip project's codebases, issue trackers, chat
rooms, and mailing lists is expected to follow the `PSF Code of Conduct`_.
.. _package installer: https://packaging.python.org/guides/tool-recommendations/
.. _Python Package Index: https://pypi.org
.. _Installation: https://pip.pypa.io/en/stable/installation/
.. _Usage: https://pip.pypa.io/en/stable/
.. _Release notes: https://pip.pypa.io/en/stable/news.html
.. _Release process: https://pip.pypa.io/en/latest/development/release-process/
.. _GitHub page: https://github.com/pypa/pip
.. _Development documentation: https://pip.pypa.io/en/latest/development
.. _made a big improvement to the heart of pip: https://pyfound.blogspot.com/2020/11/pip-20-3-new-resolver.html
.. _learn more: https://pip.pypa.io/en/latest/user_guide/#changes-to-the-pip-dependency-resolver-in-20-3-2020
.. _sign up for our user experience research studies: https://pyfound.blogspot.com/2020/03/new-pip-resolver-to-roll-out-this-year.html
.. _Python 2 support policy: https://pip.pypa.io/en/latest/development/release-process/#python-2-support
.. _Issue tracking: https://github.com/pypa/pip/issues
.. _Discourse channel: https://discuss.python.org/c/packaging
.. _Development mailing list: https://mail.python.org/mailman3/lists/distutils-sig.python.org/
.. _User IRC: https://kiwiirc.com/nextclient/#ircs://irc.libera.chat:+6697/pypa
.. _Development IRC: https://kiwiirc.com/nextclient/#ircs://irc.libera.chat:+6697/pypa-dev
.. _PSF Code of Conduct: https://github.com/pypa/.github/blob/main/CODE_OF_CONDUCT.md

View File

@ -0,0 +1,818 @@
../../Scripts/pip.exe,sha256=TDJDPK-_uYO4GNFL7cFDNC_YRKC7yUzUPC5GaBN4PAk,106356
../../Scripts/pip3.9.exe,sha256=TDJDPK-_uYO4GNFL7cFDNC_YRKC7yUzUPC5GaBN4PAk,106356
../../Scripts/pip3.exe,sha256=TDJDPK-_uYO4GNFL7cFDNC_YRKC7yUzUPC5GaBN4PAk,106356
pip-21.3.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
pip-21.3.1.dist-info/LICENSE.txt,sha256=I6c2HCsVgQKLxiO52ivSSZeryqR4Gs5q1ESjeUT42uE,1090
pip-21.3.1.dist-info/METADATA,sha256=PjWcvFEqJd4gOfiQam8il34_wPNKxf8ubyYI2wYm7tc,4216
pip-21.3.1.dist-info/RECORD,,
pip-21.3.1.dist-info/WHEEL,sha256=ewwEueio1C2XeHTvT17n8dZUJgOvyCWCt0WVNLClP9o,92
pip-21.3.1.dist-info/entry_points.txt,sha256=5ExSa1s54zSPNA_1epJn5SX06786S8k5YHwskMvVYzw,125
pip-21.3.1.dist-info/top_level.txt,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
pip/__init__.py,sha256=798yhPIf6eMHi7R5Ogb3BJ5ALJ0Id8IwEuOSU2DFlp0,357
pip/__main__.py,sha256=mXwWDftNLMKfwVqKFWGE_uuBZvGSIiUELhLkeysIuZc,1198
pip/__pycache__/__init__.cpython-39.pyc,,
pip/__pycache__/__main__.cpython-39.pyc,,
pip/_internal/__init__.py,sha256=nnFCuxrPMgALrIDxSoy-H6Zj4W4UY60D-uL1aJyq0pc,573
pip/_internal/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/__pycache__/build_env.cpython-39.pyc,,
pip/_internal/__pycache__/cache.cpython-39.pyc,,
pip/_internal/__pycache__/configuration.cpython-39.pyc,,
pip/_internal/__pycache__/exceptions.cpython-39.pyc,,
pip/_internal/__pycache__/main.cpython-39.pyc,,
pip/_internal/__pycache__/pyproject.cpython-39.pyc,,
pip/_internal/__pycache__/self_outdated_check.cpython-39.pyc,,
pip/_internal/__pycache__/wheel_builder.cpython-39.pyc,,
pip/_internal/build_env.py,sha256=uIg4HJDgZK542FXVTl3jkPDNbklNgb8Rj6DeZef_oS8,9950
pip/_internal/cache.py,sha256=71eaYwrls34HJ6gzbmmYiotiKhPNFTM_tqYJXD5nf3s,9441
pip/_internal/cli/__init__.py,sha256=FkHBgpxxb-_gd6r1FjnNhfMOzAUYyXoXKJ6abijfcFU,132
pip/_internal/cli/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/cli/__pycache__/autocompletion.cpython-39.pyc,,
pip/_internal/cli/__pycache__/base_command.cpython-39.pyc,,
pip/_internal/cli/__pycache__/cmdoptions.cpython-39.pyc,,
pip/_internal/cli/__pycache__/command_context.cpython-39.pyc,,
pip/_internal/cli/__pycache__/main.cpython-39.pyc,,
pip/_internal/cli/__pycache__/main_parser.cpython-39.pyc,,
pip/_internal/cli/__pycache__/parser.cpython-39.pyc,,
pip/_internal/cli/__pycache__/progress_bars.cpython-39.pyc,,
pip/_internal/cli/__pycache__/req_command.cpython-39.pyc,,
pip/_internal/cli/__pycache__/spinners.cpython-39.pyc,,
pip/_internal/cli/__pycache__/status_codes.cpython-39.pyc,,
pip/_internal/cli/autocompletion.py,sha256=NK5yqe49SgExZOCFVEUT5Bf0QV2CuITGK27WSo2MWg8,6399
pip/_internal/cli/base_command.py,sha256=oFuvjLsYE17V67L1dHeTo-YePZN97RKpOuGEXwCKwLc,7790
pip/_internal/cli/cmdoptions.py,sha256=o6hueHSc3VWZ-_do9eeoZKEaxqh18zlXKAzVZ00Kg-o,28391
pip/_internal/cli/command_context.py,sha256=a1pBBvvGLDiZ1Kw64_4tT6HmRTwYDoYy8JFgG5Czn7s,760
pip/_internal/cli/main.py,sha256=ioJ8IVlb2K1qLOxR-tXkee9lURhYV89CDM71MKag7YY,2472
pip/_internal/cli/main_parser.py,sha256=Q9TnytfuC5Z2JSjBFWVGtEdYLFy7rukNIb04movHdAo,2614
pip/_internal/cli/parser.py,sha256=CDXTuFr2UD8ozOlZYf1KDziQdo9-X_IaYOiUcyJQwrA,10788
pip/_internal/cli/progress_bars.py,sha256=ha8wowclY8_PaoM0cz4G6qK37zjnzuxQ-ydOtzx4EMI,8300
pip/_internal/cli/req_command.py,sha256=La6J8YonTxoPtJ8HMPN4RTKyzg0VS_R4vxfVf_HmFZw,17097
pip/_internal/cli/spinners.py,sha256=TFhjxtOnLeNJ5YmRvQm4eKPgPbJNkZiqO8jOXuxRaYU,5076
pip/_internal/cli/status_codes.py,sha256=sEFHUaUJbqv8iArL3HAtcztWZmGOFX01hTesSytDEh0,116
pip/_internal/commands/__init__.py,sha256=Vc1HjsLEtyCh7506OozPHPKXe2Hk-z9cFkFF3BMj1lM,3736
pip/_internal/commands/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/commands/__pycache__/cache.cpython-39.pyc,,
pip/_internal/commands/__pycache__/check.cpython-39.pyc,,
pip/_internal/commands/__pycache__/completion.cpython-39.pyc,,
pip/_internal/commands/__pycache__/configuration.cpython-39.pyc,,
pip/_internal/commands/__pycache__/debug.cpython-39.pyc,,
pip/_internal/commands/__pycache__/download.cpython-39.pyc,,
pip/_internal/commands/__pycache__/freeze.cpython-39.pyc,,
pip/_internal/commands/__pycache__/hash.cpython-39.pyc,,
pip/_internal/commands/__pycache__/help.cpython-39.pyc,,
pip/_internal/commands/__pycache__/index.cpython-39.pyc,,
pip/_internal/commands/__pycache__/install.cpython-39.pyc,,
pip/_internal/commands/__pycache__/list.cpython-39.pyc,,
pip/_internal/commands/__pycache__/search.cpython-39.pyc,,
pip/_internal/commands/__pycache__/show.cpython-39.pyc,,
pip/_internal/commands/__pycache__/uninstall.cpython-39.pyc,,
pip/_internal/commands/__pycache__/wheel.cpython-39.pyc,,
pip/_internal/commands/cache.py,sha256=p9gvc6W_xgxE2zO0o8NXqO1gGJEinEK42qEC-a7Cnuk,7524
pip/_internal/commands/check.py,sha256=0gjXR7j36xJT5cs2heYU_dfOfpnFfzX8OoPNNoKhqdM,1685
pip/_internal/commands/completion.py,sha256=kTG_I1VR3N5kGC4Ma9pQTSoY9Q1URCrNyseHSQ-rCL4,2958
pip/_internal/commands/configuration.py,sha256=arE8vLstjBg-Ar1krXF-bBmT1qBtnL7Fpk-NVh38a0U,8944
pip/_internal/commands/debug.py,sha256=krET-y45CnQzXwKR1qA3M_tJE4LE2vnQtm3yfGyDSnE,6629
pip/_internal/commands/download.py,sha256=p4lmYDgawRrwDFUpde_-1Gld45FnsMNHUFtOWFUCcSE,4904
pip/_internal/commands/freeze.py,sha256=gCjoD6foBZPBAAYx5t8zZLkJhsF_ZRtnb3dPuD7beO8,2951
pip/_internal/commands/hash.py,sha256=EVVOuvGtoPEdFi8SNnmdqlCQrhCxV-kJsdwtdcCnXGQ,1703
pip/_internal/commands/help.py,sha256=gcc6QDkcgHMOuAn5UxaZwAStsRBrnGSn_yxjS57JIoM,1132
pip/_internal/commands/index.py,sha256=1VVXXj5MsI2qH-N7uniQQyVkg-KCn_RdjiyiUmkUS5U,4762
pip/_internal/commands/install.py,sha256=HTWdTb72Bcrm2tA_d55_hX6yQbchnr_XRdA2Xs8uApU,27851
pip/_internal/commands/list.py,sha256=SnCh19e5zQKonNP7j25c_xru0Wm7wWWF8j49f-Dy9Bw,12203
pip/_internal/commands/search.py,sha256=sbBZiARRc050QquOKcCvOr2K3XLsoYebLKZGRi__iUI,5697
pip/_internal/commands/show.py,sha256=OREbPHF6UzvQiGLC1UIjG52Kc_jYDgcXZMYzgKXMbBI,8064
pip/_internal/commands/uninstall.py,sha256=DNTYAGJNljMO_YYBxrpcwj0FEl7lo_P55_98O6g2TNk,3526
pip/_internal/commands/wheel.py,sha256=xGSwLPYUM7jP_McD-wnM4D3zsP0n-NSkHFp4d0mAWIg,6168
pip/_internal/configuration.py,sha256=dKHBEl8aXnqVuRB0NW7Nz7lyYMwr7XCfkMZvUORaSRo,13153
pip/_internal/distributions/__init__.py,sha256=Hq6kt6gXBgjNit5hTTWLAzeCNOKoB-N0pGYSqehrli8,858
pip/_internal/distributions/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/distributions/__pycache__/base.cpython-39.pyc,,
pip/_internal/distributions/__pycache__/installed.cpython-39.pyc,,
pip/_internal/distributions/__pycache__/sdist.cpython-39.pyc,,
pip/_internal/distributions/__pycache__/wheel.cpython-39.pyc,,
pip/_internal/distributions/base.py,sha256=3FUYD8Gb4YuSu3pggC_FRctZBDbpm5ZK89tPksIUjoE,1172
pip/_internal/distributions/installed.py,sha256=QObf6KALGtwGx-Ap3Ua5FfcfaRMXWOk_wcrm7n5gYII,767
pip/_internal/distributions/sdist.py,sha256=3fsErGhAWdGzuO7Wea0F_8b9fKyUL1PoYet273OoAoM,5598
pip/_internal/distributions/wheel.py,sha256=-NgzdIs-w_hcer_U81yzgpVTljJRg5m79xufqvbjv0s,1115
pip/_internal/exceptions.py,sha256=XyfiRZn2X8WR61X-JF50BU72TdmVkneWPy9cnuKv2Rg,12762
pip/_internal/index/__init__.py,sha256=vpt-JeTZefh8a-FC22ZeBSXFVbuBcXSGiILhQZJaNpQ,30
pip/_internal/index/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/index/__pycache__/collector.cpython-39.pyc,,
pip/_internal/index/__pycache__/package_finder.cpython-39.pyc,,
pip/_internal/index/__pycache__/sources.cpython-39.pyc,,
pip/_internal/index/collector.py,sha256=7rhUeH0IU_dUMk13-lBAN9czRuJ6dbG76Un7xuQ36Ck,17534
pip/_internal/index/package_finder.py,sha256=_N9LIcwAXbGDN3BUDlikSB93WI9PHv3MvkJ4YapfrPY,36344
pip/_internal/index/sources.py,sha256=SVyPitv08-Qalh2_Bk5diAJ9GAA_d-a93koouQodAG0,6557
pip/_internal/locations/__init__.py,sha256=CpH6Cz9HSZ0csN_KPtOcvS9TGYLb7ZNGtCAAmVtjXW0,14444
pip/_internal/locations/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/locations/__pycache__/_distutils.cpython-39.pyc,,
pip/_internal/locations/__pycache__/_sysconfig.cpython-39.pyc,,
pip/_internal/locations/__pycache__/base.cpython-39.pyc,,
pip/_internal/locations/_distutils.py,sha256=Sk7tw8ZP1DWMYJ8MibABsa8IME2Ejv1PKeGlYQCBTZc,5871
pip/_internal/locations/_sysconfig.py,sha256=LQNKTJKyjVqxXaPntlBwdUqTG1xwYf6GVCKMbyRJx5M,7918
pip/_internal/locations/base.py,sha256=x5D1ONktmPJd8nnUTh-ELsAJ7fiXA-k-0a_vhfi2_Us,1579
pip/_internal/main.py,sha256=r-UnUe8HLo5XFJz8inTcOOTiu_sxNhgHb6VwlGUllOI,340
pip/_internal/metadata/__init__.py,sha256=HzTS3lRukzn-MJaEZkUQhAFe6ulxvNe7nNoBvUzy-DU,1660
pip/_internal/metadata/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/metadata/__pycache__/base.cpython-39.pyc,,
pip/_internal/metadata/__pycache__/pkg_resources.cpython-39.pyc,,
pip/_internal/metadata/base.py,sha256=gbNbb9blWO5hejmror-2n4_wLuYVrTyqwUluY9OmnMg,11103
pip/_internal/metadata/pkg_resources.py,sha256=-LiuojtAfl3yhNx8rnUKYN3ECBVCVcDWszCupithXAw,5089
pip/_internal/models/__init__.py,sha256=3DHUd_qxpPozfzouoqa9g9ts1Czr5qaHfFxbnxriepM,63
pip/_internal/models/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/models/__pycache__/candidate.cpython-39.pyc,,
pip/_internal/models/__pycache__/direct_url.cpython-39.pyc,,
pip/_internal/models/__pycache__/format_control.cpython-39.pyc,,
pip/_internal/models/__pycache__/index.cpython-39.pyc,,
pip/_internal/models/__pycache__/link.cpython-39.pyc,,
pip/_internal/models/__pycache__/scheme.cpython-39.pyc,,
pip/_internal/models/__pycache__/search_scope.cpython-39.pyc,,
pip/_internal/models/__pycache__/selection_prefs.cpython-39.pyc,,
pip/_internal/models/__pycache__/target_python.cpython-39.pyc,,
pip/_internal/models/__pycache__/wheel.cpython-39.pyc,,
pip/_internal/models/candidate.py,sha256=6pcABsaR7CfIHlbJbr2_kMkVJFL_yrYjTx6SVWUnCPQ,990
pip/_internal/models/direct_url.py,sha256=7XtGQSLLDQb5ZywI2EMnnLcddtf5CJLx44lMtTHPxFw,6350
pip/_internal/models/format_control.py,sha256=DJpMYjxeYKKQdwNcML2_F0vtAh-qnKTYe-CpTxQe-4g,2520
pip/_internal/models/index.py,sha256=tYnL8oxGi4aSNWur0mG8DAP7rC6yuha_MwJO8xw0crI,1030
pip/_internal/models/link.py,sha256=hoT_qsOBAgLBm9GKqpBrNF_mrEXeGXQE-aH_RX2cGgg,9817
pip/_internal/models/scheme.py,sha256=3EFQp_ICu_shH1-TBqhl0QAusKCPDFOlgHFeN4XowWs,738
pip/_internal/models/search_scope.py,sha256=LwloG0PJAmtI1hFXIypsD95kWE9xfR5hf_a2v1Vw7sk,4520
pip/_internal/models/selection_prefs.py,sha256=KZdi66gsR-_RUXUr9uejssk3rmTHrQVJWeNA2sV-VSY,1907
pip/_internal/models/target_python.py,sha256=qKpZox7J8NAaPmDs5C_aniwfPDxzvpkrCKqfwndG87k,3858
pip/_internal/models/wheel.py,sha256=hN9Ub-m-cAJCajCcQHyQNsqpcDCbPPDlEzBDwaBMc14,3500
pip/_internal/network/__init__.py,sha256=jf6Tt5nV_7zkARBrKojIXItgejvoegVJVKUbhAa5Ioc,50
pip/_internal/network/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/network/__pycache__/auth.cpython-39.pyc,,
pip/_internal/network/__pycache__/cache.cpython-39.pyc,,
pip/_internal/network/__pycache__/download.cpython-39.pyc,,
pip/_internal/network/__pycache__/lazy_wheel.cpython-39.pyc,,
pip/_internal/network/__pycache__/session.cpython-39.pyc,,
pip/_internal/network/__pycache__/utils.cpython-39.pyc,,
pip/_internal/network/__pycache__/xmlrpc.cpython-39.pyc,,
pip/_internal/network/auth.py,sha256=a3C7Xaa8kTJjXkdi_wrUjqaySc8Z9Yz7U6QIbXfzMyc,12190
pip/_internal/network/cache.py,sha256=HoprMCecwd4IS2wDZowc9B_OpaBlFjJYJl4xOxvtuwU,2100
pip/_internal/network/download.py,sha256=VmiR-KKIBugShZS4JlD7N8mq3hErx-0fK-D8aTYU3Og,6016
pip/_internal/network/lazy_wheel.py,sha256=1b8ZJ1w4bSBzpGzGwJR_CL2yQ6AFIwWQkS1vbPPw2XU,7627
pip/_internal/network/session.py,sha256=38IKGKC64MTVUIH5XOR1hr2pOCzp39RccykdmGAvqRU,16729
pip/_internal/network/utils.py,sha256=igLlTu_-q0LmL8FdJKq-Uj7AT_owrQ-T9FfyarkhK5U,4059
pip/_internal/network/xmlrpc.py,sha256=AzQgG4GgS152_cqmGr_Oz2MIXsCal-xfsis7fA7nmU0,1791
pip/_internal/operations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_internal/operations/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/operations/__pycache__/check.cpython-39.pyc,,
pip/_internal/operations/__pycache__/freeze.cpython-39.pyc,,
pip/_internal/operations/__pycache__/prepare.cpython-39.pyc,,
pip/_internal/operations/build/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_internal/operations/build/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/operations/build/__pycache__/metadata.cpython-39.pyc,,
pip/_internal/operations/build/__pycache__/metadata_editable.cpython-39.pyc,,
pip/_internal/operations/build/__pycache__/metadata_legacy.cpython-39.pyc,,
pip/_internal/operations/build/__pycache__/wheel.cpython-39.pyc,,
pip/_internal/operations/build/__pycache__/wheel_editable.cpython-39.pyc,,
pip/_internal/operations/build/__pycache__/wheel_legacy.cpython-39.pyc,,
pip/_internal/operations/build/metadata.py,sha256=KEsyrRFOBs2jhR-AcjyJyeV5GlsK1ubQqAB1j-b0Zu4,1119
pip/_internal/operations/build/metadata_editable.py,sha256=RnA8UgQqZwtBjBdqi1DW1gI3xaZ7qhKp1Xd-0YTktSk,1177
pip/_internal/operations/build/metadata_legacy.py,sha256=hjAJ75iKuJfKQYALZD0U6wJ7ElJ_BAEvjDxF8b9_l5k,1945
pip/_internal/operations/build/wheel.py,sha256=AO9XnTGhTgHtZmU8Dkbfo1OGr41rBuSDjIgAa4zUKgE,1063
pip/_internal/operations/build/wheel_editable.py,sha256=TVETY-L_M_dSEKBhTIcQOP75zKVXw8tuq1U354Mm30A,1405
pip/_internal/operations/build/wheel_legacy.py,sha256=aFMVOvyG-_CAIuXEVxuPJkz5UfCppSeu9FBPzn2tWvI,3047
pip/_internal/operations/check.py,sha256=ca4O9CkPt9Em9sLCf3H0iVt1GIcW7M8C0U5XooaBuT4,5109
pip/_internal/operations/freeze.py,sha256=ZiYw5GlUpLVx4VJHz4S1AP2JFNyvH0iq5kpcYj2ovyw,9770
pip/_internal/operations/install/__init__.py,sha256=mX7hyD2GNBO2mFGokDQ30r_GXv7Y_PLdtxcUv144e-s,51
pip/_internal/operations/install/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/operations/install/__pycache__/editable_legacy.cpython-39.pyc,,
pip/_internal/operations/install/__pycache__/legacy.cpython-39.pyc,,
pip/_internal/operations/install/__pycache__/wheel.cpython-39.pyc,,
pip/_internal/operations/install/editable_legacy.py,sha256=J4VCOHvk_BgA_wG02WmlDtSWLwZJ5S_g9SXBkjYojaw,1298
pip/_internal/operations/install/legacy.py,sha256=YKrZvH894Iqf2oEkYqF9O7CK1DjTgfZCP3R9Azpjeqo,4158
pip/_internal/operations/install/wheel.py,sha256=QuQyCZE-XjuJjDYRixo40oUt2ucFhNmSrCbcXY7A9aE,27412
pip/_internal/operations/prepare.py,sha256=Dg-lFYsFhYeib8NuQvGOxd0wxcmTqXfe_c5zYb3ep64,23838
pip/_internal/pyproject.py,sha256=YgcyleTgyuh7NwGH9j8_21htqnF_VxgKiPc4ecLBWKk,7215
pip/_internal/req/__init__.py,sha256=A7mUvT1KAcCYP3H7gUOTx2GRMlgoDur3H68Q0OJqM5A,2793
pip/_internal/req/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/req/__pycache__/constructors.cpython-39.pyc,,
pip/_internal/req/__pycache__/req_file.cpython-39.pyc,,
pip/_internal/req/__pycache__/req_install.cpython-39.pyc,,
pip/_internal/req/__pycache__/req_set.cpython-39.pyc,,
pip/_internal/req/__pycache__/req_tracker.cpython-39.pyc,,
pip/_internal/req/__pycache__/req_uninstall.cpython-39.pyc,,
pip/_internal/req/constructors.py,sha256=FVWkWeGt3fK0DTC3Gurd2jglp_Z10CK-abd6yM3HD-A,15285
pip/_internal/req/req_file.py,sha256=5N8OTouPCof-305StC2YK9HBxQMw-xO46skRoBPbkZo,17421
pip/_internal/req/req_install.py,sha256=N8xohvY6CIaVt6D1sU9VWv2muO9oPjixIDisqBXUr0E,33804
pip/_internal/req/req_set.py,sha256=kHYiLvkKRx21WaLTwOI-54Ng0SSzZZ9SE7FD0PsfvYA,7584
pip/_internal/req/req_tracker.py,sha256=jK7JDu-Wt73X-gqozrFtgJVlUlnQo0P4IQ4x4_gPlfM,4117
pip/_internal/req/req_uninstall.py,sha256=Uf8Kx-PgoQIudFq9Y7sFP-uz_I6x1gEfPpJJxujOf14,23748
pip/_internal/resolution/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_internal/resolution/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/resolution/__pycache__/base.cpython-39.pyc,,
pip/_internal/resolution/base.py,sha256=qlmh325SBVfvG6Me9gc5Nsh5sdwHBwzHBq6aEXtKsLA,583
pip/_internal/resolution/legacy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_internal/resolution/legacy/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/resolution/legacy/__pycache__/resolver.cpython-39.pyc,,
pip/_internal/resolution/legacy/resolver.py,sha256=Fr7bfTaKqXoaIfSte7mvFRLMb8pAaiozgydoHeIyiHI,18312
pip/_internal/resolution/resolvelib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_internal/resolution/resolvelib/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/resolution/resolvelib/__pycache__/base.cpython-39.pyc,,
pip/_internal/resolution/resolvelib/__pycache__/candidates.cpython-39.pyc,,
pip/_internal/resolution/resolvelib/__pycache__/factory.cpython-39.pyc,,
pip/_internal/resolution/resolvelib/__pycache__/found_candidates.cpython-39.pyc,,
pip/_internal/resolution/resolvelib/__pycache__/provider.cpython-39.pyc,,
pip/_internal/resolution/resolvelib/__pycache__/reporter.cpython-39.pyc,,
pip/_internal/resolution/resolvelib/__pycache__/requirements.cpython-39.pyc,,
pip/_internal/resolution/resolvelib/__pycache__/resolver.cpython-39.pyc,,
pip/_internal/resolution/resolvelib/base.py,sha256=u1O4fkvCO4mhmu5i32xrDv9AX5NgUci_eYVyBDQhTIM,5220
pip/_internal/resolution/resolvelib/candidates.py,sha256=5q66J90AoMKKwy1HsdXvEeleOJG8QkAbo8OidFekee0,18210
pip/_internal/resolution/resolvelib/factory.py,sha256=GnjXkaWRbfjdtQJcjcmkXUyPIgjckCHTu6wkneDMck8,26806
pip/_internal/resolution/resolvelib/found_candidates.py,sha256=hvL3Hoa9VaYo-qEOZkBi2Iqw251UDxPz-uMHVaWmLpE,5705
pip/_internal/resolution/resolvelib/provider.py,sha256=HUMHvkU001rtlqvs11NPmMtlyMMLlVQfAl6qXdsLxZQ,9205
pip/_internal/resolution/resolvelib/reporter.py,sha256=3ZVVYrs5PqvLFJkGLcuXoMK5mTInFzl31xjUpDBpZZk,2526
pip/_internal/resolution/resolvelib/requirements.py,sha256=pcsnwz7txyDNZUEOWJOZEfivy3COWHPf_DIU7fwZ-Kk,5455
pip/_internal/resolution/resolvelib/resolver.py,sha256=bkrMZs_jJHP_KFAbg36-lcN4Ums7ESgllup8piHXOz0,9580
pip/_internal/self_outdated_check.py,sha256=nVLSc0nl4JZ9VI7GsZvblE-zzT-T5ofmMgplned8s_s,6393
pip/_internal/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_internal/utils/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/utils/__pycache__/_log.cpython-39.pyc,,
pip/_internal/utils/__pycache__/appdirs.cpython-39.pyc,,
pip/_internal/utils/__pycache__/compat.cpython-39.pyc,,
pip/_internal/utils/__pycache__/compatibility_tags.cpython-39.pyc,,
pip/_internal/utils/__pycache__/datetime.cpython-39.pyc,,
pip/_internal/utils/__pycache__/deprecation.cpython-39.pyc,,
pip/_internal/utils/__pycache__/direct_url_helpers.cpython-39.pyc,,
pip/_internal/utils/__pycache__/distutils_args.cpython-39.pyc,,
pip/_internal/utils/__pycache__/egg_link.cpython-39.pyc,,
pip/_internal/utils/__pycache__/encoding.cpython-39.pyc,,
pip/_internal/utils/__pycache__/entrypoints.cpython-39.pyc,,
pip/_internal/utils/__pycache__/filesystem.cpython-39.pyc,,
pip/_internal/utils/__pycache__/filetypes.cpython-39.pyc,,
pip/_internal/utils/__pycache__/glibc.cpython-39.pyc,,
pip/_internal/utils/__pycache__/hashes.cpython-39.pyc,,
pip/_internal/utils/__pycache__/inject_securetransport.cpython-39.pyc,,
pip/_internal/utils/__pycache__/logging.cpython-39.pyc,,
pip/_internal/utils/__pycache__/misc.cpython-39.pyc,,
pip/_internal/utils/__pycache__/models.cpython-39.pyc,,
pip/_internal/utils/__pycache__/packaging.cpython-39.pyc,,
pip/_internal/utils/__pycache__/parallel.cpython-39.pyc,,
pip/_internal/utils/__pycache__/pkg_resources.cpython-39.pyc,,
pip/_internal/utils/__pycache__/setuptools_build.cpython-39.pyc,,
pip/_internal/utils/__pycache__/subprocess.cpython-39.pyc,,
pip/_internal/utils/__pycache__/temp_dir.cpython-39.pyc,,
pip/_internal/utils/__pycache__/unpacking.cpython-39.pyc,,
pip/_internal/utils/__pycache__/urls.cpython-39.pyc,,
pip/_internal/utils/__pycache__/virtualenv.cpython-39.pyc,,
pip/_internal/utils/__pycache__/wheel.cpython-39.pyc,,
pip/_internal/utils/_log.py,sha256=-jHLOE_THaZz5BFcCnoSL9EYAtJ0nXem49s9of4jvKw,1015
pip/_internal/utils/appdirs.py,sha256=swgcTKOm3daLeXTW6v5BUS2Ti2RvEnGRQYH_yDXklAo,1665
pip/_internal/utils/compat.py,sha256=ACyBfLgj3_XG-iA5omEDrXqDM0cQKzi8h8HRBInzG6Q,1884
pip/_internal/utils/compatibility_tags.py,sha256=ydin8QG8BHqYRsPY4OL6cmb44CbqXl1T0xxS97VhHkk,5377
pip/_internal/utils/datetime.py,sha256=m21Y3wAtQc-ji6Veb6k_M5g6A0ZyFI4egchTdnwh-pQ,242
pip/_internal/utils/deprecation.py,sha256=NKo8VqLioJ4nnXXGmW4KdasxF90EFHkZaHeX1fT08C8,3627
pip/_internal/utils/direct_url_helpers.py,sha256=6F1tc2rcKaCZmgfVwsE6ObIe_Pux23mUVYA-2D9wCFc,3206
pip/_internal/utils/distutils_args.py,sha256=mcAscyp80vTt3xAGTipnpgc83V-_wCvydNELVXLq7JI,1249
pip/_internal/utils/egg_link.py,sha256=5MVlpz5LirT4iLQq86OYzjXaYF0D4Qk1dprEI7ThST4,2203
pip/_internal/utils/encoding.py,sha256=bdZ3YgUpaOEBI5MP4-DEXiQarCW3V0rxw1kRz-TaU1Q,1169
pip/_internal/utils/entrypoints.py,sha256=aPvCnQVi9Hdk35Kloww_D5ibjUpqxgqcJP8O9VuMZek,1055
pip/_internal/utils/filesystem.py,sha256=rrl-rY1w8TYyKYndUyZlE9ffkQyA4-jI9x_59zXkn5s,5893
pip/_internal/utils/filetypes.py,sha256=i8XAQ0eFCog26Fw9yV0Yb1ygAqKYB1w9Cz9n0fj8gZU,716
pip/_internal/utils/glibc.py,sha256=tDfwVYnJCOC0BNVpItpy8CGLP9BjkxFHdl0mTS0J7fc,3110
pip/_internal/utils/hashes.py,sha256=anpZfFGIT6HcIj2td9NHtE8AWg6GeAIhwpP8GPvZE0E,4811
pip/_internal/utils/inject_securetransport.py,sha256=o-QRVMGiENrTJxw3fAhA7uxpdEdw6M41TjHYtSVRrcg,795
pip/_internal/utils/logging.py,sha256=oEkBvjj2A6NtVo75_Q-sL7qqH0bMFuY0pK4d8t40SKg,11532
pip/_internal/utils/misc.py,sha256=HfMsfc9LQbjNlf_EdYm79Ggxb63Nd9WOfoZSW3H4wmo,20432
pip/_internal/utils/models.py,sha256=5GoYU586SrxURMvDn_jBMJInitviJg4O5-iOU-6I0WY,1193
pip/_internal/utils/packaging.py,sha256=wA29RPW_KkorI2PIfkm9cWCytpcVbk-wubwUE8YTmbQ,2952
pip/_internal/utils/parallel.py,sha256=Z-vNgYsyiAx8JfZYbD6ZSzkkPfpk0ANQI_YpCBE0Pxo,3196
pip/_internal/utils/pkg_resources.py,sha256=A7HUm5lSk7n1_7qypyI4QkXErXgb5iXDlKPXo8r_1Hk,987
pip/_internal/utils/setuptools_build.py,sha256=yDrfmxUgd0A9SDKV-7UuSTA3YLmVav5J86G9Fym-2FE,4697
pip/_internal/utils/subprocess.py,sha256=cy2c6XRuYkX3XJF_lIjY5nQL2XygBHLJr6WXwTsjfnc,10058
pip/_internal/utils/temp_dir.py,sha256=zob3PYMVevONkheOMUp_4jDofrEY3HIu5DHK78cSspI,7662
pip/_internal/utils/unpacking.py,sha256=HUFlMEyCa9dPwdLh6sWeh95DeKytV8rsOyKShEw9y6g,8906
pip/_internal/utils/urls.py,sha256=AhaesUGl-9it6uvG6fsFPOr9ynFpGaTMk4t5XTX7Z_Q,1759
pip/_internal/utils/virtualenv.py,sha256=4_48qMzCwB_F5jIK5BC_ua7uiAMVifmQWU9NdaGUoVA,3459
pip/_internal/utils/wheel.py,sha256=YwsLfuDzPJhFLuGotZ69i0bxJVGSweGuIHG2SxZvZtM,6163
pip/_internal/vcs/__init__.py,sha256=UAqvzpbi0VbZo3Ub6skEeZAw-ooIZR-zX_WpCbxyCoU,596
pip/_internal/vcs/__pycache__/__init__.cpython-39.pyc,,
pip/_internal/vcs/__pycache__/bazaar.cpython-39.pyc,,
pip/_internal/vcs/__pycache__/git.cpython-39.pyc,,
pip/_internal/vcs/__pycache__/mercurial.cpython-39.pyc,,
pip/_internal/vcs/__pycache__/subversion.cpython-39.pyc,,
pip/_internal/vcs/__pycache__/versioncontrol.cpython-39.pyc,,
pip/_internal/vcs/bazaar.py,sha256=pNMHrCLx1jSJzu1t1ycDVwhXQ23XI4Q483cvewaTUDs,2857
pip/_internal/vcs/git.py,sha256=Ph_hThbfTG040GpJRz1z0ByiNkj5eHgF_shCCbNnCw0,17804
pip/_internal/vcs/mercurial.py,sha256=Mtk-Bqjnp3wlaOdHfNSxq86vgCwNc3-df6UqgIXvMjE,4945
pip/_internal/vcs/subversion.py,sha256=h4_nYmYN9kcfeTPp9wjkHhIeTpFZwoCp1UVm4hbBq90,11596
pip/_internal/vcs/versioncontrol.py,sha256=W1zLW32PeuYiCV1I_dhqlk_n74B_GFTjNC5xdxs-1Ek,22414
pip/_internal/wheel_builder.py,sha256=ZakEA7CEJyp70yHoX0QLE8TAwM7vxF9PYPtjBxT3F1I,12247
pip/_vendor/__init__.py,sha256=xjcBX0EP50pkaMdCssrsBXoZgo2hTtYxlcH1CIyA3T4,4708
pip/_vendor/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/__pycache__/distro.cpython-39.pyc,,
pip/_vendor/__pycache__/pyparsing.cpython-39.pyc,,
pip/_vendor/__pycache__/six.cpython-39.pyc,,
pip/_vendor/cachecontrol/__init__.py,sha256=pJtAaUxOsMPnytI1A3juAJkXYDr8krdSnsg4Yg3OBEg,302
pip/_vendor/cachecontrol/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-39.pyc,,
pip/_vendor/cachecontrol/__pycache__/adapter.cpython-39.pyc,,
pip/_vendor/cachecontrol/__pycache__/cache.cpython-39.pyc,,
pip/_vendor/cachecontrol/__pycache__/compat.cpython-39.pyc,,
pip/_vendor/cachecontrol/__pycache__/controller.cpython-39.pyc,,
pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-39.pyc,,
pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-39.pyc,,
pip/_vendor/cachecontrol/__pycache__/serialize.cpython-39.pyc,,
pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-39.pyc,,
pip/_vendor/cachecontrol/_cmd.py,sha256=URGE0KrA87QekCG3SGPatlSPT571dZTDjNa-ZXX3pDc,1295
pip/_vendor/cachecontrol/adapter.py,sha256=sSwaSYd93IIfCFU4tOMgSo6b2LCt_gBSaQUj8ktJFOA,4882
pip/_vendor/cachecontrol/cache.py,sha256=1fc4wJP8HYt1ycnJXeEw5pCpeBL2Cqxx6g9Fb0AYDWQ,805
pip/_vendor/cachecontrol/caches/__init__.py,sha256=-gHNKYvaeD0kOk5M74eOrsSgIKUtC6i6GfbmugGweEo,86
pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-39.pyc,,
pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-39.pyc,,
pip/_vendor/cachecontrol/caches/file_cache.py,sha256=nYVKsJtXh6gJXvdn1iWyrhxvkwpQrK-eKoMRzuiwkKk,4153
pip/_vendor/cachecontrol/caches/redis_cache.py,sha256=HxelMpNCo-dYr2fiJDwM3hhhRmxUYtB5tXm1GpAAT4Y,856
pip/_vendor/cachecontrol/compat.py,sha256=kHNvMRdt6s_Xwqq_9qJmr9ou3wYMOMUMxPPcwNxT8Mc,695
pip/_vendor/cachecontrol/controller.py,sha256=CWEX3pedIM9s60suf4zZPtm_JvVgnvogMGK_OiBG5F8,14149
pip/_vendor/cachecontrol/filewrapper.py,sha256=vACKO8Llzu_ZWyjV1Fxn1MA4TGU60N5N3GSrAFdAY2Q,2533
pip/_vendor/cachecontrol/heuristics.py,sha256=BFGHJ3yQcxvZizfo90LLZ04T_Z5XSCXvFotrp7Us0sc,4070
pip/_vendor/cachecontrol/serialize.py,sha256=vIa4jvq4x_KSOLdEIedoknX2aXYHQujLDFV4-F21Dno,7091
pip/_vendor/cachecontrol/wrapper.py,sha256=5LX0uJwkNQUtYSEw3aGmGu9WY8wGipd81mJ8lG0d0M4,690
pip/_vendor/certifi/__init__.py,sha256=-b78tXibbl0qtgCzv9tc9v6ozwcNX915lT9Tf4a9lds,62
pip/_vendor/certifi/__main__.py,sha256=1k3Cr95vCxxGRGDljrW3wMdpZdL3Nhf0u1n-k2qdsCY,255
pip/_vendor/certifi/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/certifi/__pycache__/__main__.cpython-39.pyc,,
pip/_vendor/certifi/__pycache__/core.cpython-39.pyc,,
pip/_vendor/certifi/cacert.pem,sha256=3i-hfE2K5o3CBKG2tYt6ehJWk2fP64o6Th83fHPoPp4,259465
pip/_vendor/certifi/core.py,sha256=gOFd0zHYlx4krrLEn982esOtmz3djiG0BFSDhgjlvcI,2840
pip/_vendor/chardet/__init__.py,sha256=mWZaWmvZkhwfBEAT9O1Y6nRTfKzhT7FHhQTTAujbqUA,3271
pip/_vendor/chardet/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/big5freq.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/big5prober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/chardistribution.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/charsetgroupprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/charsetprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/codingstatemachine.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/compat.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/cp949prober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/enums.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/escprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/escsm.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/eucjpprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/euckrfreq.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/euckrprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/euctwfreq.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/euctwprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/gb2312freq.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/gb2312prober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/hebrewprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/jisfreq.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/jpcntx.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/langbulgarianmodel.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/langgreekmodel.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/langhebrewmodel.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/langhungarianmodel.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/langrussianmodel.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/langthaimodel.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/langturkishmodel.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/latin1prober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/mbcharsetprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/mbcsgroupprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/mbcssm.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/sbcharsetprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/sbcsgroupprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/sjisprober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/universaldetector.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/utf8prober.cpython-39.pyc,,
pip/_vendor/chardet/__pycache__/version.cpython-39.pyc,,
pip/_vendor/chardet/big5freq.py,sha256=D_zK5GyzoVsRes0HkLJziltFQX0bKCLOrFe9_xDvO_8,31254
pip/_vendor/chardet/big5prober.py,sha256=kBxHbdetBpPe7xrlb-e990iot64g_eGSLd32lB7_h3M,1757
pip/_vendor/chardet/chardistribution.py,sha256=3woWS62KrGooKyqz4zQSnjFbJpa6V7g02daAibTwcl8,9411
pip/_vendor/chardet/charsetgroupprober.py,sha256=GZLReHP6FRRn43hvSOoGCxYamErKzyp6RgOQxVeC3kg,3839
pip/_vendor/chardet/charsetprober.py,sha256=KSmwJErjypyj0bRZmC5F5eM7c8YQgLYIjZXintZNstg,5110
pip/_vendor/chardet/cli/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
pip/_vendor/chardet/cli/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/chardet/cli/__pycache__/chardetect.cpython-39.pyc,,
pip/_vendor/chardet/cli/chardetect.py,sha256=XK5zqjUG2a4-y6eLHZ8ThYcp6WWUrdlmELxNypcc2SE,2747
pip/_vendor/chardet/codingstatemachine.py,sha256=VYp_6cyyki5sHgXDSZnXW4q1oelHc3cu9AyQTX7uug8,3590
pip/_vendor/chardet/compat.py,sha256=40zr6wICZwknxyuLGGcIOPyve8DTebBCbbvttvnmp5Q,1200
pip/_vendor/chardet/cp949prober.py,sha256=TZ434QX8zzBsnUvL_8wm4AQVTZ2ZkqEEQL_lNw9f9ow,1855
pip/_vendor/chardet/enums.py,sha256=Aimwdb9as1dJKZaFNUH2OhWIVBVd6ZkJJ_WK5sNY8cU,1661
pip/_vendor/chardet/escprober.py,sha256=kkyqVg1Yw3DIOAMJ2bdlyQgUFQhuHAW8dUGskToNWSc,3950
pip/_vendor/chardet/escsm.py,sha256=RuXlgNvTIDarndvllNCk5WZBIpdCxQ0kcd9EAuxUh84,10510
pip/_vendor/chardet/eucjpprober.py,sha256=iD8Jdp0ISRjgjiVN7f0e8xGeQJ5GM2oeZ1dA8nbSeUw,3749
pip/_vendor/chardet/euckrfreq.py,sha256=-7GdmvgWez4-eO4SuXpa7tBiDi5vRXQ8WvdFAzVaSfo,13546
pip/_vendor/chardet/euckrprober.py,sha256=MqFMTQXxW4HbzIpZ9lKDHB3GN8SP4yiHenTmf8g_PxY,1748
pip/_vendor/chardet/euctwfreq.py,sha256=No1WyduFOgB5VITUA7PLyC5oJRNzRyMbBxaKI1l16MA,31621
pip/_vendor/chardet/euctwprober.py,sha256=13p6EP4yRaxqnP4iHtxHOJ6R2zxHq1_m8hTRjzVZ95c,1747
pip/_vendor/chardet/gb2312freq.py,sha256=JX8lsweKLmnCwmk8UHEQsLgkr_rP_kEbvivC4qPOrlc,20715
pip/_vendor/chardet/gb2312prober.py,sha256=gGvIWi9WhDjE-xQXHvNIyrnLvEbMAYgyUSZ65HUfylw,1754
pip/_vendor/chardet/hebrewprober.py,sha256=c3SZ-K7hvyzGY6JRAZxJgwJ_sUS9k0WYkvMY00YBYFo,13838
pip/_vendor/chardet/jisfreq.py,sha256=vpmJv2Bu0J8gnMVRPHMFefTRvo_ha1mryLig8CBwgOg,25777
pip/_vendor/chardet/jpcntx.py,sha256=PYlNqRUQT8LM3cT5FmHGP0iiscFlTWED92MALvBungo,19643
pip/_vendor/chardet/langbulgarianmodel.py,sha256=rk9CJpuxO0bObboJcv6gNgWuosYZmd8qEEds5y7DS_Y,105697
pip/_vendor/chardet/langgreekmodel.py,sha256=S-uNQ1ihC75yhBvSux24gLFZv3QyctMwC6OxLJdX-bw,99571
pip/_vendor/chardet/langhebrewmodel.py,sha256=DzPP6TPGG_-PV7tqspu_d8duueqm7uN-5eQ0aHUw1Gg,98776
pip/_vendor/chardet/langhungarianmodel.py,sha256=RtJH7DZdsmaHqyK46Kkmnk5wQHiJwJPPJSqqIlpeZRc,102498
pip/_vendor/chardet/langrussianmodel.py,sha256=THqJOhSxiTQcHboDNSc5yofc2koXXQFHFyjtyuntUfM,131180
pip/_vendor/chardet/langthaimodel.py,sha256=R1wXHnUMtejpw0JnH_JO8XdYasME6wjVqp1zP7TKLgg,103312
pip/_vendor/chardet/langturkishmodel.py,sha256=rfwanTptTwSycE4-P-QasPmzd-XVYgevytzjlEzBBu8,95946
pip/_vendor/chardet/latin1prober.py,sha256=S2IoORhFk39FEFOlSFWtgVybRiP6h7BlLldHVclNkU8,5370
pip/_vendor/chardet/mbcharsetprober.py,sha256=AR95eFH9vuqSfvLQZN-L5ijea25NOBCoXqw8s5O9xLQ,3413
pip/_vendor/chardet/mbcsgroupprober.py,sha256=h6TRnnYq2OxG1WdD5JOyxcdVpn7dG0q-vB8nWr5mbh4,2012
pip/_vendor/chardet/mbcssm.py,sha256=SY32wVIF3HzcjY3BaEspy9metbNSKxIIB0RKPn7tjpI,25481
pip/_vendor/chardet/metadata/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_vendor/chardet/metadata/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/chardet/metadata/__pycache__/languages.cpython-39.pyc,,
pip/_vendor/chardet/metadata/languages.py,sha256=41tLq3eLSrBEbEVVQpVGFq9K7o1ln9b1HpY1l0hCUQo,19474
pip/_vendor/chardet/sbcharsetprober.py,sha256=nmyMyuxzG87DN6K3Rk2MUzJLMLR69MrWpdnHzOwVUwQ,6136
pip/_vendor/chardet/sbcsgroupprober.py,sha256=hqefQuXmiFyDBArOjujH6hd6WFXlOD1kWCsxDhjx5Vc,4309
pip/_vendor/chardet/sjisprober.py,sha256=IIt-lZj0WJqK4rmUZzKZP4GJlE8KUEtFYVuY96ek5MQ,3774
pip/_vendor/chardet/universaldetector.py,sha256=DpZTXCX0nUHXxkQ9sr4GZxGB_hveZ6hWt3uM94cgWKs,12503
pip/_vendor/chardet/utf8prober.py,sha256=IdD8v3zWOsB8OLiyPi-y_fqwipRFxV9Nc1eKBLSuIEw,2766
pip/_vendor/chardet/version.py,sha256=A4CILFAd8MRVG1HoXPp45iK9RLlWyV73a1EtwE8Tvn8,242
pip/_vendor/colorama/__init__.py,sha256=pCdErryzLSzDW5P-rRPBlPLqbBtIRNJB6cMgoeJns5k,239
pip/_vendor/colorama/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/colorama/__pycache__/ansi.cpython-39.pyc,,
pip/_vendor/colorama/__pycache__/ansitowin32.cpython-39.pyc,,
pip/_vendor/colorama/__pycache__/initialise.cpython-39.pyc,,
pip/_vendor/colorama/__pycache__/win32.cpython-39.pyc,,
pip/_vendor/colorama/__pycache__/winterm.cpython-39.pyc,,
pip/_vendor/colorama/ansi.py,sha256=Top4EeEuaQdBWdteKMEcGOTeKeF19Q-Wo_6_Cj5kOzQ,2522
pip/_vendor/colorama/ansitowin32.py,sha256=yV7CEmCb19MjnJKODZEEvMH_fnbJhwnpzo4sxZuGXmA,10517
pip/_vendor/colorama/initialise.py,sha256=PprovDNxMTrvoNHFcL2NZjpH2XzDc8BLxLxiErfUl4k,1915
pip/_vendor/colorama/win32.py,sha256=bJ8Il9jwaBN5BJ8bmN6FoYZ1QYuMKv2j8fGrXh7TJjw,5404
pip/_vendor/colorama/winterm.py,sha256=2y_2b7Zsv34feAsP67mLOVc-Bgq51mdYGo571VprlrM,6438
pip/_vendor/distlib/__init__.py,sha256=HTGLP7dnTRTQCbEZNGUxBq-0sobr0KQUMn3yd6uEObA,581
pip/_vendor/distlib/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/compat.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/database.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/index.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/locators.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/manifest.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/markers.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/metadata.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/resources.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/scripts.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/util.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/version.cpython-39.pyc,,
pip/_vendor/distlib/__pycache__/wheel.cpython-39.pyc,,
pip/_vendor/distlib/_backport/__init__.py,sha256=bqS_dTOH6uW9iGgd0uzfpPjo6vZ4xpPZ7kyfZJ2vNaw,274
pip/_vendor/distlib/_backport/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/distlib/_backport/__pycache__/misc.cpython-39.pyc,,
pip/_vendor/distlib/_backport/__pycache__/shutil.cpython-39.pyc,,
pip/_vendor/distlib/_backport/__pycache__/sysconfig.cpython-39.pyc,,
pip/_vendor/distlib/_backport/__pycache__/tarfile.cpython-39.pyc,,
pip/_vendor/distlib/_backport/misc.py,sha256=KWecINdbFNOxSOP1fGF680CJnaC6S4fBRgEtaYTw0ig,971
pip/_vendor/distlib/_backport/shutil.py,sha256=IX_G2NPqwecJibkIDje04bqu0xpHkfSQ2GaGdEVqM5Y,25707
pip/_vendor/distlib/_backport/sysconfig.cfg,sha256=swZKxq9RY5e9r3PXCrlvQPMsvOdiWZBTHLEbqS8LJLU,2617
pip/_vendor/distlib/_backport/sysconfig.py,sha256=BQHFlb6pubCl_dvT1NjtzIthylofjKisox239stDg0U,26854
pip/_vendor/distlib/_backport/tarfile.py,sha256=Ihp7rXRcjbIKw8COm9wSePV9ARGXbSF9gGXAMn2Q-KU,92628
pip/_vendor/distlib/compat.py,sha256=fbsxc5PfJ2wBx1K4k6mQ2goAYs-GZW0tcOPIlE_vf0I,41495
pip/_vendor/distlib/database.py,sha256=Kl0YvPQKc4OcpVi7k5cFziydM1xOK8iqdxLGXgbZHV4,51059
pip/_vendor/distlib/index.py,sha256=UfcimNW19AB7IKWam4VaJbXuCBvArKfSxhV16EwavzE,20739
pip/_vendor/distlib/locators.py,sha256=AKlB3oZvfOTg4E0CtfwOzujFL19X5V4XUA4eHdKOu44,51965
pip/_vendor/distlib/manifest.py,sha256=nQEhYmgoreaBZzyFzwYsXxJARu3fo4EkunU163U16iE,14811
pip/_vendor/distlib/markers.py,sha256=9c70ISEKwBjmUOHuIdOygVnRVESOKdNYp9a2TVn4qrI,4989
pip/_vendor/distlib/metadata.py,sha256=vatoxFdmBr6ie-sTVXVNPOPG3uwMDWJTnEECnm7xDCw,39109
pip/_vendor/distlib/resources.py,sha256=LwbPksc0A1JMbi6XnuPdMBUn83X7BPuFNWqPGEKI698,10820
pip/_vendor/distlib/scripts.py,sha256=tjSwENINeV91ROZxec5zTSMRg2jEeKc4enyCHDzNvEE,17720
pip/_vendor/distlib/t32.exe,sha256=NS3xBCVAld35JVFNmb-1QRyVtThukMrwZVeXn4LhaEQ,96768
pip/_vendor/distlib/t64-arm.exe,sha256=8WGDh6aI8WJAjngRNQpyJpB21Sv20PCYYFSNW1fWd6w,180736
pip/_vendor/distlib/t64.exe,sha256=oAqHes78rUWVM0OtVqIhUvequl_PKhAhXYQWnUf7zR0,105984
pip/_vendor/distlib/util.py,sha256=0Uq_qa63FCLtdyNdWvMnmPbiSvVa-ykHM2E8HT7LSIU,67766
pip/_vendor/distlib/version.py,sha256=WG__LyAa2GwmA6qSoEJtvJE8REA1LZpbSizy8WvhJLk,23513
pip/_vendor/distlib/w32.exe,sha256=lJtnZdeUxTZWya_EW5DZos_K5rswRECGspIl8ZJCIXs,90112
pip/_vendor/distlib/w64-arm.exe,sha256=Q_HdzVu9zxYdaBa3m0iJ5_ddLOEqtPe8x30WADoXza8,166400
pip/_vendor/distlib/w64.exe,sha256=0aRzoN2BO9NWW4ENy4_4vHkHR4qZTFZNVSAJJYlODTI,99840
pip/_vendor/distlib/wheel.py,sha256=pj5VVCjqZMcHvgizORWwAFPS7hOk61CZ59dxP8laQ4E,42943
pip/_vendor/distro.py,sha256=O1EeHMq1-xAO373JI2_6pYEtd09yEkxtmrYkdY-9S-w,48414
pip/_vendor/html5lib/__init__.py,sha256=BYzcKCqeEii52xDrqBFruhnmtmkiuHXFyFh-cglQ8mk,1160
pip/_vendor/html5lib/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/html5lib/__pycache__/_ihatexml.cpython-39.pyc,,
pip/_vendor/html5lib/__pycache__/_inputstream.cpython-39.pyc,,
pip/_vendor/html5lib/__pycache__/_tokenizer.cpython-39.pyc,,
pip/_vendor/html5lib/__pycache__/_utils.cpython-39.pyc,,
pip/_vendor/html5lib/__pycache__/constants.cpython-39.pyc,,
pip/_vendor/html5lib/__pycache__/html5parser.cpython-39.pyc,,
pip/_vendor/html5lib/__pycache__/serializer.cpython-39.pyc,,
pip/_vendor/html5lib/_ihatexml.py,sha256=ifOwF7pXqmyThIXc3boWc96s4MDezqRrRVp7FwDYUFs,16728
pip/_vendor/html5lib/_inputstream.py,sha256=jErNASMlkgs7MpOM9Ve_VdLDJyFFweAjLuhVutZz33U,32353
pip/_vendor/html5lib/_tokenizer.py,sha256=04mgA2sNTniutl2fxFv-ei5bns4iRaPxVXXHh_HrV_4,77040
pip/_vendor/html5lib/_trie/__init__.py,sha256=nqfgO910329BEVJ5T4psVwQtjd2iJyEXQ2-X8c1YxwU,109
pip/_vendor/html5lib/_trie/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/html5lib/_trie/__pycache__/_base.cpython-39.pyc,,
pip/_vendor/html5lib/_trie/__pycache__/py.cpython-39.pyc,,
pip/_vendor/html5lib/_trie/_base.py,sha256=CaybYyMro8uERQYjby2tTeSUatnWDfWroUN9N7ety5w,1013
pip/_vendor/html5lib/_trie/py.py,sha256=wXmQLrZRf4MyWNyg0m3h81m9InhLR7GJ002mIIZh-8o,1775
pip/_vendor/html5lib/_utils.py,sha256=Dx9AKntksRjFT1veBj7I362pf5OgIaT0zglwq43RnfU,4931
pip/_vendor/html5lib/constants.py,sha256=Ll-yzLU_jcjyAI_h57zkqZ7aQWE5t5xA4y_jQgoUUhw,83464
pip/_vendor/html5lib/filters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_vendor/html5lib/filters/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/html5lib/filters/__pycache__/alphabeticalattributes.cpython-39.pyc,,
pip/_vendor/html5lib/filters/__pycache__/base.cpython-39.pyc,,
pip/_vendor/html5lib/filters/__pycache__/inject_meta_charset.cpython-39.pyc,,
pip/_vendor/html5lib/filters/__pycache__/lint.cpython-39.pyc,,
pip/_vendor/html5lib/filters/__pycache__/optionaltags.cpython-39.pyc,,
pip/_vendor/html5lib/filters/__pycache__/sanitizer.cpython-39.pyc,,
pip/_vendor/html5lib/filters/__pycache__/whitespace.cpython-39.pyc,,
pip/_vendor/html5lib/filters/alphabeticalattributes.py,sha256=lViZc2JMCclXi_5gduvmdzrRxtO5Xo9ONnbHBVCsykU,919
pip/_vendor/html5lib/filters/base.py,sha256=z-IU9ZAYjpsVsqmVt7kuWC63jR11hDMr6CVrvuao8W0,286
pip/_vendor/html5lib/filters/inject_meta_charset.py,sha256=egDXUEHXmAG9504xz0K6ALDgYkvUrC2q15YUVeNlVQg,2945
pip/_vendor/html5lib/filters/lint.py,sha256=jk6q56xY0ojiYfvpdP-OZSm9eTqcAdRqhCoPItemPYA,3643
pip/_vendor/html5lib/filters/optionaltags.py,sha256=8lWT75J0aBOHmPgfmqTHSfPpPMp01T84NKu0CRedxcE,10588
pip/_vendor/html5lib/filters/sanitizer.py,sha256=m6oGmkBhkGAnn2nV6D4hE78SCZ6WEnK9rKdZB3uXBIc,26897
pip/_vendor/html5lib/filters/whitespace.py,sha256=8eWqZxd4UC4zlFGW6iyY6f-2uuT8pOCSALc3IZt7_t4,1214
pip/_vendor/html5lib/html5parser.py,sha256=anr-aXre_ImfrkQ35c_rftKXxC80vJCREKe06Tq15HA,117186
pip/_vendor/html5lib/serializer.py,sha256=_PpvcZF07cwE7xr9uKkZqh5f4UEaI8ltCU2xPJzaTpk,15759
pip/_vendor/html5lib/treeadapters/__init__.py,sha256=A0rY5gXIe4bJOiSGRO_j_tFhngRBO8QZPzPtPw5dFzo,679
pip/_vendor/html5lib/treeadapters/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/html5lib/treeadapters/__pycache__/genshi.cpython-39.pyc,,
pip/_vendor/html5lib/treeadapters/__pycache__/sax.cpython-39.pyc,,
pip/_vendor/html5lib/treeadapters/genshi.py,sha256=CH27pAsDKmu4ZGkAUrwty7u0KauGLCZRLPMzaO3M5vo,1715
pip/_vendor/html5lib/treeadapters/sax.py,sha256=BKS8woQTnKiqeffHsxChUqL4q2ZR_wb5fc9MJ3zQC8s,1776
pip/_vendor/html5lib/treebuilders/__init__.py,sha256=AysSJyvPfikCMMsTVvaxwkgDieELD5dfR8FJIAuq7hY,3592
pip/_vendor/html5lib/treebuilders/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/html5lib/treebuilders/__pycache__/base.cpython-39.pyc,,
pip/_vendor/html5lib/treebuilders/__pycache__/dom.cpython-39.pyc,,
pip/_vendor/html5lib/treebuilders/__pycache__/etree.cpython-39.pyc,,
pip/_vendor/html5lib/treebuilders/__pycache__/etree_lxml.cpython-39.pyc,,
pip/_vendor/html5lib/treebuilders/base.py,sha256=z-o51vt9r_l2IDG5IioTOKGzZne4Fy3_Fc-7ztrOh4I,14565
pip/_vendor/html5lib/treebuilders/dom.py,sha256=22whb0C71zXIsai5mamg6qzBEiigcBIvaDy4Asw3at0,8925
pip/_vendor/html5lib/treebuilders/etree.py,sha256=w5ZFpKk6bAxnrwD2_BrF5EVC7vzz0L3LMi9Sxrbc_8w,12836
pip/_vendor/html5lib/treebuilders/etree_lxml.py,sha256=9gqDjs-IxsPhBYa5cpvv2FZ1KZlG83Giusy2lFmvIkE,14766
pip/_vendor/html5lib/treewalkers/__init__.py,sha256=OBPtc1TU5mGyy18QDMxKEyYEz0wxFUUNj5v0-XgmYhY,5719
pip/_vendor/html5lib/treewalkers/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/html5lib/treewalkers/__pycache__/base.cpython-39.pyc,,
pip/_vendor/html5lib/treewalkers/__pycache__/dom.cpython-39.pyc,,
pip/_vendor/html5lib/treewalkers/__pycache__/etree.cpython-39.pyc,,
pip/_vendor/html5lib/treewalkers/__pycache__/etree_lxml.cpython-39.pyc,,
pip/_vendor/html5lib/treewalkers/__pycache__/genshi.cpython-39.pyc,,
pip/_vendor/html5lib/treewalkers/base.py,sha256=ouiOsuSzvI0KgzdWP8PlxIaSNs9falhbiinAEc_UIJY,7476
pip/_vendor/html5lib/treewalkers/dom.py,sha256=EHyFR8D8lYNnyDU9lx_IKigVJRyecUGua0mOi7HBukc,1413
pip/_vendor/html5lib/treewalkers/etree.py,sha256=xo1L5m9VtkfpFJK0pFmkLVajhqYYVisVZn3k9kYpPkI,4551
pip/_vendor/html5lib/treewalkers/etree_lxml.py,sha256=_b0LAVWLcVu9WaU_-w3D8f0IRSpCbjf667V-3NRdhTw,6357
pip/_vendor/html5lib/treewalkers/genshi.py,sha256=4D2PECZ5n3ZN3qu3jMl9yY7B81jnQApBQSVlfaIuYbA,2309
pip/_vendor/idna/__init__.py,sha256=KJQN1eQBr8iIK5SKrJ47lXvxG0BJ7Lm38W4zT0v_8lk,849
pip/_vendor/idna/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/idna/__pycache__/codec.cpython-39.pyc,,
pip/_vendor/idna/__pycache__/compat.cpython-39.pyc,,
pip/_vendor/idna/__pycache__/core.cpython-39.pyc,,
pip/_vendor/idna/__pycache__/idnadata.cpython-39.pyc,,
pip/_vendor/idna/__pycache__/intranges.cpython-39.pyc,,
pip/_vendor/idna/__pycache__/package_data.cpython-39.pyc,,
pip/_vendor/idna/__pycache__/uts46data.cpython-39.pyc,,
pip/_vendor/idna/codec.py,sha256=QsPFD3Je8gN17rfs14e7zTGRWlnL7bNf2ZqcHTRVYHs,3453
pip/_vendor/idna/compat.py,sha256=5A9xR04puRHCsyjBNewZlVSiarth7K1bZqyEOeob1fA,360
pip/_vendor/idna/core.py,sha256=icq2P13S6JMjoXgKhhd6ihhby7QsnZlNfniH6fLyf6U,12826
pip/_vendor/idna/idnadata.py,sha256=cl4x9RLdw1ZMtEEbvKwAsX-Id3AdIjO5U3HaoKM6VGs,42350
pip/_vendor/idna/intranges.py,sha256=EqgXwyATAn-CTACInqH9tYsYAitGB2VcQ50RZt_Cpjs,1933
pip/_vendor/idna/package_data.py,sha256=_028B4fvadRIaXMwMYjhuQPP3AxTIt1IRE7X6RDR4Mk,21
pip/_vendor/idna/uts46data.py,sha256=DGzwDQv8JijY17I_7ondo3stjFjNnjvVAbA-z0k1XOE,201849
pip/_vendor/msgpack/__init__.py,sha256=2gJwcsTIaAtCM0GMi2rU-_Y6kILeeQuqRkrQ22jSANc,1118
pip/_vendor/msgpack/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/msgpack/__pycache__/_version.cpython-39.pyc,,
pip/_vendor/msgpack/__pycache__/exceptions.cpython-39.pyc,,
pip/_vendor/msgpack/__pycache__/ext.cpython-39.pyc,,
pip/_vendor/msgpack/__pycache__/fallback.cpython-39.pyc,,
pip/_vendor/msgpack/_version.py,sha256=dFR03oACnj4lsKd1RnwD7BPMiVI_FMygdOL1TOBEw_U,20
pip/_vendor/msgpack/exceptions.py,sha256=dCTWei8dpkrMsQDcjQk74ATl9HsIBH0ybt8zOPNqMYc,1081
pip/_vendor/msgpack/ext.py,sha256=4l356Y4sVEcvCla2dh_cL57vh4GMhZfa3kuWHFHYz6A,6088
pip/_vendor/msgpack/fallback.py,sha256=Rpv1Ldey8f8ueRnQznD4ARKBn9dxM2PywVNkXI8IEeE,38026
pip/_vendor/packaging/__about__.py,sha256=p_OQloqH2saadcbUQmWEsWK857dI6_ff5E3aSiCqGFA,661
pip/_vendor/packaging/__init__.py,sha256=b9Kk5MF7KxhhLgcDmiUWukN-LatWFxPdNug0joPhHSk,497
pip/_vendor/packaging/__pycache__/__about__.cpython-39.pyc,,
pip/_vendor/packaging/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/packaging/__pycache__/_manylinux.cpython-39.pyc,,
pip/_vendor/packaging/__pycache__/_musllinux.cpython-39.pyc,,
pip/_vendor/packaging/__pycache__/_structures.cpython-39.pyc,,
pip/_vendor/packaging/__pycache__/markers.cpython-39.pyc,,
pip/_vendor/packaging/__pycache__/requirements.cpython-39.pyc,,
pip/_vendor/packaging/__pycache__/specifiers.cpython-39.pyc,,
pip/_vendor/packaging/__pycache__/tags.cpython-39.pyc,,
pip/_vendor/packaging/__pycache__/utils.cpython-39.pyc,,
pip/_vendor/packaging/__pycache__/version.cpython-39.pyc,,
pip/_vendor/packaging/_manylinux.py,sha256=XcbiXB-qcjv3bcohp6N98TMpOP4_j3m-iOA8ptK2GWY,11488
pip/_vendor/packaging/_musllinux.py,sha256=z5yeG1ygOPx4uUyLdqj-p8Dk5UBb5H_b0NIjW9yo8oA,4378
pip/_vendor/packaging/_structures.py,sha256=TMiAgFbdUOPmIfDIfiHc3KFhSJ8kMjof2QS5I-2NyQ8,1629
pip/_vendor/packaging/markers.py,sha256=AJBOcY8Oq0kYc570KuuPTkvuqjAlhufaE2c9sCUbm64,8487
pip/_vendor/packaging/requirements.py,sha256=NtDlPBtojpn1IUC85iMjPNsUmufjpSlwnNA-Xb4m5NA,4676
pip/_vendor/packaging/specifiers.py,sha256=MZ-fYcNL3u7pNrt-6g2EQO7AbRXkjc-SPEYwXMQbLmc,30964
pip/_vendor/packaging/tags.py,sha256=akIerYw8W0sz4OW9HHozgawWnbt2GGOPm3sviW0jowY,15714
pip/_vendor/packaging/utils.py,sha256=dJjeat3BS-TYn1RrUFVwufUMasbtzLfYRoy_HXENeFQ,4200
pip/_vendor/packaging/version.py,sha256=_fLRNrFrxYcHVfyo8vk9j8s6JM8N_xsSxVFr6RJyco8,14665
pip/_vendor/pep517/__init__.py,sha256=Y1bATL2qbFNN6M_DQa4yyrwqjpIiL-j9T6kBmR0DS14,130
pip/_vendor/pep517/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/pep517/__pycache__/build.cpython-39.pyc,,
pip/_vendor/pep517/__pycache__/check.cpython-39.pyc,,
pip/_vendor/pep517/__pycache__/colorlog.cpython-39.pyc,,
pip/_vendor/pep517/__pycache__/compat.cpython-39.pyc,,
pip/_vendor/pep517/__pycache__/dirtools.cpython-39.pyc,,
pip/_vendor/pep517/__pycache__/envbuild.cpython-39.pyc,,
pip/_vendor/pep517/__pycache__/meta.cpython-39.pyc,,
pip/_vendor/pep517/__pycache__/wrappers.cpython-39.pyc,,
pip/_vendor/pep517/build.py,sha256=2bar6EdjwIz2Dlfy94qdxn3oA9mVnnny40mfoT5f-qI,3457
pip/_vendor/pep517/check.py,sha256=bCORq1WrHjhpTONa-zpAqG0EB9rHNuhO1ORu6DsDuL8,6084
pip/_vendor/pep517/colorlog.py,sha256=Tk9AuYm_cLF3BKTBoSTJt9bRryn0aFojIQOwbfVUTxQ,4098
pip/_vendor/pep517/compat.py,sha256=NmLImE5oiDT3gbEhJ4w7xeoMFcpAPrGu_NltBytSJUY,1253
pip/_vendor/pep517/dirtools.py,sha256=2mkAkAL0mRz_elYFjRKuekTJVipH1zTn4tbf1EDev84,1129
pip/_vendor/pep517/envbuild.py,sha256=zFde--rmzjXMLXcm7SA_3hDtgk5VCTA8hjpk88RbF6E,6100
pip/_vendor/pep517/in_process/__init__.py,sha256=MyWoAi8JHdcBv7yXuWpUSVADbx6LSB9rZh7kTIgdA8Y,563
pip/_vendor/pep517/in_process/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/pep517/in_process/__pycache__/_in_process.cpython-39.pyc,,
pip/_vendor/pep517/in_process/_in_process.py,sha256=D3waguyNSGcwosociD5USfcycYr2RCzCjYtxX5UHQmQ,11201
pip/_vendor/pep517/meta.py,sha256=8mnM5lDnT4zXQpBTliJbRGfesH7iioHwozbDxALPS9Y,2463
pip/_vendor/pep517/wrappers.py,sha256=impq7Cz_LL1iDF1iiOzYWB4MaEu6O6Gps7TJ5qsJz1Q,13429
pip/_vendor/pkg_resources/__init__.py,sha256=NnpQ3g6BCHzpMgOR_OLBmYtniY4oOzdKpwqghfq_6ug,108287
pip/_vendor/pkg_resources/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/pkg_resources/__pycache__/py31compat.cpython-39.pyc,,
pip/_vendor/pkg_resources/py31compat.py,sha256=CRk8fkiPRDLsbi5pZcKsHI__Pbmh_94L8mr9Qy9Ab2U,562
pip/_vendor/platformdirs/__init__.py,sha256=3iz938Grn-6IRg8gSuMxJtgiBfH0xqRqAlMBo-vPGUw,12859
pip/_vendor/platformdirs/__main__.py,sha256=SzGvNkYWuosrWXs2yL2VqcXEh-kivWq3-53-BpTco0o,1140
pip/_vendor/platformdirs/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/platformdirs/__pycache__/__main__.cpython-39.pyc,,
pip/_vendor/platformdirs/__pycache__/android.cpython-39.pyc,,
pip/_vendor/platformdirs/__pycache__/api.cpython-39.pyc,,
pip/_vendor/platformdirs/__pycache__/macos.cpython-39.pyc,,
pip/_vendor/platformdirs/__pycache__/unix.cpython-39.pyc,,
pip/_vendor/platformdirs/__pycache__/version.cpython-39.pyc,,
pip/_vendor/platformdirs/__pycache__/windows.cpython-39.pyc,,
pip/_vendor/platformdirs/android.py,sha256=dadYfG2oc900YVi5AONQWw2WEvk-kmgkZs5iiNSiWiE,3994
pip/_vendor/platformdirs/api.py,sha256=yhRR6RkcZzPBfJD4Sn90vCHZbRMQ9nwtnRaa93X1wR8,4922
pip/_vendor/platformdirs/macos.py,sha256=vIowPYKkHksJcWVjqHQoa-oI1i2D0S7gsSdyFzZDJEA,2619
pip/_vendor/platformdirs/unix.py,sha256=7JdDnsyTFn2IHC8IFdiNYH7_R8VS-rPx8ivh4_dT1DU,6905
pip/_vendor/platformdirs/version.py,sha256=uUssQTtUqVP-PxbOSNBzNGRW27X5u1GvOllg--kzyuw,80
pip/_vendor/platformdirs/windows.py,sha256=91nNccR0CSxX_myMppSvUT1qtQao6kaO96e6ior8-Xw,6416
pip/_vendor/progress/__init__.py,sha256=1HejNZtv2ouUNQeStUDAtZrtwkz_3FmYKQ476hJ7zOs,5294
pip/_vendor/progress/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/progress/__pycache__/bar.cpython-39.pyc,,
pip/_vendor/progress/__pycache__/colors.cpython-39.pyc,,
pip/_vendor/progress/__pycache__/counter.cpython-39.pyc,,
pip/_vendor/progress/__pycache__/spinner.cpython-39.pyc,,
pip/_vendor/progress/bar.py,sha256=GbedY0oZ-Q1duXjmvVLO0tSf-uTSH7hJ3zzyI91Esws,2942
pip/_vendor/progress/colors.py,sha256=cCYXQnYFYVmQKKmYEbQ_lj6SPSFzdw4FN98F2x2kR-U,2655
pip/_vendor/progress/counter.py,sha256=zYt9DWH0_05s8Q9TrJwHVud-WwsyyaR3PwYtk5hxwwQ,1613
pip/_vendor/progress/spinner.py,sha256=u5ElzW94XEiLGH-aAlr54VJtKfeK745xr6UfGvvflzU,1461
pip/_vendor/pyparsing.py,sha256=J1b4z3S_KwyJW7hKGnoN-hXW9pgMIzIP6QThyY5yJq4,273394
pip/_vendor/requests/__init__.py,sha256=g4Bh1QYh6JKjMS4YLobx0uOLq-41sINaXjvbhX2VI8g,5113
pip/_vendor/requests/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/__version__.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/_internal_utils.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/adapters.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/api.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/auth.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/certs.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/compat.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/cookies.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/exceptions.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/help.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/hooks.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/models.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/packages.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/sessions.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/status_codes.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/structures.cpython-39.pyc,,
pip/_vendor/requests/__pycache__/utils.cpython-39.pyc,,
pip/_vendor/requests/__version__.py,sha256=PZEyPTSIN_jRIAIB51wV7pw81m3qAw0InSR7OrKZUnE,441
pip/_vendor/requests/_internal_utils.py,sha256=Zx3PnEUccyfsB-ie11nZVAW8qClJy0gx1qNME7rgT18,1096
pip/_vendor/requests/adapters.py,sha256=e-bmKEApNVqFdylxuMJJfiaHdlmS_zhWhIMEzlHvGuc,21548
pip/_vendor/requests/api.py,sha256=hjuoP79IAEmX6Dysrw8t032cLfwLHxbI_wM4gC5G9t0,6402
pip/_vendor/requests/auth.py,sha256=OMoJIVKyRLy9THr91y8rxysZuclwPB-K1Xg1zBomUhQ,10207
pip/_vendor/requests/certs.py,sha256=nXRVq9DtGmv_1AYbwjTu9UrgAcdJv05ZvkNeaoLOZxY,465
pip/_vendor/requests/compat.py,sha256=LQWuCR4qXk6w7-qQopXyz0WNHUdAD40k0mKnaAEf1-g,2045
pip/_vendor/requests/cookies.py,sha256=Y-bKX6TvW3FnYlE6Au0SXtVVWcaNdFvuAwQxw-G0iTI,18430
pip/_vendor/requests/exceptions.py,sha256=dwIi512RCDqXJ2T81nLC88mqPNhUFnOI_CgKKDXhTO8,3250
pip/_vendor/requests/help.py,sha256=dyhe3lcmHXnFCzDiZVjcGmVvvO_jtsfAm-AC542ndw8,3972
pip/_vendor/requests/hooks.py,sha256=QReGyy0bRcr5rkwCuObNakbYsc7EkiKeBwG4qHekr2Q,757
pip/_vendor/requests/models.py,sha256=9_LS_t1t6HbbaWFE3ZkxGmmHN2V8BgxziiOU84rrQ50,34924
pip/_vendor/requests/packages.py,sha256=njJmVifY4aSctuW3PP5EFRCxjEwMRDO6J_feG2dKWsI,695
pip/_vendor/requests/sessions.py,sha256=57O4ud9yRL6eLYh-dtFbqC1kO4d_EwZcCgYXEkujlfs,30168
pip/_vendor/requests/status_codes.py,sha256=gT79Pbs_cQjBgp-fvrUgg1dn2DQO32bDj4TInjnMPSc,4188
pip/_vendor/requests/structures.py,sha256=msAtr9mq1JxHd-JRyiILfdFlpbJwvvFuP3rfUQT_QxE,3005
pip/_vendor/requests/utils.py,sha256=U_-i6WxLw-67KEij43xHbcvL0DdeQ5Jbd4hfifWJzQY,31394
pip/_vendor/resolvelib/__init__.py,sha256=fzWkeoLV8ol6l2fvBVRZZLylOePc9w9tKRvUb8RJsCY,537
pip/_vendor/resolvelib/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/resolvelib/__pycache__/providers.cpython-39.pyc,,
pip/_vendor/resolvelib/__pycache__/reporters.cpython-39.pyc,,
pip/_vendor/resolvelib/__pycache__/resolvers.cpython-39.pyc,,
pip/_vendor/resolvelib/__pycache__/structs.cpython-39.pyc,,
pip/_vendor/resolvelib/compat/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_vendor/resolvelib/compat/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/resolvelib/compat/__pycache__/collections_abc.cpython-39.pyc,,
pip/_vendor/resolvelib/compat/collections_abc.py,sha256=uy8xUZ-NDEw916tugUXm8HgwCGiMO0f-RcdnpkfXfOs,156
pip/_vendor/resolvelib/providers.py,sha256=roVmFBItQJ0TkhNua65h8LdNny7rmeqVEXZu90QiP4o,5872
pip/_vendor/resolvelib/reporters.py,sha256=hQvvXuuEBOyEWO8KDfLsWKVjX55UFMAUwO0YZMNpzAw,1364
pip/_vendor/resolvelib/resolvers.py,sha256=UjFUEVrUa1hCzfEEakmjHEjYAL9J5ACJmwZyHFdmzvE,17540
pip/_vendor/resolvelib/structs.py,sha256=IVIYof6sA_N4ZEiE1C1UhzTX495brCNnyCdgq6CYq28,4794
pip/_vendor/six.py,sha256=TOOfQi7nFGfMrIvtdr6wX4wyHH8M7aknmuLfo2cBBrM,34549
pip/_vendor/tenacity/__init__.py,sha256=GLLsTFD4Bd5VDgTR6mU_FxyOsrxc48qONorVaRebeD4,18257
pip/_vendor/tenacity/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/tenacity/__pycache__/_asyncio.cpython-39.pyc,,
pip/_vendor/tenacity/__pycache__/_utils.cpython-39.pyc,,
pip/_vendor/tenacity/__pycache__/after.cpython-39.pyc,,
pip/_vendor/tenacity/__pycache__/before.cpython-39.pyc,,
pip/_vendor/tenacity/__pycache__/before_sleep.cpython-39.pyc,,
pip/_vendor/tenacity/__pycache__/nap.cpython-39.pyc,,
pip/_vendor/tenacity/__pycache__/retry.cpython-39.pyc,,
pip/_vendor/tenacity/__pycache__/stop.cpython-39.pyc,,
pip/_vendor/tenacity/__pycache__/tornadoweb.cpython-39.pyc,,
pip/_vendor/tenacity/__pycache__/wait.cpython-39.pyc,,
pip/_vendor/tenacity/_asyncio.py,sha256=HEb0BVJEeBJE9P-m9XBxh1KcaF96BwoeqkJCL5sbVcQ,3314
pip/_vendor/tenacity/_utils.py,sha256=-y68scDcyoqvTJuJJ0GTfjdSCljEYlbCYvgk7nM4NdM,1944
pip/_vendor/tenacity/after.py,sha256=dlmyxxFy2uqpLXDr838DiEd7jgv2AGthsWHGYcGYsaI,1496
pip/_vendor/tenacity/before.py,sha256=7XtvRmO0dRWUp8SVn24OvIiGFj8-4OP5muQRUiWgLh0,1376
pip/_vendor/tenacity/before_sleep.py,sha256=ThyDvqKU5yle_IvYQz_b6Tp6UjUS0PhVp6zgqYl9U6Y,1908
pip/_vendor/tenacity/nap.py,sha256=fRWvnz1aIzbIq9Ap3gAkAZgDH6oo5zxMrU6ZOVByq0I,1383
pip/_vendor/tenacity/retry.py,sha256=62R71W59bQjuNyFKsDM7hE2aEkEPtwNBRA0tnsEvgSk,6645
pip/_vendor/tenacity/stop.py,sha256=sKHmHaoSaW6sKu3dTxUVKr1-stVkY7lw4Y9yjZU30zQ,2790
pip/_vendor/tenacity/tornadoweb.py,sha256=E8lWO2nwe6dJgoB-N2HhQprYLDLB_UdSgFnv-EN6wKE,2145
pip/_vendor/tenacity/wait.py,sha256=e_Saa6I2tsNLpCL1t9897wN2fGb0XQMQlE4bU2t9V2w,6691
pip/_vendor/tomli/__init__.py,sha256=z1Elt0nLAqU5Y0DOn9p__8QnLWavlEOpRyQikdYgKro,230
pip/_vendor/tomli/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/tomli/__pycache__/_parser.cpython-39.pyc,,
pip/_vendor/tomli/__pycache__/_re.cpython-39.pyc,,
pip/_vendor/tomli/_parser.py,sha256=50BD4o9YbzFAGAYyZLqZC8F81DQ7iWWyJnrHNwBKa6A,22415
pip/_vendor/tomli/_re.py,sha256=5GPfgXKteg7wRFCF-DzlkAPI2ilHbkMK2-JC49F-AJQ,2681
pip/_vendor/urllib3/__init__.py,sha256=j3yzHIbmW7CS-IKQJ9-PPQf_YKO8EOAey_rMW0UR7us,2763
pip/_vendor/urllib3/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/urllib3/__pycache__/_collections.cpython-39.pyc,,
pip/_vendor/urllib3/__pycache__/_version.cpython-39.pyc,,
pip/_vendor/urllib3/__pycache__/connection.cpython-39.pyc,,
pip/_vendor/urllib3/__pycache__/connectionpool.cpython-39.pyc,,
pip/_vendor/urllib3/__pycache__/exceptions.cpython-39.pyc,,
pip/_vendor/urllib3/__pycache__/fields.cpython-39.pyc,,
pip/_vendor/urllib3/__pycache__/filepost.cpython-39.pyc,,
pip/_vendor/urllib3/__pycache__/poolmanager.cpython-39.pyc,,
pip/_vendor/urllib3/__pycache__/request.cpython-39.pyc,,
pip/_vendor/urllib3/__pycache__/response.cpython-39.pyc,,
pip/_vendor/urllib3/_collections.py,sha256=Rp1mVyBgc_UlAcp6M3at1skJBXR5J43NawRTvW2g_XY,10811
pip/_vendor/urllib3/_version.py,sha256=CA4bKbKLwUBfKitbVR-44Whe53HWyInIVElDQQniAJU,63
pip/_vendor/urllib3/connection.py,sha256=8TiEbQrJMgySqOllKNeX5tMv8nluKRjNj5j9hyzS6x0,20080
pip/_vendor/urllib3/connectionpool.py,sha256=FQoodlNAP1KeUi4htGdl5TJEvKL5LWisCbmFNewxRpg,37587
pip/_vendor/urllib3/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_vendor/urllib3/contrib/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/urllib3/contrib/__pycache__/_appengine_environ.cpython-39.pyc,,
pip/_vendor/urllib3/contrib/__pycache__/appengine.cpython-39.pyc,,
pip/_vendor/urllib3/contrib/__pycache__/ntlmpool.cpython-39.pyc,,
pip/_vendor/urllib3/contrib/__pycache__/pyopenssl.cpython-39.pyc,,
pip/_vendor/urllib3/contrib/__pycache__/securetransport.cpython-39.pyc,,
pip/_vendor/urllib3/contrib/__pycache__/socks.cpython-39.pyc,,
pip/_vendor/urllib3/contrib/_appengine_environ.py,sha256=bDbyOEhW2CKLJcQqAKAyrEHN-aklsyHFKq6vF8ZFsmk,957
pip/_vendor/urllib3/contrib/_securetransport/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_vendor/urllib3/contrib/_securetransport/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/urllib3/contrib/_securetransport/__pycache__/bindings.cpython-39.pyc,,
pip/_vendor/urllib3/contrib/_securetransport/__pycache__/low_level.cpython-39.pyc,,
pip/_vendor/urllib3/contrib/_securetransport/bindings.py,sha256=eRy1Mj-wpg7sR6-OSvnSV4jUbjMT464dLN_CWxbIRVw,17649
pip/_vendor/urllib3/contrib/_securetransport/low_level.py,sha256=B2JBB2_NRP02xK6DCa1Pa9IuxrPwxzDzZbixQkb7U9M,13922
pip/_vendor/urllib3/contrib/appengine.py,sha256=lfzpHFmJiO82shClLEm3QB62SYgHWnjpZOH_2JhU5Tc,11034
pip/_vendor/urllib3/contrib/ntlmpool.py,sha256=ej9gGvfAb2Gt00lafFp45SIoRz-QwrQ4WChm6gQmAlM,4538
pip/_vendor/urllib3/contrib/pyopenssl.py,sha256=DD4pInv_3OEEGffEFynBoirc8ldR789sLmGSKukzA0E,16900
pip/_vendor/urllib3/contrib/securetransport.py,sha256=4qUKo7PUV-vVIqXmr2BD-sH7qplB918jiD5eNsRI9vU,34449
pip/_vendor/urllib3/contrib/socks.py,sha256=aRi9eWXo9ZEb95XUxef4Z21CFlnnjbEiAo9HOseoMt4,7097
pip/_vendor/urllib3/exceptions.py,sha256=0Mnno3KHTNfXRfY7638NufOPkUb6mXOm-Lqj-4x2w8A,8217
pip/_vendor/urllib3/fields.py,sha256=kvLDCg_JmH1lLjUUEY_FLS8UhY7hBvDPuVETbY8mdrM,8579
pip/_vendor/urllib3/filepost.py,sha256=5b_qqgRHVlL7uLtdAYBzBh-GHmU5AfJVt_2N0XS3PeY,2440
pip/_vendor/urllib3/packages/__init__.py,sha256=h4BLhD4tLaBx1adaDtKXfupsgqY0wWLXb_f1_yVlV6A,108
pip/_vendor/urllib3/packages/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/urllib3/packages/__pycache__/six.cpython-39.pyc,,
pip/_vendor/urllib3/packages/backports/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pip/_vendor/urllib3/packages/backports/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/urllib3/packages/backports/__pycache__/makefile.cpython-39.pyc,,
pip/_vendor/urllib3/packages/backports/makefile.py,sha256=nbzt3i0agPVP07jqqgjhaYjMmuAi_W5E0EywZivVO8E,1417
pip/_vendor/urllib3/packages/six.py,sha256=1LVW7ljqRirFlfExjwl-v1B7vSAUNTmzGMs-qays2zg,34666
pip/_vendor/urllib3/packages/ssl_match_hostname/__init__.py,sha256=ZVMwCkHx-py8ERsxxM3Il-MiREZktV-8iLBmCfRRHI4,927
pip/_vendor/urllib3/packages/ssl_match_hostname/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/urllib3/packages/ssl_match_hostname/__pycache__/_implementation.cpython-39.pyc,,
pip/_vendor/urllib3/packages/ssl_match_hostname/_implementation.py,sha256=6dZ-q074g7XhsJ27MFCgkct8iVNZB3sMZvKhf-KUVy0,5679
pip/_vendor/urllib3/poolmanager.py,sha256=whzlX6UTEgODMOCy0ZDMUONRBCz5wyIM8Z9opXAY-Lk,19763
pip/_vendor/urllib3/request.py,sha256=ZFSIqX0C6WizixecChZ3_okyu7BEv0lZu1VT0s6h4SM,5985
pip/_vendor/urllib3/response.py,sha256=hGhGBh7TkEkh_IQg5C1W_xuPNrgIKv5BUXPyE-q0LuE,28203
pip/_vendor/urllib3/util/__init__.py,sha256=JEmSmmqqLyaw8P51gUImZh8Gwg9i1zSe-DoqAitn2nc,1155
pip/_vendor/urllib3/util/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/connection.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/proxy.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/queue.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/request.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/response.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/retry.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/ssl_.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/ssltransport.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/timeout.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/url.cpython-39.pyc,,
pip/_vendor/urllib3/util/__pycache__/wait.cpython-39.pyc,,
pip/_vendor/urllib3/util/connection.py,sha256=KykjNIXzUZEzeKEOpl5xvKs6IsESXP9o9eTrjE0W_Ys,4920
pip/_vendor/urllib3/util/proxy.py,sha256=zUvPPCJrp6dOF0N4GAVbOcl6o-4uXKSrGiTkkr5vUS4,1605
pip/_vendor/urllib3/util/queue.py,sha256=nRgX8_eX-_VkvxoX096QWoz8Ps0QHUAExILCY_7PncM,498
pip/_vendor/urllib3/util/request.py,sha256=NnzaEKQ1Pauw5MFMV6HmgEMHITf0Aua9fQuzi2uZzGc,4123
pip/_vendor/urllib3/util/response.py,sha256=GJpg3Egi9qaJXRwBh5wv-MNuRWan5BIu40oReoxWP28,3510
pip/_vendor/urllib3/util/retry.py,sha256=tOWfZpLsuc7Vbk5nWpMwkHdMoXCp90IAvH4xtjSDRqQ,21391
pip/_vendor/urllib3/util/ssl_.py,sha256=X4-AqW91aYPhPx6-xbf66yHFQKbqqfC_5Zt4WkLX1Hc,17177
pip/_vendor/urllib3/util/ssltransport.py,sha256=F_UncOXGcc-MgeWFTA1H4QCt_RRNQXRbF6onje3SyHY,6931
pip/_vendor/urllib3/util/timeout.py,sha256=QSbBUNOB9yh6AnDn61SrLQ0hg5oz0I9-uXEG91AJuIg,10003
pip/_vendor/urllib3/util/url.py,sha256=QVEzcbHipbXyCWwH6R4K4TR-N8T4LM55WEMwNUTBmLE,14047
pip/_vendor/urllib3/util/wait.py,sha256=3MUKRSAUJDB2tgco7qRUskW0zXGAWYvRRE4Q1_6xlLs,5404
pip/_vendor/vendor.txt,sha256=vux9Tgc3pSRZZnXz9TNDdn514NdkDdnb-QPC0LCHkK4,432
pip/_vendor/webencodings/__init__.py,sha256=qOBJIuPy_4ByYH6W_bNgJF-qYQ2DoU-dKsDu5yRWCXg,10579
pip/_vendor/webencodings/__pycache__/__init__.cpython-39.pyc,,
pip/_vendor/webencodings/__pycache__/labels.cpython-39.pyc,,
pip/_vendor/webencodings/__pycache__/mklabels.cpython-39.pyc,,
pip/_vendor/webencodings/__pycache__/tests.cpython-39.pyc,,
pip/_vendor/webencodings/__pycache__/x_user_defined.cpython-39.pyc,,
pip/_vendor/webencodings/labels.py,sha256=4AO_KxTddqGtrL9ns7kAPjb0CcN6xsCIxbK37HY9r3E,8979
pip/_vendor/webencodings/mklabels.py,sha256=GYIeywnpaLnP0GSic8LFWgd0UVvO_l1Nc6YoF-87R_4,1305
pip/_vendor/webencodings/tests.py,sha256=OtGLyjhNY1fvkW1GvLJ_FV9ZoqC9Anyjr7q3kxTbzNs,6563
pip/_vendor/webencodings/x_user_defined.py,sha256=yOqWSdmpytGfUgh_Z6JYgDNhoc-BAHyyeeT15Fr42tM,4307
pip/py.typed,sha256=EBVvvPRTn_eIpz5e5QztSCdrMX7Qwd7VP93RSoIlZ2I,286

View File

@ -0,0 +1,5 @@
Wheel-Version: 1.0
Generator: bdist_wheel (0.37.0)
Root-Is-Purelib: true
Tag: py3-none-any

View File

@ -0,0 +1,5 @@
[console_scripts]
pip = pip._internal.cli.main:main
pip3 = pip._internal.cli.main:main
pip3.9 = pip._internal.cli.main:main

View File

@ -0,0 +1 @@
pip

View File

@ -0,0 +1,13 @@
from typing import List, Optional
__version__ = "21.3.1"
def main(args: Optional[List[str]] = None) -> int:
"""This is an internal API only meant for use by pip's own console scripts.
For additional details, see https://github.com/pypa/pip/issues/7498.
"""
from pip._internal.utils.entrypoints import _wrapper
return _wrapper(args)

View File

@ -0,0 +1,31 @@
import os
import sys
import warnings
# Remove '' and current working directory from the first entry
# of sys.path, if present to avoid using current directory
# in pip commands check, freeze, install, list and show,
# when invoked as python -m pip <command>
if sys.path[0] in ("", os.getcwd()):
sys.path.pop(0)
# If we are running from a wheel, add the wheel to sys.path
# This allows the usage python pip-*.whl/pip install pip-*.whl
if __package__ == "":
# __file__ is pip-*.whl/pip/__main__.py
# first dirname call strips of '/__main__.py', second strips off '/pip'
# Resulting path is the name of the wheel itself
# Add that to sys.path so we can import pip
path = os.path.dirname(os.path.dirname(__file__))
sys.path.insert(0, path)
if __name__ == "__main__":
# Work around the error reported in #9540, pending a proper fix.
# Note: It is essential the warning filter is set *before* importing
# pip, as the deprecation happens at import time, not runtime.
warnings.filterwarnings(
"ignore", category=DeprecationWarning, module=".*packaging\\.version"
)
from pip._internal.cli.main import main as _main
sys.exit(_main())

View File

@ -0,0 +1,19 @@
from typing import List, Optional
import pip._internal.utils.inject_securetransport # noqa
from pip._internal.utils import _log
# init_logging() must be called before any call to logging.getLogger()
# which happens at import of most modules.
_log.init_logging()
def main(args: (Optional[List[str]]) = None) -> int:
"""This is preserved for old console scripts that may still be referencing
it.
For additional details, see https://github.com/pypa/pip/issues/7498.
"""
from pip._internal.utils.entrypoints import _wrapper
return _wrapper(args)

Some files were not shown because too many files have changed in this diff Show More