Forward port from 2.6 branch to avoid wxSTD usage crashes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38143 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Włodzimierz Skiba
2006-03-16 13:06:39 +00:00
parent 7487919e55
commit 9c9691ba24
4 changed files with 361 additions and 247 deletions

View File

@@ -14,6 +14,8 @@
#include "wx/list.h"
#include "wx/hash.h"
#include "wx/tokenzr.h"
#include "wx/wfstream.h"
#include "wx/txtstrm.h"
#include "wxhlpblk.h"
/*
@@ -176,7 +178,7 @@ extern wxPathList TexPathList; // Path list, can be used for file searching
extern bool StringMatch(const wxChar *one, const wxChar *two, bool subString = true, bool exact = false);
// Define a variable value from the .ini file
wxChar *RegisterSetting(wxChar *settingName, wxChar *settingValue, bool interactive = true);
wxChar *RegisterSetting(const wxString& settingName, const wxString& settingValue, bool interactive = true);
// Major document styles
#define LATEX_REPORT 1
@@ -500,23 +502,23 @@ extern wxList CustomMacroList;
class CustomMacro: public wxObject
{
public:
wxChar *macroName;
wxChar *macroBody;
int noArgs;
inline CustomMacro(wxChar *name, int args, wxChar *body)
{
noArgs = args;
macroName = wxStrcpy(new wxChar[wxStrlen(name) + 1], name);
if (body)
macroBody = wxStrcpy(new wxChar[wxStrlen(body) + 1], body);
else
macroBody = NULL;
}
~CustomMacro();
public:
wxChar *macroName;
wxChar *macroBody;
int noArgs;
inline CustomMacro(const wxChar *name, int args, wxChar *body)
{
noArgs = args;
macroName = wxStrcpy(new wxChar[wxStrlen(name) + 1], name);
if (body)
macroBody = wxStrcpy(new wxChar[wxStrlen(body) + 1], body);
else
macroBody = NULL;
}
~CustomMacro();
};
bool ReadCustomMacros(wxChar *filename);
bool ReadCustomMacros(const wxString& filename);
void ShowCustomMacros(void);
CustomMacro *FindCustomMacro(wxChar *name);
wxChar *ParseMultifieldString(wxChar *s, int *pos);
@@ -1066,6 +1068,3 @@ extern void InitialiseColourTable(void);
#define ltTOPLEVEL 15000
#define ltCUSTOM_MACRO 15001
#define ltSOLO_BLOCK 15002