package GraphScale @ISA = qw() sub mw return shift->{'MainWindow'}; sub MainWindow return shift->{'MainWindow'}; return shift->{'Canvas'}; sub Canvas my ($this, $canvas) = @_; return $canvas; return $this->mw()->Canvas(); sub Index return shift->{'Index'}; sub nMaxScale return shift->{'nMaxScale'}; sub SetnMaxScale sub SetnMaxScale { my ($this,$nmax) = return $this->{'nMaxScale'} = $nmax; sub Caption return shift->{'Caption'}; sub SetCaption sub SetCaption { my ($this,$caption)= return $this->{'Caption'} = $caption; sub ScalePosition return shift->{'ScalePosition'}; sub SetScalePosition sub SetScalePosition { my ($this,$pos)= return $this->{'ScalePosition'} = $pos; sub IsXScale return shift->{'ScalePosition'} =~ /^x/i; sub IsYScale return shift->{'ScalePosition'} =~ /^y/i; sub ScaleStringVisible return shift->{'ScaleStringVisible'}; sub SetScaleStringVisible my ($this, $visible) = @_; return $this->{'ScaleStringVisible'} = $visible; sub ScaleVisible return shift->{'ScaleVisible'}; sub SetScaleVisible my ($this, $visible) = @_; return $this->{'ScaleVisible'} = $visible; sub CaptionVisible return shift->{'CaptionVisible'}; sub SetCaptionVisible my ($this, $visible) = @_; return $this->{'CaptionVisible'} = $visible; sub ScaleFormat my ($this) = @_; sub SetScaleFormat my ($this, $format) = @_; return $this->{'ScaleFormat'} = $format; sub SetIndex my ($this, $idx) = @_; return $this->{'Index'} = $idx; sub SetFont my ($this, $pFont) = @_; return $this->{'pFont'} = $pFont; sub new my ($module, $mainwindow, $position, $idx) = @_; my ($module, $mainwindow, $canvas, $position, $idx) = @_; return $this; sub DESTROY my $this = shift; # $this->SUPER::DESTROY( sub Draw my ($this, $canvas) = @_; return $r->Merge($this->DrawXScale($canvas)); return $r->Merge($this->DrawYScale($canvas)); sub DrawXScale my ($this, $canvas) = @_; return $rXScale; sub DrawYScale my ($this, $canvas) = @_; return $rYScale; sub ValueToPosition my ($this, $v, $scale) = @_; return $x; sub CalScale my ($this, $x0, $x1, $nmaxscale) = @_; return ($start, $end, $step, $nscale); sub SetViewXRange my ($this, $x0, $x1) = @_; sub SetViewYRange my ($this, $y0, $y1) = @_; sub SetViewRange my ($this, $x0, $y0, $x1, $y1) = @_; sub SetPosition my ($this, $x0, $y0, $x1, $y1) = @_; sub SetPositionByStr my ($this, $str) = @_;