6 """ |
6 """ |
7 Module implementing a subclass of EricGraphicsView for our diagrams. |
7 Module implementing a subclass of EricGraphicsView for our diagrams. |
8 """ |
8 """ |
9 |
9 |
10 from PyQt6.QtCore import ( |
10 from PyQt6.QtCore import ( |
11 pyqtSignal, Qt, QSignalMapper, QFileInfo, QEvent, QRectF |
11 pyqtSignal, Qt, QSignalMapper, QFileInfo, QEvent, QRectF, QMarginsF |
12 ) |
12 ) |
13 from PyQt6.QtGui import QAction |
13 from PyQt6.QtGui import QAction, QPageLayout |
14 from PyQt6.QtWidgets import QGraphicsView, QToolBar, QDialog |
14 from PyQt6.QtWidgets import QGraphicsView, QToolBar, QDialog |
15 from PyQt6.QtPrintSupport import QPrinter, QPrintDialog |
15 from PyQt6.QtPrintSupport import QPrinter, QPrintDialog |
16 |
16 |
17 from EricGraphics.EricGraphicsView import EricGraphicsView |
17 from EricGraphics.EricGraphicsView import EricGraphicsView |
18 |
18 |
439 printer.setColorMode(QPrinter.ColorMode.GrayScale) |
439 printer.setColorMode(QPrinter.ColorMode.GrayScale) |
440 if Preferences.getPrinter("FirstPageFirst"): |
440 if Preferences.getPrinter("FirstPageFirst"): |
441 printer.setPageOrder(QPrinter.PageOrder.FirstPageFirst) |
441 printer.setPageOrder(QPrinter.PageOrder.FirstPageFirst) |
442 else: |
442 else: |
443 printer.setPageOrder(QPrinter.PageOrder.LastPageFirst) |
443 printer.setPageOrder(QPrinter.PageOrder.LastPageFirst) |
444 printer.setPageMargins( |
444 printer.setPageMargins(QMarginsF( |
445 Preferences.getPrinter("LeftMargin") * 10, |
445 Preferences.getPrinter("LeftMargin") * 10, |
446 Preferences.getPrinter("TopMargin") * 10, |
446 Preferences.getPrinter("TopMargin") * 10, |
447 Preferences.getPrinter("RightMargin") * 10, |
447 Preferences.getPrinter("RightMargin") * 10, |
448 Preferences.getPrinter("BottomMargin") * 10, |
448 Preferences.getPrinter("BottomMargin") * 10), |
449 QPrinter.Unit.Millimeter |
449 QPageLayout.Unit.Millimeter |
450 ) |
450 ) |
451 printerName = Preferences.getPrinter("PrinterName") |
451 printerName = Preferences.getPrinter("PrinterName") |
452 if printerName: |
452 if printerName: |
453 printer.setPrinterName(printerName) |
453 printer.setPrinterName(printerName) |
454 |
454 |
471 printer.setColorMode(QPrinter.ColorMode.GrayScale) |
471 printer.setColorMode(QPrinter.ColorMode.GrayScale) |
472 if Preferences.getPrinter("FirstPageFirst"): |
472 if Preferences.getPrinter("FirstPageFirst"): |
473 printer.setPageOrder(QPrinter.PageOrder.FirstPageFirst) |
473 printer.setPageOrder(QPrinter.PageOrder.FirstPageFirst) |
474 else: |
474 else: |
475 printer.setPageOrder(QPrinter.PageOrder.LastPageFirst) |
475 printer.setPageOrder(QPrinter.PageOrder.LastPageFirst) |
476 printer.setPageMargins( |
476 printer.setPageMargins(QMarginsF( |
477 Preferences.getPrinter("LeftMargin") * 10, |
477 Preferences.getPrinter("LeftMargin") * 10, |
478 Preferences.getPrinter("TopMargin") * 10, |
478 Preferences.getPrinter("TopMargin") * 10, |
479 Preferences.getPrinter("RightMargin") * 10, |
479 Preferences.getPrinter("RightMargin") * 10, |
480 Preferences.getPrinter("BottomMargin") * 10, |
480 Preferences.getPrinter("BottomMargin") * 10), |
481 QPrinter.Unit.Millimeter |
481 QPageLayout.Unit.Millimeter |
482 ) |
482 ) |
483 printerName = Preferences.getPrinter("PrinterName") |
483 printerName = Preferences.getPrinter("PrinterName") |
484 if printerName: |
484 if printerName: |
485 printer.setPrinterName(printerName) |
485 printer.setPrinterName(printerName) |
486 |
486 |