void MainFrame::loadTiff(const wxString& filename){
// read tiff
wxString name = wxFileName(filename).GetName();
tiffManager.addTiff(filename.c_str(), name.c_str());
// display tiff
unsigned int tiffPos = tiffManager.size()-1;
// find and set color
int start = name.First('_');
int end = name.Find('.', true);
wxString pantone = name.Mid(start+1, (end-start)-1);
Colors::Color color = colors[pantone.c_str()];
tiffManager.setColor(tiffPos, reinterpret_cast<unsigned
char*>(&color));
// display tiff in viewer
//viewer->loadTexture(tiffPos);
// create checkbox, textctrl, color selector button
TiffControls* tiffControl = new TiffControls;
tiffControl->activeCheckBox = new wxCheckBox(this, -1, "");
tiffControl->activeCheckBox->SetValue(true);
Connect(tiffControl->activeCheckBox->GetId(),
wxEVT_COMMAND_CHECKBOX_CLICKED,
reinterpret_cast<wxObjectEventFunction>(&MainFrame::onViewClick));
wxSizer *sizer = XRCCTRL(*this, "view",
wxStaticText)->GetContainingSizer();
sizer->Add(tiffControl->activeCheckBox, 0, wxALIGN_CENTER);
//tiffControl->tiffNameTextCtrl = new wxTextCtrl(this, -1 , name,
wxDefaultPosition, wxSize(190, -1), wxTE_READONLY);
//sizer->Add(tiffControl->tiffNameTextCtrl, 0, wxALIGN_CENTER);
//tiffControl->colorSizer = new wxBoxSizer(wxHORIZONTAL);
//tiffControl->colorSwatch = new wxPanel(this, -1, wxDefaultPosition,
wxSize(25,25));
//tiffControl->colorSwatch->SetBackgroundColour(wxColour(color.r,
color.g, color.b));
//tiffControl->colorSwatch->SetWindowStyle(wxSUNKEN_BORDER);
//tiffControl->colorButton = new wxButton(this, -1, "",
wxDefaultPosition, wxSize(60,-1));
//Connect(tiffControl->colorButton->GetId(),
wxEVT_COMMAND_BUTTON_CLICKED,
// reinterpret_cast<wxObjectEventFunction>(&MainFrame::onColorClick));
//tiffControl->colorSizer->Add(tiffControl->colorSwatch, 0,
wxALIGN_CENTER);
//tiffControl->colorSizer->Add(tiffControl->colorButton, 0,
wxALIGN_CENTER);
//sizer->Add(tiffControl->colorSizer, 0, wxALIGN_CENTER);
tiffControls.push_back(tiffControl);
// update gui
//GetSizer()->Layout();
XRCCTRL(*this, "controls", wxPanel)->GetSizer()->Layout(); //
works bettter than the line above, but not much better
Update();
}