예제 #1
0
파일: kernel.cpp 프로젝트: edmondas/ncwm
void Kernel::grabShortcutOnAllMonitors(Shortcut *shortcut) {

    Binder *bm = Binder::instance();

    for (LMonitor::iterator it = monitors_->begin();
         it != monitors_->end(); it++)
    {
        Monitor *monitor = (Monitor *)*it;
        bm->grabShortcut(shortcut, monitor->rootWindow());
    }
}
예제 #2
0
파일: kernel.cpp 프로젝트: edmondas/ncwm
void Kernel::initKeys() {

    XCORE->ungrabKeyboard();
    Binder *bm = Binder::instance();

    for (LMonitor::iterator it = monitors_->begin();
         it != monitors_->end(); it++)
    {
        Monitor *monitor = (Monitor *)*it;
        bm->initKeys(monitor->rootWindow());
    }
}
예제 #3
0
 Impl(Public *i) : Base(i)
 {
     // Setup the GameStateFolder module.
     binder.init(savedSessionModule)
             << DENG2_FUNC(GameStateFolder_Convert,    "convert",    "gameId" << "savegamePath")
             << DENG2_FUNC(GameStateFolder_ConvertAll, "convertAll", "gameId");
     ScriptSystem::get().addNativeModule("SavedSession", savedSessionModule);
 }
예제 #4
0
void MemberAccessAST::generateSymbols(Binder& binder, std::shared_ptr<SymbolTable> symbolTable) {
	AbstractSyntaxTree::generateSymbols(binder, symbolTable);
	mAccessExpression->generateSymbols(binder, symbolTable);

	auto arrayMember = std::dynamic_pointer_cast<ArrayAccessAST>(mMemberExpression);

	if (!(std::dynamic_pointer_cast<VariableReferenceExpressionAST>(mMemberExpression)
		  || arrayMember)) {
		binder.error("'" + mMemberExpression->asString() + "' is not a member reference.");
	}

	if (arrayMember != nullptr) {
 		arrayMember->accessExpression()->generateSymbols(binder, symbolTable);
	}
}
예제 #5
0
파일: binder.cpp 프로젝트: ArildF/masters
void Binder::StartupMscorlib(Module *pModule)
{
    _ASSERTE(CLASS__MSCORLIB_COUNT < USHRT_MAX);
    _ASSERTE(METHOD__MSCORLIB_COUNT < USHRT_MAX);
    _ASSERTE(FIELD__MSCORLIB_COUNT < USHRT_MAX);
    _ASSERTE(TYPE__MSCORLIB_COUNT < USHRT_MAX);

    {
        g_Mscorlib.Init(pModule,
                        MscorlibClassDescriptions,
                        sizeof(MscorlibClassDescriptions)/sizeof(*MscorlibClassDescriptions),
                        MscorlibMethodDescriptions,
                        sizeof(MscorlibMethodDescriptions)/sizeof(*MscorlibMethodDescriptions),
                        MscorlibFieldDescriptions,
                        sizeof(MscorlibFieldDescriptions)/sizeof(*MscorlibFieldDescriptions),
                        MscorlibTypeDescriptions,
                        sizeof(MscorlibTypeDescriptions)/sizeof(*MscorlibTypeDescriptions));
    }
}
예제 #6
0
    bool select(T result, Binder binder, Params params)
    {
      prepare();

      if (NULL == stmt)
      {
        assert(false);
        return false;
      }

      sqlite3_reset(stmt);
      sqlite3_clear_bindings(stmt);

      params.set_params(stmt);

      while (SQLITE_ROW == sqlite3_step(stmt)) // iterate all objects
      {
          binder.get(stmt,result);
      }

      return true;
    }
예제 #7
0
void initMathModule(Binder &binder, Record &mathModule)
{
    binder.init(mathModule)
            << DENG2_FUNC_NOARG(Math_Random, "random")
            << DENG2_FUNC      (Math_RandInt, "randInt", "low" << "high");
}