예제 #1
0
SmartPointer<IElementReference> CommandService::RegisterElementForCommand(
    const SmartPointer<ParameterizedCommand>& command,
    const SmartPointer<UIElement>& element)
{
  if (!command->GetCommand()->IsDefined())
  {
    throw NotDefinedException(
        "Cannot define a callback for undefined command "
            + command->GetCommand()->GetId());
  }
  if (element.IsNull())
  {
    throw NotDefinedException("No callback defined for command "
        + command->GetCommand()->GetId());
  }

  QHash<QString, QString> paramMap = command->GetParameterMap();
  QHash<QString, Object::Pointer> parms;
  for (QHash<QString, QString>::const_iterator i = paramMap.begin();
       i != paramMap.end(); ++i)
  {
    Object::Pointer value(new ObjectString(i.value()));
    parms.insert(i.key(), value);
  }
  IElementReference::Pointer ref(new ElementReference(command->GetId(),
                                                      element, parms));
  RegisterElement(ref);
  return ref;
}
예제 #2
0
void iPopupMenu::InsertMenuItem(const iDib &dib, const iStringT &txt, bool enb)
{
	check((dib.GetSize()==m_ElementSize));

	iNWSimpleButton *btn = new iNWSimpleButton();
	btn->CreateNWSimpleButton(this,m_ElementSize,dib);
	RegisterElement(btn);

	iMenuItem *mitem = new iMenuItem(btn,txt,enb);
	m_Items.Add(mitem);
}
예제 #3
0
//===========================================================================
void TKalmanBajas_Init() { RegisterElement("DiALab - Фильтры", "БИХ фильтры", (int)&TKalmanBajas::Create); }
예제 #4
0
//===========================================================================
void TNonSensitivity_Init() { RegisterElement("DiALab - Базовые", "Нелинийные", (int)&TNonSensitivity::Create); }
예제 #5
0
//===========================================================================
void TDiffer_Init() { RegisterElement("DiALab - Базовые", "Линийные", (int)&TDiffer::Create); }
예제 #6
0
//===========================================================================
void TArcTanges360_Init() { RegisterElement("DiALab - Базовые", "Тригонометрия", (int)&TArcTanges360::Create); }
예제 #7
0
//===========================================================================
void TSumator_Init() { RegisterElement("DiALab - Базовые", "Мат. операции", (int)&TSumator::Create); }
예제 #8
0
//===========================================================================
void TTransromXYZ_RoQE_Init() { RegisterElement("DiALab - Дополнительные", "Преобразователи", (int)&TTransromXYZ_RoQE::Create); }
예제 #9
0
//===========================================================================
void TSignature_Init() { RegisterElement("DiALab - Базовые", "Нелинийные", (int)&TSignature::Create); }
예제 #10
0
//===========================================================================
void TPolinom_Init() { RegisterElement("DiALab - Базовые", "Входы", (int)&TPolinom::Create); }
예제 #11
0
//===========================================================================
void TProportional_Init() { RegisterElement("DiALab - Базовые", "Мат. операции", (int)&TProportional::Create); }
예제 #12
0
//===========================================================================
void TTargetMove_Init() { RegisterElement("DiALab - Базовые", "Входы", (int)&TTargetMove::Create); }
예제 #13
0
//===========================================================================
void TSigCorection_Init() {
    RegisterElement("DiALab - Временые", "Алг.уранв.Пуансона", (int)&TSigCorection::Create);
}
예제 #14
0
//===========================================================================
void TWave_Init() {
    RegisterElement("DiALab - Базовые", "Линийные", (int)&TWave::Create);
}