Krita Source Code Documentation
Loading...
Searching...
No Matches
palette_docker.palette_exporter_gimppalette.gimpPaletteExporter Class Reference

Public Member Functions

 __init__ (self, name)
 
 export (self)
 

Public Attributes

 currentPalette
 
 fileName
 
 paletteName
 

Detailed Description

Definition at line 20 of file palette_exporter_gimppalette.py.

Constructor & Destructor Documentation

◆ __init__()

palette_docker.palette_exporter_gimppalette.gimpPaletteExporter.__init__ ( self,
name )

Definition at line 22 of file palette_exporter_gimppalette.py.

22 def __init__(self, name):
23 # We want people to select a palette and a location to save to...
24 self.fileName = FileDialog.getExistingDirectory()
25 if not self.fileName: return
26 allPalettes = Application.resources("palette")
27 self.paletteName = name
28 self.currentPalette = Palette(allPalettes[self.paletteName])
29 self.export()
30 done = QMessageBox()
31 done.setWindowTitle(i18n("Export Successful"))
32 done.setText(
33 str(i18n("{input} has been exported to {output}.")).format(
34 input=self.paletteName, output=self.fileName))
35 done.exec()
36 pass
37
static QString getExistingDirectory(QWidget *parent=nullptr, const QString &caption=QString(), const QString &directory=QString(), const QString &dialogName=QString())
Create and show a file dialog and return the name of an existing directory selected by the user.
The Palette class Palette is a resource object that stores organised color data. It's purpose is to a...
Definition Palette.h:44

Member Function Documentation

◆ export()

palette_docker.palette_exporter_gimppalette.gimpPaletteExporter.export ( self)

Definition at line 38 of file palette_exporter_gimppalette.py.

38 def export(self):
39 # open the appropriate file...
40 gplFile = open(self.fileName + "/" + self.paletteName + ".gpl", "w")
41 gplFile.write("GIMP Palette\n")
42 gplFile.write("Name: %s\n" % self.paletteName)
43 gplFile.write("Columns: %s\n" % self.currentPalette.columnCount())
44 gplFile.write("#%s\n" % self.currentPalette.comment())
45
46 groupNames = self.currentPalette.groupNames()
47 for groupName in groupNames:
48 slotCount = self.currentPalette.slotCountGroup(groupName)
49 for i in range(slotCount):
50 entry = self.currentPalette.entryByIndexFromGroup(i, groupName)
51 color = entry.color()
52 # convert to sRGB
53 color.setColorSpace("RGBA", "U8", "sRGB built-in")
54 red = max(min(int(color.componentsOrdered()[0] * 255), 255), 0)
55 green = max(min(int(color.componentsOrdered()[1] * 255), 255), 0)
56 blue = max(min(int(color.componentsOrdered()[2] * 255), 255), 0)
57 name = f"{entry.id()}-{entry.name()}" if entry.id() else entry.name()
58 gplFile.write(
59 "{red:>3} {green:>3} {blue:>3} {name}\n".format(
60 red=red, green=green, blue=blue, name=name))
61 gplFile.close()

References palette_docker.palette_docker.PaletteDocker.currentPalette, palette_docker.palette_exporter_gimppalette.gimpPaletteExporter.currentPalette, palette_docker.palette_exporter_inkscapeSVG.inkscapeSVGExporter.currentPalette, palette_docker.palette_sortColors.sortColors.currentPalette, FontFamilyNode.fileName, KoFFWWSConverter::FontFileEntry.fileName, KoJsonTrader::Plugin.fileName(), Document.fileName(), KoColorProfile.fileName, KoColorProfile.fileName(), KoStorePrivate.fileName, KisDlgFileLayer.fileName(), KisFileLayer.fileName(), KisTemplate.fileName(), KisFileNameRequester.fileName(), KisEmbeddedTextureData.fileName, palette_docker.palette_exporter_gimppalette.gimpPaletteExporter.fileName, palette_docker.palette_exporter_inkscapeSVG.inkscapeSVGExporter.fileName, palette_docker.palette_exporter_gimppalette.gimpPaletteExporter.paletteName, palette_docker.palette_exporter_inkscapeSVG.inkscapeSVGExporter.paletteName, and palette_docker.palette_sortColors.sortColors.paletteName.

Member Data Documentation

◆ currentPalette

palette_docker.palette_exporter_gimppalette.gimpPaletteExporter.currentPalette

Definition at line 28 of file palette_exporter_gimppalette.py.

◆ fileName

palette_docker.palette_exporter_gimppalette.gimpPaletteExporter.fileName

Definition at line 24 of file palette_exporter_gimppalette.py.

◆ paletteName

palette_docker.palette_exporter_gimppalette.gimpPaletteExporter.paletteName

Definition at line 27 of file palette_exporter_gimppalette.py.


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