Medical Imaging Interaction Toolkit
2023.12.00
Medical Imaging Interaction Toolkit
berryWorkbenchAdvisor.h
Go to the documentation of this file.
1
/*============================================================================
2
3
The Medical Imaging Interaction Toolkit (MITK)
4
5
Copyright (c) German Cancer Research Center (DKFZ)
6
All rights reserved.
7
8
Use of this source code is governed by a 3-clause BSD license that can be
9
found in the LICENSE file.
10
11
============================================================================*/
12
13
#ifndef BERRYWORKBENCHADVISOR_H_
14
#define BERRYWORKBENCHADVISOR_H_
15
16
#include <
org_blueberry_ui_qt_Export.h
>
17
18
#include "
berryIMemento.h
"
19
#include <
berryIAdaptable.h
>
20
21
#include "
berryWorkbenchWindowAdvisor.h
"
22
#include "
berryIWorkbenchConfigurer.h
"
23
24
namespace
berry
{
25
92
class
BERRY_UI_QT
WorkbenchAdvisor
{
93
97
private
:
IWorkbenchConfigurer::Pointer
workbenchConfigurer;
98
99
/*
100
* The workbench error handler.
101
*/
102
//private: AbstractStatusHandler workbenchErrorHandler;
103
104
//private: bool introOpened;
105
109
protected
:
WorkbenchAdvisor
();
110
virtual
~
WorkbenchAdvisor
();
111
121
public
:
void
InternalBasicInitialize(
IWorkbenchConfigurer::Pointer
configurer);
122
137
public
:
virtual
void
Initialize(
IWorkbenchConfigurer::Pointer
configurer);
138
146
protected
:
IWorkbenchConfigurer::Pointer
GetWorkbenchConfigurer();
147
148
/*
149
* Returns the workbench error handler for the advisor.
150
*
151
* @return the workbench error handler
152
* @since 3.3
153
*/
154
// public: AbstractStatusHandler getWorkbenchErrorHandler() {
155
// if (workbenchErrorHandler == null) {
156
// workbenchErrorHandler = new WorkbenchErrorHandler();
157
// }
158
// return workbenchErrorHandler;
159
// }
160
171
public
:
virtual
void
PreStartup();
172
183
public
:
virtual
void
PostStartup();
184
203
public
:
virtual
bool
PreShutdown();
204
214
public
:
virtual
void
PostShutdown();
215
216
/*
217
* Performs arbitrary actions when the event loop crashes (the code that
218
* handles a UI event throws an exception that is not caught).
219
* <p>
220
* This method is called when the code handling a UI event throws an
221
* exception. In a perfectly functioning application, this method would
222
* never be called. In practice, it comes into play when there are bugs in
223
* the code that trigger unchecked runtime exceptions. It is also activated
224
* when the system runs short of memory, etc. Fatal errors (ThreadDeath) are
225
* not passed on to this method, as there is nothing that could be done.
226
* </p>
227
* <p>
228
* Clients must not call this method directly (although super calls are
229
* okay). The default implementation logs the problem so that it does not go
230
* unnoticed. Subclasses may override or extend this method. It is generally
231
* a bad idea to override with an empty method, and you should be especially
232
* careful when handling Errors.
233
* </p>
234
*
235
* @param exception
236
* the uncaught exception that was thrown inside the UI event
237
* loop
238
*/
239
// public: void eventLoopException(Throwable exception) {
240
// // Protection from client doing super(null) call
241
// if (exception == null) {
242
// return;
243
// }
244
//
245
// try {
246
// StatusManager.getManager().handle(
247
// new Status(IStatus.ERR, WorkbenchPlugin.PI_WORKBENCH,
248
// "Unhandled event loop exception", exception)); //$NON-NLS-1$
249
//
250
// if (WorkbenchPlugin.DEBUG) {
251
// exception.printStackTrace();
252
// }
253
// } catch (Throwable e) {
254
// // One of the log listeners probably failed. Core should have logged
255
// // the
256
// // exception since its the first listener.
257
// System.err.println("Error while logging event loop exception:"); //$NON-NLS-1$
258
// exception.printStackTrace();
259
// System.err.println("Logging exception:"); //$NON-NLS-1$
260
// e.printStackTrace();
261
// }
262
// }
263
264
/*
265
* Performs arbitrary work or yields when there are no events to be
266
* processed.
267
* <p>
268
* This method is called when there are currently no more events on the
269
* queue to be processed at the moment.
270
* </p>
271
* <p>
272
* Clients must not call this method directly (although super calls are
273
* okay). The default implementation yields until new events enter the
274
* queue. Subclasses may override or extend this method. It is generally a
275
* bad idea to override with an empty method. It is okay to call
276
* <code>IWorkbench.close()</code> from this method.
277
* </p>
278
*
279
* @param display
280
* the main display of the workbench UI
281
*/
282
// public: void eventLoopIdle(Display display) {
283
// // default: yield cpu until new events enter the queue
284
// display.sleep();
285
// }
286
296
public
:
virtual
WorkbenchWindowAdvisor
* CreateWorkbenchWindowAdvisor(
297
IWorkbenchWindowConfigurer::Pointer
configurer) = 0;
298
299
313
public
:
virtual
IAdaptable
* GetDefaultPageInput();
314
331
public
:
virtual
QString GetInitialWindowPerspectiveId() = 0;
332
343
public
:
virtual
QString GetMainPreferencePageId();
344
356
public
:
virtual
bool
OpenWindows();
357
370
public
:
virtual
bool
SaveState(
IMemento::Pointer
memento);
371
384
public
:
virtual
bool
RestoreState(
IMemento::Pointer
memento);
385
386
/*
387
* Return the contribution comparator for the particular type of
388
* contribution. The default implementation of this class returns a
389
* comparator that sorts the items by label.
390
*
391
* The contributionType may be one of the constants in
392
* {@link IContributionService} or it can be a value defined by the user.
393
*
394
* @param contributionType
395
* the contribution type
396
* @return the comparator, must not return <code>null</code>
397
* @see IContributionService#GetComparatorFor(const QString&)
398
*/
399
// public: ContributionComparator getComparatorFor(String contributionType) {
400
// return new ContributionComparator();
401
// }
402
};
403
404
}
405
406
#endif
/*BERRYWORKBENCHADVISOR_H_*/
org_blueberry_ui_qt_Export.h
berryWorkbenchWindowAdvisor.h
berryIMemento.h
berry::SmartPointer< Self >
berry::WorkbenchWindowAdvisor
Definition:
berryWorkbenchWindowAdvisor.h:65
berry::WorkbenchAdvisor
Definition:
berryWorkbenchAdvisor.h:92
BERRY_UI_QT
#define BERRY_UI_QT
Definition:
org_blueberry_ui_qt_Export.h:26
berry::IAdaptable
Definition:
berryIAdaptable.h:50
berry::Object::Pointer
berry::SmartPointer< Self > Pointer
Definition:
berryObject.h:82
berryIAdaptable.h
berry
Definition:
QmitkPropertyItemModel.h:24
berryIWorkbenchConfigurer.h
src
MITK
Plugins
org.blueberry.ui.qt
src
application
berryWorkbenchAdvisor.h
Generated on Thu Nov 30 2023 15:58:48 for Medical Imaging Interaction Toolkit by
1.8.17