#include <llfloater.h>
Public Member Functions | |
LLMultiFloater () | |
LLMultiFloater (LLTabContainer::TabPosition tab_pos) | |
LLMultiFloater (const LLString &name) | |
LLMultiFloater (const LLString &name, const LLRect &rect, LLTabContainer::TabPosition tab_pos=LLTabContainer::TOP, BOOL auto_resize=TRUE) | |
LLMultiFloater (const LLString &name, const LLString &rect_control, LLTabContainer::TabPosition tab_pos=LLTabContainer::TOP, BOOL auto_resize=TRUE) | |
virtual | ~LLMultiFloater () |
virtual BOOL | postBuild () |
void | open () |
void | onClose (bool app_quitting) |
void | draw () |
void | setVisible (BOOL visible) |
BOOL | handleKeyHere (KEY key, MASK mask) |
virtual void | setCanResize (BOOL can_resize) |
virtual void | growToFit (S32 content_width, S32 content_height) |
virtual void | addFloater (LLFloater *floaterp, BOOL select_added_floater, LLTabContainer::eInsertionPoint insertion_point=LLTabContainer::END) |
virtual void | showFloater (LLFloater *floaterp) |
virtual void | removeFloater (LLFloater *floaterp) |
virtual void | tabOpen (LLFloater *opened_floater, bool from_click) |
virtual void | tabClose () |
virtual BOOL | selectFloater (LLFloater *floaterp) |
virtual void | selectNextFloater () |
virtual void | selectPrevFloater () |
virtual LLFloater * | getActiveFloater () |
virtual BOOL | isFloaterFlashing (LLFloater *floaterp) |
virtual S32 | getFloaterCount () |
virtual void | setFloaterFlashing (LLFloater *floaterp, BOOL flashing) |
virtual BOOL | closeAllFloaters () |
void | setTabContainer (LLTabContainer *tab_container) |
virtual void | updateResizeLimits () |
Static Public Member Functions | |
static void | onTabSelected (void *userdata, bool) |
Protected Types | |
typedef std::map< LLHandle < LLFloater >, LLFloaterData > | floater_data_map_t |
Protected Attributes | |
LLTabContainer * | mTabContainer |
floater_data_map_t | mFloaterDataMap |
LLTabContainer::TabPosition | mTabPos |
BOOL | mAutoResize |
S32 | mOrigMinWidth |
S32 | mOrigMinHeight |
Classes | |
struct | LLFloaterData |
Definition at line 359 of file llfloater.h.
typedef std::map<LLHandle<LLFloater>, LLFloaterData> LLMultiFloater::floater_data_map_t [protected] |
Definition at line 412 of file llfloater.h.
LLMultiFloater::LLMultiFloater | ( | ) |
Definition at line 2360 of file llfloater.cpp.
LLMultiFloater::LLMultiFloater | ( | LLTabContainer::TabPosition | tab_pos | ) |
Definition at line 2370 of file llfloater.cpp.
LLMultiFloater::LLMultiFloater | ( | const LLString & | name | ) |
Definition at line 2380 of file llfloater.cpp.
LLMultiFloater::LLMultiFloater | ( | const LLString & | name, | |
const LLRect & | rect, | |||
LLTabContainer::TabPosition | tab_pos = LLTabContainer::TOP , |
|||
BOOL | auto_resize = TRUE | |||
) |
Definition at line 2390 of file llfloater.cpp.
References LLView::addChild(), FALSE, LLView::getRect(), LLFloater::isResizable(), LLFLOATER_HEADER_SIZE, LLPANEL_BORDER_WIDTH, mTabContainer, mTabPos, RESIZE_HANDLE_WIDTH, LLView::setFollowsAll(), and LLTabContainer::setRightTabBtnOffset().
LLMultiFloater::LLMultiFloater | ( | const LLString & | name, | |
const LLString & | rect_control, | |||
LLTabContainer::TabPosition | tab_pos = LLTabContainer::TOP , |
|||
BOOL | auto_resize = TRUE | |||
) |
Definition at line 2416 of file llfloater.cpp.
References LLView::addChild(), LLTabContainer::BOTTOM, FALSE, LLView::getRect(), LLFloater::isResizable(), LLFLOATER_HEADER_SIZE, LLPANEL_BORDER_WIDTH, mTabContainer, mTabPos, RESIZE_HANDLE_WIDTH, LLView::setFollowsAll(), and LLTabContainer::setRightTabBtnOffset().
virtual LLMultiFloater::~LLMultiFloater | ( | ) | [inline, virtual] |
Definition at line 367 of file llfloater.h.
BOOL LLMultiFloater::postBuild | ( | void | ) | [virtual] |
Reimplemented from LLPanel.
Reimplemented in LLFloaterScriptDebug, and LLFloaterIM.
Definition at line 2800 of file llfloater.cpp.
References LLPanel::checkRequirements(), FALSE, LLFloater::getResizeLimits(), mOrigMinHeight, mOrigMinWidth, mTabContainer, and TRUE.
Referenced by LLFloaterScriptDebug::postBuild().
void LLMultiFloater::open | ( | ) | [virtual] |
Reimplemented from LLFloater.
Reimplemented in LLMultiPreview.
Definition at line 2444 of file llfloater.cpp.
References LLFloater::close(), LLTabContainer::getTabCount(), mTabContainer, and LLFloater::open().
Referenced by doToSelected(), LLFloater::onClickTearOff(), LLMultiPreview::open(), LLFolderView::openSelectedItems(), LLFolderView::propertiesSelectedItems(), LLFloaterScriptDebug::show(), and VisibilityPolicy< LLFloater >::show().
void LLMultiFloater::onClose | ( | bool | app_quitting | ) | [virtual] |
Reimplemented from LLFloater.
Reimplemented in LLFloaterChatterBox, and LLFloaterScriptDebug.
Definition at line 2458 of file llfloater.cpp.
References closeAllFloaters(), LLFloater::onClose(), and TRUE.
void LLMultiFloater::draw | ( | void | ) | [virtual] |
Reimplemented from LLFloater.
Reimplemented in LLFloaterChatterBox.
Definition at line 2466 of file llfloater.cpp.
References LLFloater::close(), LLFloater::draw(), LLTabContainer::getPanelByIndex(), LLTabContainer::getPanelTitle(), LLFloater::getShortTitle(), LLTabContainer::getTabCount(), i, mTabContainer, S32, and LLTabContainer::setPanelTitle().
Referenced by LLFloaterChatterBox::draw().
void LLMultiFloater::setVisible | ( | BOOL | visible | ) | [virtual] |
Reimplemented from LLFloater.
Definition at line 2698 of file llfloater.cpp.
References LLTabContainer::getCurrentPanel(), mTabContainer, LLTabContainer::selectLastTab(), LLView::setVisible(), and LLFloater::setVisible().
Referenced by LLFloaterScriptDebug::addOutputWindow(), LLFloaterScriptDebug::onClose(), and LLFloaterChatterBox::onClose().
Reimplemented from LLPanel.
Reimplemented in LLFloaterChatterBox.
Definition at line 2721 of file llfloater.cpp.
References LLFloater::canClose(), LLFloater::close(), getActiveFloater(), LLPanel::handleKeyHere(), LLFloater::isCloseable(), MASK_CONTROL, and TRUE.
Referenced by LLFloaterChatterBox::handleKeyHere().
void LLMultiFloater::setCanResize | ( | BOOL | can_resize | ) | [virtual] |
Reimplemented from LLFloater.
Definition at line 2787 of file llfloater.cpp.
References LLTabContainer::BOTTOM, LLTabContainer::getTabPosition(), LLFloater::isResizable(), mTabContainer, RESIZE_HANDLE_WIDTH, LLFloater::setCanResize(), and LLTabContainer::setRightTabBtnOffset().
Referenced by LLMultiPreview::LLMultiPreview().
Definition at line 2511 of file llfloater.cpp.
References LLFloater::getExpandedRect(), LLRectBase< Type >::getHeight(), LLView::getRect(), LLFloater::isMinimized(), LLFLOATER_HEADER_SIZE, llmax(), LLPANEL_BORDER_WIDTH, LLFloater::reshape(), S32, LLFloater::setExpandedRect(), LLRectBase< Type >::setLeftTopAndSize(), TABCNTR_HEADER_HEIGHT, and LLView::translate().
Referenced by addFloater(), and LLPreviewTexture::updateDimensions().
void LLMultiFloater::addFloater | ( | LLFloater * | floaterp, | |
BOOL | select_added_floater, | |||
LLTabContainer::eInsertionPoint | insertion_point = LLTabContainer::END | |||
) | [virtual] |
void addFloater(LLFloater* floaterp, BOOL select_added_floater)
Adds the LLFloater pointed to by floaterp to this. If floaterp is already hosted by this, then it is re-added to get new titles, etc. If select_added_floater is true, the LLFloater pointed to by floaterp will become the selected tab in this
Affects: mTabContainer, floaterp
Reimplemented in LLFloaterChatterBox.
Definition at line 2542 of file llfloater.cpp.
References LLTabContainer::addTabPanel(), FALSE, LLTabContainer::getCurrentPanelIndex(), LLFloater::getHandle(), LLRectBase< Type >::getHeight(), LLFloater::getHost(), LLView::getParent(), LLView::getRect(), LLFloater::getShortTitle(), LLRectBase< Type >::getWidth(), growToFit(), LLFloater::isMinimizeable(), LLFloater::isMinimized(), LLFloater::isResizable(), llendl, llerrs, mAutoResize, LLMultiFloater::LLFloaterData::mCanMinimize, LLMultiFloater::LLFloaterData::mCanResize, mFloaterDataMap, LLMultiFloater::LLFloaterData::mHeight, mTabContainer, LLMultiFloater::LLFloaterData::mWidth, onTabSelected(), LLView::removeChild(), removeFloater(), LLTabContainer::removeTabPanel(), LLTabContainer::selectTab(), LLTabContainer::selectTabPanel(), LLPanel::setBackgroundVisible(), LLFloater::setCanDrag(), LLFloater::setCanMinimize(), LLFloater::setCanResize(), LLFloater::setHost(), LLFloater::setVisible(), LLPanel::storeRectControl(), and updateResizeLimits().
Referenced by LLFloaterChatterBox::addFloater(), LLFloater::open(), LLPreviewGesture::show(), LLPreview::show(), LLFloaterProperties::show(), and showFloater().
void LLMultiFloater::showFloater | ( | LLFloater * | floaterp | ) | [virtual] |
Definition at line 2642 of file llfloater.cpp.
References addFloater(), LLTabContainer::getCurrentPanel(), mTabContainer, LLTabContainer::selectTabPanel(), and TRUE.
Referenced by LLIMMgr::addSession(), LLFloater::bringToFront(), LLFloater::onClickTearOff(), LLFloater::open(), LLFloater::setFrontmost(), and LLFloaterScriptDebug::show().
void LLMultiFloater::removeFloater | ( | LLFloater * | floaterp | ) | [virtual] |
Reimplemented in LLFloaterChatterBox.
Definition at line 2655 of file llfloater.cpp.
References LLFloater::applyRectControl(), LLTabContainer::getCurrentPanel(), LLFloater::getHandle(), LLFloater::getHost(), LLMultiFloater::LLFloaterData::mCanMinimize, LLMultiFloater::LLFloaterData::mCanResize, mFloaterDataMap, LLMultiFloater::LLFloaterData::mHeight, mTabContainer, LLMultiFloater::LLFloaterData::mWidth, NULL, LLTabContainer::removeTabPanel(), LLFloater::reshape(), LLPanel::setBackgroundVisible(), LLFloater::setCanDrag(), LLFloater::setCanMinimize(), LLFloater::setCanResize(), LLFloater::setHost(), tabOpen(), TRUE, and updateResizeLimits().
Referenced by addFloater(), LLFloater::onClickTearOff(), and LLFloaterChatterBox::removeFloater().
void LLMultiFloater::tabOpen | ( | LLFloater * | opened_floater, | |
bool | from_click | |||
) | [virtual] |
Reimplemented in LLMultiPreview.
Definition at line 2684 of file llfloater.cpp.
Referenced by onTabSelected(), and removeFloater().
void LLMultiFloater::tabClose | ( | ) | [virtual] |
Definition at line 2689 of file llfloater.cpp.
References LLFloater::close(), LLTabContainer::getTabCount(), and mTabContainer.
BOOL selectFloater(LLFloater* floaterp)
If the LLFloater pointed to by floaterp is hosted by this, then its tab is selected and returns true. Otherwise returns false.
Affects: mTabContainer
Definition at line 2625 of file llfloater.cpp.
References mTabContainer, and LLTabContainer::selectTabPanel().
Referenced by LLIMMgr::addMessage().
void LLMultiFloater::selectNextFloater | ( | ) | [virtual] |
Definition at line 2631 of file llfloater.cpp.
References mTabContainer, and LLTabContainer::selectNextTab().
void LLMultiFloater::selectPrevFloater | ( | ) | [virtual] |
Definition at line 2637 of file llfloater.cpp.
References mTabContainer, and LLTabContainer::selectPrevTab().
LLFloater * LLMultiFloater::getActiveFloater | ( | ) | [virtual] |
Definition at line 2737 of file llfloater.cpp.
References LLTabContainer::getCurrentPanel(), and mTabContainer.
Referenced by LLIMMgr::addMessage(), LLFloaterChatterBox::handleKeyHere(), handleKeyHere(), and LLToolBar::updateCommunicateList().
BOOL isFloaterFlashing(LLFloater* floaterp)
Returns true if the LLFloater pointed to by floaterp is currently in a flashing state and is hosted by this. False otherwise.
Requires: floaterp != NULL
Definition at line 2756 of file llfloater.cpp.
References FALSE, LLFloater::getHost(), LLTabContainer::getTabPanelFlashing(), and mTabContainer.
S32 LLMultiFloater::getFloaterCount | ( | ) | [virtual] |
Definition at line 2742 of file llfloater.cpp.
References LLTabContainer::getTabCount(), and mTabContainer.
Referenced by LLFloaterNewIM::canClose(), LLFloaterChatterBox::getCurrentVoiceFloater(), and LLToolBar::onClickCommunicate().
BOOL setFloaterFlashing(LLFloater* floaterp, BOOL flashing)
Sets the current flashing state of the LLFloater pointed to by floaterp to be the BOOL flashing if the LLFloater pointed to by floaterp is hosted by this.
Requires: floaterp != NULL
Definition at line 2773 of file llfloater.cpp.
References LLFloater::getHost(), mTabContainer, and LLTabContainer::setTabPanelFlashing().
Referenced by LLFloaterChat::addChatHistory(), LLFloaterIMPanel::addHistoryLine(), LLIMMgr::addMessage(), LLFloaterChat::onVisibilityChange(), and LLFloaterIMPanel::setVisible().
BOOL LLMultiFloater::closeAllFloaters | ( | ) | [virtual] |
Definition at line 2487 of file llfloater.cpp.
References LLFloater::close(), FALSE, LLTabContainer::getPanelByIndex(), LLTabContainer::getTabCount(), mTabContainer, S32, and TRUE.
Referenced by onClose().
void LLMultiFloater::setTabContainer | ( | LLTabContainer * | tab_container | ) | [inline] |
Definition at line 396 of file llfloater.h.
References mTabContainer.
Referenced by LLTabContainer::fromXML().
void LLMultiFloater::onTabSelected | ( | void * | userdata, | |
bool | from_click | |||
) | [static] |
Definition at line 2780 of file llfloater.cpp.
References LLTabContainer::getCurrentPanel(), mTabContainer, and tabOpen().
Referenced by addFloater().
void LLMultiFloater::updateResizeLimits | ( | ) | [virtual] |
Definition at line 2820 of file llfloater.cpp.
References LLFloaterView::adjustToFitScreen(), LLFloater::getExpandedRect(), LLRectBase< Type >::getHeight(), LLFloater::getMinHeight(), LLFloater::getMinWidth(), LLTabContainer::getPanelByIndex(), LLView::getRect(), LLTabContainer::getTabCount(), LLRectBase< Type >::getWidth(), LLFloater::isMinimized(), LLFLOATER_HEADER_SIZE, llmax(), LLPANEL_BORDER_WIDTH, LLRectBase< Type >::mLeft, mOrigMinHeight, mOrigMinWidth, mTabContainer, LLRectBase< Type >::mTop, LLFloater::reshape(), S32, LLFloater::setExpandedRect(), LLRectBase< Type >::setLeftTopAndSize(), LLFloater::setResizeLimits(), TABCNTR_HEADER_HEIGHT, LLView::translate(), and TRUE.
Referenced by addFloater(), and removeFloater().
LLTabContainer* LLMultiFloater::mTabContainer [protected] |
Definition at line 410 of file llfloater.h.
Referenced by LLFloaterChatterBox::addFloater(), addFloater(), closeAllFloaters(), LLFloaterChatterBox::draw(), draw(), getActiveFloater(), LLFloaterChatterBox::getCurrentVoiceFloater(), getFloaterCount(), isFloaterFlashing(), LLFloaterChatterBox::LLFloaterChatterBox(), LLMultiFloater(), onTabSelected(), LLMultiPreview::open(), open(), LLFloaterScriptDebug::postBuild(), postBuild(), LLFloaterChatterBox::removeFloater(), removeFloater(), selectFloater(), selectNextFloater(), selectPrevFloater(), setCanResize(), setFloaterFlashing(), setTabContainer(), setVisible(), showFloater(), tabClose(), updateResizeLimits(), and LLMultiPreview::userSetShape().
floater_data_map_t LLMultiFloater::mFloaterDataMap [protected] |
LLTabContainer::TabPosition LLMultiFloater::mTabPos [protected] |
BOOL LLMultiFloater::mAutoResize [protected] |
Definition at line 416 of file llfloater.h.
Referenced by addFloater(), LLFloaterChatterBox::LLFloaterChatterBox(), LLFloaterIM::LLFloaterIM(), and LLFloaterScriptDebug::LLFloaterScriptDebug().
S32 LLMultiFloater::mOrigMinWidth [protected] |
S32 LLMultiFloater::mOrigMinHeight [protected] |