Improve hacks/stress.py a bit.
[dcpomatic.git] / hacks / rename
1 #!/usr/bin/python
2
3 import re
4 import os
5
6 files = "src/lib/*.cc src/lib/*.h src/wx/*.cc src/wx/*.h src/tools/*.cc test/*.cc"
7
8 def convert(name):
9     s1 = re.sub('(.)([A-Z][a-z]+)', r'\1_\2', name)
10     return re.sub('([a-z0-9])([A-Z])', r'\1_\2', s1).lower()
11
12 def try_to_rename(f, t):
13     try:
14         print '%s -> %s' % (f, t),
15         os.rename(f, t)
16         print 'OK'
17     except:
18         print 'Failed'
19
20 def rename_class(f, t):
21     os.system('sed -i "s/%s/%s/g" %s' % (f, t, files))
22     os.system('sed -i "s/%s/%s/g" src/lib/wscript src/wx/wscript' % (convert(f), convert(t)))
23     try_to_rename('src/lib/%s.cc' % convert(f), 'src/lib/%s.cc' % convert(t))
24     try_to_rename('src/lib/%s.h' % convert(f), 'src/lib/%s.h' % convert(t))
25     try_to_rename('src/wx/%s.cc' % convert(f), 'src/wx/%s.cc' % convert(t))
26     try_to_rename('src/wx/%s.h' % convert(f), 'src/wx/%s.h' % convert(t))
27     os.system('sed -i "s/include \\"%s.h\\"/include \\"%s.h\\"/g" %s' % (convert(f), convert(t), files))
28     os.system('sed -i "s/include \\"lib\/%s.h\\"/include \\"lib\/%s.h\\"/g" %s' % (convert(f), convert(t), files))
29
30 rename_class("ActiveCaptions", "ActiveText")
31 rename_class("BitmapCaption", "BitmapText")
32 rename_class("ContentCaption", "ContentText")
33 rename_class("ContentTextCaption", "ContentStringText")
34 rename_class("TextCaptionFileContent", "StringTextFileContent")
35 rename_class("TextCaptionFileDecoder", "StringTextFileDecoder")
36 rename_class("TextCaptionFile", "StringTextFile")
37 rename_class("TextCaption", "StringText")
38 rename_class("PlayerCaption", "PlayerText")
39 rename_class("CaptionContent", "TextContent")
40 rename_class("CaptionDecoder", "TextDecoder")
41 rename_class("CaptionPanel", "TextPanel")
42 rename_class("CaptionView", "TextView")
43 rename_class("CaptionAppearanceDialog", "SubtitleAppearanceDialog")
44 rename_class("CaptionType", "TextType")