Example #1
0
void ActivateChild(UIManager* manager, u32 index)
{
	UIActiveElement* active = manager->active_elements;
	UIElement* element = manager->elements + index;

	UIActiveElement* parent = active + element->parent_index;
	
	UIActiveElement to_be_active = {};

	V2 dim = element->dim;
	V2 offset = element->offset_from_parent;
	V2 parent_corner = parent->corner;

	V2 rel_corner = {parent_corner.x + offset.x, parent_corner.y + offset.y};
	V2 center = {rel_corner.x + dim.x/2.0f, rel_corner.y + dim.y/2.0f};
	
	UIChild child = {dim, center};

	to_be_active.vao = LoadElement(dim);
	to_be_active.corner = rel_corner;
	to_be_active.color = element->color;

	manager->active_elements[manager->active_count++] = to_be_active;
	manager->children[manager->child_count++] = child;
}
Example #2
0
void ActivateParent(UIManager* manager, u32 index, u16 offset_to_children, u8 num_children)
{
	UIActiveElement* active = manager->active_elements;
	UIElement* element = manager->elements + index;

	UIActiveElement* parent_of_element = active + element->parent_index;
	
	UIActiveElement to_be_active = {};

	V2 dim = element->dim;
	V2 offset = element->offset_from_parent;
	V2 parent_corner = parent_of_element->corner;

	V2 rel_corner = {parent_corner.x + offset.x, parent_corner.y + offset.y};
	V2 center = {rel_corner.x + dim.x/2.0f, rel_corner.y + dim.y/2.0f};
	
	UIParent parent = {dim, center, num_children, offset_to_children};

	to_be_active.vao = LoadElement(dim);
	to_be_active.corner = rel_corner;
	to_be_active.color = element->color;

	manager->active_elements[manager->active_count++] = to_be_active;
	manager->parents[manager->parent_count++] = parent;
}
Example #3
0
bool UmcScenario::Load(const apr_xml_elem* pElem, apr_pool_t* pool)
{
	const apr_xml_elem* pChildElem;
	/* Load Child Elements */
	for(pChildElem = pElem->first_child; pChildElem; pChildElem = pChildElem->next)
	{
		LoadElement(pChildElem,pool);
	}
	return true;
}
Example #4
0
bool UmcScenario::Load(const apr_xml_elem* pElem, apr_pool_t* pool)
{
    const apr_xml_elem* pChildElem;
    /* Load Child Elements */
    for(pChildElem = pElem->first_child; pChildElem; pChildElem = pChildElem->next)
    {
        if(!LoadElement(pChildElem,pool))
            apt_log(APT_LOG_MARK,APT_PRIO_WARNING,"Failed to Load Child Element %s",pChildElem->name);
    }
    return true;
}
Example #5
0
    mat_ZZ getbasis(int n,int seed,vec_ZZ& phi,double bit=10) {
        initialize();
        
        std::ostringstream fname;
        fname << getfname(n,seed,bit,0);

        mat_ZZ L;
        if (FileExists(fname)==true) {
            LoadLattice(L,fname.str());
            fname << ".phi";
            LoadElement(phi,fname.str());
        } else {
            vec_ZZ phi;
            //n stands for index
            gen_idealsvpchallenge(L,n,to_ZZ(seed),phi); 
#ifdef _allow_cachefiles
            SaveLattice(L,fname.str());
            fname << ".phi";
            SaveElement(phi,fname.str());
#endif
        }
        return L;
    }