コード例 #1
0
ファイル: savelbox.c プロジェクト: jossk/open-watcom-v2
/*
 * SaveListBox - save out a list box
 */
void SaveListBox( int how, void (*writefn)( FILE * ), char *tmpname,
                  char *appname, HWND mainhwnd, HWND listbox )
{
    char        fname[_MAX_PATH];
    BOOL        ret;
    HCURSOR     hourglass;
    HCURSOR     oldcursor;

    if( how == SLB_SAVE_AS ) {
        ret = GetSaveFName( mainhwnd, fname );
    } else {
        ret = GenTmpFileName( tmpname, fname );
        if( !ret ) {
            ReportSave( mainhwnd, fname, appname, ret );
        }
    }
    if( ret ) {
        hourglass = LoadCursor( NULL, IDC_WAIT );
        SetCapture( mainhwnd );
        oldcursor = SetCursor( hourglass );
        ret = writeListBoxContents( writefn, fname, listbox );
        SetCursor( oldcursor );
        ReleaseCapture();
        ReportSave( mainhwnd, fname, appname, ret );
    }

} /* SaveListBox */
コード例 #2
0
ファイル: hwconfig.c プロジェクト: Azarien/open-watcom-v2
static void doFileBrowse( HWND hwnd, WORD id ) {

    char        buf[_MAX_PATH];

    if( GetSaveFName( hwnd, buf ) ) {
        SetDlgItemText( hwnd, id, buf );
    }
}
コード例 #3
0
/*
 * MemSave - save the contents of a memory display box
 */
static void MemSave( MemWndInfo *info, HWND hwnd, bool gen_name )
{
    char        fname[_MAX_PATH];
//  OFSTRUCT    finfo;
    DWORD       offset;
    DWORD       limit;
    int         hdl;
    unsigned    len;
    bool        ret;
    HCURSOR     hourglass;
    HCURSOR     oldcursor;

    if( gen_name ) {
        ret = GenTmpFileName( MemConfigInfo.fname, fname );
        if( !ret ) {
            ReportSave( hwnd, fname, MemConfigInfo.appname, ret );
        }
    } else {
        ret = GetSaveFName( hwnd, fname );
    }
    if( ret ) {
//      hdl = OpenFile( fname, &finfo, OF_CREATE | OF_WRITE );
        hdl = open( fname, O_WRONLY | O_CREAT, S_IREAD | S_IWRITE );
        if( hdl == -1 ) {
            ret = false;
        } else {
            hourglass = LoadCursor( NULLHANDLE, IDC_WAIT );
            SetCapture( hwnd );
            oldcursor= SetCursor( hourglass );
            memDumpHeader( hdl, info );
            if( ISCODE( info ) ) {
                DumpMemAsm( info, hdl );
            } else {
                offset = info->base;
                limit = info->limit;
                while( offset < limit ) {
                    genLine( 16, limit, info->disp_type, info->sel, Buffer, offset );
                    len = (unsigned)strlen( Buffer );
                    write( hdl, Buffer, len );
                    write( hdl, "\n", 1 );
                    offset += 16;
                }
            }
            close( hdl );
            SetCursor( oldcursor );
            ReleaseCapture();
        }
        ReportSave( hwnd, fname, MemConfigInfo.appname, ret );
    }

} /* MemSave */