75 lines
No EOL
2 KiB
C++
75 lines
No EOL
2 KiB
C++
import Crafter.CppDOM;
|
|
using namespace Crafter;
|
|
|
|
HtmlElement* body = new HtmlElement("body", "<div id='container'><button id='myButton'>Click Me!</button><input type='text' id='textInput' placeholder='Type something'><div id='output'></div></div>");
|
|
HtmlElement* button = new HtmlElement("myButton");
|
|
HtmlElement* input = new HtmlElement("textInput");
|
|
HtmlElement* output = new HtmlElement("output");
|
|
|
|
int main(){
|
|
// Click event
|
|
button->AddClickListener([&]() {
|
|
output->SetInnerHTML("Button was clicked!");
|
|
});
|
|
|
|
// Mouse events
|
|
button->AddMouseOverListener([&]() {
|
|
output->SetInnerHTML("Mouse over button!");
|
|
});
|
|
|
|
button->AddMouseOutListener([&]() {
|
|
output->SetInnerHTML("Mouse left button!");
|
|
});
|
|
|
|
// Focus/Blur events
|
|
input->AddFocusListener([&]() {
|
|
output->SetInnerHTML("Input focused!");
|
|
});
|
|
|
|
input->AddBlurListener([&]() {
|
|
output->SetInnerHTML("Input blurred!");
|
|
});
|
|
|
|
// Keyboard events
|
|
input->AddKeyDownListener([&]() {
|
|
output->SetInnerHTML("Key pressed in input!");
|
|
});
|
|
|
|
input->AddKeyUpListener([&]() {
|
|
output->SetInnerHTML("Key released in input!");
|
|
});
|
|
|
|
// Input/change events
|
|
input->AddInputListener([&]() {
|
|
output->SetInnerHTML("Input value changed!");
|
|
});
|
|
|
|
input->AddChangeListener([&]() {
|
|
output->SetInnerHTML("Input value changed and lost focus!");
|
|
});
|
|
|
|
// Context menu
|
|
button->AddContextMenuListener([&]() {
|
|
output->SetInnerHTML("Context menu opened!");
|
|
});
|
|
|
|
// Scroll event on body
|
|
body->AddScrollListener([&]() {
|
|
output->SetInnerHTML("Page scrolled!");
|
|
});
|
|
|
|
// Resize event
|
|
body->AddResizeListener([&]() {
|
|
output->SetInnerHTML("Window resized!");
|
|
});
|
|
|
|
// Load event
|
|
body->AddLoadListener([&]() {
|
|
output->SetInnerHTML("Page loaded!");
|
|
});
|
|
|
|
// Error event
|
|
body->AddErrorListener([&]() {
|
|
output->SetInnerHTML("An error occurred!");
|
|
});
|
|
} |