Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'release/scripts/object_batch_name_edit.py')
-rw-r--r--release/scripts/object_batch_name_edit.py274
1 files changed, 0 insertions, 274 deletions
diff --git a/release/scripts/object_batch_name_edit.py b/release/scripts/object_batch_name_edit.py
deleted file mode 100644
index 4db3a6210db..00000000000
--- a/release/scripts/object_batch_name_edit.py
+++ /dev/null
@@ -1,274 +0,0 @@
-#!BPY
-"""
-Name: 'Batch Object Name Edit'
-Blender: 240
-Group: 'Object'
-Tooltip: 'Apply the chosen rule to rename all selected objects at once.'
-"""
-__author__ = "Campbell Barton"
-__url__ = ("blender", "blenderartists.org")
-__version__ = "1.0"
-
-__bpydoc__ = """\
-"Batch Object Name Edit" allows you to change multiple names of Blender
-objects at once. It provides options to define if you want to: replace text
-in the current names, truncate their beginnings or endings or prepend / append
-strings to them.
-
-Usage:
-Select the objects to be renamed and run this script from the Object->Scripts
-menu of the 3d View.
-"""
-# $Id$
-#
-# --------------------------------------------------------------------------
-# Batch Name Edit by Campbell Barton (AKA Ideasman)
-# --------------------------------------------------------------------------
-# ***** BEGIN GPL LICENSE BLOCK *****
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software Foundation,
-# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# ***** END GPL LICENCE BLOCK *****
-# --------------------------------------------------------------------------
-from Blender import *
-import bpy
-
-global renameCount
-renameCount = 0
-obsel = [ob for ob in bpy.data.scenes.active.objects.context if not ob.lib]
-
-def setDataNameWrapper(ob, newname):
- if ob.getData(name_only=1) == newname:
- return False
-
- data= ob.getData(mesh=1)
-
- if data and not data.lib:
- data.name= newname
- return True
- return False
-
-def main():
- global renameCount
- # Rename the datablocks that are used by the object.
- def renameLinkedDataFromObject():
-
- # Result 1, we want to rename data
- for ob in obsel:
- if ob.name == ob.getData(name_only=1):
- return # Alredy the same name, dont bother.
-
- data = ob.getData(mesh=1) # use mesh so we dont have to update the nmesh.
- if data and not data.lib:
- data.name = ob.name
-
-
- def new():
- global renameCount
- NEW_NAME_STRING = Draw.Create('')
- RENAME_LINKED = Draw.Create(0)
- pup_block = [\
- ('New Name: ', NEW_NAME_STRING, 19, 19, 'New Name'),\
- ('Rename ObData', RENAME_LINKED, 'Renames objects data to match the obname'),\
- ]
-
- if not Draw.PupBlock('Replace in name...', pup_block):
- return 0
-
- NEW_NAME_STRING= NEW_NAME_STRING.val
-
- Window.WaitCursor(1)
- for ob in obsel:
- if ob.name != NEW_NAME_STRING:
- ob.name = NEW_NAME_STRING
- renameCount+=1
-
- return RENAME_LINKED.val
-
- def replace():
- global renameCount
- REPLACE_STRING = Draw.Create('')
- WITH_STRING = Draw.Create('')
- RENAME_LINKED = Draw.Create(0)
-
- pup_block = [\
- ('Replace: ', REPLACE_STRING, 19, 19, 'Text to find'),\
- ('With:', WITH_STRING, 19, 19, 'Text to replace with'),\
- ('Rename ObData', RENAME_LINKED, 'Renames objects data to match the obname'),\
- ]
-
- if not Draw.PupBlock('Replace in name...', pup_block) or\
- ((not REPLACE_STRING.val) and (not WITH_STRING)):
- return 0
-
- REPLACE_STRING = REPLACE_STRING.val
- WITH_STRING = WITH_STRING.val
-
- Window.WaitCursor(1)
- for ob in obsel:
- newname = ob.name.replace(REPLACE_STRING, WITH_STRING)
- if ob.name != newname:
- ob.name = newname
- renameCount+=1
- return RENAME_LINKED.val
-
-
- def prefix():
- global renameCount
- PREFIX_STRING = Draw.Create('')
- RENAME_LINKED = Draw.Create(0)
-
- pup_block = [\
- ('Prefix: ', PREFIX_STRING, 19, 19, 'Name prefix'),\
- ('Rename ObData', RENAME_LINKED, 'Renames objects data to match the obname'),\
- ]
-
- if not Draw.PupBlock('Prefix...', pup_block) or\
- not PREFIX_STRING.val:
- return 0
-
- PREFIX_STRING = PREFIX_STRING.val
-
- Window.WaitCursor(1)
- for ob in obsel:
- ob.name = PREFIX_STRING + ob.name
- renameCount+=1 # we knows these are different.
- return RENAME_LINKED.val
-
- def suffix():
- global renameCount
- SUFFIX_STRING = Draw.Create('')
- RENAME_LINKED = Draw.Create(0)
-
- pup_block = [\
- ('Suffix: ', SUFFIX_STRING, 19, 19, 'Name suffix'),\
- ('Rename ObData', RENAME_LINKED, 'Renames objects data to match the obname'),\
- ]
-
- if not Draw.PupBlock('Suffix...', pup_block) or\
- not SUFFIX_STRING.val:
- return 0
-
- SUFFIX_STRING = SUFFIX_STRING.val
-
- Window.WaitCursor(1)
- for ob in obsel:
- ob.name = ob.name + SUFFIX_STRING
- renameCount+=1 # we knows these are different.
- return RENAME_LINKED.val
-
- def truncate_start():
- global renameCount
- TRUNCATE_START = Draw.Create(0)
- RENAME_LINKED = Draw.Create(0)
-
- pup_block = [\
- ('Truncate Start: ', TRUNCATE_START, 0, 19, 'Truncate chars from the start of the name'),\
- ('Rename ObData', RENAME_LINKED, 'Renames objects data to match the obname'),\
- ]
-
- if not Draw.PupBlock('Truncate Start...', pup_block) or\
- not TRUNCATE_START.val:
- return 0
-
- Window.WaitCursor(1)
- TRUNCATE_START = TRUNCATE_START.val
- for ob in obsel:
- newname = ob.name[TRUNCATE_START: ]
- ob.name = newname
- renameCount+=1
-
- return RENAME_LINKED.val
-
- def truncate_end():
- global renameCount
- TRUNCATE_END = Draw.Create(0)
- RENAME_LINKED = Draw.Create(0)
-
- pup_block = [\
- ('Truncate End: ', TRUNCATE_END, 0, 19, 'Truncate chars from the end of the name'),\
- ('Rename ObData', RENAME_LINKED, 'Renames objects data to match the obname'),\
- ]
-
- if not Draw.PupBlock('Truncate End...', pup_block) or\
- not TRUNCATE_END.val:
- return 0
-
- Window.WaitCursor(1)
- TRUNCATE_END = TRUNCATE_END.val
- for ob in obsel:
- newname = ob.name[: -TRUNCATE_END]
- ob.name = newname
- renameCount+=1
-
- return RENAME_LINKED.val
-
- def renameObjectFromLinkedData():
- global renameCount
- Window.WaitCursor(1)
-
- for ob in obsel:
- newname = ob.getData(name_only=1)
- if newname != None and ob.name != newname:
- ob.name = newname
- renameCount+=1
- return 0
-
- def renameObjectFromDupGroup():
- global renameCount
- Window.WaitCursor(1)
-
- for ob in obsel:
- group= ob.DupGroup
- if group != None:
- newname= group.name
- if newname != ob.name:
- ob.name = newname
- renameCount+=1
- return 0
-
- def renameLinkedDataFromObject():
- global renameCount
- Window.WaitCursor(1)
-
- for ob in obsel:
- if setDataNameWrapper(ob, ob.name):
- renameCount+=1
- return 0
-
- name = "Selected Object Names%t|New Name|Replace Text|Add Prefix|Add Suffix|Truncate Start|Truncate End|Rename Objects to Data Names|Rename Objects to DupGroup Names|Rename Data to Object Names"
- result = Draw.PupMenu(name)
- renLinked = 0 # Rename linked data to the object name?
- if result == -1:
- return
- elif result == 1: renLinked= new()
- elif result == 2: renLinked= replace()
- elif result == 3: renLinked= prefix()
- elif result == 4: renLinked= suffix()
- elif result == 5: renLinked= truncate_start()
- elif result == 6: renLinked= truncate_end()
- elif result == 7: renameObjectFromLinkedData()
- elif result == 8: renameObjectFromDupGroup()
- elif result == 9: renameLinkedDataFromObject()
-
- if renLinked:
- renameLinkedDataFromObject()
-
- Window.WaitCursor(0)
-
- Draw.PupMenu('renamed: %d objects.' % renameCount)
-
-if __name__=='__main__':
- main()