CCorretta gestione numero copie
git-svn-id: svn://10.65.10.50/trunk@242 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
7696ebc104
commit
c1e97ca1f9
@ -33,20 +33,6 @@ HIDDEN long backdrop_eh( WINDOW win, EVENT* ep)
|
|||||||
clear_window( win, COLOR_BLUE );
|
clear_window( win, COLOR_BLUE );
|
||||||
#else
|
#else
|
||||||
clear_window( win, COLOR_GRAY );
|
clear_window( win, COLOR_GRAY );
|
||||||
/*
|
|
||||||
const RCT& rct = ep->v.update.rct;
|
|
||||||
bool even = FALSE;
|
|
||||||
for (int y = 0; y < rct.bottom; y += 96)
|
|
||||||
{
|
|
||||||
const int sx = even ? 96 : 0;
|
|
||||||
for (int x = sx; x < rct.right; x += 192)
|
|
||||||
if (
|
|
||||||
(y+64) > rct.top && y < rct.bottom &&
|
|
||||||
(x+64) > rct.left && x < rct.right
|
|
||||||
) win_draw_icon(win, x, y, ICON_RSRC);
|
|
||||||
even = !even;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return 0L;
|
return 0L;
|
||||||
@ -57,7 +43,7 @@ HIDDEN void create_backdrop( void )
|
|||||||
#if XVTWS == WMWS
|
#if XVTWS == WMWS
|
||||||
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_MENU, COLOR_BLACK, COLOR_WHITE);
|
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_MENU, COLOR_BLACK, COLOR_WHITE);
|
||||||
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_DIALOG, COLOR_BLUE, COLOR_WHITE);
|
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_DIALOG, COLOR_BLUE, COLOR_WHITE);
|
||||||
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_WINDOW, COLOR_RED, COLOR_WHITE);
|
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_WINDOW, COLOR_RED, COLOR_WHITE);
|
||||||
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_CONTROL, COLOR_BLACK, COLOR_WHITE);
|
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_CONTROL, COLOR_BLACK, COLOR_WHITE);
|
||||||
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_DISABLED, COLOR_GRAY, COLOR_WHITE);
|
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_DISABLED, COLOR_GRAY, COLOR_WHITE);
|
||||||
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_MNEMONIC, COLOR_RED, COLOR_WHITE);
|
xvt_escape(XVT_ESC_CH_COLOR, XVT_CH_CLR_MNEMONIC, COLOR_RED, COLOR_WHITE);
|
||||||
@ -120,7 +106,7 @@ void TApplication::wait_for(const char* command)
|
|||||||
while (waiting_for) do_events();
|
while (waiting_for) do_events();
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
// It seems necessary to restore these things
|
// We need to restore these things
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
customize_controls(TRUE);
|
customize_controls(TRUE);
|
||||||
xvt_statbar_refresh();
|
xvt_statbar_refresh();
|
||||||
|
@ -54,6 +54,7 @@ public:
|
|||||||
virtual bool menu(MENU_TAG) { return TRUE; } // Controlla il menu
|
virtual bool menu(MENU_TAG) { return TRUE; } // Controlla il menu
|
||||||
virtual bool destroy(); // Rimuove l'applicazione
|
virtual bool destroy(); // Rimuove l'applicazione
|
||||||
virtual void print();
|
virtual void print();
|
||||||
|
virtual word class_id() const { return CLASS_APPLICATION; }
|
||||||
void stop_run(); // Forza chiusura applicazione
|
void stop_run(); // Forza chiusura applicazione
|
||||||
|
|
||||||
void check_menu_item(MENU_TAG item); // Check menu
|
void check_menu_item(MENU_TAG item); // Check menu
|
||||||
|
@ -15,6 +15,9 @@
|
|||||||
#define CLASS_FILENAME 12
|
#define CLASS_FILENAME 12
|
||||||
#define CLASS_TOKEN_STRING 13
|
#define CLASS_TOKEN_STRING 13
|
||||||
|
|
||||||
|
#define CLASS_APPLICATION 40
|
||||||
|
#define CLASS_PRINT_APPLICATION 41
|
||||||
|
|
||||||
#define CLASS_PRINTROW 50
|
#define CLASS_PRINTROW 50
|
||||||
#define CLASS_PRINTER 51
|
#define CLASS_PRINTER 51
|
||||||
|
|
||||||
|
@ -43,17 +43,17 @@ int TExternal_app::run(bool async)
|
|||||||
|
|
||||||
// ems swap
|
// ems swap
|
||||||
setems(1);
|
setems(1);
|
||||||
// *** BLinker support; uncomment as needed
|
// *** BLinker support; uncomment as needed
|
||||||
// BLIUNHOOK();
|
// BLIUNHOOK();
|
||||||
// *******************
|
// *******************
|
||||||
char* s = getenv("TMPDIR");
|
char* s = getenv("TMPDIR");
|
||||||
if (s == NULL)
|
if (s == NULL)
|
||||||
_exitcode = holdev("\\tmp;",0,_path);
|
_exitcode = holdev("\\tmp;",0,_path);
|
||||||
else
|
else
|
||||||
_exitcode = holdev(s,0,_path);
|
_exitcode = holdev(s,0,_path);
|
||||||
// *** BLinker support; uncomment as needed
|
// *** BLinker support; uncomment as needed
|
||||||
// BLREINIT();
|
// BLREINIT();
|
||||||
// *******************
|
// *******************
|
||||||
if (!_exitcode)
|
if (!_exitcode)
|
||||||
_exitcode = childret();
|
_exitcode = childret();
|
||||||
else
|
else
|
||||||
@ -61,44 +61,50 @@ int TExternal_app::run(bool async)
|
|||||||
xvt_escape(XVT_ESC_CH_REFRESH);
|
xvt_escape(XVT_ESC_CH_REFRESH);
|
||||||
|
|
||||||
#elif XVT_OS == XVT_OS_WIN
|
#elif XVT_OS == XVT_OS_WIN
|
||||||
set_cursor(TASK_WIN, CURSOR_WAIT);
|
set_cursor(TASK_WIN, CURSOR_WAIT);
|
||||||
_exitcode = WinExec((char*)_path, SW_SHOW);
|
_exitcode = WinExec((char*)_path, SW_SHOW);
|
||||||
if (!async) MainApp()->wait_for(_path);
|
if (_exitcode >= 32)
|
||||||
set_cursor(TASK_WIN, CURSOR_ARROW);
|
{
|
||||||
|
if (!async) MainApp()->wait_for(_path);
|
||||||
|
_exitcode = 0;
|
||||||
|
}
|
||||||
|
else error_box("Impossibile eseguire %s", (const char*)_path);
|
||||||
|
|
||||||
|
set_cursor(TASK_WIN, CURSOR_ARROW);
|
||||||
#else
|
#else
|
||||||
|
|
||||||
switch (fork())
|
switch (fork())
|
||||||
|
{
|
||||||
|
case -1:
|
||||||
|
_error = errno;
|
||||||
|
_exitcode = -1;
|
||||||
|
break;
|
||||||
|
case 0:
|
||||||
|
const char* s = strdup(_path);
|
||||||
|
char* p = strchr(s, ' ');
|
||||||
|
if (p) *p = '\0';
|
||||||
|
const char* pathn = strdup(s);
|
||||||
|
const char* args[21];
|
||||||
|
int i = 0;
|
||||||
|
args[i++] = pathn;
|
||||||
|
while ((i < 20) && (p))
|
||||||
{
|
{
|
||||||
case -1:
|
s = p + 1;
|
||||||
_error = errno;
|
p = strchr(s, ' ');
|
||||||
_exitcode = -1;
|
if (p) *p = '\0';
|
||||||
break;
|
args[i++] = strdup(s);
|
||||||
case 0:
|
|
||||||
const char* s = strdup(_path);
|
|
||||||
char* p = strchr(s, ' ');
|
|
||||||
if (p) *p = '\0';
|
|
||||||
const char* pathn = strdup(s);
|
|
||||||
const char* args[21];
|
|
||||||
int i = 0;
|
|
||||||
args[i++] = pathn;
|
|
||||||
while ((i < 20) && (p))
|
|
||||||
{
|
|
||||||
s = p + 1;
|
|
||||||
p = strchr(s, ' ');
|
|
||||||
if (p) *p = '\0';
|
|
||||||
args[i++] = strdup(s);
|
|
||||||
}
|
|
||||||
args[i] = NULL;
|
|
||||||
for (i = 3; i < _NFILE; i++) fcntl(i,F_SETFD,1);
|
|
||||||
// execvp(_path, NULL);
|
|
||||||
execvp ( pathn , args );
|
|
||||||
exit ( -1 );
|
|
||||||
default:
|
|
||||||
if(wait(&_exitcode) == -1)
|
|
||||||
_exitcode = -1;
|
|
||||||
else _exitcode = _exitcode >> 8;
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
args[i] = NULL;
|
||||||
|
for (i = 3; i < _NFILE; i++) fcntl(i,F_SETFD,1);
|
||||||
|
// execvp(_path, NULL);
|
||||||
|
execvp ( pathn , args );
|
||||||
|
exit ( -1 );
|
||||||
|
default:
|
||||||
|
if(wait(&_exitcode) == -1)
|
||||||
|
_exitcode = -1;
|
||||||
|
else _exitcode = _exitcode >> 8;
|
||||||
|
break;
|
||||||
|
}
|
||||||
_error = errno;
|
_error = errno;
|
||||||
xvt_escape(XVT_ESC_CH_REFRESH);
|
xvt_escape(XVT_ESC_CH_REFRESH);
|
||||||
|
|
||||||
@ -110,7 +116,7 @@ int TExternal_app::run(bool async)
|
|||||||
// update counts
|
// update counts
|
||||||
if (_exitcode == 0)
|
if (_exitcode == 0)
|
||||||
_count++;
|
_count++;
|
||||||
return _exitcode;
|
return _exitcode;
|
||||||
}
|
}
|
||||||
|
|
||||||
TExternal_app::TExternal_app(const char* p)
|
TExternal_app::TExternal_app(const char* p)
|
||||||
|
@ -218,9 +218,7 @@ TMask::TMask(const char* title, int pages, int cols, int rows, int xpos,
|
|||||||
|
|
||||||
void TMask::read_mask(const char* name, int mode, int num)
|
void TMask::read_mask(const char* name, int mode, int num)
|
||||||
{
|
{
|
||||||
#ifdef DBG
|
|
||||||
clock1 = clock();
|
clock1 = clock();
|
||||||
#endif
|
|
||||||
|
|
||||||
_source_file = name;
|
_source_file = name;
|
||||||
_source_file.ext(MASK_EXT);
|
_source_file.ext(MASK_EXT);
|
||||||
@ -258,9 +256,7 @@ void TMask::read_mask(const char* name, int mode, int num)
|
|||||||
|
|
||||||
add_buttons();
|
add_buttons();
|
||||||
|
|
||||||
#ifdef DBG
|
|
||||||
clock1 = clock()-clock1;
|
clock1 = clock()-clock1;
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -434,9 +430,7 @@ bool TMask::page_enabled(int page) const
|
|||||||
|
|
||||||
void TMask::start_run()
|
void TMask::start_run()
|
||||||
{
|
{
|
||||||
#ifdef DBG
|
|
||||||
clock2 = clock();
|
clock2 = clock();
|
||||||
#endif
|
|
||||||
|
|
||||||
load_checks();
|
load_checks();
|
||||||
|
|
||||||
@ -465,9 +459,7 @@ void TMask::start_run()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef DBG
|
|
||||||
clock2 = clock() - clock2;
|
clock2 = clock() - clock2;
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TMask::check_fields()
|
bool TMask::check_fields()
|
||||||
|
@ -25,6 +25,6 @@
|
|||||||
#define MOV_OCFPI "OCFPI"
|
#define MOV_OCFPI "OCFPI"
|
||||||
#define MOV_CORRLIRE "CORRLIRE"
|
#define MOV_CORRLIRE "CORRLIRE"
|
||||||
#define MOV_CORRVALUTA "CORRVALUTA"
|
#define MOV_CORRVALUTA "CORRVALUTA"
|
||||||
|
#define MOV_DATACOMP "DATACOMP"
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -616,11 +616,11 @@ break;
|
|||||||
if (ok) dispatch_e_char(parent(), k);
|
if (ok) dispatch_e_char(parent(), k);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case K_ENTER:
|
case K_ESC:
|
||||||
case K_CTRL+K_ENTER:
|
case K_CTRL+K_ENTER:
|
||||||
{
|
{
|
||||||
const bool ok = (bool)xi_move_focus(_itf);
|
const bool ok = (bool)xi_move_focus(_itf);
|
||||||
if (ok) dispatch_e_char(parent(), k == K_ENTER ? K_TAB : K_BTAB);
|
dispatch_e_char(parent(), k == K_ESC ? K_ESC : K_TAB);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -14,10 +14,6 @@
|
|||||||
#include <relation.h>
|
#include <relation.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef __STRINGS_H
|
|
||||||
#include <strings.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// compatibility
|
// compatibility
|
||||||
#define TPrintapp TPrint_application
|
#define TPrintapp TPrint_application
|
||||||
|
|
||||||
@ -395,6 +391,8 @@ public:
|
|||||||
// di solito basta e avanza quella di default
|
// di solito basta e avanza quella di default
|
||||||
virtual bool menu(MENU_TAG m);
|
virtual bool menu(MENU_TAG m);
|
||||||
|
|
||||||
|
virtual word class_id() const { return CLASS_PRINT_APPLICATION; }
|
||||||
|
|
||||||
// print menu is enabled when set_print returns TRUE
|
// print menu is enabled when set_print returns TRUE
|
||||||
void enable_print_menu();
|
void enable_print_menu();
|
||||||
void disable_print_menu();
|
void disable_print_menu();
|
||||||
|
@ -39,8 +39,7 @@ PrintWhat;
|
|||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
|
||||||
void TPrinter ::
|
void TPrinter::_get_windows_printer_names (TToken_string & t)
|
||||||
_get_windows_printer_names (TToken_string & t)
|
|
||||||
{
|
{
|
||||||
char *buf = new char[4096]; // ammazzao'
|
char *buf = new char[4096]; // ammazzao'
|
||||||
|
|
||||||
@ -57,8 +56,7 @@ _get_windows_printer_names (TToken_string & t)
|
|||||||
delete buf;
|
delete buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOLEAN TPrinter ::
|
BOOLEAN TPrinter::start_winprint (long data)
|
||||||
start_winprint (long data)
|
|
||||||
{
|
{
|
||||||
PrDesc *pd = (PrDesc *) data;
|
PrDesc *pd = (PrDesc *) data;
|
||||||
TTextfile & txt = *(pd->_txt);
|
TTextfile & txt = *(pd->_txt);
|
||||||
@ -70,8 +68,7 @@ start_winprint (long data)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// utils del caz
|
// utils del caz
|
||||||
HIDDEN void
|
HIDDEN void read_int (const char *s, int &n, int &cnt)
|
||||||
read_int (const char *s, int &n, int &cnt)
|
|
||||||
{
|
{
|
||||||
static char nbuf[10];
|
static char nbuf[10];
|
||||||
int j = 0;
|
int j = 0;
|
||||||
@ -84,8 +81,7 @@ read_int (const char *s, int &n, int &cnt)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if XVT_OS == XVT_OS_WIN
|
#if XVT_OS == XVT_OS_WIN
|
||||||
void TPrinter ::
|
void TPrinter::set_win_formlen ()
|
||||||
set_win_formlen ()
|
|
||||||
{
|
{
|
||||||
long pw, ph, phr, pvr;
|
long pw, ph, phr, pvr;
|
||||||
xvt_escape (XVT_ESC_GET_PRINTER_INFO, _print_rcd, &ph, &pw, &pvr, &phr);
|
xvt_escape (XVT_ESC_GET_PRINTER_INFO, _print_rcd, &ph, &pw, &pvr, &phr);
|
||||||
@ -98,13 +94,12 @@ set_win_formlen ()
|
|||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
warning_box ("Il driver di stampante non e' valido. Non stampare prima di averlo"
|
warning_box ("Il driver di stampante non e' valido.\n"
|
||||||
" reinstallato");
|
"Non stampare prima di averlo reinstallato");
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void TPrinter ::
|
void TPrinter::_parse_background ()
|
||||||
_parse_background ()
|
|
||||||
{
|
{
|
||||||
char op;
|
char op;
|
||||||
int x1, x2, y1, y2;
|
int x1, x2, y1, y2;
|
||||||
@ -285,8 +280,7 @@ _parse_background ()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void TPrinter ::
|
void TPrinter::setbackground (const char *b)
|
||||||
setbackground (const char *b)
|
|
||||||
{
|
{
|
||||||
_background.destroy ();
|
_background.destroy ();
|
||||||
_bg_desc = b;
|
_bg_desc = b;
|
||||||
@ -609,7 +603,7 @@ bool printers_on_key (TMask_field & f, KEY key)
|
|||||||
{
|
{
|
||||||
TToken_string pn1 (10), pn2 (20);
|
TToken_string pn1 (10), pn2 (20);
|
||||||
|
|
||||||
const PrinterDef & def = MainApp ()->printer ().get_description (atoi (f.get ()));
|
const PrinterDef & def = MainApp()->printer().get_description(atoi(f.get ()));
|
||||||
const char *s;
|
const char *s;
|
||||||
int j = 0;
|
int j = 0;
|
||||||
while ((s = def.get_codenames (j)) != NULL)
|
while ((s = def.get_codenames (j)) != NULL)
|
||||||
@ -630,24 +624,25 @@ bool set_windows_print_device (TMask_field & f, KEY key)
|
|||||||
static char szDevice[80];
|
static char szDevice[80];
|
||||||
if (key == K_SPACE)
|
if (key == K_SPACE)
|
||||||
{
|
{
|
||||||
if (MainApp ()->printer ().get_printrcd () != NULL)
|
if (MainApp()->printer().get_printrcd() != NULL)
|
||||||
free_print_rcd (MainApp ()->printer ().get_printrcd ());
|
free_print_rcd (MainApp ()->printer().get_printrcd ());
|
||||||
TToken_string & pn = MainApp ()->printer ().getprinternames ();
|
TToken_string & pn = MainApp()->printer().getprinternames ();
|
||||||
TString pdev (pn.get (atoi (f.get ())));
|
TString pdev (pn.get (atoi (f.get ())));
|
||||||
GetProfileString ("devices", pdev, "", szDevice, sizeof (szDevice));
|
GetProfileString ("devices", pdev, "", szDevice, sizeof (szDevice));
|
||||||
pdev << "," << szDevice;
|
pdev << "," << szDevice;
|
||||||
// WriteProfileString("windows","device", pdev);
|
// WriteProfileString("windows","device", pdev);
|
||||||
// madonna bona
|
// madonna bona
|
||||||
MainApp ()->printer ().set_printrcd (get_print_rcd (&(MainApp ()->printer ().get_printrcdsize ())));
|
MainApp()->printer().set_printrcd(get_print_rcd (&(MainApp ()->printer ().get_printrcdsize ())));
|
||||||
MainApp ()->printer ().set_win_formlen ();
|
MainApp()->printer().set_win_formlen();
|
||||||
}
|
}
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
TPrinter :: TPrinter ():_date (TODAY), _multiple_link (FALSE), _frozen (FALSE), _isgraphics (TRUE),
|
TPrinter::TPrinter()
|
||||||
_lines_per_inch (6), _ch_size (12)
|
: _date (TODAY), _multiple_link (FALSE), _frozen (FALSE), _isgraphics (TRUE),
|
||||||
|
_lines_per_inch (6), _ch_size (12)
|
||||||
|
|
||||||
{
|
{
|
||||||
_footerhandler = _headerhandler = NULL;
|
_footerhandler = _headerhandler = NULL;
|
||||||
@ -1140,7 +1135,7 @@ void TPrinter::set()
|
|||||||
TToken_string pn1 (50), pn2 (100);
|
TToken_string pn1 (50), pn2 (100);
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
MainApp ()->disable_menu_item (M_FILE_PG_SETUP);
|
MainApp()->disable_menu_item (M_FILE_PG_SETUP);
|
||||||
|
|
||||||
#if XVT_OS != XVT_OS_WIN
|
#if XVT_OS != XVT_OS_WIN
|
||||||
|
|
||||||
@ -1176,7 +1171,12 @@ void TPrinter::set()
|
|||||||
mask.set (MSK_1_PRINTERS, format ("%d", _curprn));
|
mask.set (MSK_1_PRINTERS, format ("%d", _curprn));
|
||||||
mask.set (MSK_1_CODES, format ("%d", _curcode));
|
mask.set (MSK_1_CODES, format ("%d", _curcode));
|
||||||
mask.set (MSK_1_FILENAME, _printerfile);
|
mask.set (MSK_1_FILENAME, _printerfile);
|
||||||
mask.set (MSK_1_NPAGES, format("%d",((TPrint_application*)MainApp())->get_n_copies()));
|
|
||||||
|
int nc = 1;
|
||||||
|
if (MainApp()->class_id() == CLASS_PRINT_APPLICATION)
|
||||||
|
nc = ((TPrint_application*)MainApp())->get_n_copies();
|
||||||
|
mask.set(MSK_1_NPAGES, nc);
|
||||||
|
|
||||||
mask.reset (MSK_1_SAVE);
|
mask.reset (MSK_1_SAVE);
|
||||||
|
|
||||||
if (mask.run () == K_ESC)
|
if (mask.run () == K_ESC)
|
||||||
@ -1196,7 +1196,9 @@ void TPrinter::set()
|
|||||||
|
|
||||||
_curprn = atoi(mask.get(MSK_1_PRINTERS));
|
_curprn = atoi(mask.get(MSK_1_PRINTERS));
|
||||||
|
|
||||||
((TPrint_application*)MainApp())->set_n_copies(atoi (mask.get (MSK_1_NPAGES)));
|
if (MainApp()->class_id() == CLASS_PRINT_APPLICATION)
|
||||||
|
((TPrint_application*)MainApp())->set_n_copies(atoi(mask.get(MSK_1_NPAGES)));
|
||||||
|
|
||||||
PrinterDef& def = (PrinterDef &) get_description (_curprn);
|
PrinterDef& def = (PrinterDef &) get_description (_curprn);
|
||||||
switch (atoi(mask.get (MSK_1_TYPE)))
|
switch (atoi(mask.get (MSK_1_TYPE)))
|
||||||
{
|
{
|
||||||
@ -1237,13 +1239,17 @@ void TPrinter::set()
|
|||||||
for (i = 0; i < pn2.items (); i++)
|
for (i = 0; i < pn2.items (); i++)
|
||||||
pn1.add(i);
|
pn1.add(i);
|
||||||
|
|
||||||
((TList_field &) (mask.field (MSK_1_PRINTERS))).replace_items (pn1, pn2);
|
((TList_field &) (mask.field (MSK_1_PRINTERS))).replace_items(pn1, pn2);
|
||||||
mask.set (MSK_1_PRINTERS, pn1.get (_curprn));
|
mask.set(MSK_1_PRINTERS, pn1.get(_curprn));
|
||||||
mask.hide (MSK_1_CODES);
|
mask.hide(MSK_1_CODES);
|
||||||
mask.set (MSK_1_ISGRAPHICS, _isgraphics ? "X" : "");
|
mask.set(MSK_1_ISGRAPHICS, _isgraphics ? "X" : "");
|
||||||
mask.set (MSK_1_SIZE, format ("%d", _ch_size));
|
mask.set(MSK_1_SIZE, _ch_size);
|
||||||
mask.set (MSK_1_LINES, format ("%d", _lines_per_inch));
|
mask.set(MSK_1_LINES, _lines_per_inch);
|
||||||
mask.set (MSK_1_NPAGES, format("%d",((TPrint_application*)MainApp())->get_n_copies()));
|
|
||||||
|
int nc = 1;
|
||||||
|
if (MainApp()->class_id() == CLASS_PRINT_APPLICATION)
|
||||||
|
nc = ((TPrint_application*)MainApp())->get_n_copies();
|
||||||
|
mask.set(MSK_1_NPAGES, nc);
|
||||||
|
|
||||||
if (_printertype == fileprinter)
|
if (_printertype == fileprinter)
|
||||||
mask.set (MSK_1_TYPE, "1");
|
mask.set (MSK_1_TYPE, "1");
|
||||||
@ -1293,7 +1299,7 @@ void TPrinter::set()
|
|||||||
_curprn = oldprn;
|
_curprn = oldprn;
|
||||||
_print_rcd = get_print_rcd(&_print_rcd_size);
|
_print_rcd = get_print_rcd(&_print_rcd_size);
|
||||||
set_win_formlen ();
|
set_win_formlen ();
|
||||||
MainApp ()->enable_menu_item (M_FILE_PG_SETUP);
|
MainApp()->enable_menu_item(M_FILE_PG_SETUP);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1305,7 +1311,10 @@ void TPrinter::set()
|
|||||||
mask.set_workfile (s);
|
mask.set_workfile (s);
|
||||||
mask.save ();
|
mask.save ();
|
||||||
}
|
}
|
||||||
((TPrint_application*)MainApp())->set_n_copies(atoi (mask.get (MSK_1_NPAGES)));
|
|
||||||
|
if (MainApp()->class_id() == CLASS_PRINT_APPLICATION)
|
||||||
|
((TPrint_application*)MainApp())->set_n_copies(atoi (mask.get (MSK_1_NPAGES)));
|
||||||
|
|
||||||
switch (atoi (mask.get (MSK_1_TYPE)))
|
switch (atoi (mask.get (MSK_1_TYPE)))
|
||||||
{
|
{
|
||||||
case 0: // stampante
|
case 0: // stampante
|
||||||
|
@ -100,7 +100,7 @@ class PrinterDef : public TObject
|
|||||||
TArray _codes; // print codes
|
TArray _codes; // print codes
|
||||||
TArray _names; // name of print codes
|
TArray _names; // name of print codes
|
||||||
TString _ffcode; // formfeed code for the current printer
|
TString _ffcode; // formfeed code for the current printer
|
||||||
TString _nlcode; // special newline code for the current printer
|
TString _nlcode; // special newline code for the current printer
|
||||||
|
|
||||||
public:
|
public:
|
||||||
bool read(const char* name, FILE* fd); // read description from file;
|
bool read(const char* name, FILE* fd); // read description from file;
|
||||||
@ -157,7 +157,7 @@ class TPrinter : public TObject
|
|||||||
const char* _bg_desc;
|
const char* _bg_desc;
|
||||||
TToken_string _printer_names;
|
TToken_string _printer_names;
|
||||||
bool _isgraphics;
|
bool _isgraphics;
|
||||||
bool _frozen;
|
bool _frozen;
|
||||||
#if XVT_OS == XVT_OS_WIN
|
#if XVT_OS == XVT_OS_WIN
|
||||||
PRINT_RCD* _print_rcd;
|
PRINT_RCD* _print_rcd;
|
||||||
int _print_rcd_size;
|
int _print_rcd_size;
|
||||||
@ -168,7 +168,7 @@ class TPrinter : public TObject
|
|||||||
int _dots_per_line;
|
int _dots_per_line;
|
||||||
|
|
||||||
void _parse_background();
|
void _parse_background();
|
||||||
void _get_windows_printer_names(TToken_string& t);
|
void _get_windows_printer_names(TToken_string& t);
|
||||||
|
|
||||||
PRINTSECTIONHANDLER _headerhandler, _footerhandler;
|
PRINTSECTIONHANDLER _headerhandler, _footerhandler;
|
||||||
LINKHANDLER _linkhandler;
|
LINKHANDLER _linkhandler;
|
||||||
@ -227,11 +227,11 @@ public:
|
|||||||
void resetfooter();
|
void resetfooter();
|
||||||
void setbackground(const char* bg);
|
void setbackground(const char* bg);
|
||||||
TArray* getbgdesc() { return &_background; }
|
TArray* getbgdesc() { return &_background; }
|
||||||
bool frozen() { return _frozen; }
|
bool frozen() { return _frozen; }
|
||||||
void freeze(bool b = TRUE) { _frozen = b; }
|
void freeze(bool b = TRUE) { _frozen = b; }
|
||||||
|
|
||||||
TToken_string& getprinternames();
|
TToken_string& getprinternames();
|
||||||
TTextfile& get_txt() { return _txt; }
|
TTextfile& get_txt() { return _txt; }
|
||||||
|
|
||||||
void setheaderhandler(PRINTSECTIONHANDLER h) { _headerhandler = h; }
|
void setheaderhandler(PRINTSECTIONHANDLER h) { _headerhandler = h; }
|
||||||
void setfooterhandler(PRINTSECTIONHANDLER h) { _footerhandler = h; }
|
void setfooterhandler(PRINTSECTIONHANDLER h) { _footerhandler = h; }
|
||||||
@ -241,7 +241,7 @@ public:
|
|||||||
// completamente anche da un'altra application
|
// completamente anche da un'altra application
|
||||||
void setlinkhandler(LINKHANDLER h) { _linkhandler = h; }
|
void setlinkhandler(LINKHANDLER h) { _linkhandler = h; }
|
||||||
LINKHANDLER getlinkhandler() { return _linkhandler; }
|
LINKHANDLER getlinkhandler() { return _linkhandler; }
|
||||||
TArray& links() { return _linksdescr; }
|
TArray& links() { return _linksdescr; }
|
||||||
void setmultiplelink(bool on) { _multiple_link = on; }
|
void setmultiplelink(bool on) { _multiple_link = on; }
|
||||||
bool ismultiplelink() { return _multiple_link; }
|
bool ismultiplelink() { return _multiple_link; }
|
||||||
|
|
||||||
|
@ -1,36 +1,36 @@
|
|||||||
BUTTON DLG_SAVEREC 8 2
|
BUTTON DLG_SAVEREC 8 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT -16 -1 "~Registra"
|
PROMPT -16 -1 "~Registra"
|
||||||
MESSAGE EXIT,K_SAVE
|
MESSAGE EXIT,K_SAVE
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_NEWREC 8 2
|
BUTTON DLG_NEWREC 8 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT -26 -1 "~Nuovo"
|
PROMPT -26 -1 "~Nuovo"
|
||||||
MESSAGE EXIT,K_INS
|
MESSAGE EXIT,K_INS
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_DELREC 8 2
|
BUTTON DLG_DELREC 8 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT -36 -1 "~Elimina"
|
PROMPT -36 -1 "~Elimina"
|
||||||
MESSAGE EXIT,K_DEL
|
MESSAGE EXIT,K_DEL
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_FINDREC 8 2
|
BUTTON DLG_FINDREC 8 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT -46 -1 "Ri~cerca"
|
PROMPT -46 -1 "Ri~cerca"
|
||||||
MESSAGE EXIT,K_F9
|
MESSAGE EXIT,K_F9
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_CANCEL 8 2
|
BUTTON DLG_CANCEL 8 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT -56 -1 ""
|
PROMPT -56 -1 ""
|
||||||
MESSAGE EXIT,K_ESC
|
MESSAGE EXIT,K_ESC
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_QUIT 8 2
|
BUTTON DLG_QUIT 8 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT -66 -1 ""
|
PROMPT -66 -1 ""
|
||||||
MESSAGE EXIT,K_QUIT
|
MESSAGE EXIT,K_QUIT
|
||||||
END
|
END
|
||||||
|
|
||||||
|
@ -211,7 +211,7 @@ RCT& resize_rect(short x, short y, short dx, short dy, WIN_TYPE wt, WINDOW paren
|
|||||||
if (get_window_type(parent) == W_PLAIN) // Mask with Toolbar
|
if (get_window_type(parent) == W_PLAIN) // Mask with Toolbar
|
||||||
{
|
{
|
||||||
if (y >= 0) y++;
|
if (y >= 0) y++;
|
||||||
if (x >= 0 && wt != WO_TE)
|
if (x > 0 || (wt != WO_TE && x == 0))
|
||||||
{
|
{
|
||||||
const int width = (int)get_value(NULL_WIN, ATTR_SCREEN_WIDTH);
|
const int width = (int)get_value(NULL_WIN, ATTR_SCREEN_WIDTH);
|
||||||
if (width > 640) x += (width-640) / (2*COLX);
|
if (width > 640) x += (width-640) / (2*COLX);
|
||||||
@ -526,14 +526,14 @@ WINDOW xvt_create_window(WIN_TYPE wt,
|
|||||||
CHECKD(win, "Can't create a window: XVT error ", get_xvterrno());
|
CHECKD(win, "Can't create a window: XVT error ", get_xvterrno());
|
||||||
|
|
||||||
#if XVT_OS == XVT_OS_WIN
|
#if XVT_OS == XVT_OS_WIN
|
||||||
static bool set = TRUE;
|
static bool to_set = TRUE;
|
||||||
if (set)
|
if (to_set)
|
||||||
{
|
{
|
||||||
HWND hwnd = (HWND)get_value(win, ATTR_NATIVE_WINDOW);
|
HWND hwnd = (HWND)get_value(win, ATTR_NATIVE_WINDOW);
|
||||||
word style = GetClassWord(hwnd, GCW_STYLE);
|
word style = GetClassWord(hwnd, GCW_STYLE);
|
||||||
style |= CS_BYTEALIGNCLIENT | CS_SAVEBITS;
|
style |= CS_BYTEALIGNCLIENT | CS_SAVEBITS;
|
||||||
SetClassWord(hwnd, GCW_STYLE, style);
|
SetClassWord(hwnd, GCW_STYLE, style);
|
||||||
set = FALSE;
|
to_set = FALSE;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user