Skip to content

Commit 1bd7160

Browse files
committed
Remove parameters from gauge_settings constructor and change values after struct creation.
1 parent 8464e17 commit 1bd7160

File tree

2 files changed

+16
-10
lines changed

2 files changed

+16
-10
lines changed

code/hud/hudparse.cpp

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -446,14 +446,18 @@ void parse_hud_gauges_tbl(const char *filename)
446446
gauge_type = parse_gauge_type();
447447

448448
// change some of the default gauge settings to the appropriate values.
449-
gauge_settings settings(&ship_classes, use_font, scale_gauge, force_scaling_above_res, use_clr_p);
449+
gauge_settings settings;
450+
settings.font_num = use_font;
451+
settings.scale_gauge = scale_gauge;
452+
memcpy(settings.force_scaling_above_res, force_scaling_above_res, sizeof(settings.force_scaling_above_res));
453+
settings.ship_idx = &ship_classes;
454+
settings.use_clr = use_clr_p;
450455

451456
// if "default" is specified, then the base resolution is {-1, -1},
452457
// indicating GR_640 or GR_1024 to the handlers. otherwise, change it
453458
// to the given base resolution.
454459
if (!optional_string("default")) {
455-
settings.base_res[0] = base_res[0];
456-
settings.base_res[1] = base_res[1];
460+
memcpy(settings.base_res, base_res, sizeof(settings.base_res));
457461
}
458462

459463
// then call the specific gauge load handler function for this gauge type.
@@ -573,7 +577,8 @@ void load_missing_retail_gauges()
573577
}
574578

575579
if(!retail_gauge_loaded) {
576-
gauge_settings settings(&sindex);
580+
gauge_settings settings;
581+
settings.ship_idx = &sindex;
577582
load_gauge(retail_gauges[i], &settings);
578583
}
579584
}
@@ -590,7 +595,8 @@ void load_missing_retail_gauges()
590595

591596
// load radar gauge if not loaded.
592597
if(!retail_gauge_loaded) {
593-
gauge_settings settings(&sindex);
598+
gauge_settings settings;
599+
settings.ship_idx = &sindex;
594600
load_gauge((Cmdline_orb_radar ? HUD_OBJECT_RADAR_ORB : HUD_OBJECT_RADAR_STD), &settings);
595601
}
596602

@@ -604,7 +610,8 @@ void load_missing_retail_gauges()
604610
}
605611

606612
if(!retail_gauge_loaded) {
607-
gauge_settings settings(&sindex);
613+
gauge_settings settings;
614+
settings.ship_idx = &sindex;
608615
load_gauge(HUD_OBJECT_WEAPON_LINKING, &settings);
609616
}
610617
}

code/hud/hudparse.h

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,11 @@ extern int Force_scaling_above_res_global[2];
2525
extern int Hud_font;
2626

2727
typedef struct gauge_settings {
28-
SCP_vector<int>* ship_idx;
2928
int base_res[2];
3029
int font_num;
3130
bool scale_gauge;
3231
int force_scaling_above_res[2];
32+
SCP_vector<int>* ship_idx;
3333
color *use_clr;
3434
float origin[2];
3535
int offset[2];
@@ -39,11 +39,10 @@ typedef struct gauge_settings {
3939
bool set_colour;
4040
bool slew;
4141

42-
gauge_settings(SCP_vector<int>* _ship_idx = NULL, int _font_num = Hud_font, bool _scale_gauge = Scale_retail_gauges, int _force_scaling_above_res[2] = Force_scaling_above_res_global, color *_use_clr = NULL)
43-
: ship_idx(_ship_idx), font_num(_font_num), scale_gauge(_scale_gauge), use_clr(_use_clr), use_coords(false), set_position(true), set_colour(true)/*, slew(false)*/ {
42+
gauge_settings() : font_num(Hud_font), scale_gauge(Scale_retail_gauges), ship_idx(nullptr), use_clr(nullptr), use_coords(false), set_position(true), set_colour(true), slew(false) {
4443
base_res[0] = -1;
4544
base_res[1] = -1;
46-
memcpy(force_scaling_above_res, _force_scaling_above_res, sizeof(force_scaling_above_res));
45+
memcpy(force_scaling_above_res, Force_scaling_above_res_global, sizeof(force_scaling_above_res));
4746
origin[0] = 0.0f;
4847
origin[1] = 0.0f;
4948
offset[0] = 0;

0 commit comments

Comments
 (0)