Amaranth add-on: update to the latest API changes
[blender-addons-contrib.git] / amaranth / misc / sequencer_extra_info.py
1 #  This program is free software; you can redistribute it and/or
2 #  modify it under the terms of the GNU General Public License
3 #  as published by the Free Software Foundation; either version 2
4 #  of the License, or (at your option) any later version.
5 #
6 #  This program is distributed in the hope that it will be useful,
7 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
8 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9 #  GNU General Public License for more details.
10 #
11 #  You should have received a copy of the GNU General Public License
12 #  along with this program; if not, write to the Free Software Foundation,
13 #  Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
14 #  This program is free software; you can redistribute it and/or
15 #  modify it under the terms of the GNU General Public License
16 #  as published by the Free Software Foundation; either version 2
17 #  of the License, or (at your option) any later version.
18 #
19 #  This program is distributed in the hope that it will be useful,
20 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
21 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22 #  GNU General Public License for more details.
23 #
24 #  You should have received a copy of the GNU General Public License
25 #  along with this program; if not, write to the Free Software Foundation,
26 #  Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
27 """
28 Sequencer: Display Image File Name
29
30 When seeking through an image sequence, display the active strips' file name
31 for the current frame, and it's [playhead].
32
33 Find it on the VSE header.
34 """
35 import bpy
36
37
38 # FEATURE: Sequencer Extra Info
39 def act_strip(context):
40     try:
41         return context.scene.sequence_editor.active_strip
42     except AttributeError:
43         return None
44
45
46 def ui_sequencer_extra_info(self, context):
47     layout = self.layout
48     strip = act_strip(context)
49     if strip:
50         seq_type = strip.type
51         if seq_type and seq_type == 'IMAGE':
52             elem = strip.strip_elem_from_frame(context.scene.frame_current)
53             if elem:
54                 layout.label(
55                     text="%s %s" %
56                     (elem.filename, "[%s]" %
57                      (context.scene.frame_current - strip.frame_start)))
58
59 # // FEATURE: Sequencer Extra Info
60
61
62 def register():
63     bpy.types.SEQUENCER_HT_header.append(ui_sequencer_extra_info)
64
65
66 def unregister():
67     bpy.types.SEQUENCER_HT_header.remove(ui_sequencer_extra_info)