コード例 #1
0
    def invoke(self, context, event):
        wm = context.window_manager
        atom = bpy.context.scene.atomic

        if atom.collections:
            self.unused_collections = unused.collections_deep()

        if atom.images:
            self.unused_images = unused.images_deep()

        if atom.lights:
            self.unused_lights = unused.lights_deep()

        if atom.materials:
            self.unused_materials = unused.materials_deep()

        if atom.node_groups:
            self.unused_node_groups = unused.node_groups_deep()

        if atom.particles:
            self.unused_particles = unused.particles_deep()

        if atom.textures:
            self.unused_textures = unused.textures_deep()

        if atom.worlds:
            self.unused_worlds = unused.worlds()

        return wm.invoke_props_dialog(self)
コード例 #2
0
    def execute(self, context):

        bpy.context.scene.atomic.collections = \
            any(unused.collections_deep())

        bpy.context.scene.atomic.images = \
            any(unused.images_deep())

        bpy.context.scene.atomic.lights = \
            any(unused.lights_deep())

        bpy.context.scene.atomic.materials = \
            any(unused.materials_deep())

        bpy.context.scene.atomic.node_groups = \
            any(unused.node_groups_deep())

        bpy.context.scene.atomic.particles = \
            any(unused.particles_deep())

        bpy.context.scene.atomic.textures = \
            any(unused.textures_deep())

        bpy.context.scene.atomic.worlds = \
            any(unused.worlds())

        return {'FINISHED'}
コード例 #3
0
    def draw(self, context):
        layout = self.layout

        col = layout.column()
        col.label(text="Remove the following data-blocks?")

        collections = sorted(unused.collections_deep())
        ui_layouts.box_list(layout=layout,
                            title="Collections",
                            items=collections,
                            icon="OUTLINER_OB_GROUP_INSTANCE")

        images = sorted(unused.images_deep())
        ui_layouts.box_list(layout=layout,
                            title="Images",
                            items=images,
                            icon="IMAGE_DATA")

        lights = sorted(unused.lights_deep())
        ui_layouts.box_list(layout=layout,
                            title="Lights",
                            items=lights,
                            icon="OUTLINER_OB_LIGHT")

        materials = sorted(unused.materials_deep())
        ui_layouts.box_list(layout=layout,
                            title="Materials",
                            items=materials,
                            icon="MATERIAL")

        node_groups = sorted(unused.node_groups_deep())
        ui_layouts.box_list(layout=layout,
                            title="Node Groups",
                            items=node_groups,
                            icon="NODETREE")

        particles = sorted(unused.particles_deep())
        ui_layouts.box_list(layout=layout,
                            title="Particle Systems",
                            items=particles,
                            icon="PARTICLES")

        textures = sorted(unused.textures_deep())
        ui_layouts.box_list(layout=layout,
                            title="Textures",
                            items=textures,
                            icon="TEXTURE")

        worlds = sorted(unused.worlds())
        ui_layouts.box_list(layout=layout,
                            title="Worlds",
                            items=worlds,
                            icon="WORLD")

        row = layout.row()  # extra spacing
コード例 #4
0
    def invoke(self, context, event):
        wm = context.window_manager

        self.unused_collections = unused.collections_deep()
        self.unused_images = unused.images_deep()
        self.unused_lights = unused.lights_deep()
        self.unused_materials = unused.materials_deep()
        self.unused_node_groups = unused.node_groups_deep()
        self.unused_particles = unused.particles_deep()
        self.unused_textures = unused.textures_deep()
        self.unused_worlds = unused.worlds()

        return wm.invoke_props_dialog(self)
コード例 #5
0
    def draw(self, context):
        atom = bpy.context.scene.atomic
        layout = self.layout

        col = layout.column()
        col.label(text="Remove the following data-blocks?")

        # display if no main panel properties are toggled
        if not (atom.collections or atom.images or atom.lights
                or atom.materials or atom.node_groups or atom.particles
                or atom.textures or atom.worlds):

            ui_layouts.box_list(layout=layout, )

        # display when the main panel collections property is toggled
        if atom.collections:
            ui_layouts.box_list(layout=layout,
                                title="Collections",
                                items=self.unused_collections,
                                icon="OUTLINER_OB_GROUP_INSTANCE")

        # display when the main panel images property is toggled
        if atom.images:
            ui_layouts.box_list(layout=layout,
                                title="Images",
                                items=self.unused_images,
                                icon="IMAGE_DATA")

        # display when the main panel lights property is toggled
        if atom.lights:
            ui_layouts.box_list(layout=layout,
                                title="Lights",
                                items=self.unused_lights,
                                icon="OUTLINER_OB_LIGHT")

        # display when the main panel materials property is toggled
        if atom.materials:
            ui_layouts.box_list(layout=layout,
                                title="Materials",
                                items=self.unused_materials,
                                icon="MATERIAL")

        # display when the main panel node groups property is toggled
        if atom.node_groups:
            ui_layouts.box_list(layout=layout,
                                title="Node Groups",
                                items=self.unused_node_groups,
                                icon="NODETREE")

        # display when the main panel particle systems property is toggled
        if atom.particles:
            ui_layouts.box_list(layout=layout,
                                title="Particle Systems",
                                items=self.unused_particles,
                                icon="PARTICLES")

        # display when the main panel textures property is toggled
        if atom.textures:
            textures = sorted(unused.textures_deep())
            ui_layouts.box_list(layout=layout,
                                title="Textures",
                                items=textures,
                                icon="TEXTURE")

        # display when the main panel worlds property is toggled
        if atom.worlds:
            ui_layouts.box_list(layout=layout,
                                title="Worlds",
                                items=self.unused_worlds,
                                icon="WORLD")

        row = layout.row()  # extra spacing
コード例 #6
0
 def invoke(self, context, event):
     wm = context.window_manager
     self.unused_textures = unused.textures_deep()
     return wm.invoke_props_dialog(self)
コード例 #7
0
def textures():
    # removes all unused textures from the project
    for texture_key in unused.textures_deep():
        bpy.data.textures.remove(bpy.data.textures[texture_key])