mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
* Fixing upper/lower case for includes types.h, zconf.h and zlib.h were renamed so that global includes like Types.h are not used.
147 lines
4.4 KiB
C++
147 lines
4.4 KiB
C++
/**
|
|
* @file
|
|
* @author Flugente (bears-pit.com)
|
|
*/
|
|
|
|
#include "CharProfile.h"
|
|
#include "IMP Gear Entrance.h"
|
|
#include "IMP MainPage.h"
|
|
#include "IMPVideoObjects.h"
|
|
#include "Utilities.h"
|
|
#include "DEBUG.H"
|
|
#include "WordWrap.h"
|
|
#include "Encrypted File.h"
|
|
#include "Cursors.h"
|
|
#include "laptop.h"
|
|
#include "IMP Text System.h"
|
|
#include "Text.h"
|
|
|
|
// the buttons
|
|
UINT32 giIMPGearEntranceButtonImage[2];
|
|
UINT32 giIMPGearEntranceButton[2];
|
|
|
|
// function definitions
|
|
void DestroyIMPGearEntranceButtons( void );
|
|
void CreateIMPGearEntranceButtons( void );
|
|
|
|
|
|
// callbacks
|
|
void BtnIMPGearBeginCallbackOld( GUI_BUTTON *btn, INT32 reason );
|
|
void BtnIMPGearBeginCallbackNew( GUI_BUTTON *btn, INT32 reason );
|
|
|
|
BOOLEAN fNewIMPGearMethodUsed = FALSE;
|
|
|
|
BOOLEAN IsIMPGearUsed()
|
|
{
|
|
return fNewIMPGearMethodUsed;
|
|
}
|
|
|
|
void EnterIMPGearEntrance( void )
|
|
{
|
|
CreateIMPGearEntranceButtons( );
|
|
}
|
|
|
|
void RenderIMPGearEntrance( void )
|
|
{
|
|
// the background
|
|
RenderProfileBackGround( );
|
|
|
|
ColorFillVideoSurfaceArea( FRAME_BUFFER, LAPTOP_SCREEN_UL_X + 50, LAPTOP_SCREEN_WEB_UL_Y + 50, LAPTOP_SCREEN_LR_X - 50, LAPTOP_SCREEN_WEB_UL_Y + 200, Get16BPPColor( FROMRGB( 100, 100, 100 ) ) );
|
|
|
|
UINT16 usY = DisplayWrappedString( LAPTOP_SCREEN_UL_X + 60, LAPTOP_SCREEN_WEB_UL_Y + 60, LAPTOP_SCREEN_LR_X - LAPTOP_SCREEN_UL_X - 120, 2, FONT14ARIAL, FONT_WHITE,
|
|
szIMPGearWebSiteText[0], FONT_MCOLOR_BLACK, FALSE, 0 );
|
|
usY += DisplayWrappedString( LAPTOP_SCREEN_UL_X + 60, LAPTOP_SCREEN_WEB_UL_Y + 60 + usY, LAPTOP_SCREEN_LR_X - LAPTOP_SCREEN_UL_X - 120, 2, FONT14ARIAL, FONT_WHITE,
|
|
szIMPGearWebSiteText[1], FONT_MCOLOR_BLACK, FALSE, 0 );
|
|
usY += DisplayWrappedString( LAPTOP_SCREEN_UL_X + 60, LAPTOP_SCREEN_WEB_UL_Y + 60 + usY, LAPTOP_SCREEN_LR_X - LAPTOP_SCREEN_UL_X - 120, 2, FONT14ARIAL, FONT_WHITE,
|
|
szIMPGearWebSiteText[2], FONT_MCOLOR_BLACK, FALSE, 0 );
|
|
}
|
|
|
|
void ExitIMPGearEntrance( void )
|
|
{
|
|
// destroy the finish buttons
|
|
DestroyIMPGearEntranceButtons( );
|
|
}
|
|
|
|
void HandleIMPGearEntrance( void )
|
|
{
|
|
InvalidateRegion( LAPTOP_SCREEN_UL_X, LAPTOP_SCREEN_WEB_UL_Y, LAPTOP_SCREEN_LR_X, LAPTOP_SCREEN_WEB_LR_Y );
|
|
}
|
|
|
|
void CreateIMPGearEntranceButtons( void )
|
|
{
|
|
// the begin button
|
|
giIMPGearEntranceButtonImage[0] = LoadButtonImage( "LAPTOP\\button_2.sti", -1, 0, -1, 1, -1 );
|
|
|
|
giIMPGearEntranceButton[0] = CreateIconAndTextButton( giIMPGearEntranceButtonImage[0], szIMPGearWebSiteText[3], FONT12ARIAL,
|
|
FONT_WHITE, DEFAULT_SHADOW,
|
|
FONT_WHITE, DEFAULT_SHADOW,
|
|
TEXT_CJUSTIFIED,
|
|
LAPTOP_SCREEN_UL_X + (136), LAPTOP_SCREEN_WEB_UL_Y + (220), BUTTON_TOGGLE, MSYS_PRIORITY_HIGH,
|
|
BtnGenericMouseMoveButtonCallback, (GUI_CALLBACK)BtnIMPGearBeginCallbackOld );
|
|
|
|
giIMPGearEntranceButton[1] = CreateIconAndTextButton( giIMPGearEntranceButtonImage[0], szIMPGearWebSiteText[4], FONT12ARIAL,
|
|
FONT_WHITE, DEFAULT_SHADOW,
|
|
FONT_WHITE, DEFAULT_SHADOW,
|
|
TEXT_CJUSTIFIED,
|
|
LAPTOP_SCREEN_UL_X + (136), LAPTOP_SCREEN_WEB_UL_Y + (280), BUTTON_TOGGLE, MSYS_PRIORITY_HIGH,
|
|
BtnGenericMouseMoveButtonCallback, (GUI_CALLBACK)BtnIMPGearBeginCallbackNew );
|
|
|
|
SetButtonCursor( giIMPGearEntranceButton[0], CURSOR_WWW );
|
|
}
|
|
|
|
|
|
void DestroyIMPGearEntranceButtons( void )
|
|
{
|
|
RemoveButton( giIMPGearEntranceButton[0] );
|
|
RemoveButton( giIMPGearEntranceButton[1] );
|
|
UnloadButtonImage( giIMPGearEntranceButtonImage[0] );
|
|
}
|
|
|
|
|
|
void BtnIMPGearBeginCallbackOld( GUI_BUTTON *btn, INT32 reason )
|
|
{
|
|
if ( !(btn->uiFlags & BUTTON_ENABLED) )
|
|
return;
|
|
|
|
if ( reason & MSYS_CALLBACK_REASON_LBUTTON_DWN )
|
|
{
|
|
btn->uiFlags |= (BUTTON_CLICKED_ON);
|
|
}
|
|
else if ( reason & MSYS_CALLBACK_REASON_LBUTTON_UP )
|
|
{
|
|
if ( btn->uiFlags & BUTTON_CLICKED_ON )
|
|
{
|
|
btn->uiFlags &= ~(BUTTON_CLICKED_ON);
|
|
|
|
iCurrentImpPage = IMP_FINISH;
|
|
iCurrentProfileMode = IMP__FINISH;
|
|
|
|
fButtonPendingFlag = TRUE;
|
|
|
|
fNewIMPGearMethodUsed = FALSE;
|
|
}
|
|
}
|
|
}
|
|
|
|
void BtnIMPGearBeginCallbackNew( GUI_BUTTON *btn, INT32 reason )
|
|
{
|
|
if ( !(btn->uiFlags & BUTTON_ENABLED) )
|
|
return;
|
|
|
|
if ( reason & MSYS_CALLBACK_REASON_LBUTTON_DWN )
|
|
{
|
|
btn->uiFlags |= (BUTTON_CLICKED_ON);
|
|
}
|
|
else if ( reason & MSYS_CALLBACK_REASON_LBUTTON_UP )
|
|
{
|
|
if ( btn->uiFlags & BUTTON_CLICKED_ON )
|
|
{
|
|
btn->uiFlags &= ~(BUTTON_CLICKED_ON);
|
|
iCurrentImpPage = IMP_GEAR;
|
|
fButtonPendingFlag = TRUE;
|
|
|
|
fNewIMPGearMethodUsed = TRUE;
|
|
}
|
|
}
|
|
}
|