int common_pc(struct scripting_context *context) { static int offset; static int size; int ret; ret = get_common_field(context, &size, &offset, "common_preempt_count"); if (ret < 0) return -1; return ret; }
int common_lock_depth(struct scripting_context *context) { static int offset; static int size; int ret; ret = get_common_field(context, &size, &offset, "common_lock_depth"); if (ret < 0) return -1; return ret; }
/** * \brief Create and show the edit frame for a field. * \param name The name of the field. */ void bf::item_field_edit::create_field_editor( const std::string& name ) { const type_field& f = get_common_field(name); m_last_edited_field = name; switch ( f.get_field_type() ) { case type_field::integer_field_type: show_simple_property_dialog<integer_type>(f, _("Integer")); break; case type_field::u_integer_field_type: show_simple_property_dialog<u_integer_type>(f, _("Unsigned integer")); break; case type_field::real_field_type: show_simple_property_dialog<real_type>(f, _("Real number")); break; case type_field::boolean_field_type: if ( !f.is_list() ) toggle_boolean_field_value(f); else show_property_dialog<bool_edit>(f, _("Boolean value")); break; case type_field::string_field_type: show_string_property_dialog(f); break; case type_field::sprite_field_type: show_property_dialog<sprite_edit>(f, _("Sprite")); break; case type_field::animation_field_type: show_property_dialog<any_animation_edit>(f, _("Animation")); break; case type_field::item_reference_field_type: show_item_reference_property_dialog(f); break; case type_field::font_field_type: show_property_dialog<font_edit>(f, _("Font")); break; case type_field::sample_field_type: show_property_dialog<sample_edit>(f, _("Sound sample")); break; case type_field::color_field_type: show_property_dialog<color_edit>(f, _("Color")); break; case type_field::easing_field_type: show_property_dialog<easing_edit>(f, _("Easing function")); break; } } // item_field_edit::create_field_editor()
/** * \brief Update the displayed value of a field. * \param index The index of the field in the view. */ void bf::item_field_edit::update_value( long index ) { std::string name; if( get_field_name(index, name) ) { wxListItem prop; prop.SetId(index); GetItem(prop); const type_field& f = get_common_field(name); const bool has_val = group_has_value(f); prop.SetText( get_common_value_as_text(f) ); prop.SetColumn(1); SetItem(prop); if ( f.get_required() ) set_required_color(index, has_val); else set_default_value_color(index, has_val); } } // item_field_edit::update_value()