Mercurial > repos > yating-l > jbrowsearchivecreator
comparison tracks/CanvasFeatures.py @ 38:d17f629f5486 draft
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
| author | yating-l |
|---|---|
| date | Fri, 06 Apr 2018 13:44:56 -0400 |
| parents | 31a41ce128cc |
| children | 4a69515eed63 |
comparison
equal
deleted
inserted
replaced
| 37:43909f065bee | 38:d17f629f5486 |
|---|---|
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 import os | |
| 2 import json | 3 import json |
| 3 import logging | 4 import logging |
| 4 | 5 |
| 5 from TrackDb import TrackDb | 6 from TrackDb import TrackDb |
| 6 from util import subtools | 7 from util import subtools |
| 9 class CanvasFeatures(TrackDb): | 10 class CanvasFeatures(TrackDb): |
| 10 def __init__(self, trackName, trackLabel, trackDataURL, trackType, dataType, extraSettings=None): | 11 def __init__(self, trackName, trackLabel, trackDataURL, trackType, dataType, extraSettings=None): |
| 11 super(CanvasFeatures, self).__init__(trackName, trackLabel, trackDataURL, trackType, dataType, extraSettings) | 12 super(CanvasFeatures, self).__init__(trackName, trackLabel, trackDataURL, trackType, dataType, extraSettings) |
| 12 | 13 |
| 13 def prepareExtraSetting(self): | 14 def prepareExtraSetting(self): |
| 14 """ set CanvasFeatures configuration options """ | 15 if 'category' not in self.extraSettings or not self.extraSettings['category']: |
| 15 extraConfigs = dict() | 16 self.extraSettings['category'] = "Default group" |
| 16 self.extraSettings["clientConfig"] = dict() | 17 self.extraSettings['style'] = {} |
| 17 self.extraSettings["config"] = dict() | 18 self.extraSettings['style']['className'] = 'feature' |
| 18 if 'color' not in self.extraSettings or not self.extraSettings['color']: | 19 if 'color' not in self.extraSettings or not self.extraSettings['color']: |
| 19 self.extraSettings["clientConfig"]['color'] = "#daa520" | 20 self.extraSettings['style']['color'] = "#FFA600" |
| 20 else: | 21 else: |
| 21 self.extraSettings["clientConfig"]['color'] = self.extraSettings['color'] | 22 self.extraSettings['style']['color'] = self.extraSettings['color'] |
| 22 if 'category' not in self.extraSettings or not self.extraSettings['category']: | 23 track = dict() |
| 23 self.extraSettings["config"]['category'] = "Default group" | 24 track['type'] = 'JBrowse/View/Track/' + self.trackType |
| 24 else: | 25 track['storeClass'] = 'JBrowse/Store/SeqFeature/GFF3Tabix' |
| 25 self.extraSettings["config"]['category'] = self.extraSettings['category'] | 26 track['urlTemplate'] = os.path.join('tracks', self.trackName) |
| 26 if 'glyph' in self.extraSettings: | 27 track['label'] = self.trackLabel |
| 27 self.extraSettings["config"]['glyph'] = self.extraSettings['glyph'] | 28 track['category'] = self.extraSettings['category'] |
| 28 if 'transcriptType' in self.extraSettings: | 29 track['style'] = self.extraSettings['style'] |
| 29 self.extraSettings['config']['transcriptType'] = self.extraSettings['transcriptType'] | 30 extraConfigs = track |
| 30 extraConfigs["config"] = json.dumps(self.extraSettings["config"]) | |
| 31 extraConfigs["clientConfig"] = json.dumps(self.extraSettings["clientConfig"]) | |
| 32 return extraConfigs | 31 return extraConfigs |
| 32 | |
| 33 # def prepareExtraSetting(self): | |
| 34 # """ set CanvasFeatures configuration options """ | |
| 35 # extraConfigs = dict() | |
| 36 # self.extraSettings["clientConfig"] = dict() | |
| 37 # self.extraSettings["config"] = dict() | |
| 38 # if 'color' not in self.extraSettings or not self.extraSettings['color']: | |
| 39 # self.extraSettings["clientConfig"]['color'] = "#daa520" | |
| 40 # else: | |
| 41 # self.extraSettings["clientConfig"]['color'] = self.extraSettings['color'] | |
| 42 # if 'category' not in self.extraSettings or not self.extraSettings['category']: | |
| 43 # self.extraSettings["config"]['category'] = "Default group" | |
| 44 # else: | |
| 45 # self.extraSettings["config"]['category'] = self.extraSettings['category'] | |
| 46 # if 'glyph' in self.extraSettings: | |
| 47 # self.extraSettings["config"]['glyph'] = self.extraSettings['glyph'] | |
| 48 # if 'transcriptType' in self.extraSettings: | |
| 49 # self.extraSettings['config']['transcriptType'] = self.extraSettings['transcriptType'] | |
| 50 # extraConfigs["config"] = json.dumps(self.extraSettings["config"]) | |
| 51 # extraConfigs["clientConfig"] = json.dumps(self.extraSettings["clientConfig"]) | |
| 52 # return extraConfigs |
