|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T i
Length: 2501 (0x9c5) Types: TextFile Names: »ibtoolpanel.h«
└─⟦8648bda34⟧ Bits:30007244 EUUGD5_II: X11R5 └─⟦87c3ac0e0⟧ »./contrib-3/contrib-3.00« └─⟦de8ce1454⟧ └─⟦this⟧ »contrib/lib/iv/src/bin/ibuild/ibtoolpanel.h«
/* * Copyright (c) 1991 Stanford University * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation, and that the name of Stanford not be used in advertising or * publicity pertaining to distribution of the software without specific, * written prior permission. Stanford makes no representations about * the suitability of this software for any purpose. It is provided "as is" * without express or implied warranty. * * STANFORD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. * IN NO EVENT SHALL STANFORD BE LIABLE FOR ANY SPECIAL, INDIRECT OR * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ /* * ToolPanel - a panel of controls tiled horizontally (on separate lines * if necessary) that automatically includes a default set of controls * for engaging the current tool. ToolPanel also provides convenience * functions for installing and removing tools. * * $Header: /master/3.0/iv/src/bin/ibuild/RCS/ibtoolpanel.h,v 1.2 91/09/27 14:15:32 tang Exp $ */ #ifndef ibtoolpanel_h #define ibtoolpanel_h #include <InterViews/scene.h> class ControlState; class EditorInfo; class KeyMap; class Tool; class UControl; class ToolPanel : public MonoScene { public: ToolPanel(ControlState*, KeyMap*); virtual ~ToolPanel(); EditorInfo* GetEditorInfo(); boolean InstallOrRemove(Tool* tool, const char* toolName); void Install(const char* toolName, Tool* tool = nil); void Uninstall(const char* toolName); protected: void AddTool(UControl*); void RemoveTool(UControl*); private: void InitEditorInfo(); Tool* GetCurTool(); void Include(Tool*, const char* = ""); void InitTools(); void InitCompTools(); void ReadCompTools(); class UControl* FindControl(const char* toolName); Scene* GetScene(); private: KeyMap* _keymap; ControlState* _curCtrl; EditorInfo* _edInfo; boolean _initEdInfo; }; inline EditorInfo* ToolPanel::GetEditorInfo () { return _edInfo; } #endif