LIGHTNING UK!
5th May 2002, 13:42
Hi,
Any chance of getting a couple of bits added to the code in the next version?
Here is what I have in mind:
The browse dialog box is the old style, even on the newer os's. This means, amongst other things, that you dont get the 'right click' explorer type context menu (which a lot of people like). Can you change the following:
bi.ulFlags = BIF_RETURNONLYFSDIRS;
to
bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_VALIDATE | IF_NEWDIALOGSTYLE;
The validation doesnt bit doesnt work properly for some reason, even with that flag set, so it is then necessary to added the following to the call back function:
============
else if (uMsg==BFFM_SELCHANGED)
{
TCHAR szDir[MAX_PATH];
if(!SHGetPathFromIDList((LPITEMIDLIST) lParam ,szDir))
{
// Disable the OK button if the currently selected item isnt a valid path
SendMessage(hwnd, BFFM_ENABLEOK, 0, FALSE);
}
}
============
Thanks - if you do it ;-)
P.S, I think the xp support should be ON by default. For the sake of 1k, its more hastle than its worth to leave it off and make us all change it and compile the code ourselves.
I also find it strange that when you select a destination directory, it automatically appends the existing path (final directory) to it. Im sure no other program (or at least not many) work in this way.
Just my 2p worth :-)
Keep up the great work.
Any chance of getting a couple of bits added to the code in the next version?
Here is what I have in mind:
The browse dialog box is the old style, even on the newer os's. This means, amongst other things, that you dont get the 'right click' explorer type context menu (which a lot of people like). Can you change the following:
bi.ulFlags = BIF_RETURNONLYFSDIRS;
to
bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_VALIDATE | IF_NEWDIALOGSTYLE;
The validation doesnt bit doesnt work properly for some reason, even with that flag set, so it is then necessary to added the following to the call back function:
============
else if (uMsg==BFFM_SELCHANGED)
{
TCHAR szDir[MAX_PATH];
if(!SHGetPathFromIDList((LPITEMIDLIST) lParam ,szDir))
{
// Disable the OK button if the currently selected item isnt a valid path
SendMessage(hwnd, BFFM_ENABLEOK, 0, FALSE);
}
}
============
Thanks - if you do it ;-)
P.S, I think the xp support should be ON by default. For the sake of 1k, its more hastle than its worth to leave it off and make us all change it and compile the code ourselves.
I also find it strange that when you select a destination directory, it automatically appends the existing path (final directory) to it. Im sure no other program (or at least not many) work in this way.
Just my 2p worth :-)
Keep up the great work.