void CEditorRoot::ApplySchemeSettings(vgui::IScheme *pScheme)
{
	BaseClass::ApplySchemeSettings(pScheme);

	SetPaintBackgroundEnabled(true);
	SetPaintBorderEnabled(false);
	SetPaintEnabled(true);
	SetCloseButtonVisible(false);
	SetSizeable(false);
	SetMoveable(false);

	InitColors();

	SetTitle( "", true );
	SetTitleBarVisible( false );
	m_pLabelTitle->SetText( GetEditorTitle() );
	m_pLabelTitle->SetFont( pScheme->GetFont( "UiBold", false ) );

	SetPaintBackgroundType( 0 );
	OnShaderNameChanged();
	GenerateFonts(pScheme);
}
CShaderPrecache::CShaderPrecache( vgui::Panel *parent, CNodeView *nodeview ) : BaseClass( parent, nodeview, "shaderpreview" )
{
	m_pPanelList_Shader = new PanelListPanel( this, "shaderlist" );
	m_pPanelList_Shader->SetFirstColumnWidth( 300 );

	m_pCheck_ReloadCache = new CheckButton( this, "check_reloadcache", "Reload cache on close" );

	LoadControlSettings("shadereditorui/vgui/shadereditor_shaderprecache.res");

	SetTitle("Shader precache",true);

	SetAutoDelete( true );
	SetSizeable(false);

	int sx, sy;
	surface()->GetScreenSize( sx, sy );
	SetSize( 480, sy * 0.8f );

	DoModal();

	LoadList();
}
Exemplo n.º 3
0
MainMenu::MainMenu(vgui::Panel* parent) : BaseClass(NULL, "MainMenu")
{
	vgui::HScheme Scheme = vgui::scheme()->LoadSchemeFromFile("resource2/schememainmenu.res", "SchemeMainMenu");
	SetScheme(Scheme);

	SetProportional(false);
	SetPaintBorderEnabled(false);
	SetPaintBackgroundEnabled(false);
	SetDeleteSelfOnClose(true);
	SetSizeable(false);
	SetMoveable(false);
	SetCloseButtonVisible(false);
	SetMenuButtonVisible(false);
	Activate();

	m_bFocused = true;

	m_logoLeft = GameUI2().GetLocalizedString("#GameUI2_LogoLeft");
	m_logoRight = GameUI2().GetLocalizedString("#GameUI2_LogoRight");

	CreateMenu("resource2/mainmenu.res");
}
CDialog_PPEPrecache::CDialog_PPEPrecache( Panel *parent ) : BaseClass( parent, NULL, "dialog_precache_ppeffect" )
{
	SetSizeable( false );
	SetVisible( true );

	SetMouseInputEnabled( true );
	SetKeyBoardInputEnabled( true );
	Activate();

	m_pList_Effects = new PanelListPanel( this, "effect_list" );
	m_pList_Effects->SetNumColumns( 4 );
	m_pList_Effects->SetFirstColumnWidth( 200 );

	FillList();

	LoadControlSettings( "shadereditorui/vgui/dialog_ppe_precache_list.res" );

	SetTitle( "Post processing precache", true );

	DoModal();
	SetDeleteSelfOnClose( true );
	MoveToCenterOfScreen();
}
CDialog_NewCanvas::CDialog_NewCanvas( CNodeView *n, Panel *parent ) : Frame( parent, "newshader" )
{
	pNodeView = n;

	SetSizeable( false );
	SetVisible( true );

	SetMouseInputEnabled( true );
	SetKeyBoardInputEnabled( true );
	SetDeleteSelfOnClose( true );
	Activate();

	DoModal();

	m_pRadBut_Sm2 = new RadioButton( this, "rad_1", "SM 2.0b" );
	m_pRadBut_Sm3 = new RadioButton( this, "rad_2", "SM 3.0" );
	m_pRadBut_Sm2->SetSubTabPosition( 1 );
	m_pRadBut_Sm3->SetSubTabPosition( 1 );
	m_pRadBut_Sm3->SetSelected( true );

	LoadControlSettings("shadereditorui/vgui/dialog_newcanvas.res");

	SetTitle( "New shader", true );
}
//
//	Name: CGUIListenServer
//	Author: Hekar Khani
//	Description: GUI Panel to replace Valve's CreateServer
//	Notes: 
//
CGUIListenServer::CGUIListenServer( vgui::VPANEL parent ) :
	BaseClass( NULL, "GUIListenServer" )
{	
	SetParent( parent );
	vgui::HScheme scheme = vgui::scheme()->LoadSchemeFromFile( "resource/SourceScheme.res", "SourceScheme" );
	SetScheme( scheme );
	LoadControlSettings( "Resource/UI/ListenServer.res" );

	SetVisible( false );
	SetSizeable( false );
	SetMoveable( false );
	SetSmallCaption( true );

	SetMaximizeButtonVisible( false );
	SetMinimizeButtonVisible( false );
	SetCloseButtonVisible( false );
	
	SetMenuButtonResponsive( true );
	SetDeleteSelfOnClose( false );

	GetPropertySheet()->SetSmallTabs( false );

	AddPage( new CPanelListenMain( this ), "Main" );
}
CCode_Editor::CCode_Editor( CSheet_Base *parent, const char *pName, CSmartText::CodeEditMode_t mode ) : BaseClass( parent, pName )
{
	m_iMode = mode;

	Activate();
	SetVisible( true );

	SetPaintBackgroundEnabled(true);
	SetPaintEnabled(true);

	SetSizeable(true);
	SetMoveable(true);
	SetMinimumSize( 500, 400 );

	SetDeleteSelfOnClose( true );

	m_iLastAppliedCodeIndex = 0;

	m_pCodeWindow = new CSmartText( this, "codewindow", mode );
	m_pCodeWindow->AddActionSignalTarget( this );

	/*
	TextEntry *pT = new TextEntry( this, "codewindow" );
	pT->SetMultiline( true );
	pT->SetEditable( true );
	pT->SetCatchEnterKey( true );
	pT->SetVerticalScrollbar( true );
	*/

	LoadControlSettings( "shadereditorui/vgui/code_editor_Window.res" );

	UpdateButtonEnabled( true, true );
	SetCloseButtonVisible(false);

	int w,t;
	surface()->GetScreenSize( w, t );
	w *= 0.75f;
	t *= 0.75f;
	SetSize( max( w, 500 ), max( t, 400 ) );
	
	//SetKeyBoardInputEnabled( false );
	//SetMouseInputEnabled( true );

	//SetTitle( "Editor", true );
	SetTitle( "", false );

	Panel *pButton = FindChildByName( "button_save" );
	if ( pButton )
		pButton->SetKeyBoardInputEnabled( false );

	pButton = FindChildByName( "button_apply" );
	if ( pButton )
		pButton->SetKeyBoardInputEnabled( false );
	pButton = FindChildByName( "button_cancel" );
	if ( pButton )
		pButton->SetKeyBoardInputEnabled( false );

	DoModal();

	int rx, ry, rsx, rsy;
	if ( pEditorRoot->GetCodeEditorBounds( rx, ry, rsx, rsy ) )
		SetBounds( rx, ry, rsx, rsy );
	else
		MoveToCenterOfScreen();
}
Exemplo n.º 8
0
CDialog_GeneralConfig::CDialog_GeneralConfig( CNodeView *n, Panel *parent ) : Frame( parent, "_config" )
{
	pNodeView = n;
	GenericShaderData *setup = &n->GetDataForModify();

	SetSizeable( false );
	SetVisible( true );

	SetMouseInputEnabled( true );
	SetKeyBoardInputEnabled( true );
	SetAutoDelete( true );
	Activate();

	m_pRadBut_Sm2 = new RadioButton( this, "rad_1", "SM 2.0b" );
	m_pRadBut_Sm3 = new RadioButton( this, "rad_2", "SM 3.0" );
	m_pRadBut_Sm2->SetSubTabPosition( 1 );
	m_pRadBut_Sm3->SetSubTabPosition( 1 );

	m_pCBut_DepthTest = new CheckButton( this, "depthtest", "Depth testing" );
	m_pCBut_DepthWrite = new CheckButton( this, "depthwrite", "Depth writing" );
	m_pCBut_sRGBWrite = new CheckButton( this, "srgbwrite", "write sRGB" );

	m_pCBox_AlphaBlend = new ComboBox( this, "alphablend", numAblendModes, false );
	
	for ( int i = 0; i < numAblendModes; i++ )
		m_pCBox_AlphaBlend->AddItem( blendNames[i], NULL );

	Assert( numAblendModes == m_pCBox_AlphaBlend->GetItemCount() );

	m_pCBox_Cullmode = new ComboBox( this, "cullmode", 5, false );
	m_pCBox_Cullmode->AddItem( "CW", NULL );
	m_pCBox_Cullmode->AddItem( "CCW", NULL );
	//m_pCBox_Cullmode->AddItem( "Double", NULL );
	m_pCBox_Cullmode->AddItem( "Off", NULL );

	LoadControlSettings("shadereditorui/vgui/dialog_config.res");

	if ( setup->shader->iShaderModel == SM_30 )
		m_pRadBut_Sm3->SetSelected( true );
	else
		m_pRadBut_Sm2->SetSelected( true );

	m_pCBut_DepthTest->SetSelected( setup->shader->iDepthtestmode == DEPTHTEST_NORMAL );
	m_pCBut_DepthWrite->SetSelected( setup->shader->iDepthwritemode == DEPTHWRITE_NORMAL );
	m_pCBox_Cullmode->ActivateItem( setup->shader->iCullmode );
	m_pCBut_sRGBWrite->SetSelected( setup->shader->bsRGBWrite );

	for ( int i = 0; i < numAblendModes; i++ )
	{
		if ( blendIDx[i] == setup->shader->iAlphablendmode )
		{
			m_pCBox_AlphaBlend->ActivateItem( i );
			break;
		}
	}

	SetTitle( "Shader settings", true );


	DoModal();

	SetDeleteSelfOnClose( true );
}
Exemplo n.º 9
0
//-----------------------------------------------------------------------------
// Purpose: Constructor
//-----------------------------------------------------------------------------
CBuildMenu::CBuildMenu(IViewPort *pViewPort) : Frame(NULL, PANEL_BUILD )
{
	gBuildMenu = this;

	m_pViewPort = pViewPort;
	m_iJumpKey = -1; // this is looked up in Activate()
//	m_iScoreBoardKey = -1; // this is looked up in Activate()

	// initialize dialog
	SetTitle("Spawn Menu", true);

	// load the new scheme early!!
	scheme = vgui::scheme()->LoadSchemeFromFile("resource/ZombieMaster.res", "ZombieMaster");
	SetScheme(scheme);
	SetSizeable(false);

	m_hLargeFont = vgui::scheme()->GetIScheme(scheme)->GetFont("Trebuchet18", true);
	m_hMediumFont = vgui::scheme()->GetIScheme(scheme)->GetFont("Trebuchet16", true);

	SetProportional(false);

	LoadControlSettings("Resource/UI/BuildMenu.res");

	vgui::ivgui()->AddTickSignal(GetVPanel(), 150);

	//TGB: moved here because the .res seemed to override it
	SetMoveable(true);
	InvalidateLayout();

	//we fetch a bunch of pointers to various elements here so we can alter them quickly and easily
	info_image = dynamic_cast<vgui::ImagePanel*>(FindChildByName("ZombieImage"));

	info_rescost = dynamic_cast<vgui::Label*>(FindChildByName("CostRes"));
	info_popcost = dynamic_cast<vgui::Label*>(FindChildByName("CostPop"));
	info_description = dynamic_cast<vgui::Label*>(FindChildByName("LabelDescription"));

	removelast =  dynamic_cast<vgui::Button*>(FindChildByName("RemoveLast"));
	clearqueue =  dynamic_cast<vgui::Button*>(FindChildByName("ClearQueue"));

	//prepare a list of our spawn buttons etc so we can easily iterate over them
	for (int i=0; i < TYPE_TOTAL; i++)
	{
		char buffer[25];
		Q_snprintf(buffer, sizeof(buffer), "z_spawn1_%02d", i);
		spawnbuttons[i] = FindChildByName(buffer);

		Q_snprintf(buffer, sizeof(buffer), "z_spawn5_%02d", i);
		spawnfives[i] = FindChildByName(buffer);

		zombieimages[i] = vgui::scheme()->GetImage(TypeToImage[i], true);
		zombiequeue[i] = vgui::scheme()->GetImage(TypeToQueueImage[i], false);
	
	}
	

	KeyValues *kv = new KeyValues("zombiedesc.res");
	if  ( kv->LoadFromFile( (IBaseFileSystem*)filesystem, "resource/zombiedesc.res", "MOD" ) )
	{
		//braaaaaaah, char juggling is pain

		const char *temp = kv->GetString("shambler", "Shambler");
		int length = 128;
		char *saved = new char[length];
		Q_strncpy(saved, temp, strlen(temp) + 1);
		zombiedescriptions[TYPE_SHAMBLER] = saved;

		temp = kv->GetString("banshee", "Banshee");
		saved = new char[length];
		Q_strncpy(saved, temp, strlen(temp) + 1);
		zombiedescriptions[TYPE_BANSHEE] = saved;

		temp = kv->GetString("hulk", "Hulk");
		saved = new char[length];
		Q_strncpy(saved, temp, strlen(temp) + 1);
		zombiedescriptions[TYPE_HULK] = saved;

		temp = kv->GetString("drifter", "Drifter");
		saved = new char[length];
		Q_strncpy(saved, temp, strlen(temp) + 1);
		zombiedescriptions[TYPE_DRIFTER] = saved;

		temp = kv->GetString("immolator", "Immolator");
		saved = new char[length];
		Q_strncpy(saved, temp, strlen(temp) + 1);
		zombiedescriptions[TYPE_IMMOLATOR] = saved;
	}
	//will delete its child keys as well
	kv->deleteThis();

	for (int i=0; i < BM_QUEUE_SIZE; i++)
	{
		char buffer[10];
		Q_snprintf(buffer, sizeof(buffer), "queue%02d", i);
		queueimages[i] = dynamic_cast<vgui::ImagePanel*>(FindChildByName(buffer));
	}
}