X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3f4a0c5be34be837210768501c13dbcff81e533c..b342f8f0a604f553accba543b7feaf62dcc1df08:/include/wx/wxexpr.h diff --git a/include/wx/wxexpr.h b/include/wx/wxexpr.h index 613726f841..acad013bcf 100644 --- a/include/wx/wxexpr.h +++ b/include/wx/wxexpr.h @@ -21,8 +21,6 @@ #include "wx/defs.h" #include "wx/string.h" -#include "wx/ioswrap.h" - #include "wx/list.h" #include "wx/hash.h" @@ -52,9 +50,6 @@ typedef bool (*wxExprErrorHandler) (int errorType, char *msg); WXDLLEXPORT_DATA(extern wxExprErrorHandler) currentwxExprErrorHandler; -extern "C" WXDLLEXPORT_DATA(FILE*) yyin; - -extern "C" WXDLLEXPORT int yyparse(void); typedef enum { wxExprNull, @@ -74,8 +69,8 @@ class WXDLLEXPORT wxExpr wxExprType type; union { long integer; - char *word; - char *string; + wxChar *word; + wxChar *string; double real; wxExpr *first; // If is a list expr, points to the first node } value; @@ -83,7 +78,7 @@ class WXDLLEXPORT wxExpr wxExpr *next; // If this is a node in a list, points to the next node wxExpr *last; // If is a list expr, points to the last node - wxExpr(wxExprType the_type, char *word_or_string, bool allocate); + wxExpr(wxExprType the_type, wxChar *word_or_string, bool allocate); wxExpr(const wxString& functor); // Assume this is a new clause - pass functor wxExpr(wxExprType the_type, const wxString& word_or_string = ""); wxExpr(long the_integer); @@ -114,7 +109,7 @@ class WXDLLEXPORT wxExpr return value.word; else if (type == wxExprString) return wxString(value.string); - else return wxString(""); + else return wxString(wxT("")); } inline wxString StringValue(void) const { @@ -122,7 +117,7 @@ class WXDLLEXPORT wxExpr return wxString(value.string); else if (type == wxExprWord) return wxString(value.word); - else return wxString(""); + else return wxString(wxT("")); } // Get nth arg of clause (starting from 1) @@ -141,9 +136,8 @@ class WXDLLEXPORT wxExpr wxExpr *AttributeValue(const wxString& word) const; // Use only for a clause wxString Functor(void) const; // Only for a clause bool IsFunctor(const wxString& s) const; // Only for a clause - void WriteClause(ostream& stream); // Write this expression as a top-level clause - void WriteExpr(ostream& stream); // Write as any other subexpression - void WriteLispExpr(ostream& stream); + void WriteClause(FILE* stream); // Write this expression as a top-level clause + void WriteExpr(FILE* stream); // Write as any other subexpression // Append an expression to a list void Append(wxExpr *expr); @@ -179,12 +173,12 @@ class WXDLLEXPORT wxExpr bool GetAttributeValue(const wxString& att, wxExpr **var) const; // Compatibility with old PrologIO - inline void AssignAttributeValue(char *att, int *var) const { GetAttributeValue(att, *var); } - inline void AssignAttributeValue(char *att, long *var) const { GetAttributeValue(att, *var); } - inline void AssignAttributeValue(char *att, float *var) const { GetAttributeValue(att, *var); } - inline void AssignAttributeValue(char *att, double *var) const { GetAttributeValue(att, *var); } - inline void AssignAttributeValue(char *att, wxExpr **var) const { GetAttributeValue(att, var); } - void AssignAttributeValue(char *att, char **var) const ; // Word OR string -> string + inline void AssignAttributeValue(wxChar *att, int *var) const { GetAttributeValue(att, *var); } + inline void AssignAttributeValue(wxChar *att, long *var) const { GetAttributeValue(att, *var); } + inline void AssignAttributeValue(wxChar *att, float *var) const { GetAttributeValue(att, *var); } + inline void AssignAttributeValue(wxChar *att, double *var) const { GetAttributeValue(att, *var); } + inline void AssignAttributeValue(wxChar *att, wxExpr **var) const { GetAttributeValue(att, var); } + void AssignAttributeValue(wxChar *att, wxChar **var) const ; // Word OR string -> string // Add string items to list if the list attribute exists bool GetAttributeValueStringList(const wxString& att, wxList *var) const; @@ -244,13 +238,12 @@ public: bool Read(const wxString& filename); bool ReadFromString(const wxString& buffer); bool Write(const wxString& fileName); - bool Write(ostream& stream); - void WriteLisp(ostream& stream); + bool Write(FILE* stream); // Compatibility - inline bool ReadProlog(char *filename) { return Read(wxString(filename)); } + inline bool ReadProlog(wxChar *filename) { return Read(wxString(filename)); } inline bool ReadPrologFromString(char *buffer) { return ReadFromString(wxString(buffer)); } - inline void WriteProlog(ostream& stream) { Write(stream); } + inline void WriteProlog(FILE* stream) { Write(stream); } private: DECLARE_DYNAMIC_CLASS(wxExprDatabase)