1 #define DWG_TYPE DWG_TYPE_PLOTSETTINGS
2 #include "common.c"
3
4 void
5 api_process (dwg_object *obj)
6 {
7 int error, isnew;
8 BITCODE_T printer_cfg_file;
9 BITCODE_T paper_size;
10 BITCODE_BD left_margin;
11 BITCODE_BD bottom_margin;
12 BITCODE_BD right_margin;
13 BITCODE_BD top_margin;
14 BITCODE_BD paper_width;
15 BITCODE_BD paper_height;
16 BITCODE_T canonical_media_name;
17 BITCODE_2BD_1 plot_origin;
18 BITCODE_2BD_1 plot_window_ll;
19 BITCODE_2BD_1 plot_window_ur;
20 BITCODE_H plotview;
21 BITCODE_TV plotview_name;
22 BITCODE_BD paper_units;
23 BITCODE_BD drawing_units;
24 BITCODE_BS plot_flags;
25 BITCODE_BS plot_paper_unit;
26 BITCODE_BS plot_rotation_mode;
27 BITCODE_BS plot_type;
28 BITCODE_T stylesheet;
29 BITCODE_BS std_scale_type;
30 BITCODE_BD std_scale_factor;
31 BITCODE_2BD_1 paper_image_origin;
32 BITCODE_BS shadeplot_type;
33 BITCODE_BS shadeplot_reslevel;
34 BITCODE_BS shadeplot_customdpi;
35 BITCODE_H shadeplot;
36
37 Dwg_Version_Type dwg_version = obj->parent->header.version;
38 dwg_obj_plotsettings *plt = dwg_object_to_PLOTSETTINGS (obj);
39
40 CHK_ENTITY_UTF8TEXT (plt, PLOTSETTINGS, printer_cfg_file);
41 CHK_ENTITY_UTF8TEXT (plt, PLOTSETTINGS, paper_size);
42 CHK_ENTITY_UTF8TEXT (plt, PLOTSETTINGS, canonical_media_name);
43 CHK_ENTITY_UTF8TEXT (plt, PLOTSETTINGS, plotview_name);
44 CHK_ENTITY_H (plt, PLOTSETTINGS, plotview);
45
46 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, plot_flags, BSx);
47 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, left_margin, BD);
48 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, bottom_margin, BD);
49 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, right_margin, BD);
50 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, top_margin, BD);
51 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, paper_width, BD);
52 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, paper_height, BD);
53 CHK_ENTITY_2RD (plt, PLOTSETTINGS, plot_origin);
54 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, plot_paper_unit, BS);
55 CHK_ENTITY_MAX (plt, PLOTSETTINGS, plot_paper_unit, BS, 2);
56 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, plot_rotation_mode, BS);
57 CHK_ENTITY_MAX (plt, PLOTSETTINGS, plot_rotation_mode, BS, 3);
58 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, plot_type, BS);
59 CHK_ENTITY_MAX (plt, PLOTSETTINGS, plot_type, BS, 5);
60 CHK_ENTITY_2RD (plt, PLOTSETTINGS, plot_window_ll);
61 CHK_ENTITY_2RD (plt, PLOTSETTINGS, plot_window_ur);
62 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, paper_units, BD);
63 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, drawing_units, BD);
64 CHK_ENTITY_UTF8TEXT (plt, PLOTSETTINGS, stylesheet);
65 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, std_scale_type, BS);
66 CHK_ENTITY_MAX (plt, PLOTSETTINGS, std_scale_type, BS, 32);
67 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, std_scale_factor, BD);
68 CHK_ENTITY_2RD (plt, PLOTSETTINGS, paper_image_origin);
69 // 2004+:
70 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, shadeplot_type, BS);
71 CHK_ENTITY_MAX (plt, PLOTSETTINGS, shadeplot_type, BS, 5);
72 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, shadeplot_reslevel, BS);
73 CHK_ENTITY_MAX (plt, PLOTSETTINGS, shadeplot_reslevel, BS, 5);
74 CHK_ENTITY_TYPE (plt, PLOTSETTINGS, shadeplot_customdpi, BS);
75 // 2007+:
76 CHK_ENTITY_H (plt, PLOTSETTINGS, shadeplot);
77 }