/*---------------------------------------------------------------------------* Copyright (C) Nintendo. All rights reserved. These coded instructions, statements, and computer programs contain proprietary information of Nintendo of America Inc. and/or Nintendo Company Ltd., and are protected by Federal copyright law. They may not be disclosed to third parties or copied or duplicated in any form, in whole or in part, without the prior written consent of Nintendo. *---------------------------------------------------------------------------*/ //------------------------------------------------------------------------------ /** @file erreula_AppearArg.h * @brief Error Viewer Appearance Information */ //------------------------------------------------------------------------------ #ifndef NN_ERREULA_APPEAR_ARG_H_ #define NN_ERREULA_APPEAR_ARG_H_ #include "erreula_Types.h" /** @namespace nn::erreula * The namespace for erreula. */ namespace nn { //------------------------------------------------------------------------------ namespace erreula { //------------------------------------------------------------------------------ /** * Error Viewer Appearance Information */ class ErrorArg { public: explicit ErrorArg() : mErrorType( cErrorType_Code ) , mScreenType( cScreenType_Dual ) , mControllerType( cControllerType_Remo0 ) , mRemoCtrlHoldType( cRemoCtrlHoldType_Normal ) , mErrorCode( 0 ) , mFrameRate( 1 ) , mpMainText( NULL ) , mpBtn1Text( NULL ) , mpBtn2Text( NULL ) , mpTitleText( NULL ) , mbDrawDpdCursor( true ) { } public: /// Error type.
Specify the method of setting the error message to display (code specification or free text). Defaults to code specification if not set. ErrorType mErrorType; /// Display screen.
Specify the screen to display the error viewer on. Defaults to display to both the Wii U GamePad and TV if not set. ScreenType mScreenType; /// Controller type.
Specify the controller to use to operate the error viewer. Defaults to Wii Remote 0 if not set. ControllerType mControllerType; /// How the Wii Remote is held.
If the controller type was set to the Wii Remote, specify whether it is held vertically or horizontally. Defaults to held vertically if not set. RemoCtrlHoldType mRemoCtrlHoldType; /// Error code.
If the error type is code specification, specify the error code returned by the Cafe SDK API and other libraries. s32 mErrorCode; /// Frame rate.
Specify 1 for 60 fps, or 2 for 30 fps. Defaults to 60 fps if not set. s32 mFrameRate; /// Message body.
If the error type is free text, specify the text to display in the error message. (Maximum of 500 characters per line and 2000 characters total. UTF16.) const char16* mpMainText; /// Button label (for the left button in a set of two buttons).
If the error type includes a specification for one or two buttons, set the string to display as the label of the button, or of the left-hand button if there are two. (Maximum of 24 characters. UTF16.) const char16* mpBtn1Text; /// Button label (for the right button in a set of two buttons).
If the error type includes a specification for two buttons, set the string to display as the label of the right-hand button. (Maximum of 24 characters. UTF16.) const char16* mpBtn2Text; /// Title message.
If the error type specifies free text, set the string to display in the title of the dialog box. (Maximum of 10 characters.) const char16* mpTitleText; /// Drawing of the DPD pointer.
If the error viewer is set to appear on the TV, specify true to draw the Wii Remote's direct pointing device, or false to not draw. The pointer is drawn if not set. bool mbDrawDpdCursor; }; //------------------------------------------------------------------------------ /** * Display Settings for the Error Viewer */ class AppearArg { public: explicit AppearArg() : mErrorArg() { } /// Error type setting.
Specify the method of setting the error message to display (code specification or free text). Defaults to code specification if not set. void setErrorType( ErrorType type ) { mErrorArg.mErrorType = type; } /// Display screen setting.
Specify the screen to display the error viewer on. Defaults to display to both the Wii U GamePad and TV if not set. void setScreenType( ScreenType type ) { mErrorArg.mScreenType = type; } /// Controller type setting.
Specify the controller to use to operate the error viewer. Defaults to Wii Remote 0 if not set. void setControllerType( ControllerType type ) { mErrorArg.mControllerType = type; } /// How the Wii Remote is held.
If the controller type was set to the Wii Remote, specify whether it is held vertically or horizontally. Defaults to held vertically if not set. void setRemoCtrlHoldType( RemoCtrlHoldType type ) { mErrorArg.mRemoCtrlHoldType = type; } /// Error code setting.
If the error type is code specification, specify the error code returned by the Cafe SDK API and other libraries. void setErrorCode( s32 code ) { mErrorArg.mErrorCode = code; } /// Frame rate setting.
Specify 1 for 60 fps, or 2 for 30 fps. Defaults to 60 fps if not set. void setFrameRate( s32 rate ) { mErrorArg.mFrameRate = rate; } /// Message body setting.
If the error type is free text, specify the text to display in the error message. (Maximum of 500 characters per line and 2000 characters total. UTF16.) void setMainTextString( const char16* string ) { mErrorArg.mpMainText = string; } /// Button label setting.
If the error type includes a button, specify the string to display as the label of the button. (Maximum of 24 characters. UTF16.) void setButtonString( const char16* string ) { mErrorArg.mpBtn1Text = string; } /// Label setting for two buttons (left).
If the error type includes two buttons, specify the string to display as the label of the left-hand button. (Maximum of 24 characters. UTF16.) Specify what to display when the choice is no (cancel). void setLeftButtonString( const char16* string ) { mErrorArg.mpBtn1Text = string; } /// Label setting for two buttons (right).
If the error type includes two buttons, specify the string to display as the label of the right-hand button. (Maximum of 24 characters. UTF16.) Specify what to display when the choice is to yes (run) void setRightButtonString( const char16* string ) { mErrorArg.mpBtn2Text = string; } /// Title message setting.
If the error type specifies free text, set the string to display in the title of the dialog box. (Maximum of 10 characters.) The title is displayed in the form [ error_code: specified_string ]. void setTitleString( const char16* string ) { mErrorArg.mpTitleText = string; } /// Draw setting of the DPD pointer.
If the error viewer is set to appear on the TV, specify true to draw the Wii Remote's direct pointing device, or false to not draw. The pointer is drawn if not set. void setDrawDpdCursor( bool draw_dpd ) { mErrorArg.mbDrawDpdCursor = draw_dpd; } public: /// Error viewer appearance information. ErrorArg mErrorArg; }; //------------------------------------------------------------------------------ /** * Appearance information for the HOME button prohibition icon. */ class HomeNixSignArg { public: explicit HomeNixSignArg() : mFrameRate( 1 ) { } /// Frame rate setting.
Specify 1 for 60 fps, or 2 for 30 fps. Defaults to 60 fps if not set. void setFrameRate( s32 rate ) { mFrameRate = rate; } public: /// Frame rate. s32 mFrameRate; }; //------------------------------------------------------------------------------ } // namespace erreula //------------------------------------------------------------------------------ } // namespace nn #endif // NN_ERREULA_APPEAR_ARG_H_