Itasca C++ Interface
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
itasca::IKernelInput Class Referenceabstract

Interface describing ALL input support the kernel needs to receive from whatever interface is driving it. More...

#include <ikernelinput.h>

Public Types

using UndoConnect = std::tuple<shared::Signal<bool> *, shared::Signal<bool, double> *>
 

Public Member Functions

virtual ITextInputgetITextInput ()=0
 Returns a pointer to ITextInput, the standard default text input.
 
virtual Qt::Key getKey ()=0
 Returns a key. This function blocks, and it may throw a 'quit' exception.
 
virtual uint prompt (const QString &message, const QString &options, const QString &keys, uint ok, uint cancel)=0
 
virtual QString getUIName () const =0
 Returns the name of the UI input device, e.g. "FLAC3D Console". This functions does not throw exceptions.
 
virtual bool autoTestMode () const =0
 Returns true if system is in test mode. This functions does not throw exceptions.
 
virtual QString getHelpFileFrontPage () const =0
 Returns the name of the front page of the help file.
 
virtual string getDocDirectory () const =0
 Returns the name of the directory of the doc files which could be code dependent.
 
virtual QString getLatestRevisionAddress () const =0
 Returns the name of the revision history page in the help file.
 
virtual void poll (bool suppressException=false, bool skipTimingTest=false)=0
 Allows GUI to interrupt if necessary. Quit exception if suppressExeption is false.
 
virtual bool hasBeenInterrupted ()=0
 
virtual bool hasBeenSafeInterrupted ()=0
 
virtual IGUIInputgetIGUIInput ()=0
 
virtual UndoConnect getUndoConnect ()=0
 
virtual QString getProjectPath () const =0
 Returns TRUE if the last string input from ITextInput::getInput() was marked as the start of an undo block.
 

Detailed Description

Interface describing ALL input support the kernel needs to receive from whatever interface is driving it.

Centralized pipe for all input the kernel needs from outside the kernel process itself. This includes input from the user interface, as well as (eventually) input from the file system, from sockets, and interprocess communication.
This class is a strict singleton - so all input from outside should (theoretically) go through here first. ingroup utility

Member Function Documentation

◆ getIGUIInput()

virtual IGUIInput * itasca::IKernelInput::getIGUIInput ( )
pure virtual

GUI Input elements Returns a pointer IGUIInput, the interface to graphics user interface input functionality. It may return null.

◆ getProjectPath()

virtual QString itasca::IKernelInput::getProjectPath ( ) const
pure virtual

Returns TRUE if the last string input from ITextInput::getInput() was marked as the start of an undo block.

Return the project directory

◆ getUndoConnect()

virtual UndoConnect itasca::IKernelInput::getUndoConnect ( )
pure virtual

Fills obj and slotsignal with the signal and slot to connect undoAvailable signals to (uses Qt:queuedConnection) - UNDO support Undo Avail signal has signature function(bool). PlaybackStartSignal has signature function(bool,double);

◆ hasBeenInterrupted()

virtual bool itasca::IKernelInput::hasBeenInterrupted ( )
pure virtual

Polls as well as checks if GUI has indicated kernel should stop immediately even if left in an invalid state. May throw quit exception, returns false (interrupt exception)

◆ hasBeenSafeInterrupted()

virtual bool itasca::IKernelInput::hasBeenSafeInterrupted ( )
pure virtual

Poll as well as checks if GUI has indicated kernel should stop at the next safe location. May throw quit exception, returns true (interrupt exception)

◆ prompt()

virtual uint itasca::IKernelInput::prompt ( const QString & message,
const QString & options,
const QString & keys,
uint ok,
uint cancel )
pure virtual

Prompt for user input. This function blocks, and it may throw a 'quit' exception.

Parameters
messagethe message that will be displayed to the user
optionslist of messages
keyslist of keys allowed to be entered by the user
okOK return code
cancelCANCEL returns code

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