[go: up one dir, main page]

File: pbar.h

package info (click to toggle)
lincity 1.13.1-11
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd, wheezy
  • size: 7,000 kB
  • ctags: 4,879
  • sloc: ansic: 32,743; sh: 8,578; makefile: 578; perl: 445; yacc: 316; sed: 16
file content (85 lines) | stat: -rw-r--r-- 2,132 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
/* pbar.h: handles rate-of-change indicators 
 * This file is part of lincity.
 * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001.
 * Portions copyright (c) 2001 Corey Keasling.
 * ---------------------------------------------------------------------- */

#ifndef _pbar_h
#define _pbar_h

#include "geometry.h"

void init_pbars (void);
void pbars_full_refresh (void);
void init_pbar_text (void);
void draw_pbar (Rect* b, char* graphic);
void draw_pbars (void);
void clear_pbar_text (Rect* pbar);
void write_pbar_int (Rect* b, int val);
void write_pbar_text (Rect* b, char * s);
void refresh_pbars (void);
void refresh_population_text (void);

void update_pbar (int pbar_num, int value, int month_flag);
void update_pbars_daily(void);
void update_pbars_monthly(void);
int compute_pbar_offset (Rect* b, int val);
void draw_pbar_new (Rect* b, int val);
void pbar_mouse(int rawx, int rawy, int button);

/* Constants */

#define PBAR_POP_X      (PBAR_AREA_X + 4)
#define PBAR_POP_Y      (PBAR_AREA_Y + 4)
#define PBAR_TECH_X     PBAR_POP_X
#define PBAR_TECH_Y     PBAR_POP_Y+(PBAR_H+1)
#define PBAR_FOOD_X     PBAR_POP_X
#define PBAR_FOOD_Y     PBAR_POP_Y+(PBAR_H+1)*2
#define PBAR_JOBS_X     PBAR_POP_X
#define PBAR_JOBS_Y     PBAR_POP_Y+(PBAR_H+1)*3
#define PBAR_COAL_X     PBAR_POP_X
#define PBAR_COAL_Y     PBAR_POP_Y+(PBAR_H+1)*4
#define PBAR_GOODS_X    PBAR_POP_X
#define PBAR_GOODS_Y    PBAR_POP_Y+(PBAR_H+1)*5
#define PBAR_ORE_X      PBAR_POP_X
#define PBAR_ORE_Y      PBAR_POP_Y+(PBAR_H+1)*6
#define PBAR_STEEL_X    PBAR_POP_X
#define PBAR_STEEL_Y    PBAR_POP_Y+(PBAR_H+1)*7
#define PBAR_MONEY_X    PBAR_POP_X
#define PBAR_MONEY_Y    PBAR_POP_Y+(PBAR_H+1)*8

/* Type:Position constants for pbars struct */

#define PPOP 0
#define PTECH 1
#define PFOOD 2
#define PJOBS 3
#define PMONEY 4
#define PCOAL 5
#define PGOODS 6
#define PORE 7
#define PSTEEL 8


#define NUM_PBARS 9

/* Number of elements per pbar */
#define PBAR_DATA_SIZE 12

struct pbar_st 
{
    int oldtot;
    int tot;
    int diff;

    int data_size;
    int data[PBAR_DATA_SIZE];
};

extern struct pbar_st pbars[NUM_PBARS];

#endif