Centrato meglio il testo del banner iniziale
Adeguata printwin al fatto che title e' ora un TString& e non un const char* MOdificato leggermente comportamento del tasto ESC in modo query in modo da forzare la rilettura della maschera corrente (utile per ba4200?) git-svn-id: svn://10.65.10.50/trunk@249 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
113424a344
commit
4af8e5aea4
@ -80,11 +80,9 @@ HIDDEN void create_backdrop( void )
|
||||
|
||||
class TBanner : public TWindow
|
||||
{
|
||||
enum { Y = 6, X = 60 };
|
||||
|
||||
protected:
|
||||
virtual void handler(WINDOW win, EVENT* ep);
|
||||
|
||||
|
||||
public:
|
||||
TBanner();
|
||||
~TBanner();
|
||||
@ -92,8 +90,8 @@ public:
|
||||
|
||||
TBanner::TBanner()
|
||||
{
|
||||
create(-1, -1, X, Y, "BANNER", WSF_NONE, W_PLAIN);
|
||||
set_font(FF_TIMES, FS_BOLD, 28);
|
||||
const int w = main_app().title().len()*3+4;
|
||||
create(-1, -1, w, 6, "BANNER", WSF_NONE, W_PLAIN);
|
||||
hide_brush();
|
||||
open_modal();
|
||||
do_events();
|
||||
@ -110,19 +108,28 @@ void TBanner::handler(WINDOW win, EVENT* ep)
|
||||
{
|
||||
clear(COLOR_LTGRAY);
|
||||
RCT r; get_client_rect(win, &r);
|
||||
r.left += CHARY; r.right -= CHARY;
|
||||
r.top += CHARY; r.bottom -= CHARY;
|
||||
set_pen(COLOR_BLACK); win_draw_rect(win, &r);
|
||||
offset_rect(&r, 1, 1);
|
||||
set_pen(COLOR_WHITE); win_draw_rect(win, &r);
|
||||
char* t = (char*)(const char*)main_app().title();
|
||||
const int w = win_get_text_width(win, t, -1);
|
||||
const int x = (X*CHARX-w)>>1, y = (Y+2)*CHARY>>1;
|
||||
|
||||
set_color(COLOR_WHITE, COLOR_LTGRAY);
|
||||
set_font(FF_TIMES, FS_BOLD, 28);
|
||||
char* t = (char*)(const char*)main_app().title();
|
||||
int w = win_get_text_width(win, t, -1);
|
||||
int x = (r.right-r.left-w)>>1, y = r.bottom - 4*CHARY;
|
||||
win_draw_text(win, x+2, y+2, t, -1);
|
||||
set_color(COLOR_BLACK, COLOR_LTGRAY);
|
||||
win_draw_text(win, x, y, t, -1);
|
||||
icon(2, 2);
|
||||
|
||||
set_font(FF_TIMES);
|
||||
t = "Attendere prego ...";
|
||||
w = win_get_text_width(win, t, -1);
|
||||
x = (r.right-r.left-w)>>1, y = r.bottom - 2*CHARY;
|
||||
win_draw_text(win, x, y, t, -1);
|
||||
|
||||
r.left += CHARX; r.right -= CHARX;
|
||||
r.top += CHARX; r.bottom -= CHARX;
|
||||
set_pen(COLOR_BLACK); win_draw_rect(win, &r);
|
||||
offset_rect(&r, 1, 1);
|
||||
set_pen(COLOR_WHITE); win_draw_rect(win, &r);
|
||||
win_draw_icon(win, CHARX<<1, CHARX<<1, ICON_RSRC);
|
||||
}
|
||||
else
|
||||
TWindow::handler(win, ep);
|
||||
|
@ -65,7 +65,7 @@ public:
|
||||
int argc() const { return __argc; }
|
||||
|
||||
void set_title(const char* t) { _title = t; }
|
||||
const char* title() const { return _title; }
|
||||
const TString& title() const { return _title; }
|
||||
|
||||
void wait_for(const char* name);
|
||||
void wake_up_caller() const;
|
||||
|
@ -72,6 +72,7 @@ class TPrint_application : public TApplication
|
||||
TProgind* _prind;
|
||||
const char* _picture;
|
||||
MENU_TAG _last_choice;
|
||||
int _ncopies;
|
||||
bool _repeat_print;
|
||||
|
||||
// set the printer
|
||||
@ -455,6 +456,8 @@ public:
|
||||
{ printer().setcurrentpage(n); }
|
||||
|
||||
|
||||
void set_n_copies(int n) { _ncopies = n; }
|
||||
int get_n_copies() { return _ncopies; }
|
||||
void repeat_print() { _repeat_print = TRUE; }
|
||||
|
||||
TPrint_application();
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
void TPrintwin::paint_background(long j)
|
||||
{
|
||||
_isbackground = _bg->items() > 0 && MainApp()->printer().isgraphics();
|
||||
_isbackground = _bg->items() > 0 && main_app().printer().isgraphics();
|
||||
if (!_isbackground) return;
|
||||
int rw = (int)(j % _formlen);
|
||||
TString& rwd = (TString&)(*_bg)[rw];
|
||||
@ -166,23 +166,23 @@ TPrintwin::~TPrintwin()
|
||||
TPrintwin::TPrintwin(PRINT_RCD* p, TTextfile& txt, int chsz) :
|
||||
_printrcd(p), _aborted(FALSE), _txt(txt), _char_size(chsz)
|
||||
{
|
||||
WINDOW w = new_print_window(_printrcd, (char*)MainApp()->title());
|
||||
WINDOW w = new_print_window(_printrcd, (char*)(const char*)main_app().title());
|
||||
set_win(w);
|
||||
if (w != NULL_WIN)
|
||||
{
|
||||
_bg = MainApp()->printer().getbgdesc();
|
||||
_isbackground = _bg->items() > 0 && MainApp()->printer().isgraphics();
|
||||
_formlen = MainApp()->printer().formlen();
|
||||
_bg = main_app().printer().getbgdesc();
|
||||
_isbackground = _bg->items() > 0 && main_app().printer().isgraphics();
|
||||
_formlen = main_app().printer().formlen();
|
||||
|
||||
set_font(FF_SYSTEM,0,_char_size);
|
||||
|
||||
win_get_font_metrics(win(), &_lead, &_ascent, &_descent);
|
||||
_charx = win_get_text_width(win(), "MM", -1) - win_get_text_width(win(), "M", -1);
|
||||
_chary = MainApp()->printer().get_dots_per_line();
|
||||
_chary = main_app().printer().get_dots_per_line();
|
||||
|
||||
RCT rct; get_client_rect(win(),&rct);
|
||||
|
||||
_vofs = MainApp()->printer().get_vert_offset();
|
||||
_vofs = main_app().printer().get_vert_offset();
|
||||
_hofs = (rct.right - rct.left) % _charx;
|
||||
}
|
||||
else _aborted = TRUE;
|
||||
|
@ -1,4 +1,4 @@
|
||||
// $Id: relapp.cpp,v 1.8 1994-09-13 16:43:48 guy Exp $
|
||||
// $Id: relapp.cpp,v 1.9 1994-09-15 16:45:33 guy Exp $
|
||||
#include <mailbox.h>
|
||||
#include <sheet.h>
|
||||
#include <urldefid.h>
|
||||
@ -696,15 +696,9 @@ bool TRelation_application::main_loop()
|
||||
{
|
||||
case K_ESC:
|
||||
if (save(TRUE))
|
||||
{
|
||||
if (_mask->query_mode())
|
||||
{
|
||||
_mask->reset();
|
||||
set_fixed();
|
||||
}
|
||||
else query_mode();
|
||||
}
|
||||
if (_lnflag) k = K_QUIT;
|
||||
query_mode();
|
||||
if (_lnflag)
|
||||
k = K_QUIT;
|
||||
break;
|
||||
case K_QUIT:
|
||||
if (save(TRUE))
|
||||
|
Loading…
x
Reference in New Issue
Block a user