Krita Source Code Documentation
Loading...
Searching...
No Matches
lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel Class Reference
+ Inheritance diagram for lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel:

Public Member Functions

 __init__ (self, devicePixelRatioF, parent=None)
 
 data (self, index, role)
 
 headerData (self, section, orientation, role)
 
 loadRecentDocuments (self)
 
 rowCount (self, parent)
 

Public Attributes

 devicePixelRatioF
 
 kritaInstance
 
 recentDocuments
 
 rootItem
 

Detailed Description

Definition at line 14 of file lastdocumentslistmodel.py.

Constructor & Destructor Documentation

◆ __init__()

lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.__init__ ( self,
devicePixelRatioF,
parent = None )

Definition at line 16 of file lastdocumentslistmodel.py.

16 def __init__(self, devicePixelRatioF, parent=None):
17 super(LastDocumentsListModel, self).__init__(parent)
18
19 self.rootItem = ('Path',)
20 self.kritaInstance = Krita.instance()
21 self.recentDocuments = []
22 self.devicePixelRatioF = devicePixelRatioF
23
static Krita * instance()
instance retrieve the singleton instance of the Application object.
Definition Krita.cpp:390

References lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.__init__().

Member Function Documentation

◆ data()

lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.data ( self,
index,
role )

Definition at line 24 of file lastdocumentslistmodel.py.

24 def data(self, index, role):
25 if not index.isValid():
26 return None
27
28 if index.row() >= len(self.recentDocuments):
29 return None
30
31 if role == Qt.ItemDataRole.DecorationRole:
32 return self.recentDocuments[index.row()]
33 else:
34 return None
35

References Krita.recentDocuments(), and lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.recentDocuments.

◆ headerData()

lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.headerData ( self,
section,
orientation,
role )

Definition at line 39 of file lastdocumentslistmodel.py.

39 def headerData(self, section, orientation, role):
40 if orientation == Qt.Orientation.Horizontal and role == Qt.ItemDataRole.DisplayRole:
41 return self.rootItem[section]
42
43 return None
44

References filtermanager.components.filtermanagertreemodel.FilterManagerTreeModel.rootItem, and lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.rootItem.

◆ loadRecentDocuments()

lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.loadRecentDocuments ( self)

Definition at line 45 of file lastdocumentslistmodel.py.

45 def loadRecentDocuments(self):
46 self.recentDocuments = []
47 recentDocumentsPaths = self.kritaInstance.recentDocuments()
48
49 for path in recentDocumentsPaths:
50 if path:
51 thumbnail = None
52 extension = Path(path).suffix
53 page = None
54 if extension == '.kra':
55 page = zipfile.ZipFile(path, "r")
56 thumbnail = QImage.fromData(page.read("mergedimage.png"))
57 if thumbnail.isNull():
58 thumbnail = QImage.fromData(page.read("preview.png"))
59 else:
60 thumbnail = QImage(path)
61
62 if thumbnail.isNull():
63 continue
64
65 thumbSize = QSize(int(200*self.devicePixelRatioF), int(150*self.devicePixelRatioF))
66 if thumbnail.width() <= thumbSize.width() or thumbnail.height() <= thumbSize.height():
67 thumbnail = thumbnail.scaled(thumbSize, Qt.AspectRatioMode.KeepAspectRatio, Qt.TransformationMode.FastTransformation)
68 else:
69 thumbnail = thumbnail.scaled(thumbSize, Qt.AspectRatioMode.KeepAspectRatio, Qt.TransformationMode.SmoothTransformation)
70 thumbnail.setDevicePixelRatio(self.devicePixelRatioF)
71 self.recentDocuments.append(thumbnail)
72 self.modelReset.emit()

References KisOpenGLCanvasRenderer.devicePixelRatioF(), KisOpenGLCanvasRenderer::CanvasBridge.devicePixelRatioF(), KisOpenGLCanvas2::CanvasBridge.devicePixelRatioF(), comics_project_management_tools.comics_project_manager_docker.comic_page_delegate.devicePixelRatioF, lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.devicePixelRatioF, KisPipeBrushParasite.dim, KisSpinBoxUnitManager.dim, FlattenSpec.dim, xcfLayer.dim, colorspace.uicolorspace.UIColorSpace.kritaInstance, documenttools.uidocumenttools.UIDocumentTools.kritaInstance, exportlayers.uiexportlayers.UIExportLayers.kritaInstance, filtermanager.uifiltermanager.UIFilterManager.kritaInstance, lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.kritaInstance, tenbrushes.uitenbrushes.UITenBrushes.kritaInstance, tenscripts.uitenscripts.UITenScripts.kritaInstance, Krita.recentDocuments(), and lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.recentDocuments.

◆ rowCount()

lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.rowCount ( self,
parent )

Definition at line 36 of file lastdocumentslistmodel.py.

36 def rowCount(self, parent):
37 return len(self.recentDocuments)
38

References Krita.recentDocuments(), and lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.recentDocuments.

Member Data Documentation

◆ devicePixelRatioF

lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.devicePixelRatioF

Definition at line 22 of file lastdocumentslistmodel.py.

◆ kritaInstance

lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.kritaInstance

Definition at line 20 of file lastdocumentslistmodel.py.

◆ recentDocuments

lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.recentDocuments

Definition at line 21 of file lastdocumentslistmodel.py.

◆ rootItem

lastdocumentsdocker.lastdocumentslistmodel.LastDocumentsListModel.rootItem

Definition at line 19 of file lastdocumentslistmodel.py.


The documentation for this class was generated from the following file: