LLWebBrowserCtrl Class Reference

#include <llwebbrowserctrl.h>

Inheritance diagram for LLWebBrowserCtrl:

Inheritance graph
[legend]
Collaboration diagram for LLWebBrowserCtrl:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 LLWebBrowserCtrl (const std::string &name, const LLRect &rect)
virtual ~LLWebBrowserCtrl ()
void setBorderVisible (BOOL border_visible)
void setTakeFocusOnClick (bool take_focus)
virtual BOOL handleHover (S32 x, S32 y, MASK mask)
virtual BOOL handleMouseUp (S32 x, S32 y, MASK mask)
virtual BOOL handleMouseDown (S32 x, S32 y, MASK mask)
virtual BOOL handleDoubleClick (S32 x, S32 y, MASK mask)
virtual BOOL handleScrollWheel (S32 x, S32 y, S32 clicks)
void navigateTo (std::string urlIn)
void navigateBack ()
void navigateHome ()
void navigateForward ()
void navigateToLocalPage (const std::string &subdir, const std::string &filename_in)
bool canNavigateBack ()
bool canNavigateForward ()
void setOpenInExternalBrowser (bool valIn)
void setOpenInInternalBrowser (bool valIn)
void setOpenAppSLURLs (bool valIn)
void setHomePageUrl (const std::string urlIn)
std::string getHomePageUrl ()
bool set404RedirectUrl (std::string redirect_url)
bool clr404RedirectUrl ()
bool getFrequentUpdates ()
void setFrequentUpdates (bool frequentUpdatesIn)
void setIgnoreUIScale (bool ignore)
bool getIgnoreUIScale ()
void setAlwaysRefresh (bool refresh)
bool getAlwaysRefresh ()
void setForceUpdate (bool force_update)
bool getForceUpdate ()
bool setCaretColor (unsigned int red, unsigned int green, unsigned int blue)
virtual BOOL handleKeyHere (KEY key, MASK mask)
virtual BOOL handleUnicodeCharHere (llwchar uni_char)
virtual void reshape (S32 width, S32 height, BOOL called_from_parent=TRUE)
virtual void draw ()
virtual void onVisibilityChange (BOOL curVisibilityIn)
void onFocusLost ()
void onFocusReceived ()
bool addObserver (LLWebBrowserCtrlObserver *subjectIn)
bool remObserver (LLWebBrowserCtrlObserver *subjectIn)
virtual void onNavigateBegin (const EventType &eventIn)
virtual void onNavigateComplete (const EventType &eventIn)
virtual void onUpdateProgress (const EventType &eventIn)
virtual void onStatusTextChange (const EventType &eventIn)
virtual void onLocationChange (const EventType &eventIn)
virtual void onClickLinkHref (const EventType &eventIn)
virtual void onClickLinkNoFollow (const EventType &eventIn)
virtual void onMediaContentsChange (const EventType &event_in)

Static Public Member Functions

static LLViewfromXML (LLXMLNodePtr node, LLView *parent, LLUICtrlFactory *factory)

Protected Member Functions

void convertInputCoords (S32 &x, S32 &y)

Static Private Member Functions

static void onClickLinkExternalTarget (S32 option, void *userdata)

Private Attributes

LLWebBrowserCtrlEventEmitter
< LLWebBrowserCtrlObserver
mEventEmitter
const S32 mTextureDepthBytes
int mEmbeddedBrowserWindowId
LLWebBrowserTexturemWebBrowserImage
LLViewBordermBorder
bool mFrequentUpdates
bool mForceUpdate
bool mOpenLinksInExternalBrowser
bool mOpenLinksInInternalBrowser
bool mOpenAppSLURLs
std::string mHomePageUrl
std::string mExternalUrl
bool mIgnoreUIScale
bool mAlwaysRefresh
LLMediaBasemMediaSource
bool mTakeFocusOnClick


Detailed Description

Definition at line 177 of file llwebbrowserctrl.h.


Constructor & Destructor Documentation

LLWebBrowserCtrl::LLWebBrowserCtrl ( const std::string &  name,
const LLRect rect 
)

LLWebBrowserCtrl::~LLWebBrowserCtrl (  )  [virtual]

Definition at line 117 of file llwebbrowserctrl.cpp.

References LLMediaManager::destroySource(), LLMediaManager::getInstance(), llendl, llwarns, mMediaSource, mWebBrowserImage, and NULL.

Here is the call graph for this function:


Member Function Documentation

void LLWebBrowserCtrl::setBorderVisible ( BOOL  border_visible  ) 

Definition at line 156 of file llwebbrowserctrl.cpp.

References mBorder, and LLView::setVisible().

Referenced by fromXML().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLWebBrowserCtrl::setTakeFocusOnClick ( bool  take_focus  ) 

Definition at line 166 of file llwebbrowserctrl.cpp.

References mTakeFocusOnClick.

Referenced by LLFloaterHUD::LLFloaterHUD().

Here is the caller graph for this function:

LLView * LLWebBrowserCtrl::fromXML ( LLXMLNodePtr  node,
LLView parent,
LLUICtrlFactory factory 
) [static]

BOOL LLWebBrowserCtrl::handleHover ( S32  x,
S32  y,
MASK  mask 
) [virtual]

Reimplemented from LLView.

Definition at line 193 of file llwebbrowserctrl.cpp.

References convertInputCoords(), mMediaSource, LLMediaBase::mouseMove(), and TRUE.

Here is the call graph for this function:

BOOL LLWebBrowserCtrl::handleMouseUp ( S32  x,
S32  y,
MASK  mask 
) [virtual]

BOOL LLWebBrowserCtrl::handleMouseDown ( S32  x,
S32  y,
MASK  mask 
) [virtual]

Reimplemented from LLView.

Definition at line 239 of file llwebbrowserctrl.cpp.

References convertInputCoords(), gViewerWindow, mMediaSource, LLMediaBase::mouseDown(), mTakeFocusOnClick, LLUICtrl::setFocus(), LLViewerWindow::setMouseCapture(), and TRUE.

Here is the call graph for this function:

BOOL LLWebBrowserCtrl::handleDoubleClick ( S32  x,
S32  y,
MASK  mask 
) [virtual]

Reimplemented from LLView.

Definition at line 258 of file llwebbrowserctrl.cpp.

References convertInputCoords(), gViewerWindow, mMediaSource, LLMediaBase::mouseLeftDoubleClick(), mTakeFocusOnClick, LLUICtrl::setFocus(), LLViewerWindow::setMouseCapture(), and TRUE.

Here is the call graph for this function:

BOOL LLWebBrowserCtrl::handleScrollWheel ( S32  x,
S32  y,
S32  clicks 
) [virtual]

Reimplemented from LLView.

Definition at line 205 of file llwebbrowserctrl.cpp.

References mMediaSource, LLMediaBase::scrollByLines(), and TRUE.

Here is the call graph for this function:

void LLWebBrowserCtrl::navigateTo ( std::string  urlIn  ) 

void LLWebBrowserCtrl::navigateBack (  ) 

Definition at line 403 of file llwebbrowserctrl.cpp.

References mMediaSource, and LLMediaBase::navigateBack().

Referenced by LLScriptEdCore::onClickBack().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLWebBrowserCtrl::navigateHome (  ) 

Definition at line 516 of file llwebbrowserctrl.cpp.

References mHomePageUrl, mMediaSource, and LLMediaBase::navigateTo().

Referenced by fromXML(), and LLFloaterHtmlHelp::onClickHome().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLWebBrowserCtrl::navigateForward (  ) 

Definition at line 411 of file llwebbrowserctrl.cpp.

References mMediaSource, and LLMediaBase::navigateForward().

Referenced by LLScriptEdCore::onClickForward().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLWebBrowserCtrl::navigateToLocalPage ( const std::string &  subdir,
const std::string &  filename_in 
)

Definition at line 477 of file llwebbrowserctrl.cpp.

References LLDir::fileExists(), gDirUtilp, LLDir::getDirDelimiter(), LLDir::getExpandedFilename(), LLControlGroup::getString(), gSavedSettings, LL_PATH_HTML, llendl, llwarns, and navigateTo().

Referenced by LLPanelLogin::LLPanelLogin(), and LLPanelLogin::setSiteIsAlive().

Here is the call graph for this function:

Here is the caller graph for this function:

bool LLWebBrowserCtrl::canNavigateBack (  ) 

Definition at line 419 of file llwebbrowserctrl.cpp.

References LLMediaBase::canNavigateBack(), and mMediaSource.

Referenced by LLPanelDirFind::draw(), LLFloaterHtmlHelp::draw(), LLFloaterHtml::draw(), and LLFloaterMediaBrowser::onLocationChange().

Here is the call graph for this function:

Here is the caller graph for this function:

bool LLWebBrowserCtrl::canNavigateForward (  ) 

Definition at line 429 of file llwebbrowserctrl.cpp.

References LLMediaBase::canNavigateForward(), and mMediaSource.

Referenced by LLPanelDirFind::draw(), LLFloaterHtmlHelp::draw(), LLFloaterHtml::draw(), and LLFloaterMediaBrowser::onLocationChange().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLWebBrowserCtrl::setOpenInExternalBrowser ( bool  valIn  ) 

void LLWebBrowserCtrl::setOpenInInternalBrowser ( bool  valIn  ) 

Definition at line 180 of file llwebbrowserctrl.cpp.

References mOpenLinksInInternalBrowser.

Referenced by LLPanelDirFind::postBuild().

Here is the caller graph for this function:

void LLWebBrowserCtrl::setOpenAppSLURLs ( bool  valIn  ) 

Definition at line 186 of file llwebbrowserctrl.cpp.

References mOpenAppSLURLs.

Referenced by LLPanelLogin::LLPanelLogin(), LLPanelDirFind::postBuild(), and LLFloaterHtml::show().

Here is the caller graph for this function:

void LLWebBrowserCtrl::setHomePageUrl ( const std::string  urlIn  ) 

Definition at line 527 of file llwebbrowserctrl.cpp.

References mHomePageUrl.

Referenced by fromXML(), and LLFloaterMediaBrowser::openMedia().

Here is the caller graph for this function:

std::string LLWebBrowserCtrl::getHomePageUrl (  ) 

Definition at line 543 of file llwebbrowserctrl.cpp.

References mHomePageUrl.

bool LLWebBrowserCtrl::set404RedirectUrl ( std::string  redirect_url  ) 

Definition at line 439 of file llwebbrowserctrl.cpp.

References mMediaSource, and LLMediaBase::set404RedirectUrl().

Referenced by LLPanelDirFind::postBuild().

Here is the call graph for this function:

Here is the caller graph for this function:

bool LLWebBrowserCtrl::clr404RedirectUrl (  ) 

Definition at line 449 of file llwebbrowserctrl.cpp.

References LLMediaBase::clr404RedirectUrl(), and mMediaSource.

Here is the call graph for this function:

bool LLWebBrowserCtrl::getFrequentUpdates (  )  [inline]

Definition at line 229 of file llwebbrowserctrl.h.

References mFrequentUpdates.

Referenced by LLWebBrowserTexture::needsRender(), and LLWebBrowserTexture::render().

Here is the caller graph for this function:

void LLWebBrowserCtrl::setFrequentUpdates ( bool  frequentUpdatesIn  )  [inline]

Definition at line 230 of file llwebbrowserctrl.h.

References mFrequentUpdates.

Referenced by draw().

Here is the caller graph for this function:

void LLWebBrowserCtrl::setIgnoreUIScale ( bool  ignore  )  [inline]

Definition at line 232 of file llwebbrowserctrl.h.

References mIgnoreUIScale.

Referenced by fromXML().

Here is the caller graph for this function:

bool LLWebBrowserCtrl::getIgnoreUIScale (  )  [inline]

Definition at line 233 of file llwebbrowserctrl.h.

References mIgnoreUIScale.

Referenced by fromXML().

Here is the caller graph for this function:

void LLWebBrowserCtrl::setAlwaysRefresh ( bool  refresh  )  [inline]

Definition at line 235 of file llwebbrowserctrl.h.

References mAlwaysRefresh.

Referenced by LLScriptEdCore::onBtnDynamicHelp(), and LLPanelLogin::setAlwaysRefresh().

Here is the caller graph for this function:

bool LLWebBrowserCtrl::getAlwaysRefresh (  )  [inline]

Definition at line 236 of file llwebbrowserctrl.h.

References mAlwaysRefresh.

Referenced by LLWebBrowserTexture::needsRender(), and LLWebBrowserTexture::render().

Here is the caller graph for this function:

void LLWebBrowserCtrl::setForceUpdate ( bool  force_update  )  [inline]

Definition at line 238 of file llwebbrowserctrl.h.

References mForceUpdate.

Referenced by LLWebBrowserTexture::render().

Here is the caller graph for this function:

bool LLWebBrowserCtrl::getForceUpdate (  )  [inline]

Definition at line 239 of file llwebbrowserctrl.h.

References mForceUpdate.

Referenced by LLWebBrowserTexture::needsRender(), and LLWebBrowserTexture::render().

Here is the caller graph for this function:

bool LLWebBrowserCtrl::setCaretColor ( unsigned int  red,
unsigned int  green,
unsigned int  blue 
)

Definition at line 534 of file llwebbrowserctrl.cpp.

References mMediaSource, and LLMediaBase::setCaretColor().

Referenced by fromXML().

Here is the call graph for this function:

Here is the caller graph for this function:

BOOL LLWebBrowserCtrl::handleKeyHere ( KEY  key,
MASK  mask 
) [virtual]

BOOL LLWebBrowserCtrl::handleUnicodeCharHere ( llwchar  uni_char  )  [virtual]

Reimplemented from LLView.

Definition at line 355 of file llwebbrowserctrl.cpp.

References mMediaSource, TRUE, and LLMediaBase::unicodeInput().

Here is the call graph for this function:

void LLWebBrowserCtrl::reshape ( S32  width,
S32  height,
BOOL  called_from_parent = TRUE 
) [virtual]

Reimplemented from LLView.

Definition at line 386 of file llwebbrowserctrl.cpp.

References llround(), mForceUpdate, mIgnoreUIScale, mWebBrowserImage, LLView::reshape(), LLWebBrowserTexture::resize(), S32, LLUI::sGLScaleFactor, VX, and VY.

Referenced by LLPanelLogin::LLPanelLogin().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLWebBrowserCtrl::draw ( void   )  [virtual]

void LLWebBrowserCtrl::onVisibilityChange ( BOOL  curVisibilityIn  )  [virtual]

Reimplemented from LLView.

Definition at line 370 of file llwebbrowserctrl.cpp.

References mFrequentUpdates, and LLView::onVisibilityChange().

Here is the call graph for this function:

void LLWebBrowserCtrl::onFocusLost (  )  [virtual]

Reimplemented from LLUICtrl.

Definition at line 288 of file llwebbrowserctrl.cpp.

References LLMediaBase::focus(), LLViewerWindow::focusClient(), gViewerWindow, mMediaSource, and LLUICtrl::onFocusLost().

Here is the call graph for this function:

void LLWebBrowserCtrl::onFocusReceived (  )  [virtual]

Reimplemented from LLUICtrl.

Definition at line 277 of file llwebbrowserctrl.cpp.

References LLMediaBase::focus(), mMediaSource, and LLUICtrl::onFocusReceived().

Here is the call graph for this function:

bool LLWebBrowserCtrl::addObserver ( LLWebBrowserCtrlObserver subjectIn  ) 

bool LLWebBrowserCtrl::remObserver ( LLWebBrowserCtrlObserver subjectIn  ) 

Definition at line 149 of file llwebbrowserctrl.cpp.

References mEventEmitter, and LLWebBrowserCtrlEventEmitter< T >::remObserver().

Referenced by LLFloaterHtmlHelp::~LLFloaterHtmlHelp(), LLFloaterReleaseMsg::~LLFloaterReleaseMsg(), LLPanelAvatarWeb::~LLPanelAvatarWeb(), and LLPanelDirFind::~LLPanelDirFind().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLWebBrowserCtrl::onNavigateBegin ( const EventType eventIn  )  [virtual]

Reimplemented from LLMediaObserver.

Definition at line 627 of file llwebbrowserctrl.cpp.

References LLMediaEvent::getStringValue(), mEventEmitter, LLWebBrowserCtrlObserver::onNavigateBegin(), and LLWebBrowserCtrlEventEmitter< T >::update().

Here is the call graph for this function:

void LLWebBrowserCtrl::onNavigateComplete ( const EventType eventIn  )  [virtual]

Reimplemented from LLMediaObserver.

Definition at line 635 of file llwebbrowserctrl.cpp.

References LLMediaEvent::getStringValue(), mEventEmitter, LLWebBrowserCtrlObserver::onNavigateComplete(), and LLWebBrowserCtrlEventEmitter< T >::update().

Here is the call graph for this function:

void LLWebBrowserCtrl::onUpdateProgress ( const EventType eventIn  )  [virtual]

Reimplemented from LLMediaObserver.

Definition at line 644 of file llwebbrowserctrl.cpp.

References LLMediaEvent::getIntValue(), mEventEmitter, LLWebBrowserCtrlObserver::onUpdateProgress(), and LLWebBrowserCtrlEventEmitter< T >::update().

Here is the call graph for this function:

void LLWebBrowserCtrl::onStatusTextChange ( const EventType eventIn  )  [virtual]

Reimplemented from LLMediaObserver.

Definition at line 653 of file llwebbrowserctrl.cpp.

References LLMediaEvent::getStringValue(), mEventEmitter, LLWebBrowserCtrlObserver::onStatusTextChange(), and LLWebBrowserCtrlEventEmitter< T >::update().

Here is the call graph for this function:

void LLWebBrowserCtrl::onLocationChange ( const EventType eventIn  )  [virtual]

void LLWebBrowserCtrl::onClickLinkHref ( const EventType eventIn  )  [virtual]

void LLWebBrowserCtrl::onClickLinkNoFollow ( const EventType eventIn  )  [virtual]

void LLWebBrowserCtrl::onMediaContentsChange ( const EventType event_in  )  [virtual]

Reimplemented from LLMediaObserver.

Definition at line 681 of file llwebbrowserctrl.cpp.

References mForceUpdate, mWebBrowserImage, and LLWebBrowserTexture::setNeedsUpdate().

Here is the call graph for this function:

void LLWebBrowserCtrl::convertInputCoords ( S32 x,
S32 y 
) [protected]

Definition at line 619 of file llwebbrowserctrl.cpp.

References LLRectBase< Type >::getHeight(), LLView::getRect(), llround(), mIgnoreUIScale, LLUI::sGLScaleFactor, VX, and VY.

Referenced by handleDoubleClick(), handleHover(), handleMouseDown(), and handleMouseUp().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLWebBrowserCtrl::onClickLinkExternalTarget ( S32  option,
void *  userdata 
) [static, private]

Definition at line 692 of file llwebbrowserctrl.cpp.

References LLWeb::loadURLExternal(), and mExternalUrl.

Referenced by onClickLinkHref().

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

Definition at line 276 of file llwebbrowserctrl.h.

Definition at line 277 of file llwebbrowserctrl.h.

Definition at line 279 of file llwebbrowserctrl.h.

Referenced by draw(), LLWebBrowserCtrl(), and setBorderVisible().

Definition at line 280 of file llwebbrowserctrl.h.

Referenced by getFrequentUpdates(), onVisibilityChange(), and setFrequentUpdates().

Definition at line 281 of file llwebbrowserctrl.h.

Referenced by getForceUpdate(), onMediaContentsChange(), reshape(), and setForceUpdate().

Definition at line 282 of file llwebbrowserctrl.h.

Referenced by onClickLinkHref(), and setOpenInExternalBrowser().

Definition at line 283 of file llwebbrowserctrl.h.

Referenced by onClickLinkHref(), and setOpenInInternalBrowser().

Definition at line 284 of file llwebbrowserctrl.h.

Referenced by onClickLinkHref(), onClickLinkNoFollow(), and setOpenAppSLURLs().

std::string LLWebBrowserCtrl::mHomePageUrl [private]

Definition at line 285 of file llwebbrowserctrl.h.

Referenced by getHomePageUrl(), navigateHome(), and setHomePageUrl().

std::string LLWebBrowserCtrl::mExternalUrl [private]

Definition at line 286 of file llwebbrowserctrl.h.

Referenced by onClickLinkExternalTarget(), and onClickLinkHref().

Definition at line 288 of file llwebbrowserctrl.h.

Referenced by getAlwaysRefresh(), and setAlwaysRefresh().


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

Generated on Fri May 16 09:39:29 2008 for SecondLife by  doxygen 1.5.5