PySide6-Examples 6.7.0__cp39-abi3-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- PySide6/Qt3DAnimation.pyi +490 -0
- PySide6/Qt3DCore.pyi +600 -0
- PySide6/Qt3DExtras.pyi +1048 -0
- PySide6/Qt3DInput.pyi +403 -0
- PySide6/Qt3DLogic.pyi +41 -0
- PySide6/Qt3DRender.pyi +2434 -0
- PySide6/QtAxContainer.pyi +223 -0
- PySide6/QtBluetooth.pyi +1434 -0
- PySide6/QtCharts.pyi +1687 -0
- PySide6/QtConcurrent.pyi +123 -0
- PySide6/QtCore.pyi +10400 -0
- PySide6/QtDBus.pyi +719 -0
- PySide6/QtDataVisualization.pyi +1462 -0
- PySide6/QtDesigner.pyi +599 -0
- PySide6/QtGraphs.pyi +1997 -0
- PySide6/QtGui.pyi +10976 -0
- PySide6/QtHelp.pyi +325 -0
- PySide6/QtHttpServer.pyi +254 -0
- PySide6/QtLocation.pyi +1003 -0
- PySide6/QtMultimedia.pyi +1408 -0
- PySide6/QtMultimediaWidgets.pyi +68 -0
- PySide6/QtNetwork.pyi +2579 -0
- PySide6/QtNetworkAuth.pyi +329 -0
- PySide6/QtNfc.pyi +371 -0
- PySide6/QtOpenGL.pyi +14082 -0
- PySide6/QtOpenGLWidgets.pyi +81 -0
- PySide6/QtPdf.pyi +319 -0
- PySide6/QtPdfWidgets.pyi +100 -0
- PySide6/QtPositioning.pyi +592 -0
- PySide6/QtPrintSupport.pyi +389 -0
- PySide6/QtQml.pyi +1022 -0
- PySide6/QtQuick.pyi +1519 -0
- PySide6/QtQuick3D.pyi +291 -0
- PySide6/QtQuickControls2.pyi +35 -0
- PySide6/QtQuickTest.pyi +27 -0
- PySide6/QtQuickWidgets.pyi +94 -0
- PySide6/QtRemoteObjects.pyi +286 -0
- PySide6/QtScxml.pyi +329 -0
- PySide6/QtSensors.pyi +662 -0
- PySide6/QtSerialBus.pyi +597 -0
- PySide6/QtSerialPort.pyi +187 -0
- PySide6/QtSpatialAudio.pyi +242 -0
- PySide6/QtSql.pyi +685 -0
- PySide6/QtStateMachine.pyi +295 -0
- PySide6/QtSvg.pyi +122 -0
- PySide6/QtSvgWidgets.pyi +65 -0
- PySide6/QtTest.pyi +362 -0
- PySide6/QtTextToSpeech.pyi +182 -0
- PySide6/QtUiTools.pyi +57 -0
- PySide6/QtWebChannel.pyi +52 -0
- PySide6/QtWebEngineCore.pyi +1089 -0
- PySide6/QtWebEngineQuick.pyi +100 -0
- PySide6/QtWebEngineWidgets.pyi +99 -0
- PySide6/QtWebSockets.pyi +237 -0
- PySide6/QtWidgets.pyi +9553 -0
- PySide6/QtXml.pyi +452 -0
- PySide6/__feature__.pyi +10 -0
- PySide6/__init__.py +124 -0
- PySide6/_config.py +17 -0
- PySide6/_git_pyside_version.py +19 -0
- PySide6/examples/3d/simple3d/doc/simple3d.png +0 -0
- PySide6/examples/3d/simple3d/doc/simple3d.rst +8 -0
- PySide6/examples/3d/simple3d/simple3d.py +127 -0
- PySide6/examples/3d/simple3d/simple3d.pyproject +3 -0
- PySide6/examples/async/eratosthenes/doc/eratosthenes.rst +39 -0
- PySide6/examples/async/eratosthenes/doc/eratosthenes.svg +1 -0
- PySide6/examples/async/eratosthenes/eratosthenes.pyproject +3 -0
- PySide6/examples/async/eratosthenes/eratosthenes_asyncio.py +134 -0
- PySide6/examples/async/eratosthenes/eratosthenes_trio.py +197 -0
- PySide6/examples/async/eratosthenes/requirements_trio.txt +2 -0
- PySide6/examples/async/minimal/doc/minimal.png +0 -0
- PySide6/examples/async/minimal/doc/minimal.rst +38 -0
- PySide6/examples/async/minimal/minimal.pyproject +3 -0
- PySide6/examples/async/minimal/minimal_asyncio.py +40 -0
- PySide6/examples/async/minimal/minimal_trio.py +107 -0
- PySide6/examples/async/minimal/requirements_trio.txt +1 -0
- PySide6/examples/axcontainer/axviewer/axviewer.py +47 -0
- PySide6/examples/axcontainer/axviewer/axviewer.pyproject +3 -0
- PySide6/examples/axcontainer/axviewer/doc/axviewer.png +0 -0
- PySide6/examples/axcontainer/axviewer/doc/axviewer.rst +9 -0
- PySide6/examples/bluetooth/btscanner/btscanner.pyproject +3 -0
- PySide6/examples/bluetooth/btscanner/device.py +130 -0
- PySide6/examples/bluetooth/btscanner/device.ui +111 -0
- PySide6/examples/bluetooth/btscanner/doc/btscanner.rst +4 -0
- PySide6/examples/bluetooth/btscanner/main.py +17 -0
- PySide6/examples/bluetooth/btscanner/service.py +48 -0
- PySide6/examples/bluetooth/btscanner/service.ui +71 -0
- PySide6/examples/bluetooth/btscanner/ui_device.py +90 -0
- PySide6/examples/bluetooth/btscanner/ui_service.py +57 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/App.qml +99 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/BluetoothAlarmDialog.qml +79 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/BottomLine.qml +12 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/Connect.qml +159 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/GameButton.qml +39 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/GamePage.qml +36 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/GameSettings.qml +51 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/Main.qml +71 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/Measure.qml +212 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/SplashScreen.qml +30 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/Stats.qml +55 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/StatsLabel.qml +34 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/TitleBar.qml +54 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/images/bt_off_to_on.png +0 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/images/heart.png +0 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/images/logo.png +0 -0
- PySide6/examples/bluetooth/heartrate_game/HeartRateGame/qmldir +14 -0
- PySide6/examples/bluetooth/heartrate_game/bluetoothbaseclass.py +40 -0
- PySide6/examples/bluetooth/heartrate_game/connectionhandler.py +77 -0
- PySide6/examples/bluetooth/heartrate_game/devicefinder.py +139 -0
- PySide6/examples/bluetooth/heartrate_game/devicehandler.py +309 -0
- PySide6/examples/bluetooth/heartrate_game/deviceinfo.py +38 -0
- PySide6/examples/bluetooth/heartrate_game/doc/heartrate_game.rst +11 -0
- PySide6/examples/bluetooth/heartrate_game/heartrate_game.pyproject +23 -0
- PySide6/examples/bluetooth/heartrate_game/heartrate_global.py +30 -0
- PySide6/examples/bluetooth/heartrate_game/main.py +53 -0
- PySide6/examples/bluetooth/heartrate_server/doc/heartrate_server.rst +8 -0
- PySide6/examples/bluetooth/heartrate_server/heartrate_server.py +95 -0
- PySide6/examples/bluetooth/heartrate_server/heartrate_server.pyproject +3 -0
- PySide6/examples/bluetooth/lowenergyscanner/Scanner/Characteristics.qml +121 -0
- PySide6/examples/bluetooth/lowenergyscanner/Scanner/Devices.qml +121 -0
- PySide6/examples/bluetooth/lowenergyscanner/Scanner/Dialog.qml +48 -0
- PySide6/examples/bluetooth/lowenergyscanner/Scanner/Header.qml +25 -0
- PySide6/examples/bluetooth/lowenergyscanner/Scanner/Label.qml +16 -0
- PySide6/examples/bluetooth/lowenergyscanner/Scanner/Main.qml +31 -0
- PySide6/examples/bluetooth/lowenergyscanner/Scanner/Menu.qml +55 -0
- PySide6/examples/bluetooth/lowenergyscanner/Scanner/Services.qml +115 -0
- PySide6/examples/bluetooth/lowenergyscanner/Scanner/assets/busy_dark.png +0 -0
- PySide6/examples/bluetooth/lowenergyscanner/Scanner/qmldir +10 -0
- PySide6/examples/bluetooth/lowenergyscanner/characteristicinfo.py +87 -0
- PySide6/examples/bluetooth/lowenergyscanner/device.py +278 -0
- PySide6/examples/bluetooth/lowenergyscanner/deviceinfo.py +34 -0
- PySide6/examples/bluetooth/lowenergyscanner/doc/lowenergyscanner.png +0 -0
- PySide6/examples/bluetooth/lowenergyscanner/doc/lowenergyscanner.rst +11 -0
- PySide6/examples/bluetooth/lowenergyscanner/lowenergyscanner.pyproject +7 -0
- PySide6/examples/bluetooth/lowenergyscanner/main.py +27 -0
- PySide6/examples/bluetooth/lowenergyscanner/serviceinfo.py +64 -0
- PySide6/examples/charts/areachart/areachart.py +67 -0
- PySide6/examples/charts/areachart/areachart.pyproject +3 -0
- PySide6/examples/charts/areachart/doc/areachart.png +0 -0
- PySide6/examples/charts/areachart/doc/areachart.rst +8 -0
- PySide6/examples/charts/audio/audio.py +90 -0
- PySide6/examples/charts/audio/audio.pyproject +3 -0
- PySide6/examples/charts/audio/doc/audio.png +0 -0
- PySide6/examples/charts/audio/doc/audio.rst +8 -0
- PySide6/examples/charts/barchart/barchart.py +69 -0
- PySide6/examples/charts/barchart/barchart.pyproject +3 -0
- PySide6/examples/charts/barchart/doc/barchart.png +0 -0
- PySide6/examples/charts/barchart/doc/barchart.rst +8 -0
- PySide6/examples/charts/callout/callout.py +220 -0
- PySide6/examples/charts/callout/callout.pyproject +3 -0
- PySide6/examples/charts/callout/doc/callout.png +0 -0
- PySide6/examples/charts/callout/doc/callout.rst +8 -0
- PySide6/examples/charts/chartthemes/README.md +9 -0
- PySide6/examples/charts/chartthemes/chartthemes.pyproject +3 -0
- PySide6/examples/charts/chartthemes/doc/chartthemes.png +0 -0
- PySide6/examples/charts/chartthemes/doc/chartthemes.rst +11 -0
- PySide6/examples/charts/chartthemes/main.py +339 -0
- PySide6/examples/charts/chartthemes/themewidget.ui +103 -0
- PySide6/examples/charts/chartthemes/ui_themewidget.py +91 -0
- PySide6/examples/charts/donutbreakdown/doc/donutbreakdown.png +0 -0
- PySide6/examples/charts/donutbreakdown/doc/donutbreakdown.rst +8 -0
- PySide6/examples/charts/donutbreakdown/donutbreakdown.py +148 -0
- PySide6/examples/charts/donutbreakdown/donutbreakdown.pyproject +3 -0
- PySide6/examples/charts/dynamicspline/chart.py +52 -0
- PySide6/examples/charts/dynamicspline/doc/dynamicspline.rst +15 -0
- PySide6/examples/charts/dynamicspline/doc/dynamicspline1.png +0 -0
- PySide6/examples/charts/dynamicspline/doc/dynamicspline2.png +0 -0
- PySide6/examples/charts/dynamicspline/dynamicspline.pyproject +3 -0
- PySide6/examples/charts/dynamicspline/main.py +27 -0
- PySide6/examples/charts/legend/doc/legend.png +0 -0
- PySide6/examples/charts/legend/doc/legend.rst +20 -0
- PySide6/examples/charts/legend/legend.py +224 -0
- PySide6/examples/charts/legend/legend.pyproject +3 -0
- PySide6/examples/charts/lineandbar/doc/lineandbar.png +0 -0
- PySide6/examples/charts/lineandbar/doc/lineandbar.rst +11 -0
- PySide6/examples/charts/lineandbar/lineandbar.py +81 -0
- PySide6/examples/charts/lineandbar/lineandbar.pyproject +3 -0
- PySide6/examples/charts/linechart/doc/linechart.png +0 -0
- PySide6/examples/charts/linechart/doc/linechart.rst +8 -0
- PySide6/examples/charts/linechart/linechart.py +47 -0
- PySide6/examples/charts/linechart/linechart.pyproject +3 -0
- PySide6/examples/charts/logvalueaxis/doc/logvalueaxis.png +0 -0
- PySide6/examples/charts/logvalueaxis/doc/logvalueaxis.rst +8 -0
- PySide6/examples/charts/logvalueaxis/logvalueaxis.py +57 -0
- PySide6/examples/charts/logvalueaxis/logvalueaxis.pyproject +3 -0
- PySide6/examples/charts/memoryusage/doc/memoryusage.png +0 -0
- PySide6/examples/charts/memoryusage/doc/memoryusage.rst +9 -0
- PySide6/examples/charts/memoryusage/memoryusage.py +92 -0
- PySide6/examples/charts/memoryusage/memoryusage.pyproject +3 -0
- PySide6/examples/charts/modeldata/doc/modeldata.png +0 -0
- PySide6/examples/charts/modeldata/doc/modeldata.rst +9 -0
- PySide6/examples/charts/modeldata/modeldata.py +141 -0
- PySide6/examples/charts/modeldata/modeldata.pyproject +3 -0
- PySide6/examples/charts/nesteddonuts/doc/nesteddonuts.png +0 -0
- PySide6/examples/charts/nesteddonuts/doc/nesteddonuts.rst +7 -0
- PySide6/examples/charts/nesteddonuts/nesteddonuts.py +100 -0
- PySide6/examples/charts/nesteddonuts/nesteddonuts.pyproject +3 -0
- PySide6/examples/charts/percentbarchart/doc/percentbarchart.png +0 -0
- PySide6/examples/charts/percentbarchart/doc/percentbarchart.rst +17 -0
- PySide6/examples/charts/percentbarchart/percentbarchart.py +63 -0
- PySide6/examples/charts/percentbarchart/percentbarchart.pyproject +3 -0
- PySide6/examples/charts/piechart/doc/piechart.png +0 -0
- PySide6/examples/charts/piechart/doc/piechart.rst +8 -0
- PySide6/examples/charts/piechart/piechart.py +50 -0
- PySide6/examples/charts/piechart/piechart.pyproject +3 -0
- PySide6/examples/charts/pointconfiguration/chartwindow.py +156 -0
- PySide6/examples/charts/pointconfiguration/doc/pointconfiguration.png +0 -0
- PySide6/examples/charts/pointconfiguration/doc/pointconfiguration.rst +144 -0
- PySide6/examples/charts/pointconfiguration/pointconfiguration.py +17 -0
- PySide6/examples/charts/pointconfiguration/pointconfiguration.pyproject +3 -0
- PySide6/examples/charts/pointselectionandmarkers/doc/pointselectionandmarkers.png +0 -0
- PySide6/examples/charts/pointselectionandmarkers/doc/pointselectionandmarkers.rst +72 -0
- PySide6/examples/charts/pointselectionandmarkers/images/blue_triangle.png +0 -0
- PySide6/examples/charts/pointselectionandmarkers/images/green_triangle.png +0 -0
- PySide6/examples/charts/pointselectionandmarkers/markers.qrc +6 -0
- PySide6/examples/charts/pointselectionandmarkers/pointselectionandmarkers.py +128 -0
- PySide6/examples/charts/pointselectionandmarkers/pointselectionandmarkers.pyproject +3 -0
- PySide6/examples/charts/pointselectionandmarkers/rc_markers.py +275 -0
- PySide6/examples/charts/pointselectionandmarkers/utilities.py +77 -0
- PySide6/examples/charts/qmlpolarchart/View1.qml +52 -0
- PySide6/examples/charts/qmlpolarchart/View2.qml +73 -0
- PySide6/examples/charts/qmlpolarchart/View3.qml +60 -0
- PySide6/examples/charts/qmlpolarchart/doc/qmlpolarchart.png +0 -0
- PySide6/examples/charts/qmlpolarchart/doc/qmlpolarchart.rst +8 -0
- PySide6/examples/charts/qmlpolarchart/main.qml +63 -0
- PySide6/examples/charts/qmlpolarchart/qmlpolarchart.py +28 -0
- PySide6/examples/charts/qmlpolarchart/qmlpolarchart.pyproject +3 -0
- PySide6/examples/charts/temperaturerecords/doc/temperaturerecords.png +0 -0
- PySide6/examples/charts/temperaturerecords/doc/temperaturerecords.rst +10 -0
- PySide6/examples/charts/temperaturerecords/temperaturerecords.py +60 -0
- PySide6/examples/charts/temperaturerecords/temperaturerecords.pyproject +3 -0
- PySide6/examples/corelib/ipc/sharedmemory/dialog.py +93 -0
- PySide6/examples/corelib/ipc/sharedmemory/dialog.ui +47 -0
- PySide6/examples/corelib/ipc/sharedmemory/image.png +0 -0
- PySide6/examples/corelib/ipc/sharedmemory/main.py +15 -0
- PySide6/examples/corelib/ipc/sharedmemory/qt.png +0 -0
- PySide6/examples/corelib/ipc/sharedmemory/sharedmemory.pyproject +3 -0
- PySide6/examples/corelib/ipc/sharedmemory/ui_dialog.py +57 -0
- PySide6/examples/corelib/mimetypesbrowser/doc/mimetypesbrowser.png +0 -0
- PySide6/examples/corelib/mimetypesbrowser/doc/mimetypesbrowser.rst +10 -0
- PySide6/examples/corelib/mimetypesbrowser/mainwindow.py +161 -0
- PySide6/examples/corelib/mimetypesbrowser/mimetypemodel.py +136 -0
- PySide6/examples/corelib/mimetypesbrowser/mimetypesbrowser.py +24 -0
- PySide6/examples/corelib/mimetypesbrowser/mimetypesbrowser.pyproject +3 -0
- PySide6/examples/corelib/settingseditor/doc/settingseditor.png +0 -0
- PySide6/examples/corelib/settingseditor/doc/settingseditor.rst +10 -0
- PySide6/examples/corelib/settingseditor/settingseditor.py +753 -0
- PySide6/examples/corelib/settingseditor/settingseditor.pyproject +3 -0
- PySide6/examples/corelib/threads/doc/threads.png +0 -0
- PySide6/examples/corelib/threads/doc/threads.rst +10 -0
- PySide6/examples/corelib/threads/mandelbrot.py +352 -0
- PySide6/examples/corelib/threads/threads.pyproject +3 -0
- PySide6/examples/datavisualization/bars3d/bars3d.py +80 -0
- PySide6/examples/datavisualization/bars3d/bars3d.pyproject +3 -0
- PySide6/examples/datavisualization/bars3d/doc/bars3d.png +0 -0
- PySide6/examples/datavisualization/bars3d/doc/bars3d.rst +8 -0
- PySide6/examples/datavisualization/graphgallery/axesinputhandler.py +101 -0
- PySide6/examples/datavisualization/graphgallery/bargraph.py +276 -0
- PySide6/examples/datavisualization/graphgallery/custominputhandler.py +177 -0
- PySide6/examples/datavisualization/graphgallery/data/layer_1.png +0 -0
- PySide6/examples/datavisualization/graphgallery/data/layer_2.png +0 -0
- PySide6/examples/datavisualization/graphgallery/data/layer_3.png +0 -0
- PySide6/examples/datavisualization/graphgallery/data/license.txt +77 -0
- PySide6/examples/datavisualization/graphgallery/data/maptexture.jpg +0 -0
- PySide6/examples/datavisualization/graphgallery/data/oilrig.obj +2322 -0
- PySide6/examples/datavisualization/graphgallery/data/pipe.obj +330 -0
- PySide6/examples/datavisualization/graphgallery/data/raindata.txt +158 -0
- PySide6/examples/datavisualization/graphgallery/data/refinery.obj +2330 -0
- PySide6/examples/datavisualization/graphgallery/data/topography.png +0 -0
- PySide6/examples/datavisualization/graphgallery/doc/graph_gallery.webp +0 -0
- PySide6/examples/datavisualization/graphgallery/doc/graphgallery.rst +11 -0
- PySide6/examples/datavisualization/graphgallery/graphgallery.pyproject +18 -0
- PySide6/examples/datavisualization/graphgallery/graphgallery.qrc +13 -0
- PySide6/examples/datavisualization/graphgallery/graphmodifier.py +395 -0
- PySide6/examples/datavisualization/graphgallery/highlightseries.py +94 -0
- PySide6/examples/datavisualization/graphgallery/main.py +50 -0
- PySide6/examples/datavisualization/graphgallery/rainfalldata.py +125 -0
- PySide6/examples/datavisualization/graphgallery/scatterdatamodifier.py +151 -0
- PySide6/examples/datavisualization/graphgallery/scattergraph.py +128 -0
- PySide6/examples/datavisualization/graphgallery/surfacegraph.py +265 -0
- PySide6/examples/datavisualization/graphgallery/surfacegraphmodifier.py +643 -0
- PySide6/examples/datavisualization/graphgallery/topographicseries.py +57 -0
- PySide6/examples/datavisualization/graphgallery/variantbardatamapping.py +67 -0
- PySide6/examples/datavisualization/graphgallery/variantbardataproxy.py +100 -0
- PySide6/examples/datavisualization/graphgallery/variantdataset.py +39 -0
- PySide6/examples/datavisualization/minimalsurface/doc/minimalsurface.rst +4 -0
- PySide6/examples/datavisualization/minimalsurface/main.py +54 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/datasource.py +99 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/doc/qmlsurfacegallery.rst +9 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/doc/qmlsurfacegallery.webp +0 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/main.py +39 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/qml/qmlsurfacegallery/SpectrogramData.qml +1545 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/qml/qmlsurfacegallery/SurfaceHeightMap.qml +227 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/qml/qmlsurfacegallery/SurfaceOscilloscope.qml +430 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/qml/qmlsurfacegallery/SurfaceSpectrogram.qml +272 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/qml/qmlsurfacegallery/heightmap.png +0 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/qml/qmlsurfacegallery/main.qml +57 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/qmlsurfacegallery.pyproject +10 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/qmlsurfacegallery.qrc +5 -0
- PySide6/examples/datavisualization/qmlsurfacegallery/rc_qmlsurfacegallery.py +39967 -0
- PySide6/examples/datavisualization/surface/doc/surface.rst +23 -0
- PySide6/examples/datavisualization/surface/doc/surface_mountain.png +0 -0
- PySide6/examples/datavisualization/surface/main.py +189 -0
- PySide6/examples/datavisualization/surface/mountain.png +0 -0
- PySide6/examples/datavisualization/surface/surface.pyproject +4 -0
- PySide6/examples/datavisualization/surface/surfacegraph.py +253 -0
- PySide6/examples/datavisualization/surface_model_numpy/doc/surface_model_numpy.rst +24 -0
- PySide6/examples/datavisualization/surface_model_numpy/main.py +189 -0
- PySide6/examples/datavisualization/surface_model_numpy/surface_model_numpy.pyproject +4 -0
- PySide6/examples/datavisualization/surface_model_numpy/surfacegraph.py +295 -0
- PySide6/examples/datavisualization/surface_numpy/doc/surface_numpy.rst +24 -0
- PySide6/examples/datavisualization/surface_numpy/main.py +189 -0
- PySide6/examples/datavisualization/surface_numpy/surface_numpy.pyproject +4 -0
- PySide6/examples/datavisualization/surface_numpy/surfacegraph.py +253 -0
- PySide6/examples/dbus/listnames/listnames.py +53 -0
- PySide6/examples/dbus/listnames/listnames.pyproject +3 -0
- PySide6/examples/dbus/pingpong/ping.py +38 -0
- PySide6/examples/dbus/pingpong/pingpong.pyproject +3 -0
- PySide6/examples/dbus/pingpong/pong.py +44 -0
- PySide6/examples/demos/colorpaletteclient/ColorPalette/ColorDialogDelete.qml +71 -0
- PySide6/examples/demos/colorpaletteclient/ColorPalette/ColorDialogEditor.qml +139 -0
- PySide6/examples/demos/colorpaletteclient/ColorPalette/ColorView.qml +381 -0
- PySide6/examples/demos/colorpaletteclient/ColorPalette/Main.qml +62 -0
- PySide6/examples/demos/colorpaletteclient/ColorPalette/ServerSelection.qml +241 -0
- PySide6/examples/demos/colorpaletteclient/ColorPalette/UserMenu.qml +139 -0
- PySide6/examples/demos/colorpaletteclient/ColorPalette/qmldir +7 -0
- PySide6/examples/demos/colorpaletteclient/QtExampleStyle/Button.qml +48 -0
- PySide6/examples/demos/colorpaletteclient/QtExampleStyle/CMakeLists.txt +54 -0
- PySide6/examples/demos/colorpaletteclient/QtExampleStyle/Popup.qml +27 -0
- PySide6/examples/demos/colorpaletteclient/QtExampleStyle/TextField.qml +22 -0
- PySide6/examples/demos/colorpaletteclient/QtExampleStyle/UIStyle.qml +29 -0
- PySide6/examples/demos/colorpaletteclient/QtExampleStyle/qmldir +5 -0
- PySide6/examples/demos/colorpaletteclient/abstractresource.py +24 -0
- PySide6/examples/demos/colorpaletteclient/basiclogin.py +100 -0
- PySide6/examples/demos/colorpaletteclient/colorpaletteclient.pyproject +21 -0
- PySide6/examples/demos/colorpaletteclient/colorpaletteclient.qrc +17 -0
- PySide6/examples/demos/colorpaletteclient/doc/colorpaletteclient.rst +79 -0
- PySide6/examples/demos/colorpaletteclient/doc/colorpaletteclient.webp +0 -0
- PySide6/examples/demos/colorpaletteclient/icons/close.svg +3 -0
- PySide6/examples/demos/colorpaletteclient/icons/delete.svg +3 -0
- PySide6/examples/demos/colorpaletteclient/icons/dots.svg +3 -0
- PySide6/examples/demos/colorpaletteclient/icons/edit.svg +3 -0
- PySide6/examples/demos/colorpaletteclient/icons/login.svg +3 -0
- PySide6/examples/demos/colorpaletteclient/icons/logout.svg +3 -0
- PySide6/examples/demos/colorpaletteclient/icons/ok.svg +3 -0
- PySide6/examples/demos/colorpaletteclient/icons/plus.svg +3 -0
- PySide6/examples/demos/colorpaletteclient/icons/qt.png +0 -0
- PySide6/examples/demos/colorpaletteclient/icons/qt_attribution.json +14 -0
- PySide6/examples/demos/colorpaletteclient/icons/testserver.png +0 -0
- PySide6/examples/demos/colorpaletteclient/icons/update.svg +3 -0
- PySide6/examples/demos/colorpaletteclient/icons/user.svg +4 -0
- PySide6/examples/demos/colorpaletteclient/icons/userMask.svg +3 -0
- PySide6/examples/demos/colorpaletteclient/main.py +33 -0
- PySide6/examples/demos/colorpaletteclient/paginatedresource.py +278 -0
- PySide6/examples/demos/colorpaletteclient/rc_colorpaletteclient.py +1098 -0
- PySide6/examples/demos/colorpaletteclient/restservice.py +53 -0
- PySide6/examples/demos/documentviewer/abstractviewer.py +185 -0
- PySide6/examples/demos/documentviewer/doc/abstractviewer.py.rstinc +25 -0
- PySide6/examples/demos/documentviewer/doc/documentviewer.png +0 -0
- PySide6/examples/demos/documentviewer/doc/documentviewer.rst +13 -0
- PySide6/examples/demos/documentviewer/doc/jsonviewer.py.rstinc +11 -0
- PySide6/examples/demos/documentviewer/doc/mainwindow.py.rstinc +11 -0
- PySide6/examples/demos/documentviewer/doc/viewerfactory.py.rstinc +3 -0
- PySide6/examples/demos/documentviewer/documentviewer.pyproject +14 -0
- PySide6/examples/demos/documentviewer/documentviewer.qrc +42 -0
- PySide6/examples/demos/documentviewer/images/copy.png +0 -0
- PySide6/examples/demos/documentviewer/images/copy@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/cut.png +0 -0
- PySide6/examples/demos/documentviewer/images/cut@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/document-open-recent.svgz +0 -0
- PySide6/examples/demos/documentviewer/images/go-next-view-page.png +0 -0
- PySide6/examples/demos/documentviewer/images/go-next-view-page@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/go-next-view.png +0 -0
- PySide6/examples/demos/documentviewer/images/go-next-view@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/go-next.svgz +0 -0
- PySide6/examples/demos/documentviewer/images/go-previous-view-page.png +0 -0
- PySide6/examples/demos/documentviewer/images/go-previous-view-page@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/go-previous-view.png +0 -0
- PySide6/examples/demos/documentviewer/images/go-previous-view@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/go-previous.svgz +0 -0
- PySide6/examples/demos/documentviewer/images/help-about.svgz +0 -0
- PySide6/examples/demos/documentviewer/images/magnifier.png +0 -0
- PySide6/examples/demos/documentviewer/images/magnifier@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/open.png +0 -0
- PySide6/examples/demos/documentviewer/images/open@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/paste.png +0 -0
- PySide6/examples/demos/documentviewer/images/paste@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/print.png +0 -0
- PySide6/examples/demos/documentviewer/images/print2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/qt-logo.png +0 -0
- PySide6/examples/demos/documentviewer/images/qt-logo@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-fit-best.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-fit-best@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-fit-width.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-fit-width@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-in.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-in@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-original.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-original@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-out.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-out@2x.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-previous.png +0 -0
- PySide6/examples/demos/documentviewer/images/zoom-previous@2x.png +0 -0
- PySide6/examples/demos/documentviewer/jsonviewer/jsonviewer.py +396 -0
- PySide6/examples/demos/documentviewer/main.py +37 -0
- PySide6/examples/demos/documentviewer/mainwindow.py +178 -0
- PySide6/examples/demos/documentviewer/mainwindow.ui +272 -0
- PySide6/examples/demos/documentviewer/pdfviewer/pdfviewer.py +204 -0
- PySide6/examples/demos/documentviewer/pdfviewer/zoomselector.py +54 -0
- PySide6/examples/demos/documentviewer/rc_documentviewer.py +5135 -0
- PySide6/examples/demos/documentviewer/recentfilemenu.py +34 -0
- PySide6/examples/demos/documentviewer/recentfiles.py +159 -0
- PySide6/examples/demos/documentviewer/txtviewer/txtviewer.py +144 -0
- PySide6/examples/demos/documentviewer/ui_mainwindow.py +230 -0
- PySide6/examples/demos/documentviewer/viewerfactory.py +114 -0
- PySide6/examples/designer/taskmenuextension/doc/taskmenuextension.png +0 -0
- PySide6/examples/designer/taskmenuextension/doc/taskmenuextension.rst +17 -0
- PySide6/examples/designer/taskmenuextension/main.py +16 -0
- PySide6/examples/designer/taskmenuextension/registertictactoe.py +13 -0
- PySide6/examples/designer/taskmenuextension/taskmenuextension.pyproject +4 -0
- PySide6/examples/designer/taskmenuextension/tictactoe.py +133 -0
- PySide6/examples/designer/taskmenuextension/tictactoeplugin.py +70 -0
- PySide6/examples/designer/taskmenuextension/tictactoetaskmenu.py +68 -0
- PySide6/examples/examples.pyproject +162 -0
- PySide6/examples/external/matplotlib/widget3d/doc/widget3d.png +0 -0
- PySide6/examples/external/matplotlib/widget3d/doc/widget3d.rst +9 -0
- PySide6/examples/external/matplotlib/widget3d/requirements.txt +2 -0
- PySide6/examples/external/matplotlib/widget3d/widget3d.py +207 -0
- PySide6/examples/external/matplotlib/widget3d/widget3d.pyproject +3 -0
- PySide6/examples/external/matplotlib/widget_gaussian/doc/widget_gaussian.png +0 -0
- PySide6/examples/external/matplotlib/widget_gaussian/doc/widget_gaussian.rst +9 -0
- PySide6/examples/external/matplotlib/widget_gaussian/requirements.txt +3 -0
- PySide6/examples/external/matplotlib/widget_gaussian/widget_gaussian.py +74 -0
- PySide6/examples/external/matplotlib/widget_gaussian/widget_gaussian.pyproject +3 -0
- PySide6/examples/external/networkx/doc/networkx.png +0 -0
- PySide6/examples/external/networkx/doc/networkx.rst +8 -0
- PySide6/examples/external/networkx/main.py +346 -0
- PySide6/examples/external/networkx/networkx.pyproject +3 -0
- PySide6/examples/external/networkx/requirements.txt +3 -0
- PySide6/examples/external/opencv/doc/opencv.png +0 -0
- PySide6/examples/external/opencv/doc/opencv.rst +9 -0
- PySide6/examples/external/opencv/opencv.pyproject +3 -0
- PySide6/examples/external/opencv/requirements.txt +1 -0
- PySide6/examples/external/opencv/webcam_pattern_detection.py +170 -0
- PySide6/examples/external/pandas/dataframe_model.py +82 -0
- PySide6/examples/external/pandas/doc/pandas.rst +9 -0
- PySide6/examples/external/pandas/doc/pandas_simple.png +0 -0
- PySide6/examples/external/pandas/iris.csv +151 -0
- PySide6/examples/external/pandas/pandas.pyproject +3 -0
- PySide6/examples/external/pandas/requirements.txt +1 -0
- PySide6/examples/external/scikit/doc/scikit.png +0 -0
- PySide6/examples/external/scikit/doc/scikit.rst +9 -0
- PySide6/examples/external/scikit/requirements.txt +1 -0
- PySide6/examples/external/scikit/scikit.pyproject +3 -0
- PySide6/examples/external/scikit/staining_colors_separation.py +147 -0
- PySide6/examples/graphs/2d/hellographs/HelloGraphs/Main.qml +153 -0
- PySide6/examples/graphs/2d/hellographs/HelloGraphs/qmldir +2 -0
- PySide6/examples/graphs/2d/hellographs/doc/hellographs.rst +51 -0
- PySide6/examples/graphs/2d/hellographs/doc/hellographs.webp +0 -0
- PySide6/examples/graphs/2d/hellographs/hellographs.pyproject +3 -0
- PySide6/examples/graphs/2d/hellographs/main.py +22 -0
- PySide6/examples/graphs/3d/minimalsurfacegraph/doc/minimalsurfacegraph.rst +4 -0
- PySide6/examples/graphs/3d/minimalsurfacegraph/main.py +54 -0
- PySide6/examples/graphs/3d/widgetgallery/axesinputhandler.py +100 -0
- PySide6/examples/graphs/3d/widgetgallery/bargraph.py +272 -0
- PySide6/examples/graphs/3d/widgetgallery/custominputhandler.py +177 -0
- PySide6/examples/graphs/3d/widgetgallery/data/layer_1.png +0 -0
- PySide6/examples/graphs/3d/widgetgallery/data/layer_2.png +0 -0
- PySide6/examples/graphs/3d/widgetgallery/data/layer_3.png +0 -0
- PySide6/examples/graphs/3d/widgetgallery/data/license.txt +77 -0
- PySide6/examples/graphs/3d/widgetgallery/data/maptexture.jpg +0 -0
- PySide6/examples/graphs/3d/widgetgallery/data/narrowarrow.mesh +0 -0
- PySide6/examples/graphs/3d/widgetgallery/data/oilrig.mesh +0 -0
- PySide6/examples/graphs/3d/widgetgallery/data/pipe.mesh +0 -0
- PySide6/examples/graphs/3d/widgetgallery/data/raindata.txt +158 -0
- PySide6/examples/graphs/3d/widgetgallery/data/refinery.mesh +0 -0
- PySide6/examples/graphs/3d/widgetgallery/data/topography.png +0 -0
- PySide6/examples/graphs/3d/widgetgallery/doc/widgetgallery.rst +11 -0
- PySide6/examples/graphs/3d/widgetgallery/doc/widgetgallery.webp +0 -0
- PySide6/examples/graphs/3d/widgetgallery/graphmodifier.py +391 -0
- PySide6/examples/graphs/3d/widgetgallery/highlightseries.py +94 -0
- PySide6/examples/graphs/3d/widgetgallery/main.py +41 -0
- PySide6/examples/graphs/3d/widgetgallery/rainfalldata.py +125 -0
- PySide6/examples/graphs/3d/widgetgallery/scatterdatamodifier.py +149 -0
- PySide6/examples/graphs/3d/widgetgallery/scattergraph.py +121 -0
- PySide6/examples/graphs/3d/widgetgallery/surfacegraph.py +256 -0
- PySide6/examples/graphs/3d/widgetgallery/surfacegraphmodifier.py +641 -0
- PySide6/examples/graphs/3d/widgetgallery/topographicseries.py +57 -0
- PySide6/examples/graphs/3d/widgetgallery/variantbardatamapping.py +67 -0
- PySide6/examples/graphs/3d/widgetgallery/variantbardataproxy.py +100 -0
- PySide6/examples/graphs/3d/widgetgallery/variantdataset.py +39 -0
- PySide6/examples/graphs/3d/widgetgallery/widgetgallery.pyproject +29 -0
- PySide6/examples/gui/analogclock/analogclock.pyproject +3 -0
- PySide6/examples/gui/analogclock/doc/analogclock.rst +8 -0
- PySide6/examples/gui/analogclock/main.py +92 -0
- PySide6/examples/gui/rhiwindow/doc/rhiwindow.rst +49 -0
- PySide6/examples/gui/rhiwindow/doc/rhiwindow.webp +0 -0
- PySide6/examples/gui/rhiwindow/main.py +80 -0
- PySide6/examples/gui/rhiwindow/rc_rhiwindow.py +319 -0
- PySide6/examples/gui/rhiwindow/rhiwindow.py +420 -0
- PySide6/examples/gui/rhiwindow/rhiwindow.pyproject +5 -0
- PySide6/examples/gui/rhiwindow/rhiwindow.qrc +8 -0
- PySide6/examples/gui/rhiwindow/shaders/color.frag +15 -0
- PySide6/examples/gui/rhiwindow/shaders/color.vert +17 -0
- PySide6/examples/gui/rhiwindow/shaders/prebuilt/color.frag.qsb +0 -0
- PySide6/examples/gui/rhiwindow/shaders/prebuilt/color.vert.qsb +0 -0
- PySide6/examples/gui/rhiwindow/shaders/prebuilt/quad.frag.qsb +0 -0
- PySide6/examples/gui/rhiwindow/shaders/prebuilt/quad.vert.qsb +0 -0
- PySide6/examples/gui/rhiwindow/shaders/quad.frag +11 -0
- PySide6/examples/gui/rhiwindow/shaders/quad.vert +10 -0
- PySide6/examples/httpserver/afterrequest/doc/afterrequest.rst +5 -0
- PySide6/examples/httpserver/afterrequest/main.py +36 -0
- PySide6/examples/installer_test/hello.py +71 -0
- PySide6/examples/installer_test/hello_app.spec +53 -0
- PySide6/examples/location/mapviewer/MapViewer/Main.qml +460 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/Geocode.qml +42 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/GeocodeForm.ui.qml +136 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/Locale.qml +45 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/LocaleForm.ui.qml +116 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/Message.qml +21 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/MessageForm.ui.qml +69 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/ReverseGeocode.qml +38 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/ReverseGeocodeForm.ui.qml +103 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/RouteAddress.qml +105 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/RouteAddressForm.ui.qml +160 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/RouteCoordinate.qml +41 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/RouteCoordinateForm.ui.qml +136 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/RouteList.qml +50 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/RouteListDelegate.qml +42 -0
- PySide6/examples/location/mapviewer/MapViewer/forms/RouteListHeader.qml +47 -0
- PySide6/examples/location/mapviewer/MapViewer/helper.js +44 -0
- PySide6/examples/location/mapviewer/MapViewer/map/MapComponent.qml +497 -0
- PySide6/examples/location/mapviewer/MapViewer/map/MapSliders.qml +282 -0
- PySide6/examples/location/mapviewer/MapViewer/map/Marker.qml +64 -0
- PySide6/examples/location/mapviewer/MapViewer/map/MiniMap.qml +78 -0
- PySide6/examples/location/mapviewer/MapViewer/menus/ItemPopupMenu.qml +19 -0
- PySide6/examples/location/mapviewer/MapViewer/menus/MainMenu.qml +122 -0
- PySide6/examples/location/mapviewer/MapViewer/menus/MapPopupMenu.qml +30 -0
- PySide6/examples/location/mapviewer/MapViewer/menus/MarkerPopupMenu.qml +38 -0
- PySide6/examples/location/mapviewer/MapViewer/qmldir +27 -0
- PySide6/examples/location/mapviewer/MapViewer/resources/marker.png +0 -0
- PySide6/examples/location/mapviewer/MapViewer/resources/marker_blue.png +0 -0
- PySide6/examples/location/mapviewer/MapViewer/resources/scale.png +0 -0
- PySide6/examples/location/mapviewer/MapViewer/resources/scale_end.png +0 -0
- PySide6/examples/location/mapviewer/doc/mapviewer.rst +14 -0
- PySide6/examples/location/mapviewer/doc/mapviewer.webp +0 -0
- PySide6/examples/location/mapviewer/main.py +75 -0
- PySide6/examples/location/mapviewer/mapviewer.pyproject +33 -0
- PySide6/examples/multimedia/audiooutput/audiooutput.py +276 -0
- PySide6/examples/multimedia/audiooutput/audiooutput.pyproject +3 -0
- PySide6/examples/multimedia/audiooutput/doc/audiooutput.png +0 -0
- PySide6/examples/multimedia/audiooutput/doc/audiooutput.rst +14 -0
- PySide6/examples/multimedia/audiosource/audiosource.py +227 -0
- PySide6/examples/multimedia/audiosource/audiosource.pyproject +3 -0
- PySide6/examples/multimedia/audiosource/doc/audiosource.png +0 -0
- PySide6/examples/multimedia/audiosource/doc/audiosource.rst +13 -0
- PySide6/examples/multimedia/camera/camera.py +369 -0
- PySide6/examples/multimedia/camera/camera.pyproject +12 -0
- PySide6/examples/multimedia/camera/camera.ui +497 -0
- PySide6/examples/multimedia/camera/camera_mobile.ui +504 -0
- PySide6/examples/multimedia/camera/doc/camera.rst +14 -0
- PySide6/examples/multimedia/camera/doc/camera.webp +0 -0
- PySide6/examples/multimedia/camera/imagesettings.py +56 -0
- PySide6/examples/multimedia/camera/imagesettings.ui +123 -0
- PySide6/examples/multimedia/camera/main.py +17 -0
- PySide6/examples/multimedia/camera/metadatadialog.py +86 -0
- PySide6/examples/multimedia/camera/shutter.svg +21 -0
- PySide6/examples/multimedia/camera/ui_camera.py +232 -0
- PySide6/examples/multimedia/camera/ui_camera_mobile.py +251 -0
- PySide6/examples/multimedia/camera/ui_imagesettings.py +94 -0
- PySide6/examples/multimedia/camera/ui_videosettings.py +178 -0
- PySide6/examples/multimedia/camera/ui_videosettings_mobile.py +176 -0
- PySide6/examples/multimedia/camera/videosettings.py +167 -0
- PySide6/examples/multimedia/camera/videosettings.ui +213 -0
- PySide6/examples/multimedia/camera/videosettings_mobile.ui +207 -0
- PySide6/examples/multimedia/player/doc/player.png +0 -0
- PySide6/examples/multimedia/player/doc/player.rst +9 -0
- PySide6/examples/multimedia/player/player.py +194 -0
- PySide6/examples/multimedia/player/player.pyproject +3 -0
- PySide6/examples/multimedia/screencapture/doc/screencapture.rst +42 -0
- PySide6/examples/multimedia/screencapture/doc/screencapture.webp +0 -0
- PySide6/examples/multimedia/screencapture/main.py +20 -0
- PySide6/examples/multimedia/screencapture/screencapture.pyproject +3 -0
- PySide6/examples/multimedia/screencapture/screencapturepreview.py +151 -0
- PySide6/examples/multimedia/screencapture/screenlistmodel.py +38 -0
- PySide6/examples/multimedia/screencapture/windowlistmodel.py +30 -0
- PySide6/examples/network/blockingfortuneclient/blockingfortuneclient.py +187 -0
- PySide6/examples/network/blockingfortuneclient/blockingfortuneclient.pyproject +3 -0
- PySide6/examples/network/downloader/doc/downloader.png +0 -0
- PySide6/examples/network/downloader/doc/downloader.rst +9 -0
- PySide6/examples/network/downloader/downloader.py +179 -0
- PySide6/examples/network/downloader/downloader.pyproject +3 -0
- PySide6/examples/network/fortuneclient/fortuneclient.py +124 -0
- PySide6/examples/network/fortuneclient/fortuneclient.pyproject +3 -0
- PySide6/examples/network/fortuneserver/fortuneserver.py +82 -0
- PySide6/examples/network/fortuneserver/fortuneserver.pyproject +3 -0
- PySide6/examples/network/googlesuggest/doc/googlesuggest.png +0 -0
- PySide6/examples/network/googlesuggest/doc/googlesuggest.rst +11 -0
- PySide6/examples/network/googlesuggest/googlesuggest.py +136 -0
- PySide6/examples/network/googlesuggest/googlesuggest.pyproject +3 -0
- PySide6/examples/network/googlesuggest/main.py +14 -0
- PySide6/examples/network/googlesuggest/searchbox.py +27 -0
- PySide6/examples/network/loopback/dialog.py +151 -0
- PySide6/examples/network/loopback/doc/loopback.png +0 -0
- PySide6/examples/network/loopback/doc/loopback.rst +10 -0
- PySide6/examples/network/loopback/loopback.pyproject +3 -0
- PySide6/examples/network/loopback/main.py +15 -0
- PySide6/examples/network/threadedfortuneserver/threadedfortuneserver.py +116 -0
- PySide6/examples/network/threadedfortuneserver/threadedfortuneserver.pyproject +3 -0
- PySide6/examples/networkauth/redditclient/doc/redditclient.png +0 -0
- PySide6/examples/networkauth/redditclient/doc/redditclient.rst +21 -0
- PySide6/examples/networkauth/redditclient/main.py +28 -0
- PySide6/examples/networkauth/redditclient/redditclient.pyproject +3 -0
- PySide6/examples/networkauth/redditclient/redditmodel.py +70 -0
- PySide6/examples/networkauth/redditclient/redditwrapper.py +92 -0
- PySide6/examples/opengl/contextinfo/contextinfo.py +266 -0
- PySide6/examples/opengl/contextinfo/contextinfo.pyproject +3 -0
- PySide6/examples/opengl/contextinfo/doc/contextinfo.png +0 -0
- PySide6/examples/opengl/contextinfo/doc/contextinfo.rst +10 -0
- PySide6/examples/opengl/hellogl2/doc/hellogl2.png +0 -0
- PySide6/examples/opengl/hellogl2/doc/hellogl2.rst +23 -0
- PySide6/examples/opengl/hellogl2/glwidget.py +272 -0
- PySide6/examples/opengl/hellogl2/hellogl2.pyproject +3 -0
- PySide6/examples/opengl/hellogl2/logo.py +101 -0
- PySide6/examples/opengl/hellogl2/main.py +58 -0
- PySide6/examples/opengl/hellogl2/mainwindow.py +29 -0
- PySide6/examples/opengl/hellogl2/window.py +110 -0
- PySide6/examples/opengl/textures/doc/textures.png +0 -0
- PySide6/examples/opengl/textures/doc/textures.rst +9 -0
- PySide6/examples/opengl/textures/images/side1.png +0 -0
- PySide6/examples/opengl/textures/images/side2.png +0 -0
- PySide6/examples/opengl/textures/images/side3.png +0 -0
- PySide6/examples/opengl/textures/images/side4.png +0 -0
- PySide6/examples/opengl/textures/images/side5.png +0 -0
- PySide6/examples/opengl/textures/images/side6.png +0 -0
- PySide6/examples/opengl/textures/textures.py +211 -0
- PySide6/examples/opengl/textures/textures.pyproject +3 -0
- PySide6/examples/opengl/textures/textures.qrc +10 -0
- PySide6/examples/opengl/textures/textures_rc.py +762 -0
- PySide6/examples/opengl/threadedqopenglwidget/doc/threadedqopenglwidget.png +0 -0
- PySide6/examples/opengl/threadedqopenglwidget/doc/threadedqopenglwidget.rst +9 -0
- PySide6/examples/opengl/threadedqopenglwidget/glwidget.py +79 -0
- PySide6/examples/opengl/threadedqopenglwidget/main.py +93 -0
- PySide6/examples/opengl/threadedqopenglwidget/mainwindow.py +24 -0
- PySide6/examples/opengl/threadedqopenglwidget/renderer.py +326 -0
- PySide6/examples/opengl/threadedqopenglwidget/threadedqopenglwidget.pyproject +3 -0
- PySide6/examples/pdf/quickpdfviewer/doc/quickpdfviewer.rst +4 -0
- PySide6/examples/pdf/quickpdfviewer/main.py +49 -0
- PySide6/examples/pdf/quickpdfviewer/quickpdfviewer.pyproject +3 -0
- PySide6/examples/pdf/quickpdfviewer/rc_viewer.py +5505 -0
- PySide6/examples/pdf/quickpdfviewer/resources/document-open.svg +13 -0
- PySide6/examples/pdf/quickpdfviewer/resources/edit-clear.svg +15 -0
- PySide6/examples/pdf/quickpdfviewer/resources/edit-copy.svg +15 -0
- PySide6/examples/pdf/quickpdfviewer/resources/edit-select-all.svg +13 -0
- PySide6/examples/pdf/quickpdfviewer/resources/go-down-search.svg +13 -0
- PySide6/examples/pdf/quickpdfviewer/resources/go-next-view-page.svg +13 -0
- PySide6/examples/pdf/quickpdfviewer/resources/go-previous-view-page.svg +13 -0
- PySide6/examples/pdf/quickpdfviewer/resources/go-up-search.svg +8 -0
- PySide6/examples/pdf/quickpdfviewer/resources/rotate-left.svg +6 -0
- PySide6/examples/pdf/quickpdfviewer/resources/rotate-right.svg +6 -0
- PySide6/examples/pdf/quickpdfviewer/resources/test.pdf +0 -0
- PySide6/examples/pdf/quickpdfviewer/resources/zoom-fit-best.svg +13 -0
- PySide6/examples/pdf/quickpdfviewer/resources/zoom-fit-width.svg +13 -0
- PySide6/examples/pdf/quickpdfviewer/resources/zoom-in.svg +13 -0
- PySide6/examples/pdf/quickpdfviewer/resources/zoom-original.svg +13 -0
- PySide6/examples/pdf/quickpdfviewer/resources/zoom-out.svg +13 -0
- PySide6/examples/pdf/quickpdfviewer/viewer.qml +307 -0
- PySide6/examples/pdf/quickpdfviewer/viewer.qrc +20 -0
- PySide6/examples/pdfwidgets/pdfviewer/doc/pdfviewer.rst +5 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/document-open.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/go-next-view-page.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/go-next-view.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/go-previous-view-page.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/go-previous-view.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/zoom-fit-best.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/zoom-fit-width.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/zoom-in.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/zoom-original.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/zoom-out.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/images/zoom-previous.svgz +0 -0
- PySide6/examples/pdfwidgets/pdfviewer/main.py +27 -0
- PySide6/examples/pdfwidgets/pdfviewer/mainwindow.py +141 -0
- PySide6/examples/pdfwidgets/pdfviewer/mainwindow.ui +327 -0
- PySide6/examples/pdfwidgets/pdfviewer/pdfviewer.pyproject +4 -0
- PySide6/examples/pdfwidgets/pdfviewer/resources.qrc +11 -0
- PySide6/examples/pdfwidgets/pdfviewer/resources_rc.py +3468 -0
- PySide6/examples/pdfwidgets/pdfviewer/ui_mainwindow.py +259 -0
- PySide6/examples/pdfwidgets/pdfviewer/zoomselector.py +59 -0
- PySide6/examples/qml/editingmodel/MovingRectangle.qml +78 -0
- PySide6/examples/qml/editingmodel/doc/editingmodel.rst +16 -0
- PySide6/examples/qml/editingmodel/doc/qabstractlistmodelqml.png +0 -0
- PySide6/examples/qml/editingmodel/main.py +21 -0
- PySide6/examples/qml/editingmodel/main.pyproject +3 -0
- PySide6/examples/qml/editingmodel/main.qml +106 -0
- PySide6/examples/qml/editingmodel/model.py +156 -0
- PySide6/examples/qml/signals/pytoqml1/main.py +31 -0
- PySide6/examples/qml/signals/pytoqml1/pytoqml1.pyproject +3 -0
- PySide6/examples/qml/signals/pytoqml1/view.qml +36 -0
- PySide6/examples/qml/signals/pytoqml2/main.py +54 -0
- PySide6/examples/qml/signals/pytoqml2/pytoqml2.pyproject +3 -0
- PySide6/examples/qml/signals/pytoqml2/view.qml +30 -0
- PySide6/examples/qml/signals/qmltopy1/main.py +50 -0
- PySide6/examples/qml/signals/qmltopy1/qmltopy1.pyproject +3 -0
- PySide6/examples/qml/signals/qmltopy1/view.qml +54 -0
- PySide6/examples/qml/signals/qmltopy2/main.py +45 -0
- PySide6/examples/qml/signals/qmltopy2/qmltopy2.pyproject +3 -0
- PySide6/examples/qml/signals/qmltopy2/view.qml +49 -0
- PySide6/examples/qml/signals/qmltopy3/main.py +33 -0
- PySide6/examples/qml/signals/qmltopy3/qmltopy3.pyproject +3 -0
- PySide6/examples/qml/signals/qmltopy3/view.qml +66 -0
- PySide6/examples/qml/signals/qmltopy4/main.py +33 -0
- PySide6/examples/qml/signals/qmltopy4/qmltopy4.pyproject +3 -0
- PySide6/examples/qml/signals/qmltopy4/view.qml +31 -0
- PySide6/examples/qml/textproperties/doc/textproperties.png +0 -0
- PySide6/examples/qml/textproperties/doc/textproperties.rst +9 -0
- PySide6/examples/qml/textproperties/main.py +76 -0
- PySide6/examples/qml/textproperties/textproperties.pyproject +3 -0
- PySide6/examples/qml/textproperties/view.qml +160 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter1-basics/app.qml +26 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter1-basics/basics.py +68 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter1-basics/chapter1-basics.pyproject +3 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter1-basics/doc/chapter1-basics.rst +107 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter2-methods/app.qml +32 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter2-methods/chapter2-methods.pyproject +3 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter2-methods/doc/chapter2-methods.rst +36 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter2-methods/methods.py +75 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter3-bindings/app.qml +40 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter3-bindings/bindings.py +79 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter3-bindings/chapter3-bindings.pyproject +3 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter3-bindings/doc/chapter3-bindings.rst +54 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter4-customPropertyTypes/app.qml +22 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter4-customPropertyTypes/chapter4-customPropertyTypes.pyproject +3 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter4-customPropertyTypes/customPropertyTypes.py +83 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter4-customPropertyTypes/doc/chapter4-customPropertyTypes.rst +73 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter5-listproperties/app.qml +32 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter5-listproperties/chapter5-listproperties.pyproject +3 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter5-listproperties/doc/chapter5-listproperties.rst +46 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter5-listproperties/listproperties.py +97 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter6-plugins/Charts/piechart.py +41 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter6-plugins/Charts/pieslice.py +53 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter6-plugins/Charts/plugins.png +0 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter6-plugins/app.qml +32 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter6-plugins/chapter6-plugins.pyproject +3 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter6-plugins/doc/chapter6-plugins.rst +26 -0
- PySide6/examples/qml/tutorials/extending-qml/chapter6-plugins/doc/plugins.png +0 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/adding/People/Main.qml +9 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/adding/People/qmldir +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/adding/adding.pyproject +4 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/adding/doc/adding.rst +67 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/adding/main.py +30 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/adding/person.py +34 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced1-Base-project/People/Main.qml +16 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced1-Base-project/People/qmldir +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced1-Base-project/advanced1-Base-project.pyproject +4 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced1-Base-project/birthdayparty.py +46 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced1-Base-project/doc/advanced1-Base-project.rst +57 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced1-Base-project/main.py +33 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced1-Base-project/person.py +41 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced2-Inheritance-and-coercion/People/Main.qml +16 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced2-Inheritance-and-coercion/People/qmldir +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced2-Inheritance-and-coercion/advanced2-Inheritance-and-coercion.pyproject +4 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced2-Inheritance-and-coercion/birthdayparty.py +46 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced2-Inheritance-and-coercion/doc/advanced2-Inheritance-and-coercion.rst +62 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced2-Inheritance-and-coercion/main.py +38 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced2-Inheritance-and-coercion/person.py +52 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced3-Default-properties/People/Main.qml +15 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced3-Default-properties/People/qmldir +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced3-Default-properties/advanced3-Default-properties.pyproject +4 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced3-Default-properties/birthdayparty.py +47 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced3-Default-properties/doc/advanced3-Default-properties.rst +40 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced3-Default-properties/main.py +38 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced3-Default-properties/person.py +51 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced4-Grouped-properties/People/Main.qml +33 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced4-Grouped-properties/People/qmldir +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced4-Grouped-properties/advanced4-Grouped-properties.pyproject +4 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced4-Grouped-properties/birthdayparty.py +47 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced4-Grouped-properties/doc/advanced4-Grouped-properties.rst +39 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced4-Grouped-properties/main.py +46 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced4-Grouped-properties/person.py +102 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced5-Attached-properties/People/Main.qml +22 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced5-Attached-properties/People/qmldir +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced5-Attached-properties/advanced5-Attached-properties.pyproject +4 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced5-Attached-properties/birthdayparty.py +71 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced5-Attached-properties/doc/advanced5-Attached-properties.rst +51 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced5-Attached-properties/main.py +48 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced5-Attached-properties/person.py +51 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced6-Property-value-source/People/Main.qml +27 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced6-Property-value-source/People/qmldir +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced6-Property-value-source/advanced6-Property-value-source.pyproject +4 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced6-Property-value-source/birthdayparty.py +89 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced6-Property-value-source/doc/advanced6-Property-value-source.rst +43 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced6-Property-value-source/happybirthdaysong.py +49 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced6-Property-value-source/main.py +53 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/advanced6-Property-value-source/person.py +51 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/binding/People/Main.qml +29 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/binding/People/qmldir +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/binding/binding.pyproject +4 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/binding/birthdayparty.py +83 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/binding/doc/binding.rst +17 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/binding/happybirthdaysong.py +47 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/binding/main.py +52 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/binding/person.py +53 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/extended/doc/extended.rst +41 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/extended/example.qml +8 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/extended/extended.pyproject +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/extended/main.py +95 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/methods/People/Main.qml +19 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/methods/People/qmldir +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/methods/birthdayparty.py +47 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/methods/doc/methods.rst +15 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/methods/main.py +32 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/methods/methods.pyproject +4 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/methods/person.py +34 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/properties/People/Main.qml +16 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/properties/People/qmldir +3 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/properties/birthdayparty.py +41 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/properties/doc/properties.rst +89 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/properties/main.py +34 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/properties/person.py +34 -0
- PySide6/examples/qml/tutorials/extending-qml-advanced/properties/properties.pyproject +4 -0
- PySide6/examples/qml/usingmodel/doc/usingmodel.png +0 -0
- PySide6/examples/qml/usingmodel/doc/usingmodel.rst +11 -0
- PySide6/examples/qml/usingmodel/usingmodel.py +74 -0
- PySide6/examples/qml/usingmodel/usingmodel.pyproject +3 -0
- PySide6/examples/qml/usingmodel/view.qml +21 -0
- PySide6/examples/quick/models/objectlistmodel/doc/objectlistmodel.png +0 -0
- PySide6/examples/quick/models/objectlistmodel/doc/objectlistmodel.rst +14 -0
- PySide6/examples/quick/models/objectlistmodel/objectlistmodel.py +61 -0
- PySide6/examples/quick/models/objectlistmodel/objectlistmodel.pyproject +3 -0
- PySide6/examples/quick/models/objectlistmodel/view.qml +15 -0
- PySide6/examples/quick/models/stringlistmodel/doc/stringlistmodel.png +0 -0
- PySide6/examples/quick/models/stringlistmodel/doc/stringlistmodel.rst +11 -0
- PySide6/examples/quick/models/stringlistmodel/stringlistmodel.py +26 -0
- PySide6/examples/quick/models/stringlistmodel/stringlistmodel.pyproject +3 -0
- PySide6/examples/quick/models/stringlistmodel/view.qml +17 -0
- PySide6/examples/quick/painteditem/doc/painteditem.png +0 -0
- PySide6/examples/quick/painteditem/doc/painteditem.rst +13 -0
- PySide6/examples/quick/painteditem/main.qml +77 -0
- PySide6/examples/quick/painteditem/painteditem.py +83 -0
- PySide6/examples/quick/painteditem/painteditem.pyproject +3 -0
- PySide6/examples/quick/rendercontrol/rendercontrol_opengl/cuberenderer.py +183 -0
- PySide6/examples/quick/rendercontrol/rendercontrol_opengl/demo.qml +161 -0
- PySide6/examples/quick/rendercontrol/rendercontrol_opengl/doc/rendercontrol_opengl.rst +5 -0
- PySide6/examples/quick/rendercontrol/rendercontrol_opengl/main.py +20 -0
- PySide6/examples/quick/rendercontrol/rendercontrol_opengl/rendercontrol_opengl.pyproject +6 -0
- PySide6/examples/quick/rendercontrol/rendercontrol_opengl/window_singlethreaded.py +272 -0
- PySide6/examples/quick/scenegraph/openglunderqml/doc/openglunderqml.rst +21 -0
- PySide6/examples/quick/scenegraph/openglunderqml/doc/squircle.png +0 -0
- PySide6/examples/quick/scenegraph/openglunderqml/main.py +27 -0
- PySide6/examples/quick/scenegraph/openglunderqml/main.qml +39 -0
- PySide6/examples/quick/scenegraph/openglunderqml/openglunderqml.pyproject +3 -0
- PySide6/examples/quick/scenegraph/openglunderqml/squircle.py +79 -0
- PySide6/examples/quick/scenegraph/openglunderqml/squirclerenderer.py +98 -0
- PySide6/examples/quick/scenegraph/scenegraph_customgeometry/doc/scenegraph_customgeometry.rst +7 -0
- PySide6/examples/quick/scenegraph/scenegraph_customgeometry/main.py +152 -0
- PySide6/examples/quick/scenegraph/scenegraph_customgeometry/main.qml +34 -0
- PySide6/examples/quick/scenegraph/scenegraph_customgeometry/scenegraph_customgeometry.pyproject +3 -0
- PySide6/examples/quick/shared/Button.qml +50 -0
- PySide6/examples/quick/shared/CheckBox.qml +59 -0
- PySide6/examples/quick/shared/FlickrRssModel.qml +45 -0
- PySide6/examples/quick/shared/Images.qml +14 -0
- PySide6/examples/quick/shared/Label.qml +9 -0
- PySide6/examples/quick/shared/LauncherList.qml +205 -0
- PySide6/examples/quick/shared/README +11 -0
- PySide6/examples/quick/shared/SimpleLauncherDelegate.qml +96 -0
- PySide6/examples/quick/shared/Slider.qml +82 -0
- PySide6/examples/quick/shared/TabSet.qml +69 -0
- PySide6/examples/quick/shared/TextField.qml +43 -0
- PySide6/examples/quick/shared/images/back.png +0 -0
- PySide6/examples/quick/shared/images/checkmark.png +0 -0
- PySide6/examples/quick/shared/images/next.png +0 -0
- PySide6/examples/quick/shared/images/qt-logo.png +0 -0
- PySide6/examples/quick/shared/images/slider_handle.png +0 -0
- PySide6/examples/quick/shared/images/tab.png +0 -0
- PySide6/examples/quick/shared/qmldir +11 -0
- PySide6/examples/quick/shared/quick_shared.qrc +15 -0
- PySide6/examples/quick/shared/shared.qrc +21 -0
- PySide6/examples/quick/shared/shared_rc.py +2253 -0
- PySide6/examples/quick/window/AllScreens.qml +42 -0
- PySide6/examples/quick/window/CurrentScreen.qml +83 -0
- PySide6/examples/quick/window/Splash.qml +42 -0
- PySide6/examples/quick/window/doc/window.png +0 -0
- PySide6/examples/quick/window/doc/window.rst +35 -0
- PySide6/examples/quick/window/main.py +40 -0
- PySide6/examples/quick/window/rc_window.py +335 -0
- PySide6/examples/quick/window/resources/icon.icns +0 -0
- PySide6/examples/quick/window/resources/icon.ico +0 -0
- PySide6/examples/quick/window/resources/icon.svg +208 -0
- PySide6/examples/quick/window/resources/icon64.png +0 -0
- PySide6/examples/quick/window/window.pyproject +3 -0
- PySide6/examples/quick/window/window.qml +151 -0
- PySide6/examples/quick/window/window.qrc +8 -0
- PySide6/examples/quick3d/customgeometry/customgeometry.pyproject +3 -0
- PySide6/examples/quick3d/customgeometry/doc/customgeometry-example.jpg +0 -0
- PySide6/examples/quick3d/customgeometry/doc/customgeometry.rst +17 -0
- PySide6/examples/quick3d/customgeometry/examplepoint.py +51 -0
- PySide6/examples/quick3d/customgeometry/exampletriangle.py +188 -0
- PySide6/examples/quick3d/customgeometry/main.py +29 -0
- PySide6/examples/quick3d/customgeometry/main.qml +240 -0
- PySide6/examples/quick3d/customgeometry/qt_logo_rect.png +0 -0
- PySide6/examples/quick3d/customgeometry/resources.qrc +6 -0
- PySide6/examples/quick3d/customgeometry/resources_rc.py +585 -0
- PySide6/examples/quick3d/intro/doc/intro.png +0 -0
- PySide6/examples/quick3d/intro/doc/intro.rst +9 -0
- PySide6/examples/quick3d/intro/intro.pyproject +3 -0
- PySide6/examples/quick3d/intro/main.py +24 -0
- PySide6/examples/quick3d/intro/main.qml +80 -0
- PySide6/examples/quick3d/proceduraltexture/ProceduralTextureModule/Main.qml +188 -0
- PySide6/examples/quick3d/proceduraltexture/ProceduralTextureModule/app.qrc +6 -0
- PySide6/examples/quick3d/proceduraltexture/ProceduralTextureModule/qmldir +2 -0
- PySide6/examples/quick3d/proceduraltexture/doc/proceduraltexture-example.webp +0 -0
- PySide6/examples/quick3d/proceduraltexture/doc/proceduraltexture.rst +12 -0
- PySide6/examples/quick3d/proceduraltexture/gradienttexture.py +105 -0
- PySide6/examples/quick3d/proceduraltexture/main.py +30 -0
- PySide6/examples/quick3d/proceduraltexture/proceduraltexture.pyproject +9 -0
- PySide6/examples/quickcontrols/contactslist/Contact/ContactDelegate.ui.qml +82 -0
- PySide6/examples/quickcontrols/contactslist/Contact/ContactDialog.qml +45 -0
- PySide6/examples/quickcontrols/contactslist/Contact/ContactForm.ui.qml +72 -0
- PySide6/examples/quickcontrols/contactslist/Contact/ContactList.qml +70 -0
- PySide6/examples/quickcontrols/contactslist/Contact/ContactView.ui.qml +36 -0
- PySide6/examples/quickcontrols/contactslist/Contact/SectionDelegate.ui.qml +17 -0
- PySide6/examples/quickcontrols/contactslist/Contact/qmldir +7 -0
- PySide6/examples/quickcontrols/contactslist/contactlist.pyproject +10 -0
- PySide6/examples/quickcontrols/contactslist/contactmodel.py +116 -0
- PySide6/examples/quickcontrols/contactslist/doc/contactslist.rst +15 -0
- PySide6/examples/quickcontrols/contactslist/doc/qtquickcontrols-contactlist.png +0 -0
- PySide6/examples/quickcontrols/contactslist/main.py +27 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/Main.qml +185 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/app.qrc +15 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons/app_icon.svg +2 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons/folder_closed.svg +38 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons/folder_open.svg +38 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons/generic_file.svg +38 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons/globe.svg +38 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons/info_sign.svg +38 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons/light_bulb.svg +43 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons/qt_logo.svg +26 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons/read.svg +38 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons/resize.svg +6 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/icons.qrc +14 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/qml/About.qml +93 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/qml/Colors.qml +23 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/qml/Editor.qml +160 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/qml/FileSystemView.qml +156 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/qml/MyMenu.qml +45 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/qml/MyMenuBar.qml +177 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/qml/ResizeButton.qml +23 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/qml/Sidebar.qml +138 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/qml/WindowDragHandler.qml +16 -0
- PySide6/examples/quickcontrols/filesystemexplorer/FileSystemModule/qmldir +11 -0
- PySide6/examples/quickcontrols/filesystemexplorer/doc/filesystemexplorer.rst +52 -0
- PySide6/examples/quickcontrols/filesystemexplorer/doc/filesystemexplorer.webp +0 -0
- PySide6/examples/quickcontrols/filesystemexplorer/editormodels.py +116 -0
- PySide6/examples/quickcontrols/filesystemexplorer/filesystemexplorer.pyproject +29 -0
- PySide6/examples/quickcontrols/filesystemexplorer/main.py +48 -0
- PySide6/examples/quickcontrols/gallery/+Material/ToolBar.qml +8 -0
- PySide6/examples/quickcontrols/gallery/ToolBar.qml +6 -0
- PySide6/examples/quickcontrols/gallery/doc/gallery.png +0 -0
- PySide6/examples/quickcontrols/gallery/doc/gallery.rst +9 -0
- PySide6/examples/quickcontrols/gallery/doc/images/qtquickcontrols2-gallery-drawer.png +0 -0
- PySide6/examples/quickcontrols/gallery/doc/images/qtquickcontrols2-gallery-menu.png +0 -0
- PySide6/examples/quickcontrols/gallery/doc/images/qtquickcontrols2-gallery-welcome.png +0 -0
- PySide6/examples/quickcontrols/gallery/gallery.py +52 -0
- PySide6/examples/quickcontrols/gallery/gallery.pyproject +36 -0
- PySide6/examples/quickcontrols/gallery/gallery.qml +318 -0
- PySide6/examples/quickcontrols/gallery/gallery.qrc +61 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20/back.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20/drawer.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20/menu.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20@2/back.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20@2/drawer.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20@2/menu.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20@3/back.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20@3/drawer.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20@3/menu.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20@4/back.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20@4/drawer.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/20x20@4/menu.png +0 -0
- PySide6/examples/quickcontrols/gallery/icons/gallery/index.theme +24 -0
- PySide6/examples/quickcontrols/gallery/images/arrow.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/arrow@2x.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/arrow@3x.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/arrow@4x.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/arrows.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/arrows@2x.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/arrows@3x.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/arrows@4x.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/qt-logo.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/qt-logo@2x.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/qt-logo@3x.png +0 -0
- PySide6/examples/quickcontrols/gallery/images/qt-logo@4x.png +0 -0
- PySide6/examples/quickcontrols/gallery/pages/BusyIndicatorPage.qml +28 -0
- PySide6/examples/quickcontrols/gallery/pages/ButtonPage.qml +44 -0
- PySide6/examples/quickcontrols/gallery/pages/CheckBoxPage.qml +40 -0
- PySide6/examples/quickcontrols/gallery/pages/ComboBoxPage.qml +51 -0
- PySide6/examples/quickcontrols/gallery/pages/DelayButtonPage.qml +27 -0
- PySide6/examples/quickcontrols/gallery/pages/DelegatePage.qml +201 -0
- PySide6/examples/quickcontrols/gallery/pages/DialPage.qml +27 -0
- PySide6/examples/quickcontrols/gallery/pages/DialogPage.qml +179 -0
- PySide6/examples/quickcontrols/gallery/pages/FramePage.qml +47 -0
- PySide6/examples/quickcontrols/gallery/pages/GroupBoxPage.qml +48 -0
- PySide6/examples/quickcontrols/gallery/pages/PageIndicatorPage.qml +27 -0
- PySide6/examples/quickcontrols/gallery/pages/ProgressBarPage.qml +33 -0
- PySide6/examples/quickcontrols/gallery/pages/RadioButtonPage.qml +39 -0
- PySide6/examples/quickcontrols/gallery/pages/RangeSliderPage.qml +35 -0
- PySide6/examples/quickcontrols/gallery/pages/ScrollBarPage.qml +40 -0
- PySide6/examples/quickcontrols/gallery/pages/ScrollIndicatorPage.qml +40 -0
- PySide6/examples/quickcontrols/gallery/pages/ScrollablePage.qml +24 -0
- PySide6/examples/quickcontrols/gallery/pages/SliderPage.qml +33 -0
- PySide6/examples/quickcontrols/gallery/pages/SpinBoxPage.qml +29 -0
- PySide6/examples/quickcontrols/gallery/pages/StackViewPage.qml +58 -0
- PySide6/examples/quickcontrols/gallery/pages/SwipeViewPage.qml +49 -0
- PySide6/examples/quickcontrols/gallery/pages/SwitchPage.qml +39 -0
- PySide6/examples/quickcontrols/gallery/pages/TabBarPage.qml +57 -0
- PySide6/examples/quickcontrols/gallery/pages/TextAreaPage.qml +29 -0
- PySide6/examples/quickcontrols/gallery/pages/TextFieldPage.qml +27 -0
- PySide6/examples/quickcontrols/gallery/pages/ToolTipPage.qml +30 -0
- PySide6/examples/quickcontrols/gallery/pages/TumblerPage.qml +26 -0
- PySide6/examples/quickcontrols/gallery/qmldir +1 -0
- PySide6/examples/quickcontrols/gallery/qtquickcontrols2.conf +8 -0
- PySide6/examples/quickcontrols/gallery/rc_gallery.py +4410 -0
- PySide6/examples/remoteobjects/modelview/modelview.pyproject +3 -0
- PySide6/examples/remoteobjects/modelview/modelviewclient.py +24 -0
- PySide6/examples/remoteobjects/modelview/modelviewserver.py +103 -0
- PySide6/examples/samplebinding/CMakeLists.txt +252 -0
- PySide6/examples/samplebinding/bindings.h +10 -0
- PySide6/examples/samplebinding/bindings.xml +31 -0
- PySide6/examples/samplebinding/doc/bindings.h.rstinc +2 -0
- PySide6/examples/samplebinding/doc/bindings.xml.rstinc +31 -0
- PySide6/examples/samplebinding/doc/samplebinding.pyproject +11 -0
- PySide6/examples/samplebinding/doc/samplebinding.rst +288 -0
- PySide6/examples/samplebinding/icecream.cpp +26 -0
- PySide6/examples/samplebinding/icecream.h +26 -0
- PySide6/examples/samplebinding/macros.h +21 -0
- PySide6/examples/samplebinding/main.py +64 -0
- PySide6/examples/samplebinding/truck.cpp +93 -0
- PySide6/examples/samplebinding/truck.h +46 -0
- PySide6/examples/scriptableapplication/CMakeLists.txt +228 -0
- PySide6/examples/scriptableapplication/doc/scriptableapplication.pyproject +9 -0
- PySide6/examples/scriptableapplication/doc/scriptableapplication.rst +195 -0
- PySide6/examples/scriptableapplication/main.cpp +17 -0
- PySide6/examples/scriptableapplication/mainwindow.cpp +107 -0
- PySide6/examples/scriptableapplication/mainwindow.h +31 -0
- PySide6/examples/scriptableapplication/pyside.pri +52 -0
- PySide6/examples/scriptableapplication/pythonutils.cpp +134 -0
- PySide6/examples/scriptableapplication/pythonutils.h +34 -0
- PySide6/examples/scriptableapplication/scriptableapplication.pro +85 -0
- PySide6/examples/scriptableapplication/scriptableapplication.xml +9 -0
- PySide6/examples/scriptableapplication/wrappedclasses.h +9 -0
- PySide6/examples/serialbus/can/bitratebox.py +55 -0
- PySide6/examples/serialbus/can/can.pyproject +10 -0
- PySide6/examples/serialbus/can/can.qrc +8 -0
- PySide6/examples/serialbus/can/canbusdeviceinfobox.py +49 -0
- PySide6/examples/serialbus/can/canbusdeviceinfobox.ui +86 -0
- PySide6/examples/serialbus/can/canbusdeviceinfodialog.py +16 -0
- PySide6/examples/serialbus/can/canbusdeviceinfodialog.ui +66 -0
- PySide6/examples/serialbus/can/connectdialog.py +235 -0
- PySide6/examples/serialbus/can/connectdialog.ui +278 -0
- PySide6/examples/serialbus/can/doc/can.rst +6 -0
- PySide6/examples/serialbus/can/images/application-exit.png +0 -0
- PySide6/examples/serialbus/can/images/clear.png +0 -0
- PySide6/examples/serialbus/can/images/connect.png +0 -0
- PySide6/examples/serialbus/can/images/disconnect.png +0 -0
- PySide6/examples/serialbus/can/main.py +18 -0
- PySide6/examples/serialbus/can/mainwindow.py +238 -0
- PySide6/examples/serialbus/can/mainwindow.ui +207 -0
- PySide6/examples/serialbus/can/rc_can.py +3453 -0
- PySide6/examples/serialbus/can/receivedframesmodel.py +142 -0
- PySide6/examples/serialbus/can/receivedframesview.py +54 -0
- PySide6/examples/serialbus/can/sendframebox.py +195 -0
- PySide6/examples/serialbus/can/sendframebox.ui +211 -0
- PySide6/examples/serialbus/can/ui_canbusdeviceinfobox.py +88 -0
- PySide6/examples/serialbus/can/ui_canbusdeviceinfodialog.py +64 -0
- PySide6/examples/serialbus/can/ui_connectdialog.py +252 -0
- PySide6/examples/serialbus/can/ui_mainwindow.py +172 -0
- PySide6/examples/serialbus/can/ui_sendframebox.py +188 -0
- PySide6/examples/serialbus/modbus/modbusclient/doc/modbusclient.rst +9 -0
- PySide6/examples/serialbus/modbus/modbusclient/images/application-exit.png +0 -0
- PySide6/examples/serialbus/modbus/modbusclient/images/connect.png +0 -0
- PySide6/examples/serialbus/modbus/modbusclient/images/disconnect.png +0 -0
- PySide6/examples/serialbus/modbus/modbusclient/images/settings.png +0 -0
- PySide6/examples/serialbus/modbus/modbusclient/main.py +26 -0
- PySide6/examples/serialbus/modbus/modbusclient/mainwindow.py +331 -0
- PySide6/examples/serialbus/modbus/modbusclient/mainwindow.ui +520 -0
- PySide6/examples/serialbus/modbus/modbusclient/modbusclient.pyproject +5 -0
- PySide6/examples/serialbus/modbus/modbusclient/modbusclient.qrc +8 -0
- PySide6/examples/serialbus/modbus/modbusclient/rc_modbusclient.py +3672 -0
- PySide6/examples/serialbus/modbus/modbusclient/settingsdialog.py +52 -0
- PySide6/examples/serialbus/modbus/modbusclient/settingsdialog.ui +237 -0
- PySide6/examples/serialbus/modbus/modbusclient/ui_mainwindow.py +377 -0
- PySide6/examples/serialbus/modbus/modbusclient/ui_settingsdialog.py +173 -0
- PySide6/examples/serialbus/modbus/modbusclient/writeregistermodel.py +118 -0
- PySide6/examples/serialport/terminal/console.py +49 -0
- PySide6/examples/serialport/terminal/doc/terminal.rst +9 -0
- PySide6/examples/serialport/terminal/images/application-exit.png +0 -0
- PySide6/examples/serialport/terminal/images/clear.png +0 -0
- PySide6/examples/serialport/terminal/images/connect.png +0 -0
- PySide6/examples/serialport/terminal/images/disconnect.png +0 -0
- PySide6/examples/serialport/terminal/images/settings.png +0 -0
- PySide6/examples/serialport/terminal/main.py +17 -0
- PySide6/examples/serialport/terminal/mainwindow.py +108 -0
- PySide6/examples/serialport/terminal/mainwindow.ui +162 -0
- PySide6/examples/serialport/terminal/rc_terminal.py +4464 -0
- PySide6/examples/serialport/terminal/settingsdialog.py +180 -0
- PySide6/examples/serialport/terminal/settingsdialog.ui +177 -0
- PySide6/examples/serialport/terminal/terminal.pyproject +4 -0
- PySide6/examples/serialport/terminal/terminal.qrc +9 -0
- PySide6/examples/serialport/terminal/ui_mainwindow.py +149 -0
- PySide6/examples/serialport/terminal/ui_settingsdialog.py +181 -0
- PySide6/examples/spatialaudio/audiopanning/audiopanning.pyproject +3 -0
- PySide6/examples/spatialaudio/audiopanning/doc/audiopanning.rst +15 -0
- PySide6/examples/spatialaudio/audiopanning/main.py +193 -0
- PySide6/examples/speech/hello_speak/doc/hello_speak.rst +16 -0
- PySide6/examples/speech/hello_speak/doc/hello_speak.webp +0 -0
- PySide6/examples/speech/hello_speak/hello_speak.pyproject +5 -0
- PySide6/examples/speech/hello_speak/main.py +20 -0
- PySide6/examples/speech/hello_speak/mainwindow.py +134 -0
- PySide6/examples/speech/hello_speak/mainwindow.ui +267 -0
- PySide6/examples/speech/hello_speak/ui_mainwindow.py +211 -0
- PySide6/examples/sql/books/bookdelegate.py +97 -0
- PySide6/examples/sql/books/books.pyproject +5 -0
- PySide6/examples/sql/books/books.qrc +6 -0
- PySide6/examples/sql/books/bookwindow.py +98 -0
- PySide6/examples/sql/books/bookwindow.ui +164 -0
- PySide6/examples/sql/books/createdb.py +96 -0
- PySide6/examples/sql/books/doc/books.png +0 -0
- PySide6/examples/sql/books/doc/books.rst +11 -0
- PySide6/examples/sql/books/images/star-filled.svg +1 -0
- PySide6/examples/sql/books/images/star.svg +1 -0
- PySide6/examples/sql/books/main.py +16 -0
- PySide6/examples/sql/books/rc_books.py +118 -0
- PySide6/examples/sql/books/ui_bookwindow.py +135 -0
- PySide6/examples/sql/relationaltablemodel/connection.py +18 -0
- PySide6/examples/sql/relationaltablemodel/relationaltablemodel.py +77 -0
- PySide6/examples/statemachine/moveblocks/doc/moveblocks.png +0 -0
- PySide6/examples/statemachine/moveblocks/doc/moveblocks.rst +10 -0
- PySide6/examples/statemachine/moveblocks/moveblocks.py +222 -0
- PySide6/examples/statemachine/moveblocks/moveblocks.pyproject +3 -0
- PySide6/examples/statemachine/ping_pong/ping_pong.py +70 -0
- PySide6/examples/statemachine/ping_pong/ping_pong.pyproject +3 -0
- PySide6/examples/statemachine/rogue/rogue.py +179 -0
- PySide6/examples/statemachine/rogue/rogue.pyproject +3 -0
- PySide6/examples/statemachine/trafficlight/doc/trafficlight.png +0 -0
- PySide6/examples/statemachine/trafficlight/doc/trafficlight.rst +10 -0
- PySide6/examples/statemachine/trafficlight/trafficlight.py +117 -0
- PySide6/examples/statemachine/trafficlight/trafficlight.pyproject +3 -0
- PySide6/examples/uitools/uiloader/uiloader.py +35 -0
- PySide6/examples/uitools/uiloader/uiloader.pyproject +3 -0
- PySide6/examples/utils/pyside_config.py +340 -0
- PySide6/examples/webchannel/standalone/core.py +25 -0
- PySide6/examples/webchannel/standalone/dialog.py +32 -0
- PySide6/examples/webchannel/standalone/dialog.ui +48 -0
- PySide6/examples/webchannel/standalone/doc/standalone.png +0 -0
- PySide6/examples/webchannel/standalone/doc/standalone.rst +8 -0
- PySide6/examples/webchannel/standalone/index.html +79 -0
- PySide6/examples/webchannel/standalone/main.py +62 -0
- PySide6/examples/webchannel/standalone/standalone.pyproject +4 -0
- PySide6/examples/webchannel/standalone/ui_dialog.py +57 -0
- PySide6/examples/webchannel/standalone/websocketclientwrapper.py +35 -0
- PySide6/examples/webchannel/standalone/websockettransport.py +51 -0
- PySide6/examples/webenginequick/nanobrowser/ApplicationRoot.qml +40 -0
- PySide6/examples/webenginequick/nanobrowser/BrowserDialog.qml +27 -0
- PySide6/examples/webenginequick/nanobrowser/BrowserWindow.qml +817 -0
- PySide6/examples/webenginequick/nanobrowser/DownloadView.qml +127 -0
- PySide6/examples/webenginequick/nanobrowser/FindBar.qml +95 -0
- PySide6/examples/webenginequick/nanobrowser/FullScreenNotification.qml +62 -0
- PySide6/examples/webenginequick/nanobrowser/doc/nanobrowser.png +0 -0
- PySide6/examples/webenginequick/nanobrowser/doc/nanobrowser.rst +8 -0
- PySide6/examples/webenginequick/nanobrowser/icons/3rdparty/COPYING +1 -0
- PySide6/examples/webenginequick/nanobrowser/icons/3rdparty/go-next.png +0 -0
- PySide6/examples/webenginequick/nanobrowser/icons/3rdparty/go-previous.png +0 -0
- PySide6/examples/webenginequick/nanobrowser/icons/3rdparty/process-stop.png +0 -0
- PySide6/examples/webenginequick/nanobrowser/icons/3rdparty/view-refresh.png +0 -0
- PySide6/examples/webenginequick/nanobrowser/nanobrowser.pyproject +6 -0
- PySide6/examples/webenginequick/nanobrowser/quicknanobrowser.py +70 -0
- PySide6/examples/webenginequick/nanobrowser/rc_resources.py +348 -0
- PySide6/examples/webenginequick/nanobrowser/resources.qrc +8 -0
- PySide6/examples/webenginewidgets/markdowneditor/document.py +24 -0
- PySide6/examples/webenginewidgets/markdowneditor/main.py +20 -0
- PySide6/examples/webenginewidgets/markdowneditor/mainwindow.py +137 -0
- PySide6/examples/webenginewidgets/markdowneditor/mainwindow.ui +107 -0
- PySide6/examples/webenginewidgets/markdowneditor/markdowneditor.pyproject +8 -0
- PySide6/examples/webenginewidgets/markdowneditor/previewpage.py +18 -0
- PySide6/examples/webenginewidgets/markdowneditor/rc_markdowneditor.py +852 -0
- PySide6/examples/webenginewidgets/markdowneditor/resources/3rdparty/MARKDOWN-LICENSE.txt +16 -0
- PySide6/examples/webenginewidgets/markdowneditor/resources/3rdparty/MARKED-LICENSE.txt +19 -0
- PySide6/examples/webenginewidgets/markdowneditor/resources/3rdparty/markdown.css +260 -0
- PySide6/examples/webenginewidgets/markdowneditor/resources/3rdparty/marked.js +1514 -0
- PySide6/examples/webenginewidgets/markdowneditor/resources/3rdparty/qt_attribution.json +35 -0
- PySide6/examples/webenginewidgets/markdowneditor/resources/default.md +12 -0
- PySide6/examples/webenginewidgets/markdowneditor/resources/index.html +32 -0
- PySide6/examples/webenginewidgets/markdowneditor/resources/markdowneditor.qrc +8 -0
- PySide6/examples/webenginewidgets/markdowneditor/ui_mainwindow.py +115 -0
- PySide6/examples/webenginewidgets/notifications/doc/notifications.png +0 -0
- PySide6/examples/webenginewidgets/notifications/doc/notifications.rst +8 -0
- PySide6/examples/webenginewidgets/notifications/main.py +57 -0
- PySide6/examples/webenginewidgets/notifications/notificationpopup.py +68 -0
- PySide6/examples/webenginewidgets/notifications/notifications.pyproject +3 -0
- PySide6/examples/webenginewidgets/notifications/resources/icon.png +0 -0
- PySide6/examples/webenginewidgets/notifications/resources/index.html +91 -0
- PySide6/examples/webenginewidgets/simplebrowser/browser.py +69 -0
- PySide6/examples/webenginewidgets/simplebrowser/browserwindow.py +500 -0
- PySide6/examples/webenginewidgets/simplebrowser/certificateerrordialog.ui +133 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/3rdparty/COPYING +1 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/3rdparty/dialog-error.png +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/3rdparty/edit-clear.png +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/3rdparty/go-bottom.png +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/3rdparty/go-next.png +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/3rdparty/go-previous.png +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/3rdparty/process-stop.png +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/3rdparty/qt_attribution.json +24 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/3rdparty/text-html.png +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/3rdparty/view-refresh.png +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/AppLogoColor.png +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/ninja.png +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/rc_simplebrowser.py +1391 -0
- PySide6/examples/webenginewidgets/simplebrowser/data/simplebrowser.qrc +16 -0
- PySide6/examples/webenginewidgets/simplebrowser/doc/simplebrowser.rst +177 -0
- PySide6/examples/webenginewidgets/simplebrowser/doc/simplebrowser.webp +0 -0
- PySide6/examples/webenginewidgets/simplebrowser/downloadmanagerwidget.py +51 -0
- PySide6/examples/webenginewidgets/simplebrowser/downloadmanagerwidget.ui +104 -0
- PySide6/examples/webenginewidgets/simplebrowser/downloadwidget.py +109 -0
- PySide6/examples/webenginewidgets/simplebrowser/downloadwidget.ui +78 -0
- PySide6/examples/webenginewidgets/simplebrowser/main.py +45 -0
- PySide6/examples/webenginewidgets/simplebrowser/passworddialog.ui +121 -0
- PySide6/examples/webenginewidgets/simplebrowser/simplebrowser.pyproject +7 -0
- PySide6/examples/webenginewidgets/simplebrowser/tabwidget.py +241 -0
- PySide6/examples/webenginewidgets/simplebrowser/ui_certificateerrordialog.py +87 -0
- PySide6/examples/webenginewidgets/simplebrowser/ui_downloadmanagerwidget.py +76 -0
- PySide6/examples/webenginewidgets/simplebrowser/ui_downloadwidget.py +86 -0
- PySide6/examples/webenginewidgets/simplebrowser/ui_passworddialog.py +96 -0
- PySide6/examples/webenginewidgets/simplebrowser/webpage.py +29 -0
- PySide6/examples/webenginewidgets/simplebrowser/webpopupwindow.py +53 -0
- PySide6/examples/webenginewidgets/simplebrowser/webview.py +294 -0
- PySide6/examples/webenginewidgets/widgetsnanobrowser/doc/widgetsnanobrowser.png +0 -0
- PySide6/examples/webenginewidgets/widgetsnanobrowser/doc/widgetsnanobrowser.rst +8 -0
- PySide6/examples/webenginewidgets/widgetsnanobrowser/widgetsnanobrowser.py +70 -0
- PySide6/examples/webenginewidgets/widgetsnanobrowser/widgetsnanobrowser.pyproject +3 -0
- PySide6/examples/widgetbinding/CMakeLists.txt +294 -0
- PySide6/examples/widgetbinding/bindings.h +7 -0
- PySide6/examples/widgetbinding/bindings.xml +9 -0
- PySide6/examples/widgetbinding/dialog.py +33 -0
- PySide6/examples/widgetbinding/doc/widgetbinding.md +74 -0
- PySide6/examples/widgetbinding/doc/widgetbinding.pyproject +10 -0
- PySide6/examples/widgetbinding/macros.h +16 -0
- PySide6/examples/widgetbinding/main.py +14 -0
- PySide6/examples/widgetbinding/registerwigglywidget.py +31 -0
- PySide6/examples/widgetbinding/wigglywidget.cpp +92 -0
- PySide6/examples/widgetbinding/wigglywidget.h +40 -0
- PySide6/examples/widgetbinding/wigglywidget.py +69 -0
- PySide6/examples/widgets/animation/animatedtiles/animatedtiles.py +231 -0
- PySide6/examples/widgets/animation/animatedtiles/animatedtiles.pyproject +3 -0
- PySide6/examples/widgets/animation/animatedtiles/animatedtiles.qrc +11 -0
- PySide6/examples/widgets/animation/animatedtiles/animatedtiles_rc.py +6108 -0
- PySide6/examples/widgets/animation/animatedtiles/doc/animatedtiles.png +0 -0
- PySide6/examples/widgets/animation/animatedtiles/doc/animatedtiles.rst +8 -0
- PySide6/examples/widgets/animation/animatedtiles/images/Time-For-Lunch-2.jpg +0 -0
- PySide6/examples/widgets/animation/animatedtiles/images/centered.png +0 -0
- PySide6/examples/widgets/animation/animatedtiles/images/ellipse.png +0 -0
- PySide6/examples/widgets/animation/animatedtiles/images/figure8.png +0 -0
- PySide6/examples/widgets/animation/animatedtiles/images/kinetic.png +0 -0
- PySide6/examples/widgets/animation/animatedtiles/images/random.png +0 -0
- PySide6/examples/widgets/animation/animatedtiles/images/tile.png +0 -0
- PySide6/examples/widgets/animation/appchooser/accessories-dictionary.png +0 -0
- PySide6/examples/widgets/animation/appchooser/akregator.png +0 -0
- PySide6/examples/widgets/animation/appchooser/appchooser.py +99 -0
- PySide6/examples/widgets/animation/appchooser/appchooser.pyproject +3 -0
- PySide6/examples/widgets/animation/appchooser/appchooser.qrc +8 -0
- PySide6/examples/widgets/animation/appchooser/appchooser_rc.py +1424 -0
- PySide6/examples/widgets/animation/appchooser/digikam.png +0 -0
- PySide6/examples/widgets/animation/appchooser/doc/appchooser.png +0 -0
- PySide6/examples/widgets/animation/appchooser/doc/appchooser.rst +9 -0
- PySide6/examples/widgets/animation/appchooser/k3b.png +0 -0
- PySide6/examples/widgets/animation/easing/doc/easing.png +0 -0
- PySide6/examples/widgets/animation/easing/doc/easing.rst +9 -0
- PySide6/examples/widgets/animation/easing/easing.py +219 -0
- PySide6/examples/widgets/animation/easing/easing.pyproject +3 -0
- PySide6/examples/widgets/animation/easing/form.ui +270 -0
- PySide6/examples/widgets/animation/easing/ui_form.py +178 -0
- PySide6/examples/widgets/animation/states/doc/states.png +0 -0
- PySide6/examples/widgets/animation/states/doc/states.rst +8 -0
- PySide6/examples/widgets/animation/states/states.py +235 -0
- PySide6/examples/widgets/animation/states/states.pyproject +3 -0
- PySide6/examples/widgets/animation/states/states_rc.py +2182 -0
- PySide6/examples/widgets/desktop/screenshot/doc/screenshot.png +0 -0
- PySide6/examples/widgets/desktop/screenshot/doc/screenshot.rst +8 -0
- PySide6/examples/widgets/desktop/screenshot/screenshot.py +156 -0
- PySide6/examples/widgets/desktop/screenshot/screenshot.pyproject +3 -0
- PySide6/examples/widgets/desktop/systray/images/bad.png +0 -0
- PySide6/examples/widgets/desktop/systray/images/heart.png +0 -0
- PySide6/examples/widgets/desktop/systray/images/trash.png +0 -0
- PySide6/examples/widgets/desktop/systray/main.py +21 -0
- PySide6/examples/widgets/desktop/systray/rc_systray.py +2581 -0
- PySide6/examples/widgets/desktop/systray/systray.pyproject +3 -0
- PySide6/examples/widgets/desktop/systray/systray.qrc +7 -0
- PySide6/examples/widgets/desktop/systray/window.py +236 -0
- PySide6/examples/widgets/dialogs/classwizard/classwizard.py +380 -0
- PySide6/examples/widgets/dialogs/classwizard/classwizard.pyproject +3 -0
- PySide6/examples/widgets/dialogs/classwizard/classwizard.qrc +7 -0
- PySide6/examples/widgets/dialogs/classwizard/classwizard_rc.py +2316 -0
- PySide6/examples/widgets/dialogs/classwizard/doc/classwizard.png +0 -0
- PySide6/examples/widgets/dialogs/classwizard/doc/classwizard.rst +11 -0
- PySide6/examples/widgets/dialogs/classwizard/images/background.png +0 -0
- PySide6/examples/widgets/dialogs/classwizard/images/banner.png +0 -0
- PySide6/examples/widgets/dialogs/classwizard/images/watermark1.png +0 -0
- PySide6/examples/widgets/dialogs/classwizard/listchooser.py +173 -0
- PySide6/examples/widgets/dialogs/extension/extension.py +77 -0
- PySide6/examples/widgets/dialogs/extension/extension.pyproject +3 -0
- PySide6/examples/widgets/dialogs/licensewizard/doc/licensewizard.png +0 -0
- PySide6/examples/widgets/dialogs/licensewizard/doc/licensewizard.rst +9 -0
- PySide6/examples/widgets/dialogs/licensewizard/images/logo.png +0 -0
- PySide6/examples/widgets/dialogs/licensewizard/images/watermark.png +0 -0
- PySide6/examples/widgets/dialogs/licensewizard/licensewizard.py +298 -0
- PySide6/examples/widgets/dialogs/licensewizard/licensewizard.pyproject +3 -0
- PySide6/examples/widgets/dialogs/licensewizard/main.py +15 -0
- PySide6/examples/widgets/dialogs/standarddialogs/standarddialogs.py +437 -0
- PySide6/examples/widgets/dialogs/standarddialogs/standarddialogs.pyproject +3 -0
- PySide6/examples/widgets/dialogs/tabdialog/doc/tabdialog.png +0 -0
- PySide6/examples/widgets/dialogs/tabdialog/doc/tabdialog.rst +13 -0
- PySide6/examples/widgets/dialogs/tabdialog/tabdialog.py +178 -0
- PySide6/examples/widgets/dialogs/tabdialog/tabdialog.pyproject +3 -0
- PySide6/examples/widgets/dialogs/trivialwizard/trivialwizard.py +63 -0
- PySide6/examples/widgets/dialogs/trivialwizard/trivialwizard.pyproject +3 -0
- PySide6/examples/widgets/draganddrop/draggableicons/doc/draggableicons.png +0 -0
- PySide6/examples/widgets/draganddrop/draggableicons/doc/draggableicons.rst +9 -0
- PySide6/examples/widgets/draganddrop/draggableicons/draggableicons.py +128 -0
- PySide6/examples/widgets/draganddrop/draggableicons/draggableicons.qrc +7 -0
- PySide6/examples/widgets/draganddrop/draggableicons/images/boat.png +0 -0
- PySide6/examples/widgets/draganddrop/draggableicons/images/car.png +0 -0
- PySide6/examples/widgets/draganddrop/draggableicons/images/house.png +0 -0
- PySide6/examples/widgets/draganddrop/draggabletext/draggabletext.py +119 -0
- PySide6/examples/widgets/draganddrop/draggabletext/draggabletext.pyproject +3 -0
- PySide6/examples/widgets/draganddrop/draggabletext/draggabletext.qrc +5 -0
- PySide6/examples/widgets/draganddrop/draggabletext/draggabletext_rc.py +55 -0
- PySide6/examples/widgets/draganddrop/draggabletext/words.txt +41 -0
- PySide6/examples/widgets/draganddrop/dropsite/doc/dropsite.rst +8 -0
- PySide6/examples/widgets/draganddrop/dropsite/droparea.py +67 -0
- PySide6/examples/widgets/draganddrop/dropsite/dropsite.pyproject +3 -0
- PySide6/examples/widgets/draganddrop/dropsite/dropsitewindow.py +115 -0
- PySide6/examples/widgets/draganddrop/dropsite/main.py +15 -0
- PySide6/examples/widgets/effects/blurpicker/blureffect.py +33 -0
- PySide6/examples/widgets/effects/blurpicker/blurpicker.py +105 -0
- PySide6/examples/widgets/effects/blurpicker/blurpicker.pyproject +17 -0
- PySide6/examples/widgets/effects/blurpicker/doc/blurpicker.png +0 -0
- PySide6/examples/widgets/effects/blurpicker/doc/blurpicker.rst +9 -0
- PySide6/examples/widgets/effects/blurpicker/images/README.txt +5 -0
- PySide6/examples/widgets/effects/blurpicker/images/accessories-calculator.png +0 -0
- PySide6/examples/widgets/effects/blurpicker/images/accessories-text-editor.png +0 -0
- PySide6/examples/widgets/effects/blurpicker/images/background.jpg +0 -0
- PySide6/examples/widgets/effects/blurpicker/images/help-browser.png +0 -0
- PySide6/examples/widgets/effects/blurpicker/images/internet-group-chat.png +0 -0
- PySide6/examples/widgets/effects/blurpicker/images/internet-mail.png +0 -0
- PySide6/examples/widgets/effects/blurpicker/images/internet-web-browser.png +0 -0
- PySide6/examples/widgets/effects/blurpicker/images/office-calendar.png +0 -0
- PySide6/examples/widgets/effects/blurpicker/images/system-users.png +0 -0
- PySide6/examples/widgets/effects/blurpicker/main.py +20 -0
- PySide6/examples/widgets/effects/lighting/lighting.py +107 -0
- PySide6/examples/widgets/effects/lighting/lighting.pyproject +3 -0
- PySide6/examples/widgets/gettext/doc/gettext.rst +7 -0
- PySide6/examples/widgets/gettext/gettext.pyproject +4 -0
- PySide6/examples/widgets/gettext/locales/de_DE/LC_MESSAGES/example.mo +0 -0
- PySide6/examples/widgets/gettext/locales/de_DE/LC_MESSAGES/example.pot +32 -0
- PySide6/examples/widgets/gettext/locales/example.pot +32 -0
- PySide6/examples/widgets/gettext/main.py +60 -0
- PySide6/examples/widgets/graphicsview/anchorlayout/anchorlayout.py +90 -0
- PySide6/examples/widgets/graphicsview/anchorlayout/anchorlayout.pyproject +3 -0
- PySide6/examples/widgets/graphicsview/collidingmice/collidingmice.py +178 -0
- PySide6/examples/widgets/graphicsview/collidingmice/collidingmice.pyproject +3 -0
- PySide6/examples/widgets/graphicsview/collidingmice/mice_rc.py +232 -0
- PySide6/examples/widgets/graphicsview/diagramscene/diagramscene.py +802 -0
- PySide6/examples/widgets/graphicsview/diagramscene/diagramscene.pyproject +3 -0
- PySide6/examples/widgets/graphicsview/diagramscene/diagramscene.qrc +19 -0
- PySide6/examples/widgets/graphicsview/diagramscene/diagramscene_rc.py +417 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/background1.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/background2.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/background3.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/background4.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/bold.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/bringtofront.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/delete.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/floodfill.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/italic.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/linecolor.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/linepointer.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/pointer.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/sendtoback.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/textpointer.png +0 -0
- PySide6/examples/widgets/graphicsview/diagramscene/images/underline.png +0 -0
- PySide6/examples/widgets/graphicsview/dragdroprobot/dragdroprobot.py +253 -0
- PySide6/examples/widgets/graphicsview/dragdroprobot/dragdroprobot.pyproject +3 -0
- PySide6/examples/widgets/graphicsview/dragdroprobot/dragdroprobot.qrc +5 -0
- PySide6/examples/widgets/graphicsview/dragdroprobot/dragdroprobot_rc.py +975 -0
- PySide6/examples/widgets/graphicsview/dragdroprobot/images/head.png +0 -0
- PySide6/examples/widgets/graphicsview/elasticnodes/elasticnodes.py +391 -0
- PySide6/examples/widgets/graphicsview/elasticnodes/elasticnodes.pyproject +3 -0
- PySide6/examples/widgets/imageviewer/imageviewer.py +277 -0
- PySide6/examples/widgets/imageviewer/imageviewer.pyproject +3 -0
- PySide6/examples/widgets/imageviewer/main.py +27 -0
- PySide6/examples/widgets/itemviews/address_book/adddialogwidget.py +65 -0
- PySide6/examples/widgets/itemviews/address_book/address_book.py +99 -0
- PySide6/examples/widgets/itemviews/address_book/address_book.pyproject +4 -0
- PySide6/examples/widgets/itemviews/address_book/addresswidget.py +215 -0
- PySide6/examples/widgets/itemviews/address_book/doc/address_book.png +0 -0
- PySide6/examples/widgets/itemviews/address_book/doc/address_book.rst +9 -0
- PySide6/examples/widgets/itemviews/address_book/newaddresstab.py +56 -0
- PySide6/examples/widgets/itemviews/address_book/tablemodel.py +109 -0
- PySide6/examples/widgets/itemviews/basicfiltermodel/basicsortfiltermodel.py +178 -0
- PySide6/examples/widgets/itemviews/basicfiltermodel/basicsortfiltermodel.pyproject +3 -0
- PySide6/examples/widgets/itemviews/dirview/dirview.py +59 -0
- PySide6/examples/widgets/itemviews/dirview/dirview.pyproject +3 -0
- PySide6/examples/widgets/itemviews/dirview/doc/dirview.rst +5 -0
- PySide6/examples/widgets/itemviews/editabletreemodel/default.txt +40 -0
- PySide6/examples/widgets/itemviews/editabletreemodel/doc/editabletreemodel.png +0 -0
- PySide6/examples/widgets/itemviews/editabletreemodel/doc/editabletreemodel.rst +10 -0
- PySide6/examples/widgets/itemviews/editabletreemodel/editabletreemodel.pyproject +7 -0
- PySide6/examples/widgets/itemviews/editabletreemodel/main.py +14 -0
- PySide6/examples/widgets/itemviews/editabletreemodel/mainwindow.py +163 -0
- PySide6/examples/widgets/itemviews/editabletreemodel/treeitem.py +94 -0
- PySide6/examples/widgets/itemviews/editabletreemodel/treemodel.py +199 -0
- PySide6/examples/widgets/itemviews/fetchmore/fetchmore.py +137 -0
- PySide6/examples/widgets/itemviews/fetchmore/fetchmore.pyproject +3 -0
- PySide6/examples/widgets/itemviews/jsonmodel/doc/jsonmodel.png +0 -0
- PySide6/examples/widgets/itemviews/jsonmodel/doc/jsonmodel.rst +8 -0
- PySide6/examples/widgets/itemviews/jsonmodel/example.json +26 -0
- PySide6/examples/widgets/itemviews/jsonmodel/jsonmodel.py +320 -0
- PySide6/examples/widgets/itemviews/jsonmodel/jsonmodel.pyproject +3 -0
- PySide6/examples/widgets/itemviews/spinboxdelegate/doc/spinboxdelegate.rst +5 -0
- PySide6/examples/widgets/itemviews/spinboxdelegate/spinboxdelegate.py +79 -0
- PySide6/examples/widgets/itemviews/spinboxdelegate/spinboxdelegate.pyproject +3 -0
- PySide6/examples/widgets/itemviews/spreadsheet/doc/spreadsheet.png +0 -0
- PySide6/examples/widgets/itemviews/spreadsheet/doc/spreadsheet.rst +10 -0
- PySide6/examples/widgets/itemviews/spreadsheet/main.py +19 -0
- PySide6/examples/widgets/itemviews/spreadsheet/spreadsheet.py +544 -0
- PySide6/examples/widgets/itemviews/spreadsheet/spreadsheetdelegate.py +67 -0
- PySide6/examples/widgets/itemviews/spreadsheet/spreadsheetitem.py +122 -0
- PySide6/examples/widgets/itemviews/stardelegate/doc/stardelegate.png +0 -0
- PySide6/examples/widgets/itemviews/stardelegate/doc/stardelegate.rst +10 -0
- PySide6/examples/widgets/itemviews/stardelegate/stardelegate.py +136 -0
- PySide6/examples/widgets/itemviews/stardelegate/stardelegate.pyproject +3 -0
- PySide6/examples/widgets/itemviews/stardelegate/stareditor.py +62 -0
- PySide6/examples/widgets/itemviews/stardelegate/starrating.py +62 -0
- PySide6/examples/widgets/layouts/basiclayouts/basiclayouts.py +98 -0
- PySide6/examples/widgets/layouts/basiclayouts/basiclayouts.pyproject +3 -0
- PySide6/examples/widgets/layouts/basiclayouts/doc/basiclayouts.png +0 -0
- PySide6/examples/widgets/layouts/basiclayouts/doc/basiclayouts.rst +9 -0
- PySide6/examples/widgets/layouts/borderlayout/borderlayout.py +248 -0
- PySide6/examples/widgets/layouts/borderlayout/borderlayout.pyproject +3 -0
- PySide6/examples/widgets/layouts/borderlayout/doc/borderlayout.png +0 -0
- PySide6/examples/widgets/layouts/borderlayout/doc/borderlayout.rst +10 -0
- PySide6/examples/widgets/layouts/dynamiclayouts/doc/dynamiclayouts.png +0 -0
- PySide6/examples/widgets/layouts/dynamiclayouts/doc/dynamiclayouts.rst +10 -0
- PySide6/examples/widgets/layouts/dynamiclayouts/dynamiclayouts.py +134 -0
- PySide6/examples/widgets/layouts/dynamiclayouts/dynamiclayouts.pyproject +3 -0
- PySide6/examples/widgets/layouts/flowlayout/doc/flowlayout.png +0 -0
- PySide6/examples/widgets/layouts/flowlayout/doc/flowlayout.rst +11 -0
- PySide6/examples/widgets/layouts/flowlayout/flowlayout.py +120 -0
- PySide6/examples/widgets/layouts/flowlayout/flowlayout.pyproject +3 -0
- PySide6/examples/widgets/linguist/doc/linguist.rst +7 -0
- PySide6/examples/widgets/linguist/example_de.ts +40 -0
- PySide6/examples/widgets/linguist/linguist.pyproject +3 -0
- PySide6/examples/widgets/linguist/linguist.qrc +5 -0
- PySide6/examples/widgets/linguist/linguist_rc.py +68 -0
- PySide6/examples/widgets/linguist/main.py +55 -0
- PySide6/examples/widgets/mainwindows/application/application.py +260 -0
- PySide6/examples/widgets/mainwindows/application/application.pyproject +3 -0
- PySide6/examples/widgets/mainwindows/application/application.qrc +10 -0
- PySide6/examples/widgets/mainwindows/application/application_rc.py +608 -0
- PySide6/examples/widgets/mainwindows/application/images/copy.png +0 -0
- PySide6/examples/widgets/mainwindows/application/images/cut.png +0 -0
- PySide6/examples/widgets/mainwindows/application/images/new.png +0 -0
- PySide6/examples/widgets/mainwindows/application/images/open.png +0 -0
- PySide6/examples/widgets/mainwindows/application/images/paste.png +0 -0
- PySide6/examples/widgets/mainwindows/application/images/save.png +0 -0
- PySide6/examples/widgets/mainwindows/dockwidgets/doc/dockwidgets.png +0 -0
- PySide6/examples/widgets/mainwindows/dockwidgets/doc/dockwidgets.rst +9 -0
- PySide6/examples/widgets/mainwindows/dockwidgets/dockwidgets.py +273 -0
- PySide6/examples/widgets/mainwindows/dockwidgets/dockwidgets.pyproject +3 -0
- PySide6/examples/widgets/mainwindows/dockwidgets/dockwidgets.qrc +8 -0
- PySide6/examples/widgets/mainwindows/dockwidgets/dockwidgets_rc.py +464 -0
- PySide6/examples/widgets/mainwindows/dockwidgets/images/new.png +0 -0
- PySide6/examples/widgets/mainwindows/dockwidgets/images/print.png +0 -0
- PySide6/examples/widgets/mainwindows/dockwidgets/images/save.png +0 -0
- PySide6/examples/widgets/mainwindows/dockwidgets/images/undo.png +0 -0
- PySide6/examples/widgets/mainwindows/mdi/mdi.py +447 -0
- PySide6/examples/widgets/mainwindows/mdi/mdi.pyproject +3 -0
- PySide6/examples/widgets/painting/basicdrawing/basicdrawing.py +310 -0
- PySide6/examples/widgets/painting/basicdrawing/basicdrawing.pyproject +3 -0
- PySide6/examples/widgets/painting/basicdrawing/basicdrawing.qrc +6 -0
- PySide6/examples/widgets/painting/basicdrawing/basicdrawing_rc.py +135 -0
- PySide6/examples/widgets/painting/basicdrawing/doc/basicdrawing.png +0 -0
- PySide6/examples/widgets/painting/basicdrawing/doc/basicdrawing.rst +15 -0
- PySide6/examples/widgets/painting/basicdrawing/images/brick.png +0 -0
- PySide6/examples/widgets/painting/basicdrawing/images/qt-logo.png +0 -0
- PySide6/examples/widgets/painting/concentriccircles/concentriccircles.py +109 -0
- PySide6/examples/widgets/painting/concentriccircles/concentriccircles.pyproject +3 -0
- PySide6/examples/widgets/painting/concentriccircles/doc/concentriccircles.png +0 -0
- PySide6/examples/widgets/painting/concentriccircles/doc/concentriccircles.rst +12 -0
- PySide6/examples/widgets/painting/painter/doc/painter.png +0 -0
- PySide6/examples/widgets/painting/painter/doc/painter.rst +8 -0
- PySide6/examples/widgets/painting/painter/painter.py +204 -0
- PySide6/examples/widgets/painting/painter/painter.pyproject +3 -0
- PySide6/examples/widgets/painting/plot/doc/plot.png +0 -0
- PySide6/examples/widgets/painting/plot/doc/plot.rst +36 -0
- PySide6/examples/widgets/painting/plot/plot.py +66 -0
- PySide6/examples/widgets/painting/plot/plot.pyproject +3 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/doc/simplerhiwidget.rst +34 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/doc/simplerhiwidget.webp +0 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/examplewidget.py +135 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/main.py +35 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/rc_simplerhiwidget.py +163 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/shader_assets/color.frag.qsb +0 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/shader_assets/color.vert.qsb +0 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/shaders/color.frag +10 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/shaders/color.vert +16 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/simplerhiwidget.pyproject +4 -0
- PySide6/examples/widgets/rhi/simplerhiwidget/simplerhiwidget.qrc +6 -0
- PySide6/examples/widgets/richtext/orderform/orderform.py +265 -0
- PySide6/examples/widgets/richtext/orderform/orderform.pyproject +3 -0
- PySide6/examples/widgets/richtext/syntaxhighlighter/doc/syntaxhighlighter.png +0 -0
- PySide6/examples/widgets/richtext/syntaxhighlighter/doc/syntaxhighlighter.rst +8 -0
- PySide6/examples/widgets/richtext/syntaxhighlighter/examples/example +79 -0
- PySide6/examples/widgets/richtext/syntaxhighlighter/syntaxhighlighter.py +109 -0
- PySide6/examples/widgets/richtext/syntaxhighlighter/syntaxhighlighter.pyproject +3 -0
- PySide6/examples/widgets/richtext/textedit/doc/textedit.png +0 -0
- PySide6/examples/widgets/richtext/textedit/doc/textedit.rst +8 -0
- PySide6/examples/widgets/richtext/textedit/example.html +79 -0
- PySide6/examples/widgets/richtext/textedit/images/logo32.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/checkbox-checked.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/checkbox.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/editcopy.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/editcut.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/editpaste.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/editredo.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/editundo.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/exportpdf.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/filenew.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/fileopen.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/fileprint.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/filesave.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/format-indent-less.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/format-indent-more.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/textbold.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/textcenter.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/textitalic.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/textjustify.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/textleft.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/textright.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/textunder.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/textundercolor.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/zoomin.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/mac/zoomout.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/checkbox-checked.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/checkbox.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/editcopy.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/editcut.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/editpaste.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/editredo.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/editundo.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/exportpdf.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/filenew.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/fileopen.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/fileprint.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/filesave.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/format-indent-less.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/format-indent-more.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/textbold.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/textcenter.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/textitalic.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/textjustify.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/textleft.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/textright.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/textunder.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/textundercolor.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/zoomin.png +0 -0
- PySide6/examples/widgets/richtext/textedit/images/win/zoomout.png +0 -0
- PySide6/examples/widgets/richtext/textedit/main.py +42 -0
- PySide6/examples/widgets/richtext/textedit/textedit.py +721 -0
- PySide6/examples/widgets/richtext/textedit/textedit.pyproject +3 -0
- PySide6/examples/widgets/richtext/textedit/textedit.qrc +54 -0
- PySide6/examples/widgets/richtext/textedit/textedit_rc.py +6029 -0
- PySide6/examples/widgets/richtext/textobject/doc/textobject.png +0 -0
- PySide6/examples/widgets/richtext/textobject/doc/textobject.rst +31 -0
- PySide6/examples/widgets/richtext/textobject/files/heart.svg +55 -0
- PySide6/examples/widgets/richtext/textobject/textobject.py +104 -0
- PySide6/examples/widgets/richtext/textobject/textobject.pyproject +3 -0
- PySide6/examples/widgets/thread_signals/thread_signals.py +62 -0
- PySide6/examples/widgets/thread_signals/thread_signals.pyproject +3 -0
- PySide6/examples/widgets/tools/regularexpression/doc/regularexpression.png +0 -0
- PySide6/examples/widgets/tools/regularexpression/doc/regularexpression.rst +10 -0
- PySide6/examples/widgets/tools/regularexpression/regularexpression.py +21 -0
- PySide6/examples/widgets/tools/regularexpression/regularexpression.pyproject +3 -0
- PySide6/examples/widgets/tools/regularexpression/regularexpressiondialog.py +456 -0
- PySide6/examples/widgets/tutorials/addressbook/addressbook.pyproject +4 -0
- PySide6/examples/widgets/tutorials/addressbook/doc/addressbook.png +0 -0
- PySide6/examples/widgets/tutorials/addressbook/doc/addressbook.rst +9 -0
- PySide6/examples/widgets/tutorials/addressbook/part1.py +38 -0
- PySide6/examples/widgets/tutorials/addressbook/part2.py +145 -0
- PySide6/examples/widgets/tutorials/addressbook/part3.py +214 -0
- PySide6/examples/widgets/tutorials/addressbook/part4.py +271 -0
- PySide6/examples/widgets/tutorials/addressbook/part5.py +330 -0
- PySide6/examples/widgets/tutorials/addressbook/part6.py +393 -0
- PySide6/examples/widgets/tutorials/addressbook/part7.py +444 -0
- PySide6/examples/widgets/tutorials/cannon/cannon.pyproject +5 -0
- PySide6/examples/widgets/tutorials/cannon/doc/cannon.png +0 -0
- PySide6/examples/widgets/tutorials/cannon/doc/cannon.rst +8 -0
- PySide6/examples/widgets/tutorials/cannon/t1.py +20 -0
- PySide6/examples/widgets/tutorials/cannon/t10.py +152 -0
- PySide6/examples/widgets/tutorials/cannon/t11.py +224 -0
- PySide6/examples/widgets/tutorials/cannon/t12.py +275 -0
- PySide6/examples/widgets/tutorials/cannon/t13.py +356 -0
- PySide6/examples/widgets/tutorials/cannon/t14.py +410 -0
- PySide6/examples/widgets/tutorials/cannon/t2.py +23 -0
- PySide6/examples/widgets/tutorials/cannon/t3.py +25 -0
- PySide6/examples/widgets/tutorials/cannon/t4.py +30 -0
- PySide6/examples/widgets/tutorials/cannon/t5.py +41 -0
- PySide6/examples/widgets/tutorials/cannon/t6.py +51 -0
- PySide6/examples/widgets/tutorials/cannon/t7.py +73 -0
- PySide6/examples/widgets/tutorials/cannon/t8.py +116 -0
- PySide6/examples/widgets/tutorials/cannon/t9.py +122 -0
- PySide6/examples/widgets/tutorials/modelview/1_readonly.py +38 -0
- PySide6/examples/widgets/tutorials/modelview/2_formatting.py +65 -0
- PySide6/examples/widgets/tutorials/modelview/3_changingmodel.py +53 -0
- PySide6/examples/widgets/tutorials/modelview/4_headers.py +43 -0
- PySide6/examples/widgets/tutorials/modelview/5_edit.py +73 -0
- PySide6/examples/widgets/tutorials/modelview/6_treeview.py +42 -0
- PySide6/examples/widgets/tutorials/modelview/7_selections.py +71 -0
- PySide6/examples/widgets/tutorials/modelview/doc/modelview.rst +4 -0
- PySide6/examples/widgets/tutorials/modelview/modelview.pyproject +9 -0
- PySide6/examples/widgets/widgets/charactermap/charactermap.pyproject +4 -0
- PySide6/examples/widgets/widgets/charactermap/characterwidget.py +133 -0
- PySide6/examples/widgets/widgets/charactermap/doc/charactermap.rst +8 -0
- PySide6/examples/widgets/widgets/charactermap/fontinfodialog.py +47 -0
- PySide6/examples/widgets/widgets/charactermap/main.py +17 -0
- PySide6/examples/widgets/widgets/charactermap/mainwindow.py +167 -0
- PySide6/examples/widgets/widgets/digitalclock/digitalclock.py +41 -0
- PySide6/examples/widgets/widgets/digitalclock/digitalclock.pyproject +3 -0
- PySide6/examples/widgets/widgets/digitalclock/doc/digitalclock-screenshot.png +0 -0
- PySide6/examples/widgets/widgets/digitalclock/doc/digitalclock.rst +14 -0
- PySide6/examples/widgets/widgets/tetrix/doc/tetrix-screenshot.png +0 -0
- PySide6/examples/widgets/widgets/tetrix/doc/tetrix.rst +38 -0
- PySide6/examples/widgets/widgets/tetrix/tetrix.py +472 -0
- PySide6/examples/widgets/widgets/tetrix/tetrix.pyproject +3 -0
- PySide6/examples/widgets/widgetsgallery/doc/widgetsgallery.png +0 -0
- PySide6/examples/widgets/widgetsgallery/doc/widgetsgallery.rst +16 -0
- PySide6/examples/widgets/widgetsgallery/main.py +16 -0
- PySide6/examples/widgets/widgetsgallery/widgetgallery.py +410 -0
- PySide6/examples/widgets/widgetsgallery/widgetsgallery.pyproject +3 -0
- PySide6/examples/xml/dombookmarks/doc/dombookmarks.png +0 -0
- PySide6/examples/xml/dombookmarks/doc/dombookmarks.rst +12 -0
- PySide6/examples/xml/dombookmarks/dombookmarks.py +221 -0
- PySide6/examples/xml/dombookmarks/dombookmarks.pyproject +3 -0
- PySide6/examples/xml/dombookmarks/jennifer.xbel +69 -0
- PySide6/py.typed +1 -0
- PySide6_Examples-6.7.0.dist-info/LicenseRef-Qt-Commercial.txt +8 -0
- PySide6_Examples-6.7.0.dist-info/METADATA +79 -0
- PySide6_Examples-6.7.0.dist-info/RECORD +1658 -0
- PySide6_Examples-6.7.0.dist-info/WHEEL +5 -0
- PySide6_Examples-6.7.0.dist-info/top_level.txt +2 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Copyright (C) 2023 The Qt Company Ltd.
|
|
2
|
+
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
|
3
|
+
|
|
4
|
+
from PySide6.QtWidgets import QMenu
|
|
5
|
+
from PySide6.QtCore import Signal, Slot
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class RecentFileMenu(QMenu):
|
|
9
|
+
fileOpened = Signal(str)
|
|
10
|
+
|
|
11
|
+
def __init__(self, parent, recent):
|
|
12
|
+
super().__init__(parent)
|
|
13
|
+
self._recentFiles = recent
|
|
14
|
+
self._recentFiles.changed.connect(self.updateList)
|
|
15
|
+
self._recentFiles.destroyed.connect(self.deleteLater)
|
|
16
|
+
self.updateList()
|
|
17
|
+
|
|
18
|
+
@Slot()
|
|
19
|
+
def updateList(self):
|
|
20
|
+
for a in self.actions():
|
|
21
|
+
del a
|
|
22
|
+
|
|
23
|
+
if not self._recentFiles:
|
|
24
|
+
self.addAction("<no recent files>")
|
|
25
|
+
return
|
|
26
|
+
|
|
27
|
+
for fileName in self._recentFiles.recentFiles():
|
|
28
|
+
action = self.addAction(fileName)
|
|
29
|
+
action.triggered.connect(self._emitFileOpened)
|
|
30
|
+
|
|
31
|
+
@Slot()
|
|
32
|
+
def _emitFileOpened(self):
|
|
33
|
+
action = self.sender()
|
|
34
|
+
self.fileOpened.emit(action.text())
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
# Copyright (C) 2023 The Qt Company Ltd.
|
|
2
|
+
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
|
3
|
+
|
|
4
|
+
from enum import Enum, auto
|
|
5
|
+
|
|
6
|
+
from PySide6.QtCore import QFileInfo, QObject, QSettings, Signal, Slot
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
DEFAULT_MAX_FILES = 10
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
# Test if file exists and can be opened
|
|
13
|
+
def testFileAccess(fileName):
|
|
14
|
+
return QFileInfo(fileName).isReadable()
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class RemoveReason(Enum):
|
|
18
|
+
Other = auto()
|
|
19
|
+
Duplicate = auto()
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class EmitPolicy(Enum):
|
|
23
|
+
EmitWhenChanged = auto(),
|
|
24
|
+
NeverEmit = auto()
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
s_maxFiles = "maxFiles"
|
|
28
|
+
s_openMode = "openMode"
|
|
29
|
+
s_fileNames = "fileNames"
|
|
30
|
+
s_file = "file"
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
class RecentFiles(QObject):
|
|
34
|
+
|
|
35
|
+
countChanged = Signal(int)
|
|
36
|
+
changed = Signal()
|
|
37
|
+
|
|
38
|
+
def __init__(self, parent=None):
|
|
39
|
+
super().__init__(parent)
|
|
40
|
+
self._maxFiles = DEFAULT_MAX_FILES
|
|
41
|
+
self._files = []
|
|
42
|
+
|
|
43
|
+
# Access to QStringList member functions
|
|
44
|
+
def recentFiles(self):
|
|
45
|
+
return self._files
|
|
46
|
+
|
|
47
|
+
def isEmpty(self):
|
|
48
|
+
return not self._files
|
|
49
|
+
|
|
50
|
+
# Properties
|
|
51
|
+
def maxFiles(self):
|
|
52
|
+
return self._maxFiles
|
|
53
|
+
|
|
54
|
+
def setMaxFiles(self, maxFiles):
|
|
55
|
+
self._maxFiles = maxFiles
|
|
56
|
+
|
|
57
|
+
def addFile(self, fileName):
|
|
58
|
+
self._addFile(fileName, EmitPolicy.EmitWhenChanged)
|
|
59
|
+
|
|
60
|
+
def removeFile(self, fileName):
|
|
61
|
+
idx = self._files.find(fileName)
|
|
62
|
+
self._removeFile(idx, RemoveReason.Other)
|
|
63
|
+
|
|
64
|
+
@Slot()
|
|
65
|
+
def clear(self):
|
|
66
|
+
if self.isEmpty():
|
|
67
|
+
return
|
|
68
|
+
self._files.clear()
|
|
69
|
+
self.countChanged.emit(0)
|
|
70
|
+
|
|
71
|
+
def _addFile(self, fileName, policy):
|
|
72
|
+
if not testFileAccess(fileName):
|
|
73
|
+
return
|
|
74
|
+
|
|
75
|
+
# Remember size, as cleanup can result in a change without size change
|
|
76
|
+
c = len(self._files)
|
|
77
|
+
|
|
78
|
+
# Clean dangling and duplicate files
|
|
79
|
+
i = 0
|
|
80
|
+
while i < len(self._files):
|
|
81
|
+
file = self._files[i]
|
|
82
|
+
if not testFileAccess(file):
|
|
83
|
+
self._removeFile(file, RemoveReason.Other)
|
|
84
|
+
elif file == fileName:
|
|
85
|
+
self._removeFile(file, RemoveReason.Duplicate)
|
|
86
|
+
else:
|
|
87
|
+
i += 1
|
|
88
|
+
|
|
89
|
+
# Cut tail
|
|
90
|
+
while len(self._files) > self._maxFiles:
|
|
91
|
+
self.removeFile((len(self._files) - 1), RemoveReason.Other)
|
|
92
|
+
|
|
93
|
+
self._files.insert(0, fileName)
|
|
94
|
+
|
|
95
|
+
if policy == EmitPolicy.NeverEmit:
|
|
96
|
+
return
|
|
97
|
+
|
|
98
|
+
if policy == EmitPolicy.EmitWhenChanged:
|
|
99
|
+
self.changed.emit()
|
|
100
|
+
if c != len(self._files):
|
|
101
|
+
self.countChanged.emit(len(self._files))
|
|
102
|
+
|
|
103
|
+
@Slot(list)
|
|
104
|
+
def addFiles(self, files):
|
|
105
|
+
if files.isEmpty():
|
|
106
|
+
return
|
|
107
|
+
|
|
108
|
+
if len(files) == 1:
|
|
109
|
+
self.addFile(files[0])
|
|
110
|
+
return
|
|
111
|
+
|
|
112
|
+
c = len(self._files)
|
|
113
|
+
|
|
114
|
+
for file in files:
|
|
115
|
+
self.addFile(file, EmitPolicy.NeverEmit)
|
|
116
|
+
|
|
117
|
+
self.changed.emit()
|
|
118
|
+
if len(self._files) != c:
|
|
119
|
+
self.countChanged.emit(len(self._files))
|
|
120
|
+
|
|
121
|
+
def _removeFile(self, p, reason):
|
|
122
|
+
index = p
|
|
123
|
+
if isinstance(p, str):
|
|
124
|
+
index = self._files.index(p) if p in self._files else -1
|
|
125
|
+
if index < 0 or index >= len(self._files):
|
|
126
|
+
return
|
|
127
|
+
del self._files[index]
|
|
128
|
+
|
|
129
|
+
# No emit for duplicate removal, add emits changed later.
|
|
130
|
+
if reason != RemoveReason.Duplicate:
|
|
131
|
+
self.changed.emit()
|
|
132
|
+
|
|
133
|
+
@Slot(QSettings, str)
|
|
134
|
+
def saveSettings(self, settings, key):
|
|
135
|
+
settings.beginGroup(key)
|
|
136
|
+
settings.setValue(s_maxFiles, self.maxFiles())
|
|
137
|
+
if self._files:
|
|
138
|
+
settings.beginWriteArray(s_fileNames, len(self._files))
|
|
139
|
+
for index, file in enumerate(self._files):
|
|
140
|
+
settings.setArrayIndex(index)
|
|
141
|
+
settings.setValue(s_file, file)
|
|
142
|
+
settings.endArray()
|
|
143
|
+
settings.endGroup()
|
|
144
|
+
|
|
145
|
+
@Slot(QSettings, str)
|
|
146
|
+
def restoreFromSettings(self, settings, key):
|
|
147
|
+
settings.beginGroup(key)
|
|
148
|
+
self.setMaxFiles(settings.value(s_maxFiles, DEFAULT_MAX_FILES, int))
|
|
149
|
+
self._files.clear() # clear list without emitting
|
|
150
|
+
numberFiles = settings.beginReadArray(s_fileNames)
|
|
151
|
+
for index in range(0, numberFiles):
|
|
152
|
+
settings.setArrayIndex(index)
|
|
153
|
+
absoluteFilePath = settings.value(s_file)
|
|
154
|
+
self._addFile(absoluteFilePath, EmitPolicy.NeverEmit)
|
|
155
|
+
settings.endArray()
|
|
156
|
+
settings.endGroup()
|
|
157
|
+
if self._files:
|
|
158
|
+
self.changed.emit()
|
|
159
|
+
return True
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
# Copyright (C) 2023 The Qt Company Ltd.
|
|
2
|
+
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
|
3
|
+
|
|
4
|
+
from PySide6.QtWidgets import (QDialog, QFileDialog,
|
|
5
|
+
QPlainTextEdit)
|
|
6
|
+
from PySide6.QtGui import QAction, QGuiApplication, QIcon, QKeySequence
|
|
7
|
+
from PySide6.QtCore import QDir, QFile, QTextStream, Qt, Slot
|
|
8
|
+
|
|
9
|
+
from abstractviewer import AbstractViewer
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class TxtViewer(AbstractViewer):
|
|
13
|
+
def __init__(self):
|
|
14
|
+
super().__init__()
|
|
15
|
+
self.uiInitialized.connect(self.setupTxtUi)
|
|
16
|
+
|
|
17
|
+
def init(self, file, parent, mainWindow):
|
|
18
|
+
self._textEdit = QPlainTextEdit(parent)
|
|
19
|
+
super().init(file, self._textEdit, mainWindow)
|
|
20
|
+
|
|
21
|
+
def viewerName(self):
|
|
22
|
+
return "TxtViewer"
|
|
23
|
+
|
|
24
|
+
def supportedMimeTypes(self):
|
|
25
|
+
return ["text/plain"]
|
|
26
|
+
|
|
27
|
+
@Slot()
|
|
28
|
+
def setupTxtUi(self):
|
|
29
|
+
editMenu = self.addMenu("Edit")
|
|
30
|
+
editToolBar = self.addToolBar("Edit")
|
|
31
|
+
cutIcon = QIcon.fromTheme(QIcon.ThemeIcon.EditCut,
|
|
32
|
+
QIcon(":/demos/documentviewer/images/cut.png"))
|
|
33
|
+
cutAct = QAction(cutIcon, "Cut", self)
|
|
34
|
+
cutAct.setShortcuts(QKeySequence.Cut)
|
|
35
|
+
cutAct.setStatusTip("Cut the current selection's contents to the clipboard")
|
|
36
|
+
cutAct.triggered.connect(self._textEdit.cut)
|
|
37
|
+
editMenu.addAction(cutAct)
|
|
38
|
+
editToolBar.addAction(cutAct)
|
|
39
|
+
|
|
40
|
+
copyIcon = QIcon.fromTheme(QIcon.ThemeIcon.EditCopy,
|
|
41
|
+
QIcon(":/demos/documentviewer/images/copy.png"))
|
|
42
|
+
copyAct = QAction(copyIcon, "Copy", self)
|
|
43
|
+
copyAct.setShortcuts(QKeySequence.Copy)
|
|
44
|
+
copyAct.setStatusTip("Copy the current selection's contents to the clipboard")
|
|
45
|
+
copyAct.triggered.connect(self._textEdit.copy)
|
|
46
|
+
editMenu.addAction(copyAct)
|
|
47
|
+
editToolBar.addAction(copyAct)
|
|
48
|
+
|
|
49
|
+
pasteIcon = QIcon.fromTheme(QIcon.ThemeIcon.EditPaste,
|
|
50
|
+
QIcon(":/demos/documentviewer/images/paste.png"))
|
|
51
|
+
pasteAct = QAction(pasteIcon, "Paste", self)
|
|
52
|
+
pasteAct.setShortcuts(QKeySequence.Paste)
|
|
53
|
+
pasteAct.setStatusTip("Paste the clipboard's contents into the current selection")
|
|
54
|
+
pasteAct.triggered.connect(self._textEdit.paste)
|
|
55
|
+
editMenu.addAction(pasteAct)
|
|
56
|
+
editToolBar.addAction(pasteAct)
|
|
57
|
+
|
|
58
|
+
self.menuBar().addSeparator()
|
|
59
|
+
|
|
60
|
+
cutAct.setEnabled(False)
|
|
61
|
+
copyAct.setEnabled(False)
|
|
62
|
+
self._textEdit.copyAvailable.connect(cutAct.setEnabled)
|
|
63
|
+
self._textEdit.copyAvailable.connect(copyAct.setEnabled)
|
|
64
|
+
|
|
65
|
+
self.openFile()
|
|
66
|
+
|
|
67
|
+
self._textEdit.textChanged.connect(self._textChanged)
|
|
68
|
+
self._uiAssets_back.triggered.connect(self._back)
|
|
69
|
+
self._uiAssets_forward.triggered.connect(self._forward)
|
|
70
|
+
|
|
71
|
+
@Slot()
|
|
72
|
+
def _textChanged(self):
|
|
73
|
+
self.maybeSetPrintingEnabled(self.hasContent())
|
|
74
|
+
|
|
75
|
+
@Slot()
|
|
76
|
+
def _back(self):
|
|
77
|
+
bar = self._textEdit.verticalScrollBar()
|
|
78
|
+
if bar.value() > bar.minimum():
|
|
79
|
+
bar.setValue(bar.value() - 1)
|
|
80
|
+
|
|
81
|
+
@Slot()
|
|
82
|
+
def _forward(self):
|
|
83
|
+
bar = self._textEdit.verticalScrollBar()
|
|
84
|
+
if bar.value() < bar.maximum():
|
|
85
|
+
bar.setValue(bar.value() + 1)
|
|
86
|
+
|
|
87
|
+
def openFile(self):
|
|
88
|
+
type = "open"
|
|
89
|
+
file_name = QDir.toNativeSeparators(self._file.fileName())
|
|
90
|
+
if not self._file.open(QFile.ReadOnly | QFile.Text):
|
|
91
|
+
err = self._file.errorString()
|
|
92
|
+
self.statusMessage(f"Cannot read file {file_name}:\n{err}.", type)
|
|
93
|
+
return
|
|
94
|
+
|
|
95
|
+
in_str = QTextStream(self._file)
|
|
96
|
+
QGuiApplication.setOverrideCursor(Qt.WaitCursor)
|
|
97
|
+
if self._textEdit.toPlainText():
|
|
98
|
+
self._textEdit.clear()
|
|
99
|
+
self.disablePrinting()
|
|
100
|
+
|
|
101
|
+
self._textEdit.setPlainText(in_str.readAll())
|
|
102
|
+
QGuiApplication.restoreOverrideCursor()
|
|
103
|
+
|
|
104
|
+
self.statusMessage(f"File {file_name} loaded.", type)
|
|
105
|
+
self.maybeEnablePrinting()
|
|
106
|
+
|
|
107
|
+
def hasContent(self):
|
|
108
|
+
return bool(self._textEdit.toPlainText())
|
|
109
|
+
|
|
110
|
+
def printDocument(self, printer):
|
|
111
|
+
if not self.hasContent():
|
|
112
|
+
return
|
|
113
|
+
|
|
114
|
+
self._textEdit.print_(printer)
|
|
115
|
+
|
|
116
|
+
def saveFile(self, file):
|
|
117
|
+
file_name = QDir.toNativeSeparators(self._file.fileName())
|
|
118
|
+
errorMessage = ""
|
|
119
|
+
QGuiApplication.setOverrideCursor(Qt.WaitCursor)
|
|
120
|
+
if file.open(QFile.WriteOnly | QFile.Text):
|
|
121
|
+
out = QTextStream(file)
|
|
122
|
+
out << self._textEdit.toPlainText()
|
|
123
|
+
else:
|
|
124
|
+
error = file.errorString()
|
|
125
|
+
errorMessage = f"Cannot open file {file_name} for writing:\n{error}."
|
|
126
|
+
QGuiApplication.restoreOverrideCursor()
|
|
127
|
+
|
|
128
|
+
if errorMessage:
|
|
129
|
+
self.statusMessage(errorMessage)
|
|
130
|
+
return False
|
|
131
|
+
|
|
132
|
+
self.statusMessage(f"File {file_name} saved")
|
|
133
|
+
return True
|
|
134
|
+
|
|
135
|
+
def saveDocumentAs(self):
|
|
136
|
+
dialog = QFileDialog(self.mainWindow())
|
|
137
|
+
dialog.setWindowModality(Qt.WindowModal)
|
|
138
|
+
dialog.setAcceptMode(QFileDialog.AcceptSave)
|
|
139
|
+
if dialog.exec() != QDialog.Accepted:
|
|
140
|
+
return False
|
|
141
|
+
|
|
142
|
+
files = dialog.selectedFiles()
|
|
143
|
+
self._file.setFileName(files[0])
|
|
144
|
+
return self.saveDocument()
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
|
|
3
|
+
################################################################################
|
|
4
|
+
## Form generated from reading UI file 'mainwindow.ui'
|
|
5
|
+
##
|
|
6
|
+
## Created by: Qt User Interface Compiler version 6.5.3
|
|
7
|
+
##
|
|
8
|
+
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
|
9
|
+
################################################################################
|
|
10
|
+
|
|
11
|
+
from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale,
|
|
12
|
+
QMetaObject, QObject, QPoint, QRect,
|
|
13
|
+
QSize, QTime, QUrl, Qt)
|
|
14
|
+
from PySide6.QtGui import (QAction, QBrush, QColor, QConicalGradient,
|
|
15
|
+
QCursor, QFont, QFontDatabase, QGradient,
|
|
16
|
+
QIcon, QImage, QKeySequence, QLinearGradient,
|
|
17
|
+
QPainter, QPalette, QPixmap, QRadialGradient,
|
|
18
|
+
QTransform)
|
|
19
|
+
from PySide6.QtWidgets import (QApplication, QMainWindow, QMenu, QMenuBar,
|
|
20
|
+
QScrollArea, QSizePolicy, QSplitter, QStatusBar,
|
|
21
|
+
QTabWidget, QToolBar, QVBoxLayout, QWidget)
|
|
22
|
+
import rc_documentviewer
|
|
23
|
+
|
|
24
|
+
class Ui_MainWindow(object):
|
|
25
|
+
def setupUi(self, MainWindow):
|
|
26
|
+
if not MainWindow.objectName():
|
|
27
|
+
MainWindow.setObjectName(u"MainWindow")
|
|
28
|
+
MainWindow.resize(983, 602)
|
|
29
|
+
icon = QIcon()
|
|
30
|
+
icon.addFile(u":/demos/documentviewer/images/qt-logo.png", QSize(), QIcon.Normal, QIcon.Off)
|
|
31
|
+
MainWindow.setWindowIcon(icon)
|
|
32
|
+
self.actionOpen = QAction(MainWindow)
|
|
33
|
+
self.actionOpen.setObjectName(u"actionOpen")
|
|
34
|
+
icon1 = QIcon()
|
|
35
|
+
icon1.addFile(u":/demos/documentviewer/images/open.png", QSize(), QIcon.Normal, QIcon.Off)
|
|
36
|
+
self.actionOpen.setIcon(icon1)
|
|
37
|
+
self.actionAbout = QAction(MainWindow)
|
|
38
|
+
self.actionAbout.setObjectName(u"actionAbout")
|
|
39
|
+
icon2 = QIcon()
|
|
40
|
+
iconThemeName = u"help-about"
|
|
41
|
+
if QIcon.hasThemeIcon(iconThemeName):
|
|
42
|
+
icon2 = QIcon.fromTheme(iconThemeName)
|
|
43
|
+
else:
|
|
44
|
+
icon2.addFile(u":/demos/documentviewer/images/help-about.svgz", QSize(), QIcon.Normal, QIcon.Off)
|
|
45
|
+
|
|
46
|
+
self.actionAbout.setIcon(icon2)
|
|
47
|
+
self.actionForward = QAction(MainWindow)
|
|
48
|
+
self.actionForward.setObjectName(u"actionForward")
|
|
49
|
+
icon3 = QIcon()
|
|
50
|
+
icon3.addFile(u":/demos/documentviewer/images/go-next.svgz", QSize(), QIcon.Normal, QIcon.Off)
|
|
51
|
+
self.actionForward.setIcon(icon3)
|
|
52
|
+
self.actionBack = QAction(MainWindow)
|
|
53
|
+
self.actionBack.setObjectName(u"actionBack")
|
|
54
|
+
icon4 = QIcon()
|
|
55
|
+
icon4.addFile(u":/demos/documentviewer/images/go-previous.svgz", QSize(), QIcon.Normal, QIcon.Off)
|
|
56
|
+
self.actionBack.setIcon(icon4)
|
|
57
|
+
self.actionPrint = QAction(MainWindow)
|
|
58
|
+
self.actionPrint.setObjectName(u"actionPrint")
|
|
59
|
+
self.actionPrint.setEnabled(False)
|
|
60
|
+
icon5 = QIcon()
|
|
61
|
+
iconThemeName = u"document-print"
|
|
62
|
+
if QIcon.hasThemeIcon(iconThemeName):
|
|
63
|
+
icon5 = QIcon.fromTheme(iconThemeName)
|
|
64
|
+
else:
|
|
65
|
+
icon5.addFile(u":/demos/documentviewer/images/print2x.png", QSize(), QIcon.Normal, QIcon.Off)
|
|
66
|
+
|
|
67
|
+
self.actionPrint.setIcon(icon5)
|
|
68
|
+
self.actionAboutQt = QAction(MainWindow)
|
|
69
|
+
self.actionAboutQt.setObjectName(u"actionAboutQt")
|
|
70
|
+
icon6 = QIcon()
|
|
71
|
+
icon6.addFile(u":/demos/documentviewer/images/qt-logo.png", QSize(), QIcon.Normal, QIcon.Off)
|
|
72
|
+
icon6.addFile(u":/demos/documentviewer/images/qt-logo.png", QSize(), QIcon.Normal, QIcon.On)
|
|
73
|
+
self.actionAboutQt.setIcon(icon6)
|
|
74
|
+
self.actionRecent = QAction(MainWindow)
|
|
75
|
+
self.actionRecent.setObjectName(u"actionRecent")
|
|
76
|
+
icon7 = QIcon()
|
|
77
|
+
icon7.addFile(u":/demos/documentviewer/images/document-open-recent.svgz", QSize(), QIcon.Normal, QIcon.Off)
|
|
78
|
+
self.actionRecent.setIcon(icon7)
|
|
79
|
+
self.actionQuit = QAction(MainWindow)
|
|
80
|
+
self.actionQuit.setObjectName(u"actionQuit")
|
|
81
|
+
icon8 = QIcon()
|
|
82
|
+
iconThemeName = u"application-exit"
|
|
83
|
+
if QIcon.hasThemeIcon(iconThemeName):
|
|
84
|
+
icon8 = QIcon.fromTheme(iconThemeName)
|
|
85
|
+
else:
|
|
86
|
+
icon8.addFile(u".", QSize(), QIcon.Normal, QIcon.Off)
|
|
87
|
+
|
|
88
|
+
self.actionQuit.setIcon(icon8)
|
|
89
|
+
self.centralwidget = QWidget(MainWindow)
|
|
90
|
+
self.centralwidget.setObjectName(u"centralwidget")
|
|
91
|
+
self.centralwidget.setEnabled(True)
|
|
92
|
+
self.verticalLayout = QVBoxLayout(self.centralwidget)
|
|
93
|
+
self.verticalLayout.setObjectName(u"verticalLayout")
|
|
94
|
+
self.viewArea = QWidget(self.centralwidget)
|
|
95
|
+
self.viewArea.setObjectName(u"viewArea")
|
|
96
|
+
self.verticalLayout_2 = QVBoxLayout(self.viewArea)
|
|
97
|
+
self.verticalLayout_2.setObjectName(u"verticalLayout_2")
|
|
98
|
+
self.splitter = QSplitter(self.viewArea)
|
|
99
|
+
self.splitter.setObjectName(u"splitter")
|
|
100
|
+
self.splitter.setOrientation(Qt.Horizontal)
|
|
101
|
+
self.tabWidget = QTabWidget(self.splitter)
|
|
102
|
+
self.tabWidget.setObjectName(u"tabWidget")
|
|
103
|
+
self.tabWidget.setTabPosition(QTabWidget.West)
|
|
104
|
+
self.bookmarkTab = QWidget()
|
|
105
|
+
self.bookmarkTab.setObjectName(u"bookmarkTab")
|
|
106
|
+
self.tabWidget.addTab(self.bookmarkTab, "")
|
|
107
|
+
self.pagesTab = QWidget()
|
|
108
|
+
self.pagesTab.setObjectName(u"pagesTab")
|
|
109
|
+
self.tabWidget.addTab(self.pagesTab, "")
|
|
110
|
+
self.splitter.addWidget(self.tabWidget)
|
|
111
|
+
self.scrollArea = QScrollArea(self.splitter)
|
|
112
|
+
self.scrollArea.setObjectName(u"scrollArea")
|
|
113
|
+
sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
|
|
114
|
+
sizePolicy.setHorizontalStretch(0)
|
|
115
|
+
sizePolicy.setVerticalStretch(0)
|
|
116
|
+
sizePolicy.setHeightForWidth(self.scrollArea.sizePolicy().hasHeightForWidth())
|
|
117
|
+
self.scrollArea.setSizePolicy(sizePolicy)
|
|
118
|
+
self.scrollArea.setMinimumSize(QSize(800, 0))
|
|
119
|
+
self.scrollArea.setWidgetResizable(True)
|
|
120
|
+
self.scrollAreaWidgetContents = QWidget()
|
|
121
|
+
self.scrollAreaWidgetContents.setObjectName(u"scrollAreaWidgetContents")
|
|
122
|
+
self.scrollAreaWidgetContents.setGeometry(QRect(0, 0, 798, 479))
|
|
123
|
+
self.scrollArea.setWidget(self.scrollAreaWidgetContents)
|
|
124
|
+
self.splitter.addWidget(self.scrollArea)
|
|
125
|
+
|
|
126
|
+
self.verticalLayout_2.addWidget(self.splitter)
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
self.verticalLayout.addWidget(self.viewArea)
|
|
130
|
+
|
|
131
|
+
MainWindow.setCentralWidget(self.centralwidget)
|
|
132
|
+
self.menubar = QMenuBar(MainWindow)
|
|
133
|
+
self.menubar.setObjectName(u"menubar")
|
|
134
|
+
self.menubar.setGeometry(QRect(0, 0, 983, 23))
|
|
135
|
+
self.qtFileMenu = QMenu(self.menubar)
|
|
136
|
+
self.qtFileMenu.setObjectName(u"qtFileMenu")
|
|
137
|
+
self.menuHelp = QMenu(self.menubar)
|
|
138
|
+
self.menuHelp.setObjectName(u"menuHelp")
|
|
139
|
+
MainWindow.setMenuBar(self.menubar)
|
|
140
|
+
self.statusbar = QStatusBar(MainWindow)
|
|
141
|
+
self.statusbar.setObjectName(u"statusbar")
|
|
142
|
+
MainWindow.setStatusBar(self.statusbar)
|
|
143
|
+
self.mainToolBar = QToolBar(MainWindow)
|
|
144
|
+
self.mainToolBar.setObjectName(u"mainToolBar")
|
|
145
|
+
MainWindow.addToolBar(Qt.TopToolBarArea, self.mainToolBar)
|
|
146
|
+
|
|
147
|
+
self.menubar.addAction(self.qtFileMenu.menuAction())
|
|
148
|
+
self.menubar.addAction(self.menuHelp.menuAction())
|
|
149
|
+
self.qtFileMenu.addAction(self.actionOpen)
|
|
150
|
+
self.qtFileMenu.addAction(self.actionRecent)
|
|
151
|
+
self.qtFileMenu.addAction(self.actionPrint)
|
|
152
|
+
self.qtFileMenu.addAction(self.actionQuit)
|
|
153
|
+
self.menuHelp.addAction(self.actionAbout)
|
|
154
|
+
self.menuHelp.addAction(self.actionAboutQt)
|
|
155
|
+
self.mainToolBar.addAction(self.actionOpen)
|
|
156
|
+
self.mainToolBar.addAction(self.actionRecent)
|
|
157
|
+
self.mainToolBar.addAction(self.actionPrint)
|
|
158
|
+
self.mainToolBar.addSeparator()
|
|
159
|
+
self.mainToolBar.addAction(self.actionBack)
|
|
160
|
+
self.mainToolBar.addAction(self.actionForward)
|
|
161
|
+
self.mainToolBar.addSeparator()
|
|
162
|
+
|
|
163
|
+
self.retranslateUi(MainWindow)
|
|
164
|
+
self.actionQuit.triggered.connect(MainWindow.close)
|
|
165
|
+
|
|
166
|
+
self.tabWidget.setCurrentIndex(0)
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
QMetaObject.connectSlotsByName(MainWindow)
|
|
170
|
+
# setupUi
|
|
171
|
+
|
|
172
|
+
def retranslateUi(self, MainWindow):
|
|
173
|
+
MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"Document Viewer Demo", None))
|
|
174
|
+
self.actionOpen.setText(QCoreApplication.translate("MainWindow", u"Open", None))
|
|
175
|
+
#if QT_CONFIG(shortcut)
|
|
176
|
+
self.actionOpen.setShortcut(QCoreApplication.translate("MainWindow", u"Ctrl+O", None))
|
|
177
|
+
#endif // QT_CONFIG(shortcut)
|
|
178
|
+
self.actionAbout.setText(QCoreApplication.translate("MainWindow", u"about documentviewer", None))
|
|
179
|
+
#if QT_CONFIG(tooltip)
|
|
180
|
+
self.actionAbout.setToolTip(QCoreApplication.translate("MainWindow", u"Show information about the Document Viewer deomo.", None))
|
|
181
|
+
#endif // QT_CONFIG(tooltip)
|
|
182
|
+
#if QT_CONFIG(shortcut)
|
|
183
|
+
self.actionAbout.setShortcut(QCoreApplication.translate("MainWindow", u"Ctrl+H", None))
|
|
184
|
+
#endif // QT_CONFIG(shortcut)
|
|
185
|
+
self.actionForward.setText(QCoreApplication.translate("MainWindow", u"actionForward", None))
|
|
186
|
+
#if QT_CONFIG(tooltip)
|
|
187
|
+
self.actionForward.setToolTip(QCoreApplication.translate("MainWindow", u"One step forward", None))
|
|
188
|
+
#endif // QT_CONFIG(tooltip)
|
|
189
|
+
#if QT_CONFIG(shortcut)
|
|
190
|
+
self.actionForward.setShortcut(QCoreApplication.translate("MainWindow", u"Right", None))
|
|
191
|
+
#endif // QT_CONFIG(shortcut)
|
|
192
|
+
self.actionBack.setText(QCoreApplication.translate("MainWindow", u"actionBack", None))
|
|
193
|
+
#if QT_CONFIG(tooltip)
|
|
194
|
+
self.actionBack.setToolTip(QCoreApplication.translate("MainWindow", u"One step back", None))
|
|
195
|
+
#endif // QT_CONFIG(tooltip)
|
|
196
|
+
#if QT_CONFIG(shortcut)
|
|
197
|
+
self.actionBack.setShortcut(QCoreApplication.translate("MainWindow", u"Left", None))
|
|
198
|
+
#endif // QT_CONFIG(shortcut)
|
|
199
|
+
self.actionPrint.setText(QCoreApplication.translate("MainWindow", u"Print", None))
|
|
200
|
+
#if QT_CONFIG(tooltip)
|
|
201
|
+
self.actionPrint.setToolTip(QCoreApplication.translate("MainWindow", u"Print current file", None))
|
|
202
|
+
#endif // QT_CONFIG(tooltip)
|
|
203
|
+
#if QT_CONFIG(shortcut)
|
|
204
|
+
self.actionPrint.setShortcut(QCoreApplication.translate("MainWindow", u"Ctrl+P", None))
|
|
205
|
+
#endif // QT_CONFIG(shortcut)
|
|
206
|
+
self.actionAboutQt.setText(QCoreApplication.translate("MainWindow", u"About Qt", None))
|
|
207
|
+
#if QT_CONFIG(tooltip)
|
|
208
|
+
self.actionAboutQt.setToolTip(QCoreApplication.translate("MainWindow", u"Show Qt license information", None))
|
|
209
|
+
#endif // QT_CONFIG(tooltip)
|
|
210
|
+
#if QT_CONFIG(shortcut)
|
|
211
|
+
self.actionAboutQt.setShortcut(QCoreApplication.translate("MainWindow", u"Ctrl+I", None))
|
|
212
|
+
#endif // QT_CONFIG(shortcut)
|
|
213
|
+
self.actionRecent.setText(QCoreApplication.translate("MainWindow", u"Recently opened...", None))
|
|
214
|
+
#if QT_CONFIG(shortcut)
|
|
215
|
+
self.actionRecent.setShortcut(QCoreApplication.translate("MainWindow", u"Meta+R", None))
|
|
216
|
+
#endif // QT_CONFIG(shortcut)
|
|
217
|
+
self.actionQuit.setText(QCoreApplication.translate("MainWindow", u"Quit", None))
|
|
218
|
+
#if QT_CONFIG(tooltip)
|
|
219
|
+
self.actionQuit.setToolTip(QCoreApplication.translate("MainWindow", u"Quit the application", None))
|
|
220
|
+
#endif // QT_CONFIG(tooltip)
|
|
221
|
+
#if QT_CONFIG(shortcut)
|
|
222
|
+
self.actionQuit.setShortcut(QCoreApplication.translate("MainWindow", u"Ctrl+Q", None))
|
|
223
|
+
#endif // QT_CONFIG(shortcut)
|
|
224
|
+
self.tabWidget.setTabText(self.tabWidget.indexOf(self.bookmarkTab), QCoreApplication.translate("MainWindow", u"Pages", None))
|
|
225
|
+
self.tabWidget.setTabText(self.tabWidget.indexOf(self.pagesTab), QCoreApplication.translate("MainWindow", u"Bookmarks", None))
|
|
226
|
+
self.qtFileMenu.setTitle(QCoreApplication.translate("MainWindow", u"File", None))
|
|
227
|
+
self.menuHelp.setTitle(QCoreApplication.translate("MainWindow", u"Help", None))
|
|
228
|
+
self.mainToolBar.setWindowTitle(QCoreApplication.translate("MainWindow", u"toolBar", None))
|
|
229
|
+
# retranslateUi
|
|
230
|
+
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# Copyright (C) 2023 The Qt Company Ltd.
|
|
2
|
+
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
|
3
|
+
|
|
4
|
+
from enum import Enum, auto
|
|
5
|
+
|
|
6
|
+
from PySide6.QtWidgets import (QMessageBox)
|
|
7
|
+
from PySide6.QtCore import (QFileInfo, QMimeDatabase, QTimer)
|
|
8
|
+
|
|
9
|
+
from txtviewer.txtviewer import TxtViewer
|
|
10
|
+
from jsonviewer.jsonviewer import JsonViewer
|
|
11
|
+
from pdfviewer.pdfviewer import PdfViewer
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class DefaultPolicy(Enum):
|
|
15
|
+
NeverDefault = auto()
|
|
16
|
+
DefaultToTxtViewer = auto()
|
|
17
|
+
DefaultToCustomViewer = auto()
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class ViewerFactory:
|
|
21
|
+
|
|
22
|
+
def __init__(self, displayWidget, mainWindow,
|
|
23
|
+
policy=DefaultPolicy.NeverDefault):
|
|
24
|
+
self._viewers = {}
|
|
25
|
+
self._defaultViewer = None
|
|
26
|
+
self._defaultWarning = True
|
|
27
|
+
self._defaultPolicy = policy
|
|
28
|
+
self._displayWidget = displayWidget
|
|
29
|
+
self._mainWindow = mainWindow
|
|
30
|
+
self._mimeTypes = []
|
|
31
|
+
for v in [PdfViewer(), JsonViewer(), TxtViewer()]:
|
|
32
|
+
self._viewers[v.viewerName()] = v
|
|
33
|
+
if v.isDefaultViewer():
|
|
34
|
+
self._defaultViewer = v
|
|
35
|
+
|
|
36
|
+
def defaultPolicy(self):
|
|
37
|
+
return self._defaultPolicy
|
|
38
|
+
|
|
39
|
+
def setDefaultPolicy(self, policy):
|
|
40
|
+
self._defaultPolicy = policy
|
|
41
|
+
|
|
42
|
+
def defaultWarning(self):
|
|
43
|
+
return self._defaultWarning
|
|
44
|
+
|
|
45
|
+
def setDefaultWarning(self, on):
|
|
46
|
+
self._defaultWarning = on
|
|
47
|
+
|
|
48
|
+
def viewer(self, file):
|
|
49
|
+
info = QFileInfo(file)
|
|
50
|
+
db = QMimeDatabase()
|
|
51
|
+
mimeType = db.mimeTypeForFile(info)
|
|
52
|
+
|
|
53
|
+
viewer = self.viewerForMimeType(mimeType)
|
|
54
|
+
if not viewer:
|
|
55
|
+
print(f"Mime type {mimeType.name()} not supported.")
|
|
56
|
+
return None
|
|
57
|
+
|
|
58
|
+
viewer.init(file, self._displayWidget, self._mainWindow)
|
|
59
|
+
return viewer
|
|
60
|
+
|
|
61
|
+
def viewerNames(self, showDefault=False):
|
|
62
|
+
if not showDefault:
|
|
63
|
+
return self._viewers.keys()
|
|
64
|
+
|
|
65
|
+
list = []
|
|
66
|
+
for name, viewer in self._viewers.items():
|
|
67
|
+
if ((self._defaultViewer and viewer.isDefaultViewer())
|
|
68
|
+
or (not self._defaultViewer and name == "TxtViewer")):
|
|
69
|
+
name += "(default)"
|
|
70
|
+
list.append(name)
|
|
71
|
+
return list
|
|
72
|
+
|
|
73
|
+
def viewers(self):
|
|
74
|
+
return self._viewers.values()
|
|
75
|
+
|
|
76
|
+
def findViewer(self, viewerName):
|
|
77
|
+
for viewer in self.viewers():
|
|
78
|
+
if viewer.viewerName() == viewerName:
|
|
79
|
+
return viewer
|
|
80
|
+
print(f"Plugin {viewerName} not loaded.")
|
|
81
|
+
return None
|
|
82
|
+
|
|
83
|
+
def viewerForMimeType(self, mimeType):
|
|
84
|
+
for viewer in self.viewers():
|
|
85
|
+
for type in viewer.supportedMimeTypes():
|
|
86
|
+
if mimeType.inherits(type):
|
|
87
|
+
return viewer
|
|
88
|
+
|
|
89
|
+
viewer = self.defaultViewer()
|
|
90
|
+
|
|
91
|
+
if self._defaultWarning:
|
|
92
|
+
mbox = QMessageBox()
|
|
93
|
+
mbox.setIcon(QMessageBox.Warning)
|
|
94
|
+
name = mimeType.name()
|
|
95
|
+
viewer_name = viewer.viewerName()
|
|
96
|
+
m = f"Mime type {name} not supported. Falling back to {viewer_name}."
|
|
97
|
+
mbox.setText(m)
|
|
98
|
+
mbox.setStandardButtons(QMessageBox.Ok)
|
|
99
|
+
QTimer.singleShot(8000, mbox.close)
|
|
100
|
+
mbox.exec()
|
|
101
|
+
return viewer
|
|
102
|
+
|
|
103
|
+
def defaultViewer(self):
|
|
104
|
+
if self._defaultPolicy == DefaultPolicy.NeverDefault:
|
|
105
|
+
return None
|
|
106
|
+
if self._defaultPolicy == DefaultPolicy.DefaultToCustomViewer and self._defaultViewer:
|
|
107
|
+
return self._defaultViewer
|
|
108
|
+
return self.findViewer("TxtViewer")
|
|
109
|
+
|
|
110
|
+
def supportedMimeTypes(self):
|
|
111
|
+
if not self._mimeTypes:
|
|
112
|
+
for viewer in self.viewers():
|
|
113
|
+
self._mimeTypes.extend(viewer.supportedMimeTypes())
|
|
114
|
+
return self._mimeTypes
|
|
Binary file
|