GSI Object Oriented Online Offline (Go4)  GO4-6.3.0
Public Types | Public Slots | Signals | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | Friends | List of all members
QGo4Widget Class Reference

#include <QGo4Widget.h>

+ Inheritance diagram for QGo4Widget:

Public Types

enum  {
  service_DragEnter = 1, service_DropEvent = 2, service_CreateItem = 3, service_DrawItem = 4,
  service_EditItem = 5, service_ShowInfo = 6, service_EditInSlot = 7, service_SaveItem = 8,
  service_UpdateAnalysisItem = 9, service_StatusMessage = 15, service_CreateViewPanel = 17, service_BrowserItemRemote = 18,
  service_Browser = 19, service_SaveToMemory = 20, service_GetAnalysis = 21, service_AddEditorLink = 22,
  service_AddDirectLink = 23, service_AddLinkInSlot = 24, service_GetTopSlot = 25, service_AddEditorSlot = 26,
  service_SetLinkedName = 27, service_GetLinkedName = 28, service_GetLinkedName2 = 29, service_GetLinked0 = 30,
  service_GetLinked1 = 31, service_GetLinked2 = 32, service_RemoveLink = 33, service_RemoveAllLinks = 34,
  service_ObjectCreated = 35, service_ConnectPad = 36, service_LastActivePanel = 37, service_WhereItemDrawn = 38,
  service_UndrawItem = 39, service_General = 40, service_PanelTimer = 41, service_HelpWindow = 42,
  service_HotStart = 43, panel_Activated = 101, panel_Modified = 102, panel_Updated = 103,
  panel_ActiveUpdated = 104, panel_PadDeleted = 105, panel_Deleted = 106
}
 pointer on browser proxy More...
 

Public Slots

void CloseMDIParentSlot ()
 

Signals

void widgetService (QGo4Widget *editor, int serviceid, const char *str, void *par)
 

Public Member Functions

 QGo4Widget (QWidget *parent=nullptr, const char *name=nullptr, Qt::WindowFlags f=Qt::Widget)
 
virtual ~QGo4Widget ()
 
virtual bool IsAcceptDrag (const char *itemname, TClass *cl, int kind)
 
virtual void DropItem (const char *itemname, TClass *cl, int kind)
 
virtual void ResetWidget ()
 
void ObjectCreatedByWidget (const char *itemname, TClass *cl)
 
void ProcessSignal (const char *linkname, bool assigned, TObject *obj, TGo4Slot *slot)
 

Static Public Member Functions

static QAction * AddIdAction (QMenu *menu, QSignalMapper *map, const QString &text, int id, int enabled=-1, int checked=-1)
 
static QAction * AddIdAction (QMenu *menu, QSignalMapper *map, const QIcon &icon, const QString &text, int id, int enabled=-1, int checked=-1)
 
static QAction * CreateChkAction (QMenu *menu, const QString &text, bool checked, bool enabled=true)
 
static QAction * SetIdAction (QSignalMapper *map, int id, int enabled=-1, int checked=-1)
 

Protected Member Functions

void closeEvent (QCloseEvent *e) override
 
void dragEnterEvent (QDragEnterEvent *e) override
 
void dragMoveEvent (QDragMoveEvent *e) override
 
void dropEvent (QDropEvent *e) override
 
void AddLink (const char *itemname, const char *linkname)
 
void AddLink (TGo4Slot *slot, const char *linkname)
 
TGo4SlotAddLink (const char *itemname, TGo4Slot *parent)
 
TGo4SlotGetTopSlot (bool force=false)
 
TGo4SlotAddSlot (const char *slotname)
 
void SetLinkedName (TGo4Slot *slot, const char *itemname)
 
const char * GetLinkedName (const char *linkname)
 
const char * GetLinkedName (TGo4Slot *slot)
 
TObject * GetLinked (const char *linkname, int updatelevel=0)
 
template<class T >
T * GetLinkedCast (const char *linkname, int updatelevel=0)
 
void RemoveLink (const char *linkname, bool blockreset=true)
 
void RemoveAllLinks (bool blockreset=true)
 
void RemoveLinksMasked (const char *startedwith=nullptr, bool blockreset=true)
 
bool BrowserItemRemote (const char *itemname)
 
TGo4BrowserProxyBrowser ()
 
void StatusMessage (const QString &message)
 
void AskToCreateObject (TClass *cl, int isremote)
 
void ShowItemInfo (const QString &itemname)
 
TGo4ViewPanelCreateViewPanel (int ndiv=0)
 
TGo4ViewPanelDrawItem (const QString &itemname, TGo4ViewPanel *panel=nullptr, TPad *pad=nullptr, bool activate=true, int updatelevel=-1)
 
TGo4ViewPanelWhereItemDrawn (const char *itemname)
 
void HelpWindow (const char *filename, const char *msg=nullptr)
 
void UndrawItem (const char *itemname)
 
TGo4ViewPanelLastActivePanel ()
 
void EditItem (const QString &itemname)
 
void EditObjectInSlot (TGo4Slot *slot)
 
QString SaveObjectInMemory (const char *foldername, TObject *obj)
 
bool SaveItemToFile (const char *itemname, const char *subfolder=nullptr)
 
bool UpdateItemInAnalysis (const char *itemname, TObject *obj=nullptr)
 
void InformThatObjectCreated (const char *itemname, TClass *cl)
 
TGo4ServerProxyGetAnalysis (const char *itemname=nullptr)
 
void StartHotstart (const char *filename)
 
void ConnectPad (TPad *pad)
 
void CallServiceFunc (int id, const char *str=nullptr, void *par=nullptr)
 
void ServiceCall (const char *name, void *par=nullptr)
 
virtual void requestedObjectCreated (const char *itemname, TClass *cl)
 
virtual void linkedObjectUpdated (const char *linkname, TObject *obj)
 
virtual void linkedObjectRemoved (const char *linkname)
 
virtual void linkedUpdated (TGo4Slot *slot, TObject *obj)
 
virtual void linkedRemoved (TGo4Slot *slot, TObject *obj)
 
void setCanDestroyWidget (bool on=true)
 
void CallPanelFunc (int id, TPad *pad=nullptr)
 
void ShootResetWidget ()
 
void ShootCloseWidget (bool closeparent=false)
 
bool IsUpdateBlocked () const
 

Private Attributes

bool fWaitsForObjectCreation {false}
 
bool fCanDestroyWidget {false}
 
bool fResetWidgetShooted {false}
 indicate that widget can be destroyed More...
 
bool fBlockUpdate {false}
 indicates that reset widget timer is shoot More...
 
TGo4BrowserProxyfBrowserProxy {nullptr}
 set when automatic reset must be blocked More...
 

Friends

class TGo4MainWindow
 

Detailed Description

Definition at line 38 of file QGo4Widget.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

pointer on browser proxy

Enumerator
service_DragEnter 
service_DropEvent 
service_CreateItem 
service_DrawItem 
service_EditItem 
service_ShowInfo 
service_EditInSlot 
service_SaveItem 
service_UpdateAnalysisItem 
service_StatusMessage 
service_CreateViewPanel 
service_BrowserItemRemote 
service_Browser 
service_SaveToMemory 
service_GetAnalysis 
service_AddEditorLink 
service_AddDirectLink 
service_AddLinkInSlot 
service_GetTopSlot 
service_AddEditorSlot 
service_SetLinkedName 
service_GetLinkedName 
service_GetLinkedName2 
service_GetLinked0 
service_GetLinked1 
service_GetLinked2 
service_RemoveLink 
service_RemoveAllLinks 
service_ObjectCreated 
service_ConnectPad 
service_LastActivePanel 
service_WhereItemDrawn 
service_UndrawItem 
service_General 
service_PanelTimer 
service_HelpWindow 
service_HotStart 
panel_Activated 
panel_Modified 
panel_Updated 
panel_ActiveUpdated 
panel_PadDeleted 
panel_Deleted 

Definition at line 53 of file QGo4Widget.h.

Constructor & Destructor Documentation

◆ QGo4Widget()

QGo4Widget::QGo4Widget ( QWidget *  parent = nullptr,
const char *  name = nullptr,
Qt::WindowFlags  f = Qt::Widget 
)

Definition at line 25 of file QGo4Widget.cpp.

◆ ~QGo4Widget()

QGo4Widget::~QGo4Widget ( )
virtual

Definition at line 37 of file QGo4Widget.cpp.

References RemoveLinksMasked().

Member Function Documentation

◆ AddIdAction() [1/2]

QAction * QGo4Widget::AddIdAction ( QMenu *  menu,
QSignalMapper *  map,
const QString &  text,
int  id,
int  enabled = -1,
int  checked = -1 
)
static

◆ AddIdAction() [2/2]

QAction * QGo4Widget::AddIdAction ( QMenu *  menu,
QSignalMapper *  map,
const QIcon &  icon,
const QString &  text,
int  id,
int  enabled = -1,
int  checked = -1 
)
static

Definition at line 453 of file QGo4Widget.cpp.

◆ AddLink() [1/3]

void QGo4Widget::AddLink ( const char *  itemname,
const char *  linkname 
)
protected

◆ AddLink() [2/3]

void QGo4Widget::AddLink ( TGo4Slot slot,
const char *  linkname 
)
protected

create link for object in slot with name linkname

Definition at line 122 of file QGo4Widget.cpp.

References service_AddDirectLink, and widgetService().

◆ AddLink() [3/3]

TGo4Slot * QGo4Widget::AddLink ( const char *  itemname,
TGo4Slot parent 
)
protected

create link for item in dedicated slot parent

Definition at line 127 of file QGo4Widget.cpp.

References service_AddLinkInSlot, and widgetService().

◆ AddSlot()

TGo4Slot * QGo4Widget::AddSlot ( const char *  slotname)
protected

add slot with specific name to widget top folder

Definition at line 141 of file QGo4Widget.cpp.

References service_AddEditorSlot, and widgetService().

Referenced by TGo4ParaEdit::EditFitter(), TGo4EventInfo::RefreshClicked(), TGo4HistogramInfo::WorkWithHistogram(), and TGo4ParaEdit::WorkWithParameter().

◆ AskToCreateObject()

void QGo4Widget::AskToCreateObject ( TClass *  cl,
int  isremote 
)
protected

Function call dialog to create object of appropriate class isremote == 0 - object should be created localy and widget will be informed isremote == 1 - object should be created on analysis side and widget should be informed isremote == -1 - activate creation dialog without restriction (remote or local), widget will not be informed

Definition at line 275 of file QGo4Widget.cpp.

References fWaitsForObjectCreation, service_CreateItem, and widgetService().

Referenced by TGo4EditDynEntry::ConNewButton_clicked(), TGo4EditDynEntry::HisCreateButton_clicked(), and TGo4TreeViewer::NewHistBtn_clicked().

◆ Browser()

TGo4BrowserProxy * QGo4Widget::Browser ( )
protected

◆ BrowserItemRemote()

bool QGo4Widget::BrowserItemRemote ( const char *  itemname)
protected

◆ CallPanelFunc()

void QGo4Widget::CallPanelFunc ( int  id,
TPad *  pad = nullptr 
)
protected

◆ CallServiceFunc()

void QGo4Widget::CallServiceFunc ( int  id,
const char *  str = nullptr,
void *  par = nullptr 
)
protected

Definition at line 393 of file QGo4Widget.cpp.

References widgetService().

Referenced by ServiceCall(), and TGo4ViewPanel::ShootRepaintTimer().

◆ closeEvent()

void QGo4Widget::closeEvent ( QCloseEvent *  e)
overrideprotected

Definition at line 93 of file QGo4Widget.cpp.

References fCanDestroyWidget.

◆ CloseMDIParentSlot

void QGo4Widget::CloseMDIParentSlot ( )
slot

◆ ConnectPad()

void QGo4Widget::ConnectPad ( TPad *  pad)
protected

connect pad axis change signals to react on such signals

Definition at line 229 of file QGo4Widget.cpp.

References service_ConnectPad, and widgetService().

Referenced by TGo4ViewPanel::SetSlotPad().

◆ CreateChkAction()

QAction * QGo4Widget::CreateChkAction ( QMenu *  menu,
const QString &  text,
bool  checked,
bool  enabled = true 
)
static

◆ CreateViewPanel()

TGo4ViewPanel * QGo4Widget::CreateViewPanel ( int  ndiv = 0)
protected

◆ dragEnterEvent()

void QGo4Widget::dragEnterEvent ( QDragEnterEvent *  e)
overrideprotected

Definition at line 102 of file QGo4Widget.cpp.

References service_DragEnter, and widgetService().

◆ dragMoveEvent()

void QGo4Widget::dragMoveEvent ( QDragMoveEvent *  e)
overrideprotected

Definition at line 107 of file QGo4Widget.cpp.

References service_DragEnter, and widgetService().

◆ DrawItem()

TGo4ViewPanel * QGo4Widget::DrawItem ( const QString &  itemname,
TGo4ViewPanel panel = nullptr,
TPad *  pad = nullptr,
bool  activate = true,
int  updatelevel = -1 
)
protected

◆ dropEvent()

void QGo4Widget::dropEvent ( QDropEvent *  e)
overrideprotected

Definition at line 112 of file QGo4Widget.cpp.

References service_DropEvent, and widgetService().

◆ DropItem()

void QGo4Widget::DropItem ( const char *  itemname,
TClass *  cl,
int  kind 
)
virtual

◆ EditItem()

void QGo4Widget::EditItem ( const QString &  itemname)
protected

◆ EditObjectInSlot()

void QGo4Widget::EditObjectInSlot ( TGo4Slot slot)
protected

Definition at line 350 of file QGo4Widget.cpp.

References service_EditInSlot, and widgetService().

Referenced by TGo4ParaEdit::EditFitter().

◆ GetAnalysis()

TGo4ServerProxy * QGo4Widget::GetAnalysis ( const char *  itemname = nullptr)
protected

◆ GetLinked()

TObject * QGo4Widget::GetLinked ( const char *  linkname,
int  updatelevel = 0 
)
protected

◆ GetLinkedCast()

template<class T >
T* QGo4Widget::GetLinkedCast ( const char *  linkname,
int  updatelevel = 0 
)
inlineprotected

◆ GetLinkedName() [1/2]

const char * QGo4Widget::GetLinkedName ( const char *  linkname)
protected

◆ GetLinkedName() [2/2]

const char * QGo4Widget::GetLinkedName ( TGo4Slot slot)
protected

returns name of item, which was linked in that slot

Definition at line 162 of file QGo4Widget.cpp.

References service_GetLinkedName2, and widgetService().

◆ GetTopSlot()

TGo4Slot * QGo4Widget::GetTopSlot ( bool  force = false)
protected

return top slot of structure, corresponding to this widget

Definition at line 134 of file QGo4Widget.cpp.

References service_GetTopSlot, and widgetService().

Referenced by TGo4ViewPanel::GetPanelSlot().

◆ HelpWindow()

void QGo4Widget::HelpWindow ( const char *  filename,
const char *  msg = nullptr 
)
protected

Definition at line 328 of file QGo4Widget.cpp.

References service_HelpWindow, and widgetService().

Referenced by TGo4CommandLine::PrintHelp().

◆ InformThatObjectCreated()

void QGo4Widget::InformThatObjectCreated ( const char *  itemname,
TClass *  cl 
)
protected

Definition at line 282 of file QGo4Widget.cpp.

References service_ObjectCreated, and widgetService().

Referenced by TGo4AnalysisWindow::linkedObjectUpdated().

◆ IsAcceptDrag()

bool QGo4Widget::IsAcceptDrag ( const char *  itemname,
TClass *  cl,
int  kind 
)
virtual

◆ IsUpdateBlocked()

bool QGo4Widget::IsUpdateBlocked ( ) const
inlineprotected

Definition at line 208 of file QGo4Widget.h.

Referenced by ProcessSignal().

◆ LastActivePanel()

TGo4ViewPanel * QGo4Widget::LastActivePanel ( )
protected

◆ linkedObjectRemoved()

void QGo4Widget::linkedObjectRemoved ( const char *  linkname)
protectedvirtual

◆ linkedObjectUpdated()

void QGo4Widget::linkedObjectUpdated ( const char *  linkname,
TObject *  obj 
)
protectedvirtual

◆ linkedRemoved()

void QGo4Widget::linkedRemoved ( TGo4Slot slot,
TObject *  obj 
)
protectedvirtual

Reimplemented in TGo4ViewPanel, and TGo4FitPanel.

Definition at line 271 of file QGo4Widget.cpp.

Referenced by ProcessSignal().

◆ linkedUpdated()

void QGo4Widget::linkedUpdated ( TGo4Slot slot,
TObject *  obj 
)
protectedvirtual

Reimplemented in TGo4ViewPanel.

Definition at line 267 of file QGo4Widget.cpp.

Referenced by ProcessSignal().

◆ ObjectCreatedByWidget()

void QGo4Widget::ObjectCreatedByWidget ( const char *  itemname,
TClass *  cl 
)

Definition at line 42 of file QGo4Widget.cpp.

References fWaitsForObjectCreation, and requestedObjectCreated().

Referenced by TGo4MainWindow::editorServiceSlot().

◆ ProcessSignal()

void QGo4Widget::ProcessSignal ( const char *  linkname,
bool  assigned,
TObject *  obj,
TGo4Slot slot 
)

◆ RemoveAllLinks()

void QGo4Widget::RemoveAllLinks ( bool  blockreset = true)
protected

◆ RemoveLink()

void QGo4Widget::RemoveLink ( const char *  linkname,
bool  blockreset = true 
)
protected

◆ RemoveLinksMasked()

void QGo4Widget::RemoveLinksMasked ( const char *  startedwith = nullptr,
bool  blockreset = true 
)
protected

◆ requestedObjectCreated()

void QGo4Widget::requestedObjectCreated ( const char *  itemname,
TClass *  cl 
)
protectedvirtual

Reimplemented in TGo4EditDynEntry, and TGo4TreeViewer.

Definition at line 288 of file QGo4Widget.cpp.

Referenced by ObjectCreatedByWidget().

◆ ResetWidget()

void QGo4Widget::ResetWidget ( )
virtual

◆ SaveItemToFile()

bool QGo4Widget::SaveItemToFile ( const char *  itemname,
const char *  subfolder = nullptr 
)
protected

◆ SaveObjectInMemory()

QString QGo4Widget::SaveObjectInMemory ( const char *  foldername,
TObject *  obj 
)
protected

◆ ServiceCall()

void QGo4Widget::ServiceCall ( const char *  name,
void *  par = nullptr 
)
protected

◆ setCanDestroyWidget()

void QGo4Widget::setCanDestroyWidget ( bool  on = true)
inlineprotected

◆ SetIdAction()

QAction * QGo4Widget::SetIdAction ( QSignalMapper *  map,
int  id,
int  enabled = -1,
int  checked = -1 
)
static

◆ SetLinkedName()

void QGo4Widget::SetLinkedName ( TGo4Slot slot,
const char *  itemname 
)
protected

set name of item, which was linked by this slot

Definition at line 148 of file QGo4Widget.cpp.

References service_SetLinkedName, and widgetService().

Referenced by TGo4ViewPanel::AddDrawObject(), and TGo4MainWindow::editorServiceSlot().

◆ ShootCloseWidget()

void QGo4Widget::ShootCloseWidget ( bool  closeparent = false)
protected

◆ ShootResetWidget()

void QGo4Widget::ShootResetWidget ( )
protected

Definition at line 61 of file QGo4Widget.cpp.

References fResetWidgetShooted, and ResetWidget().

Referenced by linkedObjectRemoved().

◆ ShowItemInfo()

void QGo4Widget::ShowItemInfo ( const QString &  itemname)
protected

◆ StartHotstart()

void QGo4Widget::StartHotstart ( const char *  filename)
protected

Definition at line 333 of file QGo4Widget.cpp.

References service_HotStart, and widgetService().

Referenced by TGo4CommandLine::enterPressedSlot().

◆ StatusMessage()

void QGo4Widget::StatusMessage ( const QString &  message)
protected

◆ UndrawItem()

void QGo4Widget::UndrawItem ( const char *  itemname)
protected

Definition at line 323 of file QGo4Widget.cpp.

References service_UndrawItem, and widgetService().

Referenced by TGo4ViewPanel::AddDrawObject().

◆ UpdateItemInAnalysis()

bool QGo4Widget::UpdateItemInAnalysis ( const char *  itemname,
TObject *  obj = nullptr 
)
protected

◆ WhereItemDrawn()

TGo4ViewPanel * QGo4Widget::WhereItemDrawn ( const char *  itemname)
protected

◆ widgetService

void QGo4Widget::widgetService ( QGo4Widget editor,
int  serviceid,
const char *  str,
void *  par 
)
signal

Friends And Related Function Documentation

◆ TGo4MainWindow

friend class TGo4MainWindow
friend

Definition at line 42 of file QGo4Widget.h.

Member Data Documentation

◆ fBlockUpdate

bool QGo4Widget::fBlockUpdate {false}
private

indicates that reset widget timer is shoot

Definition at line 48 of file QGo4Widget.h.

Referenced by RemoveAllLinks(), RemoveLink(), and RemoveLinksMasked().

◆ fBrowserProxy

TGo4BrowserProxy* QGo4Widget::fBrowserProxy {nullptr}
private

set when automatic reset must be blocked

Definition at line 50 of file QGo4Widget.h.

Referenced by Browser().

◆ fCanDestroyWidget

bool QGo4Widget::fCanDestroyWidget {false}
private

Definition at line 46 of file QGo4Widget.h.

Referenced by closeEvent().

◆ fResetWidgetShooted

bool QGo4Widget::fResetWidgetShooted {false}
private

indicate that widget can be destroyed

Definition at line 47 of file QGo4Widget.h.

Referenced by ResetWidget(), ShootCloseWidget(), and ShootResetWidget().

◆ fWaitsForObjectCreation

bool QGo4Widget::fWaitsForObjectCreation {false}
private

Definition at line 45 of file QGo4Widget.h.

Referenced by AskToCreateObject(), ObjectCreatedByWidget(), and ResetWidget().


The documentation for this class was generated from the following files: