32 #include <ArmarXGui/gui-plugins/LoggingPlugin/ui_LogViewer.h>
66 void loadSettings(QSettings* settings)
override;
67 void saveSettings(QSettings* settings)
override;
72 return "Meta.LogViewer";
78 return QIcon(
"://icons/papyrus.svg");
84 return QIcon(
"://icons/papyrus.svg");
87 QPointer<QWidget> getCustomTitlebarWidget(QWidget* parent)
override;
90 void onInitComponent()
override;
91 void onConnectComponent()
override;
92 void onExitComponent()
override;
95 void write(
const std::string& who,
97 const std::string& tag,
100 const std::string& file,
102 const std::string&
function,
103 const Ice::Current& = Ice::emptyCurrent);
104 void writeLog(
const LogMessage& msg,
const Ice::Current& = Ice::emptyCurrent)
override;
107 void setRow(
const LogMessage& msg,
int rowIndex);
109 LogTable* addFilter(QString filterId,
111 QString loggingGroup,
112 QString componentFilter,
114 MessageType minimumVerbosity,
115 QString messageFilter,
117 QString functionFilter);
119 bool checkAndAddNewFilter(
const QString& loggingGroupName,
const QString& componentName);
123 void addNewEntry(
const LogMessage& msg);
124 void performLiveFilter(QString searchStr,
int startRow = 0);
125 void performLiveSearch(QString searchStr);
126 void clearSelectedLog();
128 void pauseLogging(
bool pause =
false);
130 void editFilter(QTreeWidgetItem* item,
int column);
131 void removeSelectedFilter();
132 void removeFilter(QTreeWidgetItem* item);
133 void filterSelectionChanged(QTreeWidgetItem* item, QTreeWidgetItem* previous);
134 void insertPendingEntries();
135 void searchTypeChanged(
int index);
136 void selectNextSearchResult();
137 void selectPreviousSearchResult();
138 void updateFilterList();
139 void OpenConfigureDialog();
141 void newEntry(
const LogMessage& msg);
142 void updateFilterListSignal();
143 void componentConnected();
146 bool onClose()
override;
152 QString loggingGroupNameToFilterName(
const QString& loggingGroupName)
const;
156 std::vector<LogMessage> buffer;
158 std::map<QString, LogTable*> filterMap;
160 std::vector<LogMessage> pendingEntries;
162 mutable std::mutex pendingEntriesMutex;
163 QTimer* pendingEntriesTimer;
164 QToolBar* customToolbar;