⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 convert.cpp

📁 很牛的GUI源码wxWidgets-2.8.0.zip 可在多种平台下运行.
💻 CPP
字号:
//wxConvertApp Programming Utility/*This program currently offers 3 useful conversions1.  Converts most of an .RC file into a wxXml file2.  Converts most of an .wxr file into a wxXml file3.  Converts portions of an .RC file into a wxr file*/// For compilers that support precompilation, includes "wx/wx.h".#include "wx/wxprec.h"#ifdef __BORLANDC__#pragma hdrstop#endif// for all others, include the necessary headers (this file is usually all you// need because it includes almost all "standard" wxWidgets headers#ifndef WX_PRECOMP#include "wx/wx.h"#endif#include "wx/image.h"#include "wx/deprecated/setup.h"#include "wx/deprecated/resource.h"#include "convert.h"#include "rc2wxr.h"#include "wxr2xml.h"#include "rc2xml.h"IMPLEMENT_APP(wxConvertApp)//////////////////////////////////////////////////////////////////////// Construction/Destruction//////////////////////////////////////////////////////////////////////wxConvertApp::wxConvertApp(){    m_pFrame=NULL;    m_pMenuBar=NULL;}wxConvertApp::~wxConvertApp(){}bool wxConvertApp::OnInit(){//Initialize all image loaders(JPEG,BMP,PNG,and etc)    wxInitAllImageHandlers();    SetAppName(_T("wxConvertApp"));    if (HandleCommandLine())        return true;// Create the main frame window    m_pFrame = new wxMainFrame(NULL, wxID_ANY, _T("wxConvertApp"), wxPoint(0, 0), wxSize(500, 400),        wxDEFAULT_FRAME_STYLE | wxHSCROLL | wxVSCROLL);    InitMenu();    m_pFrame->Show(true);    SetTopWindow(m_pFrame);    return true;}void wxConvertApp::InitMenu(){    m_pMenuBar=new wxMenuBar;    wxASSERT(m_pMenuBar);    wxMenu *filemenu=new wxMenu;    filemenu->Append(ID_RC2WXR,_T("Convert RC file to WXR file"));    filemenu->Append(ID_WXR2XML,_T("Convert WXR file to XML file"));    filemenu->Append(ID_RC2XML,_T("Convert RC file to XML file"));    filemenu->Append(ID_QUIT, _T("E&xit"));    m_pMenuBar->Append(filemenu,_T("&File"));    m_pFrame->SetMenuBar(m_pMenuBar);}// MainFrame.cpp: implementation of the wxMainFrame class.////////////////////////////////////////////////////////////////////////BEGIN_EVENT_TABLE(wxMainFrame, wxFrame)    EVT_MENU(ID_QUIT,wxMainFrame::OnQuit)    EVT_MENU(ID_RC2WXR,wxMainFrame::OnRc2Wxr)    EVT_MENU(ID_WXR2XML,wxMainFrame::OnWXR2XML)    EVT_MENU(ID_RC2XML,wxMainFrame::OnRC2XML)END_EVENT_TABLE()//////////////////////////////////////////////////////////////////////// Construction/Destruction//////////////////////////////////////////////////////////////////////wxMainFrame::wxMainFrame(wxWindow* parent,wxWindowID id,const wxString& title, const wxPoint& pos, const wxSize& size,long style, const wxString& name):wxFrame(parent,id,title,pos,size,style,name){}wxMainFrame::~wxMainFrame(){}void wxMainFrame::OnQuit(wxCommandEvent& WXUNUSED(event)){    Close(true);}void wxMainFrame::OnRc2Wxr(wxCommandEvent& WXUNUSED(event)){#if wxUSE_FILEDLG    wxFileDialog filed(this, wxEmptyString,                       wxEmptyString, wxEmptyString,                       _T("*.rc"), wxFD_OPEN);    if (filed.ShowModal()!=wxID_OK)        return;    wxFileDialog wxrfile(this, _T("Enter Desired WXR file name"),                         wxEmptyString, _T("resource.wxr"),                         _T("*.wxr"), wxFD_OPEN);    if (wxrfile.ShowModal()!=wxID_OK)        return;    rc2wxr convert;    convert.Convert(wxrfile.GetPath(),filed.GetPath());#endif // wxUSE_FILEDLG}void wxMainFrame::OnWXR2XML(wxCommandEvent& WXUNUSED(event)){#if wxUSE_FILEDLG    wxFileDialog f(this);    f.SetWildcard(_T("*.wxr"));    if (f.ShowModal()!=wxID_OK)        return;    wxFileDialog xmlfile(this,_T("Enter Desired XML file name"),                         wxEmptyString, _T("resource.xml"),                         _T("*.xml"), wxFD_OPEN);    if (xmlfile.ShowModal()!=wxID_OK)        return;    wxr2xml XMLCon;    XMLCon.Convert(f.GetPath(),xmlfile.GetPath());#endif // wxUSE_FILEDLG}void wxMainFrame::OnRC2XML(wxCommandEvent& WXUNUSED(event)){#if wxUSE_FILEDLG    wxFileDialog f(this);    f.SetWildcard(_T("*.rc"));    if (f.ShowModal()!=wxID_OK)        return;    wxFileDialog xmlfile(this,_T("Enter Desired XML file name"),                         wxEmptyString, _T("resource.xml"),                         _T("*.xml"), wxFD_OPEN);    if (xmlfile.ShowModal()!=wxID_OK)        return;    rc2xml XMLCon;    XMLCon.Convert(f.GetPath(),xmlfile.GetPath());#endif // wxUSE_FILEDLG}bool wxConvertApp::HandleCommandLine(){   if (argc != 2)       return false;//Figure out kind of conversion    wxString source,target;    wxr2xml trans_wxr2xml;    rc2xml trans_rc2xml;    rc2wxr trans_rc2wxr;    source=argv[1];    target=argv[2];    if ((source.Find(_T(".wxr"))>0)&&(target.Find(_T(".xml"))>0))        {        trans_wxr2xml.Convert(source,target);        return true;        }    else if ((source.Find(_T(".rc"))!=wxNOT_FOUND)&(target.Find(_T(".wxr"))!=wxNOT_FOUND))        {        trans_rc2wxr.Convert(source,target);        return true;        }    else if ((source.Find(_T(".rc"))!=wxNOT_FOUND)&(target.Find(_T(".xml"))!=wxNOT_FOUND))        {        trans_rc2xml.Convert(source,target);        return true;        }    return false;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -