Glade-Perl

 view release on metacpan or  search on metacpan

Documentation/TODO  view on Meta::CPAN


*   It is still relatively inefficient. I construct an XML::Parser 'Tree' 
    and then build a proto hash. Then I recurse through the proto 
    hash and build the UI and write the perl source. Apart
    from converting it all to Java and back again I can't think how to slow 
    it down any more :-). 
    
    But I could shorten the journey between XML and constructors, perhaps 
    libxml would help here although the time spent in XML::Parser is not great.
    
    Or perhaps use a streaming approach. I don't think that it is possible to 
    show the dialog until it is completely constructed so it will just speed 
    up the building before showing it at the end of the stream.
    
    Or perhaps write my own simple parser using regexps.

*   Much inefficiency in the number of diagnostics that can be produced.
    When it is stable I should comment out the most frequent and expensive 
    calls to Glade::PerlProject->diag_print() and ->use_par().
    
*   Cut out all checks and diagnostics if verbose == 0

Documentation/TODO  view on Meta::CPAN

    dynamically in case gnome-libs change the defines. This would allow lookup
    of 'GNOME_STOCK_PIXMAP_SRCHRPL'   => "Search/Replace", for instance.
    
*   Sort out pixmap creation, Gtk-Perl has limitations here but is improving

*   Improve PerlRun->create_pixmap() to use new bindings, possibly do in same
    way that Glade C code in support.c does.
    
LONG TERM
---------
    Use XML::Parser()s streaming approach or SAX interface to build UI as it 
    is read. This might be quicker and would also allow 'net delivery
    of UIs. Write Glade::PerlGenerate->Form_from_(XML_)Stream.

    Since on my 170MHz AMD K6/II a large reference form (136 kb) only takes 3 
    seconds to read and parse into the glade proto, this might not be worth 
    the effort. A trivial parser that I wrote in perl does reduce that to 1 
    second so I remain open to suggestions.



( run in 0.224 second using v1.01-cache-2.11-cpan-4d50c553e7e )