Exemplo n.º 1
0
UIStaticText::UIStaticText(const Rect &rect, bool rectInAbsoluteCoordinates/* = FALSE*/)
:	UIControl(rect, rectInAbsoluteCoordinates)
    , shadowOffset(0, 0)
{
    SetInputEnabled(false, false);
    textBlock = TextBlock::Create(Vector2(rect.dx, rect.dy));
    background->SetAlign(ALIGN_HCENTER | ALIGN_VCENTER);
    background->SetPerPixelAccuracyType(UIControlBackground::PER_PIXEL_ACCURACY_ENABLED);

    textBg = new UIControlBackground();
    textBg->SetDrawType(UIControlBackground::DRAW_ALIGNED);

    shadowBg = new UIControlBackground();
    shadowBg->SetDrawType(UIControlBackground::DRAW_ALIGNED);

    SetTextColor(Color::White);
    SetShadowColor(Color::Black);
    SetTextAlign(ALIGN_HCENTER | ALIGN_VCENTER);
}
Exemplo n.º 2
0
BOOL QFrame::Create( HWND hWndParent /*= ::GetAncestor(::GetActiveWindow(),GA_ROOT)*/, 
	UINT nStyle/*=WS_POPUP|WS_VISIBLE*/,UINT nStyleEx/*=0*/, 
	UINT nDecoratedStyle /*= WS_QEX_WNDSHADOW|WS_QEX_ROUNDCONNER*/,
    LPCRECT rcWnd/* = NULL*/)
{
	ATLASSERT(!IsWindow());
	_RemoveFlag(nStyle,WS_CHILD);     // QFrame 不能用于创建子窗口
	_AddFlag(nStyle,WS_CLIPCHILDREN); // 防止内嵌子HWND窗口时闪烁
    ModifyQEXStyle(nDecoratedStyle, 0);

    CRect rc(0, 0, 0, 0);
    if (NULL != rcWnd)
    {
        rc = *rcWnd;
    }

	if (QView::Create(hWndParent, rc, NULL, nStyle, nStyleEx) != NULL)
	{	
        // 看下都具有什么系统的按钮
        if (GetCtrl("#wc-caption [xrole=\"MINIMAZE\"]").is_valid())
        {
            ModifyStyle(0,WS_MINIMIZEBOX);
        }
        if (GetCtrl("#wc-caption [xrole=\"MAXIMAZE\"]").is_valid())
        {
            ModifyStyle(0,WS_MAXIMIZEBOX);
        }

		if ( _HasFlag(QUIGetApp()->GetTopFrameStyle(), WS_QEX_WNDSHADOW) 
                && HasQEXStyle(WS_QEX_WNDSHADOW) )
		{
			// 使用阴影美化窗体
            SetShadowPosition(0,0);
            SetShadowSharpness(4);
            SetShadowSize(3);
            SetShadowColor(RGB(80, 80, 80));
            wnd_shadow_.Create(GetSafeHwnd());
		}
        return TRUE;
	}
	return FALSE;
}
Exemplo n.º 3
0
void ApplyColorsToWindow(FXWindow* win) {
    if (win) {
    for (FXWindow*w=win; w; w=w->getNext()) {
      SetBackColor(w);
      SetBaseColor(w);
      SetTextColor(w);
      SetSelBackColor(w);
      SetSelTextColor(w);
      SetHiliteColor(w);
      SetShadowColor(w);
      SetBorderColor(w);
      SetBoxColor(w);
      SetArrowColor(w);
      SetCheckColor(w);
      SetDiskColor(w);
      SetCursorColor(w);
      w->update();
      ApplyColorsToWindow(w->getFirst());
    }
  }
}
Exemplo n.º 4
0
void UIStaticText::LoadFromYamlNode(YamlNode * node, UIYamlLoader * loader)
{
	UIControl::LoadFromYamlNode(node, loader);
	
	YamlNode * fontNode = node->Get("font");
	YamlNode * textNode = node->Get("text");
	YamlNode * multilineNode = node->Get("multiline");
    YamlNode * multilineBySymbolNode = node->Get("multilineBySymbol");
    YamlNode * fittingNode = node->Get("fitting");
	YamlNode * textColorNode = node->Get("textcolor");
	YamlNode * shadowColorNode = node->Get("shadowcolor");
	YamlNode * shadowOffsetNode = node->Get("shadowoffset");

	if (fontNode)
	{
		const String & fontName = fontNode->AsString();
		Font * font = loader->GetFontByName(fontName);
		SetFont(font);
	}

	bool multiline = loader->GetBoolFromYamlNode(multilineNode, false);
    bool multilineBySymbol = loader->GetBoolFromYamlNode(multilineBySymbolNode, false);
	SetMultiline(multiline, multilineBySymbol);
	
    if(fittingNode)
    {
        int32 fittingArray[] = {TextBlock::FITTING_DISABLED, TextBlock::FITTING_ENLARGE, 
                                TextBlock::FITTING_REDUCE, TextBlock::FITTING_POINTS};
		String fittingValues[] = {"Disabled", "Enlarge", "Reduce", "Points"};

		const String & fittinOption = fittingNode->AsString();
        
        int32 fittingType = 0;
        for(int32 i = 0 ; i < 4; ++i)
        {
            size_t find = fittinOption.find(fittingValues[i]);
            if(find != fittinOption.npos)
            {
                fittingType |= fittingArray[i];
            }
        }

        SetFittingOption(fittingType);
    }
    
	if (textNode)
	{
		SetText(LocalizedString(textNode->AsWString()));
	}

	if(textColorNode)
	{
		Vector4 c = textColorNode->AsVector4();
		SetTextColor(Color(c.x, c.y, c.z, c.w));
	}

	if(shadowColorNode)
	{
		Vector4 c = shadowColorNode->AsVector4();
		SetShadowColor(Color(c.x, c.y, c.z, c.w));
	}

	if(shadowOffsetNode)
	{
		SetShadowOffset(shadowOffsetNode->AsVector2());
	}

	YamlNode * alignNode = node->Get("align");
	SetAlign(loader->GetAlignFromYamlNode(alignNode)); // NULL is also OK here.
}
Exemplo n.º 5
0
void UIStaticText::LoadFromYamlNode(const YamlNode * node, UIYamlLoader * loader)
{
    UIControl::LoadFromYamlNode(node, loader);

    const YamlNode * fontNode = node->Get("font");
    const YamlNode * textNode = node->Get("text");
    const YamlNode * multilineNode = node->Get("multiline");
    const YamlNode * multilineBySymbolNode = node->Get("multilineBySymbol");
    const YamlNode * fittingNode = node->Get("fitting");
    const YamlNode * textColorNode = node->Get("textcolor");
    const YamlNode * shadowColorNode = node->Get("shadowcolor");
    const YamlNode * shadowOffsetNode = node->Get("shadowoffset");
    const YamlNode * textAlignNode = node->Get("textalign");
    const YamlNode * textColorInheritTypeNode = node->Get("textcolorInheritType");
    const YamlNode * shadowColorInheritTypeNode = node->Get("shadowcolorInheritType");

    if (fontNode)
    {
        const String & fontName = fontNode->AsString();
        Font * font = loader->GetFontByName(fontName);
        SetFont(font);
    }

    bool multiline = loader->GetBoolFromYamlNode(multilineNode, false);
    bool multilineBySymbol = loader->GetBoolFromYamlNode(multilineBySymbolNode, false);
    SetMultiline(multiline, multilineBySymbol);

    if(fittingNode)
    {
        SetFittingOption(loader->GetFittingOptionFromYamlNode(fittingNode));
    }

    if(textColorNode)
    {
        SetTextColor(textColorNode->AsColor());
    }

    if(shadowColorNode)
    {
        SetShadowColor(shadowColorNode->AsColor());
    }

    if(shadowOffsetNode)
    {
        SetShadowOffset(shadowOffsetNode->AsVector2());
    }

    if (textAlignNode)
    {
        SetTextAlign(loader->GetAlignFromYamlNode(textAlignNode));
    }

    if (textNode)
    {
        SetText(LocalizedString(textNode->AsWString()));
    }

    if (textColorInheritTypeNode)
    {
        GetTextBackground()->SetColorInheritType((UIControlBackground::eColorInheritType)loader->GetColorInheritTypeFromNode(textColorInheritTypeNode));
    }

    if (shadowColorInheritTypeNode)
    {
        GetShadowBackground()->SetColorInheritType((UIControlBackground::eColorInheritType)loader->GetColorInheritTypeFromNode(shadowColorInheritTypeNode));
    }
}
Exemplo n.º 6
0
void QtMainWindow::SetupMainMenu()
{
    QtMainWindowHandler *actionHandler = QtMainWindowHandler::Instance();

    QAction *actionSceneGraph = ui->dockSceneGraph->toggleViewAction();
    QAction *actionProperties = ui->dockProperties->toggleViewAction();
    QAction *actionLibrary = ui->dockLibrary->toggleViewAction();
	QAction *actionReferences = ui->dockReferences->toggleViewAction();
    QAction *actionToolBar = ui->mainToolBar->toggleViewAction();
    QAction *actionCustomColors = ui->dockCustomColors->toggleViewAction();
	QAction *actionVisibilityCheckTool = ui->dockVisibilityTool->toggleViewAction();
	QAction *actionHangingObjects = ui->dockHangingObjects->toggleViewAction();
	QAction *actionSetSwitchIndex = ui->dockSetSwitchIndex->toggleViewAction();
	QAction *actionParticleEditor = ui->dockParticleEditor->toggleViewAction();
	QAction *actionParticleEditorTimeLine = ui->dockParticleEditorTimeLine->toggleViewAction();
    QAction *actionSceneInfo = ui->dockSceneInfo->toggleViewAction();
	QAction *actionSceneTree = ui->dockSceneTree->toggleViewAction();
	QAction *actionConsole = ui->dockConsole->toggleViewAction();

    ui->menuView->addAction(actionSceneInfo);
    ui->menuView->addAction(actionToolBar);
    ui->menuView->addAction(actionLibrary);
    ui->menuView->addAction(actionProperties);
	ui->menuView->addAction(actionReferences);
    ui->menuView->addAction(actionSceneGraph);
    ui->menuView->addAction(actionCustomColors);
	ui->menuView->addAction(actionVisibilityCheckTool);
	ui->menuView->addAction(actionParticleEditor);
	ui->menuView->addAction(actionParticleEditorTimeLine);
	ui->menuView->addAction(actionHangingObjects);
	ui->menuView->addAction(actionSetSwitchIndex);
	ui->menuView->addAction(actionSceneTree);
	ui->menuView->addAction(actionConsole);

    ui->menuView->insertSeparator(ui->actionRestoreViews);
    ui->menuView->insertSeparator(actionToolBar);
    ui->menuView->insertSeparator(actionProperties);


    actionHandler->RegisterDockActions(ResourceEditor::HIDABLEWIDGET_COUNT,
                                       actionSceneGraph,
                                       actionProperties, actionLibrary, actionToolBar,
									   actionReferences, actionCustomColors, actionVisibilityCheckTool, 
									   actionParticleEditor, actionHangingObjects, actionSetSwitchIndex, actionSceneInfo);


    ui->dockProperties->hide();
    
    
    //CreateNode
    actionHandler->RegisterNodeActions(ResourceEditor::NODE_COUNT,
                                       ui->actionLandscape,
                                       ui->actionLight,
                                       ui->actionServiceNode,
                                       ui->actionCamera,
                                       ui->actionImposter,
                                       ui->actionParticleEmitter,
                                       ui->actionUserNode,
									   ui->actionSwitchNode,
									   ui->actionParticleEffectNode
                                       );
    connect(ui->menuCreateNode, SIGNAL(triggered(QAction *)), actionHandler, SLOT(CreateNodeTriggered(QAction *)));

    
    //TODO: need enable flag in future
    ui->actionHeightMapEditor->setCheckable(false);
    ui->actionTileMapEditor->setCheckable(false);
    //ENDOFTODO
    
    //Viewport
    connect(ui->menuViewPort, SIGNAL(triggered(QAction *)), actionHandler, SLOT(ViewportTriggered(QAction *)));
    actionHandler->RegisterViewportActions(ResourceEditor::VIEWPORT_COUNT,
                                           ui->actionIPhone,
                                           ui->actionRetina,
                                           ui->actionIPad,
                                           ui->actionDefault
                                       );

	//Edit Options
	connect(ui->actionUndo, SIGNAL(triggered()), actionHandler, SLOT(UndoAction()));
	connect(ui->actionRedo, SIGNAL(triggered()), actionHandler, SLOT(RedoAction()));
	actionHandler->RegisterEditActions(ResourceEditor::EDIT_COUNT, ui->actionUndo, ui->actionRedo);

    //View Options
    connect(ui->actionShowNotPassableLandscape, SIGNAL(triggered()), actionHandler, SLOT(ToggleNotPassableTerrain()));

    ui->actionReloadPoverVRIOS->setData(GPU_POWERVR_IOS);
    ui->actionReloadPoverVRAndroid->setData(GPU_POWERVR_ANDROID);
    ui->actionReloadTegra->setData(GPU_TEGRA);
    ui->actionReloadMali->setData(GPU_MALI);
    ui->actionReloadAdreno->setData(GPU_ADRENO);
    ui->actionReloadPNG->setData(GPU_UNKNOWN);
	connect(ui->menuTexturesForGPU, SIGNAL(triggered(QAction *)), actionHandler, SLOT(ReloadMenuTriggered(QAction *)));
    actionHandler->RegisterTextureGPUActions(GPU_FAMILY_COUNT + 1, ui->actionReloadPoverVRIOS, ui->actionReloadPoverVRAndroid,
                                             ui->actionReloadTegra, ui->actionReloadMali, ui->actionReloadAdreno, ui->actionReloadPNG);

	//Modifications Options
	connect(ui->actionModifySelect, SIGNAL(triggered()), actionHandler, SLOT(ModificationSelect()));
	connect(ui->actionModifyMove, SIGNAL(triggered()), actionHandler, SLOT(ModificationMove()));
	connect(ui->actionModifyRotate, SIGNAL(triggered()), actionHandler, SLOT(ModificationRotate()));
	connect(ui->actionModifyScale, SIGNAL(triggered()), actionHandler, SLOT(ModificationScale()));
	connect(ui->actionModifyPlaceOnLandscape, SIGNAL(triggered()), actionHandler, SLOT(ModificationPlaceOnLand()));
	connect(ui->actionModifySnapToLandscape, SIGNAL(triggered()), actionHandler, SLOT(ModificationSnapToLand()));
	connect(ui->actionModifyReset, SIGNAL(triggered()), actionHandler, SLOT(OnResetModification()));

	actionHandler->RegisterModificationActions(ResourceEditor::MODIFY_COUNT,
											   ui->actionModifySelect,
											   ui->actionModifyMove,
											   ui->actionModifyRotate,
											   ui->actionModifyScale,
											   ui->actionModifyPlaceOnLandscape,
											   ui->actionModifySnapToLandscape);

	//Reference
	connect(ui->applyReferenceSuffixButton, SIGNAL(clicked()), this, SLOT(ApplyReferenceNodeSuffix()));
	
	connect(ui->actionAddActionComponent, SIGNAL(triggered()), actionHandler, SLOT(AddActionComponent()));
	connect(ui->actionRemoveActionComponent, SIGNAL(triggered()), actionHandler, SLOT(RemoveActionComponent()));

	connect(ui->actionSetShadowColor, SIGNAL(triggered()), actionHandler, SLOT(SetShadowColor()));

	connect(ui->menuDynamicShadowBlendMode, SIGNAL(aboutToShow()), this, SLOT(MenuDynamicShadowBlendTriggered()));
	connect(ui->actionDynamicBlendModeAlpha, SIGNAL(triggered()), actionHandler, SLOT(SetShadowBlendAlpha()));
	connect(ui->actionDynamicBlendModeMultiply, SIGNAL(triggered()), actionHandler, SLOT(SetShadowBlendMultiply()));

	actionHandler->MenuViewOptionsWillShow();
}
Exemplo n.º 7
0
DARKSDK void GFSetShadowColor ( int iRed, int iGreen, int iBlue, int iAlphaLevel )
{
	SetShadowColor (  iRed,  iGreen,  iBlue,  iAlphaLevel );
}
Exemplo n.º 8
0
void UITextField::LoadFromYamlNode(YamlNode * node, UIYamlLoader * loader)
{
	UIControl::LoadFromYamlNode(node, loader);

    YamlNode * textNode = node->Get("text");
	if (textNode)
    {
        SetText(textNode->AsWString());
    }

    YamlNode * fontNode = node->Get("font");
    if (fontNode)
    {
        Font * font = loader->GetFontByName(fontNode->AsString());
        if (font)
            SetFont(font);
    }

    if(staticText)
    {
        staticText->SetRect(Rect(0,0,GetRect().dx, GetRect().dy));
		
		YamlNode * textColorNode = node->Get("textcolor");
		YamlNode * shadowColorNode = node->Get("shadowcolor");
		YamlNode * shadowOffsetNode = node->Get("shadowoffset");
		YamlNode * textAlignNode = node->Get("textalign");
		
		if(textColorNode)
		{
			Vector4 c = textColorNode->AsVector4();
			SetTextColor(Color(c.x, c.y, c.z, c.w));
		}

		if(shadowColorNode)
		{
			Vector4 c = shadowColorNode->AsVector4();
			SetShadowColor(Color(c.x, c.y, c.z, c.w));
		}

		if(shadowOffsetNode)
		{
			SetShadowOffset(shadowOffsetNode->AsVector2());
		}

		if(textAlignNode)
		{
			SetTextAlign(loader->GetAlignFromYamlNode(textAlignNode));
		}
    }
    //InitAfterYaml();

#if 0
	YamlNode * orientNode = node->Get("orientation");
	if (orientNode)
	{
		if (orientNode->AsString() == "Vertical")
			orientation = ORIENTATION_VERTICAL;
		else if (orientNode->AsString() == "Horizontal")
			orientation = ORIENTATION_HORIZONTAL;
	}



		// TODO
	InitAfterYaml();
#endif
}