SaveQFactor example for C++ Builder

void __fastcall TForm1::ShowSaveDlg2Click(TObject *Sender) 
{
   L_INT nRet; 

   LEADDlgFile1->DialogTitle = "Save a File";
   LEADDlgFile1->MaxFileSize = 0; 
   LEADDlgFile1->MaxFileTitleSize = 0; 
   LEADDlgFile1->DlgFileFlags = 0; 
   LEADDlgFile1->InitialDir = "C:\\";         
   LEADDlgFile1->SaveMulti = MULTIPAGE_OPERATION_OVERWRITE; 
   LEADDlgFile1->DlgFlags = DLG_SAVE_SHOW_FILEOPTIONS_PROGRESSIVE     +
                           DLG_SAVE_SHOW_FILEOPTIONS_MULTIPAGE       +
                           DLG_SAVE_SHOW_FILEOPTIONS_STAMP           +
                           DLG_SAVE_SHOW_FILEOPTIONS_QFACTOR         +
                           DLG_SAVE_SHOW_FILEOPTIONS_J2KOPTIONS      +
                           DLG_SAVE_SHOW_FILEOPTIONS_BASICJ2KOPTIONS; 
   LEADDlgFile1->LEADImage = LEADImage1; 
   nRet= LEADDlgFile1->ShowSaveDlg ( this ); 
   if ( nRet == SUCCESS_DLG_OK ) 
   {
      if ( (LEADDlgFile1->SaveFormat == FILE_J2K) ||
           (LEADDlgFile1->SaveFormat == FILE_JP2) ) 
      {
         LEADImage1->J2KUseColorTransform= LEADDlgFile1->SaveJ2KUseColorTransform; 
         LEADImage1->J2KDerivedQuantization= LEADDlgFile1->SaveJ2KDerivedQuantization; 
         LEADImage1->J2KCompressionControl= LEADDlgFile1->SaveJ2KCompressionControl; 
         LEADImage1->J2KCompressionRatio= LEADDlgFile1->SaveJ2KCompressionRatio;         
         LEADImage1->J2KTargetFileSize= LEADDlgFile1->SaveJ2KTargetFileSize; 
         LEADImage1->J2KXOsiz= LEADDlgFile1->SaveJ2KXOsiz; 
         LEADImage1->J2KYOsiz= LEADDlgFile1->SaveJ2KYOsiz; 
         LEADImage1->J2KXTsiz= LEADDlgFile1->SaveJ2KXTsiz; 
         LEADImage1->J2KYTsiz= LEADDlgFile1->SaveJ2KYTsiz; 
         LEADImage1->J2KXTOsiz= LEADDlgFile1->SaveJ2KXTOsiz; 
         LEADImage1->J2KYTOsiz= LEADDlgFile1->SaveJ2KYTOsiz; 
         LEADImage1->J2KDecompLevel= LEADDlgFile1->SaveJ2KDecompLevel; 
         LEADImage1->J2KProgressOrder= LEADDlgFile1->SaveJ2KProgressOrder; 
         LEADImage1->J2KCodBlockWidth= LEADDlgFile1->SaveJ2KCodBlockWidth; 
         LEADImage1->J2KCodBlockHeight= LEADDlgFile1->SaveJ2KCodBlockHeight; 
         LEADImage1->J2KCBS_SelectiveACBypass= LEADDlgFile1->SaveJ2KCBS_SelectiveACBypass; 
         LEADImage1->J2KCBS_ResetContextOnBoundaries= LEADDlgFile1->SaveJ2KCBS_ResetContextOnBoundaries; 
         LEADImage1->J2KCBS_TerminationOnEachPass= LEADDlgFile1->SaveJ2KCBS_TerminationOnEachPass; 
         LEADImage1->J2KCBS_VerticallyCausalContext= LEADDlgFile1->SaveJ2KCBS_VerticallyCausalContext; 
         LEADImage1->J2KCBS_PredictableTermination= LEADDlgFile1->SaveJ2KCBS_PredictableTermination; 
         LEADImage1->J2KCBS_ErrorResilienceSymbol= LEADDlgFile1->SaveJ2KCBS_ErrorResilienceSymbol; 
         LEADImage1->J2KGuardBits= LEADDlgFile1->SaveJ2KGuardBits; 
         LEADImage1->J2KDerivedBaseMantissa= LEADDlgFile1->SaveJ2KDerivedBaseMantissa; 
         LEADImage1->J2KDerivedBaseExponent= LEADDlgFile1->SaveJ2KDerivedBaseExponent; 
         LEADImage1->J2KUseSOPMarker= LEADDlgFile1->SaveJ2KUseSOPMarker; 
         LEADImage1->J2KUseEPHMarker= LEADDlgFile1->SaveJ2KUseEPHMarker; 

         LEADImage1->Save (LEADDlgFile1->FileName, 
                           LEADDlgFile1->SaveFormat, 
                           LEADDlgFile1->SaveBitsPerPixel, 
                           LEADDlgFile1->SaveQFactor, 
                           LEADDlgFile1->SaveMulti ); 
      }
   }
}