class Client

Class that runs the User Interface. More...

Contains pure virtuals
Full nameTelEngine::Client
Definition#include <yatecbase.h>
InheritsTelEngine::MessageReceiver [public ]
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Types

Public Methods

Public Static Methods

Public Members

Protected Methods

Protected Static Methods

Protected Members


Detailed Description

Singleton class that holds the User Interface's main methods

enum MsgID { CallCdr = 0, UiAction, UserLogin, UserNotify, ResourceNotify, ResourceSubscribe, ClientChanUpdate, UserRoster, ContactInfo, ChanNotify, MucRoom, MsgExecute, EngineStart, TransferNotify, UserData, MsgIdCount }

MsgID

Message relays installed by this receiver.

enum ClientToggle { OptMultiLines = 0, OptAutoAnswer, OptRingIn, OptRingOut, OptActivateLastOutCall, OptActivateLastInCall, OptActivateCallOnSelect, OptKeypadVisible, OptOpenIncomingUrl, OptAddAccountOnStartup, OptDockedChat, OptDestroyChat, OptNotifyChatState, OptShowEmptyChat, OptSendEmptyChat, OptCount }

ClientToggle

Client boolean options mapped to UI toggles

enum TrayIconType { TrayIconMain = 0, TrayIconInfo = 1000, TrayIconIncomingChat = 3000, TrayIconNotification = 5000, TrayIconIncomingCall = 10000, }

TrayIconType

Tray icon valuers used in stack

explicit  Client (const char *name = 0)

Client

Constructor

Parameters:
nameThe client's name

 ~Client ()

~Client

[virtual]

Destructor

bool  startup ()

startup

[virtual]

Start up the client thread

Returns: True if the client thread is started, false otherwise

void  run ()

run

[virtual]

Run the client's main loop

void  cleanup ()

cleanup

[virtual]

Cleanup when thread terminates

void  main ()

main

[pure virtual]

Execute the client

void  lock ()

lock

[pure virtual]

Lock the client

void  unlock ()

unlock

[pure virtual]

Unlock the client

inline void  lockOther ()

lockOther

Lock the client only if we are using more then 1 thread

inline void  unlockOther ()

unlockOther

Unlock the client only if we are using more then 1 thread

inline void  setThread (Thread* th)

setThread

Set the client's thread

Parameters:
thThe thread on which the client will run on

void  allHidden ()

allHidden

[pure virtual]

Handle all windows closed event from UI

void  loadUI (const char* file = 0, bool init = true)

loadUI

Load windows and optionally (re)initialize the client's options.

Parameters:
fileThe resource file describing the windows. Set to 0 to use the default one
initTrue to (re)initialize the client

void  quit ()

quit

[pure virtual]

Terminate application

bool  openUrlSafe (const String& url)

openUrlSafe

Open an URL (link) in the client's thread

Parameters:
urlThe URL to open

Returns: True on success

bool  openUrl (const String& url)

openUrl

[pure virtual]

Open an URL (link)

Parameters:
urlThe URL to open

Returns: True on success

bool  received (Message& msg, int id)

received

[virtual]

Process a received message. Check for a logic to process it

Parameters:
msgReceived message
idMessage id

Returns: True if a logic processed the message (stop dispatching it)

Reimplemented from MessageReceiver.

bool  createWindowSafe (const String& name, const String& alias = String::empty())

createWindowSafe

[virtual]

Create a window with a given name

Parameters:
nameThe window's name
aliasWindow name alias after succesfully loaded. Set to empty string to use the given name

Returns: True on success

bool  createDialog (const String& name, Window* parent, const String& title, const String& alias = String::empty(), const NamedList* params = 0)

createDialog

[virtual]

Create a modal dialog owned by a given window

Parameters:
nameDialog name (resource config section)
parentParent window
titleDialog title
aliasOptional dialog alias (used as dialog object name)
paramsOptional dialog parameters

Returns: True on success

bool  createObject (void** dest, const String& type, const char* name, NamedList* params = 0)

createObject

[virtual]

Ask to an UI factory to create an object in the UI's thread

Parameters:
destDestination to be filled with the newly create object's address
typeObject's type
nameObject's name
paramsOptional object parameters

Returns: True on success

bool  closeWindow (const String& name, bool hide = true)

closeWindow

[virtual]

Hide/destroy a window with a given name

Parameters:
nameThe window's name
hideTrue to hide, false to close

Returns: True on success

bool  closeDialog (const String& name, Window* wnd, Window* skip = 0)

closeDialog

[virtual]

Destroy a modal dialog

Parameters:
nameDialog name
wndWindow owning the dialog
skipOptional window to skip if wnd is null

Returns: True on success

bool  debugHook (bool active)

debugHook

[virtual]

Install/uninstall a debugger output hook

Parameters:
activeTrue to install, false to uninstall the hook

Returns: True on success

bool  addToLog (const String& text)

addToLog

[virtual]

Add a log line

Parameters:
textText to add

Returns: True on success

bool  setStatus (const String& text, Window* wnd = 0)

setStatus

[virtual]

Set the status text

Parameters:
textStatus text
wndOptional window owning the status control

Returns: True on success

bool  setStatusLocked (const String& text, Window* wnd = 0)

setStatusLocked

Set the status text safely

Parameters:
textStatus text
wndOptional window owning the status control

Returns: True on success

bool  setParams (const NamedList* params, Window* wnd = 0, Window* skip = 0)

setParams

Set multiple window parameters

Parameters:
paramsThe parameter list
wndOptional window whose params are to be set
skipOptional window to skip if wnd is 0

Returns: True on success

bool  action (Window* wnd, const String& name, NamedList* params = 0)

action

[virtual]

Handle actions from user interface. Enqueue an ui.event message if the action is not handled by a client logic

Parameters:
wndThe window in which the user did something
nameThe action's name
paramsOptional action parameters

Returns: True if the action was handled by a client logic

bool  toggle (Window* wnd, const String& name, bool active)

toggle

[virtual]

Handle actions from checkable widgets. Enqueue an ui.event message if the action is not handled by a client logic

Parameters:
wndThe window in which the user did something
nameThe object's name
activeObject's state

Returns: True if the action was handled by a client logic

bool  select (Window* wnd, const String& name, const String& item, const String& text = String::empty())

select

[virtual]

Handle 'select' actions from user interface. Enqueue an ui.event message if the action is not handled by a client logic

Parameters:
wndThe window in which the user selected the object
nameThe action's name
itemItem identifying the selection
textSelection's text

Returns: True if the action was handled by a client logic

inline bool  oneThread ()

oneThread

[const]

Check if the client is using more then 1 thread

Returns: True if the client is using more then 1 thread

inline int  line ()

line

[const]

Get the currently selected line

Returns: The selected line

void  line (int newLine)

line

Set the selected line

Parameters:
newLineThe selected line

bool  hasElement (const String& name, Window* wnd = 0, Window* skip = 0)

hasElement

bool  setActive (const String& name, bool active, Window* wnd = 0, Window* skip = 0)

setActive

bool  setFocus (const String& name, bool select = false, Window* wnd = 0, Window* skip = 0)

setFocus

bool  setShow (const String& name, bool visible, Window* wnd = 0, Window* skip = 0)

setShow

bool  setText (const String& name, const String& text, bool richText = false, Window* wnd = 0, Window* skip = 0)

setText

bool  setCheck (const String& name, bool checked, Window* wnd = 0, Window* skip = 0)

setCheck

bool  setSelect (const String& name, const String& item, Window* wnd = 0, Window* skip = 0)

setSelect

bool  setUrgent (const String& name, bool urgent, Window* wnd = 0, Window* skip = 0)

setUrgent

bool  hasOption (const String& name, const String& item, Window* wnd = 0, Window* skip = 0)

hasOption

bool  getOptions (const String& name, NamedList* items, Window* wnd = 0, Window* skip = 0)

getOptions

[virtual]

Get an element's items

Parameters:
nameName of the element to search for
itemsList to fill with element's items
wndOptional window owning the element
skipOptional window to skip when searching for the element

Returns: True if the element exists

bool  addOption (const String& name, const String& item, bool atStart, const String& text = String::empty(), Window* wnd = 0, Window* skip = 0)

addOption

bool  delOption (const String& name, const String& item, Window* wnd = 0, Window* skip = 0)

delOption

bool  addLines (const String& name, const NamedList* lines, unsigned int max, bool atStart = false, Window* wnd = 0, Window* skip = 0)

addLines

Append or insert text lines to a widget

Parameters:
nameThe name of the widget
linesList containing the lines
maxThe maximum number of lines allowed to be displayed. Set to 0 to ignore
atStartTrue to insert, false to append
wndOptional window owning the widget
skipOptional window to skip if wnd is 0

Returns: True on success

bool  addTableRow (const String& name, const String& item, const NamedList* data = 0, bool atStart = false, Window* wnd = 0, Window* skip = 0)

addTableRow

bool  setMultipleRows (const String& name, const NamedList& data, const String& prefix = String::empty(), Window* wnd = 0, Window* skip = 0)

setMultipleRows

Append or update several table rows at once

Parameters:
nameName of the element
dataParameters to initialize the rows with
prefixPrefix to match (and remove) in parameter names
wndOptional window owning the element
skipOptional window to skip if wnd is 0

Returns: True if all the operations were successfull

bool  insertTableRow (const String& name, const String& item, const String& before, const NamedList* data = 0, Window* wnd = 0, Window* skip = 0)

insertTableRow

Insert a row into a table owned by this window

Parameters:
nameName of the element
itemName of the item to insert
beforeName of the item to insert before
dataTable's columns to set
wndOptional window owning the element
skipOptional window to skip if wnd is 0

Returns: True if the operation was successfull

bool  delTableRow (const String& name, const String& item, Window* wnd = 0, Window* skip = 0)

delTableRow

bool  setTableRow (const String& name, const String& item, const NamedList* data, Window* wnd = 0, Window* skip = 0)

setTableRow

bool  getTableRow (const String& name, const String& item, NamedList* data = 0, Window* wnd = 0, Window* skip = 0)

getTableRow

bool  clearTable (const String& name, Window* wnd = 0, Window* skip = 0)

clearTable

bool  updateTableRow (const String& name, const String& item, const NamedList* data = 0, bool atStart = false, Window* wnd = 0, Window* skip = 0)

updateTableRow

Set a table row or add a new one if not found

Parameters:
nameName of the element
itemTable item to set/add
dataOptional list of parameters used to set row data
atStartTrue to add item at start, false to add them to the end
wndOptional window owning the element
skipOptional window to skip if wnd is 0

Returns: True if the operation was successfull

bool  updateTableRows (const String& name, const NamedList* data, bool atStart = false, Window* wnd = 0, Window* skip = 0)

updateTableRows

Add or set one or more table row(s). Screen update is locked while changing the table. Each data list element is a NamedPointer carrying a NamedList with item parameters. The name of an element is the item to update. Set element's value to boolean value 'true' to add a new item if not found or 'false' to set an existing one. Set it to empty string to delete the item

Parameters:
nameName of the table
dataThe list of items to add/set/delete
atStartTrue to add new items at start, false to add them to the end
wndOptional window owning the element
skipOptional window to skip if wnd is 0

Returns: True if the operation was successfull

bool  getText (const String& name, String& text, bool richText = false, Window* wnd = 0, Window* skip = 0)

getText

Get an element's text

Parameters:
nameName of the element
textThe destination string
richTextTrue to get the element's roch text if supported.
wndOptional window owning the element
skipOptional window to skip if wnd is 0

Returns: True if the operation was successfull

bool  getCheck (const String& name, bool& checked, Window* wnd = 0, Window* skip = 0)

getCheck

bool  getSelect (const String& name, String& item, Window* wnd = 0, Window* skip = 0)

getSelect

bool  buildMenu (const NamedList& params, Window* wnd = 0, Window* skip = 0)

buildMenu

Build a menu from a list of parameters and add it to a target.

Parameters:
paramsMenu build parameters (list name is the menu name). Each menu item is indicated by a parameter item:[item_name]=[display_text]. A separator will be added if 'item_name' is empty. A new item will be created if 'display_text' is not empty. Set 'display_text' to empty string to use an existing item. Item image can be set by an 'image:item_name' parameter. If the item parameter is a NamedPointer carrying a NamedList a submenu will be created. Menu item properties can be set from parameters with format property:item_name:property_name=value. The following parameters can be set: - title: menu display text (defaults to menu name) - owner: optional menu owner (the window building the menu is assumed to be the owner if this parameter is empty) - target: optional menu target (defaults to owner) - before: optional item to insert before if the target is a menu container (another menu or a menu bar) - before_separator: check if a separator already exists before the item 'before' and insert the menu before the separator
wndOptional target window
skipOptional window to skip if wnd is 0

Returns: True on success

bool  removeMenu (const NamedList& params, Window* wnd = 0, Window* skip = 0)

removeMenu

Remove a menu (from UI and memory)

Parameters:
paramsMenu remove parameters. The following parameters can be set: - owner: optional menu owner (the window building the menu is assumed to be the owner if this parameter is empty)
wndOptional target window
skipOptional window to skip if wnd is 0

Returns: True on success

bool  setImage (const String& name, const String& image, Window* wnd = 0, Window* skip = 0)

setImage

[virtual]

Set an element's image

Parameters:
nameName of the element
imageImage to set
wndOptional target window
skipOptional window to skip if wnd is 0

Returns: True on success

bool  setImageFit (const String& name, const String& image, Window* wnd = 0, Window* skip = 0)

setImageFit

[virtual]

Set an element's image. Request to fit the image in element

Parameters:
nameName of the element
imageImage to set
wndOptional target window
skipOptional window to skip if wnd is 0

Returns: True on success

bool  setProperty (const String& name, const String& item, const String& value, Window* wnd = 0, Window* skip = 0)

setProperty

[virtual]

Set a property

Parameters:
nameName of the element
itemProperty's name
valueProperty's value
wndOptional target window
skipOptional window to skip if wnd is 0

Returns: True on success

bool  getProperty (const String& name, const String& item, String& value, Window* wnd = 0, Window* skip = 0)

getProperty

[virtual]

Get a property

Parameters:
nameName of the element
itemProperty's name
valueProperty's value
wndOptional target window
skipOptional window to skip if wnd is 0

Returns: True on success

void  moveRelated (const Window* wnd, int dx, int dy)

moveRelated

inline bool  initialized ()

initialized

[const]

inline Client*  self ()

self

[static]

inline void  setSelf (Client* client)

setSelf

[static]

inline bool  valid ()

valid

[static]

Check if the client object still exists and the client or engine is not exiting

Returns: True if the client is valid (running) or the method is called from client's thread

bool  isClientMsg (Message& msg)

isClientMsg

[static]

Check if a message is sent by the client

Parameters:
msgThe message to check

Returns: True if the message has a 'module' parameter with the client driver's name

inline bool  changing ()

changing

[static]

Window*  getWindow (const String& name)

getWindow

[static]

bool  setVisible (const String& name, bool show = true, bool activate = false)

setVisible

[static]

bool  getVisible (const String& name)

getVisible

[static]

bool  openPopup (const String& name, const NamedList* params = 0, const Window* parent = 0)

openPopup

[static]

bool  openMessage (const char* text, const Window* parent = 0, const char* context = 0)

openMessage

[static]

bool  openConfirm (const char* text, const Window* parent = 0, const char* context = 0)

openConfirm

[static]

ObjList*  listWindows ()

listWindows

[static]

void  idleActions ()

idleActions

bool  postpone (const Message& msg, int id, bool copyUserData = false)

postpone

Postpone a copy of a message to be dispatched from the UI thread

Parameters:
msgMessage to be postponed
idIdentifier of the message to be used on dispatch
copyUserDataCopy source user data in postponed message

Returns: True if the UI thread was not current so the message was postponed

bool  chooseFile (Window* parent, NamedList& params)

chooseFile

[virtual]

Show a file open/save dialog window This method isn't using the proxy thread since it's usually called on UI action

Parameters:
parentDialog window's parent
paramsDialog window's params. Parameters that can be specified include 'caption', 'dir', 'filters', 'selectedfilter', 'confirmoverwrite', 'choosedir'.

Returns: True on success

bool  setClientParam (const String& param, const String& value, bool save, bool update)

setClientParam

[virtual]

Request to a logic to set a client's parameter. Save the settings file and/or update interface

Parameters:
paramParameter's name
valueThe value of the parameter
saveTrue to save the configuration file
updateTrue to update the interface

Returns: True on success, false if the parameter doesn't exist, the value is incorrect or failed to save the file

bool  backspace (const String& name, Window* wnd = 0)

backspace

[virtual]

Remove the last character of the given widget

Parameters:
nameThe widget (it might be the window itself)
wndOptional window containing the widget that triggered the action

Returns: True on success

void  installRelay (const char* name, int id, int prio)

installRelay

Create and install a message relay owned by this client. The new relay will be unistalled when the client is terminated

Parameters:
nameMessage name
idRelay id
prioMessage priority

bool  callRouting (Message& msg)

callRouting

[virtual]

Call routing handler called by the driver

Parameters:
msgThe call.route message

bool  imRouting (Message& msg)

imRouting

[virtual]

IM message routing handler called by the driver

Parameters:
msgThe im.route message

bool  imExecute (Message& msg)

imExecute

[virtual]

Process an IM message

Parameters:
msgThe im.execute of chan.text message

bool  buildIncomingChannel (Message& msg, const String& dest)

buildIncomingChannel

[virtual]

Build an incoming channel. Answer it if succesfully connected and auto answer is set. Reject it if multiline is false and the driver is busy. Set the active one if requested by config and there is no active channel. Start the ringer if there is no active channel

Parameters:
msgThe call.execute message
destThe destination (target)

Returns: True if a channel was created and connected

bool  buildOutgoingChannel (NamedList& params)

buildOutgoingChannel

[virtual]

Build an outgoing channel

Parameters:
paramsCall parameters

Returns: True if a channel was created its router started

bool  callIncoming (Message& msg, const String& dest)

callIncoming

Call execute handler called by the driver. Ask the logics to create the channel

Parameters:
msgThe call.execute message
destThe destination (target)

Returns: True if a channel was created and connected

void  callAnswer (const String& id, bool setActive = true)

callAnswer

Answer an incoming call

Parameters:
idThe accepted channel's id
setActiveTrue to activate the answered channel

Returns: True on success

void  callTerminate (const String& id, const char* reason = 0, const char* error = 0)

callTerminate

Terminate a call

Parameters:
idThe channel's id
reasonOptional termination reason
errorOptional termination error

Returns: True on success

ClientChannel*  getActiveChannel ()

getActiveChannel

Get the active channel if any

Returns: Referenced pointer to the active channel or 0

bool  ringer (bool in, bool on)

ringer

[virtual]

Start/stop ringer. The ringer is started only if not disabled

Parameters:
inTrue if the request is for the incoming call alert, false if it is for the outgoing call ringing alert
onTrue to start, false to stop the sound

Returns: True on success

bool  createSound (const char* name, const char* file, const char* device = 0)

createSound

[virtual]

Create a sound object. Append it to the global list

Parameters:
nameThe name of sound object
fileThe file to play (should contain the whole path and the file name)
deviceOptional device used to play the file. Set to 0 to use the default one

Returns: True on success, false if a sound with the given name already exists

bool  emitDigits (const char* digits, const String& id = String::empty())

emitDigits

Send digits on selected channel

Parameters:
digitsThe digits to send
idThe channel id. Use the active one if empty

Returns: True on success

inline bool  emitDigit (char digit, const String& id = String::empty())

emitDigit

Send a digit on selected channel

Parameters:
digitThe digit to send
idThe channel id. Use the active one if empty

Returns: True on success

inline bool  getBoolOpt (ClientToggle toggle)

getBoolOpt

Get a boolean option of this client

Parameters:
toggleOptions's id to retrieve

Returns: True on success

bool  setBoolOpt (ClientToggle toggle, bool value, bool updateUi = false)

setBoolOpt

Set a boolean option of this client

Parameters:
toggleOptions's id to set
valueValue to set
updateUiTrue to update UI

Returns: True if the option's value changed

bool  formatDateTime (String& dest, unsigned int secs, const char* format, bool utc = false)

formatDateTime

[virtual]

Build a date/time string from UTC time

Parameters:
destDestination string
secsSeconds since EPOCH
formatFormat string used to build the destination
utcTrue to build UTC time instead of local time

Returns: True on success

inline bool  exiting ()

exiting

[static]

Check if the client is exiting

Returns: True if the client therad is exiting

bool  getActive (const String& name)

getActive

[static]

Retrieve the active state of a window

Parameters:
nameWindow name

Returns: True if the window is found and it's active

Message*  buildMessage (const char* msg, const String& account, const char* oper = 0)

buildMessage

[static]

Build a message to be sent by the client. Add module, line and operation parameters

Parameters:
msgMessage name
accountThe account sending the message
operOptional operation parameter

Returns: Message pointer

Message*  buildNotify (bool online, const String& account, const ClientResource* from = 0)

buildNotify

[static]

Build a resource.notify message

Parameters:
onlineTrue to build an 'online' message, false to build an 'offline' one
accountThe account sending the message
fromOptional resource to add to message

Returns: Message pointer

Message*  buildSubscribe (bool request, bool ok, const String& account, const String& contact, const char* proto = 0)

buildSubscribe

[static]

Build a resource.subscribe or resource.notify message to request a subscription or respond to a request

Parameters:
requestTrue to build a request, false to build a response
okTrue to build a subscribe(d) message, false to build an unsubscribe(d) message
accountThe account to use for the message
contactThe destination contact
protoOptional protocol

Returns: Valid Message pointer

Message*  buildUserRoster (bool update, const String& account, const String& contact, const char* proto = 0)

buildUserRoster

[static]

Build an user.roster message

Parameters:
updateTrue to build an update, false to build a delete request
accountThe account to use for the message
contactThe contact to update or delete
protoOptional protocol

Returns: Valid Message pointer

bool  addLogic (ClientLogic* logic)

addLogic

[static]

Add a logic to the list. The added object is not owned by the client

Parameters:
logicPointer to the logic to add

Returns: True on success. False if the pointer is 0 or already added

void  removeLogic (ClientLogic* logic)

removeLogic

[static]

Remove a logic from the list without destroying it

Parameters:
logicPointer to the logic to remove

ClientLogic*  findLogic (const String& name)

findLogic

[static]

Convenience method to retrieve a logic

Parameters:
nameThe logic's name

Returns: ClientLogic pointer or 0

Message*  eventMessage (const String& event, Window* wnd = 0, const char* name = 0, NamedList* params = 0)

eventMessage

[static]

Build an 'ui.event' message

Parameters:
eventEvent's name
wndOptional window to add to message
nameOptional 'name' parameter value
paramsOther optional parameters to be added to the message

Returns: Valid Message pointer

bool  save (Configuration& cfg, Window* parent = 0, bool showErr = true)

save

[static]

Save a configuration file. Call openMessage() on failure

Parameters:
cfgThe configuration file to save
parentThe parent of the error window if needded
showErrTrue to open a message popup on failure

Returns: True on success

ClientToggle  getBoolOpt (const String& name)

getBoolOpt

[static]

Check if a string names a client's boolean option

Parameters:
nameString to check

Returns: Valid client option index or OptCount if not found

inline void  setLogicsTick ()

setLogicsTick

[static]

Set the flag indicating that the client should tick the logics

void  appendEscape (String& buf, ObjList& list, char sep = ',', bool force = false)

appendEscape

[static]

Append URI escaped String items to a String buffer

Parameters:
bufDestination string
listSource list
sepDestination list separator. It will be escaped in each added string
forceTrue to allow appending empty strings

ObjList*  splitUnescape (const String& buf, char sep = ',', bool emptyOk = false)

splitUnescape

[static]

Splits a string at a delimiter character. URI unescape each string in result

Parameters:
bufSource string
sepCharacter where to split the string. It will be unescaped in each string
emptyOkTrue if empty strings should be inserted in list

Returns: A newly allocated list of strings, must be deleted after use

void  removeChars (String& buf, const char* chars)

removeChars

[static]

Remove characters from a given string

Parameters:
bufSource string
charsCharacters to remove from input string

void  fixPhoneNumber (String& number, const char* chars = 0)

fixPhoneNumber

[static]

Fix a phone number. Remove extra '+' from begining. Remove requested characters. Adding '+' to characters to remove won't remove the plus sign from the begining. Clear the number if a non digit char is found

Parameters:
numberPhone number to fix
charsOptional characters to remove from number

bool  addTrayIcon (const String& wndName, int prio, NamedList* params)

addTrayIcon

[static]

Add a tray icon to a window's stack. Update it if already there. Show it if it's the first one and the client is started. This method must be called from client's thread

Parameters:
wndNameThe window owning the icon
prioTray icon priority. The list is kept in ascending order
paramsTray icon parameters. It will be consumed

Returns: True on success

bool  removeTrayIcon (const String& wndName, const String& name)

removeTrayIcon

[static]

Remove a tray icon from a window's stack. Show the next one if it's the first This method must be called from client's thread

Parameters:
wndNameThe window owning the icon
nameTray icon name

Returns: True on success

bool  updateTrayIcon (const String& wndName)

updateTrayIcon

[static]

Update the first tray icon in a window's stack. Remove any existing icon the the stack is empty This method must be called from client's thread

Parameters:
wndNameThe window owning the icon

Returns: True on success

void  generateGuid (String& buf, const String& extra = String::empty())

generateGuid

[static]

Generate a GUID string in the format 8*HEX-4*HEX-4*HEX-4*HEX-12*HEX

Parameters:
bufDestination string
extraOptional string whose hash will be inserted in the GUID

void  plain2html (String& buf, bool spaceEol = false)

plain2html

[static]

Replace plain text chars with HTML escape or markup

Parameters:
bufDestination string
spaceEolTrue to replace end of line with space instead of html markup

static Configuration s_settings

s_settings

static Configuration s_actions

s_actions

static Configuration s_accounts

s_accounts

static Configuration s_contacts

s_contacts

static Configuration s_providers

s_providers

static Configuration s_history

s_history

static Configuration s_calltoHistory

s_calltoHistory

static Regexp s_notSelected

s_notSelected

static Regexp s_guidRegexp

s_guidRegexp

static String s_skinPath

s_skinPath

static String s_soundPath

s_soundPath

static String s_ringInName

s_ringInName

static String s_ringOutName

s_ringOutName

static String s_statusWidget

s_statusWidget

static String s_debugWidget

s_debugWidget

static String s_toggles[OptCount]

s_toggles[OptCount]

static int s_maxConfPeers

s_maxConfPeers

static bool s_engineStarted

s_engineStarted

ClientLogic*  createDefaultLogic ()

createDefaultLogic

[protected virtual]

Create the default logic The default implementation creates a DefaultLogic object

Returns: ClientLogic pointer or 0

bool  createWindow (const String& name, const String& alias = String::empty())

createWindow

[protected pure virtual]

void  loadWindows (const char* file = 0)

loadWindows

[protected pure virtual]

void  initWindows ()

initWindows

[protected virtual]

void  initClient ()

initClient

[protected virtual]

void  exitClient ()

exitClient

[protected virtual]

bool  isUIThread ()

isUIThread

[protected virtual]

inline bool  needProxy ()

needProxy

[protected const]

bool  driverLockLoop ()

driverLockLoop

[protected]

bool  driverLock (long maxwait = 0)

driverLock

[protected static]

void  driverUnlock ()

driverUnlock

[protected static]

static bool s_exiting

s_exiting

[protected]

ObjList m_windows

m_windows

[protected]

bool m_initialized

m_initialized

[protected]

int m_line

m_line

[protected]

bool m_oneThread

m_oneThread

[protected]

bool m_toggles[OptCount]

m_toggles[OptCount]

[protected]

ObjList m_relays

m_relays

[protected]

ClientLogic* m_defaultLogic

m_defaultLogic

[protected]

static Client* s_client

s_client

[protected]

static int s_changing

s_changing

[protected]

static ObjList s_logics

s_logics

[protected]

static bool s_idleLogicsTick

s_idleLogicsTick

[protected]

Thread* m_clientThread

m_clientThread

[protected]


Generated by: paulc on bussard on Fri Dec 21 16:28:34 2012, using kdoc 2.0a54.