mirror of
https://github.com/hyprwm/hyprwayland-scanner.git
synced 2024-11-22 18:05:58 +01:00
core: fix external type usage
This commit is contained in:
parent
24cf55c957
commit
6fdc0ceac9
1 changed files with 9 additions and 4 deletions
13
src/main.cpp
13
src/main.cpp
|
@ -115,8 +115,13 @@ std::string WPTypeToCType(const SRequestArgument& arg, bool event /* events pass
|
||||||
}
|
}
|
||||||
|
|
||||||
// iface
|
// iface
|
||||||
if (!arg.interface.empty() && event)
|
if (!arg.interface.empty() && event) {
|
||||||
return camelize("C_" + arg.interface + "*");
|
for (auto& i : XMLDATA.ifaces) {
|
||||||
|
if (i.name == arg.interface)
|
||||||
|
return camelize("C_" + arg.interface + "*");
|
||||||
|
}
|
||||||
|
return "wl_resource*";
|
||||||
|
}
|
||||||
|
|
||||||
return "uint32_t";
|
return "uint32_t";
|
||||||
}
|
}
|
||||||
|
@ -255,7 +260,7 @@ struct wl_resource;
|
||||||
for (auto& iface : XMLDATA.ifaces) {
|
for (auto& iface : XMLDATA.ifaces) {
|
||||||
const auto IFACE_CLASS_NAME_CAMEL = camelize("C_" + iface.name);
|
const auto IFACE_CLASS_NAME_CAMEL = camelize("C_" + iface.name);
|
||||||
HEADER += std::format("\nclass {};", IFACE_CLASS_NAME_CAMEL);
|
HEADER += std::format("\nclass {};", IFACE_CLASS_NAME_CAMEL);
|
||||||
|
|
||||||
for (auto& rq : iface.requests) {
|
for (auto& rq : iface.requests) {
|
||||||
for (auto& arg : rq.args) {
|
for (auto& arg : rq.args) {
|
||||||
if (!arg.interface.empty()) {
|
if (!arg.interface.empty()) {
|
||||||
|
@ -372,7 +377,7 @@ class {} {{
|
||||||
HEADER += std::format(" void {}({});\n", camelize("send_" + ev.name), args);
|
HEADER += std::format(" void {}({});\n", camelize("send_" + ev.name), args);
|
||||||
}
|
}
|
||||||
|
|
||||||
// dangerous ones
|
// dangerous ones
|
||||||
for (auto& ev : iface.events) {
|
for (auto& ev : iface.events) {
|
||||||
std::string args = "";
|
std::string args = "";
|
||||||
for (auto& arg : ev.args) {
|
for (auto& arg : ev.args) {
|
||||||
|
|
Loading…
Reference in a new issue