#!/usr/bin/env python # -*- coding: utf-8 -*- # # Copyright (C) 2012 S. Daniel Francis # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # MA 02110-1301, USA. class Staff: y = 0 lmarg = 0 rmarg = 0 spacing = 0 ymax = 0 clef = None def __init__(self): pass def draw(self, window, width): context = window.cairo_create() context.set_source_rgb(0, 0, 0) context.set_line_width(2) line_y = self.y + self.spacing * 2 for i in range(5): x = self.lmarg context.move_to(x, line_y) context.line_to(width - self.rmarg, line_y) line_y += self.spacing self.ymax = line_y + self.spacing * 2 context.stroke() self.clef.draw(window.cairo_create(), self.lmarg * 1.1, self.y, self.lmarg * 0.3, self.ymax - self.y - self.spacing)