drawChar draws a single character onto the provided canvas.
(dCvs *canvas.Canvas, c rune, wOpts *writeOptions)
| 270 | |
| 271 | // drawChar draws a single character onto the provided canvas. |
| 272 | func (sd *SegmentDisplay) drawChar(dCvs *canvas.Canvas, c rune, wOpts *writeOptions) error { |
| 273 | if sd.dotChars[c] { |
| 274 | disp := dotseg.New() |
| 275 | if err := disp.SetCharacter(c); err != nil { |
| 276 | return fmt.Errorf("dotseg.Display.SetCharacter => %v", err) |
| 277 | } |
| 278 | if err := disp.Draw(dCvs, dotseg.CellOpts(wOpts.cellOpts...)); err != nil { |
| 279 | return fmt.Errorf("dotseg.Display..Draw => %v", err) |
| 280 | } |
| 281 | return nil |
| 282 | } |
| 283 | |
| 284 | disp := sixteen.New() |
| 285 | if err := disp.SetCharacter(c); err != nil { |
| 286 | return fmt.Errorf("sixteen.Display.SetCharacter => %v", err) |
| 287 | } |
| 288 | if err := disp.Draw(dCvs, sixteen.CellOpts(wOpts.cellOpts...)); err != nil { |
| 289 | return fmt.Errorf("sixteen.Display.Draw => %v", err) |
| 290 | } |
| 291 | return nil |
| 292 | } |
| 293 | |
| 294 | // Keyboard input isn't supported on the SegmentDisplay widget. |
| 295 | func (*SegmentDisplay) Keyboard(k *terminalapi.Keyboard, meta *widgetapi.EventMeta) error { |