Files
PyUIBuilder/src/frameworks/tkinter/widgets/frame.js

48 lines
1.2 KiB
JavaScript
Raw Normal View History

2024-09-22 22:24:35 +05:30
import Widget from "../../../canvas/widgets/base"
2024-09-25 17:27:12 +05:30
import TkinterBase from "./base"
2024-09-22 22:24:35 +05:30
2024-09-25 17:27:12 +05:30
class Frame extends TkinterBase{
2024-09-22 22:24:35 +05:30
static widgetType = "frame"
constructor(props) {
super(props)
this.droppableTags = {
2024-09-26 11:59:24 +05:30
exclude: ["image", "video", "media", "toplevel", "main_window"]
2024-09-22 22:24:35 +05:30
}
2024-09-26 23:16:43 +05:30
}
2024-09-22 22:24:35 +05:30
2024-09-26 23:16:43 +05:30
generateCode(variableName, parent){
2024-09-22 22:24:35 +05:30
2024-09-26 23:16:43 +05:30
const bg = this.getAttrValue("styling.backgroundColor")
return [
`${variableName} = tk.Frame(master=${parent})`,
`${variableName}.config(bg="${bg}")`,
`${variableName}.${this.getLayoutCode()}`
]
2024-09-22 22:24:35 +05:30
}
componentDidMount(){
super.componentDidMount()
this.setAttrValue("styling.backgroundColor", "#EDECEC")
this.setWidgetName("frame")
}
renderContent(){
2024-09-25 17:27:12 +05:30
// console.log("widget styling: ", this.state.widgetInnerStyling)
2024-09-22 22:24:35 +05:30
return (
<div className="tw-w-flex tw-flex-col tw-w-full tw-h-full tw-relative tw-rounded-md tw-overflow-hidden">
2024-09-25 17:27:12 +05:30
<div className="tw-p-2 tw-w-full tw-h-full tw-content-start" style={this.state.widgetInnerStyling}>
2024-09-22 22:24:35 +05:30
{this.props.children}
</div>
</div>
)
}
}
export default Frame