Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.7 KiB

  1. //========= Copyright Valve Corporation, All rights reserved. ============//
  2. //
  3. // Purpose: VMT tool; main UI smarts class
  4. //
  5. //=============================================================================
  6. #ifndef VMTTOOL_H
  7. #define VMTTOOL_H
  8. #ifdef _WIN32
  9. #pragma once
  10. #endif
  11. //-----------------------------------------------------------------------------
  12. // Forward declarations
  13. //-----------------------------------------------------------------------------
  14. class CDmeEditorTypeDictionary;
  15. //-----------------------------------------------------------------------------
  16. // Singleton interfaces
  17. //-----------------------------------------------------------------------------
  18. extern CDmeEditorTypeDictionary *g_pEditorTypeDict;
  19. //-----------------------------------------------------------------------------
  20. // Allows the doc to call back into the VMT editor tool
  21. //-----------------------------------------------------------------------------
  22. class IVMTDocCallback
  23. {
  24. public:
  25. // Called by the doc when the data changes
  26. virtual void OnDocChanged( const char *pReason, int nNotifySource, int nNotifyFlags ) = 0;
  27. // Update the editor dict based on the current material parameters
  28. virtual void AddShaderParameter( const char *pParam, const char *pWidget, const char *pTextType ) = 0;
  29. // Update the editor dict based on the current material parameters
  30. virtual void RemoveShaderParameter( const char *pParam ) = 0;
  31. // Adds flags, tool parameters
  32. virtual void AddFlagParameter( const char *pParam ) = 0;
  33. virtual void AddToolParameter( const char *pParam, const char *pWidget = NULL, const char *pTextType = NULL ) = 0;
  34. virtual void RemoveAllFlagParameters() = 0;
  35. virtual void RemoveAllToolParameters() = 0;
  36. };
  37. #endif // VMTTOOL_H