SDXFrameWork  0.13
SDXFrameWork
 All Classes Namespaces Functions Variables Enumerations Enumerator Pages
Static Public Member Functions | Static Public Attributes | Friends | List of all members
SDX::Window Class Reference

アクティブなSubWindowを操作するクラス. More...

#include <Window.h>

Static Public Member Functions

static SDL_Window * GetHandle ()
 アクティブなWindowのハンドルを取得. More...
 
static void SetWindow (SubWindow &アクティブにするSubWindow=SubWindow::mainWindow)
 SubWindowをアクティブにする. More...
 
static bool SetFullscreen (bool フルスクリーンフラグ)
 スクリーンモードを設定する. More...
 
static bool SetTitle (const char *タイトル名)
 ウィンドウタイトルを設定. More...
 
static void SetSize (int 幅, int 高さ)
 ウィンドウサイズの設定. More...
 
static void SetLogicalSize (int 幅, int 高さ)
 描画領域の大きさを設定する. More...
 
static int GetWidth ()
 ウィンドウ幅の取得. More...
 
static int GetHeight ()
 ウィンドウ高さの取得. More...
 
static Rect GetSize ()
 ウィンドウの位置と座標を取得. More...
 
static bool SetIcon (const char *ファイル名)
 ウィンドウのアイコンを設定. More...
 

Static Public Attributes

static SubWindowactiveWindow = nullptr
 現在アクティブなウィンドウ
 

Friends

class System
 
class Mouse
 
class Gesture
 
class Touch
 

Detailed Description

アクティブなSubWindowを操作するクラス.

WindowにあってSubWindowに無い関数は[Window専用]と表記.

//Copyright © 2014 SDXFramework
//[License]GNU Affero General Public License, version 3
//[Contact]http://sourceforge.jp/projects/dxframework/
//メインウィンドウとサブウィンドウを作成
//メインウィンドウを閉じると終了
#include <SDXFramework.h>
bool SampleWindow()
{
using namespace SDX;
System::Initialise("MainWindow", 320, 240);
SubWindow sub("SubWindow",200,200);
//SetLogicalSizeしておくと、ウィンドウの解像度を上げても描画される解像度はそのままになる
//Windowサイズを変えた後に呼び出しても良い
while (System::Update())
{
Window::SetIcon("data/icon000.png");
sub.SetIcon("data/icon009.png");
Drawing::String({ 10, 100 }, Color::White, { "Windowクラスのテスト:Enterで終了" ,Input::mouse.x," ",Input::mouse.y});
Screen::SetRenderer(sub.GetRenderer());
Drawing::String({ 10, 100 }, Color::White, { "SubWindowクラスのテスト:Enterで終了", Input::mouse.x," ", Input::mouse.y });
if (Input::key._1.on){ Window::SetTitle("Mainタイトルを変えたよ!"); }//ウィンドウタイトルを変更
if (Input::key._2.on){Window::SetSize(640, 480);}//ウィンドウの大きさを変更
if (Input::key._3.on) { Window::SetFullscreen(true); }
if (Input::key._4.on) { Window::SetFullscreen(false); }
if (Input::key._5.on) { Window::SetIcon("icon.png"); }
if (Input::key._6.on){ sub.SetTitle("Subタイトルを変えたよ!"); }//ウィンドウタイトルを変更
if (Input::key._7.on) { sub.SetSize(400, 400); }//ウィンドウの大きさを変更
if (Input::key._8.on) { sub.SetFullscreen(true); }
if (Input::key._9.on) { sub.SetFullscreen(false); }
if (Input::key._0.on) { sub.SetIcon("icon.png"); }
if (Input::key.Return.on){ break; }//Enterで終了
sub.Update();
}
return true;
}

Member Function Documentation

static SDL_Window* SDX::Window::GetHandle ( )
inlinestatic

アクティブなWindowのハンドルを取得.

static void SDX::Window::SetWindow ( SubWindow アクティブにするSubWindow = SubWindow::mainWindow)
inlinestatic

SubWindowをアクティブにする.

[Window専用]

static bool SDX::Window::SetFullscreen ( bool  フルスクリーンフラグ)
inlinestatic

スクリーンモードを設定する.

static bool SDX::Window::SetTitle ( const char *  タイトル名)
inlinestatic

ウィンドウタイトルを設定.

static void SDX::Window::SetSize ( int  ,
int  高さ 
)
inlinestatic

ウィンドウサイズの設定.

static void SDX::Window::SetLogicalSize ( int  ,
int  高さ 
)
inlinestatic

描画領域の大きさを設定する.

例えばSetSizeの半分にすると2倍表示になる

static int SDX::Window::GetWidth ( )
inlinestatic

ウィンドウ幅の取得.

static int SDX::Window::GetHeight ( )
inlinestatic

ウィンドウ高さの取得.

static Rect SDX::Window::GetSize ( )
inlinestatic

ウィンドウの位置と座標を取得.

static bool SDX::Window::SetIcon ( const char *  ファイル名)
inlinestatic

ウィンドウのアイコンを設定.