Applied patch [ 1308152 ] wxGrid XRC handler patch HEAD

Start of a wxGrid handler by Agron Selimaj
Applied with corrections. Needs further work for retrieving grid properties
and styles.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart 2005-11-24 17:26:05 +00:00
parent 650372cf91
commit 0e3c83a736
5 changed files with 91 additions and 0 deletions

View File

@ -2631,6 +2631,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
src/xrc/xh_treebk.cpp
src/xrc/xh_unkwn.cpp
src/xrc/xh_wizrd.cpp
src/xrc/xh_grid.cpp
src/xrc/xmlres.cpp
src/xrc/xmlrsall.cpp
</set>
@ -2678,6 +2679,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
wx/xrc/xh_treebk.h
wx/xrc/xh_unkwn.h
wx/xrc/xh_wizrd.h
wx/xrc/xh_grid.h
wx/xrc/xmlres.h
</set>

View File

@ -56,5 +56,6 @@
#include "wx/xrc/xh_wizrd.h"
#include "wx/xrc/xh_statbar.h"
#include "wx/xrc/xh_mdi.h"
#include "wx/xrc/xh_grid.h"
#endif // _WX_XH_ALL_H_

34
include/wx/xrc/xh_grid.h Normal file
View File

@ -0,0 +1,34 @@
/////////////////////////////////////////////////////////////////////////////
// Name: xh_grid.h
// Purpose: XML resource handler for the grid control
// Author: Agron Selimaj
// Created: 2005/08/11
// RCS-ID: $Id$
// Copyright: (c) 2005 Agron Selimaj, Freepour Controls Inc.
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_XH_GRD_H_
#define _WX_XH_GRD_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "xh_grid.cpp"
#endif
#include "wx/xrc/xmlres.h"
#if wxUSE_XRC
class WXDLLIMPEXP_XRC wxGridXmlHandler : public wxXmlResourceHandler
{
DECLARE_DYNAMIC_CLASS(wxGridXmlHandler)
public:
wxGridXmlHandler();
virtual wxObject *DoCreateResource();
virtual bool CanHandle(wxXmlNode *node);
};
#endif // wxUSE_XRC
#endif // _WX_XH_GRD_H_

51
src/xrc/xh_grid.cpp Normal file
View File

@ -0,0 +1,51 @@
/////////////////////////////////////////////////////////////////////////////
// Name: xh_grid.h
// Purpose: XML resource handler for the grid control
// Author: Agron Selimaj
// Created: 2005/08/11
// RCS-ID: $Id$
// Copyright: (c) 2005 Agron Selimaj, Freepour Controls Inc.
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#if wxUSE_XRC
#include "wx/xrc/xh_grid.h"
#include "wx/grid.h"
IMPLEMENT_DYNAMIC_CLASS(wxGridXmlHandler, wxXmlResourceHandler)
wxGridXmlHandler::wxGridXmlHandler()
: wxXmlResourceHandler()
{
AddWindowStyles();
}
wxObject *wxGridXmlHandler::DoCreateResource()
{
XRC_MAKE_INSTANCE(grid, wxGrid)
grid->Create(m_parentAsWindow,
GetID(),
GetPosition(), GetSize(),
GetStyle(wxT("style")),
GetName());
SetupWindow( grid);
return grid;
}
bool wxGridXmlHandler::CanHandle(wxXmlNode *node)
{
return IsOfClass(node, wxT("wxGrid"));
}
#endif // wxUSE_XRC

View File

@ -118,6 +118,9 @@ void wxXmlResource::InitAllHandlers()
#if wxUSE_MDI
AddHandler(new wxMdiXmlHandler);
#endif
#if wxUSE_GRID
AddHandler( new wxGridXmlHandler);
#endif
}
#endif // wxUSE_XRC