//--------------------------------------------------------------------------- #include #include #pragma hdrstop #include "..\..\..\..\include\ltkey.h" #include "MainForm.h" #include "PasswordDlg.h" #include "GetValue.h" #include "AboutDlg.h" #include "Hyperlink.h" #pragma warn -8080 //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma link "LEADAnn" #pragma link "LEADDlgFile" #pragma link "LEADDlgService" #pragma link "LEADMain" #pragma resource "*.dfm" #pragma resource "Common.res" TMainFrm *MainFrm; //--------------------------------------------------------------------------- __fastcall TMainFrm::TMainFrm(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void TMainFrm::ResetAllRects(int nDispWidth,int nDispHeight) { LEADAnnCtrl1->SetSrcRect(0, 0, LEADAnnCtrl1->BitmapWidth, LEADAnnCtrl1->BitmapHeight); LEADAnnCtrl1->SetSrcClipRect(0, 0, LEADAnnCtrl1->BitmapWidth, LEADAnnCtrl1->BitmapHeight); LEADAnnCtrl1->SetDstRect(0, 0, nDispWidth, nDispHeight); LEADAnnCtrl1->SetDstClipRect(0, 0, nDispWidth, nDispHeight); } //--------------------------------------------------------------------------- void TMainFrm::ViewNormalProc(void) { LEADAnnCtrl1->PaintSizeMode = smNormal; nZoomFactor = 100; ZoomPercent = VIEW_NORMAL; Normal1->Checked = true; Zoom1->Checked = false; FitToWindow1->Checked = false; } //--------------------------------------------------------------------------- void TMainFrm::ViewZoomProc() { LEADAnnCtrl1->PaintSizeMode= smZoom; Application->CreateForm(__classid(TDlgGetValue), &DlgGetValue); if(ZoomPercent <= 0) DlgGetValue->InitTheForm("Zoom In/Out", "Whole Percent: ", 800, 1, LEADAnnCtrl1->PaintZoomFactor, 100, 10, false); else DlgGetValue->InitTheForm("Zoom In/Out", "Whole Percent:", 800, 1, ZoomPercent, 100, 10, false); DlgGetValue->ShowModal(); if(DlgGetValue->UserResult() == true) { LEADAnnCtrl1->AutoRepaint= false; ZoomPercent = DlgGetValue->GetAmount(); ResetAllRects(LEADAnnCtrl1->BitmapWidth * ZoomPercent / 100,LEADAnnCtrl1->BitmapHeight * ZoomPercent / 100); LEADAnnCtrl1->AutoRepaint= True; } DlgGetValue->Free(); Normal1->Checked = false; Zoom1->Checked = true; FitToWindow1->Checked = false; } //--------------------------------------------------------------------------- void TMainFrm::ViewFitProc() { LEADAnnCtrl1->PaintSizeMode = smFit; LEADAnnCtrl1->ForceRepaint(); Normal1->Checked = false; Zoom1->Checked = false; FitToWindow1->Checked = true; ZoomPercent = VIEW_FIT; } //--------------------------------------------------------------------------- bool TMainFrm::ISTIF(int nFormat) { if((nFormat== FILE_JTIF) || (nFormat== FILE_LEAD2JTIF) || (nFormat== FILE_LEAD1JTIF) || (nFormat== FILE_TIFLZW) || (nFormat== FILE_TIFLZW_CMYK) || (nFormat== FILE_TIFLZW_YCC) || (nFormat== FILE_TIF) || (nFormat== FILE_TIF_CMYK) || (nFormat== FILE_TIF_YCC) || (nFormat== FILE_TIF_PACKBITS) || (nFormat== FILE_TIF_PACKBITS_CMYK) || (nFormat== FILE_TIF_PACKBITS_YCC) || (nFormat== FILE_CCITT) || (nFormat== FILE_CCITT_GROUP3_1DIM) || (nFormat== FILE_CCITT_GROUP3_2DIM) || (nFormat== FILE_CCITT_GROUP4)) return true; else return false; } //--------------------------------------------------------------------------- void TMainFrm::GetAnnFile(LPSTR pDest, LPSTR pSource, int nFormat) { if(ISTIF(nFormat)) /* the file has annotation data! */ lstrcpy(pDest, pSource); else { /* else look for a .ANN file */ lstrcpy(pDest, pSource); LPSTR p = _fstrrchr(pDest, '.'); if(!p) p = _fstrchr(pDest, '\0'); lstrcpy(p, ".ann"); } } //--------------------------------------------------------------------------- void TMainFrm::ClearMenuUserMode(int iUserMode, TMenuItem * DesignMenu) { None1->Checked= false; Design1->Checked= false; Run1->Checked= false; LEADAnnCtrl1->AnnUserMode= iUserMode; if(iUserMode == ANNUSERMODE_DESIGN) Tool1->Enabled = true; else Tool1->Enabled = false; DesignMenu->Checked= True; if(iUserMode == ANNUSERMODE_DESIGN) { // show the annotation toolbar LEADAnnCtrl1->AnnToolbar->Visible= ToolBar1->Checked; ToolBar1->Enabled= true; } else { //hide the annotation toolbar LEADAnnCtrl1->AnnToolbar->Visible= false; ToolBar1->Enabled= false; } } //--------------------------------------------------------------------------- void TMainFrm::SetToolMenu(int iTool, TMenuItem* ToolMenu) { Select1->Checked= false; Line1->Checked = false; Rect1->Checked = false; Ellipse1->Checked = false; Polyline1->Checked = false; Polygon1->Checked = false; Pointer1->Checked = false; Freehand1->Checked = false; Hilite1->Checked = false; Redact1->Checked = false; Text1->Checked = false; Note1->Checked = false; Stamp1->Checked = false; Button1->Checked = false; HotSpot1->Checked = false; Audio1->Checked = false; Ruler1->Checked = false; CrossProduct1->Checked = false; Point1->Checked = false; Protractor1->Checked = false; PushPin1->Checked = false; FreehandHotSpot1->Checked = false; Assigned1->Checked = false; Approved1->Checked = false; Checked1->Checked = false; ClientAttorneyPrivilege1->Checked = false; Copy2->Checked = false; Draft1->Checked = false; Extended1->Checked = false; Fax1->Checked = false; Faxed1->Checked = false; Important1->Checked = false; Invoice1->Checked = false; Notice1->Checked = false; Official1->Checked = false; OnFile1->Checked = false; Paid1->Checked = false; Passed1->Checked = false; Pending1->Checked = false; Processed1->Checked = false; Received1->Checked = false; Rejected1->Checked = false; Release1->Checked = false; Sent1->Checked = false; Shipped1->Checked = false; TopSecret1->Checked = false; Urgent1->Checked = false; Void1->Checked = false; LEADAnnCtrl1->AnnTool = iTool; ToolMenu->Checked = true; } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Open1Click(TObject *Sender) { int nRet; AnsiString Msg; char szAnnFile [255]; LEADDlgFile1->DlgFileFlags = 0; LEADDlgFile1->DialogTitle = "Open A File"; LEADDlgFile1->PreviewEnabled = true; LEADDlgFile1->LoadPasses = 0; LEADDlgFile1->LoadRotated = true; LEADDlgFile1->LoadCompressed = false; LEADDlgFile1->DlgFlags= DLG_OPEN_ENABLESIZING | DLG_OPEN_SHOW_PREVIEW | DLG_OPEN_USEFILESTAMP | DLG_OPEN_SHOW_PROGRESSIVE | DLG_OPEN_SHOW_MULTIPAGE | DLG_OPEN_SHOW_DELPAGE | DLG_OPEN_SHOW_LOADROTATED | DLG_OPEN_SHOW_LOADCOMPRESSED | DLG_OPEN_SHOW_LOADOPTIONS | DLG_OPEN_SHOW_FILEINFO | DLG_OPEN_SHOW_PDFOPTIONS | DLG_OPEN_SHOW_RASTEROPTIONS | DLG_OPEN_SHOW_VECTOROPTIONS | DLG_OPEN_VIEWTOTALPAGES; nRet= LEADDlgFile1->ShowOpenDlg(this); if(nRet < SUCCESS_DLG_OK) { ShowMessage(LEADDlgFile1->ErrorMsg); return; } if(nRet == SUCCESS_DLG_CANCEL) return; Screen->Cursor = crHourGlass; try { LEADAnnCtrl2->GetFileInfo(LEADDlgFile1->FileName, 0); } catch(ELEADImageError* e) { ShowMessage(LEADAnnCtrl2->ErrorMsg); Screen->Cursor = crDefault; return; } try { nRet = LEADAnnCtrl1->Load(LEADDlgFile1->FileName, 0, LEADDlgFile1->PageNumber, -1); if(nRet == ERROR_PDF_BAD_INITIALIZATION_FILES) { if(IDYES == Application->MessageBox("LEADTOOLS PDF plugin is not found, do you want to download the plugin now?", "Open File", MB_ICONEXCLAMATION + MB_YESNO)) { ShellExecute(Handle, "open", "http://www.leadtools.com/ReleaseDownloads/v14/LEADTOOLSPDFRuntime.exe", NULL, NULL, SW_SHOWNORMAL); } Screen->Cursor = crDefault; return; } } catch(ELEADAnnError* e) { Cursor = crDefault; return; } LEADAnnCtrl1->AnnUserMode= ANNUSERMODE_DESIGN; // attempt to load annotations from the file, in case it is a TIFF // with Wang ann tag nRet= LEADAnnCtrl1->AnnLoad(LEADDlgFile1->FileName, 1);//LeadDialog1->PageNumber); //if it fails, then look for a .ann file if(nRet!= SUCCESS) { //get the name of the annotation file(same name, extension .ann) GetAnnFile(szAnnFile, LEADDlgFile1->FileName.c_str(), LEADDlgFile1->SaveFormat); LEADAnnCtrl1->AnnLoad(szAnnFile, 1); //LeadDialog1->PageNumber); } iTag= 0; Cursor= crDefault; } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Save1Click(TObject *Sender) { char szAnnFile[255]; int nMode; nMode= 0; AnsiString strMsg; LEADDlgFile1->DialogTitle= "Save A File"; LEADDlgFile1->MaxFileTitleSize= 0; LEADDlgFile1->MaxFileSize= 0; LEADDlgFile1->DlgFileFlags= 0; LEADDlgFile1->DlgFlags= DLG_SAVE_SHOW_FILEOPTIONS_PROGRESSIVE + DLG_SAVE_SHOW_FILEOPTIONS_J2KOPTIONS + DLG_SAVE_SHOW_FILEOPTIONS_BASICJ2KOPTIONS + DLG_SAVE_SHOW_FILEOPTIONS_MULTIPAGE + DLG_SAVE_SHOW_FILEOPTIONS_STAMP + DLG_SAVE_SHOW_FILEOPTIONS_QFACTOR; LEADDlgFile1->LEADImage= LEADAnnCtrl1; int nRet= LEADDlgFile1->ShowSaveDlg(this); if(nRet < SUCCESS_DLG_OK) { AnsiString Msg= "FileSave dialog failed,\n Error: " + IntToStr(nRet); Application->MessageBox(Msg.c_str(), "Error", MB_OK); } if(nRet == SUCCESS_DLG_OK) { Cursor= crHourGlass; SetJ2KOptions(); switch(LEADDlgFile1->SaveFormat) { case FILE_JTIF: case FILE_LEAD2JTIF: case FILE_LEAD1JTIF: case FILE_TIFLZW: case FILE_TIFLZW_CMYK: case FILE_TIFLZW_YCC: case FILE_TIF: case FILE_TIF_CMYK: case FILE_TIF_YCC: case FILE_TIF_PACKBITS: case FILE_TIF_PACKBITS_CMYK: case FILE_TIF_PACKBITS_YCC: case FILE_CCITT: case FILE_CCITT_GROUP3_1DIM: case FILE_CCITT_GROUP3_2DIM: case FILE_CCITT_GROUP4: { nRet = LEADAnnCtrl1->AnnSaveTag(Wangcompatibilitymode1->Checked, false); if(nRet < SUCCESS) { strMsg= "Error creating annotation data.\n" "The file will be saved without annotations.\n\n" "Do you still want to continue?"; if(MessageBox(Handle, strMsg.c_str(), "Annotation Error", MB_ICONSTOP + MB_YESNO) != IDYES) { Cursor= crDefault; return; } } nMode= 1; } } if(LEADDlgFile1->SaveWithStamp) { if(LEADDlgFile1->SaveFormat == FILE_CMP) LEADAnnCtrl1->SaveWithStamp(LEADDlgFile1->FileName, LEADDlgFile1->SaveFormat, LEADDlgFile1->SaveBitsPerPixel, LEADDlgFile1->SaveQFactor, LEADDlgFile1->SaveStampWidth, LEADDlgFile1->SaveStampHeight, LEADDlgFile1->SaveStampBits); } else { LEADAnnCtrl1->Save(LEADDlgFile1->FileName, LEADDlgFile1->SaveFormat, LEADDlgFile1->SaveBitsPerPixel, LEADDlgFile1->SaveQFactor, LEADDlgFile1->SaveMulti); } // if format was not a TIFF flavor, need to save annotations // in a ann file if(nMode == 0) { GetAnnFile(szAnnFile, LEADDlgFile1->FileName.c_str(), LEADDlgFile1->SaveFormat); LEADAnnCtrl1->AnnSave(szAnnFile, ANNFMT_NATIVE, false, 0, 1); } } Screen->Cursor= crDefault; } //--------------------------------------------------------------------------- void __fastcall TMainFrm::FormCreate(TObject *Sender) { LEADAnnCtrl1->UnlockSupport(L_SUPPORT_DOCUMENT, L_KEY_DOCUMENT); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_GIFLZW, L_KEY_GIFLZW); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_TIFLZW, L_KEY_TIFLZW); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_OCR, L_KEY_OCR); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_MEDICAL, L_KEY_MEDICAL); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_VECTOR, L_KEY_VECTOR); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_MEDICAL_NET, L_KEY_MEDICAL_NET); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_BARCODES_1D, L_KEY_BARCODES_1D); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_BARCODES_2D_READ, L_KEY_BARCODES_2D_READ); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_BARCODES_2D_WRITE, L_KEY_BARCODES_2D_WRITE); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_BARCODES_PDF_READ, L_KEY_BARCODES_PDF_READ); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_BARCODES_PDF_WRITE, L_KEY_BARCODES_PDF_WRITE); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_PDF, L_KEY_PDF); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_J2K, L_KEY_J2K); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_CMW, L_KEY_CMW); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_DICOM, L_KEY_DICOM); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_EXTGRAY, L_KEY_EXTGRAY); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_BITONAL, L_KEY_BITONAL); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_ABC, L_KEY_ABC); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_JBIG2, L_KEY_JBIG2); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_ABIC_READ, L_KEY_ABIC_READ); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_ABIC_SAVE, L_KEY_ABIC_SAVE); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_PDF_READ, L_KEY_PDF_READ); LEADAnnCtrl1->UnlockSupport(L_SUPPORT_PDF_ADVANCED, L_KEY_PDF_ADVANCED); LEADAnnCtrl1->AnnOptions= OPTIONS_NEW_ALL; LEADAnnCtrl2->Visible = false; if(! LEADAnnCtrl1->IsSupportLocked(L_SUPPORT_DOCUMENT)) { LEADAnnCtrl1->Visible= true; LEADAnnCtrl1->AnnUserMode= ANNUSERMODE_DESIGN; Design1->Checked= true; LEADAnnCtrl1->AnnTool= ANNTOOL_SELECT; LEADAnnCtrl1->AnnHyperlinkMenuEnable = true; Select1->Checked= true; ShowLockedObjects1->Checked= true; bFirstLoad= true; //create the annotation toolbar by simulating that the toolbar button has been clicked ToolBar1Click(Sender); } else ShowMessage(" Document capability is required to use this demo "); int nRet= LEADDlgService1->InitDialogs(0); if(nRet != SUCCESS) { ShowMessage("Error Initializing Dialogs"); Application->Terminate(); } hCursorDefaultAnnDrawNew= LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_DRAWNEW]; hCursorDefaultAnnHandle= LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_HANDLE]; hCursorDefaultAnnMove= LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_MOVE]; hCursorDefaultAnnSelect= LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_SELECT]; Screen->Cursors[CURSOR_ANNCROSS]= LoadCursor(HInstance,"ANNCROSS"); Screen->Cursors[CURSOR_ANNHANDLE]= LoadCursor(HInstance,"ANNHANDLE"); Screen->Cursors[CURSOR_ANNMOVE]= LoadCursor(HInstance,"ANNMOVE"); Screen->Cursors[CURSOR_ANNSELECT]= LoadCursor(HInstance,"ANNSELECT"); hCursorAnnDrawNew= (L_HCURSOR)Screen->Cursors[CURSOR_ANNCROSS]; hCursorAnnHandle= (L_HCURSOR)Screen->Cursors[CURSOR_ANNHANDLE]; hCursorAnnMove= (L_HCURSOR)Screen->Cursors[CURSOR_ANNMOVE]; hCursorAnnSelect= (L_HCURSOR)Screen->Cursors[CURSOR_ANNSELECT]; LEADAnnCtrl1->EnableMethodErrors= false; } //--------------------------------------------------------------------------- void __fastcall TMainFrm::FormDestroy(TObject *Sender) { LEADDlgService1->FreeDialogs(); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Print1Click(TObject *Sender) { TPrinter* Prntr = Printer(); TCursor h_Cursor; TRect rc; HDC hPrinterDC; AnsiString Msg; bool bRet; try { bRet= PrintDialog1->Execute(); } catch(Exception &e) { Msg= "An error occoured in your application.\n Invalid Printer"; Application->MessageBox(Msg.c_str(), "Error! ",MB_OK); return; } if(bRet) { h_Cursor = Cursor; Cursor= crHourGlass; Prntr->BeginDoc(); hPrinterDC = Prntr->Canvas->Handle; rc= Rect(1, 1, MulDiv(LEADAnnCtrl1->BitmapWidth, GetDeviceCaps(hPrinterDC,LOGPIXELSX), LEADAnnCtrl1->BitmapXRes), MulDiv(LEADAnnCtrl1->BitmapHeight, GetDeviceCaps(hPrinterDC,LOGPIXELSY), LEADAnnCtrl1->BitmapXRes)); // if the page is too small, fit to page if(rc.right > GetDeviceCaps(hPrinterDC, HORZRES)) { rc.bottom= MulDiv(rc.bottom, GetDeviceCaps(hPrinterDC, HORZRES), rc.right); rc.right= GetDeviceCaps(hPrinterDC, HORZRES); } if(rc.bottom > GetDeviceCaps(hPrinterDC, VERTRES)) { rc.right= MulDiv(rc.right, GetDeviceCaps(hPrinterDC, VERTRES), rc.bottom); rc.bottom= GetDeviceCaps(hPrinterDC, VERTRES); } LEADAnnCtrl1->Render((int)hPrinterDC, rc.left, rc.Top, rc.Right - rc.Left, rc.Bottom-rc.Top); Cursor= h_Cursor; Prntr->EndDoc(); } } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Exit1Click(TObject *Sender) { Close(); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Copy1Click(TObject *Sender) { LEADAnnCtrl1->Copy(COPY_DDB + COPY_DIB + COPY_PALETTE); LEADAnnCtrl1->AnnCopy(ANNFMT_NATIVE, false, false); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Paste1Click(TObject *Sender) { if(LEADAnnCtrl1->AnnPasteReady) LEADAnnCtrl1->AnnPaste(); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::None1Click(TObject *Sender) { ClearMenuUserMode(ANNUSERMODE_NONE, None1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Design1Click(TObject *Sender) { ClearMenuUserMode(ANNUSERMODE_DESIGN, Design1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Run1Click(TObject *Sender) { ClearMenuUserMode(ANNUSERMODE_RUN, Run1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Select1Click(TObject *Sender) { SetToolMenu(ANNTOOL_SELECT, Select1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Line1Click(TObject *Sender) { SetToolMenu(ANNTOOL_LINE, Line1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Rect1Click(TObject *Sender) { SetToolMenu(ANNTOOL_RECT, Rect1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Ellipse1Click(TObject *Sender) { SetToolMenu(ANNTOOL_ELLIPSE, Ellipse1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Polyline1Click(TObject *Sender) { SetToolMenu(ANNTOOL_POLYLINE, Polyline1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Polygon1Click(TObject *Sender) { SetToolMenu(ANNTOOL_POLYGON, Polygon1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Pointer1Click(TObject *Sender) { SetToolMenu(ANNTOOL_POINTER, Pointer1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Freehand1Click(TObject *Sender) { SetToolMenu(ANNTOOL_FREEHAND, Freehand1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Hilite1Click(TObject *Sender) { SetToolMenu(ANNTOOL_HILITE, Hilite1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Redact1Click(TObject *Sender) { SetToolMenu(ANNTOOL_REDACT, Redact1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Text1Click(TObject *Sender) { SetToolMenu(ANNTOOL_TEXT, Text1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Note1Click(TObject *Sender) { SetToolMenu(ANNTOOL_NOTE, Note1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Stamp1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP, Stamp1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Button1Click(TObject *Sender) { SetToolMenu(ANNTOOL_BUTTON, Button1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::HotSpot1Click(TObject *Sender) { SetToolMenu(ANNTOOL_HOTSPOT, HotSpot1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Audio1Click(TObject *Sender) { SetToolMenu(ANNTOOL_AUDIO, Audio1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Ruler1Click(TObject *Sender) { SetToolMenu(ANNTOOL_RULER, Ruler1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::CrossProduct1Click(TObject *Sender) { SetToolMenu(ANNTOOL_CROSSPRODUCT, CrossProduct1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Point1Click(TObject *Sender) { SetToolMenu(ANNTOOL_POINT, Point1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Protractor1Click(TObject *Sender) { SetToolMenu(ANNTOOL_PROTRACTOR, Protractor1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::PushPin1Click(TObject *Sender) { SetToolMenu(ANNTOOL_PUSHPIN, PushPin1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::FreehandHotSpot1Click(TObject *Sender) { SetToolMenu(ANNTOOL_FREEHANDHOTSPOT, FreehandHotSpot1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Approved1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_APPROVED, Approved1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Assigned1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_ASSIGNED, Assigned1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Checked1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_CHECKED, Checked1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::ClientAttorneyPrivilege1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_CLATPRV, ClientAttorneyPrivilege1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Copy2Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_COPY, Copy2); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Draft1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_DRAFT, Draft1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Extended1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_EXTENDED, Extended1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Fax1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_FAX, Fax1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Faxed1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_FAXED, Faxed1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Important1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_IMPORTANT, Important1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Invoice1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_INVOICE, Invoice1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Notice1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_NOTICE, Notice1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Official1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_OFFICIAL, Official1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::OnFile1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_ONFILE, OnFile1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Paid1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_PAID, Paid1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Passed1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_PASSED, Passed1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Pending1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_PENDING, Pending1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Processed1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_PROCESSED, Processed1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Received1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_RECEIVED, Received1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Rejected1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_REJECTED, Rejected1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Release1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_RELEASE, Release1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Sent1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_SENT, Sent1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Shipped1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_SHIPPED, Shipped1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::TopSecret1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_TOPSECRET, TopSecret1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Urgent1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_URGENT, Urgent1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Void1Click(TObject *Sender) { SetToolMenu(ANNTOOL_STAMP_VOID, Void1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LockAnnotations1Click(TObject *Sender) { AnsiString Password; PasswordDlg1->MaskEdit1->Clear(); if(PasswordDlg1->ShowModal() == mrOk) { Password = PasswordDlg1->MaskEdit1->Text; LEADAnnCtrl1->AnnLock(LEADAnnCtrl1->AnnContainer, Password, true); } } //--------------------------------------------------------------------------- void __fastcall TMainFrm::UnlockAnnotations1Click(TObject *Sender) { AnsiString PassWord; PasswordDlg1->MaskEdit1->Clear(); if(PasswordDlg1->ShowModal() == mrOk) { PassWord= PasswordDlg1->MaskEdit1->Text; LEADAnnCtrl1->AnnUnlock(LEADAnnCtrl1->AnnContainer, PassWord); if(LEADAnnCtrl1->Error == ERROR_ANN_LOCKED) ShowMessage("Wrong Unlock password"); } } //--------------------------------------------------------------------------- void __fastcall TMainFrm::ShowLockedObjects1Click(TObject *Sender) { ShowLockedObjects1->Checked= ! ShowLockedObjects1->Checked; LEADAnnCtrl1->AnnShowLockedIcon= ShowLockedObjects1->Checked; } //--------------------------------------------------------------------------- void __fastcall TMainFrm::RealizeRedactObjects1Click(TObject *Sender) { LEADAnnCtrl1->AnnRealize(true); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::RestoreRedactObjects1Click(TObject *Sender) { int nRet; nRet= LEADAnnCtrl1->AnnUnrealize(LEADAnnCtrl1->AnnContainer, false); if(nRet == ERROR_ANN_LOCKED) ShowMessage("Some redact objects are locked and cannot be restored"); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::ApplyEncryptors1Click(TObject *Sender) { LEADAnnCtrl1->AnnFlags= ANNFLAG_RECURSE; LEADAnnCtrl1->AnnEncryptApply(LEADAnnCtrl1->AnnContainer, ANNENCRYPTAPPLY_ENCRYPTOR); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::ApplyDecryptors1Click(TObject *Sender) { LEADAnnCtrl1->AnnFlags= ANNFLAG_RECURSE; LEADAnnCtrl1->AnnEncryptApply(LEADAnnCtrl1->AnnContainer, ANNENCRYPTAPPLY_DECRYPTOR); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Wangcompatibilitymode1Click(TObject *Sender) { Wangcompatibilitymode1->Checked= ! Wangcompatibilitymode1->Checked; } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Normal1Click(TObject *Sender) { Cursor= crHourGlass; ViewNormalProc(); Cursor= crDefault; } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Zoom1Click(TObject *Sender) { Cursor= crHourGlass; ViewZoomProc(); Cursor= crDefault; } //--------------------------------------------------------------------------- void __fastcall TMainFrm::FitToWindow1Click(TObject *Sender) { Cursor= crHourGlass; ViewFitProc(); Cursor= crDefault; LEADAnnCtrl1->ForceRepaint(); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::ToolBar1Click(TObject *Sender) { //if this is the first time we got here, create the toolbar if(LEADAnnCtrl1->AnnToolbar->h_Wnd == 0) { //creating the toolbar for the first time LEADAnnCtrl1->AnnToolbar->Visible= false; //align the toolbar to be at the top-right of the form LEADAnnCtrl1->AnnToolbar->CreateTB(Left+Width, Top, ANNTOOLALIGN_RIGHT + ANNTOOLALIGN_TOP); LEADAnnCtrl1->AnnToolbar->Tool = LEADAnnCtrl1->AnnTool; } ToolBar1->Checked= !ToolBar1->Checked; LEADAnnCtrl1->AnnToolbar->Visible= ToolBar1->Checked; } //--------------------------------------------------------------------------- void __fastcall TMainFrm::About1Click(TObject *Sender) { AboutDlg1->ShowModal(); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::File1Click(TObject *Sender) { if(LEADAnnCtrl1->Bitmap != 0) { Save1->Enabled= true; Print1->Enabled= true; } else { Save1->Enabled= false; Print1->Enabled= false; } } //--------------------------------------------------------------------------- void __fastcall TMainFrm::Edit1Click(TObject *Sender) { Paste1->Enabled=(LEADAnnCtrl1->Paste(PASTE_ISREADY) == SUCCESS); Copy1->Enabled=(LEADAnnCtrl1->Bitmap != 0); ShowLockedObjects1->Enabled=(LEADAnnCtrl1->AnnAutomation != 0); LockAnnotations1->Enabled=(LEADAnnCtrl1->AnnContainer != 0); UnlockAnnotations1->Enabled=(LEADAnnCtrl1->AnnContainer != 0); RealizeRedactObjects1->Enabled=(LEADAnnCtrl1->AnnContainer != 0); RestoreRedactObjects1->Enabled=(LEADAnnCtrl1->AnnContainer != 0); ApplyEncryptors1->Enabled=(LEADAnnCtrl1->AnnContainer != 0); ApplyDecryptors1->Enabled=(LEADAnnCtrl1->AnnContainer != 0); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::View1Click(TObject *Sender) { if(LEADAnnCtrl1->Bitmap == 0) { Normal1->Enabled= false; Zoom1->Enabled= false; FitToWindow1->Enabled= false; } else { Normal1->Enabled= true; Zoom1->Enabled= true; FitToWindow1->Enabled= true; } if(LEADAnnCtrl1->PaintSizeMode == smFit) { Normal1->Checked= false; Zoom1->Checked= false; FitToWindow1->Checked= true; } else { FitToWindow1->Checked= false; if(LEADAnnCtrl1->PaintSizeMode != smZoom) { Normal1->Checked= true; Zoom1->Checked= false; } else { Normal1->Checked= false; Zoom1->Checked= true; } } } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnClicked(L_HANDLE hObject) { AnsiString Msg; Msg= "Item " + IntToStr(LEADAnnCtrl1->AnnGetTag(hObject))+" Pressed"; ShowMessage(Msg.c_str()); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnDrawn(L_HANDLE hObject) { LEADAnnCtrl1->AnnTool= ANNTOOL_SELECT; SetToolMenu(ANNTOOL_SELECT, Select1); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnHyperlink(L_HANDLE hObject, int iParamCount, int lParam1, int lParam2, int lParam3, int lParam4, int lParam5) { ShowMessage("Object's Hyperlink was activated!"); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnCreate(L_HANDLE hObject) { iTag ++; LEADAnnCtrl1->AnnSetTag(hObject, iTag); } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnToolChecked(int iTool) { switch(iTool) { case ANNTOOL_SELECT: SetToolMenu(iTool, Select1); break; case ANNTOOL_LINE: SetToolMenu(iTool, Line1); break; case ANNTOOL_RECT: SetToolMenu(iTool, Rect1); break; case ANNTOOL_ELLIPSE: SetToolMenu(iTool, Ellipse1); break; case ANNTOOL_POLYLINE: SetToolMenu(iTool, Polyline1); break; case ANNTOOL_POLYGON: SetToolMenu(iTool, Polygon1); break; case ANNTOOL_POINTER: SetToolMenu(iTool, Pointer1); break; case ANNTOOL_FREEHAND: SetToolMenu(iTool, Freehand1); break; case ANNTOOL_HILITE: SetToolMenu(iTool, Hilite1); break; case ANNTOOL_REDACT: SetToolMenu(iTool, Redact1); break; case ANNTOOL_TEXT: SetToolMenu(iTool, Text1); break; case ANNTOOL_NOTE: SetToolMenu(iTool, Note1); break; case ANNTOOL_STAMP: SetToolMenu(iTool, Stamp1); break; case ANNTOOL_BUTTON: SetToolMenu(iTool, Button1); break; case ANNTOOL_HOTSPOT: SetToolMenu(iTool, HotSpot1); break; case ANNTOOL_AUDIO: SetToolMenu(iTool, Audio1); break; case ANNTOOL_RULER: SetToolMenu(iTool, Ruler1); break; case ANNTOOL_CROSSPRODUCT: SetToolMenu(iTool, CrossProduct1); break; case ANNTOOL_POINT: SetToolMenu(iTool, Point1); break; case ANNTOOL_PROTRACTOR: SetToolMenu(iTool, Protractor1); break; case ANNTOOL_PUSHPIN: SetToolMenu(iTool, PushPin1); break; case ANNTOOL_FREEHANDHOTSPOT: SetToolMenu(iTool, FreehandHotSpot1); break; case ANNTOOL_STAMP_APPROVED: SetToolMenu(iTool, Approved1); break; case ANNTOOL_STAMP_ASSIGNED: SetToolMenu(iTool, Assigned1); break; case ANNTOOL_STAMP_CHECKED: SetToolMenu(iTool, Checked1); break; case ANNTOOL_STAMP_CLATPRV: SetToolMenu(iTool, ClientAttorneyPrivilege1); break; case ANNTOOL_STAMP_COPY: SetToolMenu(iTool, Copy2); break; case ANNTOOL_STAMP_DRAFT: SetToolMenu(iTool, Draft1); break; case ANNTOOL_STAMP_EXTENDED: SetToolMenu(iTool, Extended1); break; case ANNTOOL_STAMP_FAX: SetToolMenu(iTool, Fax1); break; case ANNTOOL_STAMP_FAXED: SetToolMenu(iTool, Faxed1); break; case ANNTOOL_STAMP_IMPORTANT: SetToolMenu(iTool, Important1); break; case ANNTOOL_STAMP_INVOICE: SetToolMenu(iTool, Invoice1); break; case ANNTOOL_STAMP_NOTICE: SetToolMenu(iTool, Notice1); break; case ANNTOOL_STAMP_OFFICIAL: SetToolMenu(iTool, Official1); break; case ANNTOOL_STAMP_ONFILE: SetToolMenu(iTool, OnFile1); break; case ANNTOOL_STAMP_PAID: SetToolMenu(iTool, Paid1); break; case ANNTOOL_STAMP_PASSED: SetToolMenu(iTool, Passed1); break; case ANNTOOL_STAMP_PENDING: SetToolMenu(iTool, Pending1); break; case ANNTOOL_STAMP_PROCESSED: SetToolMenu(iTool, Processed1); break; case ANNTOOL_STAMP_RECEIVED: SetToolMenu(iTool, Received1); break; case ANNTOOL_STAMP_REJECTED: SetToolMenu(iTool, Rejected1); break; case ANNTOOL_STAMP_RELEASE: SetToolMenu(iTool, Release1); break; case ANNTOOL_STAMP_SENT: SetToolMenu(iTool, Sent1); break; case ANNTOOL_STAMP_SHIPPED: SetToolMenu(iTool, Shipped1); break; case ANNTOOL_STAMP_TOPSECRET: SetToolMenu(iTool, TopSecret1); break; case ANNTOOL_STAMP_URGENT: SetToolMenu(iTool, Urgent1); break; case ANNTOOL_STAMP_VOID: SetToolMenu(iTool, Void1); break; } } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnToolDestroy() { ToolBar1->Checked= false; } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnUserMenu(int nID) { AnsiString Msg; if(nID == LTANNEVENT_MENUFIRST) LEADAnnCtrl1->AnnFlip(false, 0, true); else { Msg= "nID = LTANNEVENT_MENUFIRST" + IntToStr(nID - LTANNEVENT_MENUFIRST); ShowMessage(Msg.c_str()); } } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnHyperlinkMenu(L_PHANDLE phObjects, int iCount) { int i; int nType; nType= LEADAnnCtrl1->AnnGetHyperlinkType(L_HANDLE(* phObjects)); HyperlinkForm->InitTheForm(nType,L_HANDLE(*phObjects)); if(HyperlinkForm->ShowModal() == mrOk) { switch(HyperlinkForm->nType) { case ANNLINK_NONE: case ANNLINK_ANNEVENT: { for(i= 0; i < iCount; i ++) LEADAnnCtrl1->AnnSetHyperlinkMsg(L_HANDLE(PChar(*phObjects)+(i* sizeof(L_HANDLE))), HyperlinkForm->nType, 0, 0, 0, 0, 0); } break; case ANNLINK_RUN: case ANNLINK_WEBPAGE: { for(i= 0; i < iCount; i ++) LEADAnnCtrl1->AnnSetHyperlinkString(L_HANDLE(PChar(*phObjects)+(i* sizeof(L_HANDLE))), HyperlinkForm->nType, HyperlinkForm->szLink.c_str()); } break; } } } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnMouseDown(int Button, int Shift, int x, int y) { x0= x; y0= y; switch(LEADAnnCtrl1->AnnTool) { case ANNTOOL_USER_FIRST: { //create the objects LEADAnnCtrl1->AnnSetSelected(LEADAnnCtrl1->AnnContainer, False, True); hRectObject= LEADAnnCtrl1->AnnCreate(ANNOBJECT_RECT, True, True); hEllipseObject= LEADAnnCtrl1->AnnCreate(ANNOBJECT_ELLIPSE, True, True); // set the automation defaults to the objects newly created LEADAnnCtrl1->AnnSetAutoDefaults(hRectObject, 0); LEADAnnCtrl1->AnnSetAutoDefaults(hEllipseObject, 0); //start defining them from the x, y coordinate LEADAnnCtrl1->AnnDefine(hRectObject, x, y, ANNDEFINE_BEGINSET); LEADAnnCtrl1->AnnDefine(hEllipseObject, x, y, ANNDEFINE_BEGINSET); } } } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnMouseMove(int Button, int Shift, int x, int y) { if(Button == 1) { switch(LEADAnnCtrl1->AnnTool) { case ANNTOOL_USER_FIRST: { //update the objects from the x, y coordinate LEADAnnCtrl1->AnnDefine(hRectObject, x, y, ANNDEFINE_UPDATE); LEADAnnCtrl1->AnnDefine(hEllipseObject, x, y, ANNDEFINE_UPDATE); } break; case ANNTOOL_RECT: { AdjustMousePos(Shift, x, y); } break; case ANNTOOL_ELLIPSE: { AdjustMousePos(Shift, x, y); } break; } } } //--------------------------------------------------------------------------- void __fastcall TMainFrm::LEADAnnCtrl1AnnMouseUp(int Button, int Shift, int x, int y) { switch(LEADAnnCtrl1->AnnTool) { case ANNTOOL_USER_FIRST: { LEADAnnCtrl1->AnnDefine(hRectObject, x, y, ANNDEFINE_END); LEADAnnCtrl1->AnnDefine(hEllipseObject, x, y, ANNDEFINE_END); LEADAnnCtrl1->AnnSetSelected(hRectObject, true, false); LEADAnnCtrl1->AnnSetSelected(hEllipseObject, true, false); LEADAnnCtrl1->AnnGroup(LEADAnnCtrl1->AnnContainer, ANNFLAG_RECURSE | ANNFLAG_SELECTED, NULL); hEllipseObject= 0; hRectObject= 0; SetToolMenu(ANNTOOL_SELECT, Select1); } break; case ANNTOOL_RECT: { AdjustMousePos(Shift, x, y); } break; case ANNTOOL_ELLIPSE: { AdjustMousePos(Shift, x, y); } break; } } //--------------------------------------------------------------------------- void TMainFrm::AdjustMousePos(int Shift, long x, long y) { long dx, dy; //if shift key is down, draw rectangles or circles if(Shift == 1) { //if shift key is down, force the creation of squares dx= abs(x - x0); dy= abs(y - y0); if(dx > dy) { // adjust y to be as far from y0 as x is from x0 if(y > y0) y = y0 + dx; else y = y0 - dx; } else { //adjust x to be as far from x0 as y is from y0 if(x > x0) x= x0 + dy; else x= x0 - dy; } // set the mouse cursor and update its position LEADAnnCtrl1->SetMousePos(x, y, False); } } void __fastcall TMainFrm::ChangeHilightandCursorsClick(TObject *Sender) { ChangeHilightandCursors->Checked= ! ChangeHilightandCursors->Checked; if(ChangeHilightandCursors->Checked) { LEADAnnCtrl1->AnnAutoHilightPen= (TColor)RGB(0xC0, 0xC0, 0xC0); LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_DRAWNEW]= hCursorAnnDrawNew; LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_HANDLE]= hCursorAnnHandle; LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_MOVE]= hCursorAnnMove; LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_SELECT]= hCursorAnnSelect; } else { LEADAnnCtrl1->AnnAutoHilightPen= (TColor)RGB(0xFF, 0xFF, 0xFF); LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_DRAWNEW]= hCursorDefaultAnnDrawNew; LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_HANDLE]= hCursorDefaultAnnHandle; LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_MOVE]= hCursorDefaultAnnMove; LEADAnnCtrl1->AnnAutoCursor[ANNAUTOCURSOR_SELECT]= hCursorDefaultAnnSelect; } } //--------------------------------------------------------------------------- void TMainFrm::SetJ2KOptions() { LEADAnnCtrl1->J2KCompressionControl= LEADDlgFile1->SaveJ2KCompressionControl; LEADAnnCtrl1->J2KUseColorTransform = LEADDlgFile1->SaveJ2KUseColorTransform; LEADAnnCtrl1->J2KDerivedQuantization= LEADDlgFile1->SaveJ2KDerivedQuantization; LEADAnnCtrl1->J2KCompressionControl= LEADDlgFile1->SaveJ2KCompressionControl; if(LEADDlgFile1->SaveJ2KCompressionControl == J2K_COMPRESSION_RATIO) LEADAnnCtrl1->J2KCompressionRatio= LEADDlgFile1->SaveJ2KCompressionRatio; else if(LEADDlgFile1->SaveJ2KCompressionControl == J2K_COMPRESSION_TARGETSIZE) LEADAnnCtrl1->J2KTargetFileSize= LEADDlgFile1->SaveJ2KTargetFileSize; LEADAnnCtrl1->J2KXOsiz= LEADDlgFile1->SaveJ2KXOsiz; LEADAnnCtrl1->J2KYOsiz= LEADDlgFile1->SaveJ2KYOsiz; LEADAnnCtrl1->J2KXTsiz= LEADDlgFile1->SaveJ2KXTsiz; LEADAnnCtrl1->J2KYTsiz= LEADDlgFile1->SaveJ2KYTsiz; LEADAnnCtrl1->J2KXTOsiz= LEADDlgFile1->SaveJ2KXTOsiz; LEADAnnCtrl1->J2KYTOsiz= LEADDlgFile1->SaveJ2KYTOsiz; LEADAnnCtrl1->J2KDecompLevel= LEADDlgFile1->SaveJ2KDecompLevel; LEADAnnCtrl1->J2KProgressOrder= LEADDlgFile1->SaveJ2KProgressOrder; LEADAnnCtrl1->J2KCodBlockWidth= LEADDlgFile1->SaveJ2KCodBlockWidth; LEADAnnCtrl1->J2KCodBlockHeight= LEADDlgFile1->SaveJ2KCodBlockHeight; LEADAnnCtrl1->J2KCBS_SelectiveACBypass= LEADDlgFile1->SaveJ2KCBS_SelectiveACBypass; LEADAnnCtrl1->J2KCBS_ResetContextOnBoundaries= LEADDlgFile1->SaveJ2KCBS_ResetContextOnBoundaries; LEADAnnCtrl1->J2KCBS_TerminationOnEachPass= LEADDlgFile1->SaveJ2KCBS_TerminationOnEachPass; LEADAnnCtrl1->J2KCBS_VerticallyCausalContext= LEADDlgFile1->SaveJ2KCBS_VerticallyCausalContext; LEADAnnCtrl1->J2KCBS_PredictableTermination= LEADDlgFile1->SaveJ2KCBS_PredictableTermination; LEADAnnCtrl1->J2KCBS_ErrorResilienceSymbol= LEADDlgFile1->SaveJ2KCBS_ErrorResilienceSymbol; LEADAnnCtrl1->J2KGuardBits= LEADDlgFile1->SaveJ2KGuardBits; LEADAnnCtrl1->J2KDerivedBaseMantissa= LEADDlgFile1->SaveJ2KDerivedBaseMantissa; LEADAnnCtrl1->J2KDerivedBaseExponent= LEADDlgFile1->SaveJ2KDerivedBaseExponent; LEADAnnCtrl1->J2KUseSOPMarker= LEADDlgFile1->SaveJ2KUseSOPMarker; LEADAnnCtrl1->J2KUseEPHMarker= LEADDlgFile1->SaveJ2KUseEPHMarker; } //End.of.file----------------------------------------------------------------