|
|
|
date: Tue, 06 Mar 2007 15:10:36 -0500,
group: microsoft.public.platformsdk.shell
back
Filmstrip vs. Thumbnails vs. Tiles
In my custon NSE, I'm using my own IShellFolder/IShellFolder2
implementation. I'm using the DefView implementation of IShellView.
On WinXP Pro SP2:
When browsing thru the default namespace in Explorer, view modes for
thumbnails & tiles are always available, and a filmstrip view mode seems to
be available if there are files present that are graphics images, such as
png, jpg, bmp, etc.....
When browsing thru my custon NSE in Explorer, looking at the same underlying
file system locations with the same sets of files, I never get an option for
a filmstrip view mode, and if either the tile or thumbnail view mode is
selected, the proper graphics for the tiles/thumbnails are never generated
or displayed.
I was expecting DefView to handle this entirely, but apparently that's not
the case and my NSE implementation is missing something.
Any advice or hints or clues about what I might need to add to my NSE to get
this working properly would be appreciated.
TIA,
Chuck
--
Chuck Chopp
ChuckChopp (at) rtfmcsi (dot) com http://www.rtfmcsi.com
RTFM Consulting Services Inc. 864 801 2795 voice & voicemail
103 Autumn Hill Road 864 801 2774 fax
Greer, SC 29651
Do not send me unsolicited commercial email.
date: Tue, 06 Mar 2007 15:10:36 -0500
author: Chuck Chopp
FVM_THUMBSTRIP & DefView, was "Re: Filmstrip vs. Thumbnails vs. Tiles"
When using the DefView implementation of IShellView in a custom NSE, I'm
finding that none of the folders I display in my NSE are enabled for
"Filmstrip" view mode, a.k.a. FVM_THUMBSTRIP.
There seems to be a massive lack of information regarding this view mode,
especially in connection with NSE development & DefView. Google Groups
shows maybe 1 question in the past 3 years or so that is pretty much about
the same subject, and the original poster on that thread, in this news
group, appears to have not gotten any replies, either. The MSDN site and MS
KB articles make no mention of this, either, in any form that's helpful in
terms of finding out what might be wrong.
Has anybody here run into a similar issue?
I suspect that there must be some additional interface provided, perhaps by
my IShellFolder::GetUIObjectOf() method, but I'm at something of a loss in
terms of how to identify what I'm missing.
TIA,
Chuck
--
Chuck Chopp
ChuckChopp (at) rtfmcsi (dot) com http://www.rtfmcsi.com
RTFM Consulting Services Inc. 864 801 2795 voice & voicemail
103 Autumn Hill Road 864 801 2774 fax
Greer, SC 29651
Do not send me unsolicited commercial email.
date: Thu, 08 Mar 2007 15:51:38 -0500
author: Chuck Chopp
Re: FVM_THUMBSTRIP & DefView, was "Re: Filmstrip vs. Thumbnails vs. Tiles"
Hi Chuck,
I suspect I was that questioner. I did get to the point where I started to
open a support call with ms support, but another solution that didn't
involve the NSE ended up being used as it was easier. It is possible to get
the filmstrip to display, but it doesn't display properly and leaves you
with all sorts of issues. The filmstrip view is a mixture of a windows
Picture and Fax viewer window plus the normal nse window.
What I found in my investigations is that in response to message 82 (which
we called SFVM_GET_WEBVIEW_LAYOUT) if we returned an IPreview3 interface
into the structure in LParam (which seems to be made up of two elements - a
DWORD flags element and an Interface pointer), the large image in the top
part of the screen would appear, and whatever view you had previously
selected in explorer would appear in the bottom part of the screen
(Thumbnails, tiles etc). Explorer itself seems to set the flags to
0x00030001 and the interface element to the default IPreview3 interface (by
creating an instance of CLSID_Preview) .
Should you get any further than that, I'd be interested in hearing about
it. However I suspect the reason it wasn't documented is because it was a
temporary thing and now works differently in vista (I haven't tried so don't
know)?
Regards
Keith
"Chuck Chopp" wrote in message
news:O7ZCaOcYHHA.4232@TK2MSFTNGP05.phx.gbl...
> When using the DefView implementation of IShellView in a custom NSE, I'm
> finding that none of the folders I display in my NSE are enabled for
> "Filmstrip" view mode, a.k.a. FVM_THUMBSTRIP.
>
> There seems to be a massive lack of information regarding this view mode,
> especially in connection with NSE development & DefView. Google Groups
> shows maybe 1 question in the past 3 years or so that is pretty much about
> the same subject, and the original poster on that thread, in this news
> group, appears to have not gotten any replies, either. The MSDN site and
> MS KB articles make no mention of this, either, in any form that's helpful
> in terms of finding out what might be wrong.
>
> Has anybody here run into a similar issue?
>
> I suspect that there must be some additional interface provided, perhaps
> by my IShellFolder::GetUIObjectOf() method, but I'm at something of a loss
> in terms of how to identify what I'm missing.
>
>
> TIA,
>
> Chuck
> --
> Chuck Chopp
>
> ChuckChopp (at) rtfmcsi (dot) com http://www.rtfmcsi.com
>
> RTFM Consulting Services Inc. 864 801 2795 voice & voicemail
> 103 Autumn Hill Road 864 801 2774 fax
> Greer, SC 29651
>
> Do not send me unsolicited commercial email.
date: Fri, 9 Mar 2007 09:42:29 +0100
author: Keith Giddings
Re: FVM_THUMBSTRIP & DefView, was "Re: Filmstrip vs. Thumbnails vs.
Tiles"
Keith Giddings wrote:
> Hi Chuck,
>
> I suspect I was that questioner. I did get to the point where I started to
> open a support call with ms support, but another solution that didn't
> involve the NSE ended up being used as it was easier. It is possible to get
> the filmstrip to display, but it doesn't display properly and leaves you
> with all sorts of issues. The filmstrip view is a mixture of a windows
> Picture and Fax viewer window plus the normal nse window.
Actually, it was a posting here by Dave Williss that I was referring to, but
my search on Google might not have found yours depending the keywords I used
in the search. Here's the Google Groups link:
http://groups.google.com/group/microsoft.public.platformsdk.shell/browse_frm/thread/b3ac595923bb1011/43242748ab436faf?lnk=st&q=&rnum=2#43242748ab436faf
> What I found in my investigations is that in response to message 82 (which
> we called SFVM_GET_WEBVIEW_LAYOUT) if we returned an IPreview3 interface
> into the structure in LParam (which seems to be made up of two elements - a
> DWORD flags element and an Interface pointer), the large image in the top
> part of the screen would appear, and whatever view you had previously
> selected in explorer would appear in the bottom part of the screen
> (Thumbnails, tiles etc). Explorer itself seems to set the flags to
> 0x00030001 and the interface element to the default IPreview3 interface (by
> creating an instance of CLSID_Preview).
Yeah, my MessageSFVCB() method has the following block of "case" statements
in the big "switch":
// Undocumented WinXP messages - not all id'ed yet
case SFVM_MESSAGE4A: // #74
case SFVM_MESSAGE4B: // #75
case SFVM_MESSAGE4C: // #76
case SFVM_GET_CUSTOMVIEWINFO: // #77
case SFVM_MESSAGE4E: // #78
case SFVM_ENUMERATEDITEMS: // #79
case SFVM_GET_VIEW_DATA: // #80
case SFVM_MESSAGE51: // #81
case SFVM_GET_WEBVIEW_LAYOUT: // #82
case SFVM_GET_WEBVIEW_CONTENT:// #83
case SFVM_GET_WEBVIEW_TASKS: // #84
case SFVM_MESSAGE55: // #85
case SFVM_GET_WEBVIEW_THEME: // #86
case SFVM_MESSAGE57: // #87
case SFVM_MESSAGE58: // #88
case SFVM_MESSAGE59: // #89
case SFVM_MESSAGE5A: // #90
case SFVM_MESSAGE5B: // #91
case SFVM_GETDEFERREDVIEWSETTINGS:// #92
hr = E_NOTIMPL;
break;
As you can see, I've got some unhandled cases there, including the one that
you mentioned. I suspect that you and I were working off of the same docs
that I think came from CodeProject or CodeGuru... something that Henk may
have originally posted.
I don't see IPreview3 in my MSDN Library installation, let alone the
IPreview & IPreview2 that I'd expect to exist also. I guess it's time to
update or start tearing thru header files looking for it before I can go any
further with it. I don't know yet if I need to implement a custom IPreview3
or if there's one built into the shell that I can instantiate and pass back.
> Should you get any further than that, I'd be interested in hearing about
> it. However I suspect the reason it wasn't documented is because it was a
> temporary thing and now works differently in vista (I haven't tried so don't
> know)?
Interesting... I'll futz around with it and see what I can find out.
Knowing now that it's implemented differently in Vista, I may just modify my
code to work properly with Vista's shell and tell users that the feature
won't work on WinXP's shell. It's not that I don't want to support the
WinXP user, nor that I have any desire to send them on a quest to upgrade to
Vista, but I'll take the most expedient path I can at this point to
demonstrate filmstrip functionality in my NSE and then see if I can retrofit
it later on to support WinXP.
Regards,
Chuck
--
Chuck Chopp
ChuckChopp (at) rtfmcsi (dot) com http://www.rtfmcsi.com
RTFM Consulting Services Inc. 864 801 2795 voice & voicemail
103 Autumn Hill Road 864 801 2774 fax
Greer, SC 29651
Do not send me unsolicited commercial email.
date: Fri, 09 Mar 2007 10:08:28 -0500
author: Chuck Chopp
|
|