Go Back   Rhinocerus > Newsgroup > Newsgroup comp.lang.* 1 > Newsgroup comp.lang.xharbour

Reply
 
Thread Tools Display Modes
  #1 (permalink)  
Old 03-25-2008, 04:07 AM
Anando
Guest
 
Posts: n/a
Default Win folder selection dialog

Hi,
I know how to use GetOpenFileName and GetSaveFileName in my program
(#pragma), but how to invoke the folder selection dialog (folder only, not
file)?
Thanks.
Anando.


Reply With Quote
Alt Today
Advertising
 
and become member of Rhinocerus
Standard Sponsored Links

  #2 (permalink)  
Old 03-25-2008, 12:10 PM
N:dlzc D:aol T:com \(dlzc\)
Guest
 
Posts: n/a
Default Re: Win folder selection dialog

Dear Anando:

"Anando" <anando63@yahoo.co.in> wrote in message
news:47e88904$0$1345$834e42db@reader.greatnowhere. com...
> Hi,
> I know how to use GetOpenFileName and GetSaveFileName
> in my program (#pragma), but how to invoke the folder
> selection dialog (folder only, not file)?


I found one for doing that on an FTP server on the old news
server, but not what you are asking for. Sorry.

David A. Smith


Reply With Quote
  #3 (permalink)  
Old 03-25-2008, 11:03 PM
Daniel Skousen
Guest
 
Posts: n/a
Default Re: Win folder selection dialog

this may steer you in the right direction
http://j-walk.com/ss/excel/tips/tip29.htm


Anando wrote:
> Hi,
> I know how to use GetOpenFileName and GetSaveFileName in my program
> (#pragma), but how to invoke the folder selection dialog (folder only, not
> file)?
> Thanks.
> Anando.
>
>

Reply With Quote
  #4 (permalink)  
Old 03-26-2008, 11:06 AM
anandobanerjee
Guest
 
Posts: n/a
Default Re: Win folder selection dialog

Hi Daniel,
I have seen the references to SHBrowseForFolder and SHGetPath... on
the internet, but how is it implemented using #pragma in xHarbour?
Unfortunately, I'm not very good at C (yet).
Thanks.
Anando.



On Mar 26, 5:03*am, Daniel Skousen <d...@mobhill.com> wrote:
> this may steer you in the right directionhttp://j-walk.com/ss/excel/tips/tip29.htm
>
>
>
> Anando wrote:
> > Hi,
> > I know how to use GetOpenFileName and GetSaveFileName in my program
> > (#pragma), but how to invoke the folder selection dialog (folder only, not
> > file)?
> > Thanks.
> > Anando.- Hide quoted text -

>
> - Show quoted text -


Reply With Quote
  #5 (permalink)  
Old 03-26-2008, 02:37 PM
J_Rudnicki@wp.pl
Guest
 
Posts: n/a
Default Re: Win folder selection dialog

On 26 Mar, 13:06, anandobanerjee <banerjee.ana...@gmail.com> wrote:

> I have seen the references to SHBrowseForFolder and SHGetPath... on
> the internet, but how is it implemented using #pragma in xHarbour?
> Unfortunately, I'm not very good at C (yet).


See at sources of hwGUI or miniGUI...
Below cut from shellapi.c ( hwGUI ) :

#ifndef BIF_USENEWUI
#ifndef BIF_NEWDIALOGSTYLE
#define BIF_NEWDIALOGSTYLE 0x0040 // Use the new dialog layout
with the ability to resize
#endif
#define BIF_USENEWUI (BIF_NEWDIALOGSTYLE | BIF_EDITBOX)
#endif

/*
* SelectFolder( cTitle )
*/

HB_FUNC( SELECTFOLDER )
{
BROWSEINFO bi;
char *lpBuffer = (char*) hb_xgrab( MAX_PATH+1 );
LPITEMIDLIST pidlBrowse; // PIDL selected by user

bi.hwndOwner = GetActiveWindow();
bi.pidlRoot = NULL;
bi.pszDisplayName = lpBuffer;
bi.lpszTitle = ( ISCHAR(1) )? hb_parc(1):"";
bi.ulFlags = BIF_USENEWUI;
bi.lpfn = NULL;
bi.lParam = 0;

// Browse for a folder and return its PIDL.
pidlBrowse = SHBrowseForFolder( &bi );
SHGetPathFromIDList( pidlBrowse,lpBuffer );
hb_retc( lpBuffer );
hb_xfree( lpBuffer );
}

----------------------

Regards
JoteR
Reply With Quote
  #6 (permalink)  
Old 03-26-2008, 02:52 PM
Saulius
Guest
 
Posts: n/a
Default Re: Win folder selection dialog

>
> See at sources of hwGUI or miniGUI...
> Below cut from shellapi.c ( hwGUI ) :
>


or use
SHBrowseForFolder([<hWnd>],[<cTitle>],<nFlags>,[<nFolderType>])
from What32.lib

Regards,
Saulius


Reply With Quote
  #7 (permalink)  
Old 03-26-2008, 04:17 PM
D.Campagna
Guest
 
Posts: n/a
Default Re: Win folder selection dialog

Anando ha scritto:
> Hi,
> I know how to use GetOpenFileName and GetSaveFileName in my program
> (#pragma), but how to invoke the folder selection dialog (folder only, not
> file)?
> Thanks.
> Anando.
>
>

try this (from what32)
//----------------------------------------------------------------------------

//SYNTAX: SHBrowseForFolder([<hWnd>],[<cTitle>],<nFlags>,[<nFolderType>])

HB_FUNC( SHBROWSEFORFOLDER )
{
HWND hwnd = ISNIL (1) ? GetActiveWindow() : (HWND) hb_parnl(1);
BROWSEINFO BrowseInfo;
char *lpBuffer = (char*) hb_xgrab( MAX_PATH + 1 );
LPITEMIDLIST pidlBrowse;

SHGetSpecialFolderLocation(hwnd, ISNIL(4) ? CSIDL_DRIVES :
hb_parni(4), &pidlBrowse) ;
BrowseInfo.hwndOwner = hwnd;
BrowseInfo.pidlRoot = pidlBrowse;
BrowseInfo.pszDisplayName = lpBuffer;
BrowseInfo.lpszTitle = ISNIL (2) ? "Select a Folder" : hb_parcx(2);
BrowseInfo.ulFlags = hb_parni(3);
BrowseInfo.lpfn = NULL;
BrowseInfo.lParam = 1;
BrowseInfo.iImage = 0;
pidlBrowse = SHBrowseForFolder(&BrowseInfo);

if ( pidlBrowse )
{
SHGetPathFromIDList(pidlBrowse,lpBuffer);
hb_retc( lpBuffer );
}
else
{
hb_retc( "" );
}

hb_xfree( lpBuffer);
}
Reply With Quote
 
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Re: Changing default folder in SAS Lex Jansen Newsgroup comp.soft-sys.sas 0 01-06-2006 05:27 PM
Re: Usefulness of a text editor? Peter Crawford Newsgroup comp.soft-sys.sas 0 07-08-2005 03:22 PM
Re: Can't change current folder in SAS 9.1.3 Lex Jansen Newsgroup comp.soft-sys.sas 0 05-11-2005 10:54 PM
Due Date: January 21,2005 SIAM (SDM-05) Workshop on Feature Selection for Data Mining dfd dfdf Newsgroup comp.soft-sys.sas 0 01-06-2005 05:14 PM
Final CFP: SIAM (SDM-05) Workshop on Feature Selection for DataMining - Interfacing Machine Learning and Statistics dfd dfdf Newsgroup comp.soft-sys.sas 0 01-03-2005 03:06 PM



All times are GMT. The time now is 01:51 PM.


Copyright ©2009

LinkBacks Enabled by vBSEO 3.3.0 RC2 © 2009, Crawlability, Inc.