Skip to content
Snippets Groups Projects
Commit cd30caa1 authored by Alexander Rose's avatar Alexander Rose
Browse files

better align negative sequence numbers in ui

parent 41bc74e5
No related branches found
No related tags found
No related merge requests found
......@@ -56,4 +56,12 @@
.msp-sequence-number-long {
left: 3.3em;
}
.msp-sequence-number-long-negative {
left: 2.7em;
}
.msp-sequence-number-negative {
left: 2.5em;
}
}
\ No newline at end of file
......@@ -115,10 +115,15 @@ export class Sequence<P extends SequenceProps> extends PluginUIComponent<P> {
return <span key={seqIdx} data-seqid={seqIdx} style={{ color: Color.toStyle(color), backgroundColor: this.getBackgroundColor(marker) }} className={this.getResidueClass(seqIdx, label)}>{label}</span>;
}
private getSequenceNumberClass(seqIdx: number, label: string) {
return label.length > 1 && seqIdx > 0
? 'msp-sequence-number msp-sequence-number-long'
: 'msp-sequence-number'
private getSequenceNumberClass(seqIdx: number, seqNum: string, label: string) {
const classList = ['msp-sequence-number']
if (seqNum.startsWith('-')) {
if (label.length > 1 && seqIdx > 0) classList.push('msp-sequence-number-long-negative')
else classList.push('msp-sequence-number-negative')
} else {
if (label.length > 1 && seqIdx > 0) classList.push('msp-sequence-number-long')
}
return classList.join(' ')
}
private location = StructureElement.Location.create();
......@@ -127,19 +132,19 @@ export class Sequence<P extends SequenceProps> extends PluginUIComponent<P> {
return n;
}
private getSequenceNumber(seqIdx: number, label: string) {
let sequenceNumber = ''
let seqNum = ''
const loci = this.props.sequenceWrapper.getLoci(seqIdx)
const l = StructureElement.Loci.getFirstLocation(loci, this.location);
if (l) {
if (Unit.isAtomic(l.unit)) {
const seqId = StructureProperties.residue.auth_seq_id(l)
const insCode = StructureProperties.residue.pdbx_PDB_ins_code(l)
sequenceNumber = `${seqId}${insCode ? insCode : ''}`
seqNum = `${seqId}${insCode ? insCode : ''}`
} else if (Unit.isCoarse(l.unit)) {
sequenceNumber = `${seqIdx + 1}`
seqNum = `${seqIdx + 1}`
}
}
return <span key={`marker-${seqIdx}`} className={this.getSequenceNumberClass(seqIdx, label)}>{this.padSeqNum(sequenceNumber)}</span>
return <span key={`marker-${seqIdx}`} className={this.getSequenceNumberClass(seqIdx, seqNum, label)}>{this.padSeqNum(seqNum)}</span>
}
private updateMarker() {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment