本文整理汇总了C++中CModInfo::GetDefaultType方法的典型用法代码示例。如果您正苦于以下问题:C++ CModInfo::GetDefaultType方法的具体用法?C++ CModInfo::GetDefaultType怎么用?C++ CModInfo::GetDefaultType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CModInfo
的用法示例。
在下文中一共展示了CModInfo::GetDefaultType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: UserCommand
//.........这里部分代码省略.........
if (sType.Equals("global")) {
eType = CModInfo::GlobalModule;
} else if (sType.Equals("user")) {
eType = CModInfo::UserModule;
} else if (sType.Equals("network")) {
eType = CModInfo::NetworkModule;
} else {
sMod = sType;
sArgs = sLine.Token(2, true);
sType = "default";
// Will be set correctly later
eType = CModInfo::UserModule;
}
if (m_pUser->DenyLoadMod()) {
PutStatus("Unable to load [" + sMod + "]: Access Denied.");
return;
}
if (sMod.empty()) {
PutStatus("Usage: LoadMod [type] <module> [args]");
return;
}
CModInfo ModInfo;
CString sRetMsg;
if (!CZNC::Get().GetModules().GetModInfo(ModInfo, sMod, sRetMsg)) {
PutStatus("Unable to find modinfo [" + sMod + "] [" + sRetMsg + "]");
return;
}
if (sType.Equals("default")) {
eType = ModInfo.GetDefaultType();
}
if (eType == CModInfo::GlobalModule && !m_pUser->IsAdmin()) {
PutStatus("Unable to load global module [" + sMod + "]: Access Denied.");
return;
}
if (eType == CModInfo::NetworkModule && !m_pNetwork) {
PutStatus("Unable to load network module [" + sMod + "] Not connected with a network.");
return;
}
CString sModRet;
bool b = false;
switch (eType) {
case CModInfo::GlobalModule:
b = CZNC::Get().GetModules().LoadModule(sMod, sArgs, eType, NULL, NULL, sModRet);
break;
case CModInfo::UserModule:
b = m_pUser->GetModules().LoadModule(sMod, sArgs, eType, m_pUser, NULL, sModRet);
break;
case CModInfo::NetworkModule:
b = m_pNetwork->GetModules().LoadModule(sMod, sArgs, eType, m_pUser, m_pNetwork, sModRet);
break;
default:
sModRet = "Unable to load module [" + sMod + "]: Unknown module type";
}
if (b)
sModRet = "Loaded module [" + sMod + "] " + sModRet;