Changeset 164 for trunk/Lucide


Ignore:
Timestamp:
Nov 27, 2006, 7:35:33 PM (15 years ago)
Author:
Eugene Romanenko
Message:

better place for ask about ps file location, not in thread

Location:
trunk/Lucide/SOURCE/gui
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/Lucide/SOURCE/gui/lucide.cpp

    r161 r164  
    768768                case CM_PRINT:
    769769                {
    770                     PrintDlg *d = new PrintDlg( hWndFrame, doc, docViewer->getCurrentPage() + 1 );
    771                     if ( d->showDialog() == DID_OK ) {
     770                    PrintDlg *d = new PrintDlg( hWndFrame, doc, Lucide::docFileName, docViewer->getCurrentPage() + 1 );
     771                    if ( d->showDialog() == DID_OK )
     772                    {
    772773                        // print
    773774                        PrintSetup *p = new PrintSetup;
  • trunk/Lucide/SOURCE/gui/print.cpp

    r162 r164  
    309309
    310310    char tmpps[ CCHMAXPATH ] = "";
    311     if ( psetup->psToFile )
    312     {
    313         strcpy( tmpps, title );
    314         char *pointpos = strrchr( tmpps, '.' );
    315         if ( pointpos != NULL ) {
    316             *pointpos = 0;
    317         }
    318         strcat( tmpps, ".ps" );
    319 
    320         PFILEDLG fd = new FILEDLG;
    321         memset( fd, 0, sizeof( FILEDLG ) );
    322         fd->cbSize = sizeof( FILEDLG );
    323         fd->fl = FDS_CENTER | FDS_SAVEAS_DIALOG;
    324         strcpy( fd->szFullFile, tmpps );
    325         WinFileDlg( HWND_DESKTOP, hFrame, fd );
    326         if ( fd->lReturn == DID_OK ) {
    327             strcpy( tmpps, fd->szFullFile );
    328             delete fd;
    329         }
    330         else {
    331             delete fd;
    332             return true;
    333         }
     311    if ( psetup->psToFile ) {
     312        strcpy( tmpps, psetup->psFile );
    334313    }
    335314    else {
  • trunk/Lucide/SOURCE/gui/print.h

    r162 r164  
    5757    int copies;
    5858    bool psToFile;
     59    char psFile[ CCHMAXPATH ];
    5960};
    6061
  • trunk/Lucide/SOURCE/gui/printDlg.cpp

    r162 r164  
    4949
    5050
    51 PrintDlg::PrintDlg( HWND hWndFrame, LuDocument *_doc, long _currentpage )
     51PrintDlg::PrintDlg( HWND hWndFrame, LuDocument *_doc, const char *fname, long _currentpage )
    5252{
    5353    hFrame      = hWndFrame;
     
    5555    scalable    = _doc->isScalable( ev );
    5656    fixed       = _doc->isFixedImage( ev );
     57    filename    = newstrdup( fname );
    5758    currentpage = _currentpage;
    5859    pcurForm    = new HCINFO;
     
    6465PrintDlg::~PrintDlg()
    6566{
     67    delete filename;
    6668    delete pcurForm;
    6769    delete psetup;
     
    599601                        _this->psetup->psToFile = WinQueryButtonCheckstate( hwnd, IDC_PRINT_TO_FILE );
    600602
     603                        if ( _this->psetup->psToFile )
     604                        {
     605                            strcpy( _this->psetup->psFile, _this->filename );
     606                            char *pointpos = strrchr( _this->psetup->psFile, '.' );
     607                            if ( pointpos != NULL ) {
     608                                *pointpos = 0;
     609                            }
     610                            strcat( _this->psetup->psFile, ".ps" );
     611
     612                            PFILEDLG fd = new FILEDLG;
     613                            memset( fd, 0, sizeof( FILEDLG ) );
     614                            fd->cbSize = sizeof( FILEDLG );
     615                            fd->fl = FDS_CENTER | FDS_SAVEAS_DIALOG;
     616                            strcpy( fd->szFullFile, _this->psetup->psFile );
     617                            WinFileDlg( HWND_DESKTOP, hwnd, fd );
     618                            if ( fd->lReturn == DID_OK ) {
     619                                strcpy( _this->psetup->psFile, fd->szFullFile );
     620                                delete fd;
     621                            }
     622                            else {
     623                                delete fd;
     624                                WinDismissDlg( hwnd, DID_CANCEL );
     625                                return (MRESULT)FALSE;
     626                            }
     627                        }
     628
    601629                        WinDismissDlg( hwnd, DID_OK );
    602630                    }
  • trunk/Lucide/SOURCE/gui/printDlg.h

    r102 r164  
    4444{
    4545    public:
    46         PrintDlg( HWND hWndFrame, LuDocument *_doc, long _currentpage );
     46        PrintDlg( HWND hWndFrame, LuDocument *_doc, const char *fname, long _currentpage );
    4747        virtual ~PrintDlg();
    4848
     
    6767        bool scalable;
    6868        bool fixed;
     69        char *filename;
    6970        long currentpage;
    7071        PPRQINFO3 pQueueInfo;
Note: See TracChangeset for help on using the changeset viewer.