When using wxWidgets 3.0, creating a wxFont requires the gtk+ library to be initialized. This is causing espeakedit to segfault. SpectFrame::Draw is the only place where the FONT_* variables are used, so move them into the SpectFrame class and create them in the constructor. Also, FONT_NORMAL is not used so it has been removed.master
int adding_page = 0; // fix for wxWidgets (2,8,7) bug, adding first page to a wxNotebook gives emptystring for GetPageTex() in Notebook_Page_Changed event. | int adding_page = 0; // fix for wxWidgets (2,8,7) bug, adding first page to a wxNotebook gives emptystring for GetPageTex() in Notebook_Page_Changed event. | ||||
wxFont FONT_SMALL(8,wxSWISS,wxNORMAL,wxNORMAL); | |||||
wxFont FONT_MEDIUM(9,wxSWISS,wxNORMAL,wxNORMAL); | |||||
wxFont FONT_NORMAL(10,wxSWISS,wxNORMAL,wxNORMAL); | |||||
IMPLEMENT_APP(MyApp) | IMPLEMENT_APP(MyApp) | ||||
wxString AppName = _T("espeakedit"); | wxString AppName = _T("espeakedit"); |
extern wxFont FONT_SMALL; | |||||
extern wxFont FONT_MEDIUM; | |||||
extern wxFont FONT_NORMAL; | |||||
enum { | enum { | ||||
MENU_QUIT = 1, | MENU_QUIT = 1, | ||||
MENU_SPECTRUM, | MENU_SPECTRUM, |
/*************************************************************************** | /*************************************************************************** | ||||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | * Copyright (C) 2005 to 2007 by Jonathan Duddington * | ||||
* email: [email protected] * | * email: [email protected] * | ||||
* Copyright (C) 2013 by Reece H. Dunn * | |||||
* * | * * | ||||
* This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
* it under the terms of the GNU General Public License as published by * | * it under the terms of the GNU General Public License as published by * | ||||
SpectFrame::SpectFrame(SpectFrame *copy) | SpectFrame::SpectFrame(SpectFrame *copy) | ||||
: FONT_SMALL(8,wxSWISS,wxNORMAL,wxNORMAL) | |||||
, FONT_MEDIUM(9,wxSWISS,wxNORMAL,wxNORMAL) | |||||
{//===================================== | {//===================================== | ||||
int ix; | int ix; |
/*************************************************************************** | /*************************************************************************** | ||||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | * Copyright (C) 2005 to 2007 by Jonathan Duddington * | ||||
* email: [email protected] * | * email: [email protected] * | ||||
* Copyright (C) 2013 by Reece H. Dunn * | |||||
* * | * * | ||||
* This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
* it under the terms of the GNU General Public License as published by * | * it under the terms of the GNU General Public License as published by * | ||||
private: | private: | ||||
void DrawPeaks(wxDC *dc, int offy, int frame_width, int seq_amplitude, double scalex); | void DrawPeaks(wxDC *dc, int offy, int frame_width, int seq_amplitude, double scalex); | ||||
wxFont FONT_SMALL; | |||||
wxFont FONT_MEDIUM; | |||||
}; | }; | ||||
class SpectSeq | class SpectSeq |