Glade-Perl
view release on metacpan or search on metacpan
Documentation/TODO view on Meta::CPAN
* Improve the Glade source code generation process - Make Glade::Helper
UI to allow users more control of the whole shebang.
* Do not generate run() or destroy_Form() subs for the classes, they only
cloud the issue and run() causes problems with multiple Gtk->main() calls
and destroy_Form calls Gtk->main_quit which usually kills the app.
DONE
----
* Make dist files eg Makefile.PL, MANIFEST, Changelog etc etc
* Make a widget accessor in ProjectUI.pm so that you can:
$widget = $window->lookup_widget('OGFDList');
* Document, internally, Glade::PerlRun for app developers
* Improve options handling
* Perhaps require at least Gtk-Perl-0.7000 (CVS version after 20000102)
then I could remove all version checks for any prior versions.
* Look at writing one perl file for each module/class so that, for instance
ReferenceForm would be in file Generated/ReferenceForm.pm and fileselection1
would be in Generated/fileselection1.pm. You could then use() and new()
previously generated forms without having to write handlers and so on.
This is possible now by use()ing several generated UI files but inefficient
* Fix for XML changes in Glade-0.5.10
Allow a null source directory and generate correct 'use' lines to work
the same way as Glade.
Cater for new Gtk::Button/Gtk::ToggleButton->{'relief'}
Cater for (now unused) Gnome::MessageBox->{'type'}
* Allow user_option to select the type of code generated.
User option 'style' is implemented for AUTOLOAD, Libglade and split.
* Move all handlers to ProjectSIGS.pm and Project.pm (so that run() and
about_Form() are editable and easily seen. This needs to be carefully
thought out so that existing projects continue to work. Perhaps we
need an 'original_version' record so that we know what type of source
to generate to work with previously generated code. New sub app_run()
generated in App and SIGS for developer to edit.
* Improve the documentation. Find a way to keep perl source, perldoc
tooltips, help text, README, web page etc in step and up to date.
Perhaps embed XML in the source - or even source in XML and generate
everything from that? Please email me if you know how it should be done.
I have resorted to keeping the PerlGenerate perldoc up to date ;->
* Spread all pod documentation throughout the files so that they get updated
more regularly (eg user options). Perhaps PerlGenerate and PerlProject
should be combined into PerlGenerate for this reason among others.
The perldoc is still at the end of Glade::PerlGenerate but at least it is
complete and up-to-date.
* Sort out Gnome::App accelerators and signals properly Probably it
would be best to implement the gnome-app-helper methods and use those when
they are available.
* Rewrite GtkMenuItem and PixmapMenuItem constructors to simplify and reuse
code and to handle underline accelerators properly.
* Fix accel key handling so that parse_uline is in generated code so it works
after the string is found with gettext.
* Internationalise every stage but particularly the source code generation
of Gnome::App and Stock stuff
* Change 'single' quoted strings to "double" wherever someone might
enter ' eg tooltips, labels, items, text etc. Perhaps decide at run-time so
that q(), '', "" etc will always work. This was done by backslash escaping
any single quotes (apostrophes) returned by use_par().
* Check that we are not going to overwrite the existing modules
file or find way to insert existing subs into any existing SUBS file
* Implement Gnome widget 'GnomeAnimator',(in Glade >= 0.5.4)
* Implement Gnome widget 'GnomeDruid*',(needs Gtk-Perl CVS after 19990925)
* I have no idea how portable the Makefile.PL is. There are bound to be
problems with Gtk and Gtk-Perl versions, possibly I can handle this via
Gtk-Perl's ./configure and capabilities.
I have heard from users on other platforms so I guess that this works OK
Please email me with any successes or failures.
* Add user option 'log_file' (defaulting, as previously, to STDOUT/STDERR)
* Add some extra generated utilities eg toplevel_hide/destroy/close
* Make subclass.pm for later use (inc handler stubs)
* Check for gnome-config before disallowing gnome widgets
* Do NOT generate Gtk about_Form if 'allow_gnome' is true, use Gnome::About.
* Add user_option 'description' with description for any about box etc.
* Finish implementing styles.
* Store signals and connect after all objects are constructed. This is
important when <object> property is specified in widgets eg. AccelLabels
but also so that radio buttons don't trigger each other during construction.
* Implement version-dependant source code generation so that new features
or widgets available in CVS versions don't break the CPAN release.
* Implement Gnome widget 'GtkAppBar', (needs Gtk-Perl CVS after 19990914)
* Implement Gnome widget 'GtkDock', (needs Gtk-Perl CVS after 19990914)
* Implement Gnome widget 'GtkDockItem', (needs Gtk-Perl CVS after 19990914)
* Implement Gnome widget 'GtkSpell', (needs Gtk-Perl CVS after 19990914)
* Implement Gnome widget 'GtkCalendar', (needs Gtk-Perl CVS after 19990914)
* Implement Gnome widget 'GnomeApp', (needs Gtk-Perl CVS after 19990922)
* Implement Gnome widget 'GnomeAppBar', (needs Gtk-Perl CVS after 19990922)
* Implement Gnome widget 'GnomeDialog', (needs Gtk-Perl CVS after 19990922)
* Implement Gnome widget 'GnomeDock', (needs Gtk-Perl CVS after 19990922)
* Implement Gnome widget 'GnomeDockItem',(needs Gtk-Perl CVS after 19990922)
* Implement Gnome widget 'GnomeSpell', (needs Gtk-Perl CVS after 19990922)
( run in 3.929 seconds using v1.01-cache-2.11-cpan-5837b0d9d2c )