1. RE: listview items colors

Hi Tone & all,
There has been many requests for this feature, but there has never been 
any thorough explanation on how to do it. This would be a valued 
addition to win32lib. Perhaps when the current issues are sorted out 
Derek or someone may be able to move this further up the todo list.

Tony

tone.skoda at gmx.net wrote:
> i didn't find any function to set text color (or background color) for 
> one
> listview item.
> is it in win32lib?
> if not it would be good if this would be possible, also for treeview 
> items.
> 
> it can be done by custom painting items.
> for treeview, i used NM_CUSTOMDRAW to paint multi-line items.
> 
> 
>

new topic     » topic index » view message » categorize

2. RE: listview items colors

Hey,

These are the only routines Im aware of.

junk = sendMessage(id,LVM_SETBKCOLOR, 0, color) 
junk = sendMessage(id,LVM_SETTEXTBKCOLOR, 0, color)
junk = sendMessage(id,LVM_SETTEXTCOLOR, 0, color)

substitute color for your rgb( ) and youre set.

Euman
euman at bellsouth.net

==================================================================
The information contained in this message may be confidential 
and is intended to be exclusively for the addressee. Should you 
receive this message unintentionally, please do not use the contents 
herein and notify the sender immediately by return e-mail.
==================================================================

new topic     » goto parent     » topic index » view message » categorize

3. RE: listview items colors

I certainly don't know how to implement this but so I understand, are 
you saying that you would have to draw the entire LV yourself?

I'd like to see it called something like this:
addLVItem(MyLV, MyIcon, {data1, data2, data3},{color1, color2, color3})
and
addLVItem(MyLV, MyIcon, {data1, data2, data3},default)

etc. I think you'll get the idea.

Just my 2c.
Thanks
Tony Steward

Derek Parnell wrote:
> I guess what I was trying to say was that because CUSTOMDRAWN controls
> require a lot of work, namely they must do ALL the rendering, it would 
> be
> difficult to generalise this and place it into the library. I'd be glad 
> to
> be proven wrong. Show me how it can be done and I'll try to include it.
> 
> I agree that it appears to be an oversight on Microsoft's part that 
> makes it
> difficult to color individual items.
> ----------
> Derek.
> 
> ----- Original Message -----
> From: <tone.skoda at gmx.net>
> To: "EUforum" <EUforum at topica.com>
> Sent: Sunday, June 16, 2002 10:11 AM
> Subject: Re: listview items colors
> 
> 
> >
> > I don't agree that it's too specific. Users should be able to use 
> > existing
> > routine setTextColor () to set text color for listview, treeview... 
> > items.
> >
> > ----- Original Message -----
> > From: "Derek Parnell" <ddparnell at bigpond.com>
> > To: "EUforum" <EUforum at topica.com>
> > Sent: Saturday, June 15, 2002 6:54 PM
> > Subject: Re: listview items colors
> >
> >
> > >
> > > If you want to set the colour of specific rows and columns, you have to
> > use
> > > the customdraw facilities. Generally this is too specific to place into
> > the
> > > library but maybe I can add some assitance for this in a later edition.
> > > ---------------
> > > Derek.
> > >
> > > ----- Original Message -----
> > > From: <tone.skoda at gmx.net>
> > > To: "EUforum" <EUforum at topica.com>
> > > Sent: Friday, June 14, 2002 5:35 PM
> > > Subject: Re: listview items colors
> > >
> > >
> > > >
> > > > Didn't this get thru!??
> > > > I'm saying I can do this if it will be in next release of win32lib?
> > Derek?
> > > >
> > > > ----- Original Message -----
> > > > From: <tone.skoda at gmx.net>
> > > > To: "EUforum" <EUforum at topica.com>
> > > > Sent: Thursday, June 13, 2002 8:37 PM
> > > > Subject: listview items colors
> > > >
> > > >
> > > > >
> > > > > i didn't find any function to set text color (or background color)
> for
> > > one
> > > > > listview item.
> > > > > is it in win32lib?
> > > > > if not it would be good if this would be possible, also for treeview
> > > > items.
> > > > >
> > > > > it can be done by custom painting items.
> > > > > for treeview, i used NM_CUSTOMDRAW to paint multi-line items.
> > > > >
> > > > >
> > > > >

new topic     » goto parent     » topic index » view message » categorize

4. RE: listview items colors

This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_000_01C2159B.771DEFC0
 charset=iso-8859-1

Thanks Tone.

There is a bug. It is in the defineUserProperty routine. Replace the
lines...

    -- If not, then add it a new property.
    if lPropIdx = 0 then
        window_tag[pControl][tagPropId] =
append(window_tag[pControl][tagPropId], pPropId)
        window_tag[pControl][tagPropInit] =
append(window_tag[pControl][tagPropId], pData) -- BUG
        window_tag[pControl][tagPropData] =
append(window_tag[pControl][tagPropId], pData) -- BUG

with...

    -- If not, then add it a new property.
    if lPropIdx = 0 then
        window_tag[pControl][tagPropId] =
append(window_tag[pControl][tagPropId], pPropId)
        window_tag[pControl][tagPropInit] =
append(window_tag[pControl][tagPropInit], pData)
        window_tag[pControl][tagPropData] =
append(window_tag[pControl][tagPropData], pData)

My mistake was caused by copying a line of code twice and only changing one
element reference in each of the two copied lines. This is a common mistake
with using append() etc... 
----------
Derek.

> -----Original Message-----
> From: tone.skoda at gmx.net [mailto:tone.skoda at gmx.net]
> Sent: Monday, 17 June 2002 8:36
> To: EUforum
> Subject: Re: listview items colors
> 
> 
> 
> Attached is a library for Win32Lib v0.57.7 with demo to 
> create colored list
> view and tree view items.
> 
> global routines are:
> 
> set_tv_item_text_color
> set_tv_item_bk_color
> set_lv_item_text_color
> set_lv_item_bk_color
> 
> For listviews you are able to set same color for the whole 
> row, not every
> item in row with different color.
> I didn't know of setUserProperty() functions. With them it is 
> much easier to
> create libraries for win32lib.
> I'm not sure if they're fast? And are you able to use ids of 
> items for first
> parameter, or are only ids of windows valid?
> Also, I think they have some bugs, that's why background 
> color of one item
> in treeview will be black which is not right.
> Here it goes:
> 
> First of, why does this display 1 and not 10:
> 
> defineUserProperty (Win, 1, 10)
> ?getUserProperty (Win, 1)
> 
> Secondly, here must be bug:
> 
> defineUserProperty (Win, 1, 10)
> setUserProperty (Win, 1, 10)
> ?getUserProperty (Win, 1)
> defineUserProperty (Win, 2, 20)
> ?getUserProperty (Win, 1)
> setUserProperty (Win, 2, 20)
> ?getUserProperty (Win, 1)
> 
> It outputs this:
> {10}
> {1}
> {1}
> 
> instead of this:
> {10}
> {10}
> {10}
> 
> 
> 
> 

==================================================================
De informatie opgenomen in dit bericht kan vertrouwelijk zijn en 
is uitsluitend bestemd voor de geadresseerde. Indien u dit bericht 
onterecht ontvangt wordt u verzocht de inhoud niet te gebruiken en 
de afzender direct te informeren door het bericht te retourneren. 
==================================================================
The information contained in this message may be confidential 
and is intended to be exclusively for the addressee. Should you 
receive this message unintentionally, please do not use the contents 
herein and notify the sender immediately by return e-mail.


==================================================================

------_=_NextPart_000_01C2159B.771DEFC0
Content-Type: application/ms-tnef

new topic     » goto parent     » topic index » view message » categorize

5. RE: listview items colors

This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_000_01C215A4.5657CE10
 charset=iso-8859-2

Tone,
your demo works great now that the defineUserProperty bug is fixed. I'll
merge it into the main stream library . Great work!

> -----Original Message-----
> From: tone.skoda at gmx.net [mailto:tone.skoda at gmx.net]
> Subject: Re: listview items colors
> 
> 
> 
> Attached is a library for Win32Lib v0.57.7 with demo to 
> create colored list
> view and tree view items.
> 
> global routines are:
> 
> set_tv_item_text_color
> set_tv_item_bk_color
> set_lv_item_text_color
> set_lv_item_bk_color
> 
> For listviews you are able to set same color for the whole 
> row, not every
> item in row with different color.
> I didn't know of setUserProperty() functions. With them it is 
> much easier to
> create libraries for win32lib.
> I'm not sure if they're fast? And are you able to use ids of 
> items for first
> parameter, or are only ids of windows valid?
> Also, I think they have some bugs, that's why background 
> color of one item
> in treeview will be black which is not right.
> Here it goes:
> 
> First of, why does this display 1 and not 10:
> 
> defineUserProperty (Win, 1, 10)
> ?getUserProperty (Win, 1)
> 
> Secondly, here must be bug:
> 
> defineUserProperty (Win, 1, 10)
> setUserProperty (Win, 1, 10)
> ?getUserProperty (Win, 1)
> defineUserProperty (Win, 2, 20)
> ?getUserProperty (Win, 1)
> setUserProperty (Win, 2, 20)
> ?getUserProperty (Win, 1)
> 
> It outputs this:
> {10}
> {1}
> {1}
> 
> instead of this:
> {10}
> {10}
> {10}
> 
> 
> 
> 

==================================================================
De informatie opgenomen in dit bericht kan vertrouwelijk zijn en 
is uitsluitend bestemd voor de geadresseerde. Indien u dit bericht 
onterecht ontvangt wordt u verzocht de inhoud niet te gebruiken en 
de afzender direct te informeren door het bericht te retourneren. 
==================================================================
The information contained in this message may be confidential 
and is intended to be exclusively for the addressee. Should you 
receive this message unintentionally, please do not use the contents 
herein and notify the sender immediately by return e-mail.


==================================================================

------_=_NextPart_000_01C215A4.5657CE10
Content-Type: application/ms-tnef

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu