aboutsummaryrefslogtreecommitdiff
path: root/sp/src/public/vgui_controls/Frame.h
diff options
context:
space:
mode:
authorJørgen P. Tjernø <[email protected]>2013-12-02 19:31:46 -0800
committerJørgen P. Tjernø <[email protected]>2013-12-02 19:46:31 -0800
commitf56bb35301836e56582a575a75864392a0177875 (patch)
treede61ddd39de3e7df52759711950b4c288592f0dc /sp/src/public/vgui_controls/Frame.h
parentMark some more files as text. (diff)
downloadsource-sdk-2013-f56bb35301836e56582a575a75864392a0177875.tar.xz
source-sdk-2013-f56bb35301836e56582a575a75864392a0177875.zip
Fix line endings. WHAMMY.
Diffstat (limited to 'sp/src/public/vgui_controls/Frame.h')
-rw-r--r--sp/src/public/vgui_controls/Frame.h520
1 files changed, 260 insertions, 260 deletions
diff --git a/sp/src/public/vgui_controls/Frame.h b/sp/src/public/vgui_controls/Frame.h
index d5ce4a99..0485a374 100644
--- a/sp/src/public/vgui_controls/Frame.h
+++ b/sp/src/public/vgui_controls/Frame.h
@@ -1,260 +1,260 @@
-//========= Copyright Valve Corporation, All rights reserved. ============//
-//
-// Purpose:
-//
-// $NoKeywords: $
-//=============================================================================//
-
-#ifndef VGUI_FRAME_H
-#define VGUI_FRAME_H
-
-#ifdef _WIN32
-#pragma once
-#endif
-
-#include <vgui/VGUI.h>
-#include <vgui/Dar.h>
-#include <vgui_controls/Panel.h>
-#include <vgui_controls/EditablePanel.h>
-#include <vgui_controls/FocusNavGroup.h>
-
-namespace vgui
-{
-
-class FrameButton;
-class FrameSystemButton;
-
-//-----------------------------------------------------------------------------
-// Purpose: Windowed frame
-//-----------------------------------------------------------------------------
-class Frame : public EditablePanel
-{
- DECLARE_CLASS_SIMPLE( Frame, EditablePanel );
-
-public:
- Frame(Panel *parent, const char *panelName, bool showTaskbarIcon = true, bool bPopup = true );
- virtual ~Frame();
-
- // Set the text in the title bar. Set surfaceTitle=true if you want this to be the taskbar text as well.
- virtual void SetTitle(const char *title, bool surfaceTitle);
- virtual void SetTitle(const wchar_t *title, bool surfaceTitle);
-
- // Bring the frame to the front and requests focus, ensures it's not minimized
- virtual void Activate();
-
- // activates the dialog; if dialog is not currently visible it starts it minimized and flashing in the taskbar
- virtual void ActivateMinimized();
-
- // closes the dialog
- MESSAGE_FUNC( Close, "Close" );
- MESSAGE_FUNC( CloseModal, "CloseModal" );
-
- // sets the dialog to delete self on close
- virtual void SetDeleteSelfOnClose( bool state );
-
- // Move the dialog to the center of the screen
- virtual void MoveToCenterOfScreen();
-
- // Set the movability of the panel
- virtual void SetMoveable(bool state);
- // Check the movability of the panel
- virtual bool IsMoveable();
-
- // Set the resizability of the panel
- virtual void SetSizeable(bool state);
- // Check the resizability of the panel
- virtual bool IsSizeable();
- // Toggle visibility of the system menu button
- virtual void SetMenuButtonVisible(bool state);
- void SetMenuButtonResponsive(bool state);
-
- // Toggle visibility of the minimize button
- virtual void SetMinimizeButtonVisible(bool state);
- // Toggle visibility of the maximize button
- virtual void SetMaximizeButtonVisible(bool state);
- // Toggles visibility of the minimize-to-systray icon (defaults to false)
- virtual void SetMinimizeToSysTrayButtonVisible(bool state);
-
- // Toggle visibility of the close button
- virtual void SetCloseButtonVisible(bool state);
-
- // returns true if the dialog is currently minimized
- virtual bool IsMinimized();
- // Flash the window system tray button until the frame gets focus
- virtual void FlashWindow();
- // Stops any window flashing
- virtual void FlashWindowStop();
- // command handling
- virtual void OnCommand(const char *command);
-
- // Get the system menu
- virtual Menu *GetSysMenu();
- // Set the system menu
- virtual void SetSysMenu(Menu *menu);
-
- // Set the system menu images
- void SetImages( const char *pEnabledImage, const char *pDisabledImage = NULL );
-
- // set whether the title bar should be rendered
- virtual void SetTitleBarVisible( bool state );
-
- // When moving via caption, don't let any part of window go outside parent's bounds
- virtual void SetClipToParent( bool state );
- virtual bool GetClipToParent() const;
-
- // Set to true to make the caption height small
- virtual void SetSmallCaption( bool state );
- virtual bool IsSmallCaption() const;
-
- virtual int GetDraggerSize();
- virtual int GetCornerSize();
- virtual int GetBottomRightSize();
- virtual int GetCaptionHeight();
-
- /* CUSTOM MESSAGE HANDLING
- "SetTitle"
- input: "text" - string to set the title to be
- */
-
- // Load the control settings
- virtual void LoadControlSettings( const char *dialogResourceName, const char *pathID = NULL, KeyValues *pPreloadedKeyValues = NULL, KeyValues *pConditions = NULL );
-
- void SetChainKeysToParent( bool state );
- bool CanChainKeysToParent() const;
-
- // Shows the dialog in a modal fashion
- virtual void DoModal();
-
- void PlaceUnderCursor( );
-
- // Disables the fade-in/out-effect even if configured in the scheme settings
- void DisableFadeEffect( void );
-
- // Temporarily enables or disables the fade effect rather than zeroing the fade times as done in DisableFadeEffect
- void SetFadeEffectDisableOverride( bool disabled );
-
-protected:
- // Respond to mouse presses
- virtual void OnMousePressed(MouseCode code);
- // Respond to Key typing
- virtual void OnKeyCodeTyped(KeyCode code);
- virtual void OnKeyTyped(wchar_t unichar);
- // Respond to Key releases
- virtual void OnKeyCodeReleased(KeyCode code);
- // Respond to Key focus ticks
- virtual void OnKeyFocusTicked();
- virtual void ApplySchemeSettings(IScheme *pScheme);
- // Recalculate the position of all items
- virtual void PerformLayout();
- // Respond when a close message is recieved. Can be called directly to close a frame.
- virtual void OnClose();
- // Respond to a window finishing its closure. i.e. when a fading window has fully finished its fadeout.
- virtual void OnFinishedClose();
- // Minimize the window on the taskbar.
- MESSAGE_FUNC( OnMinimize, "Minimize" );
- // Called when minimize-to-systray button is pressed (does nothing by default)
- virtual void OnMinimizeToSysTray();
- // the frame close button was pressed
- MESSAGE_FUNC( OnCloseFrameButtonPressed, "CloseFrameButtonPressed" );
- // Add the child to the focus nav group
- virtual void OnChildAdded(VPANEL child);
- // settings
- virtual void ApplySettings(KeyValues *inResourceData);
- // records the settings into the resource data
- virtual void GetSettings(KeyValues *outResourceData);
- virtual const char *GetDescription( void );
-
- // gets the default position and size on the screen to appear the first time (defaults to centered)
- virtual bool GetDefaultScreenPosition(int &x, int &y, int &wide, int &tall);
-
- // painting
- virtual void PaintBackground();
-
- // per-frame thinking, used for transition effects
- virtual void OnThink();
-
- // screen size
- virtual void OnScreenSizeChanged(int iOldWide, int iOldTall);
-
- // Get the size of the panel inside the frame edges.
- virtual void GetClientArea(int &x, int &y, int &wide, int &tall);
-
- // user configuration settings
- // this is used for any control details the user wants saved between sessions
- // eg. dialog positions, last directory opened, list column width
- virtual void ApplyUserConfigSettings(KeyValues *userConfig);
-
- // returns user config settings for this control
- virtual void GetUserConfigSettings(KeyValues *userConfig);
-
- // optimization, return true if this control has any user config settings
- virtual bool HasUserConfigSettings();
-
-private:
- MESSAGE_FUNC_CHARPTR( InternalSetTitle, "SetTitle", text );
- MESSAGE_FUNC( InternalFlashWindow, "FlashWindow" );
- MESSAGE_FUNC_PARAMS( OnDialogVariablesChanged, "DialogVariables", dialogVariables );
-
- void SetupResizeCursors();
- void LayoutProportional( FrameButton *bt);
- void FinishClose();
- void OnFrameFocusChanged(bool bHasFocus);
-
- Color _titleBarBgColor;
- Color _titleBarDisabledBgColor;
- Color _titleBarFgColor;
- Color _titleBarDisabledFgColor;
- Color m_InFocusBgColor;
- Color m_OutOfFocusBgColor;
- TextImage *_title;
-
-#if !defined( _X360 )
- Panel *_topGrip;
- Panel *_bottomGrip;
- Panel *_leftGrip;
- Panel *_rightGrip;
- Panel *_topLeftGrip;
- Panel *_topRightGrip;
- Panel *_bottomLeftGrip;
- Panel *_bottomRightGrip;
- Panel *_captionGrip;
- FrameButton *_minimizeButton;
- FrameButton *_maximizeButton;
- FrameButton *_minimizeToSysTrayButton;
- FrameButton *_closeButton;
- FrameSystemButton *_menuButton;
- Menu *_sysMenu;
-#endif
-
- float m_flTransitionEffectTime;
- float m_flFocusTransitionEffectTime;
- int m_iClientInsetX;
- int m_iClientInsetY;
- int m_iTitleTextInsetX;
- int m_nGripperWidth;
- VPANEL m_hPreviousModal;
- HFont m_hCustomTitleFont;
-
- bool _sizeable : 1;
- bool _moveable : 1;
- bool m_bHasFocus : 1;
- bool _flashWindow : 1;
- bool _nextFlashState : 1;
- bool _drawTitleBar : 1;
- bool m_bPreviouslyVisible : 1;
- bool m_bFadingOut : 1;
- bool m_bDeleteSelfOnClose : 1;
- bool m_bDisableFadeEffect : 1;
- bool m_bClipToParent : 1;
- bool m_bSmallCaption : 1;
- bool m_bChainKeysToParent : 1;
- bool m_bPrimed : 1;
- bool m_iClientInsetXOverridden : 1;
-
- CPanelAnimationVarAliasType( int, m_iTitleTextInsetXOverride, "titletextinsetX", "0", "proportional_int" );
- CPanelAnimationVar( int, m_iTitleTextInsetYOverride, "titletextinsetY", "0" );
-};
-
-} // namespace vgui
-
-#endif // VGUI_FRAME_H
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//=============================================================================//
+
+#ifndef VGUI_FRAME_H
+#define VGUI_FRAME_H
+
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include <vgui/VGUI.h>
+#include <vgui/Dar.h>
+#include <vgui_controls/Panel.h>
+#include <vgui_controls/EditablePanel.h>
+#include <vgui_controls/FocusNavGroup.h>
+
+namespace vgui
+{
+
+class FrameButton;
+class FrameSystemButton;
+
+//-----------------------------------------------------------------------------
+// Purpose: Windowed frame
+//-----------------------------------------------------------------------------
+class Frame : public EditablePanel
+{
+ DECLARE_CLASS_SIMPLE( Frame, EditablePanel );
+
+public:
+ Frame(Panel *parent, const char *panelName, bool showTaskbarIcon = true, bool bPopup = true );
+ virtual ~Frame();
+
+ // Set the text in the title bar. Set surfaceTitle=true if you want this to be the taskbar text as well.
+ virtual void SetTitle(const char *title, bool surfaceTitle);
+ virtual void SetTitle(const wchar_t *title, bool surfaceTitle);
+
+ // Bring the frame to the front and requests focus, ensures it's not minimized
+ virtual void Activate();
+
+ // activates the dialog; if dialog is not currently visible it starts it minimized and flashing in the taskbar
+ virtual void ActivateMinimized();
+
+ // closes the dialog
+ MESSAGE_FUNC( Close, "Close" );
+ MESSAGE_FUNC( CloseModal, "CloseModal" );
+
+ // sets the dialog to delete self on close
+ virtual void SetDeleteSelfOnClose( bool state );
+
+ // Move the dialog to the center of the screen
+ virtual void MoveToCenterOfScreen();
+
+ // Set the movability of the panel
+ virtual void SetMoveable(bool state);
+ // Check the movability of the panel
+ virtual bool IsMoveable();
+
+ // Set the resizability of the panel
+ virtual void SetSizeable(bool state);
+ // Check the resizability of the panel
+ virtual bool IsSizeable();
+ // Toggle visibility of the system menu button
+ virtual void SetMenuButtonVisible(bool state);
+ void SetMenuButtonResponsive(bool state);
+
+ // Toggle visibility of the minimize button
+ virtual void SetMinimizeButtonVisible(bool state);
+ // Toggle visibility of the maximize button
+ virtual void SetMaximizeButtonVisible(bool state);
+ // Toggles visibility of the minimize-to-systray icon (defaults to false)
+ virtual void SetMinimizeToSysTrayButtonVisible(bool state);
+
+ // Toggle visibility of the close button
+ virtual void SetCloseButtonVisible(bool state);
+
+ // returns true if the dialog is currently minimized
+ virtual bool IsMinimized();
+ // Flash the window system tray button until the frame gets focus
+ virtual void FlashWindow();
+ // Stops any window flashing
+ virtual void FlashWindowStop();
+ // command handling
+ virtual void OnCommand(const char *command);
+
+ // Get the system menu
+ virtual Menu *GetSysMenu();
+ // Set the system menu
+ virtual void SetSysMenu(Menu *menu);
+
+ // Set the system menu images
+ void SetImages( const char *pEnabledImage, const char *pDisabledImage = NULL );
+
+ // set whether the title bar should be rendered
+ virtual void SetTitleBarVisible( bool state );
+
+ // When moving via caption, don't let any part of window go outside parent's bounds
+ virtual void SetClipToParent( bool state );
+ virtual bool GetClipToParent() const;
+
+ // Set to true to make the caption height small
+ virtual void SetSmallCaption( bool state );
+ virtual bool IsSmallCaption() const;
+
+ virtual int GetDraggerSize();
+ virtual int GetCornerSize();
+ virtual int GetBottomRightSize();
+ virtual int GetCaptionHeight();
+
+ /* CUSTOM MESSAGE HANDLING
+ "SetTitle"
+ input: "text" - string to set the title to be
+ */
+
+ // Load the control settings
+ virtual void LoadControlSettings( const char *dialogResourceName, const char *pathID = NULL, KeyValues *pPreloadedKeyValues = NULL, KeyValues *pConditions = NULL );
+
+ void SetChainKeysToParent( bool state );
+ bool CanChainKeysToParent() const;
+
+ // Shows the dialog in a modal fashion
+ virtual void DoModal();
+
+ void PlaceUnderCursor( );
+
+ // Disables the fade-in/out-effect even if configured in the scheme settings
+ void DisableFadeEffect( void );
+
+ // Temporarily enables or disables the fade effect rather than zeroing the fade times as done in DisableFadeEffect
+ void SetFadeEffectDisableOverride( bool disabled );
+
+protected:
+ // Respond to mouse presses
+ virtual void OnMousePressed(MouseCode code);
+ // Respond to Key typing
+ virtual void OnKeyCodeTyped(KeyCode code);
+ virtual void OnKeyTyped(wchar_t unichar);
+ // Respond to Key releases
+ virtual void OnKeyCodeReleased(KeyCode code);
+ // Respond to Key focus ticks
+ virtual void OnKeyFocusTicked();
+ virtual void ApplySchemeSettings(IScheme *pScheme);
+ // Recalculate the position of all items
+ virtual void PerformLayout();
+ // Respond when a close message is recieved. Can be called directly to close a frame.
+ virtual void OnClose();
+ // Respond to a window finishing its closure. i.e. when a fading window has fully finished its fadeout.
+ virtual void OnFinishedClose();
+ // Minimize the window on the taskbar.
+ MESSAGE_FUNC( OnMinimize, "Minimize" );
+ // Called when minimize-to-systray button is pressed (does nothing by default)
+ virtual void OnMinimizeToSysTray();
+ // the frame close button was pressed
+ MESSAGE_FUNC( OnCloseFrameButtonPressed, "CloseFrameButtonPressed" );
+ // Add the child to the focus nav group
+ virtual void OnChildAdded(VPANEL child);
+ // settings
+ virtual void ApplySettings(KeyValues *inResourceData);
+ // records the settings into the resource data
+ virtual void GetSettings(KeyValues *outResourceData);
+ virtual const char *GetDescription( void );
+
+ // gets the default position and size on the screen to appear the first time (defaults to centered)
+ virtual bool GetDefaultScreenPosition(int &x, int &y, int &wide, int &tall);
+
+ // painting
+ virtual void PaintBackground();
+
+ // per-frame thinking, used for transition effects
+ virtual void OnThink();
+
+ // screen size
+ virtual void OnScreenSizeChanged(int iOldWide, int iOldTall);
+
+ // Get the size of the panel inside the frame edges.
+ virtual void GetClientArea(int &x, int &y, int &wide, int &tall);
+
+ // user configuration settings
+ // this is used for any control details the user wants saved between sessions
+ // eg. dialog positions, last directory opened, list column width
+ virtual void ApplyUserConfigSettings(KeyValues *userConfig);
+
+ // returns user config settings for this control
+ virtual void GetUserConfigSettings(KeyValues *userConfig);
+
+ // optimization, return true if this control has any user config settings
+ virtual bool HasUserConfigSettings();
+
+private:
+ MESSAGE_FUNC_CHARPTR( InternalSetTitle, "SetTitle", text );
+ MESSAGE_FUNC( InternalFlashWindow, "FlashWindow" );
+ MESSAGE_FUNC_PARAMS( OnDialogVariablesChanged, "DialogVariables", dialogVariables );
+
+ void SetupResizeCursors();
+ void LayoutProportional( FrameButton *bt);
+ void FinishClose();
+ void OnFrameFocusChanged(bool bHasFocus);
+
+ Color _titleBarBgColor;
+ Color _titleBarDisabledBgColor;
+ Color _titleBarFgColor;
+ Color _titleBarDisabledFgColor;
+ Color m_InFocusBgColor;
+ Color m_OutOfFocusBgColor;
+ TextImage *_title;
+
+#if !defined( _X360 )
+ Panel *_topGrip;
+ Panel *_bottomGrip;
+ Panel *_leftGrip;
+ Panel *_rightGrip;
+ Panel *_topLeftGrip;
+ Panel *_topRightGrip;
+ Panel *_bottomLeftGrip;
+ Panel *_bottomRightGrip;
+ Panel *_captionGrip;
+ FrameButton *_minimizeButton;
+ FrameButton *_maximizeButton;
+ FrameButton *_minimizeToSysTrayButton;
+ FrameButton *_closeButton;
+ FrameSystemButton *_menuButton;
+ Menu *_sysMenu;
+#endif
+
+ float m_flTransitionEffectTime;
+ float m_flFocusTransitionEffectTime;
+ int m_iClientInsetX;
+ int m_iClientInsetY;
+ int m_iTitleTextInsetX;
+ int m_nGripperWidth;
+ VPANEL m_hPreviousModal;
+ HFont m_hCustomTitleFont;
+
+ bool _sizeable : 1;
+ bool _moveable : 1;
+ bool m_bHasFocus : 1;
+ bool _flashWindow : 1;
+ bool _nextFlashState : 1;
+ bool _drawTitleBar : 1;
+ bool m_bPreviouslyVisible : 1;
+ bool m_bFadingOut : 1;
+ bool m_bDeleteSelfOnClose : 1;
+ bool m_bDisableFadeEffect : 1;
+ bool m_bClipToParent : 1;
+ bool m_bSmallCaption : 1;
+ bool m_bChainKeysToParent : 1;
+ bool m_bPrimed : 1;
+ bool m_iClientInsetXOverridden : 1;
+
+ CPanelAnimationVarAliasType( int, m_iTitleTextInsetXOverride, "titletextinsetX", "0", "proportional_int" );
+ CPanelAnimationVar( int, m_iTitleTextInsetYOverride, "titletextinsetY", "0" );
+};
+
+} // namespace vgui
+
+#endif // VGUI_FRAME_H