def _init_attributes(self, operations):
   self._enable_disable_operations(operations)
   
   self.should_stop = False
   self._exported_layers = []
   
   self._current_layer_elem = None
   
   self._output_directory = self.export_settings['output_directory'].value
   self._default_file_extension = self.export_settings['file_extension'].value
   self._include_item_path = self.export_settings['layer_groups_as_folders'].value
   
   self._image_copy = None
   self._layer_data = pgitemdata.LayerData(self.image, is_filtered=True)
   self._tagged_layer_elems = collections.defaultdict(list)
   self._tagged_layer_copies = collections.defaultdict(lambda: None)
   
   self.progress_updater.reset()
   
   self._file_extension_properties = self._prefill_file_extension_properties()
   self._default_file_extension = self._default_file_extension.lstrip(".").lower()
   self._current_file_extension = self._default_file_extension
   self._file_export_func = pgfileformats.get_save_procedure(self._default_file_extension)
   self._current_layer_export_status = ExportStatuses.NOT_EXPORTED_YET
   self._current_overwrite_mode = None
Esempio n. 2
0
 def _init_attributes(self, operations, layer_tree, keep_exported_layers,
                      on_after_create_image_copy_func, on_after_insert_layer_func):
   self._enable_disable_operations(operations)
   
   if layer_tree is not None:
     self._layer_tree = layer_tree
   else:
     self._layer_tree = pgitemtree.LayerTree(
       self.image, name=pygimplib.config.SOURCE_PERSISTENT_NAME, is_filtered=True)
   
   self._keep_exported_layers = keep_exported_layers
   self._on_after_create_image_copy_func = (
     on_after_create_image_copy_func if on_after_create_image_copy_func is not None else lambda *args: None)
   self._on_after_insert_layer_func = (
     on_after_insert_layer_func if on_after_insert_layer_func is not None else lambda *args: None)
   
   self.should_stop = False
   
   self._exported_layers = []
   
   self._current_layer_elem = None
   self._current_file_extension = None
   
   self._output_directory = self.export_settings['output_directory'].value
   self._include_item_path = self.export_settings['layer_groups_as_folders'].value
   
   self._image_copy = None
   self._tagged_layer_elems = collections.defaultdict(list)
   self._tagged_layer_copies = collections.defaultdict(lambda: None)
   
   self._use_another_image_copy = False
   self._another_image_copy = None
   
   self.progress_updater.reset()
   
   self._file_extension_properties = self._prefill_file_extension_properties()
   self._default_file_extension = self.export_settings['file_extension'].value.lstrip(".").lower()
   self._file_extension_to_assign = self._default_file_extension
   self._file_export_func = pgfileformats.get_save_procedure(self._default_file_extension)
   self._current_layer_export_status = ExportStatuses.NOT_EXPORTED_YET
   self._current_overwrite_mode = None
   
   if self.export_settings['layer_filename_pattern'].value:
     pattern = self.export_settings['layer_filename_pattern'].value
   else:
     pattern = self.export_settings['layer_filename_pattern'].default_value
   
   self._filename_pattern_generator = pgpath.StringPatternGenerator(
     pattern=pattern,
     fields=self._get_fields_for_layer_filename_pattern())
   # key: _ItemTreeElement parent ID (None for root); value: list of pattern number generators
   self._pattern_number_filename_generators = {None: self._filename_pattern_generator.get_number_generators()}
Esempio n. 3
0
 def _update_file_export_func(self):
   if self.export_settings['more_operations/use_file_extensions_in_layer_names'].value:
     self._file_export_func = pgfileformats.get_save_procedure(self._file_extension_to_assign)
 def _update_file_export_func(self):
   if self.export_settings['file_extension_mode'].is_item('use_as_file_extensions'):
     self._file_export_func = pgfileformats.get_save_procedure(self._current_file_extension)