Esempio n. 1
0
void DemoState::createRGBAWindow() {
	detachChild("rgbaWindow");

	windowRGBA = new Window("rgbaWindow", Vector2(), Vector2(270, 200), "images/WINDOW.tga");
	windowRGBA->attachChild(new Label("RGBALabel", "RGBA Colour", 10, ColourRGBA(ColourRGBA::WHITE), Vector2(10, 90)));

	rSlider = new Slider("rSlider", Vector2(20, 125), 230, HORIZONTAL);
	rSlider->setColour(ColourRGBA::RED);

	gSlider = new Slider("gSlider", Vector2(20, 90), 230, HORIZONTAL);
	gSlider->setColour(ColourRGBA::GREEN);

	bSlider = new Slider("bSlider", Vector2(20, 55), 230, HORIZONTAL);
	bSlider->setColour(ColourRGBA::BLUE);

	aSlider = new Slider("aSlider", Vector2(20, 20), 230, HORIZONTAL);
	aSlider->setColour(ColourRGBA(1, 1, 1, 0.5f));

	windowRGBA->attachChild(rSlider);
	windowRGBA->attachChild(gSlider);
	windowRGBA->attachChild(bSlider);
	windowRGBA->attachChild(aSlider);

	attachChild(windowRGBA);
}
Esempio n. 2
0
void DemoState::buttonPressed(Button& button) {
	if (button == "resetEffects") {
		generalEffect->setSelected("None");
		onHoverEffect->setSelected("None");
		onHoverOffEffect->setSelected("None");
		image->setVisible(true);
	}
	if (button == "demoAnim") {
		createAnimationWindow();
	}
	if (button == "demoEffects") {
		createEffectsWindow();
	}
	if (button == "demoRGBA") {
		createRGBAWindow();
	}
	if (button == "demoChatbox") {
		detachChild("chatbox");
		demoChatbox = new Chatbox("chatbox", Vector2(-17, -363), 520);
		attachChild(demoChatbox);

		demoChatbox->pushMessage("HAL-9000", "Hello.");
	}
	if (button == "demoPlain") {
		createPlainWindow();
	}
}
Esempio n. 3
0
void ContainerNode::takeAllChildrenFrom(ContainerNode* oldParent)
{
    NodeVector children;
    getChildNodes(oldParent, children);

    if (oldParent->document().hasMutationObserversOfType(MutationObserver::ChildList)) {
        ChildListMutationScope mutation(oldParent);
        for (unsigned i = 0; i < children.size(); ++i)
            mutation.willRemoveChild(children[i].get());
    }

    // FIXME: We need to do notifyMutationObserversNodeWillDetach() for each child,
    // probably inside removeDetachedChildrenInContainer.

    oldParent->removeDetachedChildren();

    for (unsigned i = 0; i < children.size(); ++i) {
        Node* child = children[i].get();
        if (child->attached())
            detachChild(child);
        // FIXME: We need a no mutation event version of adoptNode.
        RefPtr<Node> adoptedChild = document().adoptNode(children[i].release(), ASSERT_NO_EXCEPTION);
        parserAppendChild(adoptedChild.get());
        // FIXME: Together with adoptNode above, the tree scope might get updated recursively twice
        // (if the document changed or oldParent was in a shadow tree, AND *this is in a shadow tree).
        // Can we do better?
        treeScope()->adoptIfNeeded(adoptedChild.get());
        if (attached() && !adoptedChild->attached())
            attachChild(adoptedChild.get());
    }
}
Esempio n. 4
0
void ContainerNode::removeBetween(Node* previousChild, Node* nextChild, Node* oldChild)
{
    NoEventDispatchAssertion assertNoEventDispatch;

    ASSERT(oldChild);
    ASSERT(oldChild->parentNode() == this);

    // Remove from rendering tree
    if (oldChild->attached())
        detachChild(oldChild);

    if (nextChild)
        nextChild->setPreviousSibling(previousChild);
    if (previousChild)
        previousChild->setNextSibling(nextChild);
    if (m_firstChild == oldChild)
        m_firstChild = nextChild;
    if (m_lastChild == oldChild)
        m_lastChild = previousChild;

    oldChild->setPreviousSibling(0);
    oldChild->setNextSibling(0);
    oldChild->setParentNode(0);

    document().adoptIfNeeded(oldChild);
}
Esempio n. 5
0
void GameObject::detachAllChilds () {
    for (unsigned i = 0; i < children.size (); ++i) {
        if (children[i]->hasChilds ())
            children[i]->detachAllChilds ();
        detachChild (*children[i]);
    }
}
Esempio n. 6
0
void
OCRuler::move(double x, double y)
{
	// Temporarily detach the slider and move it appropriately.
	QWidget *child = detachChild();
	OCDataWidget::move(x, y);
	child->move(int(x) + off_x, int(y) + off_y);
	attachChild(child);
}
void ScenarioPhysicalProperties::setGeometricalCharacteristics(ScenarioGeometricalCharacteristics* geometricalcharacteristics)
{
    if (geometricalcharacteristics != m_geometricalcharacteristics)
    {
        detachChild(m_geometricalcharacteristics);
        m_geometricalcharacteristics = geometricalcharacteristics;
        attachChild(m_geometricalcharacteristics);
    }
}
void ScenarioAerodynamicProperties::setParachuteProperties(ScenarioParachuteProperties* parachuteproperties)
{
    if (parachuteproperties != m_parachuteproperties)
    {
        detachChild(m_parachuteproperties);
        m_parachuteproperties = parachuteproperties;
        attachChild(m_parachuteproperties);
    }
}
void
ScenarioLoiteringTrajectory::setTrajectoryPropagation(ScenarioTrajectoryPropagation* trajectoryPropagation)
{
    if (trajectoryPropagation != m_trajectoryPropagation)
    {
        detachChild(m_trajectoryPropagation);
        m_trajectoryPropagation = trajectoryPropagation;
        attachChild(m_trajectoryPropagation);
    }
}
void ScenarioPhysicalProperties::setPhysicalCharacteristics(ScenarioPhysicalCharacteristics* physicalcharacteristics)
{
    Q_ASSERT(physicalcharacteristics != NULL);
    if (physicalcharacteristics != m_physicalcharacteristics)
    {
        detachChild(m_physicalcharacteristics);
        m_physicalcharacteristics = physicalcharacteristics;
        attachChild(m_physicalcharacteristics);
    }
}
void
ScenarioLoiteringTrajectory::setSimulationParameters(ScenarioSimulationParameters* simulationParameters)
{
    if (simulationParameters != m_simulationParameters)
    {
        detachChild(m_simulationParameters);
        m_simulationParameters = simulationParameters;
        attachChild(m_simulationParameters);
    }
}
void
ScenarioLoiteringTrajectory::setEnvironment(ScenarioEnvironment* environment)
{
    if (environment != m_environment)
    {
        detachChild(m_environment);
        m_environment = environment;
        attachChild(m_environment);
    }
}
Esempio n. 13
0
	void SceneNode::detachChild( SceneNodeSPtr child )
	{
		if ( child )
		{
			detachChild( child->getName() );
		}
		else
		{
			Logger::logWarning( m_name + cuT( " - Can't remove SceneNode - Null pointer given" ) );
		}
	}
Esempio n. 14
0
void GameObject::detachById (const unsigned long long id) {
    if (children.size () > 0)
        for (const ObjectPtr& child : children) {
            if (child->entityInfo.id == id) {
                detachChild (*child);
                break;
            }
            else
                child->detachById (id);
        }                
}
void ScenarioProperties::setPhysicalProperties(ScenarioPhysicalProperties* physicalproperties)
{
    Q_ASSERT(physicalproperties != NULL);
    if (physicalproperties != m_physicalproperties)
    {
        detachChild(m_physicalproperties);
        m_physicalproperties = physicalproperties;

        attachChild(m_physicalproperties);
    }    
}
void ScenarioProperties::setPayloadProperties(ScenarioPayloadProperties* payloadproperties)
{
    Q_ASSERT(payloadproperties != NULL);
    if (payloadproperties != m_payloadproperties)
    {
        detachChild(m_payloadproperties);
        m_payloadproperties = payloadproperties;

        attachChild(m_payloadproperties);
    }
}
void ScenarioProperties::setAerodynamicProperties(ScenarioAerodynamicProperties* aerodynamicproperties)
{
    Q_ASSERT(aerodynamicproperties != NULL);
    if (aerodynamicproperties != m_aerodynamicproperties)
    {
        detachChild(m_aerodynamicproperties);
        m_aerodynamicproperties = aerodynamicproperties;

        attachChild(m_aerodynamicproperties);
    }
}
void ScenarioProperties::setPropulsionProperties(ScenarioPropulsionProperties* propulsionproperties)
{
    Q_ASSERT(propulsionproperties != NULL);
    if (propulsionproperties != m_propulsionproperties)
    {
        detachChild(m_propulsionproperties);
        m_propulsionproperties = propulsionproperties;

        attachChild(m_propulsionproperties);
    }
}
Esempio n. 19
0
bool
OCRuler::resize(double w, double h)
{
	// Temporarily detach the slider and resize it appropriately.
	QWidget *child = detachChild();
	OCWidget::resize(w, h);
	updateSize(int(w), int(h));
	attachChild(child);
	updateGeometry();
	return true;
}
void
ScenarioDesignOverview::setSubsystem(const QString& name,
                                     ScenarioSubsystem* subsystem)
{
    attachChild(subsystem);
    if (m_subsystems.contains(name))
    {
        detachChild(m_subsystems.value(name));
    }
    m_subsystems[name] = subsystem;
}
Esempio n. 21
0
void DemoState::createPlainWindow() {
	detachChild("plainWindow");

	plainWindow = new Window("plainWindow", Vector2(100, 100), Vector2(300, 200), ColourRGBA(ColourRGBA::CYAN));
	plainWindow->setDraggable(true);
	plainWindow->setResizable(true);
	plainWindow->setGradiant(TO_BOTTOM, 4.0f);

	ComboBox* gradiants = new ComboBox("gradiantCombo", Vector2(120, 80), 120);
	gradiants->setOptions(5, "To bottom", "To top", "To left", "To right", "None");
	gradiants->attachChild(new Label("gradLabel", "Gradiant:", 10, Vector2(-55, 10)));
	plainWindow->attachChild(gradiants);
	attachChild(plainWindow);
}
Esempio n. 22
0
  WorkerPool* WorkerPool::execute(Task* _task)
  {
    /// FIXME put in splitting
    front()->run(_task);
    detachChild(front());
    if (front() == nullptr)
      {
	delete this;
	return nullptr;
      }
    else
      {
	return this;
      }
  }
Esempio n. 23
0
void ccHObject::transferChild(ccHObject* child, ccHObject& newParent)
{
	assert(child);

	//remove link from old parent
	int childDependencyFlags = child->getDependencyFlagsWith(this);
	int parentDependencyFlags = getDependencyFlagsWith(child);
	
	detachChild(child); //automatically removes any dependency with this object

	newParent.addChild(child,parentDependencyFlags);
	child->addDependency(&newParent,childDependencyFlags);

	//after a successful transfer, either the parent is 'newParent' or a null pointer
	assert(child->getParent() == &newParent || child->getParent() == 0);
}
Esempio n. 24
0
void DemoState::createImage(const std::string& imagePath) {
	detachChild("demoImage");

	image = new GUIImage("demoImage", imagePath);
	image->setLocalTranslation(Vector2(-503, -363));
	image->setDraggable(true);

	if (hasChild("rgbaWindow")) {
		float r = (rSlider->getSelectedIndex() != 0 ? rSlider->getSelectedIndex() / 100.0f : 0),
			  g = (gSlider->getSelectedIndex() != 0 ? gSlider->getSelectedIndex() / 100.0f : 0),
			  b = (bSlider->getSelectedIndex() != 0 ? bSlider->getSelectedIndex() / 100.0f : 0),
			  a = (aSlider->getSelectedIndex() != 0 ? aSlider->getSelectedIndex() / 100.0f : 0);

		image->setColour(ColourRGBA(r, g, b, a));
	}
	attachChild(image);
}
Esempio n. 25
0
void DemoState::createAnimationWindow() {
	detachChild("animationWindow");

	Window* animWindow = new Window("animationWindow", Vector2(-500, 2), Vector2(368, 358), "images/WINDOW.tga");
	animWindow->setResizable(true);

	// Attaching the subtitle as a child of title gives weird results... strange
	animWindow->attachChild(new Label("aw_Title", "Animation", 14, Vector2(15, 165)));
	animWindow->attachChild(new Label("aw_Subtitle", "Configure the DOOM guy!", 9, Vector2(15, 150)));

	GUIImage* transArea = new GUIImage("transArea", "images/SCROLL_AREA.tga", Vector2(148, 148));
	transArea->setLocalTranslation(Vector2(110, 100));
	animWindow->attachChild(transArea);

	// Create the Doom guy amimation
	doomGuy = new Animation("DOOMGUY!", "demo/doomguy.tga", 64, new int[6]{ 3, 3, 3, 3, 3, 6 });
	doomGuy->setLocalTranslation(Vector2(10, 10));
	doomGuy->resize(128.0f, 128.0f);
	doomGuy->setUnordered(true);
	transArea->attachChild(doomGuy);

	// Unordered checkbox
	Checkbox* checkUnordered = new Checkbox("animation_checkUnordered", Vector2(60, 40), true, TICK);
	checkUnordered->setToolTip("If ticked, the animation plays in a random order.");
	checkUnordered->attachChild(new Label("unordered_label", "Unordered", 10, Vector2(15, 9)));
	animWindow->attachChild(checkUnordered);

	// Looping checkbox
	Checkbox* checkLooping = new Checkbox("animation_checkLoops", Vector2(60, 70), true, CROSS);
	checkUnordered->setToolTip("If ticked, plays in a random order.");
	checkLooping->attachChild(new Label("loop_label", "Loops", 10, Vector2(15, 9)));
	animWindow->attachChild(checkLooping);

	// Animation slider
	Slider* animationSlider = new Slider("animSlider", Vector2(180, 130), 230, VERTICAL);
	animationSlider->setStepCount(5);
	animWindow->attachChild(animationSlider);

	// Speed slider
	Slider* animationSpeedSlider = new Slider("animSpeed", Vector2(215, 130), 230, VERTICAL);
	animationSpeedSlider->setIndex(50); // 500ms by default
	animWindow->attachChild(animationSpeedSlider);

	// Attach the window
	attachChild(animWindow);
}
Esempio n. 26
0
//=====================================transferChild===============================================================//
void ccHObject::transferChild(ccHObject* child, ccHObject& newParent)
{
	assert(child);

	//remove link from old parent //从原先的父亲物体中删除依赖关系
	int childDependencyFlags = child->getDependencyFlagsWith(this); //获取子物体对父物体的依赖关系
	int parentDependencyFlags = getDependencyFlagsWith(child); //获取父亲物体对子物体的依赖关系
	
	//automatically removes any dependency with this object //只是删除与该物体的依赖关系//两两之间
	detachChild(child); 

	//新的父物体添加孩子物体 //依赖关系也同时转移
	newParent.addChild(child,parentDependencyFlags);
	
	//子物体添加依赖关系
	child->addDependency(&newParent,childDependencyFlags);

	//after a successful transfer, either the parent is 'newParent' or a null pointer
	assert(child->getParent() == &newParent || child->getParent() == 0);
}
Esempio n. 27
0
void DemoState::createEffectsWindow() {
	detachChild("effectsWindow"); // the pointer, p_effectsWindow, will be invalid if the window has been detached

	p_effectsWindow = new Window("effectsWindow", Vector2(), Vector2(432, 306), "images/WINDOW.tga");
	p_effectsWindow->setResizable(true);

	p_effectsWindow->attachChild(new Label("effectsWindow_TitleLabel", "Effects", 14, Vector2(15, 140)));
	p_effectsWindow->attachChild(new Label("effectsWindow_SubtitleLabel", "Some effects to play with.", 9, Vector2(15, 125)));

	Button* resetButton = new Button("resetEffects", Vector2(160, 25), Vector2(), "Reset");
	resetButton->assignImages("images/BUTTON.tga", "images/BUTTON_HOVER.tga", "images/BUTTON_PRESSED.tga");
	resetButton->getLabel()->translate(15, 0);

	p_effectsWindow->attachChild(resetButton);

	// Speed slider
	Slider* speedSlider = new Slider("effects_speedSlider", Vector2(140, 70), 230, HORIZONTAL);
	speedSlider->setIndex(50); // Defaults 1.0f
	speedSlider->attachChild(new Label("effects_speedSliderLabel", "Speed:", 10, ColourRGBA(ColourRGBA::WHITE), Vector2(-38, 12)));
	p_effectsWindow->attachChild(speedSlider);

	// "On hover off" effect
	onHoverOffEffect = createEffectsComboBox("setOnHoverOffEffect", Vector2(140, 115));
	onHoverOffEffect->attachChild(new Label("onHoverOffLabel", "On leave:", 10, ColourRGBA(ColourRGBA::WHITE), Vector2(-52, 10)));
	p_effectsWindow->attachChild(onHoverOffEffect);

	// "On hover" effect
	onHoverEffect = createEffectsComboBox("setOnHoverEffect", Vector2(140, 155));
	onHoverEffect->attachChild(new Label("onHoverLabel", "On hover:", 10, ColourRGBA(ColourRGBA::WHITE), Vector2(-55, 10)));
	p_effectsWindow->attachChild(onHoverEffect);

	// "General" effect
	generalEffect = createEffectsComboBox("setGeneralEffect", Vector2(140, 195));
	generalEffect->attachChild(new Label("generalLabel", "General:", 10, ColourRGBA(ColourRGBA::WHITE), Vector2(-50, 10)));
	p_effectsWindow->attachChild(generalEffect);
	
	effectSpeed = 2.0f;
	attachChild(p_effectsWindow);
}
Esempio n. 28
0
void iAModuleInterface::attachedChildClosed()
{
	MdiChild * sender = dynamic_cast<MdiChild*> (QObject::sender());
	detachChild(sender);
}
Esempio n. 29
0
void iAModuleInterface::detach()
{
	iAModuleAttachmentToChild * attachment= dynamic_cast<iAModuleAttachmentToChild*> (QObject::sender());
	detachChild(attachment->GetMdiChild());
}