Hiero在对剪辑线上的item进行管理的时候,往往会添加能多tag,而在管 理面板spreadsheet中却无法对tag进行查询,这是一件很麻烦的事,Hiero Development Guide中给出一个自定义spreadsheet的example,我拿来稍作修改,于是就可以对tag进行查询了,还是很给力的~

 
代码如下:
 
Talk is cheap,show you the code:
#####################################################################
 
 
 
import hiero.ui
import PySide.QtCore
import PySide.QtGui

_itemData = dict()

class CustomSpreadsheetColumns(object):

def numColumns(self):

return 1

def columnName(self, column):

if column == 0:
      return "Tags (VHQ)"

return ""

def getData(self, row, column, item):

if column == 0:
      taglist = []
      for tag in item.tags():
        taglist.append(tag.name())
      return ' '.join(taglist)

return None

def setData(self, row, column, item, data):

print "setData", (self, row, column, item, data)
    _itemData[item] = str(data)

def getTooltip(self, row, column, item):

return "Tooltip: "+str(row)+"/"+str(column)+": "+item.name()

def getFont(self, row, column, item):

return None

def getBackground(self, row, column, item):

return None

def getForeground(self, row, column, item):

return None

def getIcon(self, row, column, item):

return None

def getSizeHint(self, row, column, item):

if column == 0:
      return PySide.QtCore.QSize(250, 32)
    return None

def paintCell(self, row, column, item, painter, option):

return False

def createEditor(self, row, column, item, view):

return None

def setEditorData(self, row, column, item, editor):

print "setEditorData:", (self, row, column, item, editor)

return False

def setModelData(self, row, column, item, editor):

print "setModelData:", (self, row, column, item, editor)

return False

def dropMimeData(self, row, column, item, data, items):

print "dropMimeData", (self, row, column, item, data.formats(), items)
    return None

def indexChanged(self, index):

print "ComboBox index changed:", index

# Register our custom columns
hiero.ui.customColumn = CustomSpreadsheetColumns()

Hiero的spreadsheet中添加tag属性列的更多相关文章

  1. treeview自动从表中添加标题和列值做目录的方法2

    treeview自动从表中添加标题和列值做目录的方法2,该方法是借鉴万一老师的 http://www.cnblogs.com/del/archive/2008/05/15/1114450.html 首 ...

  2. 【C#】在datatable中添加一序号列,编号从1依次递增,并且在第一列

    详细链接:https://shop499704308.taobao.com/?spm=a1z38n.10677092.card.11.594c1debsAGeak/// <summary> ...

  3. (vue.js)axios interceptors 拦截器中添加headers 属性

    (vue.js)axios interceptors 拦截器中添加headers 属性:http://www.codes51.com/itwd/4282111.html 问题: (vue.js)axi ...

  4. 在已创建的DataTable对象中添加在首列一列

    问题描述: 从数据库读取出来的表数据赋给到了DataTable上,将DataTable中数据显示到DataGridView中时希望在DataGridView的第一列显示一列. 解决方法: DataTa ...

  5. 为什么要在<button>元素中添加type属性

    在HTML中<button> 标签定义一个按钮. <button type="button">Click Me!</button> 在 butt ...

  6. 自定义Panel中添加依赖属性需要注意的问题

    今天帮忙同事调试一个自定义Panel的问题, 很奇怪, 利用Binding可以通过ItemSource来添加控件,但是在Listbox的xaml里添加几个ListboxItem却报异常: Visual ...

  7. 在SQL查询结果中添加自增列的两种方法

    解决办法<一>:如果想查询出这个表的信息,并添加一列连续自增的ID,可用如下查询语句: SELECT Row_Number() over ( order by getdate() ) as ...

  8. HTML 全局属性 = HTML5 中添加的属性。

    属性 描述 accesskey 规定激活元素的快捷键. class 规定元素的一个或多个类名(引用样式表中的类). contenteditable 规定元素内容是否可编辑. contextmenu 规 ...

  9. Axios 拦截器中添加headers 属性

    描述: 已在网上查过怎么在 interceptors 中对header进行处理,// http request 拦截器 axios.interceptors.request.use( config = ...

随机推荐

  1. 微软Power BI 每月功能更新系列——8月Power BI 新功能学习

    Power BI Desktop 8月新功能摘要 Power BI 产品八月发布的新版本又刷新了大家所期待的一些功能,它可以更方便的解决我们从用户那里听到的一些最重要的请求:其中最令人兴奋的是我们的导 ...

  2. 2.11 alert\confirm\prompt

    2.11 alert\confirm\prompt 前言   不是所有的弹出框都叫alert,在使用alert方法前,先要识别出到底是不是alert.先认清楚alert长什么样子,下次碰到了,就可以用 ...

  3. Java 经典面试题 —— 性能

    1. 性能 String.StringBuffer 与 StringBuilder 两个字符串相加,str1+str2,相当于执行: StringBuilder strBuilder1 = new S ...

  4. Xposed MultiDex Hook

    使用Xposed Hook多DEX的应用时,Xposed会抛ClassNotFound的异常,原因是它只会在classes.dex查找类.以下官方不完美解决办法,参考 Github上的 #30 iss ...

  5. iOS常用的代码块整理

    strong @property (nonatomic,strong) <#Class#> *<#object#>; weak @property (nonatomic,wea ...

  6. Spring mvc下载文件java代码

    /** * 下载模板文件 * @author cq */ @RequestMapping("/downloadExcel.do") public ResponseEntity< ...

  7. day 023-python 包

    包 : 我 们创建的每个文件夹都可以被称之为包. 但是我们要注意, 在python2中规定.中包内必须存在 __init__.py文件.  python3可有可无,但一般要求写上.创建包的目的不是为了 ...

  8. Linux配置java环境变量 【随手记】

    JAVA环境变量 1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序. 2. CLASSPATH环境变量.作用是 ...

  9. POJ3904 Sky Code

    题意 Language:Default Sky Code Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 3980 Accepte ...

  10. Centos7 安装redis及其入门使用

    wget -c http://download.redis.io/releases/redis-3.2.9.tar.gz #下载源码 tar -xvf redis-3.2.9.tar.gz #解压 c ...