Changeset 7588

Show
Ignore:
Timestamp:
25/05/11 18:41:03 (12 months ago)
Author:
westram
Message:
  • renamed AWAR defines
Location:
branches/dev/AWT
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • branches/dev/AWT/AWT_canio.cxx

    r7587 r7588  
    2323 
    2424#define awt_assert(cond) arb_assert(cond) 
     25 
     26// -------------------------------------------------------------------------------- 
     27 
     28#define AWAR_CANIO                 "NT/print/" 
     29#define AWAR_CANIO_LANDSCAPE       AWAR_CANIO "landscape" 
     30#define AWAR_CANIO_CLIP            AWAR_CANIO "clip" 
     31#define AWAR_CANIO_HANDLES         AWAR_CANIO "handles" 
     32#define AWAR_CANIO_COLOR           AWAR_CANIO "color" 
     33#define AWAR_CANIO_DEST            AWAR_CANIO "dest" 
     34#define AWAR_CANIO_PRINTER         AWAR_CANIO "printer" 
     35#define AWAR_CANIO_OVERLAP_WANTED  AWAR_CANIO "overlap" 
     36#define AWAR_CANIO_OVERLAP_PERCENT AWAR_CANIO "operc" 
     37#define AWAR_CANIO_BORDERSIZE      AWAR_CANIO "border" 
     38#define AWAR_CANIO_PAPER           AWAR_CANIO "paper" 
     39#define AWAR_CANIO_PAPER_USABLE    AWAR_CANIO "useable" 
     40#define AWAR_CANIO_F2DBUG          AWAR_CANIO "f2dbug" 
     41#define AWAR_CANIO_PAGES           AWAR_CANIO "pages" 
     42#define AWAR_CANIO_PAGELOCK        AWAR_CANIO "plock" 
     43 
     44#define AWAR_CANIO_TMP "tmp/" AWAR_CANIO 
     45 
     46#define AWAR_CANIO_MAGNIFICATION AWAR_CANIO_TMP "magnification" 
     47#define AWAR_CANIO_OVERLAP       AWAR_CANIO_TMP "overlap" 
     48#define AWAR_CANIO_GFX_SX        AWAR_CANIO_TMP "gsizex" // graphic size in inch 
     49#define AWAR_CANIO_GFX_SY        AWAR_CANIO_TMP "gsizey" 
     50#define AWAR_CANIO_OUT_SX        AWAR_CANIO_TMP "osizex" // output size in inch 
     51#define AWAR_CANIO_OUT_SY        AWAR_CANIO_TMP "osizey" 
     52#define AWAR_CANIO_PAPER_SX      AWAR_CANIO_TMP "psizex" // paper size in inch 
     53#define AWAR_CANIO_PAPER_SY      AWAR_CANIO_TMP "psizey" 
     54#define AWAR_CANIO_PAGE_SX       AWAR_CANIO_TMP "sizex"  // size in pages 
     55#define AWAR_CANIO_PAGE_SY       AWAR_CANIO_TMP "sizey" 
     56 
     57#define AWAR_CANIO_FILE_BASE   AWAR_CANIO_TMP "file" 
     58#define AWAR_CANIO_FILE_NAME   AWAR_CANIO_FILE_BASE "/file_name" 
     59#define AWAR_CANIO_FILE_DIR    AWAR_CANIO_FILE_BASE "/directory" 
     60#define AWAR_CANIO_FILE_FILTER AWAR_CANIO_FILE_BASE "/filter" 
    2561 
    2662// -------------------------------------------------------------------------------- 
     
    140176    AWT_canvas *ntw         = (AWT_canvas*)cl_ntw; 
    141177    AW_root    *awr         = ntw->awr; 
    142     long        draw_all    = awr->awar(AWAR_PRINT_TREE_CLIP)->read_int(); 
    143     double      border      = awr->awar(AWAR_PRINT_TREE_BORDERSIZE)->read_float(); 
     178    long        draw_all    = awr->awar(AWAR_CANIO_CLIP)->read_int(); 
     179    double      border      = awr->awar(AWAR_CANIO_BORDERSIZE)->read_float(); 
    144180    Rectangle   drawsize    = get_drawsize(ntw, draw_all); 
    145181    Rectangle   with_border = add_border_to_drawsize(drawsize, border); 
    146182 
    147     awr->awar(AWAR_PRINT_TREE_GSIZEX)->write_float((with_border.width())/DPI_SCREEN); 
    148     awr->awar(AWAR_PRINT_TREE_GSIZEY)->write_float((with_border.height())/DPI_SCREEN); 
     183    awr->awar(AWAR_CANIO_GFX_SX)->write_float((with_border.width())/DPI_SCREEN); 
     184    awr->awar(AWAR_CANIO_GFX_SY)->write_float((with_border.height())/DPI_SCREEN); 
    149185} 
    150186 
     
    161197    bool old_allow           = allow_page_size_check_cb; 
    162198    allow_page_size_check_cb = false; 
    163     awr->awar(AWAR_PRINT_TREE_PSIZEX)->write_float(px); 
     199    awr->awar(AWAR_CANIO_PAPER_SX)->write_float(px); 
    164200    allow_page_size_check_cb = old_allow; 
    165     awr->awar(AWAR_PRINT_TREE_PSIZEY)->write_float(py); 
     201    awr->awar(AWAR_CANIO_PAPER_SY)->write_float(py); 
    166202} 
    167203 
    168204static void overlap_toggled_cb(AW_root *awr) { 
    169205    if (allow_overlap_toggled_cb) { 
    170         int new_val = awr->awar(AWAR_PRINT_TREE_OVERLAP)->read_int(); 
    171         awr->awar(AWAR_PRINT_TREE_OVERLAP_WANTED)->write_int(new_val); 
     206        int new_val = awr->awar(AWAR_CANIO_OVERLAP)->read_int(); 
     207        awr->awar(AWAR_CANIO_OVERLAP_WANTED)->write_int(new_val); 
    172208    } 
    173209} 
    174210 
    175211static long calc_mag_from_psize(AW_root *awr, double papersize, double gfxsize, double wantedpages, bool use_x) { 
    176     bool   wantOverlap = awr->awar(AWAR_PRINT_TREE_OVERLAP_WANTED)->read_int(); 
     212    bool   wantOverlap = awr->awar(AWAR_CANIO_OVERLAP_WANTED)->read_int(); 
    177213    double usableSize = 0; 
    178214 
    179215    if (wantOverlap && wantedpages>1) { 
    180         double overlapPercent = awr->awar(AWAR_PRINT_TREE_OVERLAP_PERCENT)->read_float(); 
     216        double overlapPercent = awr->awar(AWAR_CANIO_OVERLAP_PERCENT)->read_float(); 
    181217        double usableRatio    = (100.0-overlapPercent)/100.0; 
    182218 
    183219        // See also fig2devbug in page_size_check_cb()  
    184         bool fig2devbug = !use_x && awr->awar(AWAR_PRINT_TREE_F2DBUG)->read_int(); 
     220        bool fig2devbug = !use_x && awr->awar(AWAR_CANIO_F2DBUG)->read_int(); 
    185221        if (fig2devbug) { 
    186             bool landscape = awr->awar(AWAR_PRINT_TREE_LANDSCAPE)->read_int(); 
     222            bool landscape = awr->awar(AWAR_CANIO_LANDSCAPE)->read_int(); 
    187223            fig2devbug     = fig2devbug && !landscape; // only occurs in portrait mode 
    188224        } 
     
    203239 
    204240static void set_mag_from_psize(AW_root *awr, bool use_x) { 
    205     const char *papersize_name   = use_x ? AWAR_PRINT_TREE_PSIZEX : AWAR_PRINT_TREE_PSIZEY; 
    206     const char *gfxsize_name     = use_x ? AWAR_PRINT_TREE_GSIZEX : AWAR_PRINT_TREE_GSIZEY; 
    207     const char *wantedpages_name = use_x ? AWAR_PRINT_TREE_SIZEX : AWAR_PRINT_TREE_SIZEY; 
     241    const char *papersize_name   = use_x ? AWAR_CANIO_PAPER_SX : AWAR_CANIO_PAPER_SY; 
     242    const char *gfxsize_name     = use_x ? AWAR_CANIO_GFX_SX : AWAR_CANIO_GFX_SY; 
     243    const char *wantedpages_name = use_x ? AWAR_CANIO_PAGE_SX : AWAR_CANIO_PAGE_SY; 
    208244 
    209245    double   papersize   = awr->awar(papersize_name)->read_float(); 
     
    212248    long     mag         = calc_mag_from_psize(awr, papersize, gfxsize, wantedpages, use_x); 
    213249 
    214     awr->awar(AWAR_PRINT_TREE_MAGNIFICATION)->write_int(mag); 
     250    awr->awar(AWAR_CANIO_MAGNIFICATION)->write_int(mag); 
    215251} 
    216252 
     
    222258    int         best_pages          = 0; 
    223259 
    224     bool lockpages = awr->awar(AWAR_PRINT_TREE_PAGELOCK)->read_int(); 
    225     awr->awar(AWAR_PRINT_TREE_PAGELOCK)->write_int(0); 
     260    bool lockpages = awr->awar(AWAR_CANIO_PAGELOCK)->read_int(); 
     261    awr->awar(AWAR_CANIO_PAGELOCK)->write_int(0); 
    226262 
    227263    if (!allow_orientation_change) { 
    228         best_orientation = awr->awar(AWAR_PRINT_TREE_LANDSCAPE)->read_int(); 
     264        best_orientation = awr->awar(AWAR_CANIO_LANDSCAPE)->read_int(); 
    229265    } 
    230266 
     
    232268        if (!allow_orientation_change && o != best_orientation) continue; 
    233269 
    234         awr->awar(AWAR_PRINT_TREE_LANDSCAPE)->write_int(o); // set orientation (calls page_size_check_cb) 
     270        awr->awar(AWAR_CANIO_LANDSCAPE)->write_int(o); // set orientation (calls page_size_check_cb) 
    235271 
    236272        for (int xy = 0; xy <= 1; ++xy) { 
    237             const char *awar_name = xy == 0 ? AWAR_PRINT_TREE_SIZEX : AWAR_PRINT_TREE_SIZEY; 
     273            const char *awar_name = xy == 0 ? AWAR_CANIO_PAGE_SX : AWAR_CANIO_PAGE_SY; 
    238274 
    239275            for (int pcount = 1; pcount <= wanted_pages; pcount++) { 
     
    243279                set_mag_from_psize(awr, xy == 0); 
    244280 
    245                 double sx            = awr->awar(AWAR_PRINT_TREE_SIZEX)->read_float(); 
    246                 double sy            = awr->awar(AWAR_PRINT_TREE_SIZEY)->read_float(); 
     281                double sx            = awr->awar(AWAR_CANIO_PAGE_SX)->read_float(); 
     282                double sy            = awr->awar(AWAR_CANIO_PAGE_SY)->read_float(); 
    247283                int    pages         = xy2pages(sx, sy); 
    248284 
     
    250286 
    251287                if (pages <= wanted_pages && pages >= best_pages) { 
    252                     int magnification = awr->awar(AWAR_PRINT_TREE_MAGNIFICATION)->read_int();    // read calculated magnification 
     288                    int magnification = awr->awar(AWAR_CANIO_MAGNIFICATION)->read_int();    // read calculated magnification 
    253289                    if (magnification>best_magnification) { 
    254290                        // fits on wanted_pages and is best result yet 
     
    268304 
    269305        // take the best found values : 
    270         awr->awar(AWAR_PRINT_TREE_LANDSCAPE)->write_int(best_orientation); 
     306        awr->awar(AWAR_CANIO_LANDSCAPE)->write_int(best_orientation); 
    271307        awr->awar(best_zoom_awar_name)->write_float(best_zoom); 
    272         awr->awar(AWAR_PRINT_TREE_PAGES)->write_int(best_pages); 
    273         awr->awar(AWAR_PRINT_TREE_MAGNIFICATION)->write_int(best_magnification);  
     308        awr->awar(AWAR_CANIO_PAGES)->write_int(best_pages); 
     309        awr->awar(AWAR_CANIO_MAGNIFICATION)->write_int(best_magnification);  
    274310 
    275311        if (best_pages != wanted_pages) { 
     
    282318    } 
    283319     
    284     awr->awar(AWAR_PRINT_TREE_PAGELOCK)->write_int(lockpages); 
     320    awr->awar(AWAR_CANIO_PAGELOCK)->write_int(lockpages); 
    285321} 
    286322 
     
    288324    if (!allow_page_size_check_cb) return; 
    289325 
    290     bool landscape    = awr->awar(AWAR_PRINT_TREE_LANDSCAPE)->read_int(); 
    291     bool lockpages    = awr->awar(AWAR_PRINT_TREE_PAGELOCK)->read_int(); 
    292     int  locked_pages = awr->awar(AWAR_PRINT_TREE_PAGES)->read_int(); 
    293  
    294     double px = awr->awar(AWAR_PRINT_TREE_PSIZEX)->read_float(); // paper-size 
    295     double py = awr->awar(AWAR_PRINT_TREE_PSIZEY)->read_float(); 
     326    bool landscape    = awr->awar(AWAR_CANIO_LANDSCAPE)->read_int(); 
     327    bool lockpages    = awr->awar(AWAR_CANIO_PAGELOCK)->read_int(); 
     328    int  locked_pages = awr->awar(AWAR_CANIO_PAGES)->read_int(); 
     329 
     330    double px = awr->awar(AWAR_CANIO_PAPER_SX)->read_float(); // paper-size 
     331    double py = awr->awar(AWAR_CANIO_PAPER_SY)->read_float(); 
    296332 
    297333    if (landscape != (px>py)) { 
     
    300336    } 
    301337 
    302     long magnification = awr->awar(AWAR_PRINT_TREE_MAGNIFICATION)->read_int(); 
     338    long magnification = awr->awar(AWAR_CANIO_MAGNIFICATION)->read_int(); 
    303339     
    304     double gx = awr->awar(AWAR_PRINT_TREE_GSIZEX)->read_float(); // graphic size 
    305     double gy = awr->awar(AWAR_PRINT_TREE_GSIZEY)->read_float(); 
     340    double gx = awr->awar(AWAR_CANIO_GFX_SX)->read_float(); // graphic size 
     341    double gy = awr->awar(AWAR_CANIO_GFX_SY)->read_float(); 
    306342 
    307343    // output size 
    308344    double ox = (gx*magnification)/100; // resulting size of output in inches 
    309345    double oy = (gy*magnification)/100; 
    310     awr->awar(AWAR_PRINT_TREE_OSIZEX)->write_float(ox); 
    311     awr->awar(AWAR_PRINT_TREE_OSIZEY)->write_float(oy); 
    312  
    313     bool wantOverlap = awr->awar(AWAR_PRINT_TREE_OVERLAP_WANTED)->read_int(); 
    314     bool useOverlap  = awr->awar(AWAR_PRINT_TREE_OVERLAP)->read_int(); 
     346    awr->awar(AWAR_CANIO_OUT_SX)->write_float(ox); 
     347    awr->awar(AWAR_CANIO_OUT_SY)->write_float(oy); 
     348 
     349    bool wantOverlap = awr->awar(AWAR_CANIO_OVERLAP_WANTED)->read_int(); 
     350    bool useOverlap  = awr->awar(AWAR_CANIO_OVERLAP)->read_int(); 
    315351 
    316352    double sx = 0.0; // resulting pages 
     
    320356 
    321357    if (wantOverlap && !fits_on_one_page) { 
    322         double overlapPercent = awr->awar(AWAR_PRINT_TREE_OVERLAP_PERCENT)->read_float(); 
     358        double overlapPercent = awr->awar(AWAR_CANIO_OVERLAP_PERCENT)->read_float(); 
    323359        double pageRatio      = (100.0-overlapPercent)/100.0; 
    324360 
     
    330366 
    331367        bool fig2devbug = !landscape; 
    332         if (fig2devbug) fig2devbug = awr->awar(AWAR_PRINT_TREE_F2DBUG)->read_int(); 
     368        if (fig2devbug) fig2devbug = awr->awar(AWAR_CANIO_F2DBUG)->read_int(); 
    333369 
    334370        if (fig2devbug) { 
     
    351387 
    352388    // write amount of pages needed 
    353     awr->awar(AWAR_PRINT_TREE_SIZEX)->write_float(sx); 
    354     awr->awar(AWAR_PRINT_TREE_SIZEY)->write_float(sy); 
     389    awr->awar(AWAR_CANIO_PAGE_SX)->write_float(sx); 
     390    awr->awar(AWAR_CANIO_PAGE_SY)->write_float(sy); 
    355391 
    356392    int pages = xy2pages(sx, sy); 
     
    360396    } 
    361397 
    362     awr->awar(AWAR_PRINT_TREE_PAGES)->write_int(pages); 
     398    awr->awar(AWAR_CANIO_PAGES)->write_int(pages); 
    363399 
    364400    // correct DISPLAYED overlapping.. 
     
    368404        allow_overlap_toggled_cb = false; // ..but do not modify wanted overlapping 
    369405 
    370         awr->awar(AWAR_PRINT_TREE_OVERLAP)->write_int(willUseOverlap); 
     406        awr->awar(AWAR_CANIO_OVERLAP)->write_int(willUseOverlap); 
    371407 
    372408        allow_overlap_toggled_cb = old_allow; 
     
    377413 
    378414static void paper_changed_cb(AW_root *awr) { 
    379     int                paper     = awr->awar(AWAR_PRINT_TREE_PAPER)->read_int(); 
     415    int                paper     = awr->awar(AWAR_CANIO_PAPER)->read_int(); 
    380416    const PaperFormat& format    = knownPaperFormat[paper]; 
    381     bool               landscape = awr->awar(AWAR_PRINT_TREE_LANDSCAPE)->read_int(); 
    382     double             useable   = awr->awar(AWAR_PRINT_TREE_PAPER_USABLE)->read_float()/100.0; 
     417    bool               landscape = awr->awar(AWAR_CANIO_LANDSCAPE)->read_int(); 
     418    double             useable   = awr->awar(AWAR_CANIO_PAPER_USABLE)->read_float()/100.0; 
    383419 
    384420    if (landscape) { 
     
    399435        AW_default def = AW_ROOT_DEFAULT; 
    400436 
    401         awr->awar_int(AWAR_PRINT_TREE_CLIP, 0, def); 
    402         awr->awar_int(AWAR_PRINT_TREE_HANDLES, 1, def); 
    403         awr->awar_int(AWAR_PRINT_TREE_COLOR, 1, def); 
    404  
    405         awr->awar_string(AWAR_PRINT_TREE_FILE_NAME, "print.fig", def); 
    406         awr->awar_string(AWAR_PRINT_TREE_FILE_DIR, "", def); 
    407         awr->awar_string(AWAR_PRINT_TREE_FILE_FILTER, "fig", def); 
    408  
    409         awr->awar_int(AWAR_PRINT_TREE_LANDSCAPE, 0, def); 
    410         awr->awar_int(AWAR_PRINT_TREE_MAGNIFICATION, 100, def); 
     437        awr->awar_int(AWAR_CANIO_CLIP, 0, def); 
     438        awr->awar_int(AWAR_CANIO_HANDLES, 1, def); 
     439        awr->awar_int(AWAR_CANIO_COLOR, 1, def); 
     440 
     441        awr->awar_string(AWAR_CANIO_FILE_NAME, "print.fig", def); 
     442        awr->awar_string(AWAR_CANIO_FILE_DIR, "", def); 
     443        awr->awar_string(AWAR_CANIO_FILE_FILTER, "fig", def); 
     444 
     445        awr->awar_int(AWAR_CANIO_LANDSCAPE, 0, def); 
     446        awr->awar_int(AWAR_CANIO_MAGNIFICATION, 100, def); 
    411447 
    412448        // constraints: 
    413449 
    414         awr->awar(AWAR_PRINT_TREE_MAGNIFICATION)->set_minmax(1, 10000); 
     450        awr->awar(AWAR_CANIO_MAGNIFICATION)->set_minmax(1, 10000); 
    415451 
    416452        export_awars_created = true; 
     
    419455 
    420456static void resetFiletype(AW_root *awr, const char *filter, const char *defaultFilename) { 
    421     AW_awar *awar_filter    = awr->awar(AWAR_PRINT_TREE_FILE_FILTER); 
     457    AW_awar *awar_filter    = awr->awar(AWAR_CANIO_FILE_FILTER); 
    422458    char    *current_filter = awar_filter->read_string(); 
    423459 
    424460    if (strcmp(current_filter, filter) != 0) { 
    425461        awar_filter->write_string(filter); 
    426         awr->awar(AWAR_PRINT_TREE_FILE_NAME)->write_string(defaultFilename); 
     462        awr->awar(AWAR_CANIO_FILE_NAME)->write_string(defaultFilename); 
    427463    } 
    428464    free(current_filter); 
     
    435471        AW_default def = AW_ROOT_DEFAULT; 
    436472 
    437         awr->awar_int(AWAR_PRINT_TREE_PAGES, 1, def); 
    438         awr->awar_int(AWAR_PRINT_TREE_PAGELOCK, 1, def); 
    439  
    440         awr->awar_int(AWAR_PRINT_TREE_OVERLAP_WANTED, 1, def); 
    441         awr->awar_int(AWAR_PRINT_TREE_OVERLAP, 1, def)->add_callback(overlap_toggled_cb); 
    442         awr->awar_float(AWAR_PRINT_TREE_OVERLAP_PERCENT, 13.0, def); // determined 
    443  
    444         awr->awar_int(AWAR_PRINT_TREE_F2DBUG, 1, def); // bug still exists in most recent version (3.2 5d from July 23, 2010) 
    445  
    446         awr->awar_float(AWAR_PRINT_TREE_BORDERSIZE, 0.0, def); 
    447  
    448         awr->awar_float(AWAR_PRINT_TREE_GSIZEX); 
    449         awr->awar_float(AWAR_PRINT_TREE_GSIZEY); 
    450  
    451         awr->awar_float(AWAR_PRINT_TREE_OSIZEX); 
    452         awr->awar_float(AWAR_PRINT_TREE_OSIZEY); 
    453  
    454         awr->awar_float(AWAR_PRINT_TREE_PSIZEX); 
    455         awr->awar_float(AWAR_PRINT_TREE_PSIZEY); 
    456  
    457         awr->awar_int(AWAR_PRINT_TREE_PAPER, 0)->add_callback(paper_changed_cb); // sets first format (A4) 
    458         awr->awar_float(AWAR_PRINT_TREE_PAPER_USABLE, 95)->add_callback(paper_changed_cb); // 95% of paper are usable 
    459  
    460         awr->awar_float(AWAR_PRINT_TREE_SIZEX); 
    461         awr->awar_float(AWAR_PRINT_TREE_SIZEY); 
    462  
    463         awr->awar_int(AWAR_PRINT_TREE_DEST); 
     473        awr->awar_int(AWAR_CANIO_PAGES, 1, def); 
     474        awr->awar_int(AWAR_CANIO_PAGELOCK, 1, def); 
     475 
     476        awr->awar_int(AWAR_CANIO_OVERLAP_WANTED, 1, def); 
     477        awr->awar_int(AWAR_CANIO_OVERLAP, 1, def)->add_callback(overlap_toggled_cb); 
     478        awr->awar_float(AWAR_CANIO_OVERLAP_PERCENT, 13.0, def); // determined 
     479 
     480        awr->awar_int(AWAR_CANIO_F2DBUG, 1, def); // bug still exists in most recent version (3.2 5d from July 23, 2010) 
     481 
     482        awr->awar_float(AWAR_CANIO_BORDERSIZE, 0.0, def); 
     483 
     484        awr->awar_float(AWAR_CANIO_GFX_SX); 
     485        awr->awar_float(AWAR_CANIO_GFX_SY); 
     486 
     487        awr->awar_float(AWAR_CANIO_OUT_SX); 
     488        awr->awar_float(AWAR_CANIO_OUT_SY); 
     489 
     490        awr->awar_float(AWAR_CANIO_PAPER_SX); 
     491        awr->awar_float(AWAR_CANIO_PAPER_SY); 
     492 
     493        awr->awar_int(AWAR_CANIO_PAPER, 0)->add_callback(paper_changed_cb); // sets first format (A4) 
     494        awr->awar_float(AWAR_CANIO_PAPER_USABLE, 95)->add_callback(paper_changed_cb); // 95% of paper are usable 
     495 
     496        awr->awar_float(AWAR_CANIO_PAGE_SX); 
     497        awr->awar_float(AWAR_CANIO_PAGE_SY); 
     498 
     499        awr->awar_int(AWAR_CANIO_DEST); 
    464500 
    465501        { 
     
    469505            } else   print_command = strdup("lpr -h"); 
    470506 
    471             awr->awar_string(AWAR_PRINT_TREE_PRINTER, print_command, def); 
     507            awr->awar_string(AWAR_CANIO_PRINTER, print_command, def); 
    472508            free(print_command); 
    473509        } 
     
    475511        // constraints and automatics: 
    476512 
    477         awr->awar(AWAR_PRINT_TREE_PSIZEX)->set_minmax(0.1, 100); 
    478         awr->awar(AWAR_PRINT_TREE_PSIZEY)->set_minmax(0.1, 100); 
     513        awr->awar(AWAR_CANIO_PAPER_SX)->set_minmax(0.1, 100); 
     514        awr->awar(AWAR_CANIO_PAPER_SY)->set_minmax(0.1, 100); 
    479515 
    480516        awt_print_tree_check_size(0, (AW_CL)ntw); 
    481517 
    482         awr->awar(AWAR_PRINT_TREE_CLIP)->add_callback((AW_RCB1)awt_print_tree_check_size, (AW_CL)ntw); 
    483         awr->awar(AWAR_PRINT_TREE_BORDERSIZE)->add_callback((AW_RCB1)awt_print_tree_check_size, (AW_CL)ntw); 
     518        awr->awar(AWAR_CANIO_CLIP)->add_callback((AW_RCB1)awt_print_tree_check_size, (AW_CL)ntw); 
     519        awr->awar(AWAR_CANIO_BORDERSIZE)->add_callback((AW_RCB1)awt_print_tree_check_size, (AW_CL)ntw); 
    484520 
    485521        { // add callbacks for page recalculation 
    486522            const char *checked_awars[] = { 
    487                 AWAR_PRINT_TREE_MAGNIFICATION, 
    488                 AWAR_PRINT_TREE_LANDSCAPE, 
    489                 AWAR_PRINT_TREE_BORDERSIZE, 
    490                 AWAR_PRINT_TREE_OVERLAP_WANTED, AWAR_PRINT_TREE_OVERLAP_PERCENT, 
    491                 AWAR_PRINT_TREE_F2DBUG,  
    492                 AWAR_PRINT_TREE_PSIZEX,         AWAR_PRINT_TREE_PSIZEY, 
    493                 AWAR_PRINT_TREE_GSIZEX,         AWAR_PRINT_TREE_GSIZEY, 
     523                AWAR_CANIO_MAGNIFICATION, 
     524                AWAR_CANIO_LANDSCAPE, 
     525                AWAR_CANIO_BORDERSIZE, 
     526                AWAR_CANIO_OVERLAP_WANTED, AWAR_CANIO_OVERLAP_PERCENT, 
     527                AWAR_CANIO_F2DBUG,  
     528                AWAR_CANIO_PAPER_SX,         AWAR_CANIO_PAPER_SY, 
     529                AWAR_CANIO_GFX_SX,         AWAR_CANIO_GFX_SY, 
    494530                0 
    495531            }; 
     
    510546 
    511547    AW_root *awr       = ntw->awr; 
    512     bool     draw_all  = awr->awar(AWAR_PRINT_TREE_CLIP)->read_int(); 
    513     bool     handles   = awr->awar(AWAR_PRINT_TREE_HANDLES)->read_int(); 
    514     bool     use_color = awr->awar(AWAR_PRINT_TREE_COLOR)->read_int(); 
    515     double   border    = awr->awar(AWAR_PRINT_TREE_BORDERSIZE)->read_float(); 
     548    bool     draw_all  = awr->awar(AWAR_CANIO_CLIP)->read_int(); 
     549    bool     handles   = awr->awar(AWAR_CANIO_HANDLES)->read_int(); 
     550    bool     use_color = awr->awar(AWAR_CANIO_COLOR)->read_int(); 
     551    double   border    = awr->awar(AWAR_CANIO_BORDERSIZE)->read_float(); 
    516552 
    517553    AW_device_print *device = ntw->aww->get_print_device(AW_MIDDLE_AREA); 
     
    552588    AWT_canvas *ntw  = (AWT_canvas*)cl_ntw; 
    553589    AW_root    *awr  = aww->get_root(); 
    554     char       *xfig = AW_get_selected_fullname(awr, AWAR_PRINT_TREE_FILE_BASE); 
     590    char       *xfig = AW_get_selected_fullname(awr, AWAR_CANIO_FILE_BASE); 
    555591     
    556592    GB_ERROR error = NULL; 
     
    561597        error = canvas_to_xfig(ntw, xfig); 
    562598        if (!error) { 
    563             awr->awar(AWAR_PRINT_TREE_FILE_DIR)->touch(); // reload dir to show created xfig 
     599            awr->awar(AWAR_CANIO_FILE_DIR)->touch(); // reload dir to show created xfig 
    564600            error = GB_system(GBS_global_string("xfig %s &", xfig)); 
    565601        } 
     
    575611    GB_ERROR        error     = 0; 
    576612    char           *dest      = 0; 
    577     PrintDest       printdest = (PrintDest)awr->awar(AWAR_PRINT_TREE_DEST)->read_int(); 
     613    PrintDest       printdest = (PrintDest)awr->awar(AWAR_CANIO_DEST)->read_int(); 
    578614 
    579615    switch (printdest) { 
    580616        case PDEST_POSTSCRIPT: { 
    581             dest = AW_get_selected_fullname(awr, AWAR_PRINT_TREE_FILE_BASE); 
     617            dest = AW_get_selected_fullname(awr, AWAR_CANIO_FILE_BASE); 
    582618            FILE *out = fopen(dest, "w"); 
    583619            if (!out) error = GB_export_IO_error("writing", dest); 
     
    616652 
    617653            { 
    618                 bool   landscape     = awr->awar(AWAR_PRINT_TREE_LANDSCAPE)->read_int(); 
    619                 bool   useOverlap    = awr->awar(AWAR_PRINT_TREE_OVERLAP)->read_int(); 
    620                 double magnification = awr->awar(AWAR_PRINT_TREE_MAGNIFICATION)->read_int() * 0.01; 
    621                 int    paper         = awr->awar(AWAR_PRINT_TREE_PAPER)->read_int(); 
     654                bool   landscape     = awr->awar(AWAR_CANIO_LANDSCAPE)->read_int(); 
     655                bool   useOverlap    = awr->awar(AWAR_CANIO_OVERLAP)->read_int(); 
     656                double magnification = awr->awar(AWAR_CANIO_MAGNIFICATION)->read_int() * 0.01; 
     657                int    paper         = awr->awar(AWAR_CANIO_PAPER)->read_int(); 
    622658 
    623659                const PaperFormat& format = knownPaperFormat[paper]; 
     
    658694 
    659695                    case PDEST_PRINTER: { 
    660                         char *prt = awr->awar(AWAR_PRINT_TREE_PRINTER)->read_string(); 
     696                        char *prt = awr->awar(AWAR_CANIO_PRINTER)->read_string(); 
    661697                        error     = GB_system(GBS_global_string("%s %s", prt, dest)); 
    662698                        free(prt); 
     
    700736        aws->label_length(15); 
    701737 
    702         AW_create_fileselection(aws, AWAR_PRINT_TREE_FILE_BASE); 
     738        AW_create_fileselection(aws, AWAR_CANIO_FILE_BASE); 
    703739 
    704740        aws->at("what"); 
    705741        aws->label("Clip at Screen"); 
    706         aws->create_toggle_field(AWAR_PRINT_TREE_CLIP, 1); 
     742        aws->create_toggle_field(AWAR_CANIO_CLIP, 1); 
    707743        aws->insert_toggle("#print/clipscreen.bitmap", "S", 0); 
    708744        aws->insert_toggle("#print/clipall.bitmap", "A", 1); 
     
    711747        aws->at("remove_root"); 
    712748        aws->label("Show Handles"); 
    713         aws->create_toggle_field(AWAR_PRINT_TREE_HANDLES, 1); 
     749        aws->create_toggle_field(AWAR_CANIO_HANDLES, 1); 
    714750        aws->insert_toggle("#print/nohandles.bitmap", "S", 0); 
    715751        aws->insert_toggle("#print/handles.bitmap", "A", 1); 
     
    718754        aws->at("color"); 
    719755        aws->label("Export colors"); 
    720         aws->create_toggle(AWAR_PRINT_TREE_COLOR); 
     756        aws->create_toggle(AWAR_CANIO_COLOR); 
    721757 
    722758 
     
    747783 
    748784        aws->label_length(15); 
    749         AW_create_fileselection(aws, AWAR_PRINT_TREE_FILE_BASE); 
     785        AW_create_fileselection(aws, AWAR_CANIO_FILE_BASE); 
    750786 
    751787        aws->at("what"); 
    752788        aws->label("Clip Options"); 
    753         aws->create_option_menu(AWAR_PRINT_TREE_CLIP); 
     789        aws->create_option_menu(AWAR_CANIO_CLIP); 
    754790        aws->insert_option("Export screen only", "s", 0); 
    755791        aws->insert_default_option("Export complete structure", "c", 1); 
     
    758794        aws->at("color"); 
    759795        aws->label("Export colors"); 
    760         aws->create_toggle(AWAR_PRINT_TREE_COLOR); 
     796        aws->create_toggle(AWAR_CANIO_COLOR); 
    761797 
    762798        aws->at("xfig"); aws->callback(canvas_to_xfig_and_run_xfig, cl_canvas); 
     
    783819        wanted_pages = cl_pages; 
    784820    else { 
    785         wanted_pages = awr->awar(AWAR_PRINT_TREE_PAGES)->read_int(); 
     821        wanted_pages = awr->awar(AWAR_CANIO_PAGES)->read_int(); 
    786822    } 
    787823    fit_pages(awr, wanted_pages, true); 
     
    814850        aws->at("what"); 
    815851        aws->label("Clip at Screen"); 
    816         aws->create_toggle_field(AWAR_PRINT_TREE_CLIP, 1); 
     852        aws->create_toggle_field(AWAR_CANIO_CLIP, 1); 
    817853        aws->insert_toggle("#print/clipscreen.bitmap", "S", 0); 
    818854        aws->insert_toggle("#print/clipall.bitmap", "A", 1); 
     
    821857        aws->at("remove_root"); 
    822858        aws->label("Show Handles"); 
    823         aws->create_toggle_field(AWAR_PRINT_TREE_HANDLES, 1); 
     859        aws->create_toggle_field(AWAR_CANIO_HANDLES, 1); 
    824860        aws->insert_toggle("#print/nohandles.bitmap", "S", 0); 
    825861        aws->insert_toggle("#print/handles.bitmap", "A", 1); 
     
    828864        aws->at("color"); 
    829865        aws->label("Export colors"); 
    830         aws->create_toggle(AWAR_PRINT_TREE_COLOR); 
     866        aws->create_toggle(AWAR_CANIO_COLOR); 
    831867 
    832868        // -------------------- 
     
    838874 
    839875        aws->button_length(6); 
    840         aws->at("gsizex"); aws->create_button(0, AWAR_PRINT_TREE_GSIZEX); 
    841         aws->at("gsizey"); aws->create_button(0, AWAR_PRINT_TREE_GSIZEY); 
    842         aws->at("osizex"); aws->create_button(0, AWAR_PRINT_TREE_OSIZEX); 
    843         aws->at("osizey"); aws->create_button(0, AWAR_PRINT_TREE_OSIZEY); 
     876        aws->at("gsizex"); aws->create_button(0, AWAR_CANIO_GFX_SX); 
     877        aws->at("gsizey"); aws->create_button(0, AWAR_CANIO_GFX_SY); 
     878        aws->at("osizex"); aws->create_button(0, AWAR_CANIO_OUT_SX); 
     879        aws->at("osizey"); aws->create_button(0, AWAR_CANIO_OUT_SY); 
    844880 
    845881        aws->at("magnification"); 
    846         aws->create_input_field(AWAR_PRINT_TREE_MAGNIFICATION, 4); 
     882        aws->create_input_field(AWAR_CANIO_MAGNIFICATION, 4); 
    847883 
    848884        aws->label_length(0); 
    849885        aws->at("orientation"); 
    850         aws->create_toggle_field(AWAR_PRINT_TREE_LANDSCAPE, 1); 
     886        aws->create_toggle_field(AWAR_CANIO_LANDSCAPE, 1); 
    851887        aws->insert_toggle("#print/landscape.bitmap", "L", 1); 
    852888        aws->insert_toggle("#print/portrait.bitmap",  "P", 0); 
    853889        aws->update_toggle_field(); 
    854890 
    855         aws->at("bsize"); aws->create_input_field(AWAR_PRINT_TREE_BORDERSIZE, 4); 
     891        aws->at("bsize"); aws->create_input_field(AWAR_CANIO_BORDERSIZE, 4); 
    856892 
    857893        // ------------------- 
    858894        //      paper size 
    859895 
    860         aws->at("psizex"); aws->create_input_field(AWAR_PRINT_TREE_PSIZEX, 5); 
    861         aws->at("psizey"); aws->create_input_field(AWAR_PRINT_TREE_PSIZEY, 5); 
     896        aws->at("psizex"); aws->create_input_field(AWAR_CANIO_PAPER_SX, 5); 
     897        aws->at("psizey"); aws->create_input_field(AWAR_CANIO_PAPER_SY, 5); 
    862898 
    863899        aws->at("paper"); 
    864         aws->create_option_menu(AWAR_PRINT_TREE_PAPER); 
     900        aws->create_option_menu(AWAR_CANIO_PAPER); 
    865901        aws->insert_default_option(knownPaperFormat[0].get_description(), "", 0); 
    866902        for (int f = 1; f<int(ARRAY_ELEMS(knownPaperFormat)); ++f) { 
     
    870906        aws->update_option_menu(); 
    871907 
    872         aws->at("usize"); aws->create_input_field(AWAR_PRINT_TREE_PAPER_USABLE, 4); 
     908        aws->at("usize"); aws->create_input_field(AWAR_CANIO_PAPER_USABLE, 4); 
    873909 
    874910 
     
    878914        aws->at("sizex"); 
    879915        aws->callback(columns_changed_cb); 
    880         aws->create_input_field(AWAR_PRINT_TREE_SIZEX, 4); 
     916        aws->create_input_field(AWAR_CANIO_PAGE_SX, 4); 
    881917        aws->at("sizey"); 
    882918        aws->callback(rows_changed_cb); 
    883         aws->create_input_field(AWAR_PRINT_TREE_SIZEY, 4); 
     919        aws->create_input_field(AWAR_CANIO_PAGE_SY, 4); 
    884920 
    885921        aws->at("best_fit"); 
     
    888924 
    889925        aws->at("pages"); 
    890         aws->create_input_field(AWAR_PRINT_TREE_PAGES, 3); 
     926        aws->create_input_field(AWAR_CANIO_PAGES, 3); 
    891927 
    892928        aws->at("plock"); 
    893         aws->create_toggle(AWAR_PRINT_TREE_PAGELOCK); 
     929        aws->create_toggle(AWAR_CANIO_PAGELOCK); 
    894930         
    895931        aws->button_length(1); 
     
    907943 
    908944        aws->at("overlap"); 
    909         aws->create_toggle(AWAR_PRINT_TREE_OVERLAP); 
     945        aws->create_toggle(AWAR_CANIO_OVERLAP); 
    910946        aws->at("amount"); 
    911         aws->create_input_field(AWAR_PRINT_TREE_OVERLAP_PERCENT, 4); 
     947        aws->create_input_field(AWAR_CANIO_OVERLAP_PERCENT, 4); 
    912948 
    913949        aws->at("f2dbug"); 
    914         aws->create_toggle(AWAR_PRINT_TREE_F2DBUG); 
     950        aws->create_toggle(AWAR_CANIO_F2DBUG); 
    915951 
    916952        // -------------------- 
     
    920956        aws->label_length(12); 
    921957        aws->label("Destination"); 
    922         aws->create_toggle_field(AWAR_PRINT_TREE_DEST); 
     958        aws->create_toggle_field(AWAR_CANIO_DEST); 
    923959        aws->insert_toggle("Printer",           "P", PDEST_PRINTER); 
    924960        aws->insert_toggle("File (Postscript)", "F", PDEST_POSTSCRIPT); 
     
    927963 
    928964        aws->at("printer"); 
    929         aws->create_input_field(AWAR_PRINT_TREE_PRINTER, 16); 
     965        aws->create_input_field(AWAR_CANIO_PRINTER, 16); 
    930966 
    931967        aws->at("filename"); 
    932         aws->create_input_field(AWAR_PRINT_TREE_FILE_NAME, 16); 
     968        aws->create_input_field(AWAR_CANIO_FILE_NAME, 16); 
    933969 
    934970        aws->at("go"); 
  • branches/dev/AWT/awt_canvas.hxx

    r7587 r7588  
    199199void AWT_resize_cb(AW_window *dummy, AWT_canvas *ntw, AW_CL cl2); 
    200200 
    201 #define AWAR_PRINT_TREE                 "NT/print/" 
    202 #define AWAR_PRINT_TREE_LANDSCAPE       AWAR_PRINT_TREE "landscape" 
    203 #define AWAR_PRINT_TREE_CLIP            AWAR_PRINT_TREE "clip" 
    204 #define AWAR_PRINT_TREE_HANDLES         AWAR_PRINT_TREE "handles" 
    205 #define AWAR_PRINT_TREE_COLOR           AWAR_PRINT_TREE "color" 
    206 #define AWAR_PRINT_TREE_DEST            AWAR_PRINT_TREE "dest" 
    207 #define AWAR_PRINT_TREE_PRINTER         AWAR_PRINT_TREE "printer" 
    208 #define AWAR_PRINT_TREE_OVERLAP_WANTED  AWAR_PRINT_TREE "overlap" 
    209 #define AWAR_PRINT_TREE_OVERLAP_PERCENT AWAR_PRINT_TREE "operc" 
    210 #define AWAR_PRINT_TREE_BORDERSIZE      AWAR_PRINT_TREE "border" 
    211 #define AWAR_PRINT_TREE_PAPER           AWAR_PRINT_TREE "paper" 
    212 #define AWAR_PRINT_TREE_PAPER_USABLE    AWAR_PRINT_TREE "useable" 
    213 #define AWAR_PRINT_TREE_F2DBUG          AWAR_PRINT_TREE "f2dbug" 
    214 #define AWAR_PRINT_TREE_PAGES           AWAR_PRINT_TREE "pages" 
    215 #define AWAR_PRINT_TREE_PAGELOCK        AWAR_PRINT_TREE "plock" 
    216  
    217 #define AWAR_PRINT_TREE_TMP "tmp/" AWAR_PRINT_TREE 
    218  
    219 #define AWAR_PRINT_TREE_MAGNIFICATION AWAR_PRINT_TREE_TMP "magnification" 
    220 #define AWAR_PRINT_TREE_OVERLAP       AWAR_PRINT_TREE_TMP "overlap" 
    221 #define AWAR_PRINT_TREE_GSIZEX        AWAR_PRINT_TREE_TMP "gsizex" // graphic size in inch 
    222 #define AWAR_PRINT_TREE_GSIZEY        AWAR_PRINT_TREE_TMP "gsizey" 
    223 #define AWAR_PRINT_TREE_OSIZEX        AWAR_PRINT_TREE_TMP "osizex" // output size in inch 
    224 #define AWAR_PRINT_TREE_OSIZEY        AWAR_PRINT_TREE_TMP "osizey" 
    225 #define AWAR_PRINT_TREE_PSIZEX        AWAR_PRINT_TREE_TMP "psizex" // paper size in inch 
    226 #define AWAR_PRINT_TREE_PSIZEY        AWAR_PRINT_TREE_TMP "psizey" 
    227 #define AWAR_PRINT_TREE_SIZEX         AWAR_PRINT_TREE_TMP "sizex" // size in pages 
    228 #define AWAR_PRINT_TREE_SIZEY         AWAR_PRINT_TREE_TMP "sizey" 
    229  
    230 #define AWAR_PRINT_TREE_FILE_BASE   AWAR_PRINT_TREE_TMP "file" 
    231 #define AWAR_PRINT_TREE_FILE_NAME   AWAR_PRINT_TREE_FILE_BASE "/file_name" 
    232 #define AWAR_PRINT_TREE_FILE_DIR    AWAR_PRINT_TREE_FILE_BASE "/directory" 
    233 #define AWAR_PRINT_TREE_FILE_FILTER AWAR_PRINT_TREE_FILE_BASE "/filter" 
    234  
    235201void AWT_popup_tree_export_window(AW_window *parent_win, AW_CL cl_canvas, AW_CL); 
    236202void AWT_popup_sec_export_window (AW_window *parent_win, AW_CL cl_canvas, AW_CL);