137 void AddMenu(
const char*,
const char*)
override;
144 void AddButton(
const char*,
const char*,
const char*)
override;
153 void AddIcon(
const char* userLabel,
const char* iconFile,
const char* command,
154 const char* file_name =
"")
override;
159 void SetOutputStyle(
const char* destination,
const char* style)
override;
256 void SecondaryLoop(
const G4String&);
257 void CreateHelpWidget();
258 void InitHelpTreeAndVisParametersWidget();
260 void UpdateCommandCompleter();
262 void ExitHelp()
const override;
263 void SetDefaultIconsToolbar();
266 QTreeWidgetItem* FindTreeItem(QTreeWidgetItem*,
const QString&);
269 QWidget* CreateSceneTreeWidget();
274 void CreateNewSceneTreeWidget();
276 void BuildPVQTree(
const G4SceneTreeItem& g4stItem, QTreeWidgetItem* qtwItem);
278 void SceneTreeItemClicked(QTreeWidgetItem*);
279 void SceneTreeItemDoubleClicked(QTreeWidgetItem*);
280 void SceneTreeItemExpanded(QTreeWidgetItem*);
281 void SceneTreeItemCollapsed(QTreeWidgetItem*);
283 struct NewSceneTreeItemTreeWidget:
public QTreeWidget {
284 void mousePressEvent(QMouseEvent*)
override;
292 QString GetCommandList(
const G4UIcommand*);
293 void updateHelpArea(
const G4UIcommand*);
296 bool eventFilter(QObject*, QEvent*)
override;
297 void ActivateCommand(G4String);
298#if (QT_VERSION < QT_VERSION_CHECK(5, 15, 0))
299 QMap<G4int, QString> LookForHelpStringInChildTree(G4UIcommandTree*,
const QString&);
301 QMultiMap<G4int, QString> LookForHelpStringInChildTree(G4UIcommandTree*,
const QString&);
303 QWidget* CreateVisParametersTBWidget();
304 QWidget* CreateHelpTBWidget();
305 G4UIDockWidget* CreateCoutTBWidget();
306 QWidget* CreateHistoryTBWidget();
307 G4UIDockWidget* CreateUITabWidget();
308 void CreateViewerWidget();
309 void OpenHelpTreeOnCommand(
const QString&);
310 QString GetShortCommandPath(QString&);
311 QString GetLongCommandPath(QTreeWidgetItem*);
312 G4bool IsGUICommand(
const G4UIcommand*);
313 G4bool CreateVisCommandGroupAndToolBox(G4UIcommand*, QWidget*,
G4int,
G4bool isDialog);
314 G4bool CreateCommandWidget(G4UIcommand* command, QWidget* parent,
G4bool isDialog);
315 void CreateViewerPropertiesDialog();
316 void CreatePickInfosDialog();
317#ifdef G4MULTITHREADED
318 void UpdateCoutThreadFilter();
320 void FilterAllOutputTextArea();
321 QString FilterOutput(
const G4UIOutputString&,
const QString&,
const QString&);
322 G4String GetThreadPrefix();
323 G4bool CheckG4EnvironmentVariable(
char* txt,
char* version);
324 QStandardItemModel* CreateCompleterModel(
const G4String& aCmd);
325 void CreateEmptyViewerPropertiesWidget();
326 void CreateEmptyPickInfosWidget();
329 QMainWindow* fMainWindow;
330 QLabel* fCommandLabel;
331 QLineEdit* fCommandArea;
332 QTextEdit* fCoutTBTextArea;
333 QTabWidget* fUITabWidget;
334 std::vector<G4UIOutputString> fG4OutputString;
335 QLineEdit* fCoutFilter;
336 QCompleter* fCompleter;
339 QListWidget* fHistoryTBTableList;
340 QTreeWidget* fHelpTreeWidget;
341 QWidget* fHelpTBWidget;
342 QWidget* fHistoryTBWidget;
343 G4UIDockWidget* fCoutDockWidget;
344 G4UIDockWidget* fUIDockWidget;
345 QWidget* fSceneTreeWidget;
346 QWidget* fNewSceneTreeWidget;
347 NewSceneTreeItemTreeWidget* fNewSceneTreeItemTreeWidget;
348 QWidget* fViewerPropertiesWidget;
349 QWidget* fPickInfosWidget;
350 QLineEdit* fHelpLine;
351#if QT_VERSION < 0x060000
352 G4QTabWidget* fViewerTabWidget;
354 QTabWidget* fViewerTabWidget;
357 QTextBrowser* fStartPage;
358 QSplitter* fHelpVSplitter;
359 QTextEdit* fParameterHelpLabel;
360 QTableWidget* fParameterHelpTable;
362 QToolBar* fToolbarApp;
363 QToolBar* fToolbarUser;
364 QString fStringSeparator;
365 G4String fLastErrMessage;
366 QString fLastOpenPath;
368 QPixmap* fSearchIcon;
373 QPixmap* fRotateIcon;
375 QPixmap* fZoomInIcon;
376 QPixmap* fZoomOutIcon;
377 QPixmap* fWireframeIcon;
379 QPixmap* fHiddenLineRemovalIcon;
380 QPixmap* fHiddenLineAndSurfaceRemovalIcon;
381 QPixmap* fPerspectiveIcon;
383 QPixmap* fCommandIcon;
387 QPixmap* fPickTargetIcon;
390#ifdef G4MULTITHREADED
391 QComboBox* fThreadsFilterComboBox;
393 std::string fDefaultViewerFirstPageHTMLText;
395 QDialog* fViewerPropertiesDialog;
396 QDialog* fPickInfosDialog;
397 QString fLastCompleteCommand;
406 void ClearButtonCallback();
407 void SaveOutputCallback();
408 void CommandEnteredCallback();
409 void CommandEditedCallback(
const QString& text);
410 void ButtonCallback(
const QString&);
411 void HelpTreeClicCallback();
412 void HelpTreeDoubleClicCallback();
413 void ShowHelpCallback();
414 void CommandHistoryCallback();
415 void LookForHelpStringCallback();
416 void UpdateTabWidget(
int);
417 void ResizeTabWidget(QResizeEvent*);
418 void CoutFilterCallback(
const QString&);
419 void ThreadComboBoxCallback(
int);
420 void TabCloseCallback(
int);
421 void ToolBoxActivated(
int);
422 void VisParameterCallback(QWidget*);
423 void ChangeColorCallback(QWidget*);
424 void ChangeCursorAction(
const QString&);
425 void ChangeSurfaceStyle(
const QString&);
426 void OpenIconCallback(
const QString&);
427 void SaveIconCallback(
const QString&);
428 void ViewerPropertiesIconCallback(
int);
429 void ChangePerspectiveOrtho(
const QString&);