public AddComponentToQueryAction(ComponentQueryDeclarationModel componentQueryDeclarationModel,
                                  TypeHandle typeHandle,
                                  ComponentDefinitionFlags creationFlags
                                  )
 {
     ComponentQueryDeclarationModel = componentQueryDeclarationModel;
     TypeHandle    = typeHandle;
     CreationFlags = creationFlags;
 }
 public void AddComponentToQuery(ComponentQueryDeclarationModel componentQueryDeclarationModel)
 {
     SearcherService.ShowTypes(
         m_Stencil,
         Event.current.mousePosition, (t, i) =>
     {
         var resolvedType = t.Resolve(m_Stencil);
         ComponentDefinitionFlags creationFlags =
             (typeof(ISharedComponentData).IsAssignableFrom(resolvedType))
                 ? ComponentDefinitionFlags.Shared
                 : 0;
         Store.Dispatch(new AddComponentToQueryAction(componentQueryDeclarationModel,
                                                      t,
                                                      creationFlags));
     },
         GetComponentsSearcherFilter(m_Stencil)
         );
 }