- Исправлена двойная обработка ITableRow через reflection - Исправлен выход за границы изображения при отрисовке последнего разделителя - Добавлена защита от пустых данных (header, blocks) - Добавлена compile-time проверка интерфейса ITableRow - Переименован tablle_block_style.go → table_block_style.go - Добавлены комментарии на русском ко всем функциям и типам - Написана документация README.md с примерами использования - Добавлен CLAUDE.md Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
25 lines
940 B
Go
25 lines
940 B
Go
package image_table
|
||
|
||
import "image/color"
|
||
|
||
// Проверка реализации интерфейса на этапе компиляции
|
||
var _ ITableRow = (*TableBlockStyle)(nil)
|
||
|
||
// TableBlockStyle — строка таблицы с пользовательским цветом фона.
|
||
// Реализует интерфейс ITableRow.
|
||
// Важно: передавать в rows как указатель (*TableBlockStyle), иначе интерфейс не будет распознан.
|
||
type TableBlockStyle struct {
|
||
Cells []any // ячейки строки
|
||
BackgroundColor color.RGBA // цвет фона строки
|
||
}
|
||
|
||
// GetCells возвращает ячейки строки
|
||
func (s *TableBlockStyle) GetCells() []any {
|
||
return s.Cells
|
||
}
|
||
|
||
// GetBackgroundColor возвращает цвет фона строки
|
||
func (s *TableBlockStyle) GetBackgroundColor() color.RGBA {
|
||
return s.BackgroundColor
|
||
}
|