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

📄 configtooldoc.h

📁 ecos实时嵌入式操作系统
💻 H
字号:
//####COPYRIGHTBEGIN####//// ----------------------------------------------------------------------------// Copyright (C) 1998, 1999, 2000 Red Hat, Inc.//// This program is part of the eCos host tools.//// This program 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 2 of the License, or (at your option)// any later version.//// This program 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// this program; if not, write to the Free Software Foundation, Inc.,// 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.//// ----------------------------------------------------------------------------////####COPYRIGHTEND####// configtooldoc.h :////===========================================================================//#####DESCRIPTIONBEGIN####//// Author(s):   julians// Contact(s):  julians// Date:        2000/10/05// Version:     $Id: configtooldoc.h,v 1.15 2001/08/10 14:58:21 julians Exp $// Purpose:// Description: Header file for ecConfigToolDoc// Requires:// Provides:// See also:// Known bugs:// Usage:////####DESCRIPTIONEND####////===========================================================================#ifndef _ECOS_CONFIGTOOLDOC_H_#define _ECOS_CONFIGTOOLDOC_H_#ifdef __GNUG__#pragma interface "configtooldoc.h"#endif#include "cdl.hxx"#include "configitem.h"#if ecUSE_MLT#include "memmap.h"#endifclass ecConfigItem;// Tell OnCreate to prompt for a repository instead of just loading it silently#define ecDOC_PROMPT_FOR_REPOSITORY 8/* * ecConfigToolDoc * Holds the saveable configtool information */class ecConfigToolDoc: public wxDocument{    DECLARE_DYNAMIC_CLASS(ecConfigToolDoc)public:    ecConfigToolDoc();    ~ecConfigToolDoc();//// Overrides    virtual bool OnCreate(const wxString& path, long flags);    virtual bool OnOpenDocument(const wxString& filename);    virtual bool OnSaveDocument(const wxString& filename);    virtual bool OnNewDocument() { return TRUE; }    virtual bool OnCloseDocument() ;    virtual bool Save(); // Overridden only to correct bug in wxWindows, docview.cpp//// Error and other handlers    static void CdlLoadErrorHandler(std::string message);    static void CdlLoadWarningHandler(std::string message);    static void CdlParseErrorHandler (std::string message);    static void CdlParseWarningHandler (std::string message);    static void CdlTransactionHandler (const CdlTransactionCallback & data);    static CdlInferenceCallbackResult CdlInferenceHandler (CdlTransaction data);    static CdlInferenceCallbackResult CdlGlobalInferenceHandler(CdlTransaction data);//// Accessors    CdlPackagesDatabase GetCdlPkgData () { return m_CdlPkgData; }    CdlConfiguration GetCdlConfig () { return m_CdlConfig; }    CdlInterpreter GetCdlInterpreter() { return m_CdlInterp; }    // Absolute path name to root of respository - parent of PackagesDir below    void SetRepository(const wxString& pszRepository)  { m_strRepository = ecFileName(pszRepository); }    const ecFileName& GetRepository() const { return m_strRepository; }    wxString GetDefaultHardware () ;	const wxString& GetTemplateVersion() const { return m_templateVersion; }    wxString GetPackageName (const wxString & strAlias);    // Absolute path name to "packages" directory - i.e. the one under the repository    // named "packages" in a delivery or "ecc" in CVS:    const ecFileName& GetPackagesDir() const { return m_strPackagesDir; }       const wxString& GetInstallTree() const { return m_strInstallTree; }    const wxString& GetBuildTree() const { return m_strBuildTree; }    void SetInstallTree(const wxString& str) { m_strInstallTree = str; }    void SetBuildTree(const wxString& str) { m_strBuildTree = str; }    wxList& GetItems() { return m_items; }    ecConfigItem* GetItem(size_t i) { return (ecConfigItem*) m_items[i]; }    CdlBuildInfo& GetBuildInfo() { return m_BuildInfo; }    ecConfigItem* GetFirstItem() { return (m_items.Number() == 0 ? (ecConfigItem*) NULL : (ecConfigItem*) m_items.First()->Data()); }    const wxString GetCurrentTargetPrefix();    const wxString HTMLHelpLinkFileName();    const ecFileName MLTDir ();    const ecFileName CurrentLinkerScript();    const wxString CurrentMemoryLayout ();    const ecFileName GetDocBase() const { return GetRepository() + wxT("doc"); }//// Operations    bool OpenRepository(const wxString& pszRepository = wxEmptyString, bool bPromptInitially=FALSE) ;    bool OpenRepository (ecFileName& strNewRepository, CdlPackagesDatabase &NewCdlPkgData,CdlInterpreter &NewCdlInterp,CdlConfiguration &NewCdlConfig, wxString &strNewPackagesDir);    void CloseRepository() ;    // Find a valid repository given a directory name    bool FindRepository (ecFileName& repositoryIn, ecFileName& repositoryOut) const;    void EnableCallbacks (bool bEnable=TRUE);    void AddContents (const CdlContainer container, ecConfigItem *pParent);    void AddAllItems();    ecConfigItem* AddItem (const CdlUserVisible vitem, ecConfigItem * pParent);    void DeleteItems();    // Use the wxHtmlHelpController    bool ShowInternalHtmlHelp (const wxString& strURL);    // Use an external browser    bool ShowExternalHtmlHelp (const wxString& strURL);    bool ShowURL(const wxString& strURL);    // If prefix is TRUE, add file:// to beginning    bool QualifyDocURL(wxString &strURL, bool prefix = TRUE);    void CheckRadios();    bool GenerateHeaders();    bool ExportFile();    bool ImportFile();    void RunTests();    // A standalone method for generating a build tree without saving first    bool GenerateBuildTree();    // Can we generate the build tree yet?    bool CanGenerateBuildTree() ;    void SelectTemplate (const wxString& newTemplate, const wxString& newTemplateVersion);    void SelectHardware (const wxString& newTemplate);    void SelectPackages ();	void RegenerateData();    bool UpdateBuildInfo(bool bFirstTime=FALSE);    int GetTestExeNames (wxArrayString& arTestExes, wxArrayString& arMissing) ;    bool SaveMemoryMap();    bool CopyMLTFiles();    bool SwitchMemoryLayout (bool bNewTargetPlatform);    bool NewMemoryLayout (const wxString &strPrefix);	// Find the ecConfigItem referencing the given CdlValuable	ecConfigItem * Find (CdlValuable v);	ecConfigItem * Find(const wxString & strWhat, ecWhereType where = ecInMacro);    enum GlobalConflictOutcome {OK,Cancel,NotDone};    // Resolve conflicts    GlobalConflictOutcome ResolveGlobalConflicts(wxList *parConflictsOfInterest=NULL);    bool CheckConflictsBeforeSave();    void LogConflicts (const std::list<CdlConflict> & conflicts);    void UpdateFailingRuleCount();    bool SetValue(ecConfigItem &ti, long nValue, CdlTransaction transaction = NULL);    bool SetValue(ecConfigItem &ti, const wxString &strValue, CdlTransaction transaction = NULL);    bool SetValue (ecConfigItem &ti, double dValue, CdlTransaction transaction = NULL);    bool SetEnabled(ecConfigItem &ti, bool bEnabled, CdlTransaction transaction = NULL);    // Rebuild the .hhc, .hhp, .hhk files and reinitialize the help controller    bool RebuildHelpIndex(bool force = TRUE);protected:    CdlPackagesDatabase m_CdlPkgData;    CdlInterpreter      m_CdlInterp;    CdlConfiguration    m_CdlConfig;    wxString            m_templateVersion;    ecFileName          m_strPackagesDir;    wxString            m_strCdlErrorMessage;    wxString            m_strMemoryLayoutFolder;    wxString            m_strLinkerScriptFolder;    ecFileName          m_strBuildTree;    ecFileName          m_strInstallTree;    wxList              m_items;    CdlBuildInfo		m_BuildInfo;    // This data supports communication of information to the failing rules dialog invoked by CdlGlobalInferenceHandler():    GlobalConflictOutcome m_ConflictsOutcome;    wxList              m_arConflictsOfInterest; // used by CRulesView::OnResolve (TODO change comment)public:    ecFileName          m_strRepository;    bool                m_bRepositoryOpen;#if ecUSE_MLT    mem_map             m_memoryMap;    wxString            m_strSelectedSection;    wxString            m_strSelectedRegion;#endif};#endif        // _ECOS_CONFIGTOOLDOC_H_

⌨️ 快捷键说明

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