]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/txrc.tex
added IsEditable
[wxWidgets.git] / docs / latex / wx / txrc.tex
index b117c11be552d1429cead49c66d0946973c23b06..b1cd582e52fc8e0a7f906515092b81898d330b84 100644 (file)
@@ -73,8 +73,8 @@ These are the typical steps for using XRC files in your application.
 and then call \verb$wxXmlResource::Get()->Load("myfile.xrc")$ to load the resource file;
 \item to create a dialog from a resource, create it using the default constructor, and then
 load using for example \verb$wxXmlResource::Get()->LoadDialog(&dlg, this, "dlg1")$;
-\item set up event tables as usual but use the \verb$XMLID(str)$ macro to translate from XRC string names
-to a suitable integer identifier, for example \verb$EVT_MENU(XMLID("quit"), MyFrame::OnQuit)$.
+\item set up event tables as usual but use the \verb$XRCID(str)$ macro to translate from XRC string names
+to a suitable integer identifier, for example \verb$EVT\_MENU(XRCID("quit"), MyFrame::OnQuit)$.
 \end{itemize}
 
 To create an XRC file, use one of the following methods.
@@ -128,46 +128,10 @@ For example:
 This is the C++ source file (xrcdemo.cpp) for the XRC sample.
 
 \begin{verbatim}
-/////////////////////////////////////////////////////////////////////////////
-// Name:        xmldemo.cpp
-// Purpose:     XML resources sample
-// Author:      Vaclav Slavik
-// RCS-ID:      $Id$
-// Copyright:   (c) Vaclav Slavik
-// Licence:     wxWindows licence
-/////////////////////////////////////////////////////////////////////////////
-
-// ============================================================================
-// declarations
-// ============================================================================
-
-// ----------------------------------------------------------------------------
-// headers
-// ----------------------------------------------------------------------------
-#ifdef __GNUG__
-    #pragma implementation "xrcdemo.cpp"
-    #pragma interface "xrcdemo.cpp"
-#endif
-
-// 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" wxWindows headers)
-#ifndef WX_PRECOMP
-    #include "wx/wx.h"
-#endif
-
+#include "wx/wx.h"
 #include "wx/image.h"
 #include "wx/xrc/xmlres.h"
 
-// ----------------------------------------------------------------------------
-// resources
-// ----------------------------------------------------------------------------
 // the application icon
 #if defined(__WXGTK__) || defined(__WXMOTIF__) || defined(__WXMAC__)
     #include "rc/appicon.xpm"
@@ -212,27 +176,15 @@ private:
 // event tables and other macros for wxWindows
 // ----------------------------------------------------------------------------
 
-// the event tables connect the wxWindows events with the functions (event
-// handlers) which process them. It can be also done at run-time, but for the
-// simple menu events like this the static method is much simpler.
 BEGIN_EVENT_TABLE(MyFrame, wxFrame)
-    EVT_MENU(XMLID("menu_quit"),  MyFrame::OnQuit)
-    EVT_MENU(XMLID("menu_about"), MyFrame::OnAbout)
-    EVT_MENU(XMLID("menu_dlg1"), MyFrame::OnDlg1)
-    EVT_MENU(XMLID("menu_dlg2"), MyFrame::OnDlg2)
+    EVT_MENU(XRCID("menu_quit"),  MyFrame::OnQuit)
+    EVT_MENU(XRCID("menu_about"), MyFrame::OnAbout)
+    EVT_MENU(XRCID("menu_dlg1"), MyFrame::OnDlg1)
+    EVT_MENU(XRCID("menu_dlg2"), MyFrame::OnDlg2)
 END_EVENT_TABLE()
 
-// Create a new application object: this macro will allow wxWindows to create
-// the application object during program execution (it's better than using a
-// static object for many reasons) and also declares the accessor function
-// wxGetApp() which will return the reference of the right type (i.e. MyApp and
-// not wxApp)
 IMPLEMENT_APP(MyApp)
 
-// ============================================================================
-// implementation
-// ============================================================================
-
 // ----------------------------------------------------------------------------
 // the application class
 // ----------------------------------------------------------------------------
@@ -264,9 +216,7 @@ MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size)
     SetToolBar(wxXmlResource::Get()->LoadToolBar(this, "toolbar"));
 }
 
-
 // event handlers
-
 void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
 {
     // TRUE is to force the frame to close
@@ -289,7 +239,6 @@ void MyFrame::OnDlg1(wxCommandEvent& WXUNUSED(event))
     dlg.ShowModal();
 }
 
-
 void MyFrame::OnDlg2(wxCommandEvent& WXUNUSED(event))
 {
     wxDialog dlg;
@@ -461,77 +410,8 @@ This is the XML file (resource.xrc) for the XRC sample.
 
 \subsection{XRC file format}\label{xrcfileformat}
 
-\subsubsection{Introduction to the XRC file format}\label{xrcfileformatintro}
-
-This note describes the file format used for storing XRC resources that are
-used by wxXmlResource class. It is probably only useful for those implementing
-dialog editors with XRC support, or for those writing XRC files by hand.
-
-If you only want to use the resources, you can choose from a number of editors,
-as listed in \helpref{XRC concepts}{xrcconcepts}.
-
-The XRC format is based on XML 1.0 (please consult W3C's specification). There
-is no DTD available since it is not possible to fully describe the format with
-the limited expressive power of DTDs.
-
-\subsubsection{XRC terminology}\label{xrcterminology}
-
-The usual XML terminology applies. In particular, we shall use the terms 
-{\it node}, {\it property} and {\it value} in the XML sense:
-
-\begin{verbatim}
-    <node property1="value1" property2="value2">...</node>
-\end{verbatim}
-
-The term "attribute" is specific to XRC and refers to a property-less subnode 
-of an <object> or <object_ref> node. In the example bellow, <pos>, <label> and
-<style> are attributes, while neither <resource> nor either of <object>s is:
-
-\begin{verbatim}
-    <?xml version="1.0" encoding="utf-8">
-    <resource version="2.3.0.1">
-        <object class="wxPanel">
-            <style>wxSUNKEN_BORDER</style>
-            <object class="wxStaticText">
-                <label>A label</label>
-                <pos>10,10</pos>
-            </object>
-        </object>
-    </resource>
-\end{verbatim}
-
-\subsubsection{XRC format high-level description}
-
-An XRC resource file is a well-formed XML 1.0 document. 
-
-The root node of XRC document must be <resource>. The <resource> node has 
-optional {\it version} property. Default version  (in absence of the version 
-property) is "0.0.0.0". The version consists of four integers separated by 
-periods. Version of XRC format changes only if there was an incompatible 
-change introduced (i.e. either the library cannot understand old resource 
-files or older versions of the library wouldn't understand the new format).
-The first three integers are major, minor and release number of the wxWindows 
-release when the change was introduced, the last one is revision number and 
-is 0 for the first incompatible change in given wxWindows release, 1 for 
-the second, and so on.
-
-Differences between versions are described within this document in paragraphs
-entitled {\it Version Note}.
-
-The <resource> node is only allowed to have <object> and <object_ref>
-subnodes, all of which must have the "name" property.
-
-<object> - TODO (name, class, subclass)
-
-<object_ref> - TODO (name, ref, subclass)
-
-\subsubsection{Common XRC attributes}
-
-Coming soon.
-
-\subsubsection{Supported classes}
-
-Coming soon.
+Please see Technical Note 14 (docs/tech/tn0014.txt) in your wxWindows
+distribution.
 
 \subsection{Adding new resource handlers}\label{newresourcehandlers}