Pulled LLDropTarget into its own files and brought in the callback version so we can use either, whereever we need them, without rewriting them. This makes code for drag and drop items into boxes easier. --------Auto-Response-------- Added item box to Adv. Chat, finally you can send autoresponse with item! Taught to LLViewerMessage to understand this. ------------Build------------ Added in comment labels for more sections of system preferences. Everything new in the System->Build tab will reset on cancel, except the item, I see no reason to reset an item. Added in BuildPrefs, and settings like them. Taught LLToolPlacer how to give creations material type, and size, and ask importtracker to do the rest. LLViewerObjectList now pings importtracker whenever it notices newly created objects that are ours entirely, so we can exact our will upon them. Cleaned up most of importtracker code so we can use only the parts we need, and do it well. Added ObjectPhysicsProperties to message.xml
82 lines
1.8 KiB
C++
82 lines
1.8 KiB
C++
/**
|
|
* @file importtracker.h
|
|
* @brief A utility for importing linksets from XML.
|
|
* Discrete wuz here
|
|
*/
|
|
|
|
#ifndef IMPORTTRACKER_H
|
|
#define IMPORTTRACKER_H
|
|
|
|
//#include "llviewerobject.h"
|
|
|
|
|
|
|
|
class ImportTracker
|
|
{
|
|
public:
|
|
enum ImportState { IDLE, WAND/*, BUILDING, LINKING, POSITIONING*/ };
|
|
|
|
ImportTracker()
|
|
: numberExpected(0),
|
|
state(IDLE)/*,
|
|
last(0),
|
|
groupcounter(0),
|
|
updated(0)*/
|
|
{ }
|
|
ImportTracker(LLSD &data) { state = IDLE; /*linkset = data;*/ numberExpected=0;}
|
|
~ImportTracker() { /*localids.clear(); linkset.clear();*/ }
|
|
|
|
//Chalice - support import of linkset groups
|
|
//void importer(std::string file, void (*callback)(LLViewerObject*));
|
|
//void cleargroups();
|
|
//void import(LLSD &ls_data);
|
|
void expectRez();
|
|
//void clear();
|
|
//void finish();
|
|
//void cleanUp();
|
|
void get_update(S32 newid, BOOL justCreated = false, BOOL createSelected = false);
|
|
|
|
const int getState() { return state; }
|
|
|
|
/* U32 asset_insertions;
|
|
|
|
protected:
|
|
void send_inventory(LLSD &prim);
|
|
void send_properties(LLSD &prim, int counter);
|
|
void send_vectors(LLSD &prim, int counter);
|
|
void send_shape(LLSD &prim);
|
|
void send_image(LLSD &prim);
|
|
void send_extras(LLSD &prim);
|
|
void send_namedesc(LLSD &prim);
|
|
void link();
|
|
void wear(LLSD &prim);
|
|
void position(LLSD &prim);
|
|
void plywood_above_head();
|
|
*/
|
|
private:
|
|
int numberExpected;
|
|
int state;
|
|
/* S32 last;
|
|
LLVector3 root;
|
|
LLQuaternion rootrot;
|
|
std::list<S32> localids;
|
|
LLSD linksetgroups;
|
|
int groupcounter;
|
|
int updated;
|
|
LLVector3 linksetoffset;
|
|
LLVector3 initialPos;
|
|
LLSD linkset;
|
|
|
|
std::string filepath;
|
|
std::string asset_dir;
|
|
void (*mDownCallback)(LLViewerObject*);
|
|
|
|
U32 lastrootid;*/
|
|
};
|
|
|
|
extern ImportTracker gImportTracker;
|
|
|
|
//extern LLAgent gAgent;
|
|
|
|
#endif
|