From: Garside, T. <tr...@ga...> - 2003-04-08 17:42:45
|
Aldo, You may want to consider adding the following function to the RichEdit = control: = #########################################################################= ## # (@)METHOD:TextLength() # Returns the text length of the RichEdit control LRESULT TextLength(handle) HWND handle PREINIT: GETTEXTLENGTHEX tl; CODE: ZeroMemory(&tl, sizeof(GETTEXTLENGTHEX)); tl.flags =3D GTL_DEFAULT; tl.codepage =3D CP_ACP; RETVAL =3D SendMessage( handle, EM_GETTEXTLENGTHEX, (WPARAM) (GETTEXTLENGTHEX FAR *) = &tl, 0 ); OUTPUT: RETVAL Trevor S Garside tr...@ga... |
From: Glenn L. <pe...@ne...> - 2003-04-14 00:00:50
|
Hi Aldo, The next two paragraphs are kind of "pie in the sky" or "dream concepts"... but after them are some bug reports... Glad to see you back and working on Win32::GUI. I've been contemplating either (1) trying to fix and enhance it myself or (2) replacing it with something perhaps simpler, slower, and yet more general.... computers are fast these days, so perl code vs C code might be less significant... I thought about maybe doing something like allowing _every possible_ event to be intercepted, using something similar to your new event model... and just defining those events for which user actions are desire perhaps even via the standard Windows constants.... and anything not handled by the user would go to the default windows handler. It might be nice to have 2 functions, one called before the default windows handler, and one after, and also a flag saying the default window handler should be skipped. Or maybe it would be simpler to provide an API to invoke the default window handler from the user handler... and make the user responsible for calling the default handler, if desired, from those user defined event handlers. However, since the new event model seems to have much missing functionality in the 0.0.665 release, trying to get my own head around it was difficult, and yet I really didn't want to try to write something from scratch either. Attached are some messages from a couple months ago showing problems mostly in accelerator key support, both in the old and new event models. I must have accelerator key support in my next major project, so I must fix them (or replace Win32::GUI) if you don't.... I tried to use the new event model, with dynamically generated menus, and couldn't.... it seemed the events never got triggered. Perhaps something is missing there, or perhaps I didn't understand something. I've sort of abandoned that code, but if you know you've fixed something in that area, or implemented more of the new event model, I'd like to try it again. I'd like to convert fully to the new event model, or something similar. Stuart Arnold <stu...@at...> appears to be new to Win32::GUI and has had lots of questions recently. One comment he made was about the use of the GWL_USERDATA field by Win32::GUI. While I initially thought it was quite reasonable for Win32::GUI to use this hook (one of the few provided by Windows API) for its own purposes, it would be nice to provide a replacement.... or, this hit me later... instead of having Win32::GUI use GWL_USERDATA to look up the Win32::GUI data structures given a window handle, it would be possible to just make a side hash structure, indexed by window handle, that would contain the Win32::GUI data.... this would leave GWL_USERDATA free for user data, as Stuart desired.... -- Glenn ===== If the grass is greener on the other side of the fence, try taking better care of your own side. -- Unknown |
From: <bur...@gm...> - 2003-04-08 22:12:48
|
Also, a richedit control in a treeview can be good :) at least, can we have a word-wrap option in a treeview control? Also, It looks like there is a character limit in a treeview. Long texts are truncated... > Aldo, > > You may want to consider adding the following function to the RichEdit > control: > > > ######################################################################### > ## > # (@)METHOD:TextLength() > # Returns the text length of the RichEdit control > LRESULT > TextLength(handle) > HWND handle > PREINIT: > GETTEXTLENGTHEX tl; > CODE: > ZeroMemory(&tl, sizeof(GETTEXTLENGTHEX)); > tl.flags = GTL_DEFAULT; > tl.codepage = CP_ACP; > RETVAL = SendMessage( > handle, EM_GETTEXTLENGTHEX, (WPARAM) (GETTEXTLENGTHEX FAR *) > &tl, 0 > ); > OUTPUT: > RETVAL > > > Trevor S Garside > tr...@ga... > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > -- +++ GMX - Mail, Messaging & more http://www.gmx.net +++ Bitte lächeln! Fotogalerie online mit GMX ohne eigene Homepage! |