OpendTect  6.6
objectfinder.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: Jaap Glas
8  Date: January 2009
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "uicmddrivermod.h"
15 #include "sets.h"
16 
17 class FileMultiString;
18 class uiMainWin;
19 class BufferStringSet;
20 class CallBacker;
21 
22 namespace CmdDrive
23 {
24 
25 class WildcardManager;
26 
27 mExpClass(uiCmdDriver) ObjectFinder
28 {
29 public:
30  ObjectFinder(const uiMainWin&,bool casesensitive=true,
31  WildcardManager* =0);
32 
33  enum NodeTag { Everything, AllToolbars, AllDockWins,
34  CurWinTopGrp, UiObjNode,
35  ToolbarBase=1000, DockWinBase=2000 };
36 
38  const char* searchexpr=0) const;
39  bool findNodes(const CallBacker* root,
41  const char* searchexpr=0,
42  bool visonly=true) const;
43  bool findNodes(NodeTag,const CallBacker* root,
45  const char* searchexpr=0) const;
46 
48  const FileMultiString& keys,
49  int* unfoundkeyidx=0) const;
50 
52  bool yn=true);
53 
54  static void getAliases( const CallBacker& entity,
55  BufferStringSet& aliases );
56 
57  bool getAncestor(NodeTag& curtag,
58  const CallBacker*& curnode) const;
59 
60 protected:
61 
62  bool isKeyInTree(NodeTag,const CallBacker* root,
63  const char* searchexpr) const;
64 
65  int toolBarIndex(const CallBacker* entity ) const;
66  int dockWinIndex(const CallBacker* entity ) const;
67 
70 
72 };
73 
74 
75 }; // namespace CmdDrive
76 
77 
CmdDrive::ObjectFinder::findNodes
bool findNodes(NodeTag, ObjectSet< const CallBacker > *nodelist, const char *searchexpr=0) const
CmdDrive::ObjectFinder::toolBarIndex
int toolBarIndex(const CallBacker *entity) const
uiMainWin
User interface main window.
Definition: uimainwin.h:35
ObjectSet< const CallBacker >
BufferStringSet
Set of BufferString objects.
Definition: bufstringset.h:26
CmdDrive::ObjectFinder::isKeyInTree
bool isKeyInTree(NodeTag, const CallBacker *root, const char *searchexpr) const
CmdDrive::ObjectFinder::getAliases
static void getAliases(const CallBacker &entity, BufferStringSet &aliases)
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
FileMultiString
SeparString with backquotes as separators, use in most ascii files.
Definition: separstr.h:223
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
CmdDrive::ObjectFinder::selectNodes
bool selectNodes(ObjectSet< const CallBacker > &nodesfound, const FileMultiString &keys, int *unfoundkeyidx=0) const
CmdDrive::ObjectFinder::findNodes
bool findNodes(const CallBacker *root, ObjectSet< const CallBacker > *nodelist, const char *searchexpr=0, bool visonly=true) const
CmdDrive::ObjectFinder::deleteGreys
static int deleteGreys(ObjectSet< const CallBacker > &objsfound, bool yn=true)
CmdDrive::ObjectFinder::getAncestor
bool getAncestor(NodeTag &curtag, const CallBacker *&curnode) const
CmdDrive::ObjectFinder::UiObjNode
@ UiObjNode
Definition: objectfinder.h:34
CmdDrive
Command Drive
Definition: canvascommands.h:22
CmdDrive::ObjectFinder::wcm_
WildcardManager * wcm_
Definition: objectfinder.h:71
CmdDrive::ObjectFinder::curwin_
const uiMainWin & curwin_
Definition: objectfinder.h:68
CmdDrive::ObjectFinder::findNodes
bool findNodes(NodeTag, const CallBacker *root, ObjectSet< const CallBacker > *nodelist, const char *searchexpr=0) const
CmdDrive::ObjectFinder
Definition: objectfinder.h:28
CmdDrive::ObjectFinder::dockWinIndex
int dockWinIndex(const CallBacker *entity) const
sets.h
CmdDrive::WildcardManager
Definition: searchkey.h:57
CmdDrive::ObjectFinder::casesensitive_
bool casesensitive_
Definition: objectfinder.h:69
CmdDrive::ObjectFinder::ObjectFinder
ObjectFinder(const uiMainWin &, bool casesensitive=true, WildcardManager *=0)
CmdDrive::ObjectFinder::NodeTag
NodeTag
Definition: objectfinder.h:33

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2021