Added AIFetchInventoryFolder and more.

Added a new statemachine AIFetchInventoryFolder, which can be used
to fetch the contents of a folder by name or UUID.

Also added AIEvent (and one event,
AIEvent::LLInventoryModel_mIsAgentInvUsable_true, which is needed
for AIFetchInventoryFolder).

Fixed LLInventoryModel::sBackgroundFetchActive to correctly reflect
whether or not LLInventoryModel::backgroundFetch is added to
gIdleCallbacks.

Avoid duplicated entries in sFetchQueue.

Reset sFullFetchStarted in LLInventoryModel::stopBackgroundFetch to
allow for a renewed full fetch when some single-folder fetch stops it.

Added AIStateMachine::mQueued to make calling 'cont()' more robust:
calling cont() / idle() / cont() on a row would otherwise add a
statemachine twice to the active list, which would cause a crash
when it's killed.
This commit is contained in:
Aleric Inglewood
2011-05-22 22:01:11 +02:00
parent e1fb1fa6b7
commit 13560e292e
12 changed files with 603 additions and 11 deletions

View File

@@ -13,7 +13,9 @@ include(LLWindow)
include(LLUI)
include(LLRender)
include(LLImage)
include(LLCharacter)
include(LLInventory)
include(LLPrimitive)
include_directories(
${CMAKE_SOURCE_DIR}/newview
@@ -27,11 +29,16 @@ include_directories(
${LLUI_INCLUDE_DIRS}
${LLRENDER_INCLUDE_DIRS}
${LLIMAGE_INCLUDE_DIRS}
${LLCHARACTER_INCLUDE_DIRS}
${LLINVENTORY_INCLUDE_DIRS}
${LLPRIMITIVE_INCLUDE_DIRS}
)
set(statemachine_SOURCE_FILES
aistatemachine.cpp
aifilepicker.cpp
aifetchinventoryfolder.cpp
aievent.cpp
)
set(statemachine_HEADER_FILES
@@ -39,6 +46,8 @@ set(statemachine_HEADER_FILES
aistatemachine.h
aifilepicker.h
aidirpicker.h
aifetchinventoryfolder.h
aievent.h
)
set_source_files_properties(${statemachine_HEADER_FILES}