GammaRay是KDAB開發的Qt應用程序的軟件內省工具。利用QObject內省機制,它允許您在運行時觀察和操作應用程序。這既可以在工作站本地使用,也可以在嵌入式目標上遠程使用。
通過擴充指令級調試器,GammaRay允許您使用與您使用的框架相同的概念進行更高級別的工作。這對於更復雜的Qt框架(例如模型/視圖,狀態機或場景圖)尤其有用。
GammaRay可以:
- 使用實時更新瀏覽QObject樹。
- 查看和編輯對象屬性。
- 查看並調用QObject的插槽,並監視其信號。
- 列出所有QObject入站和出站信號/插槽連接。
- 為QWidget和QtQuick2應用程序提供布局信息覆蓋。
- 檢查用於繪制特定小部件的所有QPainter操作。
- 瀏覽QtQuick2項目樹和場景圖。
- 檢查QtQuick2項目的着色器和幾何數據。
- 繪制對象壽命和發出的信號。
- 瀏覽QAbstractProxyModel層次結構並檢查代理模型鏈中的中間結果。
- QStateMachines的視覺實時檢查。
- 瀏覽任何QGraphicsView場景的項目樹。
- 顯示QGraphicsView項目的實時預覽,包括顯示其坐標系,轉換原點,旋轉/縮放/平移等。
- 攔截翻譯並在運行時更改它們。
- 檢查QStyle的所有構建塊。
- 顯示所有QTimers及其統計數據(喚醒次數,喚醒時間......)
- 瀏覽所有QTextDocuments,以及編輯它們並查看其內部結構的功能。
- 充當完整的Java腳本調試器,可附加到任何QScriptEngine(包括QtQuick1內部通常無法訪問的QScriptEngine)。
- 感謝QWebInspector,在任何QWebPage上執行HTML / CSS / DOM / JS內省/編輯/分析。
- 瀏覽QResource樹及其內容。
- 顯示所有已注冊的元類型。
- 顯示所有安裝的字體。
- 顯示所有可用的編解碼器。
GammaRay is a tool to poke around in a Qt-application and also to manipulate the application to some extent.
https://www.kdab.com/gammaray
https://github.com/KDAB/GammaRay