OpenClonk
C4ViewportWindow Class Reference

#include <C4ViewportWindow.h>

Inheritance diagram for C4ViewportWindow:
[legend]
Collaboration diagram for C4ViewportWindow:
[legend]

Public Types

enum  WindowKind {
  W_GuiWindow , W_Console , W_Viewport , W_Fullscreen ,
  W_Control
}
 

Public Member Functions

 C4ViewportWindow (C4Viewport *cvp)
 
void EditCursorMove (int X, int Y, uint32_t)
 
C4WindowInit (int32_t iPlayer)
 
void Close () override
 
void PerformUpdate () override
 
virtual C4WindowInit (WindowKind windowKind, C4AbstractApp *pApp, const char *Title, const C4Rect *size)
 
virtual void Clear ()
 
virtual void CharIn (const char *)
 
virtual bool ReInit (C4AbstractApp *pApp)
 
virtual void EnumerateMultiSamples (std::vector< int > &samples, int min_expected=0) const
 
bool StorePosition (const char *szWindowName, const char *szSubKey, bool fStoreSize=true)
 
bool RestorePosition (const char *szWindowName, const char *szSubKey, bool fHidden=false)
 
bool GetSize (C4Rect *pRect)
 
void SetSize (unsigned int cx, unsigned int cy)
 
void SetTitle (const char *Title)
 
void FlashWindow ()
 
void GrabMouse (bool grab)
 
virtual void RequestUpdate ()
 

Public Attributes

C4Viewportcvp
 
bool Active {false}
 
C4SurfacepSurface {nullptr}
 
WindowKind eKind
 

Protected Member Functions

virtual C4WindowInit (WindowKind windowKind, C4AbstractApp *pApp, const char *Title, const C4Rect *size)
 

Detailed Description

Definition at line 32 of file C4ViewportWindow.h.

Member Enumeration Documentation

◆ WindowKind

enum C4Window::WindowKind
inherited
Enumerator
W_GuiWindow 
W_Console 
W_Viewport 
W_Fullscreen 
W_Control 

Definition at line 263 of file C4Window.h.

264  {
265  W_GuiWindow,
266  W_Console,
267  W_Viewport,
268  W_Fullscreen,
269  W_Control // wrapper to a render target control inside a window
270  };
@ W_Fullscreen
Definition: C4Window.h:268
@ W_GuiWindow
Definition: C4Window.h:265
@ W_Control
Definition: C4Window.h:269
@ W_Viewport
Definition: C4Window.h:267
@ W_Console
Definition: C4Window.h:266

Constructor & Destructor Documentation

◆ C4ViewportWindow()

C4ViewportWindow::C4ViewportWindow ( C4Viewport cvp)
inline

Definition at line 36 of file C4ViewportWindow.h.

36 : cvp(cvp) { }
C4Viewport * cvp

Member Function Documentation

◆ CharIn()

virtual void C4Window::CharIn ( const char *  )
inlinevirtualinherited

Reimplemented in C4FullScreen.

Definition at line 282 of file C4Window.h.

282 { }

◆ Clear()

void C4Window::Clear ( )
virtualinherited

Reimplemented in C4FullScreen, and C4Console.

Definition at line 102 of file C4AppT.cpp.

102 {}

Referenced by C4Console::Clear(), C4FullScreen::Clear(), C4GUI::Dialog::DestroyConsoleWindow(), and C4Window::~C4Window().

Here is the caller graph for this function:

◆ Close()

void C4ViewportWindow::Close ( )
overridevirtual

Implements C4Window.

Definition at line 150 of file C4ViewportWindow.cpp.

151 {
153 }
C4ViewportList Viewports
bool CloseViewport(int32_t player_nr, bool silent)

References C4ViewportList::CloseViewport(), cvp, and Viewports.

Here is the call graph for this function:

◆ EditCursorMove()

void C4ViewportWindow::EditCursorMove ( int  X,
int  Y,
uint32_t  state 
)

Definition at line 154 of file C4ViewportWindow.cpp.

155 {
157 }
#define X(sdl, oc)
C4Console Console
Definition: C4Globals.cpp:45
C4EditCursor EditCursor
Definition: C4Console.h:90
bool Move(float iX, float iY, float zoom, DWORD dwKeyState)
float WindowToGameX(int32_t win_x)
Definition: C4Viewport.h:85
float WindowToGameY(int32_t win_y)
Definition: C4Viewport.h:86
float GetZoom()
Definition: C4Viewport.h:48

References Console, cvp, C4Console::EditCursor, C4Viewport::GetZoom(), C4EditCursor::Move(), C4Viewport::WindowToGameX(), C4Viewport::WindowToGameY(), and X.

Here is the call graph for this function:

◆ EnumerateMultiSamples()

void C4Window::EnumerateMultiSamples ( std::vector< int > &  samples,
int  min_expected = 0 
) const
virtualinherited

Definition at line 105 of file C4AppT.cpp.

105 {}

Referenced by C4StartupOptionsDlg::C4StartupOptionsDlg().

Here is the caller graph for this function:

◆ FlashWindow()

void C4Window::FlashWindow ( )
inherited

Definition at line 75 of file C4AppMac.mm.

76 {
77  [NSApp requestUserAttention:NSCriticalRequest];
78 }

Referenced by C4AbstractApp::NotifyUserIfInactive().

Here is the caller graph for this function:

◆ GetSize()

bool C4Window::GetSize ( C4Rect pRect)
inherited

Definition at line 108 of file C4AppT.cpp.

108 {return false;}

Referenced by C4Application::OnResolutionChanged(), C4GUI::DialogWindow::PerformUpdate(), and C4Game::PreInit().

Here is the caller graph for this function:

◆ GrabMouse()

void C4Window::GrabMouse ( bool  grab)
inherited

Definition at line 107 of file C4AppT.cpp.

107 {}

Referenced by C4Application::GameTick().

Here is the caller graph for this function:

◆ Init() [1/3]

C4Window * C4ViewportWindow::Init ( int32_t  iPlayer)

Definition at line 133 of file C4ViewportWindow.cpp.

134 {
135  C4Window* result;
136  const char * Title = Player == NO_OWNER ? LoadResStr("IDS_CNS_VIEWPORT") : ::Players.Get(Player)->GetName();
137  C4Rect r(0,0,800,500);
138  result = C4Window::Init(C4Window::W_Viewport, &Application, Title, &r);
139 
140  if (!result) return result;
141 
142  pSurface = new C4Surface(&Application, this);
143 #ifndef WITH_QT_EDITOR
144  // Position and size
145  RestorePosition(FormatString("Viewport%i", Player+1).getData(), Config.GetSubkeyPath("Console"));
146 #endif
147  return result;
148 }
C4Config Config
Definition: C4Config.cpp:930
const int NO_OWNER
Definition: C4Constants.h:137
C4Application Application
Definition: C4Globals.cpp:44
const char * LoadResStr(const char *id)
Definition: C4Language.h:83
C4PlayerList Players
StdStrBuf FormatString(const char *szFmt,...)
Definition: StdBuf.cpp:270
const char * GetSubkeyPath(const char *subkey)
Definition: C4Config.cpp:806
Definition: C4Rect.h:28
virtual C4Window * Init(WindowKind windowKind, C4AbstractApp *pApp, const char *Title, const C4Rect *size)
Definition: C4AppT.cpp:109
C4Surface * pSurface
Definition: C4Window.h:275
bool RestorePosition(const char *szWindowName, const char *szSubKey, bool fHidden=false)
Definition: C4AppT.cpp:111

References Application, Config, FormatString(), C4PlayerList::Get(), C4Player::GetName(), C4Config::GetSubkeyPath(), C4Window::Init(), LoadResStr(), NO_OWNER, Players, C4Window::pSurface, C4Window::RestorePosition(), and C4Window::W_Viewport.

Here is the call graph for this function:

◆ Init() [2/3]

C4Window * C4Window::Init

Definition at line 322 of file C4AppT.cpp.

109 {return this;}

◆ Init() [3/3]

C4Window * C4Window::Init ( C4Window::WindowKind  windowKind,
C4AbstractApp pApp,
const char *  Title,
const C4Rect size 
)
protectedvirtualinherited

Definition at line 109 of file C4AppT.cpp.

109 {return this;}

Referenced by C4ConsoleGUIPreviewWindow::C4ConsoleGUIPreviewWindow(), C4ConsoleGUI::CreateConsoleWindow(), C4GUI::DialogWindow::Init(), and Init().

Here is the caller graph for this function:

◆ PerformUpdate()

void C4ViewportWindow::PerformUpdate ( )
overridevirtual

Reimplemented from C4Window.

Definition at line 119 of file C4ViewportWindow.cpp.

120 {
121 #ifdef WITH_QT_EDITOR
122  if (viewport_widget)
123  viewport_widget->update();
124 #else
125  if (cvp)
126  {
128  cvp->Execute();
129  }
130 #endif
131 }
bool UpdateOutputSize(int32_t new_width=0, int32_t new_height=0)
Definition: C4Viewport.cpp:52
void Execute()
Definition: C4Viewport.cpp:443

References cvp, C4Viewport::Execute(), and C4Viewport::UpdateOutputSize().

Here is the call graph for this function:

◆ ReInit()

bool C4Window::ReInit ( C4AbstractApp pApp)
virtualinherited

Definition at line 110 of file C4AppT.cpp.

110 {return false;}

◆ RequestUpdate()

void C4Window::RequestUpdate ( )
virtualinherited

Definition at line 112 of file C4AppT.cpp.

112 {}

Referenced by C4FullScreen::Execute().

Here is the caller graph for this function:

◆ RestorePosition()

bool C4Window::RestorePosition ( const char *  szWindowName,
const char *  szSubKey,
bool  fHidden = false 
)
inherited

Definition at line 111 of file C4AppT.cpp.

111 {return false;}

Referenced by C4GUI::DialogWindow::Init(), and Init().

Here is the caller graph for this function:

◆ SetSize()

void C4Window::SetSize ( unsigned int  cx,
unsigned int  cy 
)
inherited

Definition at line 113 of file C4AppT.cpp.

113 {}

Referenced by C4Application::DoInit(), C4GUI::DialogWindow::Init(), C4AbstractApp::SetVideoMode(), and C4GUI::Dialog::UpdateSize().

Here is the caller graph for this function:

◆ SetTitle()

void C4Window::SetTitle ( const char *  Title)
inherited

Definition at line 114 of file C4AppT.cpp.

114 {}

Referenced by C4Console::CloseGame(), C4Console::SetCaptionToFilename(), and C4GUI::Dialog::SetTitle().

Here is the caller graph for this function:

◆ StorePosition()

bool C4Window::StorePosition ( const char *  szWindowName,
const char *  szSubKey,
bool  fStoreSize = true 
)
inherited

Definition at line 153 of file C4WindowSDL.cpp.

153 { return true; }

Member Data Documentation

◆ Active

◆ cvp

C4Viewport* C4ViewportWindow::cvp

Definition at line 35 of file C4ViewportWindow.h.

Referenced by Close(), EditCursorMove(), and PerformUpdate().

◆ eKind

WindowKind C4Window::eKind
inherited

Definition at line 276 of file C4Window.h.

◆ pSurface


The documentation for this class was generated from the following files: