From: Mattia B. <mb...@ds...> - 2001-12-18 10:21:49
|
On Tue, 18 Dec 2001, James Lavery wrote: >Dear Mattia, >Thanks - this works a treat! > >I was so close... Anyway, now I'm up and running. > >I had noticed the 'Attempt to free unreferenced...' error - will await a >fix. > >Now that I've got things working, what do you suggest/would you like? I >feel that validators are the way to go when it comes to transferring >data to/from controls (rather than explicit GetValue/SetValue calls all >over the place) - I have had to implement a similar concept (though not >as elegant) in a very large Perl/Tk application which we have developed. > >I see that you think we should create Perl versions of >wxGenericValidator and wxTextValidator - I am happy to do this and >contribute them to the project. If I do this, do you (or anyone else on >the list) have ideas on how we should name/implement them? What 'better >interface' can you envisage for a Perl-based Validator? I have not >examined the native wxGenericValidator and wxTextValidator yet, so am >interested in your thoughts. wxTextValidator is OK for Perl, while wxGenericValidator does 1 - use overloading wxGV construtor takes one of a int/bool/string/integer array (C++) pointer ( think Perl references ), but in Perl int/string/bool map to scalar. 2 - there is no NumericValidator ( or whatever you want to call it ) one that does a text->number conversion with error checking/bound checking, for intehers and floats 3 - I don't like wxGV because it tries to do validation for all controls, doing the Right Thing, but this sometimes is not possible ( like: for comboboxes if you pass a string, it returns the selected string, if you pass an integer it returns the index of the selected string in the combobox, but if I want the selected string as a number ( because my combobox contains, say, 1,2,3,4,6,12 ) I need a custom validator ( this relates to the lack of a NumericValidator ) BTW this example does not fit with Perl ( because in Perl a number "is" a string, but I hope you get the idea ) But since I do not use validator that much, it's up to you to decide Thanks! Mattia |