bengbengbalabalabeng commented on issue #913:
URL: https://github.com/apache/fesod/issues/913#issuecomment-4420179358
Hi @bin2100166581,
This is a great proposal. I have put together some supplementary thoughts
and would love to hear your feedback on this approach.
**Design Philosophy:**
The goal is to provide a unified and declarative mechanism for handling
freeze-pane behavior by introducing a `@FreezePane` annotation and a
`SheetFreezePaneStrategy` handler, while maintaining full compatibility with
the underlying Apache POI API.
**Core Implementation:**
1. **Annotation Definition**: Supports flexible configuration (parameters
are fully aligned with POI) and provides reasonable default values to simplify
development.
```java
@FreezePane(colSplit = 1, rowSplit = 1)
// Same as @FreezePane(colSplit = 1, rowSplit = 1, leftmostColumn = 1,
topRow = 1)
public class ExcelModel { ... }
```
2. **Handler Support**: `SheetFreezePaneStrategy` encapsulates the low-level
logic, which can be used in conjunction with the annotation or registered
independently for non-Bean scenarios.
```java
FesodSheet.write(pathname)
.registerWriteHandler(new SheetFreezePaneStrategy(...))
.sheet()
.doWrite(datas());
```
Feel free to let me know if your have any suggestions :)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]