Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3
Neb3 ã @ sn d Z dZddlmZ ddlmZmZmZmZ ddl m
Z
ddlmZ G dd„ deƒZ
d d
„ Zedkrjeƒ dS )
z3.3.0zThis file is a
é )Úcolors)ÚRectÚDrawingÚGroupÚString)ÚLabel)ÚWidgetc @ sL e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd d
„ Zdd„ Zd
d„ Z dd„ Z
dS )Ú
EventCalendarc C sj d| _ d| _d| _d| _d | _d| _g | _d | _d | _d | _ d| _
g | _d | _d | _
d| _g | _g | _d S )Nr i, é– é )ÚxÚyÚwidthÚheightÚtimeColWidthÚtrackRowHeightÚdataZ
trackNamesÚ startTimeÚendTimeÚdayÚ
_talksVisibleÚ
_startTimeÚ_endTimeÚ_trackCountÚ
_colWidthsÚ
_colLeftEdges)Úself© r úD/tmp/tmp4i9tl1d3/lib64/python/reportlab/graphics/widgets/eventcal.pyÚ__init__ s" zEventCalendar.__init__c C sÜ | j | jƒ| _t| jƒ ƒ| _| jƒ | jg| _| j dkr†| j
d| j }|gd| j | _x|t| jƒD ]}| jj
| jd | ƒ qfW nR| j g| _| j
| j | j }x4t| jƒD ]&}| jj
|ƒ | jj
| jd | ƒ q®W dS )z4Called at start of draw. Sets various column widthsNé éÿÿÿÿr! )ÚgetRelevantTalksr r ÚlenÚgetAllTracksr ÚcomputeStartAndEndTimesr r r r r ÚrangeÚappend)r ÚwÚir r r ÚcomputeSize* s
zEventCalendar.computeSizec C s¬ | j r| j | _n>x<| jD ]2\}}}}}}| jdkr:|| _q|| jk r|| _qW | jr^| j| _nJxH| jD ]>\}}}}}}| jdkrŒ|| | _qf|| | jkrf|| | _qfW dS )z(Work out first and last times to displayN)r r r r r )r ÚtitleÚspeakerÚtrackIdr ÚstartÚdurationr r r r% > s
z%EventCalendar.computeStartAndEndTimesc C sF g }x4| j D ]*\}}}}}}|d k r||kr|j|ƒ qW |jƒ |S )N)r r' Úsort)r Ztracksr+ r, r- r Úhoursr/ r r r r$ X s zEventCalendar.getAllTracksc
C sv g }xl|D ]d}|\}}}}}} |dks.t dƒ‚|| jkr
| jdksP|| | jkr
| jdksd|| jkr
|j|ƒ q
W |S )zScans for tracks actually usedr z2trackId must be None or 1,2,3... zero not allowed!N)ÚAssertionErrorr r r r' )
r ZtalkListÚusedÚtalkr+ r, r- r r1 r/ r r r r" a s
zEventCalendar.getRelevantTalksc C s8 | j | j }|| j | j| j }| j| || }|S )z+Return y-value corresponding to times given)r r r r r
)r ZtheTimeZ
axisHeightZproportionUpr
r r r Ú scaleTimem s zEventCalendar.scaleTimec
C sÎ t ƒ }| j|| ƒ}| j|ƒ}|| }|dkrJ| jd } | j| jd }
n| j| } | j| }
tƒ }|j|ƒ |j| d|
|d| ƒ d|_|
|_||_ d|_
t| ||
|tj
d�}|j|ƒ |j|ƒ |S )z!Return shapes for a specific talkNr r g à?Úcé )Ú fillColor)r r5 r r r r ZsetTextZ setOriginZ boxAnchorr ZfontSizer r ZcyanÚadd)
r r r/ r- ÚtextÚgZy_bottomZy_topZy_heightr r ZlabÚrr r r ÚgetTalkRectv s(
zEventCalendar.getTalkRectc C s | j ƒ tƒ }|jt| j| j| jd | j| j t j
d�ƒ | j| jd }| j| j | j }xnt| jƒD ]`}| j|d }t|||| jt j
d�}t|d| |d| dd�}|j|ƒ |j|ƒ || }qhW x@| jD ]6}|\} }
}}}
}| j|
||| d |
ƒ}|j|ƒ qÔW |S ) Nr )r8 r g à?zTrack %dZmiddle)ZalignÚ
)r* r r9 r r r
r r r r Zcornsilkr&