Esempio n. 1
0
void GuiSkillEdit::draw( class_t *p )
{
	newWin();

	if( mSkillEditWin == NULL )
		return;
	if( p == NULL )
		return;

	classData = p;

#ifdef D_GTK
	gWinPos[WIN_KIND_SKILL_EDIT].draw( WIN_KIND_SKILL_EDIT );
	redraw();
#endif // D_GTK

#ifdef D_MFC
	mSkillEditWin->DoModal();
#endif // D_MFC
}
WindowManager::WindowManager() : Windows("Window"), CurWin(0){
    //Settings.AntialiasingLevel = 2;  // Request 2 levels of antialiasing
    
    MainWin = newWin("");
    setCurWin(MainWin);
}
Esempio n. 3
0
void GuiSkillEdit::init()
{
	newWin();
}
Esempio n. 4
0
void GuiSkillEdit::redraw()
{
	newWin();

	if( mSkillEditWin == NULL )
		return;
	if( classData == NULL )
		return;

	// class name

#ifdef D_GTK
	GtkEntry *e;
	e = GTK_ENTRY( mEntryName );
	gtk_entry_set_text( e, classData->name );
#endif // D_GTK

#ifdef D_MFC
	mSkillEditWin->mEditName = classData->name;
#endif // D_MFC

	// ability

	for( long i = 0; i < SKILL_MAX_N; i++ ){
		skill_kind_t skillKind = classData->skill[i];

		const char *skillName = get_skill_name_from_kind(
				skillKind );

		rate_t rate = calc_skill_exp_rate(
				classData, skillKind );
		char sRate[15 + 1];
		sn_printf( sRate, 15, "%ld%%", (long)rate );

#ifdef D_GTK
		set_label_text_button( GTK_BUTTON( mButtonSkill[i] ),
				skillName, 0.0, 0.5 );
		gtk_label_set_text( GTK_LABEL( mLabelRate[i] ), sRate );
#endif // D_GTK

#ifdef D_MFC
		CButton *btn = (CButton *)mSkillEditWin->GetDlgItem(
				IDC_SKILL_EDIT_SKILL_00 + i );
		btn->SetWindowText( skillName );

		CStatic *label = (CStatic *)mSkillEditWin->GetDlgItem(
				IDC_SKILL_EDIT_RATE_00 + i );
		label->SetWindowText( sRate );
#endif // D_MFC
	}

	// hint

	long nSlot = -1;
	edit_skill_t n = get_edit_skill_n();
	if( (EDIT_SKILL_A_00 <= n) && (n <= EDIT_SKILL_A_09) )
		nSlot = n - EDIT_SKILL_A_00;
	if( (EDIT_SKILL_B_00 <= n) && (n <= EDIT_SKILL_B_09) )
		nSlot = n - EDIT_SKILL_B_00 + SKILL_PER_PAGE_MAX_N;

	skill_kind_t mSkillKind = SKILL_KIND_NULL;
	if( nSlot > -1 )
		mSkillKind = classData->skill[nSlot];

#ifdef D_GTK
	gtk_label_set_text( GTK_LABEL( mLabelHint ),
			get_skill_hint( mSkillKind ) );
#endif // D_GTK

#ifdef D_MFC
	CStatic *label = (CStatic *)mSkillEditWin->GetDlgItem(
			IDC_SKILL_EDIT_HINT );
	label->SetWindowText( get_skill_hint( mSkillKind ) );
#endif // D_MFC

	// ページ切り替え

#ifdef D_MFC
	CButton *btn;

	btn = (CButton *)mSkillEditWin->GetDlgItem(
			IDC_SKILL_EDIT_PREV );
	btn->SetWindowText( MSG_EDIT_CLASS_PREV );

	btn = (CButton *)mSkillEditWin->GetDlgItem(
			IDC_SKILL_EDIT_NEXT );
	btn->SetWindowText( MSG_EDIT_CLASS_NEXT );
#endif // D_MFC

	// end

#ifdef D_MFC
	mSkillEditWin->UpdateData( false );
#endif // D_MFC
}