CppPlugins/testplugins/03simpleCmd/src/plugin.cpp

47 lines
1022 B
C++

#include "plugin.h"
#include <iostream>
#include <string>
#include <map>
#include <vector>
using namespace Plugin;
extern "C" {
bool hicmd(JNIEnv* env, CppPlugin* plugin, jobject sender, jobject cmd, std::string& label, std::vector<std::string>& args) {
plugin->log("HICMD::hi " + label + " argsize: " + std::to_string(args.size()));
for(std::string& arg : args) {
std::cout << arg << std::endl;
}
send(env, sender, Color::AQUA + "Hiiiiii\n" + Color::GREEN + "Nuttöööö");
return true;
}
class CmdPlugin : public CppPlugin {
public:
virtual void onLoad(JNIEnv*);
virtual void onEnable(JNIEnv*);
virtual void onDisable(JNIEnv*);
//virtual std::map<std::string, eventfptr> getEvents();
};
void CmdPlugin::onLoad(JNIEnv*) {
log("CmdPlugin::onLoad();");
}
void CmdPlugin::onEnable(JNIEnv* env) {
log("CmdPlugin::onEnable();");
registerCmd(env, this, "hi", hicmd);
}
void CmdPlugin::onDisable(JNIEnv*) {
log("CmdPlugin::onDisable();");
}
CppPlugin* init() {
return new CmdPlugin();
}
}//extern "C"