mirror of
https://github.com/sarah-walker-pcem/pcem.git
synced 2025-07-23 03:33:02 +02:00
43 lines
1.4 KiB
C
43 lines
1.4 KiB
C
#include <pcem/plugin.h>
|
|
#include <pcem/config.h>
|
|
#include <string.h>
|
|
|
|
#include "lpt_epsonlx810.h"
|
|
|
|
extern char pcem_path[512];
|
|
|
|
LPT_DEVICE l_epsonlx810 = {"Epson LX-810 Printer", "lpt_epsonlx810", &lpt_epsonprinter_device};
|
|
|
|
#define safe_strncpy(a, b, n) \
|
|
do { \
|
|
strncpy((a), (b), (n)-1); \
|
|
(a)[(n)-1] = 0; \
|
|
} while (0)
|
|
|
|
char printer_path[512];
|
|
|
|
void set_printer_path(char *s) {
|
|
safe_strncpy(printer_path, s, 512);
|
|
append_slash(printer_path, 512);
|
|
}
|
|
|
|
void load_config() {
|
|
char *cfg_printer_path = config_get_string(CFG_GLOBAL, "Paths", "printer_path", 0);
|
|
|
|
if (cfg_printer_path)
|
|
set_printer_path(cfg_printer_path);
|
|
}
|
|
|
|
void save_config() { config_set_string(CFG_GLOBAL, "Paths", "printer_path", printer_path); }
|
|
|
|
void init_config() {
|
|
char s[512];
|
|
append_filename(s, pcem_path, "printer/", 512);
|
|
set_printer_path(s);
|
|
}
|
|
|
|
PLUGIN_INIT(printer_epsonlx810) {
|
|
add_config_callback(load_config, save_config, init_config);
|
|
pcem_add_lpt(&l_epsonlx810);
|
|
}
|