Editing
GUI ideas for use with wxGlade
(section)
Jump to navigation
Jump to search
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
= wxPerl / wxGlade Application Template Catalog = This page catalogs GUI mockups, template applications, and app ideas from the [https://github.com/The-Perl-Cottage-Guild/wxPerl-wxGlade-Templates wxPerl-wxGlade-Templates] repository. The repository collects [https://sourceforge.net/projects/wxglade/ wxGlade] <code>.wxg</code> project files and working Perl driver scripts that generate wxPerl GUIs directly from wxGlade output. These examples are intended to serve as starting points for real wxPerl desktop applications. For setup instructions, see: * [[Developing and Distributing wxPerl Applications on Windows|Developing and Distributing wxPerl Applications on Windows]] == Purpose == The goal of this catalog is to make it easier for Perl programmers to find practical wxGlade GUI ideas that can be copied, studied, modified, and eventually turned into working wxPerl desktop applications. These examples are especially useful for: * learning wxGlade layout techniques * testing wxPerl widgets on Windows * building simple commercial desktop utilities * creating GUI front ends for existing Perl scripts * prototyping Windows-style applications with Perl * preserving classic desktop UI patterns that still work well == Repository == * Repository: [https://github.com/The-Perl-Cottage-Guild/wxPerl-wxGlade-Templates The-Perl-Cottage-Guild/wxPerl-wxGlade-Templates] * Main setup guide: [[Developing and Distributing wxPerl Applications on Windows]] == AI-Assisted wxGlade Template Generation == ChatGPT and similar AI tools can be useful for generating first-draft wxGlade XML files. This can be especially helpful when starting from a description such as: * "make a two-pane FTP client layout" * "make a PuTTY-style configuration dialog" * "make a Windows 95-style help viewer" * "make a tabbed search interface with a results grid" * "make a scientific data browser with a tree view, metadata pane, and plot area" The generated XML should be treated as a starting point, not a finished application. Always open the file in wxGlade, inspect the widget tree, fix layout issues, and test the generated Perl code. AI-generated wxGlade files are most useful for: * quickly prototyping an interface idea * creating a rough widget hierarchy * experimenting with sizers and panels * generating repetitive boilerplate layouts * turning a hand-drawn mockup or written app idea into a first editable <code>.wxg</code> file A practical workflow is: <pre> Describe the desired GUI β Generate wxGlade XML β Open in wxGlade β Fix layout/details β Generate Perl code β Add real Perl logic </pre> This does not replace wxGlade. It gives Perl programmers a faster way to get an initial layout into wxGlade so they can continue refining it visually. == Application Ideas and Templates == === Windows Help GUI === [[File:Wxglade-windows-help-gui.png|900px|Windows Help GUI wxGlade template screenshot]] A classic Windows 95/98-style help viewer layout. '''Status:''' Template / mockup '''What it demonstrates:''' * menu-driven application layout * help/document viewer style * navigation pane plus content pane * classic Windows desktop design '''Possible Perl uses:''' * local documentation viewer * offline manual reader * FAQ browser * product support utility * help system for a packaged Perl application === Netscape 2.0 Clone === [[File:Wxglade-netscape-clone.png|900px|Netscape 2.0 style wxGlade template screenshot]] A retro browser-style interface inspired by early Netscape. '''Status:''' Template / mockup '''What it demonstrates:''' * menu bar * toolbar buttons * location/address field * large content area * status bar * classic browser-style workflow '''Possible Perl uses:''' * HTML documentation shell * internal web viewer * archive browser * local content navigator * kiosk-style viewer === PuTTY Configuration Pane === [[File:Wxglade-putty-configuration-pane.png|900px|PuTTY configuration pane wxGlade template screenshot]] A configuration dialog inspired by PuTTY's familiar settings layout. '''Status:''' Template / mockup '''What it demonstrates:''' * category tree * grouped settings panels * form controls * dialog buttons * configuration-heavy application design '''Possible Perl uses:''' * SSH profile manager * rsync/SFTP launcher * server connection manager * backup configuration tool * cluster login helper * settings editor for a Perl utility === WS-FTP Clone === [[File:Wxglade-wsftp-clone.png|900px|WS-FTP style wxGlade template screenshot]] A classic two-pane file transfer client layout. '''Status:''' Template / mockup '''What it demonstrates:''' * dual-pane file manager interface * connection controls * list views * transfer queue area * old-school but still-useful desktop file workflow '''Possible Perl uses:''' * FTP/SFTP client * deployment tool * file sync GUI * webhost upload utility * batch transfer manager * local/remote file comparison tool === LimeWire-Style Interface === [[File:Wxglade-limewire-style-interface.png|900px|LimeWire style wxGlade template screenshot]] A search-and-results interface inspired by classic peer-to-peer software. '''Status:''' Template / mockup '''What it demonstrates:''' * search field * results grid * tabs * sidebar navigation * progress/list panes * search-driven desktop workflow '''Possible Perl uses:''' * archive search tool * CPAN package browser * media catalog * dataset searcher * internal document finder * OCR search front end * eBay/archive research tool === NetCDF Explorer === [[File:Wxglade-netcdf-explorer.png|900px|NetCDF Explorer wxGlade template screenshot]] A scientific data browser idea intended to pair well with Strawberry Perl, PDL, and scientific Perl tooling. '''Status:''' Template / app idea '''What it demonstrates:''' * scientific data browser layout * dataset navigation * variable lists * metadata panes * plotting/viewer area * workflow for technical users '''Possible Perl uses:''' * NetCDF viewer * PDL-based data explorer * ADCIRC/ASGS result browser * HDF/NetCDF inspection utility * CSV/SQLite scientific data viewer * teaching tool for scientific Perl === NHC Advisory Explorer === [[File:Wxglade-nhc-advisory-explorer-1.png|900px|NHC Advisory Explorer screenshot 1]] [[File:Wxglade-nhc-advisory-explorer-2.png|900px|NHC Advisory Explorer screenshot 2]] [[File:Wxglade-nhc-advisory-explorer-3.png|900px|NHC Advisory Explorer screenshot 3]] The NHC Advisory Explorer is a real wxPerl application rather than just a mockup. It has an available Windows executable release. * Release page: [https://github.com/StormSurgeLive/nhc-advisory-gui/releases NHC Advisory GUI releases] '''Status:''' Implemented; Windows EXE release available '''What it demonstrates:''' * real wxPerl application workflow * advisory navigation * weather text/data display * practical desktop packaging * turning a wxGlade layout into a useful application '''Possible Perl uses:''' * hurricane advisory browser * emergency-management tool * weather data front end * wxPerl packaging example * example of shipping a Perl GUI as a normal Windows executable == Suggested Template Categories == === Classic Windows Utilities === Good examples: * Windows Help GUI * PuTTY Configuration Pane * WS-FTP Clone These are useful because they model familiar desktop patterns that ordinary Windows users already understand. Possible apps: * configuration editors * log viewers * backup managers * system inventory tools * connection/profile managers * installer front ends * INI / YAML / JSON editors === Internet and Network Tools === Good examples: * Netscape 2.0 Clone * PuTTY Configuration Pane * WS-FTP Clone * LimeWire-style Interface Possible apps: * SSH/SFTP launcher * website deployment GUI * CPAN mirror browser * FTP/SFTP batch uploader * network scanner front end * API test client * simple web archive browser === Search, Archive, and Catalog Tools === Good examples: * LimeWire-style Interface * Netscape 2.0 Clone * Windows Help GUI Possible apps: * local document search * eBay/archive search front end * image OCR search tool * CPAN module browser * source-code search tool * PDF/manual index browser === Scientific and Engineering Tools === Good examples: * NetCDF Explorer * NHC Advisory Explorer Possible apps: * NetCDF/HDF data explorer * PDL plotting front end * ADCIRC/ASGS results viewer * meteorological data browser * CSV/SQLite data inspector * sensor log viewer * engineering calculator collection === Commercial Desktop Utilities === These are simple programs that could realistically be sold, bundled, or used internally by small businesses. Possible apps: * invoice helper * customer lookup tool * report generator * file renamer * batch image processor * shipping label assistant * data cleanup tool * small SQLite-backed business app * upload/deployment utility * quote/order tracker == Suggested Repository Layout == A useful structure for each template would be: <pre> template-name/ README.md screenshot.png template.wxg generated/ MyFrame.pm driver.pl dist/ build-notes.md </pre> Recommended files: * <code>README.md</code> - what the template demonstrates * <code>template.wxg</code> - wxGlade project file * <code>driver.pl</code> - minimal runnable Perl script * <code>screenshot.png</code> - current screenshot * <code>build-notes.md</code> - notes about Strawberry Perl, wxPerl, DLLs, packaging, or installer creation == Suggested README Fields for Each Template == Each template should ideally document: ; Name : Human-readable name of the template or application idea. ; Status : Mockup, partial implementation, working prototype, packaged release, abandoned, etc. ; Purpose : What kind of application this layout is good for. ; Widgets Used : Major wxWidgets/wxPerl controls demonstrated. ; Perl Modules : Useful Perl modules that pair well with the template. ; Tested On : Strawberry Perl version, wxPerl version, Windows version, etc. ; Packaging Notes : Any notes about building an EXE or installer. ; Screenshot : Link or local file reference. == Widget Patterns to Demonstrate == Future templates should try to cover common wxPerl/wxGlade patterns such as: * main frame with menu bar and status bar * toolbar-driven application * tabbed notebook interface * split-pane application * tree navigation plus detail panel * dual-pane file manager * modal configuration dialog * wizard-style workflow * searchable list/grid interface * log viewer with controls * progress dialog for long-running Perl tasks * system tray utility * SQLite-backed data-entry form * plot/image viewer shell == Notes on Clone-Style Templates == Some templates intentionally resemble well-known classic applications. These should be treated as UI studies and educational examples, not as trademarked product replacements. When turning a template into a real application: * use your own application name * use your own icons and artwork * avoid copying trademarks * keep the useful layout pattern * replace mockup controls with real Perl logic == Why This Matters == wxPerl and wxGlade give Perl programmers a practical path to creating normal-looking desktop applications, especially on Windows. A good collection of templates lowers the barrier to entry by giving programmers something visual and runnable to start from. The real advantage is simple: '''Use wxGlade to design the interface. Use Perl to make it useful. Package it so users never need to know it was Perl.''' == See Also == * [[Portal:GUIs with Perl]] * [[Portal:Windows]] * [[Developing and Distributing wxPerl Applications on Windows]] * [[Portal:Perl for Profit]] * [[Portal:Software Development Tools]] * [[Portal:SciTech]] * [[Portal:Perl Powered Programs (PPP)]]
Summary:
Please note that all contributions to Perl Guilds - Getting Medieval with Perl may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Perl Guilds - Getting Medieval with Perl:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Log in
Namespaces
Page
Discussion
English
Views
Read
Edit
Edit source
View history
More
Search
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Tools
What links here
Related changes
Page information