Files
wxWidgets/utils/screenshotgen
Vadim Zeitlin 0a6523c4d9
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK ASAN not compatible (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK UTF-8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxQt (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxX11 (push) Has been cancelled
Unix builds / Ubuntu 20.04 wxGTK 3 with clang (push) Has been cancelled
Unix builds / Ubuntu 22.04 wxGTK with wx containers (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 static with gcc 4.8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 2 (push) Has been cancelled
CMake builds / Ubuntu 22.04 wxGTK 3 (push) Has been cancelled
CMake builds / MSW/MSVC wxMSW (push) Has been cancelled
CMake builds / MSW/Clang wxMSW (push) Has been cancelled
CMake builds / macOS latest wxOSX Ninja (push) Has been cancelled
CMake builds / macOS 14 wxOSX Xcode (push) Has been cancelled
CMake builds / macOS 14 wxIOS (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 5.15 (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 6.10 (push) Has been cancelled
Mac builds / wxMac ARM ASAN not compatible (push) Has been cancelled
Mac builds / wxMac Universal C++14 (push) Has been cancelled
Mac builds / wxiOS Simulator on Silicon Mac (push) Has been cancelled
Mac builds / wxiOS (push) Has been cancelled
Mac builds / wxMac Intel C++17 (push) Has been cancelled
Mac Xcode builds / iOS Simulator static (push) Has been cancelled
Mac Xcode builds / macOS dynamic Release (push) Has been cancelled
Mac Xcode builds / iOS static Debug (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Debug x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Release x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 Debug Win32 (push) Has been cancelled
MSW builds / wxMSW vs2022 Release arm64 (push) Has been cancelled
MSW cross-builds / wxMSW 64 bits not compatible (push) Has been cancelled
MSW cross-builds / wxMSW/Univ (push) Has been cancelled
MSW cross-builds / wxMSW 32 bits (push) Has been cancelled
Code Checks / Check Spelling (push) Has been cancelled
Code Checks / Check Whitespace (push) Has been cancelled
Code Checks / Check Mixed EOL (push) Has been cancelled
Code Checks / Check C++ Style (push) Has been cancelled
Code Checks / Check All Headers In allheaders.h (push) Has been cancelled
Update Documentation / Update Online Documentation (push) Has been cancelled
No Response / no-response (push) Has been cancelled
Update copyright years to 2025
Just run misc/scripts/inc_year and commit the results.

See #18690.
2026-01-01 17:40:18 +01:00
..
2026-01-01 17:40:18 +01:00

 wxWidgets Controls Screenshot Generator
 =======================================

 Author: Utensil Candel (Email: UtensilCandel at GMail dot com)
 Licence: wxWindows licence

 Thanks: Francesco Montorsi, Bryan Petty, Auria, Jorg and wxForum

 This utility is developed to automatically generate screenshots of the wxWidgets
 controls for use in wxWidgets documentation.

 The main part of the GUI (guiframe.h/guiframe.cpp) was generated with wxFormBuilder
 (http://wxformbuilder.org/), a powerful cross-platform open-source RAD tool. Now its
 trace is removed so we can maintain the code without using it.


===User Guide: How To Use==

The screenshots will be generated under sub-directory "screenshots" silently.
Please monitor this folder before taking screenshots using "File->Open screenshots folder".

1) The menu "Capture->Full screen" can take a screeshot for the fullscreen. It's designed
for testing purpose only.

2) The menu "Capture->Regions<Begin>" and "Capture->Regions<End>" was the semi-auto part,
and now it's deprecated and will be removed soon.

3) Finally the full-auto mode: "Capture->Capture All" or Ctrl+Alt+A, follow the instructions
 and all the screenshots will be generated correctly under the subdirectory "screenshots".

 ==Developer Guide: How To Add More Controls==

 (Coming soon)

 ==To-do List==

 1) Remove wxAuiNoteBook related lagacy codes, which is no longer useful;

 2) Refactor the GUI code, which was generated by wxFormBuilder, but it's messy for human to
 maintain;

 3) Remove the class CtrlMaskOut since semi-auto part of this utility is no longer needed.

 4) Clearify the interface of class AutoCaptureMechanism and document how to add a new control
 that needs to take screenshots, and how to adjust it to avoid bugs in wxRTTI system and
 wxWindow::GetScreenRect();

 5) Make this utility easier to configure;

 6) Add test functionality to confirm bugs in wxRTTI system and wxWindow::GetScreenRect().