Lines Matching defs:msg
92 bool FolderWatcher::BuildEntryRef(BMessage* msg, const char* dirName, entry_ref* entry) {
94 if (msg->FindInt32("device", &entry->device) == B_OK &&
95 msg->FindInt64(dirName, &entry->directory) == B_OK &&
96 msg->FindString("name", &name) == B_OK) {
103 bool FolderWatcher::BuildNodeRef(BMessage* msg, node_ref* node) {
104 return (msg->FindInt32("device", &node->device) == B_OK &&
105 msg->FindInt64("node", &node->node) == B_OK);
108 void FolderWatcher::HandleCreatedEntry(BMessage* msg, const char* dirName) {
111 if (BuildEntryRef(msg, dirName, &entry) &&
112 BuildNodeRef(msg, &node)) {
118 void FolderWatcher::HandleRemovedEntry(BMessage* msg) {
120 if (BuildNodeRef(msg, &node)) {
126 void FolderWatcher::HandleChangedAttr(BMessage* msg) {
128 if (BuildNodeRef(msg, &node)) {
133 void FolderWatcher::MessageReceived(BMessage* msg) {
138 if (msg->what == B_NODE_MONITOR) {
139 if (fListener == NULL || msg->FindInt32("opcode", &opcode) != B_OK) return;
143 HandleCreatedEntry(msg, "directory");
146 HandleRemovedEntry(msg);
150 if (msg->FindInt64("to directory", &dir) == B_OK && folder.node == dir) {
152 HandleCreatedEntry(msg, "to directory");
153 } else if (msg->FindInt64("from directory", &dir) == B_OK && folder.node == dir) {
155 HandleRemovedEntry(msg);
159 HandleChangedAttr(msg);
165 inherited::MessageReceived(msg);