Animated Menu Background/menu background.h: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (Need or CMaterialReference not work)
m (→‎top: clean up, added deadend tag)
Line 1: Line 1:
{{Dead end|date=January 2024}}
<source lang=cpp>
<source lang=cpp>
//========= Copyright Jorge "BSVino" Rodriguez, All rights reserved. ============//
//========= Copyright Jorge "BSVino" Rodriguez, All rights reserved. ============//
Line 64: Line 66:


#endif // MENU_BACKGROUND_H
#endif // MENU_BACKGROUND_H
</source>[[Category:Programming]]
</source>
 
[[Category:Programming]]

Revision as of 08:47, 21 January 2024

Dead End - Icon.png
This article has no Wikipedia icon links to other VDC articles. Please help improve this article by adding links Wikipedia icon that are relevant to the context within the existing text.
January 2024
//========= Copyright Jorge "BSVino" Rodriguez, All rights reserved. ============//
//
// Purpose: 
//
//=============================================================================//

#ifndef MENU_BACKGROUND_H
#define MENU_BACKGROUND_H
#ifdef _WIN32
#pragma once
#endif

#include <vguitextwindow.h>
#include "video/ivideoservices.h"
#include <materialsystem/MaterialSystemUtil.h>

class CMainMenu : public vgui::Panel
{
public:
	DECLARE_CLASS_SIMPLE( CMainMenu, vgui::Panel );

	CMainMenu( vgui::Panel *parent, const char *pElementName );
	~CMainMenu();

public:
	virtual void ApplySchemeSettings( vgui::IScheme *pScheme );

	bool IsVideoPlaying();
	void StartVideo();
	void StopVideo();

	void GetPanelPos( int &xpos, int &ypos );

	void Paint();
	bool BeginPlayback( const char *pFilename );
	void ReleaseVideo();
	void SetBlackBackground( bool bBlack );
	void DoModal();

	MESSAGE_FUNC( OnDisconnectFromGame, "DisconnectedFromGame" );

private:
	bool m_bLoaded;
	bool m_bToolsMode;
	bool m_bPaintVideo;

	CMaterialReference m_MainMenuRef;

protected:
	IVideoMaterial *m_VideoMaterial;
	IMaterial *m_pMaterial;

	int m_nPlaybackHeight; // Calculated to address ratio changes
	int m_nPlaybackWidth;
	char m_szExitCommand[MAX_PATH]; // This call is fired at the engine when the video finishes or is interrupted

	float m_flU; // UV ranges for video on its sheet
	float m_flV;

	bool m_bBlackBackground;
	bool m_bAllowAlternateMedia;
};

#endif // MENU_BACKGROUND_H