Renders a responsive Bootstrap masonry-style grid layout by packing data rows into 12-column rows based on a width value supplied per row.
Masonry form_layout — set as ReportType in def_report.
def Render(self, Param1="", Param2="", Param3="") -> str:
No parameters are used. Each row in self.data_list must supply a Bootstrap column width (column 0, integer 1–12) and a content string (column 1). Content is processed via self.process_text. Rows are packed into Bootstrap row divs until the 12-column limit is reached, then a new row starts. Returns an HTML string.
The column-width packing is greedy (first-fit): a new row is started only when the next item would exceed 12 columns, not when adding it would exactly fill 12. Content values may contain text processor tokens (e.g. {report:...}, {form:...}), which are resolved by process_text.