/usr/include/wxsmith/wxsresourcetree.h is in libwxsmithlib-dev 16.01+dfsg-2+b1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 | /*
* This file is part of wxSmith plugin for Code::Blocks Studio
* Copyright (C) 2006-2007 Bartlomiej Swiecki
*
* wxSmith is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* wxSmith is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with wxSmith. If not, see <http://www.gnu.org/licenses/>.
*
* $Revision: 8251 $
* $Id: wxsresourcetree.h 8251 2012-08-28 02:31:00Z ollydbg $
* $HeadURL: http://svn.code.sf.net/p/codeblocks/code/branches/release-16.xx/src/plugins/contrib/wxSmith/wxsresourcetree.h $
*/
#ifndef WXSRESOURCETREE_H
#define WXSRESOURCETREE_H
#include <wx/treectrl.h>
#include "wxsresourcetreeitemdata.h"
#if defined(__WXMSW__) && defined(LoadImage)
// Fix Windows winuser.h Header define of LoadImage.
#undef LoadImage
#endif
class wxsResource;
class wxsProject;
/** \brief Definition of resource tree identifier. Separate name of type could be useful in future */
typedef wxTreeItemId wxsResourceItemId;
// TODO: Rewrite this class with custom widget
/** \brief Resource tree class */
class wxsResourceTree: public wxTreeCtrl
{
public:
/** \brief Ctor */
wxsResourceTree(wxWindow* Parent);
/** \brief Dctor */
virtual ~wxsResourceTree();
/** \brief Function building new tree item for project
*
* This item takes name of associated cbProject and initializes
* item data to point to project.
*/
wxsResourceItemId NewProjectItem(const wxString& ProjectTitle,wxsProject* Project);
/** \brief Function returning item id for external resources */
wxsResourceItemId ExternalResourcesId();
/** \brief Function deleting identifier for external resources */
void DeleteExternalResourcesId();
/** \brief Getting singleton instance */
static inline wxsResourceTree* Get() { return m_Singleton; }
/** \brief Getting global image list
*
* This list is declared as static, so it can be used even
* before wxsResourceTree is created
*/
static wxImageList& GetGlobalImageList();
/** \brief Loading image to list
* \param FileName name relative to codeblock's data path
* \return Index in list
*/
static int LoadImage(const wxString& FileName);
/** \brief Adding bitmap into global list
* \param Bitmap bitmap to be added
* \return Index in list
*/
static int InsertImage(const wxBitmap& Bitmap);
/** \brief Freeing image at given index
*
* This function marks image at given index as freed, so
* it may be replaced by LoadImage in future without
* unnecessarily increasing size of list
*/
static void FreeImage(int Index);
/** \brief Blocking processing select events
* \note This function must be paired with UnblockSelect
*/
void BlockSelect();
/** \brief Unblocking select events
* \note This function must be paired with BlockSelect
*/
void UnblockSelect();
private:
wxsResourceItemId m_ExtId; ///< \brief id of tree item containing external resources
bool m_IsExt; ///< \brief True if there is item for external resources
int m_BlockCount; ///< \brief if > 0 must block all select events
wxsResourceTreeItemData* m_Data; ///< \brief Pointer to item data object used in last action
static wxsResourceTree* m_Singleton; ///< \brief singleton object
static int m_RootImageId;
static int m_ProjectImageId;
static int m_ExternalImageId;
static wxArrayInt& GetFreedList();
void PopupMenu(wxMenu* Menu,wxsResourceTreeItemData* ItemData);
void InvalidateItemData(wxsResourceTreeItemData* ItemData);
void OnSelect(wxTreeEvent& event);
void OnRightClick(wxTreeEvent& event);
void OnPopupMenu(wxCommandEvent& event);
friend void wxsResourceTreeItemData::PopupMenu(wxMenu* Menu);
friend wxsResourceTreeItemData::~wxsResourceTreeItemData();
DECLARE_EVENT_TABLE()
};
/** \brief Helper function for getting resource tree singleton object */
inline wxsResourceTree* wxsTree() { return wxsResourceTree::Get(); }
#endif
|