5 #include <Multimedia/Window.h>
6 #include <Multimedia/Input.h>
7 #include <Multimedia/Font.h>
37 static std::string inputText;
38 static std::string textComposition;
39 static int textCursor;
40 static int textSelection_len;
45 static void Initialise(
const char* ウィンドウ名,
int 幅,
int 高さ,
bool フルスクリーンフラグ =
false)
47 if (SDL_Init(SDL_INIT_TIMER | SDL_INIT_AUDIO | SDL_INIT_VIDEO) < 0)
54 SDL_JoystickEventState(SDL_ENABLE);
56 if (SDL_NumJoysticks() > 0)
75 setlocale(LC_CTYPE,
"jpn");
81 SDL_InitSubSystem(SDL_INIT_JOYSTICK | SDL_INIT_GAMECONTROLLER | SDL_INIT_EVERYTHING);
84 Mix_Init(MIX_INIT_MP3 | MIX_INIT_OGG);
85 Mix_OpenAudio(44100, AUDIO_S16, 2, 1024);
86 Mix_AllocateChannels(16);
88 Mix_HookMusicFinished(Music::Finished);
134 while (SDL_PollEvent(&event))
138 case SDL_WINDOWEVENT:
139 switch (event.window.event)
141 case SDL_WINDOWEVENT_CLOSE:
144 SubWindow::CheckWindowID(event.window.windowID);
148 for (
auto it : SubWindow::windowS)
156 case SDL_WINDOWEVENT_MINIMIZED:
163 case SDL_WINDOWEVENT_RESTORED:
174 inputText +=
event.text.text;
176 case SDL_TEXTEDITING:
178 textComposition =
event.edit.text;
179 textCursor =
event.edit.start;
180 textSelection_len =
event.edit.length;
207 return Platform::Windows;
208 #elif defined(__MACOSX__)
209 return Platform::MacOSX;
210 #elif defined(__LINUX__)
211 return Platform::GNU_Linux;
212 #elif defined(__ANDROID__)
213 return Platform::Android;
214 #elif defined(__IPHONEOS__)
215 return Platform::iOS;
217 return Platform::Unknown;
226 #elif defined(__MACOSX__)
228 #elif defined(__LINUX__)
230 #elif defined(__ANDROID__)
232 #elif defined(__IPHONEOS__)
static void Wait(int 停止ミリ秒)
指定ミリ秒処理を停止する.
Definition: System.h:192
static void WaitKey()
なんらかのキーが入力されるまで処理を停止する.
Definition: System.h:198
static bool Flip()
描画内容を反映.
Definition: Screen.h:62
static void Initialise(const char *ウィンドウ名, int 幅, int 高さ, bool フルスクリーンフラグ=false)
ライブラリの初期化.
Definition: System.h:45
ライブラリの初期化やシステム的な処理を行う関数群.
Definition: System.h:23
static bool Update(bool 描画更新フラグ=true)
各種更新処理をまとめて行う.
Definition: System.h:111
bool Create(const char *ウィンドウ名, int 幅, int 高さ, bool フルスクリーンフラグ=false)
Windowの初期化と生成.
Definition: SubWindow.h:77
static bool Clear()
画面を消去する.
Definition: Screen.h:69
static Platform GetPlatform()
プラットフォームを取得する.
Definition: System.h:204
static void SetWindow(SubWindow &アクティブにするSubWindow=SubWindow::mainWindow)
SubWindowをアクティブにする.
Definition: Window.h:34
static bool Update()
fadeOut付きで終了した後に次Musicを再生するための処理.
Definition: Music.h:233
static bool End()
ライブラリの終了処理.
Definition: System.h:97
static SDL_Renderer * GetHandle()
スクリーンハンドルを取得.
Definition: Screen.h:26
static void SetRenderer(Renderer &描画先Renderer=Renderer::mainRenderer)
アクティブなRendererを設定.
Definition: Screen.h:40
static bool IsTablet()
タブレット端末かどうかを取得.
Definition: System.h:222
static bool HoldAnyKey()
いずれかのキーが押されているか取得.
Definition: Keyboard.h:454
static bool ProcessMessage()
OSのメッセージ処理を行う.
Definition: System.h:130
static Renderer & mainRenderer
メインウィンドウのレンダラー
Definition: Renderer.h:49
void Open()
ジョイパッドを起動.
Definition: Joypad.h:114
static SubWindow mainWindow
現在アクティブなウィンドウ
Definition: SubWindow.h:46
bool Destroy()
SubWindowを削除.
Definition: SubWindow.h:102
static void SetDefaultFont(const char *フォント名, int 大きさ, int 行間=0, bool 高品質レンダリング=true)
デフォルトのフォントを設定する.
Definition: Drawing.h:291
static bool Check()
再生中か確認.
Definition: Music.h:186
static SubWindow * activeWindow
現在アクティブなウィンドウ
Definition: Window.h:24
アクティブなSubWindowを操作するクラス.
Definition: Window.h:14