15/06/2013

Which criteria for a successful software project


Thay đổi kích thước view khi user thay đổi paper orientation

Đôi khi chúng ta gặp tình huống là chúng ta muốn thay đổi thuộc tính của view cho phù hợp với orientation của trang giấy khi user chọn trên print panel.
NSPrintOperation*fPrintOperation = [NSPrintOperation printOperationWithView:viewToPrint];
    [fPrintOperation.printInfo setOrientation:NSLandscapeOrientation];
    [fPrintOperation.printPanel setOptions:NSPrintPanelShowsPreview|NSPrintPanelShowsPaperSize|NSPrintPanelShowsPageRange|NSPrintPanelShowsCopies|NSPrintPanelShowsOrientation];  
    [NSPrintOperation setCurrentOperation:fPrintOperation];
    if(fPrintOperation.printPanel.runModal == NSOKButton){      
        NSPrintInfo*printInfo = [fPrintOperation printInfo];
        if( [printInfo orientation] == NSPortraitOrientation){
           //Do something
        }else{
           //Do something
        }
        [[NSPrintOperation currentOperation] cleanUpOperation];
        NSPrintOperation *rPrintOperation = [NSPrintOperation printOperationWithView:viewToPrint printInfo:printInfo];
        [rPrintOperation setShowsPrintPanel:NO];
        [rPrintOperation runOperation];
    }else{
        [[NSPrintOperation currentOperation] cleanUpOperation];
    }