On 10/29/08, Mudcat <[EMAIL PROTECTED]> wrote: > Sounds like that would work really well. Problem is I can't get it to > work. > > ... > AttributeError: Text instance has no attribute 'count' > ... >
Yep, it is not there yet. > I think my usage is correct. I don't have any params at the moment, > but I was just checking the functionality. > > numlines = widget.count() > > According to the Tk 8.5 documentation it's used just like a normal > command. > WIDGET COMMAND > pathName count ?options? index1 index2 > -chars > -displaychars > -displayindices > -displaylines > -indices > -lines > -xpixels > -ypixels > > > As for the environment, I thought I had everything set up correctly. > I've got the latest stable version of Python 2.6 (r26:66721, Oct 2 > 2008, 11:35:03). I'm implementing the TTK wrappers to access Tk 8.5. Implementing a ttk wrapper won't give you this "count" command, since this is a command for an already existing widget (the text widget), it is not part of the ttk widgets. Also, there is already a ttk wrapper at http://pypi.python.org/pypi/pyttk which is being proposed to be included in python's stdlib. > Although when I check the wrapper I don't see any mods to the Text > Box. I also don't see this option in the Tkinter.py file. > > Is there something else I need to add to access this new feature? > You would need to wrap it and add it as a method to the Text class in Tkinter. Fortunately it is easily done: import Tkinter def text_count(self, index1, index2, *options): args = ["-%s" % opt for opt in options] args.extend([index1, index2]) return self.tk.call(self._w, "count", *args) Tkinter.Text.count = text_count Then to try it: root = Tkinter.Tk() text = Tkinter.Text() text.pack() text.insert("1.0", "a\nb\c\nd") print text.count("1.0", "end", "displaylines", "lines") root.mainloop() Note that I inverted the order of the arguments here, indices and then the options or no options. If it doesn't work saying "count" is not an acceptable command then your tkinter is not compiled against tcl/tk 8.5 or later. > > > On Oct 28, 6:51 pm, "Guilherme Polo" <[EMAIL PROTECTED]> wrote: > > > > > Are you looking for something like the new "count" command for the > > text widget in tk 8.5 ? "count" can count the number of logical lines > > (irrespective of wrapping), display lines (counts one for each time a > > line wraps) and some other things. > > > > > > Thanks > > > > > -- > > > http://mail.python.org/mailman/listinfo/python-list > > > > > -- > > -- Guilherme H. Polo Goncalves > > > -- > http://mail.python.org/mailman/listinfo/python-list > -- -- Guilherme H. Polo Goncalves -- http://mail.python.org/mailman/listinfo/python-list