2000-09-17 15:17:13 -04:00
|
|
|
// rc2xml.h
|
|
|
|
//
|
|
|
|
//////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#if !defined(RC2XML_H)
|
|
|
|
#define RC2XML_H
|
|
|
|
|
|
|
|
#include "wx/file.h"
|
|
|
|
#include <wx/ffile.h>
|
|
|
|
#include <wx/list.h>
|
|
|
|
|
|
|
|
|
2000-09-26 17:59:37 -04:00
|
|
|
class rc2xml : public wxObject
|
2000-09-17 15:17:13 -04:00
|
|
|
{
|
|
|
|
public:
|
2000-10-18 17:51:04 -04:00
|
|
|
wxString m_workingpath;
|
|
|
|
wxString m_targetpath;
|
2000-09-26 17:59:37 -04:00
|
|
|
void WriteIcon(wxString iconname);
|
|
|
|
void ParseNormalMSControl();
|
|
|
|
bool Convert(wxString rcfile, wxString xmlfile);
|
|
|
|
rc2xml();
|
|
|
|
~rc2xml();
|
2000-09-17 15:17:13 -04:00
|
|
|
|
|
|
|
protected:
|
2000-09-26 17:59:37 -04:00
|
|
|
wxString LookUpId(wxString id);
|
|
|
|
|
|
|
|
void ParseResourceHeader();
|
|
|
|
void WriteBitmap(wxString bitmapname);
|
|
|
|
void ParseListCtrl(wxString label,wxString varname);
|
|
|
|
void ParseCalendar(wxString label,wxString varname);
|
|
|
|
void ParseTreeCtrl(wxString label,wxString varname);
|
|
|
|
void ParseScrollBar();
|
|
|
|
void ParseWeirdMSControl();
|
|
|
|
void ParseStaticBitmap(wxString label,wxString varname);
|
|
|
|
wxString CleanName(wxString name);
|
|
|
|
void ParseIcon(wxString varname);
|
|
|
|
wxList * m_iconlist;
|
|
|
|
void ParseIconStatic();
|
|
|
|
void ParseMenuItem();
|
2000-09-17 15:17:13 -04:00
|
|
|
|
|
|
|
//Functions
|
2000-09-26 17:59:37 -04:00
|
|
|
bool SplitHelp(wxString msg, wxString &shorthelp, wxString &longhelp);
|
|
|
|
bool LookUpString(wxString strid,wxString & st);
|
|
|
|
void ParseStringTable(wxString varname);
|
|
|
|
void WriteToolButton(wxString name,int index,int width,int height,wxBitmap bitmap);
|
|
|
|
wxString LookupString(wxString varname,wxStringList id,wxStringList msg);
|
|
|
|
void ParseToolBar(wxString varname);
|
|
|
|
void SecondPass();
|
|
|
|
void FirstPass();
|
|
|
|
void ParseBitmap(wxString varname);
|
|
|
|
void ParseSpinCtrl(wxString label,wxString varname);
|
|
|
|
void ParseRichEdit(wxString label, wxString varname);
|
|
|
|
void ParseDialog(wxString dlgname);
|
|
|
|
void ParseControls();
|
|
|
|
void ParseListBox();
|
|
|
|
void ParseStaticText();
|
|
|
|
void ParseTextCtrl();
|
2001-04-14 14:03:41 -04:00
|
|
|
void ParseRadioButton();
|
|
|
|
void ParseCheckBox();
|
2000-09-26 17:59:37 -04:00
|
|
|
void ParsePushButton();
|
|
|
|
bool Seperator(int ch);
|
|
|
|
void ParseGroupBox();
|
2001-04-14 14:03:41 -04:00
|
|
|
bool ReadRect(int & x, int & y, int & width, int & height);
|
|
|
|
wxString GetToken(bool *listseperator = 0);
|
2000-09-26 17:59:37 -04:00
|
|
|
wxString GetQuoteField();
|
|
|
|
void ReadChar(int &ch);
|
|
|
|
void ParseComboBox();
|
|
|
|
void ParseMenu(wxString varname);
|
|
|
|
void ParsePopupMenu();
|
|
|
|
wxString PeekToken();
|
|
|
|
void ParseControlMS();
|
|
|
|
void ParseSlider(wxString label, wxString varname);
|
|
|
|
void ParseProgressBar(wxString label, wxString varname);
|
|
|
|
bool ReadOrs(wxString & w);
|
|
|
|
void ParseCtrlButton(wxString label, wxString varname);
|
|
|
|
void WriteStyle(wxString style);
|
|
|
|
void WriteBasicInfo(int x,int y,int width,int height,wxString name);
|
|
|
|
void WriteName(wxString name);
|
|
|
|
void WriteTitle(wxString title);
|
|
|
|
void WritePosition(int x,int y);
|
|
|
|
void WriteSize(int width,int height);
|
|
|
|
void WriteLabel(wxString label);
|
2000-09-17 15:17:13 -04:00
|
|
|
//variables
|
2000-09-26 17:59:37 -04:00
|
|
|
wxList * m_stringtable;
|
|
|
|
wxList *m_bitmaplist;
|
|
|
|
wxList * m_resourcelist;
|
|
|
|
wxFile m_rc;
|
|
|
|
wxFFile m_xmlfile;
|
|
|
|
int m_filesize;
|
|
|
|
bool m_done;
|
2000-09-17 15:17:13 -04:00
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|