Changeset 9feb252 in git


Ignore:
Timestamp:
14/01/14 21:57:28 (6 years ago)
Author:
Olly Betts <olly@…>
Branches:
line_contents, master, stereo, travis-osx
Children:
3fce7eb
Parents:
0ecf3b1
Message:

src/printwx.cc: Minor code refactor.

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • ChangeLog

    r0ecf3b1 r9feb252  
     1Tue Jan 14 21:57:03 GMT 2014  Olly Betts <olly@survex.com>
     2
     3        * src/printwx.cc: Minor code refactor.
     4
    15Tue Jan 14 21:51:58 GMT 2014  Olly Betts <olly@survex.com>
    26
  • src/printwx.cc

    r0ecf3b1 r9feb252  
    344344        wxStaticText* label;
    345345        label = new wxStaticText(this, -1, wxString(wmsg(/*Export format*/410)));
    346         m_format = new wxChoice(this, svx_FORMAT, wxDefaultPosition, wxDefaultSize,
    347                                 sizeof(formats) / sizeof(formats[0]), formats);
     346        const size_t n_formats = sizeof(formats) / sizeof(formats[0]);
     347        m_format = new wxChoice(this, svx_FORMAT,
     348                                wxDefaultPosition, wxDefaultSize,
     349                                n_formats, formats);
    348350        unsigned current_format = 0;
    349351        wxConfigBase * cfg = wxConfigBase::Get();
    350352        wxString s;
    351353        if (cfg->Read(wxT("export_format"), &s, wxString())) {
    352             for (unsigned i = 0; i != sizeof(formats) / sizeof(wxString); ++i) {
     354            for (unsigned i = 0; i != n_formats; ++i) {
    353355                if (s == formats[i]) {
    354356                    current_format = i;
     
    676678        if (new_filter_idx != wxNOT_FOUND) {
    677679            unsigned mask = format_info[new_filter_idx];
    678             FindWindow(svx_LEGS)->Show(mask & LEGS);
    679             FindWindow(svx_SURFACE)->Show(mask & SURF);
    680             FindWindow(svx_STATIONS)->Show(mask & STNS);
    681             FindWindow(svx_NAMES)->Show(mask & LABELS);
    682             FindWindow(svx_XSECT)->Show(mask & XSECT);
    683             FindWindow(svx_WALLS)->Show(mask & WALLS);
    684             FindWindow(svx_PASSAGES)->Show(mask & PASG);
    685             FindWindow(svx_ENTS)->Show(mask & ENTS);
    686             FindWindow(svx_FIXES)->Show(mask & FIXES);
    687             FindWindow(svx_EXPORTS)->Show(mask & EXPORTS);
    688             FindWindow(svx_CENTRED)->Show(mask & CENTRED);
    689             FindWindow(svx_FULLCOORDS)->Show(mask & FULL_COORDS);
     680            static const struct { int id; unsigned mask; } controls[] = {
     681                { svx_LEGS, LEGS },
     682                { svx_SURFACE, SURF },
     683                { svx_STATIONS, STNS },
     684                { svx_NAMES, LABELS },
     685                { svx_XSECT, XSECT },
     686                { svx_WALLS, WALLS },
     687                { svx_PASSAGES, PASG },
     688                { svx_ENTS, ENTS },
     689                { svx_FIXES, FIXES },
     690                { svx_EXPORTS, EXPORTS },
     691                { svx_CENTRED, CENTRED },
     692                { svx_FULLCOORDS, FULL_COORDS },
    690693#if 0
    691             FindWindow(svx_PROJ)->Show(mask & PROJ);
     694                { svx_PROJ, PROJ },
    692695#endif
     696            };
     697            static unsigned n_controls = sizeof(controls) / sizeof(controls[0]);
     698            for (unsigned i = 0; i != n_controls; ++i) {
     699                wxWindow * control = FindWindow(controls[i].id);
     700                if (control) control->Show(mask & controls[i].mask);
     701            }
    693702            m_scalebox->Show(bool(mask & SCALE));
    694703            m_viewbox->Show(!bool(mask & EXPORT_3D));
Note: See TracChangeset for help on using the changeset viewer.