From a51764c53eecd8ca5f6312b92d8baccda89d5b1d Mon Sep 17 00:00:00 2001 From: John Scipione Date: Fri, 27 Jul 2012 23:12:08 -0400 Subject: [PATCH] WIP: Yet more style fixes, mostly 80 char violations. --- src/kits/tracker/AttributeStream.cpp | 22 +- src/kits/tracker/AttributeStream.h | 28 +- src/kits/tracker/Background.h | 24 +- src/kits/tracker/BackgroundImage.cpp | 12 +- src/kits/tracker/Bitmaps.cpp | 25 +- src/kits/tracker/ContainerWindow.cpp | 67 ++-- src/kits/tracker/DesktopPoseView.cpp | 6 +- src/kits/tracker/FSClipboard.cpp | 34 +- src/kits/tracker/FSClipboard.h | 8 +- src/kits/tracker/FSUndoRedo.cpp | 32 +- src/kits/tracker/FSUtils.h | 79 ++-- src/kits/tracker/FavoritesMenu.cpp | 17 +- src/kits/tracker/FilePanelPriv.cpp | 142 ++++--- src/kits/tracker/FilePanelPriv.h | 3 +- src/kits/tracker/FindPanel.cpp | 576 +++++++++++++++------------ src/kits/tracker/GroupedMenu.cpp | 14 +- src/kits/tracker/IconCache.cpp | 194 +++++---- src/kits/tracker/IconCache.h | 84 ++-- src/kits/tracker/InfoWindow.cpp | 258 +++++++----- src/kits/tracker/MimeTypeList.cpp | 5 +- src/kits/tracker/Model.cpp | 88 ++-- src/kits/tracker/Model.h | 38 +- src/kits/tracker/Navigator.cpp | 60 ++- src/kits/tracker/OpenWithWindow.cpp | 23 +- src/kits/tracker/OpenWithWindow.h | 59 ++- src/kits/tracker/OverrideAlert.cpp | 11 +- src/kits/tracker/Pose.cpp | 91 +++-- src/kits/tracker/Pose.h | 12 +- src/kits/tracker/PoseList.h | 37 +- src/kits/tracker/PoseView.cpp | 82 ++-- 30 files changed, 1273 insertions(+), 858 deletions(-) diff --git a/src/kits/tracker/AttributeStream.cpp b/src/kits/tracker/AttributeStream.cpp index 47a8ce0896..e315b526a3 100644 --- a/src/kits/tracker/AttributeStream.cpp +++ b/src/kits/tracker/AttributeStream.cpp @@ -156,8 +156,8 @@ AttributeStreamNode::Contains(const char* name, uint32 type) off_t -AttributeStreamNode::Read(const char* name, const char* foreignName, uint32 type, - off_t size, void* buffer, void (*swapFunc)(void*)) +AttributeStreamNode::Read(const char* name, const char* foreignName, + uint32 type, off_t size, void* buffer, void (*swapFunc)(void*)) { if (!fReadFrom) return 0; @@ -288,8 +288,8 @@ AttributeStreamFileNode::Contains(const char* name, uint32 type) off_t -AttributeStreamFileNode::Read(const char* name, const char* foreignName, uint32 type, - off_t size, void* buffer, void (*swapFunc)(void*)) +AttributeStreamFileNode::Read(const char* name, const char* foreignName, + uint32 type, off_t size, void* buffer, void (*swapFunc)(void*)) { if (name && fNode->ReadAttr(name, type, 0, buffer, (size_t)size) == size) return size; @@ -306,8 +306,8 @@ AttributeStreamFileNode::Read(const char* name, const char* foreignName, uint32 off_t -AttributeStreamFileNode::Write(const char* name, const char* foreignName, uint32 type, - off_t size, const void* buffer) +AttributeStreamFileNode::Write(const char* name, const char* foreignName, + uint32 type, off_t size, const void* buffer) { ASSERT(fNode); ASSERT(dynamic_cast(fNode)); @@ -659,8 +659,8 @@ AttributeStreamFilterNode::Contains(const char* name, uint32 type) off_t -AttributeStreamFilterNode::Read(const char* name, const char* foreignName, uint32 type, - off_t size, void* buffer, void (*swapFunc)(void*)) +AttributeStreamFilterNode::Read(const char* name, const char* foreignName, + uint32 type, off_t size, void* buffer, void (*swapFunc)(void*)) { if (!fReadFrom) return 0; @@ -673,8 +673,8 @@ AttributeStreamFilterNode::Read(const char* name, const char* foreignName, uint3 off_t -AttributeStreamFilterNode::Write(const char* name, const char* foreignName, uint32 type, - off_t size, const void* buffer) +AttributeStreamFilterNode::Write(const char* name, const char* foreignName, + uint32 type, off_t size, const void* buffer) { if (!fWriteTo) return 0; @@ -693,7 +693,7 @@ NamesToAcceptAttrFilter::NamesToAcceptAttrFilter(const char** nameList) bool -NamesToAcceptAttrFilter::Reject(const char* name, uint32 , off_t ) +NamesToAcceptAttrFilter::Reject(const char* name, uint32, off_t) { for (int32 index = 0; ;index++) { if (!fNameList[index]) diff --git a/src/kits/tracker/AttributeStream.h b/src/kits/tracker/AttributeStream.h index 0102ba8972..eb37452c69 100644 --- a/src/kits/tracker/AttributeStream.h +++ b/src/kits/tracker/AttributeStream.h @@ -114,11 +114,11 @@ public: virtual off_t Contains(const char*, uint32); // returns size of attribute if found - virtual off_t Read(const char* name, const char* foreignName, uint32 type, off_t size, - void* buffer, void (*swapFunc)(void*) = 0); + virtual off_t Read(const char* name, const char* foreignName, + uint32 type, off_t size, void* buffer, void (*swapFunc)(void*) = 0); // read from this node - virtual off_t Write(const char* name, const char* foreignName, uint32 type, off_t size, - const void* buffer); + virtual off_t Write(const char* name, const char* foreignName, + uint32 type, off_t size, const void* buffer); // write to this node // work calls @@ -307,22 +307,25 @@ private: class SelectiveAttributeTransformer : public AttributeStreamNode { // node applies a transformation on specified attributes public: - SelectiveAttributeTransformer(const char* attributeName, bool (*)(const char*, - uint32 , off_t , void*, void*), void* params); + SelectiveAttributeTransformer(const char* attributeName, + bool (*)(const char*, uint32 , off_t , void*, void*), void* params); virtual ~SelectiveAttributeTransformer(); - virtual off_t Read(const char* name, const char* foreignName, uint32 type, off_t size, - void* buffer, void (*swapFunc)(void*) = 0); + virtual off_t Read(const char* name, const char* foreignName, uint32 type, + off_t size, void* buffer, void (*swapFunc)(void*) = 0); virtual void Rewind(); protected: - virtual bool WillTransform(const char* name, uint32 type, off_t size, const char* data) const; + virtual bool WillTransform(const char* name, uint32 type, off_t size, + const char* data) const; // override to implement filtering; should only return true if transformation will // occur - virtual char* CopyAndApplyTransformer(const char* name, uint32 type, off_t size, const char* data); + virtual char* CopyAndApplyTransformer(const char* name, uint32 type, + off_t size, const char* data); // makes a copy of data - virtual bool ApplyTransformer(const char* name, uint32 type, off_t size, char* data); + virtual bool ApplyTransformer(const char* name, uint32 type, off_t size, + char* data); // transforms in place virtual const AttributeInfo* Next(); virtual const char* Get(); @@ -342,7 +345,8 @@ private: template class AttributeStreamConstValue : public AttributeStreamNode { public: - AttributeStreamConstValue(const char* name, uint32 attributeType, Type value); + AttributeStreamConstValue(const char* name, uint32 attributeType, + Type value); protected: virtual bool CanFeed() const { return true; } diff --git a/src/kits/tracker/Background.h b/src/kits/tracker/Background.h index b850313ff4..58e4b63657 100644 --- a/src/kits/tracker/Background.h +++ b/src/kits/tracker/Background.h @@ -31,10 +31,10 @@ of Be Incorporated in the United States and other countries. Other brand product names are registered trademarks or trademarks of their respective holders. All rights reserved. */ - #ifndef _TRACKER_BACKGROUND_H #define _TRACKER_BACKGROUND_H + #include /*----------------------------------------------------------------*/ @@ -45,12 +45,18 @@ All rights reserved. /*----------------------------------------------------------------*/ /*----- Tracker background BMessage entries --------------------*/ -#define B_BACKGROUND_IMAGE "be:bgndimginfopath" // string path -#define B_BACKGROUND_MODE "be:bgndimginfomode" // int32, the enum below -#define B_BACKGROUND_ORIGIN "be:bgndimginfooffset" // BPoint -#define B_BACKGROUND_TEXT_OUTLINE "be:bgndimginfoerasetext" // bool - // NOTE: the actual attribute name is kept for backwards compatible settings -#define B_BACKGROUND_WORKSPACES "be:bgndimginfoworkspaces" // uint32 +#define B_BACKGROUND_IMAGE "be:bgndimginfopath" + // string path +#define B_BACKGROUND_MODE "be:bgndimginfomode" + // int32, the enum below +#define B_BACKGROUND_ORIGIN "be:bgndimginfooffset" + // BPoint +#define B_BACKGROUND_TEXT_OUTLINE "be:bgndimginfoerasetext" + // bool + // NOTE: the actual attribute name is kept for backwards + // compatible settings +#define B_BACKGROUND_WORKSPACES "be:bgndimginfoworkspaces" + // uint32 /*----------------------------------------------------------------*/ /*----- Background mode values ---------------------------------*/ @@ -65,7 +71,7 @@ enum { /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ -const int32 B_RESTORE_BACKGROUND_IMAGE = 'Tbgr'; // force a Tracker window to - // use a new background image +const int32 B_RESTORE_BACKGROUND_IMAGE = 'Tbgr'; + // force a Tracker window to use a new background image #endif // _TRACKER_BACKGROUND_H diff --git a/src/kits/tracker/BackgroundImage.cpp b/src/kits/tracker/BackgroundImage.cpp index f12d110bb0..200787533c 100644 --- a/src/kits/tracker/BackgroundImage.cpp +++ b/src/kits/tracker/BackgroundImage.cpp @@ -71,7 +71,7 @@ BackgroundImage::GetBackgroundImage(const BNode* node, bool isDesktop) return NULL; BMessage container; - char* buffer = new char [info.size]; + char* buffer = new char[info.size]; status_t error = node->ReadAttr(kBackgroundImageInfo, info.type, 0, buffer, (size_t)info.size); if (error == info.size) @@ -104,14 +104,16 @@ BackgroundImage::GetBackgroundImage(const BNode* node, bool isDesktop) be_control_look->SetBackgroundInfo(container); } - container.FindInt32(kBackgroundImageInfoWorkspaces, index, (int32*)&workspaces); + container.FindInt32(kBackgroundImageInfoWorkspaces, index, + (int32*)&workspaces); container.FindInt32(kBackgroundImageInfoMode, index, (int32*)&mode); - container.FindBool(kBackgroundImageInfoTextOutline, index, &textWidgetLabelOutline); + container.FindBool(kBackgroundImageInfoTextOutline, index, + &textWidgetLabelOutline); container.FindPoint(kBackgroundImageInfoOffset, index, &offset); BackgroundImage::BackgroundImageInfo* imageInfo = new - BackgroundImage::BackgroundImageInfo(workspaces, bitmap, mode, offset, - textWidgetLabelOutline); + BackgroundImage::BackgroundImageInfo(workspaces, bitmap, mode, + offset, textWidgetLabelOutline); if (!result) result = new BackgroundImage(node, isDesktop); diff --git a/src/kits/tracker/Bitmaps.cpp b/src/kits/tracker/Bitmaps.cpp index 2f4f68cbf5..a1483426cc 100644 --- a/src/kits/tracker/Bitmaps.cpp +++ b/src/kits/tracker/Bitmaps.cpp @@ -104,7 +104,8 @@ BImageResources::FinishResources(BResources* res) const const void* -BImageResources::LoadResource(type_code type, int32 id, size_t* out_size) const +BImageResources::LoadResource(type_code type, int32 id, + size_t* out_size) const { // Serialize execution. // Looks like BResources is not really thread safe. We should @@ -116,12 +117,14 @@ BImageResources::LoadResource(type_code type, int32 id, size_t* out_size) const // Return the resource. Because we never change the BResources // object, the returned data will not change until TTracker is // destroyed. - return const_cast(&fResources)->LoadResource(type, id, out_size); + return const_cast(&fResources)->LoadResource(type, id, + out_size); } const void* -BImageResources::LoadResource(type_code type, const char* name, size_t* out_size) const +BImageResources::LoadResource(type_code type, const char* name, + size_t* out_size) const { // Serialize execution. BAutolock lock(fLock); @@ -131,12 +134,14 @@ BImageResources::LoadResource(type_code type, const char* name, size_t* out_size // Return the resource. Because we never change the BResources // object, the returned data will not change until TTracker is // destroyed. - return const_cast(&fResources)->LoadResource(type, name, out_size); + return const_cast(&fResources)->LoadResource(type, name, + out_size); } status_t -BImageResources::GetIconResource(int32 id, icon_size size, BBitmap* dest) const +BImageResources::GetIconResource(int32 id, icon_size size, + BBitmap* dest) const { size_t length = 0; const void* data; @@ -144,8 +149,10 @@ BImageResources::GetIconResource(int32 id, icon_size size, BBitmap* dest) const #ifdef __HAIKU__ // try to load vector icon data = LoadResource(B_VECTOR_ICON_TYPE, id, &length); - if (data != NULL && BIconUtils::GetVectorIcon((uint8*)data, length, dest) == B_OK) + if (data != NULL + && BIconUtils::GetVectorIcon((uint8*)data, length, dest) == B_OK) { return B_OK; + } #endif // fall back to R5 icon @@ -155,7 +162,8 @@ BImageResources::GetIconResource(int32 id, icon_size size, BBitmap* dest) const length = 0; data = LoadResource(size == B_LARGE_ICON ? 'ICON' : 'MICN', id, &length); - if (data == NULL || length != (size_t)(size == B_LARGE_ICON ? 1024 : 256)) { + if (data == NULL + || length != (size_t)(size == B_LARGE_ICON ? 1024 : 256)) { TRESPASS(); return B_ERROR; } @@ -212,7 +220,8 @@ BImageResources::find_image(void* memAddr) const status_t -BImageResources::GetBitmapResource(type_code type, int32 id, BBitmap** out) const +BImageResources::GetBitmapResource(type_code type, int32 id, + BBitmap** out) const { *out = NULL; diff --git a/src/kits/tracker/ContainerWindow.cpp b/src/kits/tracker/ContainerWindow.cpp index 34d9b28550..4117d8588d 100644 --- a/src/kits/tracker/ContainerWindow.cpp +++ b/src/kits/tracker/ContainerWindow.cpp @@ -110,12 +110,14 @@ namespace BPrivate { class DraggableContainerIcon : public BView { public: - DraggableContainerIcon(BRect rect, const char* name, uint32 resizeMask); + DraggableContainerIcon(BRect rect, const char* name, + uint32 resizeMask); virtual void AttachedToWindow(); virtual void MouseDown(BPoint where); virtual void MouseUp(BPoint where); - virtual void MouseMoved(BPoint point, uint32 /*transit*/, const BMessage* message); + virtual void MouseMoved(BPoint point, uint32 /*transit*/, + const BMessage* message); virtual void FrameMoved(BPoint newLocation); virtual void Draw(BRect updateRect); @@ -215,7 +217,8 @@ CompareLabels(const BMenuItem* item1, const BMenuItem* item2) static bool -AddOneAddon(const Model* model, const char* name, uint32 shortcut, bool primary, void* context) +AddOneAddon(const Model* model, const char* name, uint32 shortcut, + bool primary, void* context) { AddOneAddonParams* params = (AddOneAddonParams*)context; @@ -249,14 +252,16 @@ AddOnThread(BMessage* refsMessage, entry_ref addonRef, entry_ref dirRef) image_id addonImage = load_add_on(path.Path()); if (addonImage >= 0) { void (*processRefs)(entry_ref, BMessage*, void*); - result = get_image_symbol(addonImage, "process_refs", 2, (void**)&processRefs); + result = get_image_symbol(addonImage, "process_refs", 2, + (void**)&processRefs); #ifndef __INTEL__ if (result < 0) { PRINT(("trying old legacy ppc signature\n")); // try old-style addon signature result = get_image_symbol(addonImage, - "process_refs__F9entry_refP8BMessagePv", 2, (void**)&processRefs); + "process_refs__F9entry_refP8BMessagePv", 2, + (void**)&processRefs); } #endif @@ -279,8 +284,8 @@ AddOnThread(BMessage* refsMessage, entry_ref addonRef, entry_ref dirRef) buffer.ReplaceFirst("%error", strerror(result)); buffer.ReplaceFirst("%name", addonRef.name); - BAlert* alert = new BAlert("", buffer.String(), B_TRANSLATE("Cancel"), 0, 0, - B_WIDTH_AS_USUAL, B_WARNING_ALERT); + BAlert* alert = new BAlert("", buffer.String(), B_TRANSLATE("Cancel"), + 0, 0, B_WIDTH_AS_USUAL, B_WARNING_ALERT); alert->SetShortcut(0, B_ESCAPE); alert->Go(); @@ -946,10 +951,12 @@ BContainerWindow::Init(const BMessage* message) float iconSize = fMenuBar->Bounds().Height() - 2; if (iconSize < 16) iconSize = 16; - float iconPosY = 1 + (fMenuBar->Bounds().Height() - 2 - iconSize) / 2; - BView* icon = new DraggableContainerIcon(BRect(Bounds().Width() - 4 - iconSize + 1, - iconPosY, Bounds().Width() - 4, iconPosY + iconSize - 1), - "ThisContainer", B_FOLLOW_RIGHT); + float iconPosY = 1 + (fMenuBar->Bounds().Height() - 2 + - iconSize) / 2; + BView* icon = new DraggableContainerIcon(BRect(Bounds().Width() + - 4 - iconSize + 1, iconPosY, Bounds().Width() - 4, + iconPosY + iconSize - 1), "ThisContainer", + B_FOLLOW_RIGHT); fMenuBar->AddChild(icon); } } else { @@ -958,11 +965,12 @@ BContainerWindow::Init(const BMessage* message) } AddContextMenus(); - AddShortcut('T', B_COMMAND_KEY | B_SHIFT_KEY, new BMessage(kDelete), PoseView()); + AddShortcut('T', B_COMMAND_KEY | B_SHIFT_KEY, new BMessage(kDelete), + PoseView()); AddShortcut('K', B_COMMAND_KEY | B_SHIFT_KEY, new BMessage(kCleanupAll), PoseView()); - AddShortcut('Q', B_COMMAND_KEY | B_OPTION_KEY | B_SHIFT_KEY | B_CONTROL_KEY, - new BMessage(kQuitTracker)); + AddShortcut('Q', B_COMMAND_KEY | B_OPTION_KEY | B_SHIFT_KEY + | B_CONTROL_KEY, new BMessage(kQuitTracker)); AddShortcut(B_DOWN_ARROW, B_COMMAND_KEY, new BMessage(kOpenSelection), PoseView()); @@ -971,9 +979,12 @@ BContainerWindow::Init(const BMessage* message) #if DEBUG // add some debugging shortcuts - AddShortcut('D', B_COMMAND_KEY | B_CONTROL_KEY, new BMessage('dbug'), PoseView()); - AddShortcut('C', B_COMMAND_KEY | B_CONTROL_KEY, new BMessage('dpcc'), PoseView()); - AddShortcut('F', B_COMMAND_KEY | B_CONTROL_KEY, new BMessage('dpfl'), PoseView()); + AddShortcut('D', B_COMMAND_KEY | B_CONTROL_KEY, new BMessage('dbug'), + PoseView()); + AddShortcut('C', B_COMMAND_KEY | B_CONTROL_KEY, new BMessage('dpcc'), + PoseView()); + AddShortcut('F', B_COMMAND_KEY | B_CONTROL_KEY, new BMessage('dpfl'), + PoseView()); AddShortcut('F', B_COMMAND_KEY | B_CONTROL_KEY | B_OPTION_KEY, new BMessage('dpfL'), PoseView()); #endif @@ -1007,7 +1018,8 @@ BContainerWindow::Init(const BMessage* message) void BContainerWindow::RestoreState() { - SetSizeLimits(kContainerWidthMinLimit, 10000, kContainerWindowHeightLimit, 10000); + SetSizeLimits(kContainerWidthMinLimit, 10000, + kContainerWindowHeightLimit, 10000); UpdateTitle(); @@ -1022,7 +1034,8 @@ BContainerWindow::RestoreState() void BContainerWindow::RestoreState(const BMessage &message) { - SetSizeLimits(kContainerWidthMinLimit, 10000, kContainerWindowHeightLimit, 10000); + SetSizeLimits(kContainerWidthMinLimit, 10000, + kContainerWindowHeightLimit, 10000); UpdateTitle(); @@ -1057,7 +1070,8 @@ BContainerWindow::RestoreStateCommon() if (!fBackgroundImage && !isDesktop && DefaultStateSourceNode(kDefaultFolderTemplate, &defaultingNode)) // look for background image info in the source for defaults - fBackgroundImage = BackgroundImage::GetBackgroundImage(&defaultingNode, isDesktop); + fBackgroundImage + = BackgroundImage::GetBackgroundImage(&defaultingNode, isDesktop); } @@ -1075,7 +1089,8 @@ BContainerWindow::UpdateTitle() SetTitle(TargetModel()->Name()); if (Navigator()) - Navigator()->UpdateLocation(PoseView()->TargetModel(), kActionUpdatePath); + Navigator()->UpdateLocation(PoseView()->TargetModel(), + kActionUpdatePath); } @@ -1121,7 +1136,8 @@ BContainerWindow::FrameResized(float, float) if (offsetY < 0 && PoseView()->Bounds().bottom > extent.bottom && Bounds().Height() > fPreviousBounds.Height()) scroll.y - = max_c(fPreviousBounds.Height() - Bounds().Height(), offsetY); + = max_c(fPreviousBounds.Height() - Bounds().Height(), + offsetY); if (scroll != B_ORIGIN) PoseView()->ScrollBy(scroll.x, scroll.y); @@ -1154,7 +1170,8 @@ BContainerWindow::ViewModeChanged(uint32 oldMode, uint32 newMode) { BView* view = FindView("MenuBar"); if (view != NULL) { - // make sure the draggable icon hides if it doesn't have space left anymore + // make sure the draggable icon hides if it doesn't + // have space left anymore view = view->FindView("ThisContainer"); if (view != NULL) view->FrameMoved(view->Frame().LeftTop()); @@ -1248,8 +1265,10 @@ BContainerWindow::GetLayoutState(BNode* node, BMessage* message) continue; char* buffer = new char[info.size]; - if (node->ReadAttr(attrName, info.type, 0, buffer, (size_t)info.size) == info.size) + if (node->ReadAttr(attrName, info.type, 0, buffer, + (size_t)info.size) == info.size) { message->AddData(attrName, info.type, buffer, (ssize_t)info.size); + } delete [] buffer; } return B_OK; diff --git a/src/kits/tracker/DesktopPoseView.cpp b/src/kits/tracker/DesktopPoseView.cpp index ad9bedf2eb..708be1ed41 100644 --- a/src/kits/tracker/DesktopPoseView.cpp +++ b/src/kits/tracker/DesktopPoseView.cpp @@ -241,7 +241,8 @@ DesktopPoseView::AdaptToVolumeChange(BMessage* message) entryMessage.AddInt32("opcode", B_ENTRY_REMOVED); entry_ref ref; if (entry.GetRef(&ref) == B_OK) { - BContainerWindow* disksWindow = tracker->FindContainerWindow(&ref); + BContainerWindow* disksWindow + = tracker->FindContainerWindow(&ref); if (disksWindow) { disksWindow->Lock(); disksWindow->Close(); @@ -252,7 +253,8 @@ DesktopPoseView::AdaptToVolumeChange(BMessage* message) entryMessage.AddInt64("node", model.NodeRef()->node); entryMessage.AddInt64("directory", model.EntryRef()->directory); entryMessage.AddString("name", model.EntryRef()->name); - BContainerWindow* deskWindow = dynamic_cast(Window()); + BContainerWindow* deskWindow + = dynamic_cast(Window()); if (deskWindow) deskWindow->PostMessage(&entryMessage, deskWindow->PoseView()); } diff --git a/src/kits/tracker/FSClipboard.cpp b/src/kits/tracker/FSClipboard.cpp index f20f7b188a..8b8793c2e2 100644 --- a/src/kits/tracker/FSClipboard.cpp +++ b/src/kits/tracker/FSClipboard.cpp @@ -195,8 +195,8 @@ FSClipboardClear() */ uint32 -FSClipboardAddPoses(const node_ref* directory, PoseList* list, uint32 moveMode, - bool clearClipboard) +FSClipboardAddPoses(const node_ref* directory, PoseList* list, + uint32 moveMode, bool clearClipboard) { uint32 refsAdded = 0; int32 listCount = list->CountItems(); @@ -409,13 +409,16 @@ FSClipboardPaste(Model* model, uint32 linksMode) // we need this data later on MakeModeNameFromRefName(modeName, refName); - if (!linksMode && clip->FindInt32(modeName, (int32*)&moveMode) != B_OK) + if (!linksMode && clip->FindInt32(modeName, (int32*)&moveMode) + != B_OK) { continue; + } BEntry entry(&ref); uint32 newMoveMode = 0; - bool sameDirectory = destNodeRef->device == ref.device && destNodeRef->node == ref.directory; + bool sameDirectory = destNodeRef->device == ref.device + && destNodeRef->node == ref.directory; if (!entry.Exists()) { // The entry doesn't exist anymore, so we'll remove @@ -435,9 +438,10 @@ FSClipboardPaste(Model* model, uint32 linksMode) copyList->AddItem(new entry_ref(ref)); } - // if the entry should have been removed from its directory, - // we want to copy that entry next time, no matter if the - // items don't have to be moved at all (source == target) + // if the entry should have been removed from its + // directory, we want to copy that entry next time, no + // matter if the items don't have to be moved at all + // (source == target) if (moveMode == kMoveSelectionTo) newMoveMode = kCopySelectionTo; } @@ -449,8 +453,8 @@ FSClipboardPaste(Model* model, uint32 linksMode) TClipboardNodeRef clipNode; MakeNodeFromName(&clipNode.node, modeName); clipNode.moveMode = kDelete; - updateMessage->AddData("tcnode", T_CLIPBOARD_NODE, &clipNode, - sizeof(TClipboardNodeRef), true); + updateMessage->AddData("tcnode", T_CLIPBOARD_NODE, + &clipNode, sizeof(TClipboardNodeRef), true); } } be_clipboard->Commit(); @@ -470,7 +474,7 @@ FSClipboardPaste(Model* model, uint32 linksMode) if (model->IsRoot()) { BAlert* alert = new BAlert("", B_TRANSLATE("You must drop items on one of the disk icons " - "in the \"Disks\" window."), B_TRANSLATE("Cancel"), NULL, NULL, + "in the \"Disks\" window."), B_TRANSLATE("Cancel"), NULL, NULL, B_WIDTH_AS_USUAL, B_WARNING_ALERT); alert->SetShortcut(0, B_ESCAPE); alert->Go(); @@ -499,9 +503,10 @@ FSClipboardPaste(Model* model, uint32 linksMode) } // asynchronous calls take over ownership of the objects passed to it - if (moveList->CountItems() > 0) - FSMoveToFolder(moveList, new BEntry(entry), linksMode ? linksMode : kMoveSelectionTo); - else + if (moveList->CountItems() > 0) { + FSMoveToFolder(moveList, new BEntry(entry), + linksMode ? linksMode : kMoveSelectionTo); + } else delete moveList; if (copyList->CountItems() > 0) @@ -761,7 +766,8 @@ BClipboardRefsWatcher::Clear() //void -//BClipboardRefsWatcher::UpdatePoseViews(bool clearClipboard, const node_ref* node) +//BClipboardRefsWatcher::UpdatePoseViews(bool clearClipboard, +// const node_ref* node) //{ // BMessage message(kFSClipboardChanges); // message.AddInt32("device", node->device); diff --git a/src/kits/tracker/FSClipboard.h b/src/kits/tracker/FSClipboard.h index acb40126c1..01a88933f7 100644 --- a/src/kits/tracker/FSClipboard.h +++ b/src/kits/tracker/FSClipboard.h @@ -67,7 +67,7 @@ class BClipboardRefsWatcher : public BLooper { void UpdatePoseViews(BMessage* reportMessage); protected: - virtual void MessageReceived(BMessage*); + virtual void MessageReceived(BMessage*); private: bool fRefsInClipboard; @@ -87,10 +87,12 @@ void FSClipboardStartWatch(BMessenger target); void FSClipboardStopWatch(BMessenger target); void FSClipboardClear(); -uint32 FSClipboardAddPoses(const node_ref* directory, PoseList* list, uint32 moveMode, bool clearClipboard); +uint32 FSClipboardAddPoses(const node_ref* directory, PoseList* list, + uint32 moveMode, bool clearClipboard); uint32 FSClipboardRemovePoses(const node_ref* directory, PoseList* list); bool FSClipboardPaste(Model* model, uint32 linksMode = 0); void FSClipboardRemove(Model* model); -uint32 FSClipboardFindNodeMode(Model* model, bool autoLock, bool updateRefIfNeeded); +uint32 FSClipboardFindNodeMode(Model* model, bool autoLock, + bool updateRefIfNeeded); #endif // FS_CLIPBOARD_H diff --git a/src/kits/tracker/FSUndoRedo.cpp b/src/kits/tracker/FSUndoRedo.cpp index cf6f895803..b2b3c2c615 100644 --- a/src/kits/tracker/FSUndoRedo.cpp +++ b/src/kits/tracker/FSUndoRedo.cpp @@ -50,7 +50,8 @@ class UndoItemMove : public UndoItem { /** source - list of file(s) that were moved. Assumes ownership. * origfolder - location it was moved from */ - UndoItemMove(BObjectList* sourceList, BDirectory &target, BList* pointList); + UndoItemMove(BObjectList* sourceList, BDirectory &target, + BList* pointList); virtual ~UndoItemMove(); virtual status_t Undo(); @@ -72,10 +73,12 @@ class UndoItemFolder : public UndoItem { virtual status_t Redo(); private: - /* this ref has two different meanings in the different states of this object: - - Undo() - fRef indicates the folder that was created via FSCreateNewFolderIn(...) - - Redo() - fRef indicates the folder in which FSCreateNewFolderIn() should be performed - */ + // this ref has two different meanings in the different states of + // this object: + // - Undo() - fRef indicates the folder that was created via + // FSCreateNewFolderIn(...) + // - Redo() - fRef indicates the folder in which + // FSCreateNewFolderIn() should be performed entry_ref fRef; }; @@ -169,8 +172,8 @@ Undo::Remove() } -MoveCopyUndo::MoveCopyUndo(BObjectList* sourceList, BDirectory &dest, - BList* pointList, uint32 moveMode) +MoveCopyUndo::MoveCopyUndo(BObjectList* sourceList, + BDirectory &dest, BList* pointList, uint32 moveMode) { if (moveMode == kMoveSelectionTo) fUndo = new UndoItemMove(sourceList, dest, pointList); @@ -200,8 +203,8 @@ RenameVolumeUndo::RenameVolumeUndo(BVolume &volume, const char* newName) // #pragma mark - -UndoItemCopy::UndoItemCopy(BObjectList* sourceList, BDirectory &target, - BList* /*pointList*/, uint32 moveMode) +UndoItemCopy::UndoItemCopy(BObjectList* sourceList, + BDirectory &target, BList* /*pointList*/, uint32 moveMode) : fSourceList(*sourceList), fTargetList(*sourceList), @@ -264,8 +267,8 @@ UndoItemCopy::UpdateEntry(BEntry* entry, const char* name) // #pragma mark - -UndoItemMove::UndoItemMove(BObjectList* sourceList, BDirectory &target, - BList* /*pointList*/) +UndoItemMove::UndoItemMove(BObjectList* sourceList, + BDirectory &target, BList* /*pointList*/) : fSourceList(*sourceList) { @@ -293,7 +296,8 @@ UndoItemMove::Undo() ChangeListSource(*list, entry); // FSMoveToFolder() owns its arguments - FSMoveToFolder(list, new BEntry(&fSourceRef), FSUndoMoveMode(kMoveSelectionTo), NULL); + FSMoveToFolder(list, new BEntry(&fSourceRef), + FSUndoMoveMode(kMoveSelectionTo), NULL); return B_OK; } @@ -303,8 +307,8 @@ status_t UndoItemMove::Redo() { // FSMoveToFolder() owns its arguments - FSMoveToFolder(new BObjectList(fSourceList), new BEntry(&fTargetRef), - FSUndoMoveMode(kMoveSelectionTo), NULL); + FSMoveToFolder(new BObjectList(fSourceList), + new BEntry(&fTargetRef), FSUndoMoveMode(kMoveSelectionTo), NULL); return B_OK; } diff --git a/src/kits/tracker/FSUtils.h b/src/kits/tracker/FSUtils.h index da95902cb4..84e3889e9b 100644 --- a/src/kits/tracker/FSUtils.h +++ b/src/kits/tracker/FSUtils.h @@ -46,8 +46,8 @@ All rights reserved. #include "ObjectList.h" -// Note - APIs/code in FSUtils.h and FSUtils.cpp is slated for a major cleanup -// -- in other words, you will find a lot of ugly cruft in here +// APIs/code in FSUtils.h and FSUtils.cpp is slated for a major cleanup +// -- in other words, you will find a lot of ugly cruft in here class BDirectory; class BEntry; @@ -165,36 +165,39 @@ private: #endif _IMPEXP_TRACKER status_t FSCopyAttributesAndStats(BNode*, BNode*); -_IMPEXP_TRACKER void FSDuplicate(BObjectList* srcList, BList* pointList); -_IMPEXP_TRACKER void FSMoveToFolder(BObjectList* srcList, BEntry*, uint32 moveMode, - BList* pointList = NULL); -_IMPEXP_TRACKER void FSMakeOriginalName(char* name, BDirectory* destDir, const char* suffix); +_IMPEXP_TRACKER void FSDuplicate(BObjectList* srcList, + BList* pointList); +_IMPEXP_TRACKER void FSMoveToFolder(BObjectList* srcList, BEntry*, + uint32 moveMode, BList* pointList = NULL); +_IMPEXP_TRACKER void FSMakeOriginalName(char* name, BDirectory* destDir, + const char* suffix); _IMPEXP_TRACKER bool FSIsTrashDir(const BEntry*); _IMPEXP_TRACKER bool FSIsPrintersDir(const BEntry*); _IMPEXP_TRACKER bool FSIsDeskDir(const BEntry*); _IMPEXP_TRACKER bool FSIsHomeDir(const BEntry*); _IMPEXP_TRACKER bool FSIsRootDir(const BEntry*); -_IMPEXP_TRACKER void FSMoveToTrash(BObjectList* srcList, BList* pointList = NULL, - bool async = true); +_IMPEXP_TRACKER void FSMoveToTrash(BObjectList* srcList, + BList* pointList = NULL, bool async = true); // Deprecated void FSDeleteRefList(BObjectList*, bool, bool confirm = true); void FSDelete(entry_ref*, bool, bool confirm = true); void FSRestoreRefList(BObjectList* list, bool async); -_IMPEXP_TRACKER status_t FSLaunchItem(const entry_ref* application, const BMessage* refsReceived, - bool async, bool openWithOK); - // Preferred way of launching; only pass an actual application in , not - // a document; to open documents with the preferred app, pase 0 in and - // stuff all the document refs into - // Consider having silent mode that does not show alerts, just returns error code +_IMPEXP_TRACKER status_t FSLaunchItem(const entry_ref* application, + const BMessage* refsReceived, bool async, bool openWithOK); + // Preferred way of launching; only pass an actual application in + // , not a document; to open documents with the preferred + // app, pase 0 in and stuff all the document refs into + // Consider having silent mode that does not show alerts, + // just returns error code _IMPEXP_TRACKER status_t FSOpenWith(BMessage* listOfRefs); // runs the Open With window; pas a list of refs _IMPEXP_TRACKER void FSEmptyTrash(); -_IMPEXP_TRACKER status_t FSCreateNewFolderIn(const node_ref* destDir, entry_ref* newRef, - node_ref* new_node); +_IMPEXP_TRACKER status_t FSCreateNewFolderIn(const node_ref* destDir, + entry_ref* newRef, node_ref* new_node); _IMPEXP_TRACKER void FSCreateTrashDirs(); _IMPEXP_TRACKER status_t FSGetTrashDir(BDirectory* trashDir, dev_t volume); _IMPEXP_TRACKER status_t FSGetDeskDir(BDirectory* deskDir); @@ -218,23 +221,26 @@ enum ReadAttrResult { kReadAttrForeignOK }; -ReadAttrResult ReadAttr(const BNode*, const char* hostAttrName, const char* foreignAttrName, - type_code , off_t , void*, size_t , void (*swapFunc)(void*) = 0, - bool isForeign = false); - // Endian swapping ReadAttr call; endianness is determined by trying first the - // native attribute name, then the foreign one; an endian swapping function can - // be passed, if null data won't be swapped; if set the foreign endianness - // will be read directly without first trying the native one +ReadAttrResult ReadAttr(const BNode*, const char* hostAttrName, + const char* foreignAttrName, type_code, off_t, void*, size_t, + void (*swapFunc)(void*) = 0, bool isForeign = false); + // Endian swapping ReadAttr call; endianness is determined by trying + // first the native attribute name, then the foreign one; an endian + // swapping function can be passed, if null data won't be swapped; + // if set the foreign endianness will be read directly + // without first trying the native one -ReadAttrResult GetAttrInfo(const BNode*, const char* hostAttrName, const char* foreignAttrName, - type_code* = NULL, size_t* = NULL); +ReadAttrResult GetAttrInfo(const BNode*, const char* hostAttrName, + const char* foreignAttrName, type_code* = NULL, size_t* = NULL); status_t FSCreateNewFolder(const entry_ref*); status_t FSRecursiveCreateFolder(const char* path); -void FSMakeOriginalName(BString &name, const BDirectory* destDir, const char* suffix = 0); +void FSMakeOriginalName(BString &name, const BDirectory* destDir, + const char* suffix = 0); status_t TrackerLaunch(const entry_ref* app, bool async); -status_t TrackerLaunch(const BMessage* refs, bool async, bool okToRunOpenWith = true); +status_t TrackerLaunch(const BMessage* refs, bool async, + bool okToRunOpenWith = true); status_t TrackerLaunch(const entry_ref* app, const BMessage* refs, bool async, bool okToRunOpenWith = true); status_t LaunchBrokenLink(const char*, const BMessage*); @@ -243,9 +249,9 @@ status_t FSFindTrackerSettingsDir(BPath*, bool autoCreate = true); bool FSIsDeskDir(const BEntry*); -// two separate ifYouDoAction and toDoAction versions are needed for localization -// purposes. The first one is used in "If you do action ..." sentence, -// the second one in the "To do action" sentence. +// two separate ifYouDoAction and toDoAction versions are needed for +// localization purposes. The first one is used in "If you do action..." +// sentence, the second one in the "To do action" sentence. bool ConfirmChangeIfWellKnownDirectory(const BEntry* entry, const char* ifYouDoAction, const char* toDoAction, const char* toConfirmAction, bool dontAsk = false, @@ -254,12 +260,14 @@ bool ConfirmChangeIfWellKnownDirectory(const BEntry* entry, bool CheckDevicesEqual(const entry_ref* entry, const Model* targetModel); // Deprecated calls use newer calls above instead -_IMPEXP_TRACKER void FSLaunchItem(const entry_ref*, BMessage* = NULL, int32 workspace = -1); +_IMPEXP_TRACKER void FSLaunchItem(const entry_ref*, BMessage* = NULL, + int32 workspace = -1); _IMPEXP_TRACKER status_t FSLaunchItem(const entry_ref*, BMessage*, int32 workspace, bool asynch); _IMPEXP_TRACKER void FSOpenWithDocuments(const entry_ref* executableToLaunch, BMessage* documentEntryRefs); -_IMPEXP_TRACKER status_t FSLaunchUsing(const entry_ref* ref, BMessage* listOfRefs); +_IMPEXP_TRACKER status_t FSLaunchUsing(const entry_ref* ref, + BMessage* listOfRefs); // some extra directory_which values @@ -279,7 +287,8 @@ class WellKnowEntryList { // system hierarchy public: struct WellKnownEntry { - WellKnownEntry(const node_ref* node, directory_which which, const char* name) + WellKnownEntry(const node_ref* node, directory_which which, + const char* name) : node(*node), which(which), @@ -314,8 +323,8 @@ class WellKnowEntryList { WellKnowEntryList(); void AddOne(directory_which, const char* name); void AddOne(directory_which, const char* path, const char* name); - void AddOne(directory_which, directory_which base, const char* extension, - const char* name); + void AddOne(directory_which, directory_which base, + const char* extension, const char* name); std::vector entries; static WellKnowEntryList* self; diff --git a/src/kits/tracker/FavoritesMenu.cpp b/src/kits/tracker/FavoritesMenu.cpp index 44a0924840..294448a326 100644 --- a/src/kits/tracker/FavoritesMenu.cpp +++ b/src/kits/tracker/FavoritesMenu.cpp @@ -124,7 +124,8 @@ FavoritesMenu::AddNextItem() try { BPath path; - ThrowOnError( find_directory (B_USER_SETTINGS_DIRECTORY, &path, true) ); + ThrowOnError(find_directory(B_USER_SETTINGS_DIRECTORY, + &path, true)); path.Append(kGoDirectory); mkdir(path.Path(), 0777); @@ -169,7 +170,8 @@ FavoritesMenu::AddNextItem() if (item == NULL) return true; - item->SetLabel(ref.name); // this is the name of the link in the Go dir + item->SetLabel(ref.name); + // this is the name of the link in the Go dir if (!fAddedSeparatorForSection) { fAddedSeparatorForSection = true; @@ -214,7 +216,8 @@ FavoritesMenu::AddNextItem() if (!ShouldShowModel(&model)) return true; - BMenuItem* item = BNavMenu::NewModelItem(&model, fOpenFileMessage, fTarget); + BMenuItem* item = BNavMenu::NewModelItem(&model, + fOpenFileMessage, fTarget); if (item) { if (!fAddedSeparatorForSection) { fAddedSeparatorForSection = true; @@ -252,8 +255,10 @@ FavoritesMenu::AddNextItem() // don't add folders that are already in the GoTo section if (find_if(fUniqueRefCheck.begin(), fUniqueRefCheck.end(), - bind2nd(std::equal_to(), ref)) != fUniqueRefCheck.end()) + bind2nd(std::equal_to(), ref)) + != fUniqueRefCheck.end()) { continue; + } Model model(&ref, true); if (model.InitCheck() != B_OK) @@ -262,8 +267,8 @@ FavoritesMenu::AddNextItem() if (!ShouldShowModel(&model)) return true; - BMenuItem* item = BNavMenu::NewModelItem(&model, fOpenFolderMessage, - fTarget, true); + BMenuItem* item = BNavMenu::NewModelItem(&model, + fOpenFolderMessage, fTarget, true); if (item) { if (!fAddedSeparatorForSection) { fAddedSeparatorForSection = true; diff --git a/src/kits/tracker/FilePanelPriv.cpp b/src/kits/tracker/FilePanelPriv.cpp index 5131a96855..70d8cc3432 100644 --- a/src/kits/tracker/FilePanelPriv.cpp +++ b/src/kits/tracker/FilePanelPriv.cpp @@ -507,7 +507,8 @@ TFilePanel::AdjustButton() if (!button) return; - BTextControl* textControl = dynamic_cast(FindView("text view")); + BTextControl* textControl + = dynamic_cast(FindView("text view")); BObjectList* selectionList = fPoseView->SelectionList(); BString buttonText = fButtonText; bool enabled = false; @@ -522,7 +523,8 @@ TFilePanel::AdjustButton() enabled = true; buttonText = B_TRANSLATE("Open"); } else { - // insert the name of the selected model into the text field + // insert the name of the selected model into + // the text field textControl->SetText(model->Name()); textControl->MakeFocus(true); } @@ -736,30 +738,39 @@ TFilePanel::Init(const BMessage*) AddShortcut('W', B_COMMAND_KEY, new BMessage(kCancelButton)); AddShortcut('H', B_COMMAND_KEY, new BMessage(kSwitchToHome)); - AddShortcut('A', B_COMMAND_KEY | B_SHIFT_KEY, new BMessage(kShowSelectionWindow)); + AddShortcut('A', B_COMMAND_KEY | B_SHIFT_KEY, + new BMessage(kShowSelectionWindow)); AddShortcut('A', B_COMMAND_KEY, new BMessage(B_SELECT_ALL), PoseView()); - AddShortcut('S', B_COMMAND_KEY, new BMessage(kInvertSelection), PoseView()); + AddShortcut('S', B_COMMAND_KEY, new BMessage(kInvertSelection), + PoseView()); AddShortcut('Y', B_COMMAND_KEY, new BMessage(kResizeToFit), PoseView()); AddShortcut(B_DOWN_ARROW, B_COMMAND_KEY, new BMessage(kOpenDir)); - AddShortcut(B_DOWN_ARROW, B_COMMAND_KEY | B_OPTION_KEY, new BMessage(kOpenDir)); + AddShortcut(B_DOWN_ARROW, B_COMMAND_KEY | B_OPTION_KEY, + new BMessage(kOpenDir)); AddShortcut(B_UP_ARROW, B_COMMAND_KEY, new BMessage(kOpenParentDir)); - AddShortcut(B_UP_ARROW, B_COMMAND_KEY | B_OPTION_KEY, new BMessage(kOpenParentDir)); + AddShortcut(B_UP_ARROW, B_COMMAND_KEY | B_OPTION_KEY, + new BMessage(kOpenParentDir)); // New code to make buttons font sensitive rect = windRect; rect.top = rect.bottom - 35; rect.bottom -= 10; rect.right -= 25; - float default_width = be_plain_font->StringWidth(fButtonText.String()) + 20; - rect.left = (default_width > 75) ? (rect.right - default_width) : (rect.right - 75); + float default_width + = be_plain_font->StringWidth(fButtonText.String()) + 20; + rect.left = default_width > 75 + ? rect.right - default_width : rect.right - 75; - BButton* default_button = new BButton(rect, "default button", fButtonText.String(), - new BMessage(kDefaultButton), B_FOLLOW_RIGHT + B_FOLLOW_BOTTOM); + BButton* default_button = new BButton(rect, "default button", + fButtonText.String(), new BMessage(kDefaultButton), + B_FOLLOW_RIGHT + B_FOLLOW_BOTTOM); fBackView->AddChild(default_button); rect.right = rect.left -= 10; - float cancel_width = be_plain_font->StringWidth(B_TRANSLATE("Cancel")) + 20; - rect.left = (cancel_width > 75) ? (rect.right - cancel_width) : (rect.right - 75); + float cancel_width + = be_plain_font->StringWidth(B_TRANSLATE("Cancel")) + 20; + rect.left = cancel_width > 75 + ? rect.right - cancel_width : rect.right - 75; BButton* cancel_button = new BButton(rect, "cancel button", B_TRANSLATE("Cancel"), new BMessage(kCancelButton), @@ -804,7 +815,8 @@ void TFilePanel::RestoreState() { BNode defaultingNode; - if (DefaultStateSourceNode(kDefaultFilePanelTemplate, &defaultingNode, false)) { + if (DefaultStateSourceNode(kDefaultFilePanelTemplate, &defaultingNode, + false)) { AttributeStreamFileNode streamNodeSource(&defaultingNode); RestoreWindowState(&streamNodeSource); PoseView()->Init(&streamNodeSource); @@ -882,7 +894,8 @@ TFilePanel::AddFileContextMenus(BMenu* menu) new BMessage(B_CUT), 'X')); menu->AddItem(new BMenuItem(B_TRANSLATE("Copy"), new BMessage(B_COPY), 'C')); -// menu->AddItem(pasteItem = new BMenuItem("Paste", new BMessage(B_PASTE), 'V')); + //menu->AddItem(pasteItem = new BMenuItem("Paste", new BMessage(B_PASTE), + // 'V')); menu->SetTargetForItems(PoseView()); } @@ -898,10 +911,12 @@ TFilePanel::AddVolumeContextMenus(BMenu* menu) menu->AddItem(new BMenuItem(B_TRANSLATE("Edit name"), new BMessage(kEditItem), 'E')); menu->AddSeparatorItem(); - menu->AddItem(new BMenuItem(B_TRANSLATE("Cut"), new BMessage(B_CUT), 'X')); + menu->AddItem(new BMenuItem(B_TRANSLATE("Cut"), new BMessage(B_CUT), + 'X')); menu->AddItem(new BMenuItem(B_TRANSLATE("Copy"), new BMessage(B_COPY), 'C')); -// menu->AddItem(pasteItem = new BMenuItem("Paste", new BMessage(B_PASTE), 'V')); + //menu->AddItem(pasteItem = new BMenuItem("Paste", new BMessage(B_PASTE), + // 'V')); menu->SetTargetForItems(PoseView()); } @@ -955,7 +970,8 @@ TFilePanel::MenusBeginning() int32 count = PoseView()->SelectionList()->CountItems(); EnableNamedMenuItem(fMenuBar, kNewFolder, !TargetModel()->IsRoot()); - EnableNamedMenuItem(fMenuBar, kMoveToTrash, !TargetModel()->IsRoot() && count); + EnableNamedMenuItem(fMenuBar, kMoveToTrash, !TargetModel()->IsRoot() + && count); EnableNamedMenuItem(fMenuBar, kGetInfo, count != 0); EnableNamedMenuItem(fMenuBar, kEditItem, count == 1); @@ -977,9 +993,12 @@ TFilePanel::MenusEnded() void TFilePanel::ShowContextMenu(BPoint point, const entry_ref* ref, BView* view) { - EnableNamedMenuItem(fWindowContextMenu, kNewFolder, !TargetModel()->IsRoot()); - EnableNamedMenuItem(fWindowContextMenu, kOpenParentDir, !TargetModel()->IsRoot()); - EnableNamedMenuItem(fWindowContextMenu, kMoveToTrash, !TargetModel()->IsRoot()); + EnableNamedMenuItem(fWindowContextMenu, kNewFolder, + !TargetModel()->IsRoot()); + EnableNamedMenuItem(fWindowContextMenu, kOpenParentDir, + !TargetModel()->IsRoot()); + EnableNamedMenuItem(fWindowContextMenu, kMoveToTrash, + !TargetModel()->IsRoot()); _inherited::ShowContextMenu(point, ref, view); } @@ -998,7 +1017,8 @@ TFilePanel::SetButtonLabel(file_panel_button selector, const char* text) switch (selector) { case B_CANCEL_BUTTON: { - BButton* button = dynamic_cast(FindView("cancel button")); + BButton* button + = dynamic_cast(FindView("cancel button")); if (!button) break; @@ -1016,7 +1036,8 @@ TFilePanel::SetButtonLabel(file_panel_button selector, const char* text) { fButtonText = text; float delta = 0; - BButton* button = dynamic_cast(FindView("default button")); + BButton* button + = dynamic_cast(FindView("default button")); if (button) { float old_width = button->StringWidth(button->Label()); button->SetLabel(text); @@ -1043,7 +1064,8 @@ TFilePanel::SetSaveText(const char* text) if (!text) return; - BTextControl* textControl = dynamic_cast(FindView("text view")); + BTextControl* textControl + = dynamic_cast(FindView("text view")); textControl->SetText(text); textControl->TextView()->SelectAll(); } @@ -1060,9 +1082,9 @@ TFilePanel::MessageReceived(BMessage* message) if (message->FindRef("refs", &ref) == B_OK) { BEntry entry(&ref, true); if (entry.InitCheck() == B_OK) { - // Double-click on dir or link-to-dir ALWAYS opens the dir. - // If more than one dir is selected, the - // first is entered. + // Double-click on dir or link-to-dir ALWAYS opens the + // dir. If more than one dir is selected, the first is + // entered. if (entry.IsDirectory()) { entry.GetRef(&ref); bool isDesktop = SwitchDirToDesktopIfNeeded(ref); @@ -1075,7 +1097,8 @@ TFilePanel::MessageReceived(BMessage* message) // Otherwise, we have a file or a link to a file. // AdjustButton has already tested the flavor; // all we have to do is see if the button is enabled. - BButton* button = dynamic_cast(FindView("default button")); + BButton* button = dynamic_cast( + FindView("default button")); if (!button) break; @@ -1087,15 +1110,19 @@ TFilePanel::MessageReceived(BMessage* message) // Don't allow saves of multiple files if (count > 1) { ShowCenteredAlert( - B_TRANSLATE("Sorry, saving more than one item is not allowed."), + B_TRANSLATE( + "Sorry, saving more than one " + "item is not allowed."), B_TRANSLATE("Cancel")); } else { - // if we are a savepanel, set up the filepanel correctly - // then pass control so we follow the same path as if the user + // if we are a savepanel, set up the + // filepanel correctly then pass control + // so we follow the same path as if the user // clicked the save button - // set the 'name' fld to the current ref's name - // notify the panel that the default button should be enabled + // set the 'name' fld to the current ref's + // name notify the panel that the default + // button should be enabled SetSaveText(ref.name); SelectionChanged(); @@ -1144,8 +1171,10 @@ TFilePanel::MessageReceived(BMessage* message) case kAddCurrentDir: { BPath path; - if (find_directory (B_USER_SETTINGS_DIRECTORY, &path, true) != B_OK) + if (find_directory(B_USER_SETTINGS_DIRECTORY, &path, true) + != B_OK) { break; + } path.Append(kGoDirectory); BDirectory goDirectory(path.Path()); @@ -1155,7 +1184,8 @@ TFilePanel::MessageReceived(BMessage* message) entry.GetPath(&path); BSymLink link; - goDirectory.CreateSymLink(TargetModel()->Name(), path.Path(), &link); + goDirectory.CreateSymLink(TargetModel()->Name(), path.Path(), + &link); } break; } @@ -1163,8 +1193,10 @@ TFilePanel::MessageReceived(BMessage* message) case kEditFavorites: { BPath path; - if (find_directory (B_USER_SETTINGS_DIRECTORY, &path, true) != B_OK) + if (find_directory (B_USER_SETTINGS_DIRECTORY, &path, true) + != B_OK) { break; + } path.Append(kGoDirectory); BMessenger msgr(kTrackerSignature); @@ -1199,7 +1231,8 @@ TFilePanel::MessageReceived(BMessage* message) if (fIsSavePanel) { if (PoseView()->IsFocus() && PoseView()->SelectionList()->CountItems() == 1) { - Model* model = (PoseView()->SelectionList()->FirstItem())->TargetModel(); + Model* model = (PoseView()->SelectionList()-> + FirstItem())->TargetModel(); if (model->ResolveIfLink()->IsDirectory()) { PoseView()->CommitActivePose(); PoseView()->OpenSelection(); @@ -1215,13 +1248,17 @@ TFilePanel::MessageReceived(BMessage* message) case B_OBSERVER_NOTICE_CHANGE: { int32 observerWhat; - if (message->FindInt32("be:observe_change_what", &observerWhat) == B_OK) { + if (message->FindInt32("be:observe_change_what", &observerWhat) + == B_OK) { switch (observerWhat) { case kDesktopFilePanelRootChanged: { bool desktopIsRoot = true; - if (message->FindBool("DesktopFilePanelRoot", &desktopIsRoot) == B_OK) - TrackerSettings().SetDesktopFilePanelRoot(desktopIsRoot); + if (message->FindBool("DesktopFilePanelRoot", + &desktopIsRoot) == B_OK) { + TrackerSettings(). + SetDesktopFilePanelRoot(desktopIsRoot); + } SetTo(TargetModel()->EntryRef()); break; } @@ -1416,9 +1453,10 @@ TFilePanel::HandleSaveButton() fTextControl->TextView()->SelectAll(); return; } else { - // if this was invoked by a dbl click, it is an explicit replacement - // of the file. - BString str(B_TRANSLATE("The file \"%name\" already exists in the specified folder. Do you want to replace it?")); + // if this was invoked by a dbl click, it is an explicit + // replacement of the file. + BString str(B_TRANSLATE("The file \"%name\" already exists in " + "the specified folder. Do you want to replace it?")); str.ReplaceFirst("%name", fTextControl->Text()); if (ShowCenteredAlert(str.String(), B_TRANSLATE("Cancel"), @@ -1512,8 +1550,10 @@ TFilePanel::HandleOpenButton() if (((fNodeFlavors & B_DIRECTORY_NODE) != 0 && model->ResolveIfLink()->IsDirectory()) || ((fNodeFlavors & B_SYMLINK_NODE) != 0 && model->IsSymLink()) - || ((fNodeFlavors & B_FILE_NODE) != 0 && model->ResolveIfLink()->IsFile())) + || ((fNodeFlavors & B_FILE_NODE) != 0 + && model->ResolveIfLink()->IsFile())) { message.AddRef("refs", model->EntryRef()); + } } OpenSelectionCommon(&message); @@ -1550,7 +1590,8 @@ TFilePanel::WindowActivated(bool active) // #pragma mark - -BFilePanelPoseView::BFilePanelPoseView(Model* model, BRect frame, uint32 resizeMask) +BFilePanelPoseView::BFilePanelPoseView(Model* model, BRect frame, + uint32 resizeMask) : BPoseView(model, frame, kListMode, resizeMask), fIsDesktop(model->IsDesktop()) { @@ -1583,8 +1624,8 @@ bool BFilePanelPoseView::FSNotification(const BMessage* message) { if (IsDesktopView()) { - // Pretty much copied straight from DesktopPoseView. Would be better - // if the code could be shared somehow. + // Pretty much copied straight from DesktopPoseView. + // Would be better if the code could be shared somehow. switch (message->FindInt32("opcode")) { case B_DEVICE_MOUNTED: { @@ -1600,7 +1641,8 @@ BFilePanelPoseView::FSNotification(const BMessage* message) break; if (settings.MountVolumesOntoDesktop() - && (!volume.IsShared() || settings.MountSharedVolumesOntoDesktop())) { + && (!volume.IsShared() + || settings.MountSharedVolumesOntoDesktop())) { // place an icon for the volume onto the desktop CreateVolumePose(&volume, true); } @@ -1692,7 +1734,8 @@ BFilePanelPoseView::AdaptToVolumeChange(BMessage* message) message->FindBool("ShowDisksIcon", &showDisksIcon); message->FindBool("MountVolumesOntoDesktop", &mountVolumesOnDesktop); - message->FindBool("MountSharedVolumesOntoDesktop", &mountSharedVolumesOntoDesktop); + message->FindBool("MountSharedVolumesOntoDesktop", + &mountSharedVolumesOntoDesktop); BEntry entry("/"); Model model(&entry); @@ -1725,7 +1768,8 @@ BFilePanelPoseView::AdaptToDesktopIntegrationChange(BMessage* message) bool mountSharedVolumesOntoDesktop = true; message->FindBool("MountVolumesOntoDesktop", &mountVolumesOnDesktop); - message->FindBool("MountSharedVolumesOntoDesktop", &mountSharedVolumesOntoDesktop); + message->FindBool("MountSharedVolumesOntoDesktop", + &mountSharedVolumesOntoDesktop); ShowVolumes(false, mountSharedVolumesOntoDesktop); ShowVolumes(mountVolumesOnDesktop, mountSharedVolumesOntoDesktop); diff --git a/src/kits/tracker/FilePanelPriv.h b/src/kits/tracker/FilePanelPriv.h index b9de5c944b..7f4b242fcc 100644 --- a/src/kits/tracker/FilePanelPriv.h +++ b/src/kits/tracker/FilePanelPriv.h @@ -122,7 +122,8 @@ protected: virtual void WindowActivated(bool state); static filter_result FSFilter(BMessage*, BHandler**, BMessageFilter*); - static filter_result MessageDropFilter(BMessage*, BHandler**, BMessageFilter*); + static filter_result MessageDropFilter(BMessage*, BHandler**, + BMessageFilter*); int32 ShowCenteredAlert(const char* text, const char* button1, const char* button2 = NULL, const char* button3 = NULL); diff --git a/src/kits/tracker/FindPanel.cpp b/src/kits/tracker/FindPanel.cpp index 55643e2a4b..bc530d9c12 100644 --- a/src/kits/tracker/FindPanel.cpp +++ b/src/kits/tracker/FindPanel.cpp @@ -106,7 +106,8 @@ namespace BPrivate { class MostUsedNames { public: - MostUsedNames(const char* fileName, const char* directory, int32 maxCount = 5); + MostUsedNames(const char* fileName, const char* directory, + int32 maxCount = 5); ~MostUsedNames(); bool ObtainList(BList* list); @@ -175,8 +176,8 @@ MoreOptionsStruct::QueryTemporary(const BNode* node) FindWindow::FindWindow(const entry_ref* newRef, bool editIfTemplateOnly) : - BWindow(kInitialRect, B_TRANSLATE("Find"), B_TITLED_WINDOW, B_NOT_RESIZABLE - | B_NOT_ZOOMABLE), + BWindow(kInitialRect, B_TRANSLATE("Find"), B_TITLED_WINDOW, + B_NOT_RESIZABLE | B_NOT_ZOOMABLE), fFile(TryOpening(newRef)), fFromTemplate(false), fEditTemplateOnly(false), @@ -218,7 +219,8 @@ FindWindow::FindWindow(const entry_ref* newRef, bool editIfTemplateOnly) fFromTemplate = IsQueryTemplate(fFile); - fBackground = new FindPanel(Bounds(), fFile, this, fFromTemplate, fEditTemplateOnly); + fBackground = new FindPanel(Bounds(), fFile, this, fFromTemplate, + fEditTemplateOnly); AddChild(fBackground); } @@ -292,8 +294,10 @@ const char* FindWindow::QueryName() const { if (fFromTemplate) { - if (!fQueryNameFromTemplate.Length()) - fFile->ReadAttrString(kAttrQueryTemplateName, &fQueryNameFromTemplate); + if (!fQueryNameFromTemplate.Length()) { + fFile->ReadAttrString(kAttrQueryTemplateName, + &fQueryNameFromTemplate); + } return fQueryNameFromTemplate.String(); } @@ -375,7 +379,8 @@ FindWindow::SaveQueryAttributes(BNode* file, bool queryTemplate) // save date/time info for recent query support and transient query killer int32 currentTime = (int32)time(0); - file->WriteAttr(kAttrQueryLastChange, B_INT32_TYPE, 0, ¤tTime, sizeof(int32)); + file->WriteAttr(kAttrQueryLastChange, B_INT32_TYPE, 0, ¤tTime, + sizeof(int32)); int32 tmp = 1; file->WriteAttr("_trk/recentQuery", B_INT32_TYPE, 0, &tmp, sizeof(int32)); } @@ -393,7 +398,8 @@ FindWindow::SaveQueryAsAttributes(BNode* file, BEntry* entry, bool queryTemplate // and the file's location FSSetPoseLocation(entry, *oldLocation); - BNodeInfo(file).SetType(queryTemplate ? B_QUERY_TEMPLATE_MIMETYPE : B_QUERY_MIMETYPE); + BNodeInfo(file).SetType(queryTemplate + ? B_QUERY_TEMPLATE_MIMETYPE : B_QUERY_MIMETYPE); BString predicate; bool dynamicDate; @@ -509,7 +515,8 @@ FindWindow::Find() } int32 currentTime = (int32)time(0); - fFile->WriteAttr(kAttrQueryLastChange, B_INT32_TYPE, 0, ¤tTime, sizeof(int32)); + fFile->WriteAttr(kAttrQueryLastChange, B_INT32_TYPE, 0, ¤tTime, + sizeof(int32)); // tell the tracker about it BMessage message(B_REFS_RECEIVED); @@ -683,7 +690,8 @@ FindPanel::FindPanel(BRect frame, BFile* node, FindWindow* parent, BMessenger self(this); fRecentQueries = new BPopUpMenu("RecentQueries"); - FindPanel::AddRecentQueries(fRecentQueries, true, &self, kSwitchToQueryTemplate); + FindPanel::AddRecentQueries(fRecentQueries, true, &self, + kSwitchToQueryTemplate); AddChild(new MiniMenuField(rect, "RecentQueries", fRecentQueries)); @@ -741,8 +749,8 @@ FindPanel::FindPanel(BRect frame, BFile* node, FindWindow* parent, B_TRANSLATE_NOCOLLECT(kDragNDropActionSpecifiers[1])); BMessenger self(this); - fDraggableIcon = new DraggableQueryIcon(DraggableIcon::PreferredRect(draggableIconOrigin, - B_LARGE_ICON), "saveHere", &dragNDropMessage, + fDraggableIcon = new DraggableQueryIcon(DraggableIcon::PreferredRect( + draggableIconOrigin, B_LARGE_ICON), "saveHere", &dragNDropMessage, self, B_FOLLOW_LEFT | B_FOLLOW_BOTTOM); AddChild(fDraggableIcon); } @@ -769,8 +777,8 @@ FindPanel::FindPanel(BRect frame, BFile* node, FindWindow* parent, rect = expandedBounds; rect.right = rect.left + 200; rect.bottom = rect.top + 20;; - fQueryName = new BTextControl(rect, "queryName", B_TRANSLATE("Query name:"), - "", 0); + fQueryName = new BTextControl(rect, "queryName", + B_TRANSLATE("Query name:"), "", 0); fQueryName->SetDivider(fQueryName->StringWidth(fQueryName->Label()) + 5); fMoreOptionsPane->AddItem(fQueryName, 1); FillCurrentQueryName(fQueryName, parent); @@ -838,9 +846,9 @@ FindPanel::AttachedToWindow() fQueryName->SetTarget(this); fLatch->SetTarget(fMoreOptionsPane); RestoreMimeTypeMenuSelection(node); - // preselect the mime we used the last time - // have to do it here because AddByAttributeItems will build different - // menus based on which mime type is preselected + // preselect the mime we used the last time have to do it here + // because AddByAttributeItems will build different menus based + // on which mime type is preselected RestoreWindowState(node); if (!Window()->CurrentFocus()) { @@ -971,9 +979,10 @@ FindPanel::ShowVolumeMenuLabel() tmpItem = item; } } + if (countSelected == 0) { // no disk selected, for now revert to search all disks - // ToDo: + // TODO: // show no disks here and add a check that will not let the // query go if the user doesn't pick at least one fVolMenu->ItemAt(0)->SetMarked(true); @@ -997,51 +1006,49 @@ FindPanel::MessageReceived(BMessage* message) switch (message->what) { case kVolumeItem: - { - // volume changed - BMenuItem* invokedItem; - dev_t dev; - if (message->FindPointer("source", (void**)&invokedItem) != B_OK) - return; + { + // volume changed + BMenuItem* invokedItem; + dev_t dev; + if (message->FindPointer("source", (void**)&invokedItem) != B_OK) + return; - if (message->FindInt32("device", &dev) != B_OK) - break; + if (message->FindInt32("device", &dev) != B_OK) + break; - BMenu* menu = invokedItem->Menu(); - ASSERT(menu); + BMenu* menu = invokedItem->Menu(); + ASSERT(menu); - if (dev == -1) { + if (dev == -1) { + // all disks selected, uncheck everything else + int32 count = menu->CountItems(); + for (int32 index = 2; index < count; index++) + menu->ItemAt(index)->SetMarked(false); - // all disks selected, uncheck everything else - int32 count = menu->CountItems(); - for (int32 index = 2; index < count; index++) - menu->ItemAt(index)->SetMarked(false); + // make all disks the title and check it + PopUpMenuSetTitle(menu, menu->ItemAt(0)->Label()); + menu->ItemAt(0)->SetMarked(true); + } else { + // a specific volume selected, unmark "all disks" + menu->ItemAt(0)->SetMarked(false); - // make all disks the title and check it - PopUpMenuSetTitle(menu, menu->ItemAt(0)->Label()); - menu->ItemAt(0)->SetMarked(true); + // toggle mark on invoked item + int32 count = menu->CountItems(); + for (int32 index = 2; index < count; index++) { + BMenuItem* item = menu->ItemAt(index); - } else { - // a specific volume selected, unmark "all disks" - menu->ItemAt(0)->SetMarked(false); - - // toggle mark on invoked item - int32 count = menu->CountItems(); - for (int32 index = 2; index < count; index++) { - BMenuItem* item = menu->ItemAt(index); - - if (invokedItem == item) { - // we just selected this - bool wasMarked = item->IsMarked(); - item->SetMarked(!wasMarked); - } + if (invokedItem == item) { + // we just selected this + bool wasMarked = item->IsMarked(); + item->SetMarked(!wasMarked); } } - // make sure the right label is showing - ShowVolumeMenuLabel(); - - break; } + // make sure the right label is showing + ShowVolumeMenuLabel(); + + break; + } case kByAttributeItem: case kByNameItem: @@ -1058,102 +1065,110 @@ FindPanel::MessageReceived(BMessage* message) break; case kMIMETypeItem: - { - BMenuItem* item; - if (message->FindPointer("source", (void**)&item) == B_OK) { - // don't add the "All files and folders" to the list - if (fMimeTypeMenu->IndexOf(item) != 0) - gMostUsedMimeTypes.AddName(item->Label()); + { + BMenuItem* item; + if (message->FindPointer("source", (void**)&item) == B_OK) { + // don't add the "All files and folders" to the list + if (fMimeTypeMenu->IndexOf(item) != 0) + gMostUsedMimeTypes.AddName(item->Label()); - SetCurrentMimeType(item); - } - - // mime type switched - if (fMode != kByAttributeItem) - break; - - // the attributes for this type may be different, rip out the existing ones - RemoveAttrViewItems(); - - Window()->ResizeTo(Window()->Frame().Width(), - ViewHeightForMode(kByAttributeItem, fLatch->Value() != 0)); - - BBox* box = dynamic_cast(FindView("Box")); - ASSERT(box); - box->ResizeTo(box->Bounds().Width(), - BoxHeightForMode(kByAttributeItem, fLatch->Value() != 0)); - - AddAttrView(); - break; + SetCurrentMimeType(item); } + // mime type switched + if (fMode != kByAttributeItem) + break; + + // the attributes for this type may be different, + // rip out the existing ones + RemoveAttrViewItems(); + + Window()->ResizeTo(Window()->Frame().Width(), + ViewHeightForMode(kByAttributeItem, fLatch->Value() != 0)); + + BBox* box = dynamic_cast(FindView("Box")); + ASSERT(box); + box->ResizeTo(box->Bounds().Width(), + BoxHeightForMode(kByAttributeItem, fLatch->Value() != 0)); + + AddAttrView(); + break; + } + case kNameModifiedMessage: // the query name was edited, make the query permanent fTemporaryCheck->SetValue(0); break; case B_SAVE_REQUESTED: - { - // finish saving query template from a SaveAs panel - entry_ref ref; - status_t error = message->FindRef("refs", &ref); + { + // finish saving query template from a SaveAs panel + entry_ref ref; + status_t error = message->FindRef("refs", &ref); + if (error == B_OK) { + // direct entry selected, convert to parent dir and name + BEntry entry(&ref); + error = entry.GetParent(&entry); if (error == B_OK) { - // direct entry selected, convert to parent dir and name - BEntry entry(&ref); - error = entry.GetParent(&entry); - if (error == B_OK) { - entry.GetRef(&dir); - name = ref.name; - } - } else { - // parent dir and name selected - error = message->FindRef("directory", &dir); - if (error == B_OK) - error = message->FindString("name", &name); + entry.GetRef(&dir); + name = ref.name; } + } else { + // parent dir and name selected + error = message->FindRef("directory", &dir); if (error == B_OK) - SaveAsQueryOrTemplate(&dir, name, true); + error = message->FindString("name", &name); } + + if (error == B_OK) + SaveAsQueryOrTemplate(&dir, name, true); + break; + } case B_COPY_TARGET: - { - // finish drag&drop - const char* str; - const char* mimeType = NULL; - const char* actionSpecifier = NULL; - if (message->FindString("be:types", &str) == B_OK - && strcasecmp(str, B_FILE_MIME_TYPE) == 0 - && (message->FindString("be:actionspecifier", &actionSpecifier) == B_OK - || message->FindString("be:filetypes", &mimeType) == B_OK) - && message->FindString("name", &name) == B_OK - && message->FindRef("directory", &dir) == B_OK) { + { + // finish drag&drop + const char* str; + const char* mimeType = NULL; + const char* actionSpecifier = NULL; - bool query = false; - bool queryTemplate = false; + if (message->FindString("be:types", &str) == B_OK + && strcasecmp(str, B_FILE_MIME_TYPE) == 0 + && (message->FindString("be:actionspecifier", + &actionSpecifier) == B_OK + || message->FindString("be:filetypes", &mimeType) == B_OK) + && message->FindString("name", &name) == B_OK + && message->FindRef("directory", &dir) == B_OK) { - if (actionSpecifier - && strcasecmp(actionSpecifier, - B_TRANSLATE_NOCOLLECT( - kDragNDropActionSpecifiers[0])) == 0) { - query = true; - } else if (actionSpecifier - && strcasecmp(actionSpecifier, - B_TRANSLATE_NOCOLLECT( - kDragNDropActionSpecifiers[1])) == 0) { - queryTemplate = true; - } else if (mimeType && strcasecmp(mimeType, - kDragNDropTypes[0]) == 0) { - query = true; - } else if (mimeType && strcasecmp(mimeType, kDragNDropTypes[1]) == 0) - queryTemplate = true; + bool query = false; + bool queryTemplate = false; - if (query || queryTemplate) - SaveAsQueryOrTemplate(&dir, name, queryTemplate); + if (actionSpecifier + && strcasecmp(actionSpecifier, + B_TRANSLATE_NOCOLLECT( + kDragNDropActionSpecifiers[0])) == 0) { + query = true; + } else if (actionSpecifier + && strcasecmp(actionSpecifier, + B_TRANSLATE_NOCOLLECT( + kDragNDropActionSpecifiers[1])) == 0) { + queryTemplate = true; + } else if (mimeType && strcasecmp(mimeType, + kDragNDropTypes[0]) == 0) { + query = true; + } else if (mimeType && strcasecmp(mimeType, + kDragNDropTypes[1]) == 0) { + queryTemplate = true; } + + if (query || queryTemplate) + SaveAsQueryOrTemplate(&dir, name, queryTemplate); } + break; + } default: _inherited::MessageReceived(message); @@ -1163,11 +1178,13 @@ FindPanel::MessageReceived(BMessage* message) void -FindPanel::SaveAsQueryOrTemplate(const entry_ref* dir, const char* name, bool queryTemplate) +FindPanel::SaveAsQueryOrTemplate(const entry_ref* dir, const char* name, + bool queryTemplate) { BDirectory directory(dir); BFile file(&directory, name, O_RDWR | O_CREAT | O_TRUNC); - BNodeInfo(&file).SetType(queryTemplate ? B_QUERY_TEMPLATE_MIMETYPE : B_QUERY_MIMETYPE); + BNodeInfo(&file).SetType(queryTemplate + ? B_QUERY_TEMPLATE_MIMETYPE : B_QUERY_MIMETYPE); BMessage attach(kAttachFile); attach.AddRef("directory", dir); @@ -1194,7 +1211,8 @@ FindPanel::BuildAttrQuery(BQuery* query, bool &dynamicDate) const if (!textControl) return; - BMenuField* menuField = dynamic_cast(view->FindView("MenuField")); + BMenuField* menuField + = dynamic_cast(view->FindView("MenuField")); if (!menuField) return; @@ -1218,78 +1236,85 @@ FindPanel::BuildAttrQuery(BQuery* query, bool &dynamicDate) const break; case B_TIME_TYPE: - { - int flags = 0; - DEBUG_ONLY(time_t result =) - parsedate_etc(textControl->TextView()->Text(), -1, &flags); - dynamicDate = (flags & PARSEDATE_RELATIVE_TIME) != 0; - PRINT(("parsedate_etc - date is %srelative, %" - B_PRIdTIME "\n", - dynamicDate ? "" : "not ", result)); + { + int flags = 0; + DEBUG_ONLY(time_t result =) + parsedate_etc(textControl->TextView()->Text(), -1, + &flags); + dynamicDate = (flags & PARSEDATE_RELATIVE_TIME) != 0; + PRINT(("parsedate_etc - date is %srelative, %" + B_PRIdTIME "\n", + dynamicDate ? "" : "not ", result)); - query->PushDate(textControl->TextView()->Text()); - } + query->PushDate(textControl->TextView()->Text()); break; + } case B_BOOL_TYPE: - { - uint32 value; - if (strcasecmp(textControl->TextView()->Text(), "true") == 0) - value = 1; - else if (strcasecmp(textControl->TextView()->Text(), "true") == 0) - value = 1; - else - value = (uint32)atoi(textControl->TextView()->Text()); + { + uint32 value; + if (strcasecmp(textControl->TextView()->Text(), + "true") == 0) { + value = 1; + } else if (strcasecmp(textControl->TextView()->Text(), + "true") == 0) { + value = 1; + } else + value = (uint32)atoi(textControl->TextView()->Text()); - value %= 2; - query->PushUInt32(value); - } + value %= 2; + query->PushUInt32(value); break; + } case B_UINT8_TYPE: case B_UINT16_TYPE: case B_UINT32_TYPE: - query->PushUInt32((uint32)StringToScalar(textControl->TextView()->Text())); + query->PushUInt32((uint32)StringToScalar( + textControl->TextView()->Text())); break; case B_INT8_TYPE: case B_INT16_TYPE: case B_INT32_TYPE: - query->PushInt32((int32)StringToScalar(textControl->TextView()->Text())); + query->PushInt32((int32)StringToScalar( + textControl->TextView()->Text())); break; case B_UINT64_TYPE: - query->PushUInt64((uint64)StringToScalar(textControl->TextView()->Text())); + query->PushUInt64((uint64)StringToScalar( + textControl->TextView()->Text())); break; case B_OFF_T_TYPE: case B_INT64_TYPE: - query->PushInt64(StringToScalar(textControl->TextView()->Text())); + query->PushInt64(StringToScalar( + textControl->TextView()->Text())); break; case B_FLOAT_TYPE: - { - float floatVal; - sscanf(textControl->TextView()->Text(), "%f", &floatVal); - query->PushFloat(floatVal); - } + { + float floatVal; + sscanf(textControl->TextView()->Text(), "%f", &floatVal); + query->PushFloat(floatVal); break; + } case B_DOUBLE_TYPE: - { - double doubleVal; - sscanf(textControl->TextView()->Text(), "%lf", &doubleVal); - query->PushDouble(doubleVal); - } + { + double doubleVal; + sscanf(textControl->TextView()->Text(), "%lf", &doubleVal); + query->PushDouble(doubleVal); break; - + } } } query_op theOperator; BMenuItem* operatorItem = item->Submenu()->FindMarked(); if (operatorItem && operatorItem->Message() != NULL) { - operatorItem->Message()->FindInt32("operator", (int32*)&theOperator); + operatorItem->Message()->FindInt32("operator", + (int32*)&theOperator); query->PushOp(theOperator); } else query->PushOp(B_EQ); @@ -1297,7 +1322,8 @@ FindPanel::BuildAttrQuery(BQuery* query, bool &dynamicDate) const // add logic based on selection in Logic menufield if (index > 0) { TAttrView* prevView = fAttrViewList.ItemAt(index - 1); - menuField = dynamic_cast(prevView->FindView("Logic")); + menuField + = dynamic_cast(prevView->FindView("Logic")); if (menuField) { item = menuField->Menu()->FindMarked(); if (item) { @@ -1348,7 +1374,8 @@ FindPanel::GetByAttrPredicate(BQuery* query, bool &dynamicDate) const void FindPanel::GetDefaultName(BString &result) const { - BTextControl* textControl = dynamic_cast(FindView("TextControl")); + BTextControl* textControl + = dynamic_cast(FindView("TextControl")); switch (Mode()) { case kByNameItem: result.SetTo(B_TRANSLATE_COMMENT("Name = %name", @@ -1393,16 +1420,17 @@ void FindPanel::GetByNamePredicate(BQuery* query) const { ASSERT(Mode() == (int32)kByNameItem); - BTextControl* textControl = dynamic_cast(FindView("TextControl")); + BTextControl* textControl + = dynamic_cast(FindView("TextControl")); ASSERT(textControl); query->PushAttr("name"); query->PushString(textControl->TextView()->Text(), true); - if (strstr(textControl->TextView()->Text(), "*")) + if (strstr(textControl->TextView()->Text(), "*")) { // assume pattern is a regular expression and try doing an exact match query->PushOp(B_EQ); - else + } else query->PushOp(B_CONTAINS); PushMimeType(query); @@ -1446,14 +1474,16 @@ FindPanel::SwitchMode(uint32 mode) bounds.bottom -= 10; if (fLatch->Value()) bounds.bottom -= kMoreOptionsDelta; - box->ResizeTo(bounds.Width(), BoxHeightForMode(mode, fLatch->Value() != 0)); + box->ResizeTo(bounds.Width(), BoxHeightForMode(mode, + fLatch->Value() != 0)); RemoveByAttributeItems(); ShowOrHideMimeTypeMenu(); AddByNameOrFormulaItems(); if (buffer.Length()) { - ASSERT(mode == kByFormulaItem || oldMode == kByAttributeItem); + ASSERT(mode == kByFormulaItem + || oldMode == kByAttributeItem); BTextControl* textControl = dynamic_cast (FindView("TextControl")); textControl->SetText(buffer.String()); @@ -1492,9 +1522,11 @@ FindPanel::CurrentMimeType(const char** type) const // search for marked item in the list BMenuItem* item = MimeTypeMenu()->FindMarked(); - // if it's one of the most used items, ignore it - if (item != NULL && MimeTypeMenu()->IndexOf(item) != 0 && item->Submenu() == NULL) + if (item != NULL && MimeTypeMenu()->IndexOf(item) != 0 + && item->Submenu() == NULL) { + // if it's one of the most used items, ignore it item = NULL; + } if (item == NULL) { for (int32 index = MimeTypeMenu()->CountItems(); index-- > 0;) { @@ -1536,7 +1568,7 @@ FindPanel::SetCurrentMimeType(BMenuItem* item) fMimeTypeField->MenuItem()->SetLabel(item->Label()); BMenuItem* search; - for (int32 i = 2;(search = MimeTypeMenu()->ItemAt(i)) != NULL;i++) { + for (int32 i = 2; (search = MimeTypeMenu()->ItemAt(i)) != NULL; i++) { if (item == search || !search->Label()) continue; if (!strcmp(item->Label(),search->Label())) { @@ -1583,12 +1615,14 @@ FindPanel::SetCurrentMimeType(const char* label) if (submenu != NULL && !found) { for (int32 subIndex = submenu->CountItems(); subIndex-- > 0;) { BMenuItem* subItem = submenu->ItemAt(subIndex); - if (subItem->Label() != NULL && !strcmp(label, subItem->Label())) { + if (subItem->Label() != NULL + && !strcmp(label, subItem->Label())) { subItem->SetMarked(true); found = true; } } } + if (item->Label() != NULL && !strcmp(label, item->Label())) { item->SetMarked(true); return B_OK; @@ -1615,8 +1649,9 @@ FindPanel::AddOneMimeTypeToMenu(const ShortMimeInfo* info, void* castToMenu) BMessage* msg = new BMessage(kMIMETypeItem); msg->AddString("mimetype", info->InternalName()); - superItem->Submenu()->AddItem(new IconMenuItem(info->ShortDescription(), - msg, info->InternalName(), B_MINI_ICON)); + superItem->Submenu()->AddItem(new IconMenuItem( + info->ShortDescription(), msg, info->InternalName(), + B_MINI_ICON)); } return false; @@ -1628,8 +1663,8 @@ FindPanel::AddMimeTypesToMenu() { BMessage* itemMessage = new BMessage(kMIMETypeItem); itemMessage->AddString("mimetype", kAllMimeTypes); - MimeTypeMenu()->AddItem(new BMenuItem(B_TRANSLATE("All files and folders"), - itemMessage)); + MimeTypeMenu()->AddItem( + new BMenuItem(B_TRANSLATE("All files and folders"), itemMessage)); MimeTypeMenu()->AddSeparatorItem(); MimeTypeMenu()->ItemAt(0)->SetMarked(true); @@ -1777,8 +1812,8 @@ AddOneRecentItem(const entry_ref* ref, void* castToParams) void -FindPanel::AddRecentQueries(BMenu* menu, bool addSaveAsItem, const BMessenger* target, - uint32 what) +FindPanel::AddRecentQueries(BMenu* menu, bool addSaveAsItem, + const BMessenger* target, uint32 what) { BObjectList templates(10, true); BObjectList recentQueries(10, true); @@ -1788,7 +1823,8 @@ FindPanel::AddRecentQueries(BMenu* menu, bool addSaveAsItem, const BMessenger* t BVolume volume; roster.Rewind(); while (roster.GetNextVolume(&volume) == B_OK) { - if (volume.IsPersistent() && volume.KnowsQuery() && volume.KnowsAttr()) { + if (volume.IsPersistent() && volume.KnowsQuery() + && volume.KnowsAttr()) { BQuery query; query.SetVolume(&volume); @@ -2046,9 +2082,11 @@ FindPanel::SaveWindowState(BNode* node, bool editTemplate) saveMoreOptions.searchTrash = fSearchTrashCheck->Value() != 0; saveMoreOptions.temporary = fTemporaryCheck->Value() != 0; - if (node->WriteAttr(kAttrQueryMoreOptions, B_RAW_TYPE, 0, &saveMoreOptions, - sizeof(saveMoreOptions)) == sizeof(saveMoreOptions)) + if (node->WriteAttr(kAttrQueryMoreOptions, B_RAW_TYPE, 0, + &saveMoreOptions, + sizeof(saveMoreOptions)) == sizeof(saveMoreOptions)) { node->RemoveAttr(kAttrQueryMoreOptionsForeign); + } if (editTemplate) { if (UserSpecifiedName()) { @@ -2059,36 +2097,37 @@ FindPanel::SaveWindowState(BNode* node, bool editTemplate) switch (Mode()) { case kByAttributeItem: - { - BMessage message; - int32 count = fAttrViewList.CountItems(); - node->WriteAttr(kAttrQueryInitialNumAttrs, B_INT32_TYPE, 0, - &count, sizeof(int32)); + { + BMessage message; + int32 count = fAttrViewList.CountItems(); + node->WriteAttr(kAttrQueryInitialNumAttrs, B_INT32_TYPE, 0, + &count, sizeof(int32)); - for (int32 index = 0; index < count; index++) - fAttrViewList.ItemAt(index)->SaveState(&message, index); + for (int32 index = 0; index < count; index++) + fAttrViewList.ItemAt(index)->SaveState(&message, index); - ssize_t size = message.FlattenedSize(); - char* buffer = new char[size]; - status_t result = message.Flatten(buffer, size); - if (result == B_OK) { - node->WriteAttr(kAttrQueryInitialAttrs, B_MESSAGE_TYPE, 0, - buffer, (size_t)size); - } - delete [] buffer; + ssize_t size = message.FlattenedSize(); + char* buffer = new char[size]; + status_t result = message.Flatten(buffer, size); + if (result == B_OK) { + node->WriteAttr(kAttrQueryInitialAttrs, B_MESSAGE_TYPE, 0, + buffer, (size_t)size); } + + delete[] buffer; break; + } case kByNameItem: case kByFormulaItem: - { - BTextControl* textControl = dynamic_cast - (FindView("TextControl")); - ASSERT(textControl); - BString formula(textControl->TextView()->Text()); - node->WriteAttrString(kAttrQueryInitialString, &formula); - break; - } + { + BTextControl* textControl = dynamic_cast + (FindView("TextControl")); + ASSERT(textControl); + BString formula(textControl->TextView()->Text()); + node->WriteAttrString(kAttrQueryInitialString, &formula); + break; + } } } @@ -2169,7 +2208,8 @@ FindPanel::RestoreWindowState(const BNode* node) // set modification message after checking the temporary check box, // and filling out the text control so that we do not // always trigger clearing of the temporary check box. - fQueryName->SetModificationMessage(new BMessage(kNameModifiedMessage)); + fQueryName->SetModificationMessage( + new BMessage(kNameModifiedMessage)); } // get volumes to perform query on @@ -2178,23 +2218,25 @@ FindPanel::RestoreWindowState(const BNode* node) attr_info info; if (node->GetAttrInfo(kAttrQueryVolume, &info) == B_OK) { char* buffer = new char[info.size]; - if (node->ReadAttr(kAttrQueryVolume, B_MESSAGE_TYPE, 0, buffer, (size_t)info.size) - == info.size) { + if (node->ReadAttr(kAttrQueryVolume, B_MESSAGE_TYPE, 0, buffer, + (size_t)info.size) == info.size) { BMessage message; if (message.Unflatten(buffer) == B_OK) { for (int32 index = 0; ;index++) { ASSERT(index < 100); BVolume volume; - // match a volume with the info embedded in the message - status_t result = MatchArchivedVolume(&volume, &message, index); + // match a volume with the info embedded in + // the message + status_t result = MatchArchivedVolume(&volume, &message, + index); if (result == B_OK) { char name[256]; volume.GetName(name); SelectItemWithLabel(fVolMenu, name); searchAllVolumes = false; } else if (result != B_DEV_BAD_DRIVE_NUM) - // if B_DEV_BAD_DRIVE_NUM, the volume just isn't mounted this - // time around, keep looking for more + // if B_DEV_BAD_DRIVE_NUM, the volume just isn't + // mounted this time around, keep looking for more // if other error, bail break; } @@ -2208,37 +2250,40 @@ FindPanel::RestoreWindowState(const BNode* node) switch (Mode()) { case kByAttributeItem: - { - int32 count = InitialAttrCount(node); + { + int32 count = InitialAttrCount(node); - attr_info info; - if (node->GetAttrInfo(kAttrQueryInitialAttrs, &info) != B_OK) - break; - char* buffer = new char[info.size]; - if (node->ReadAttr(kAttrQueryInitialAttrs, B_MESSAGE_TYPE, 0, buffer, (size_t)info.size) - == info.size) { - BMessage message; - if (message.Unflatten(buffer) == B_OK) - for (int32 index = 0; index < count; index++) - fAttrViewList.ItemAt(index)->RestoreState(message, index); - } - delete [] buffer; + attr_info info; + if (node->GetAttrInfo(kAttrQueryInitialAttrs, &info) != B_OK) break; + char* buffer = new char[info.size]; + if (node->ReadAttr(kAttrQueryInitialAttrs, B_MESSAGE_TYPE, 0, + buffer, (size_t)info.size) == info.size) { + BMessage message; + if (message.Unflatten(buffer) == B_OK) + for (int32 index = 0; index < count; index++) { + fAttrViewList.ItemAt(index)->RestoreState(message, + index); + } } + delete[] buffer; + break; + } case kByNameItem: case kByFormulaItem: - { - BString buffer; - if (node->ReadAttrString(kAttrQueryInitialString, &buffer) == B_OK) { - BTextControl* textControl = dynamic_cast - (FindView("TextControl")); - ASSERT(textControl); + { + BString buffer; + if (node->ReadAttrString(kAttrQueryInitialString, &buffer) + == B_OK) { + BTextControl* textControl = dynamic_cast + (FindView("TextControl")); + ASSERT(textControl); - textControl->TextView()->SetText(buffer.String()); - } + textControl->TextView()->SetText(buffer.String()); } break; + } } // try to restore focus and possibly text selection @@ -2304,7 +2349,8 @@ FindPanel::AddByNameOrFormulaItems() BRect bounds(box->Bounds()); bounds.InsetBy(10, 10); - BTextControl* textControl = new BTextControl(bounds, "TextControl", "", "", NULL); + BTextControl* textControl = new BTextControl(bounds, "TextControl", + "", "", NULL); textControl->SetDivider(0.0f); box->AddChild(textControl); textControl->MakeFocus(); @@ -2353,7 +2399,8 @@ FindPanel::RemoveByAttributeItems() void FindPanel::ShowOrHideMimeTypeMenu() { - BMenuField* menuField = dynamic_cast(FindView("MimeTypeMenu")); + BMenuField* menuField + = dynamic_cast(FindView("MimeTypeMenu")); if (Mode() == (int32)kByFormulaItem && !menuField->IsHidden()) menuField->Hide(); else if (menuField->IsHidden()) @@ -2398,8 +2445,8 @@ TAttrView::TAttrView(BRect frame, int32 index) for (int32 i = 0; i < 5; i++) { message = new BMessage(kAttributeItem); message->AddInt32("operator", operators[i]); - submenu->AddItem(new BMenuItem(B_TRANSLATE_NOCOLLECT(operatorLabels[i]), - message)); + submenu->AddItem(new BMenuItem(B_TRANSLATE_NOCOLLECT( + operatorLabels[i]), message)); } // mark first item @@ -2464,7 +2511,7 @@ TAttrView::TAttrView(BRect frame, int32 index) AddChild(fTextControl); AddChild(fMenuField); - // add attributes from currently selected mimetype + // add attributes from currently selected mimetype } @@ -2558,7 +2605,8 @@ TAttrView::SaveState(BMessage* message, int32) if (field) { BMenuItem* item = field->Menu()->FindMarked(); ASSERT(item); - message->AddInt32("logicalRelation", item ? field->Menu()->IndexOf(item) : 0); + message->AddInt32("logicalRelation", + item ? field->Menu()->IndexOf(item) : 0); } } @@ -2618,7 +2666,8 @@ TAttrView::Draw(BRect) // draws the is/contains, etc. string bounds.left -= (width + 10); bounds.bottom -= 6; - DrawString(item->Submenu()->FindMarked()->Label(), bounds.LeftBottom()); + DrawString(item->Submenu()->FindMarked()->Label(), + bounds.LeftBottom()); } } @@ -2677,15 +2726,19 @@ TAttrView::AddAttributes(BMenu* menu, const BMimeType &mimeType) // go through each field in meta mime and add it to a menu for (int32 index = 0; ; index++) { const char* publicName; - if (attributeMessage.FindString("attr:public_name", index, &publicName) != B_OK) + if (attributeMessage.FindString("attr:public_name", index, + &publicName) != B_OK) { break; + } if (!attributeMessage.FindBool("attr:viewable")) continue; const char* attributeName; - if (attributeMessage.FindString("attr:name", index, &attributeName) != B_OK) + if (attributeMessage.FindString("attr:name", index, &attributeName) + != B_OK) { continue; + } int32 type; if (attributeMessage.FindInt32("attr:type", index, &type) != B_OK) @@ -2714,7 +2767,8 @@ TAttrView::AddAttributes(BMenu* menu, const BMimeType &mimeType) message = new BMessage(kAttributeItem); message->AddInt32("operator", B_NE); - submenu->AddItem(new BMenuItem(B_TRANSLATE("is not"), message)); + submenu->AddItem(new BMenuItem(B_TRANSLATE("is not"), + message)); submenu->SetTargetForItems(this); message = new BMessage(kAttributeItem); @@ -2942,12 +2996,14 @@ DeleteTransientQueriesTask::ProcessOneRef(Model* model) ASSERT(dynamic_cast(be_app)); // check that it is not showing - if (dynamic_cast(be_app)->EntryHasWindowOpen(model->EntryRef())) { + if (dynamic_cast(be_app)->EntryHasWindowOpen( + model->EntryRef())) { PRINT(("query %s, showing, can't delete\n", model->Name())); return false; } - PRINT(("query %s, old, temporary, not shownig - deleting\n", model->Name())); + PRINT(("query %s, old, temporary, not shownig - deleting\n", + model->Name())); BEntry entry(model->EntryRef()); entry.Remove(); @@ -2993,8 +3049,8 @@ DeleteTransientQueriesTask::StartUpTransientQueryCleaner() // #pragma mark - -RecentFindItemsMenu::RecentFindItemsMenu(const char* title, const BMessenger* target, - uint32 what) +RecentFindItemsMenu::RecentFindItemsMenu(const char* title, + const BMessenger* target, uint32 what) : BMenu(title, B_ITEMS_IN_COLUMN), fTarget(*target), fWhat(what) @@ -3029,7 +3085,8 @@ TrackerBuildRecentFindItemsMenu(const char* title) DraggableQueryIcon::DraggableQueryIcon(BRect frame, const char* name, - const BMessage* message, BMessenger messenger, uint32 resizeFlags, uint32 flags) + const BMessage* message, BMessenger messenger, uint32 resizeFlags, + uint32 flags) : DraggableIcon(frame, name, B_QUERY_MIMETYPE, B_LARGE_ICON, message, messenger, resizeFlags, flags) { @@ -3056,7 +3113,8 @@ DraggableQueryIcon::DragStarted(BMessage* dragMessage) // #pragma mark - -MostUsedNames::MostUsedNames(const char* fileName, const char* directory, int32 maxCount) +MostUsedNames::MostUsedNames(const char* fileName, const char* directory, + int32 maxCount) : fFileName(fileName), fDirectory(directory), @@ -3157,7 +3215,8 @@ MostUsedNames::AddName(const char* name) list_entry* entry = NULL; if (fList.CountItems() > fCount * 2) { - entry = static_cast(fList.RemoveItem(fList.CountItems() - 1)); + entry = static_cast( + fList.RemoveItem(fList.CountItems() - 1)); // is this the name we want to add here? if (strcmp(name, entry->name)) { @@ -3169,9 +3228,12 @@ MostUsedNames::AddName(const char* name) } if (entry == NULL) { - for (int32 i = 0; (entry = static_cast(fList.ItemAt(i))) != NULL; i++) + for (int32 i = 0; + (entry = static_cast(fList.ItemAt(i))) != NULL; + i++) { if (!strcmp(entry->name, name)) break; + } } if (entry == NULL) { diff --git a/src/kits/tracker/GroupedMenu.cpp b/src/kits/tracker/GroupedMenu.cpp index 8eb4dfbcb3..d781ee7338 100644 --- a/src/kits/tracker/GroupedMenu.cpp +++ b/src/kits/tracker/GroupedMenu.cpp @@ -176,8 +176,10 @@ TGroupedMenu::TGroupedMenu(const char* name) TGroupedMenu::~TGroupedMenu() { TMenuItemGroup* group; - while ((group = static_cast(fGroups.RemoveItem(0L))) != NULL) + while ((group = static_cast(fGroups.RemoveItem(0L))) + != NULL) { delete group; + } } @@ -247,7 +249,8 @@ TGroupedMenu::CountGroups() void -TGroupedMenu::AddGroupItem(TMenuItemGroup* group, BMenuItem* item, int32 atIndex) +TGroupedMenu::AddGroupItem(TMenuItemGroup* group, BMenuItem* item, + int32 atIndex) { int32 groupIndex = fGroups.IndexOf(group); bool addSeparator = false; @@ -257,7 +260,8 @@ TGroupedMenu::AddGroupItem(TMenuItemGroup* group, BMenuItem* item, int32 atIndex if (groupIndex > 0) { // add this group after an existing one TMenuItemGroup* previous = GroupAt(groupIndex - 1); - group->fFirstItemIndex = previous->fFirstItemIndex + previous->fItemsTotal; + group->fFirstItemIndex = previous->fFirstItemIndex + + previous->fItemsTotal; addSeparator = true; } else { // this is the first group @@ -283,7 +287,8 @@ TGroupedMenu::AddGroupItem(TMenuItemGroup* group, BMenuItem* item, int32 atIndex // insert item for real - AddItem(item, atIndex + group->fFirstItemIndex + (group->HasSeparator() ? 1 : 0)); + AddItem(item, + atIndex + group->fFirstItemIndex + (group->HasSeparator() ? 1 : 0)); // move the groups after this one @@ -320,4 +325,3 @@ TGroupedMenu::RemoveGroupItem(TMenuItemGroup* group, BMenuItem* item) group->fFirstItemIndex -= removedSeparator ? 2 : 1; } } - diff --git a/src/kits/tracker/IconCache.cpp b/src/kits/tracker/IconCache.cpp index bfdc610f3d..8cf9d8e195 100644 --- a/src/kits/tracker/IconCache.cpp +++ b/src/kits/tracker/IconCache.cpp @@ -242,13 +242,17 @@ IconCacheEntry::IconHitTest(BPoint where, IconDrawMode mode, icon_size size) con BBitmap* -IconCacheEntry::ConstructBitmap(BBitmap* constructFrom, IconDrawMode requestedMode, - IconDrawMode constructFromMode, icon_size size, LazyBitmapAllocator* lazyBitmap) +IconCacheEntry::ConstructBitmap(BBitmap* constructFrom, + IconDrawMode requestedMode, IconDrawMode constructFromMode, + icon_size size, LazyBitmapAllocator* lazyBitmap) { ASSERT(requestedMode == kSelected && constructFromMode == kNormalIcon); // for now - if (requestedMode == kSelected && constructFromMode == kNormalIcon) - return IconCache::sIconCache->MakeSelectedIcon(constructFrom, size, lazyBitmap); + + if (requestedMode == kSelected && constructFromMode == kNormalIcon) { + return IconCache::sIconCache->MakeSelectedIcon(constructFrom, size, + lazyBitmap); + } return NULL; } @@ -260,7 +264,8 @@ IconCacheEntry::ConstructBitmap(IconDrawMode requestedMode, icon_size size, { BBitmap* source = (size == B_MINI_ICON) ? fMiniIcon : fLargeIcon; ASSERT(source); - return ConstructBitmap(source, requestedMode, kNormalIcon, size, lazyBitmap); + return ConstructBitmap(source, requestedMode, kNormalIcon, size, + lazyBitmap); } @@ -303,14 +308,13 @@ IconCache::IconCache() } -// The following calls use the icon lookup sequence node-prefered app for node- -// metamime-preferred app for metamime to find an icon; +// The following calls use the icon lookup sequence node-prefered app for +// node-metamime-preferred app for metamime to find an icon; // if we are trying to get a specialized icon, we will first look for a normal -// icon in each of the locations, if we get a hit, we look for the specialized, -// if we don't find one, we try to auto-construct one, if we can't we assume the -// icon is not available -// for now the code only looks for normal icons, selected icons are auto-generated - +// icon in each of the locations, if we get a hit, we look for the +// specialized, if we don't find one, we try to auto-construct one, if we +// can't we assume the icon is not available for now the code only looks for +// normal icons, selected icons are auto-generated IconCacheEntry* IconCache::GetIconForPreferredApp(const char* fileTypeSignature, const char* preferredApp, IconDrawMode mode, icon_size size, @@ -336,20 +340,24 @@ IconCache::GetIconForPreferredApp(const char* fileTypeSignature, if (!entry || !entry->HaveIconBitmap(NORMAL_ICON_ONLY, size)) { - PRINT_DISK_HITS(("File %s; Line %d # hitting disk for preferredApp %s, type %s\n", + PRINT_DISK_HITS( + ("File %s; Line %d # hitting disk for preferredApp %s, type %s\n", __FILE__, __LINE__, preferredApp, fileTypeSignature)); BMimeType preferredAppType(preferredApp); BString signature(fileTypeSignature); signature.ToLower(); - if (preferredAppType.GetIconForType(signature.String(), lazyBitmap->Get(), - size) != B_OK) + if (preferredAppType.GetIconForType(signature.String(), + lazyBitmap->Get(), size) != B_OK) { return NULL; + } BBitmap* bitmap = lazyBitmap->Adopt(); if (!entry) { - PRINT_ADD_ITEM(("File %s; Line %d # adding entry for preferredApp %s, type %s\n", - __FILE__, __LINE__, preferredApp, fileTypeSignature)); + PRINT_ADD_ITEM( + ("File %s; Line %d # adding entry for preferredApp %s, " + "type %s\n", __FILE__, __LINE__, preferredApp, + fileTypeSignature)); entry = fSharedCache.AddItem(fileTypeSignature, preferredApp); } entry->SetIcon(bitmap, kNormalIcon, size); @@ -394,8 +402,10 @@ IconCache::GetIconFromMetaMime(const char* fileType, IconDrawMode mode, return NULL; SharedCacheEntry* aliasTo = NULL; - if (entry) - aliasTo = (SharedCacheEntry*)entry->ResolveIfAlias(&fSharedCache); + if (entry) { + aliasTo + = (SharedCacheEntry*)entry->ResolveIfAlias(&fSharedCache); + } // look for icon defined by preferred app from metamime aliasTo = (SharedCacheEntry*)GetIconForPreferredApp(fileType, @@ -407,7 +417,8 @@ IconCache::GetIconFromMetaMime(const char* fileType, IconDrawMode mode, // make an aliased entry so that the next time we get a // hit on the first FindItem in here if (!entry) { - PRINT_ADD_ITEM(("File %s; Line %d # adding entry as alias for type %s\n", + PRINT_ADD_ITEM( + ("File %s; Line %d # adding entry as alias for type %s\n", __FILE__, __LINE__, fileType)); entry = fSharedCache.AddItem(&aliasTo, fileType); entry->SetAliasFor(&fSharedCache, aliasTo); @@ -489,8 +500,9 @@ IconCache::GetIconFromFileTypes(ModelNodeLazyOpener* modelOpener, lazyBitmap, entry); #if DEBUG else - PRINT(("File %s; Line %d # failed to get supertype for type %s\n", - __FILE__, __LINE__, fileType)); + PRINT( + ("File %s; Line %d # failed to get supertype for " + "type %s\n", __FILE__, __LINE__, fileType)); #endif } } @@ -503,15 +515,20 @@ IconCache::GetIconFromFileTypes(ModelNodeLazyOpener* modelOpener, // make an aliased entry so that the next time we get a // hit and substitute a generic icon right away - PRINT_ADD_ITEM(("File %s; Line %d # adding entry as alias for preferredApp %s, type %s\n", + PRINT_ADD_ITEM( + ("File %s; Line %d # adding entry as alias for " + "preferredApp %s, type %s\n", __FILE__, __LINE__, nodePreferredApp, fileType)); - IconCacheEntry* aliasedEntry = fSharedCache.AddItem((SharedCacheEntry**)&entry, - fileType, nodePreferredApp); - aliasedEntry->SetAliasFor(&fSharedCache, (SharedCacheEntry*)entry); + IconCacheEntry* aliasedEntry + = fSharedCache.AddItem((SharedCacheEntry**)&entry, fileType, + nodePreferredApp); + aliasedEntry->SetAliasFor(&fSharedCache, + (SharedCacheEntry*)entry); // OK to cast here, have a runtime check source = kPreferredAppForNode; - // set source as preferred for node, so that next time we get a hit in - // the initial find that uses GetIconForPreferredApp + // set source as preferred for node, so that next time we + // get a hit in the initial find that uses + // GetIconForPreferredApp } else source = kMetaMime; #if DEBUG @@ -542,8 +559,8 @@ IconCache::GetVolumeIcon(AutoLock*nodeCacheLocker, if (source == kTrackerDefault) { // if tracker default, resolved entry is from shared cache - // this could be done a little cleaner if entry had a way to reach - // the cache it is in + // this could be done a little cleaner if entry had a way to + // reach the cache it is in *resultingOpenCache = sharedCacheLocker; sharedCacheLocker->Lock(); } @@ -563,7 +580,8 @@ IconCache::GetVolumeIcon(AutoLock*nodeCacheLocker, BBitmap* bitmap = lazyBitmap->Get(); GetTrackerResources()->GetIconResource(R_ShareIcon, size, bitmap); if (!entry) { - PRINT_ADD_ITEM(("File %s; Line %d # adding entry for model %s\n", + PRINT_ADD_ITEM( + ("File %s; Line %d # adding entry for model %s\n", __FILE__, __LINE__, model->Name())); entry = fNodeCache.AddItem(model->NodeRef()); } @@ -573,7 +591,8 @@ IconCache::GetVolumeIcon(AutoLock*nodeCacheLocker, BBitmap* bitmap = lazyBitmap->Adopt(); ASSERT(bitmap); if (!entry) { - PRINT_ADD_ITEM(("File %s; Line %d # adding entry for model %s\n", + PRINT_ADD_ITEM( + ("File %s; Line %d # adding entry for model %s\n", __FILE__, __LINE__, model->Name())); entry = fNodeCache.AddItem(model->NodeRef()); } @@ -584,7 +603,8 @@ IconCache::GetVolumeIcon(AutoLock*nodeCacheLocker, *resultingOpenCache = sharedCacheLocker; sharedCacheLocker->Lock(); - // If the volume doesnt have a device it should have the generic icon + // If the volume doesnt have a device it should have + // the generic icon entry = GetIconFromMetaMime(B_VOLUME_MIMETYPE, mode, size, lazyBitmap, entry); } @@ -754,8 +774,10 @@ IconCache::GetNodeIcon(ModelNodeLazyOpener* modelOpener, status_t result; if (file) result = GetAppIconFromAttr(file, lazyBitmap->Get(), size); - else - result = GetFileIconFromAttr(model->Node(), lazyBitmap->Get(), size); + else { + result = GetFileIconFromAttr(model->Node(), lazyBitmap->Get(), + size); + } if (result == B_OK) { // node has it's own icon, use it @@ -806,7 +828,8 @@ IconCache::GetGenericIcon(AutoLock* sharedCacheLocker, // make an aliased entry so that the next time we get a // hit and substitute a generic icon right away - PRINT_ADD_ITEM(("File %s; Line %d # adding entry for preferredApp %s, type %s\n", + PRINT_ADD_ITEM( + ("File %s; Line %d # adding entry for preferredApp %s, type %s\n", __FILE__, __LINE__, model->PreferredAppSignature(), model->MimeType())); IconCacheEntry* aliasedEntry = fSharedCache.AddItem( @@ -913,9 +936,9 @@ IconCache::Preload(AutoLock* nodeCacheLocker, model, source, mode, size, &lazyBitmap, entry); } } + // update the icon source model->SetIconFrom(source); - } else { // we already know where the icon should come from, // use shortcuts to get it @@ -1001,18 +1024,21 @@ IconCache::Preload(AutoLock* nodeCacheLocker, if (!entry || !entry->HaveIconBitmap(mode, size)) { // we don't have an icon, go with the generic - PRINT(("icon cache complete miss, falling back on generic icon for %s\n", - model->Name())); + PRINT( + ("icon cache complete miss, falling back on generic icon " + "for %s\n", model->Name())); entry = GetGenericIcon(sharedCacheLocker, &resultingOpenCache, model, source, mode, size, &lazyBitmap, entry); // we don't even have generic, something is really broken, // go with hardcoded generic icon if (!entry || !entry->HaveIconBitmap(mode, size)) { - PRINT(("icon cache complete miss, falling back on generic icon for %s\n", - model->Name())); - entry = GetFallbackIcon(sharedCacheLocker, &resultingOpenCache, - model, mode, size, &lazyBitmap, entry); + PRINT( + ("icon cache complete miss, falling back on generic " + "icon for %s\n", model->Name())); + entry = GetFallbackIcon(sharedCacheLocker, + &resultingOpenCache, model, mode, size, &lazyBitmap, + entry); } // force icon pick up next time around because we probably just @@ -1061,8 +1087,9 @@ IconCache::Draw(Model* model, BView* view, BPoint where, IconDrawMode mode, void -IconCache::SyncDraw(Model* model, BView* view, BPoint where, IconDrawMode mode, - icon_size size, void (*blitFunc)(BView*, BPoint, BBitmap*, void*), +IconCache::SyncDraw(Model* model, BView* view, BPoint where, + IconDrawMode mode, icon_size size, + void (*blitFunc)(BView*, BPoint, BBitmap*, void*), void* passThruState) { AutoLock nodeCacheLocker(&fNodeCache, false); @@ -1083,12 +1110,14 @@ IconCache::SyncDraw(Model* model, BView* view, BPoint where, IconDrawMode mode, void -IconCache::Preload(Model* model, IconDrawMode mode, icon_size size, bool permanent) +IconCache::Preload(Model* model, IconDrawMode mode, icon_size size, + bool permanent) { AutoLock nodeCacheLocker(&fNodeCache, false); AutoLock sharedCacheLocker(&fSharedCache, false); - Preload(&nodeCacheLocker, &sharedCacheLocker, 0, model, mode, size, permanent); + Preload(&nodeCacheLocker, &sharedCacheLocker, 0, model, mode, size, + permanent); } @@ -1358,9 +1387,8 @@ IconCacheEntry::RetireIcons(BObjectList* retiredBitmapList) // In debug mode keep the hash table sizes small so that they grow a lot and -// execercise the resizing code a lot. In release mode allocate them large up-front -// for better performance - +// execercise the resizing code a lot. In release mode allocate them large +// up-front for better performance SharedIconCache::SharedIconCache() #if DEBUG : SimpleIconCache("Shared Icon cache aka \"The Dead-Locker\""), @@ -1397,26 +1425,31 @@ SharedIconCache::Draw(IconCacheEntry* entry, BView* view, BPoint where, SharedCacheEntry* -SharedIconCache::FindItem(const char* fileType, const char* appSignature) const +SharedIconCache::FindItem(const char* fileType, + const char* appSignature) const { ASSERT(fileType); if (!fileType) fileType = B_FILE_MIMETYPE; - SharedCacheEntry* result = fHashTable.FindFirst(SharedCacheEntry::Hash(fileType, - appSignature)); + SharedCacheEntry* result + = fHashTable.FindFirst(SharedCacheEntry::Hash(fileType, + appSignature)); if (!result) return NULL; for(;;) { - if (result->fFileType == fileType && result->fAppSignature == appSignature) + if (result->fFileType == fileType + && result->fAppSignature == appSignature) { return result; + } if (result->fNext < 0) break; - result = const_cast(&fElementArray.At(result->fNext)); + result + = const_cast(&fElementArray.At(result->fNext)); } return NULL; @@ -1438,8 +1471,8 @@ SharedIconCache::AddItem(const char* fileType, const char* appSignature) SharedCacheEntry* -SharedIconCache::AddItem(SharedCacheEntry** outstandingEntry, const char* fileType, - const char* appSignature) +SharedIconCache::AddItem(SharedCacheEntry** outstandingEntry, + const char* fileType, const char* appSignature) { int32 entryToken = fHashTable.ElementIndex(*outstandingEntry); ASSERT(entryToken >= 0); @@ -1481,7 +1514,8 @@ SharedIconCache::RemoveAliasesTo(int32 aliasIndex) void -SharedIconCache::SetAliasFor(IconCacheEntry* alias, const SharedCacheEntry* original) const +SharedIconCache::SetAliasFor(IconCacheEntry* alias, + const SharedCacheEntry* original) const { alias->fAliasForIndex = fHashTable.ElementIndex(original); } @@ -1493,7 +1527,8 @@ SharedCacheEntry::SharedCacheEntry() } -SharedCacheEntry::SharedCacheEntry(const char* fileType, const char* appSignature) +SharedCacheEntry::SharedCacheEntry(const char* fileType, + const char* appSignature) : fNext(-1), fFileType(fileType), fAppSignature(appSignature) @@ -1502,8 +1537,8 @@ SharedCacheEntry::SharedCacheEntry(const char* fileType, const char* appSignatur void -SharedCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, icon_size size, - bool async) +SharedCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, + icon_size size, bool async) { BBitmap* bitmap = IconForMode(mode, size); ASSERT(bitmap); @@ -1529,8 +1564,9 @@ SharedCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, icon_size s void -SharedCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, icon_size size, - void (*blitFunc)(BView*, BPoint, BBitmap*, void*), void* passThruState) +SharedCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, + icon_size size, void (*blitFunc)(BView*, BPoint, BBitmap*, void*), + void* passThruState) { BBitmap* bitmap = IconForMode(mode, size); if (!bitmap) @@ -1542,7 +1578,7 @@ SharedCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, icon_size s // } else { // view->SetDrawingMode(B_OP_OVER); // } -// + (blitFunc)(view, where, bitmap, passThruState); } @@ -1572,7 +1608,8 @@ SharedCacheEntry::Hash() const bool SharedCacheEntry::operator==(const SharedCacheEntry &entry) const { - return fFileType == entry.FileType() && fAppSignature == entry.AppSignature(); + return fFileType == entry.FileType() + && fAppSignature == entry.AppSignature(); } @@ -1616,8 +1653,8 @@ NodeCacheEntry::NodeCacheEntry(const node_ref* node, bool permanent) void -NodeCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, icon_size size, - bool async) +NodeCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, + icon_size size, bool async) { BBitmap* bitmap = IconForMode(mode, size); if (!bitmap) @@ -1646,8 +1683,9 @@ NodeCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, icon_size siz void -NodeCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, icon_size size, - void (*blitFunc)(BView*, BPoint, BBitmap*, void*), void* passThruState) +NodeCacheEntry::Draw(BView* view, BPoint where, IconDrawMode mode, + icon_size size, void (*blitFunc)(BView*, BPoint, BBitmap*, void*), + void* passThruState) { BBitmap* bitmap = IconForMode(mode, size); if (!bitmap) @@ -1766,7 +1804,8 @@ NodeIconCache::FindItem(const node_ref* node) const if (result->fNext < 0) break; - result = const_cast(&fElementArray.At(result->fNext)); + result + = const_cast(&fElementArray.At(result->fNext)); } return NULL; @@ -1786,7 +1825,8 @@ NodeIconCache::AddItem(const node_ref* node, bool permanent) NodeCacheEntry* -NodeIconCache::AddItem(NodeCacheEntry** outstandingEntry, const node_ref* node) +NodeIconCache::AddItem(NodeCacheEntry** outstandingEntry, + const node_ref* node) { int32 entryToken = fHashTable.ElementIndex(*outstandingEntry); @@ -1876,8 +1916,8 @@ SimpleIconCache::SimpleIconCache(const char* name) void -SimpleIconCache::Draw(IconCacheEntry*, BView*, BPoint, IconDrawMode , - icon_size , bool ) +SimpleIconCache::Draw(IconCacheEntry*, BView*, BPoint, IconDrawMode, + icon_size, bool) { TRESPASS(); // pure virtual, do nothing @@ -1885,8 +1925,8 @@ SimpleIconCache::Draw(IconCacheEntry*, BView*, BPoint, IconDrawMode , void -SimpleIconCache::Draw(IconCacheEntry*, BView*, BPoint, IconDrawMode, icon_size, - void(*)(BView*, BPoint, BBitmap*, void*), void*) +SimpleIconCache::Draw(IconCacheEntry*, BView*, BPoint, IconDrawMode, + icon_size, void(*)(BView*, BPoint, BBitmap*, void*), void*) { TRESPASS(); // pure virtual, do nothing @@ -1917,8 +1957,8 @@ SimpleIconCache::IsLocked() const // #pragma mark - -LazyBitmapAllocator::LazyBitmapAllocator(icon_size size, color_space colorSpace, - bool preallocate) +LazyBitmapAllocator::LazyBitmapAllocator(icon_size size, + color_space colorSpace, bool preallocate) : fBitmap(NULL), fSize(size), fColorSpace(colorSpace) diff --git a/src/kits/tracker/IconCache.h b/src/kits/tracker/IconCache.h index 94690f609e..9ca10f2cc0 100644 --- a/src/kits/tracker/IconCache.h +++ b/src/kits/tracker/IconCache.h @@ -49,13 +49,13 @@ All rights reserved. #include "Utilities.h" -// Icon cache splits icons into two caches - the shared cache, likely to get the -// most hits and the node cache. Every icon that is found in a mime based -// structure goes into the shared cache, only files that have their own private -// icon use the node cache; -// Entries are only deleted from the shared cache if an icon for a mime type changes, -// this makes async icon drawing easier. Node cache deletes it's entries whenever a -// file gets deleted. +// Icon cache splits icons into two caches - the shared cache, likely to +// get the most hits and the node cache. Every icon that is found in a +// mime-based structure goes into the shared cache, only files that have +// their own private icon use the node cache; +// Entries are only deleted from the shared cache if an icon for a mime type +// changes, this makes async icon drawing easier. Node cache deletes it's +// entries whenever a file gets deleted. // if a view ever uses the cache to draw in async mode, it needs to call // it when it is being destroyed @@ -100,13 +100,14 @@ enum IconDrawMode { // Where did an icon come from enum IconSource { kUnknownSource, - kUnknownNotFromNode, // icon origin not known but determined not to be from - // the node itself - kTrackerDefault, // file has no type, Tracker provides generic, folder, - // symlink or app + kUnknownNotFromNode, // icon origin not known but determined not + // to be from the node itself + kTrackerDefault, // file has no type, Tracker provides generic, + // folder, symlink or app kTrackerSupplied, // home directory, boot volume, trash, etc. kMetaMime, // from BMimeType - kPreferredAppForType, // have a preferred application for a type, has an icon + kPreferredAppForType, // have a preferred application for a type, + // has an icon kPreferredAppForNode, // have a preferred application for this node, // has an icon kVolume, @@ -117,17 +118,18 @@ enum IconSource { class IconCacheEntry { // aliased entries don't own their icons, just point // to some other entry that does - + // This is used for icons that are defined by a preferred app for // a metamime, types that do not have an icon get to point to // generic, etc. - + public: IconCacheEntry(); ~IconCacheEntry(); void SetAliasFor(const SharedIconCache*, const SharedCacheEntry*); - static IconCacheEntry* ResolveIfAlias(const SharedIconCache*, IconCacheEntry*); + static IconCacheEntry* ResolveIfAlias(const SharedIconCache*, + IconCacheEntry*); IconCacheEntry* ResolveIfAlias(const SharedIconCache*); void SetIcon(BBitmap* bitmap, IconDrawMode mode, icon_size size, @@ -137,9 +139,9 @@ public: bool CanConstructBitmap(IconDrawMode mode, icon_size size) const; static bool AlternateModeForIconConstructing(IconDrawMode requestedMode, IconDrawMode &alternate, icon_size size); - BBitmap* ConstructBitmap(BBitmap* constructFrom, IconDrawMode requestedMode, - IconDrawMode constructFromMode, icon_size size, - LazyBitmapAllocator*); + BBitmap* ConstructBitmap(BBitmap* constructFrom, + IconDrawMode requestedMode, IconDrawMode constructFromMode, + icon_size size, LazyBitmapAllocator*); BBitmap* ConstructBitmap(IconDrawMode requestedMode, icon_size size, LazyBitmapAllocator*); // same as above, always uses normal icon as source @@ -242,16 +244,18 @@ public: virtual void Draw(IconCacheEntry*, BView*, BPoint, IconDrawMode, icon_size, void (*)(BView*, BPoint, BBitmap*, void*), void* = NULL); - SharedCacheEntry* FindItem(const char* fileType, const char* appSignature = 0) - const; - SharedCacheEntry* AddItem(const char* fileType, const char* appSignature = 0); - SharedCacheEntry* AddItem(SharedCacheEntry** outstandingEntry, const char* fileType, + SharedCacheEntry* FindItem(const char* fileType, + const char* appSignature = 0) const; + SharedCacheEntry* AddItem(const char* fileType, const char* appSignature = 0); - // same as previous AddItem, updates the pointer to outstandingEntry, because - // adding to the hash table makes any pending pointer invalid + SharedCacheEntry* AddItem(SharedCacheEntry** outstandingEntry, + const char* fileType, const char* appSignature = 0); + // same as previous AddItem, updates the pointer to outstandingEntry, + // because adding to the hash table makes any pending pointer invalid void IconChanged(SharedCacheEntry*); - void SetAliasFor(IconCacheEntry* alias, const SharedCacheEntry* original) const; + void SetAliasFor(IconCacheEntry* alias, + const SharedCacheEntry* original) const; IconCacheEntry* ResolveIfAlias(IconCacheEntry* entry) const; int32 EntryIndex(const SharedCacheEntry* entry) const; @@ -261,9 +265,9 @@ private: OpenHashTable fHashTable; SharedCacheEntryArray fElementArray; BObjectList fRetiredBitmaps; - // icons are drawn asynchronously, can't just delete them - // right away, instead have to place them onto the retired bitmap list - // and wait for the next sync to delete them + // icons are drawn asynchronously, can't just delete them right away, + // instead have to place them onto the retired bitmap list and wait + // for the next sync to delete them }; @@ -317,11 +321,13 @@ public: NodeCacheEntry* FindItem(const node_ref*) const; NodeCacheEntry* AddItem(const node_ref*, bool permanent = false); - NodeCacheEntry* AddItem(NodeCacheEntry** outstandingEntry, const node_ref*); - // same as previous AddItem, updates the pointer to outstandingEntry, because - // adding to the hash table makes any pending pointer invalid + NodeCacheEntry* AddItem(NodeCacheEntry** outstandingEntry, + const node_ref*); + // same as previous AddItem, updates the pointer to outstandingEntry, + // because adding to the hash table makes any pending pointer invalid void Deleting(const node_ref*); - // model for this node is getting deleted (not necessarily the node itself) + // model for this node is getting deleted + // (not necessarily the node itself) void Removing(const node_ref*); // used by permanent NodeIconCache entries, when an entry gets deleted void Deleting(const BView*); @@ -406,12 +412,12 @@ private: IconCacheEntry* GetIconForPreferredApp(const char* mimeTypeSignature, const char* preferredApp, IconDrawMode mode, icon_size size, LazyBitmapAllocator*, IconCacheEntry*); - IconCacheEntry* GetIconFromFileTypes(ModelNodeLazyOpener*, IconSource &source, + IconCacheEntry* GetIconFromFileTypes(ModelNodeLazyOpener*, + IconSource &source, IconDrawMode mode, icon_size size, + LazyBitmapAllocator*, IconCacheEntry*); + IconCacheEntry* GetIconFromMetaMime(const char* fileType, IconDrawMode mode, icon_size size, LazyBitmapAllocator*, IconCacheEntry*); - IconCacheEntry* GetIconFromMetaMime(const char* fileType, IconDrawMode mode, - icon_size size, LazyBitmapAllocator*, - IconCacheEntry*); IconCacheEntry* GetVolumeIcon(AutoLock* nodeCache, AutoLock* sharedCache, AutoLock** resultingLockedCache, @@ -431,12 +437,14 @@ private: AutoLock* nodeCache, AutoLock** resultingLockedCache, Model*, IconSource&, IconDrawMode mode, - icon_size size, LazyBitmapAllocator*, IconCacheEntry*, bool permanent); + icon_size size, LazyBitmapAllocator*, IconCacheEntry*, + bool permanent); IconCacheEntry* GetGenericIcon(AutoLock* sharedCache, AutoLock** resultingLockedCache, Model*, IconSource&, IconDrawMode mode, icon_size size, LazyBitmapAllocator*, IconCacheEntry*); - IconCacheEntry* GetFallbackIcon(AutoLock* sharedCacheLocker, + IconCacheEntry* GetFallbackIcon( + AutoLock* sharedCacheLocker, AutoLock** resultingOpenCache, Model* model, IconDrawMode mode, icon_size size, LazyBitmapAllocator* lazyBitmap, IconCacheEntry* entry); diff --git a/src/kits/tracker/InfoWindow.cpp b/src/kits/tracker/InfoWindow.cpp index fdb755165c..15138419c0 100644 --- a/src/kits/tracker/InfoWindow.cpp +++ b/src/kits/tracker/InfoWindow.cpp @@ -120,7 +120,8 @@ class AttributeView : public BView { BTextView* TextView() const { return fTitleEditView; } - static filter_result TextViewFilter(BMessage*, BHandler**, BMessageFilter*); + static filter_result TextViewFilter(BMessage*, BHandler**, + BMessageFilter*); off_t LastSize() const; void SetLastSize(off_t); @@ -278,7 +279,8 @@ OpenToolTipWindow(BScreen& screen, BRect rect, const char* name, // #pragma mark - -BInfoWindow::BInfoWindow(Model* model, int32 group_index, LockingList* list) +BInfoWindow::BInfoWindow(Model* model, int32 group_index, + LockingList* list) : BWindow(BInfoWindow::InfoWindowRect(false), "InfoWindow", B_TITLED_WINDOW, B_NOT_RESIZABLE | B_NOT_ZOOMABLE, B_CURRENT_WORKSPACE), @@ -366,7 +368,8 @@ BInfoWindow::Show() AddChild(fAttributeView); // position window appropriately based on index - BRect windRect(InfoWindowRect(TargetModel()->IsSymLink() || TargetModel()->IsFile())); + BRect windRect(InfoWindowRect(TargetModel()->IsSymLink() + || TargetModel()->IsFile())); if ((fIndex + 2) % 2 == 1) { windRect.OffsetBy(320, 0); fIndex--; @@ -499,8 +502,9 @@ BInfoWindow::MessageReceived(BMessage* message) // We now have to re-target the broken symlink. Unfortunately, // there's no way to change the target of an existing symlink. // So we have to delete the old one and create a new one. - // First, stop watching the broken node (we don't want this window - // to quit when the node is removed.) + // First, stop watching the broken node + // (we don't want this window to quit when the node + // is removed.) stop_watching(this); // Get the parent @@ -601,8 +605,10 @@ BInfoWindow::MessageReceived(BMessage* message) case B_STAT_CHANGED: case B_ATTR_CHANGED: fAttributeView->ModelChanged(TargetModel(), message); - // must be called before the FilePermissionView::ModelChanged() - // call, because it changes the model... (bad style!) + // must be called before the + // FilePermissionView::ModelChanged() + // call, because it changes the model... + // (bad style!) if (fPermissionsView != NULL) fPermissionsView->ModelChanged(TargetModel()); @@ -610,13 +616,15 @@ BInfoWindow::MessageReceived(BMessage* message) case B_DEVICE_UNMOUNTED: { - // We were watching a volume that is no longer mounted, - // we might as well quit + // We were watching a volume that is no longer + // mounted, we might as well quit node_ref itemNode; // Only the device information is available message->FindInt32("device", &itemNode.device); - if (TargetModel()->NodeRef()->device == itemNode.device) + if (TargetModel()->NodeRef()->device + == itemNode.device) { Close(); + } break; } @@ -629,8 +637,10 @@ BInfoWindow::MessageReceived(BMessage* message) case kPermissionsSelected: if (fPermissionsView == NULL) { // Only true on first call. - fPermissionsView = new FilePermissionsView(BRect(kBorderWidth + 1, - fAttributeView->Bounds().bottom, fAttributeView->Bounds().right, + fPermissionsView + = new FilePermissionsView(BRect(kBorderWidth + 1, + fAttributeView->Bounds().bottom, + fAttributeView->Bounds().right, fAttributeView->Bounds().bottom+80), fModel); ResizeBy(0, fPermissionsView->Bounds().Height()); @@ -661,7 +671,7 @@ BInfoWindow::GetSizeString(BString &result, off_t size, int32 fileCount) char sizeBuffer[128]; result << string_for_size((double)size, sizeBuffer, sizeof(sizeBuffer)); - // when we show the byte size, format it with a thousands delimiter (comma) + // when we show the byte size, format it with a thousands delimiter // TODO: use BCountry::FormatNumber if (size >= kKBSize) { char numStr[128]; @@ -784,7 +794,8 @@ BInfoWindow::CalcSize(void* castToWindow) void BInfoWindow::SetSizeStr(const char* sizeStr) { - AttributeView* view = dynamic_cast(FindView("attr_view")); + AttributeView* view + = dynamic_cast(FindView("attr_view")); if (view) view->SetSizeStr(sizeStr); } @@ -803,7 +814,8 @@ BInfoWindow::OpenFilePanel(const entry_ref* ref) false, &message); if (fFilePanel != NULL) { - fFilePanel->SetButtonLabel(B_DEFAULT_BUTTON, B_TRANSLATE("Select")); + fFilePanel->SetButtonLabel(B_DEFAULT_BUTTON, + B_TRANSLATE("Select")); fFilePanel->Window()->ResizeTo(500, 300); BString title(B_TRANSLATE_COMMENT("Link \"%name\" to:", "File dialog title for new sym link")); @@ -826,7 +838,8 @@ BInfoWindow::OpenFilePanel(const entry_ref* ref) AttributeView::AttributeView(BRect rect, Model* model) - : BView(rect, "attr_view", B_FOLLOW_ALL_SIDES, B_WILL_DRAW | B_PULSE_NEEDED), + : BView(rect, "attr_view", B_FOLLOW_ALL_SIDES, + B_WILL_DRAW | B_PULSE_NEEDED), fDivider(0), fPreferredAppMenu(NULL), fModel(model), @@ -873,9 +886,12 @@ AttributeView::AttributeView(BRect rect, Model* model) fTitleRect.left = fIconRect.right + 5; fTitleRect.top = 0; fTitleRect.bottom = fontMetrics.ascent + 1; - fTitleRect.right = min_c(fTitleRect.left + currentFont.StringWidth(fModel->Name()), Bounds().Width() - 5); + fTitleRect.right = min_c( + fTitleRect.left + currentFont.StringWidth(fModel->Name()), + Bounds().Width() - 5); // Offset so that it centers with the icon - fTitleRect.OffsetBy(0, fIconRect.top + ((fIconRect.Height() - fTitleRect.Height()) / 2)); + fTitleRect.OffsetBy(0, + fIconRect.top + ((fIconRect.Height() - fTitleRect.Height()) / 2)); // Make some room for the border for when we are in edit mode // (Negative numbers increase the size of the rect) fTitleRect.InsetBy(-1, -2); @@ -904,8 +920,10 @@ AttributeView::AttributeView(BRect rect, Model* model) BRect preferredAppRect(kBorderWidth + kBorderMargin, fTitleRect.bottom + (lineHeight * 7), Bounds().Width() - 5, fTitleRect.bottom + (lineHeight * 8)); - fPreferredAppMenu = new BMenuField(preferredAppRect, "", "", new BPopUpMenu("")); - fDivider = currentFont.StringWidth(B_TRANSLATE("Opens with:")) + 5; + fPreferredAppMenu = new BMenuField(preferredAppRect, "", "", + new BPopUpMenu("")); + fDivider = currentFont.StringWidth(B_TRANSLATE("Opens with:")) + + 5; fPreferredAppMenu->SetDivider(fDivider); fDivider += (preferredAppRect.left - 2); fPreferredAppMenu->SetFont(¤tFont); @@ -928,8 +946,10 @@ AttributeView::AttributeView(BRect rect, Model* model) for (int32 index = 0; ; index++) { const char* signature; - if (supportingAppList.FindString("applications", index, &signature) != B_OK) + if (supportingAppList.FindString("applications", index, + &signature) != B_OK) { break; + } // Only add separator item if there are more items if (index == 0) @@ -1020,7 +1040,8 @@ AttributeView::InitStrings(const Model* model) // If the BPath is initialized, then check the file for existence if (traversedPath.InitCheck() == B_OK) { - BEntry entry(traversedPath.Path(), false); // look at the target itself + BEntry entry(traversedPath.Path(), false); + // look at the target itself if (entry.InitCheck() == B_OK && entry.Exists()) linked = true; } @@ -1034,8 +1055,10 @@ AttributeView::InitStrings(const Model* model) if (!linked) fLinkToStr += " (broken)"; // link points to missing object } else if (model->IsExecutable()) { - if (((Model*)model)->GetLongVersionString(fDescStr, B_APP_VERSION_KIND) == B_OK) { - // we want a flat string, so we replace all newlines/tabs with spaces + if (((Model*)model)->GetLongVersionString(fDescStr, + B_APP_VERSION_KIND) == B_OK) { + // we want a flat string, so replace all newlines and tabs + // with spaces fDescStr.ReplaceAll('\n', ' '); fDescStr.ReplaceAll('\t', ' '); } else @@ -1097,10 +1120,10 @@ AttributeView::ModelChanged(Model* model, BMessage* message) // ensure notification is for us if (*model->NodeRef() == itemNode // For volumes, the device ID is obviously not handled in a - // consistent way; the node monitor sends us the ID of the parent - // device, while the model is set to the device of the volume - // directly - this hack works for volumes that are mounted in - // the root directory + // consistent way; the node monitor sends us the ID of the + // parent device, while the model is set to the device of the + // volume directly - this hack works for volumes that are + // mounted in the root directory || (model->IsVolume() && itemNode.device == 1 && itemNode.node == model->NodeRef()->node)) { @@ -1167,8 +1190,8 @@ AttributeView::ModelChanged(Model* model, BMessage* message) fModel = model; if (fModel->IsSymLink()) { - // if we are looking at a symlink, deference the model and look at the - // target + // if we are looking at a symlink, deference the model and look + // at the target Model* resolvedModel = new Model(model->EntryRef(), true, true); if (resolvedModel->InitCheck() == B_OK) { if (fIconModel != fModel) @@ -1245,7 +1268,8 @@ AttributeView::MouseDown(BPoint point) } else if (fTitleEditView) { FinishEditingTitle(true); } else if (fSizeRect.Contains(point)) { - if (fModel->IsDirectory() && !fModel->IsVolume() && !fModel->IsRoot()) { + if (fModel->IsDirectory() && !fModel->IsVolume() + && !fModel->IsRoot()) { InvertRect(fSizeRect); fTrackingState = size_track; } else @@ -1253,13 +1277,16 @@ AttributeView::MouseDown(BPoint point) } else if (fIconRect.Contains(point)) { uint32 buttons; Window()->CurrentMessage()->FindInt32("buttons", (int32*)&buttons); - if (((modifiers() & B_CONTROL_KEY) != 0) || (buttons & B_SECONDARY_MOUSE_BUTTON) != 0) { + if (((modifiers() & B_CONTROL_KEY) != 0) + || (buttons & B_SECONDARY_MOUSE_BUTTON) != 0) { // Show contextual menu - BPopUpMenu* contextMenu = new BPopUpMenu("FileContext", false, false); + BPopUpMenu* contextMenu + = new BPopUpMenu("FileContext", false, false); if (contextMenu) { BuildContextMenu(contextMenu); contextMenu->SetAsyncAutoDestruct(true); - contextMenu->Go(ConvertToScreen(point), true, true, ConvertToScreen(fIconRect)); + contextMenu->Go(ConvertToScreen(point), true, true, + ConvertToScreen(fIconRect)); } } else { // Check to see if the point is actually on part of the icon, @@ -1268,21 +1295,25 @@ AttributeView::MouseDown(BPoint point) BPoint offsetPoint; offsetPoint.x = point.x - fIconRect.left; offsetPoint.y = point.y - fIconRect.top; - if (IconCache::sIconCache->IconHitTest(offsetPoint, fIconModel, kNormalIcon, B_LARGE_ICON)) { + if (IconCache::sIconCache->IconHitTest(offsetPoint, fIconModel, + kNormalIcon, B_LARGE_ICON)) { // Can't drag the trash anywhere.. - fTrackingState = fModel->IsTrash() ? open_only_track : icon_track; + fTrackingState = fModel->IsTrash() + ? open_only_track : icon_track; // Check for possible double click if (abs((int32)(fClickPoint.x - point.x)) < kDragSlop && abs((int32)(fClickPoint.y - point.y)) < kDragSlop) { int32 clickCount; - Window()->CurrentMessage()->FindInt32("clicks", &clickCount); + Window()->CurrentMessage()->FindInt32("clicks", + &clickCount); // This checks the* previous* click point if (clickCount == 2) { offsetPoint.x = fClickPoint.x - fIconRect.left; offsetPoint.y = fClickPoint.y - fIconRect.top; - fDoubleClick = IconCache::sIconCache->IconHitTest(offsetPoint, + fDoubleClick + = IconCache::sIconCache->IconHitTest(offsetPoint, fIconModel, kNormalIcon, B_LARGE_ICON); } } @@ -1301,7 +1332,8 @@ AttributeView::MouseMoved(BPoint point, uint32, const BMessage* message) // Highlight Drag target if (message && message->ReturnAddress() != BMessenger(this) && message->what == B_SIMPLE_DATA - && BPoseView::CanHandleDragSelection(fModel, message, (modifiers() & B_CONTROL_KEY) != 0)) { + && BPoseView::CanHandleDragSelection(fModel, message, + (modifiers() & B_CONTROL_KEY) != 0)) { bool overTarget = fIconRect.Contains(point); SetDrawingMode(B_OP_OVER); if (overTarget != fIsDropTarget) { @@ -1334,19 +1366,23 @@ AttributeView::MouseMoved(BPoint point, uint32, const BMessage* message) break; case icon_track: - if (fMouseDown && !fDragging && (abs((int32)(point.x - fClickPoint.x)) > kDragSlop - || abs((int32)(point.y - fClickPoint.y)) > kDragSlop)) { + if (fMouseDown && !fDragging + && (abs((int32)(point.x - fClickPoint.x)) > kDragSlop + || abs((int32)(point.y - fClickPoint.y)) > kDragSlop)) { // Find the required height BFont font; GetFont(&font); font.SetSize(kAttribFontHeight); - float height = CurrentFontHeight(kAttribFontHeight) + fIconRect.Height() + 8; + float height = CurrentFontHeight(kAttribFontHeight) + + fIconRect.Height() + 8; BRect rect(0, 0, min_c(fIconRect.Width() - + font.StringWidth(fModel->Name()) + 4, fIconRect.Width() * 3), height); + + font.StringWidth(fModel->Name()) + 4, + fIconRect.Width() * 3), height); BBitmap* dragBitmap = new BBitmap(rect, B_RGBA32, true); dragBitmap->Lock(); - BView* view = new BView(dragBitmap->Bounds(), "", B_FOLLOW_NONE, 0); + BView* view = new BView(dragBitmap->Bounds(), "", + B_FOLLOW_NONE, 0); dragBitmap->AddChild(view); view->SetOrigin(0, 0); BRect clipRect(view->Bounds()); @@ -1358,23 +1394,27 @@ AttributeView::MouseMoved(BPoint point, uint32, const BMessage* message) view->SetHighColor(0, 0, 0, 0); view->FillRect(view->Bounds()); view->SetDrawingMode(B_OP_ALPHA); - view->SetHighColor(0, 0, 0, 128); // set the level of transparency by value + view->SetHighColor(0, 0, 0, 128); + // set the level of transparency by value view->SetBlendingMode(B_CONSTANT_ALPHA, B_ALPHA_COMPOSITE); // Draw the icon float hIconOffset = (rect.Width() - fIconRect.Width()) / 2; - IconCache::sIconCache->Draw(fIconModel, view, BPoint(hIconOffset, 0), - kNormalIcon, B_LARGE_ICON, true); + IconCache::sIconCache->Draw(fIconModel, view, + BPoint(hIconOffset, 0), kNormalIcon, B_LARGE_ICON, true); // See if we need to truncate the string BString nameString(fModel->Name()); - if (view->StringWidth(fModel->Name()) > rect.Width()) - view->TruncateString(&nameString, B_TRUNCATE_END, rect.Width() - 5); + if (view->StringWidth(fModel->Name()) > rect.Width()) { + view->TruncateString(&nameString, B_TRUNCATE_END, + rect.Width() - 5); + } // Draw the label font_height fontHeight; font.GetHeight(&fontHeight); - float leftText = (view->StringWidth(nameString.String()) - fIconRect.Width()) / 2; + float leftText = (view->StringWidth(nameString.String()) + - fIconRect.Width()) / 2; view->MovePenTo(BPoint(hIconOffset - leftText + 2, fIconRect.Height() + (fontHeight.ascent + 2))); view->DrawString(nameString.String()); @@ -1391,9 +1431,11 @@ AttributeView::MouseMoved(BPoint point, uint32, const BMessage* message) message.AddInt32("buttons", (int32)button); message.AddInt32("be:actions", - (modifiers() & B_OPTION_KEY) != 0 ? B_COPY_TARGET : B_MOVE_TARGET); + (modifiers() & B_OPTION_KEY) != 0 + ? B_COPY_TARGET : B_MOVE_TARGET); message.AddRef("refs", fModel->EntryRef()); - DragMessage(&message, dragBitmap, B_OP_ALPHA, BPoint((fClickPoint.x - fIconRect.left) + DragMessage(&message, dragBitmap, B_OP_ALPHA, + BPoint((fClickPoint.x - fIconRect.left) + hIconOffset, fClickPoint.y - fIconRect.top), this); fDragging = true; } @@ -1413,47 +1455,57 @@ AttributeView::MouseMoved(BPoint point, uint32, const BMessage* message) BPoint point; GetMouse(&point, &buttons); if (Window()->IsActive() && !buttons) { - // If we are down here, then that means that we're tracking the mouse - // but not from a mouse down. In this case, we're just interested in - // knowing whether or not we need to display the "pop-up" version - // of the path or link text. + // If we are down here, then that means that we're tracking + // the mouse but not from a mouse down. In this case, we're + // just interested in knowing whether or not we need to + // display the "pop-up" version of the path or link text. BScreen screen(Window()); BFont font; GetFont(&font); font.SetSize(kAttribFontHeight); - float maxWidth = (Bounds().Width() - (fDivider + kBorderMargin)); + float maxWidth = (Bounds().Width() + - (fDivider + kBorderMargin)); if (fPathRect.Contains(point) && font.StringWidth(fPathStr.String()) > maxWidth) { fTrackingState = no_track; BRect rect(fPathRect); - rect.OffsetBy(Window()->Frame().left, Window()->Frame().top); + rect.OffsetBy(Window()->Frame().left, + Window()->Frame().top); - if (!fPathWindow || BMessenger(fPathWindow).IsValid() == false) { - fPathWindow = OpenToolTipWindow(screen, rect, "fPathWindow", - fPathStr.String(), BMessenger(this), + if (!fPathWindow + || BMessenger(fPathWindow).IsValid() == false) { + fPathWindow = OpenToolTipWindow(screen, rect, + "fPathWindow", fPathStr.String(), + BMessenger(this), new BMessage(kOpenLinkSource)); } } else if (fLinkRect.Contains(point) && font.StringWidth(fLinkToStr.String()) > maxWidth) { fTrackingState = no_track; BRect rect(fLinkRect); - rect.OffsetBy(Window()->Frame().left, Window()->Frame().top); + rect.OffsetBy(Window()->Frame().left, + Window()->Frame().top); - if (!fLinkWindow || BMessenger(fLinkWindow).IsValid() == false) { - fLinkWindow = OpenToolTipWindow(screen, rect, "fLinkWindow", - fLinkToStr.String(), BMessenger(this), + if (!fLinkWindow + || BMessenger(fLinkWindow).IsValid() == false) { + fLinkWindow = OpenToolTipWindow(screen, rect, + "fLinkWindow", fLinkToStr.String(), + BMessenger(this), new BMessage(kOpenLinkTarget)); } } else if (fDescRect.Contains(point) && font.StringWidth(fDescStr.String()) > maxWidth) { fTrackingState = no_track; BRect rect(fDescRect); - rect.OffsetBy(Window()->Frame().left, Window()->Frame().top); + rect.OffsetBy(Window()->Frame().left, + Window()->Frame().top); - if (!fDescWindow || BMessenger(fDescWindow).IsValid() == false) { - fDescWindow = OpenToolTipWindow(screen, rect, "fDescWindow", - fDescStr.String(), BMessenger(this), NULL); + if (!fDescWindow + || BMessenger(fDescWindow).IsValid() == false) { + fDescWindow = OpenToolTipWindow(screen, rect, + "fDescWindow", fDescStr.String(), + BMessenger(this), NULL); } } } @@ -1509,12 +1561,13 @@ AttributeView::MouseUp(BPoint point) } else if (fTrackingState == path_track && fPathRect.Contains(point)) { InvertRect(fPathRect); OpenLinkSource(); - } else if ((fTrackingState == icon_track || fTrackingState == open_only_track) + } else if ((fTrackingState == icon_track + || fTrackingState == open_only_track) && fIconRect.Contains(point)) { // If it was a double click, then tell Tracker to open the item // The CurrentMessage() here does* not* have a "clicks" field, // which is why we are tracking the clicks with this temp var - if (fDoubleClick){ + if (fDoubleClick) { // Double click, launch. BMessage message(B_REFS_RECEIVED); message.AddRef("refs", fModel->EntryRef()); @@ -1580,8 +1633,10 @@ AttributeView::CheckAndSetSize() StatStruct statBuf; BModelOpener opener(fModel); - if (fModel->InitCheck() != B_OK || fModel->Node()->GetStat(&statBuf) != B_OK) + if (fModel->InitCheck() != B_OK + || fModel->Node()->GetStat(&statBuf) != B_OK) { return; + } if (fLastSize == statBuf.st_size) return; @@ -1594,7 +1649,8 @@ AttributeView::CheckAndSetSize() BRect bounds(Bounds()); float lineHeight = CurrentFontHeight() + 2; - bounds.Set(fDivider, fIconRect.bottom, bounds.right, fIconRect.bottom + lineHeight); + bounds.Set(fDivider, fIconRect.bottom, bounds.right, + fIconRect.bottom + lineHeight); Invalidate(bounds); } @@ -1606,8 +1662,10 @@ AttributeView::MessageReceived(BMessage* message) && message->what == B_SIMPLE_DATA && message->ReturnAddress() != BMessenger(this) && fIconRect.Contains(ConvertFromScreen(message->DropPoint())) - && BPoseView::CanHandleDragSelection(fModel, message, (modifiers() & B_CONTROL_KEY) != 0)) { - BPoseView::HandleDropCommon(message, fModel, 0, this, message->DropPoint()); + && BPoseView::CanHandleDragSelection(fModel, message, + (modifiers() & B_CONTROL_KEY) != 0)) { + BPoseView::HandleDropCommon(message, fModel, 0, this, + message->DropPoint()); Invalidate(fIconRect); return; } @@ -1679,7 +1737,8 @@ AttributeView::Draw(BRect) MovePenTo(BPoint(fIconRect.right + 6, lineBase)); // Recalculate the rect width - fTitleRect.right = min_c(fTitleRect.left + currentFont.StringWidth(fModel->Name()), + fTitleRect.right = min_c( + fTitleRect.left + currentFont.StringWidth(fModel->Name()), Bounds().Width() - 5); // Check for possible need of truncation if (StringWidth(fModel->Name()) > fTitleRect.Width()) { @@ -1718,12 +1777,14 @@ AttributeView::Draw(BRect) MovePenTo(BPoint(fDivider + kDrawMargin, lineBase)); SetHighColor(kAttrValueColor); // Check for possible need of truncation - if (StringWidth(fSizeStr.String()) > (Bounds().Width() - (fDivider + kBorderMargin))) { + if (StringWidth(fSizeStr.String()) + > (Bounds().Width() - (fDivider + kBorderMargin))) { BString tmpString(fSizeStr.String()); TruncateString(&tmpString, B_TRUNCATE_MIDDLE, Bounds().Width() - (fDivider + kBorderMargin)); DrawString(tmpString.String()); - fSizeRect.right = fSizeRect.left + StringWidth(tmpString.String()) + 3; + fSizeRect.right = fSizeRect.left + StringWidth(tmpString.String()) + + 3; } else { DrawString(fSizeStr.String()); fSizeRect.right = fSizeRect.left + StringWidth(fSizeStr.String()) + 3; @@ -1752,7 +1813,8 @@ AttributeView::Draw(BRect) lineBase += lineHeight; // Kind - MovePenTo(BPoint(fDivider - (StringWidth(B_TRANSLATE("Kind:"))), lineBase)); + MovePenTo(BPoint(fDivider - (StringWidth(B_TRANSLATE("Kind:"))), + lineBase)); SetHighColor(kAttrTitleColor); DrawString(B_TRANSLATE("Kind:")); MovePenTo(BPoint(fDivider + kDrawMargin, lineBase)); @@ -1773,7 +1835,8 @@ AttributeView::Draw(BRect) SetHighColor(kLinkColor); // Check for truncation - if (StringWidth(fPathStr.String()) > (Bounds().Width() - (fDivider + kBorderMargin))) { + if (StringWidth(fPathStr.String()) > (Bounds().Width() + - (fDivider + kBorderMargin))) { BString nameString(fPathStr.String()); TruncateString(&nameString, B_TRUNCATE_MIDDLE, Bounds().Width() - (fDivider + kBorderMargin)); @@ -1799,7 +1862,8 @@ AttributeView::Draw(BRect) SetHighColor(kLinkColor); // Check for truncation - if (StringWidth(fLinkToStr.String()) > (Bounds().Width() - (fDivider + kBorderMargin))) { + if (StringWidth(fLinkToStr.String()) > (Bounds().Width() + - (fDivider + kBorderMargin))) { BString nameString(fLinkToStr.String()); TruncateString(&nameString, B_TRUNCATE_MIDDLE, Bounds().Width() - (fDivider + kBorderMargin)); @@ -1811,7 +1875,8 @@ AttributeView::Draw(BRect) fLinkRect.top = lineBase - fontMetrics.ascent; fLinkRect.bottom = lineBase + fontMetrics.descent; fLinkRect.left = fDivider + 2; - fLinkRect.right = fLinkRect.left + StringWidth(fLinkToStr.String()) + 3; + fLinkRect.right = fLinkRect.left + StringWidth(fLinkToStr.String()) + + 3; // No description field fDescRect = BRect(-1, -1, -1, -1); @@ -1838,7 +1903,8 @@ AttributeView::Draw(BRect) MovePenTo(BPoint(fDivider + kDrawMargin, lineBase)); SetHighColor(kAttrValueColor); // Check for truncation - if (StringWidth(fDescStr.String()) > (Bounds().Width() - (fDivider + kBorderMargin))) { + if (StringWidth(fDescStr.String()) > (Bounds().Width() + - (fDivider + kBorderMargin))) { BString nameString(fDescStr.String()); TruncateString(&nameString, B_TRUNCATE_MIDDLE, Bounds().Width() - (fDivider + kBorderMargin)); @@ -1873,8 +1939,9 @@ AttributeView::BeginEditingTitle() textRect.OffsetTo(0, 0); textRect.InsetBy(1, 1); - // Just make it some really large size, since we don't do any line wrapping. - // The text filter will make sure to scroll the cursor into position + // Just make it some really large size, since we don't do any line + // wrapping. The text filter will make sure to scroll the cursor + // into position textRect.right = 2000; fTitleEditView = new BTextView(textFrame, "text_editor", @@ -1911,7 +1978,8 @@ AttributeView::FinishEditingTitle(bool commit) const char* text = fTitleEditView->Text(); uint32 length = strlen(text); - if (commit && strcmp(text, fModel->Name()) != 0 && length < B_FILE_NAME_LENGTH) { + if (commit && strcmp(text, fModel->Name()) != 0 + && length < B_FILE_NAME_LENGTH) { BEntry entry(fModel->EntryRef()); BDirectory parent; if (entry.InitCheck() == B_OK @@ -1936,7 +2004,8 @@ AttributeView::FinishEditingTitle(bool commit) GetFont(¤tFont); currentFont.SetSize(kTitleFontHeight); fTitleRect.right = min_c(fTitleRect.left - + currentFont.StringWidth(fTitleEditView->Text()), Bounds().Width() - 5); + + currentFont.StringWidth(fTitleEditView->Text()), + Bounds().Width() - 5); } } } else if (length >= B_FILE_NAME_LENGTH) { @@ -2081,12 +2150,14 @@ AttributeView::BuildContextMenu(BMenu* parent) BMenuItem* sizeItem = NULL; if (model.IsDirectory() && !model.IsVolume() && !model.IsRoot()) { - parent->AddItem(sizeItem = new BMenuItem(B_TRANSLATE("Recalculate folder size"), + parent->AddItem(sizeItem + = new BMenuItem(B_TRANSLATE("Recalculate folder size"), new BMessage(kRecalculateSize))); } if (model.IsSymLink()) { - parent->AddItem(sizeItem = new BMenuItem(B_TRANSLATE("Set new link target"), + parent->AddItem(sizeItem + = new BMenuItem(B_TRANSLATE("Set new link target"), new BMessage(kSetLinkTarget))); } @@ -2116,7 +2187,8 @@ AttributeView::SetPermissionsSwitchState(int32 state) filter_result -AttributeView::TextViewFilter(BMessage* message, BHandler**, BMessageFilter* filter) +AttributeView::TextViewFilter(BMessage* message, BHandler**, + BMessageFilter* filter) { uchar key; AttributeView* attribView = static_cast( @@ -2162,7 +2234,8 @@ AttributeView::SetSizeStr(const char* sizeStr) BRect bounds(Bounds()); float lineHeight = CurrentFontHeight(kAttribFontHeight) + 6; - bounds.Set(fDivider, fIconRect.bottom, bounds.right, fIconRect.bottom + lineHeight); + bounds.Set(fDivider, fIconRect.bottom, bounds.right, + fIconRect.bottom + lineHeight); Invalidate(bounds); } @@ -2171,7 +2244,8 @@ AttributeView::SetSizeStr(const char* sizeStr) TrackingView::TrackingView(BRect frame, const char* str, BMessage* message) - : BControl(frame, "trackingView", str, message, B_FOLLOW_ALL, B_WILL_DRAW), + : BControl(frame, "trackingView", str, message, B_FOLLOW_ALL, + B_WILL_DRAW), fMouseDown(false), fMouseInView(false) { diff --git a/src/kits/tracker/MimeTypeList.cpp b/src/kits/tracker/MimeTypeList.cpp index aeecfece6a..d1fb23010e 100644 --- a/src/kits/tracker/MimeTypeList.cpp +++ b/src/kits/tracker/MimeTypeList.cpp @@ -77,7 +77,8 @@ ShortMimeInfo::ShortDescription() const } int -ShortMimeInfo::CompareShortDescription(const ShortMimeInfo* a, const ShortMimeInfo* b) +ShortMimeInfo::CompareShortDescription(const ShortMimeInfo* a, + const ShortMimeInfo* b) { return a->fShortDescription.ICompare(b->fShortDescription); } @@ -160,5 +161,3 @@ MimeTypeList::Build() fCommonMimeList.SortItems(&ShortMimeInfo::CompareShortDescription); fLock.Unlock(); } - - diff --git a/src/kits/tracker/Model.cpp b/src/kits/tracker/Model.cpp index ffe56b2d25..8a4e5155e5 100644 --- a/src/kits/tracker/Model.cpp +++ b/src/kits/tracker/Model.cpp @@ -270,8 +270,8 @@ Model::SetTo(const entry_ref* newRef, bool traverse, bool open, bool writable) status_t -Model::SetTo(const node_ref* dirNode, const node_ref* nodeRef, const char* name, - bool open, bool writable) +Model::SetTo(const node_ref* dirNode, const node_ref* nodeRef, + const char* name, bool open, bool writable) { delete fNode; fNode = NULL; @@ -425,7 +425,8 @@ Model::OpenNodeCommon(bool writable) case kQueryTemplateNode: // open or reopen delete fNode; - fNode = new BFile(&fEntryRef, (uint32)(writable ? O_RDWR : O_RDONLY)); + fNode = new BFile(&fEntryRef, + (uint32)(writable ? O_RDWR : O_RDONLY)); break; case kDirectoryNode: @@ -455,11 +456,12 @@ Model::OpenNodeCommon(bool writable) PrintToStream(); #endif TRESPASS(); - // this can only happen if GetStat failed before, in which case - // we shouldn't be here - // ToDo: Obviously, we can also be here if the type could not be determined, - // for example for block devices (so the TRESPASS() macro shouldn't be - // used here)! + // this can only happen if GetStat failed before, + // in which case we shouldn't be here + + // ToDo: Obviously, we can also be here if the type could not + // be determined, for example for block devices (so the TRESPASS() + // macro shouldn't be used here)! return fStatus = B_ERROR; } @@ -598,11 +600,12 @@ Model::FinishSettingUpType() && fBaseType != kLinkNode && !CheckNodeIconHintPrivate(fNode, dynamic_cast(be_app) == NULL) && !HasVectorIconHint(fNode)) { - // when checking for the node icon hint, if we are libtracker, only check - // for small icons - checking for the large icons is a little more - // work for the filesystem and this will speed up the test. - // This makes node icons only work if there is a small and a large node - // icon on a file - for libtracker that is not a problem though + // when checking for the node icon hint, if we are libtracker, + // only check for small icons - checking for the large icons + // is a little more work for the filesystem and this will + // speed up the test. This makes node icons only work if there + // is a small and a large node icon on a file - for libtracker + // that is not a problem though fIconFrom = kUnknownNotFromNode; } @@ -648,9 +651,11 @@ Model::FinishSettingUpType() fMimeType = mimeString; if (fIconFrom == kUnknownNotFromNode - && WellKnowEntryList::Match(NodeRef()) > (directory_which)-1) + && WellKnowEntryList::Match(NodeRef()) + > (directory_which)-1) { // one of home, beos, system, boot, etc. fIconFrom = kTrackerSupplied; + } } break; @@ -695,9 +700,8 @@ Model::FinishSettingUpType() case kExecutableNode: if (IsNodeOpen()) { char signature[B_MIME_TYPE_LENGTH]; - if (GetAppSignatureFromAttr(dynamic_cast(fNode), signature) - == B_OK) { - + if (GetAppSignatureFromAttr(dynamic_cast(fNode), + signature) == B_OK) { if (fPreferredAppName) DeletePreferredAppVolumeNameLinkTo(); @@ -706,7 +710,8 @@ Model::FinishSettingUpType() } } if (!fMimeType.Length()) - fMimeType = B_APP_MIME_TYPE; // should use a shared string here + fMimeType = B_APP_MIME_TYPE; + // should use a shared string here break; default: @@ -728,7 +733,8 @@ Model::ResetIconFrom() // mirror the logic from FinishSettingUpType if ((fBaseType == kDirectoryNode || fBaseType == kVolumeNode || fBaseType == kTrashNode || fBaseType == kDesktopNode) - && !CheckNodeIconHintPrivate(fNode, dynamic_cast(be_app) == NULL)) { + && !CheckNodeIconHintPrivate(fNode, + dynamic_cast(be_app) == NULL)) { if (WellKnowEntryList::Match(NodeRef()) > (directory_which)-1) { fIconFrom = kTrackerSupplied; return; @@ -813,7 +819,8 @@ Model::GetPreferredAppForBrokenSymLink(BString &result) BModelOpener opener(this); BNodeInfo info(fNode); - status_t error = info.GetPreferredApp(result.LockBuffer(B_MIME_TYPE_LENGTH)); + status_t error + = info.GetPreferredApp(result.LockBuffer(B_MIME_TYPE_LENGTH)); result.UnlockBuffer(); if (error != B_OK) @@ -1078,9 +1085,10 @@ Model::SupportsMimeType(const char* type, const BObjectList* list, const char* mimeSignature; int32 bufferLength; - if (message.FindData("types", 'CSTR', index, (const void**)&mimeSignature, - &bufferLength)) + if (message.FindData("types", 'CSTR', index, + (const void**)&mimeSignature, &bufferLength)) { return result; + } if (IsSuperHandlerSignature(mimeSignature)) { if (!exactReason) @@ -1098,7 +1106,8 @@ Model::SupportsMimeType(const char* type, const BObjectList* list, } else match = WhileEachListItem(const_cast*>(list), MatchMimeTypeString, mimeSignature); - // const_cast shouldnt be here, have to have it until MW cleans up + // const_cast shouldnt be here, have to have it until + // MW cleans up if (match == kMatch) // supports the actual type, it can't get any better @@ -1150,9 +1159,10 @@ Model::IsSuperHandler() const const char* mimeSignature; int32 bufferLength; - if (message.FindData("types", 'CSTR', index, (const void**)&mimeSignature, - &bufferLength)) + if (message.FindData("types", 'CSTR', index, + (const void**)&mimeSignature, &bufferLength)) { return false; + } if (IsSuperHandlerSignature(mimeSignature)) return true; @@ -1261,7 +1271,8 @@ Model::GetVersionString(BString &result, version_kind kind) return error; char vstr[32]; - sprintf(vstr, "%ld.%ld.%ld", version.major, version.middle, version.minor); + sprintf(vstr, "%ld.%ld.%ld", version.major, version.middle, + version.minor); result = vstr; return B_OK; } @@ -1271,8 +1282,8 @@ Model::GetVersionString(BString &result, version_kind kind) void Model::PrintToStream(int32 level, bool deep) { - PRINT(("model name %s, entry name %s, inode %" B_PRIdINO ", dev %" B_PRIdDEV - ", directory inode %" B_PRIdINO "\n", + PRINT(("model name %s, entry name %s, inode %" B_PRIdINO ", dev %" + B_PRIdDEV ", directory inode %" B_PRIdINO "\n", Name() ? Name() : "**empty name**", EntryRef()->name ? EntryRef()->name : "**empty ref name**", NodeRef()->node, @@ -1324,8 +1335,10 @@ Model::PrintToStream(int32 level, bool deep) if (level < 1) return; - if (!IsVolume()) - PRINT(("preferred app %s\n", fPreferredAppName ? fPreferredAppName : "")); + if (!IsVolume()) { + PRINT(("preferred app %s\n", + fPreferredAppName ? fPreferredAppName : "")); + } PRINT(("icon from: ")); switch (IconFrom()) { @@ -1426,8 +1439,9 @@ Model::TrackIconSource(icon_size size) BMimeType preferredAppType(preferredApp); err = preferredAppType.GetIconForType(MimeType(), &bitmap, size); if (err == B_OK) { - PRINT(("track icon - got icon for type %s from preferred app %s for file\n", - MimeType(), preferredApp)); + PRINT( + ("track icon - got icon for type %s from preferred " + "app %s for file\n", MimeType(), preferredApp)); return; } } @@ -1453,12 +1467,14 @@ Model::TrackIconSource(icon_size size) err = preferredAppType.GetIconForType(MimeType(), &bitmap, size); if (err == B_OK) { // the preferred app knew icon to use for the type, we are done - PRINT(("track icon - signature %s, got icon from preferred app %s\n", - MimeType(), preferredApp)); + PRINT( + ("track icon - signature %s, got icon from preferred " + "app %s\n", MimeType(), preferredApp)); return; } - PRINT(("track icon - signature %s, preferred app %s, no icon, error %s\n", - MimeType(), preferredApp, strerror(err))); + PRINT( + ("track icon - signature %s, preferred app %s, no icon, " + "error %s\n", MimeType(), preferredApp, strerror(err))); } } diff --git a/src/kits/tracker/Model.h b/src/kits/tracker/Model.h index cfe7a27c4f..1a872a7922 100644 --- a/src/kits/tracker/Model.h +++ b/src/kits/tracker/Model.h @@ -88,11 +88,12 @@ class Model { status_t InitCheck() const; - status_t SetTo(const BEntry*, bool open = false, bool writable = false); - status_t SetTo(const entry_ref*, bool traverse = false, bool open = false, + status_t SetTo(const BEntry*, bool open = false, bool writable = false); - status_t SetTo(const node_ref* dirNode, const node_ref* node, const char* name, + status_t SetTo(const entry_ref*, bool traverse = false, bool open = false, bool writable = false); + status_t SetTo(const node_ref* dirNode, const node_ref* node, + const char* name, bool open = false, bool writable = false); int CompareFolderNamesFirst(const Model* compareModel) const; @@ -124,9 +125,9 @@ class Model { void SetPreferredAppSignature(const char*); void GetPreferredAppForBrokenSymLink(BString &result); - // special purpose call - if a symlink is unresolvable, it makes sense - // to be able to get at it's preferred handler which may be different - // from the Tracker. Used by the network neighborhood. + // special purpose call - if a symlink is unresolvable, it makes + // sense to be able to get at it's preferred handler which may be + // different from the Tracker. Used by the network neighborhood. // type getters bool IsFile() const; @@ -159,8 +160,8 @@ class Model { status_t GetLongVersionString(BString &, version_kind); status_t GetVersionString(BString &, version_kind); - status_t AttrAsString(BString &, int64* value, const char* attributeName, - uint32 attributeType); + status_t AttrAsString(BString &, int64* value, + const char* attributeName, uint32 attributeType); // Node monitor update call void UpdateEntryRef(const node_ref* dirRef, const char* name); @@ -189,8 +190,8 @@ class Model { #endif bool IsSuperHandler() const; - int32 SupportsMimeType(const char* type, const BObjectList* list, - bool exactReason = false) const; + int32 SupportsMimeType(const char* type, + const BObjectList* list, bool exactReason = false) const; // pass in one string in or a bunch in // if false, returns as soon as it figures out that // app supports a given type, if true, returns an exact reason @@ -200,8 +201,9 @@ class Model { const void* buffer, size_t ); // cover call, creates a writable node and writes out attributes // into it; work around for file nodes not being writeable - ssize_t WriteAttrKillForeign(const char* attr, const char* foreignAttr, - type_code type, off_t, const void* buffer, size_t); + ssize_t WriteAttrKillForeign(const char* attr, + const char* foreignAttr, type_code type, off_t, + const void* buffer, size_t); bool Mimeset(bool force); // returns true if mime type changed @@ -242,11 +244,13 @@ class Model { entry_ref fEntryRef; StatStruct fStatBuf; - BString fMimeType; // should use string that may be shared for common types + BString fMimeType; + // should use string that may be shared for common types // bit of overloading hackery here to save on footprint union { - char* fPreferredAppName; // used if we are neither a volume nor a symlink + char* fPreferredAppName; // used if we are neither a volume + // nor a symlink char* fVolumeName; // used if we are a volume Model* fLinkTo; // used if we are a symlink }; @@ -267,7 +271,8 @@ class ModelNodeLazyOpener { public: // consider failing when open does not succeed - ModelNodeLazyOpener(Model* model, bool writable = false, bool openLater = true); + ModelNodeLazyOpener(Model* model, bool writable = false, + bool openLater = true); ~ModelNodeLazyOpener(); bool IsOpen() const; @@ -463,7 +468,8 @@ Model::HasLocalizedName() const inline -ModelNodeLazyOpener::ModelNodeLazyOpener(Model* model, bool writable, bool openLater) +ModelNodeLazyOpener::ModelNodeLazyOpener(Model* model, bool writable, + bool openLater) : fModel(model), fWasOpen(model->IsNodeOpen()), fWasOpenForWriting(model->IsNodeOpenForWriting()) diff --git a/src/kits/tracker/Navigator.cpp b/src/kits/tracker/Navigator.cpp index 844b233f5b..5aff95950f 100644 --- a/src/kits/tracker/Navigator.cpp +++ b/src/kits/tracker/Navigator.cpp @@ -58,8 +58,8 @@ static const int32 kMaxHistory = 32; static BPicture sPicture; -BNavigatorButton::BNavigatorButton(BRect rect, const char* name, BMessage* message, - int32 resIDon, int32 resIDoff, int32 resIDdisabled) +BNavigatorButton::BNavigatorButton(BRect rect, const char* name, + BMessage* message, int32 resIDon, int32 resIDoff, int32 resIDdisabled) : BPictureButton(rect, name, &sPicture, &sPicture, message), fResIDOn(resIDon), fResIDOff(resIDoff), @@ -81,17 +81,20 @@ void BNavigatorButton::AttachedToWindow() { BBitmap* bmpOn = 0; - GetTrackerResources()->GetBitmapResource(B_MESSAGE_TYPE, fResIDOn, &bmpOn); + GetTrackerResources()->GetBitmapResource(B_MESSAGE_TYPE, fResIDOn, + &bmpOn); SetPicture(bmpOn, true, true); delete bmpOn; BBitmap* bmpOff = 0; - GetTrackerResources()->GetBitmapResource(B_MESSAGE_TYPE, fResIDOff, &bmpOff); + GetTrackerResources()->GetBitmapResource(B_MESSAGE_TYPE, fResIDOff, + &bmpOff); SetPicture(bmpOff, true, false); delete bmpOff; BBitmap* bmpDisabled = 0; - GetTrackerResources()->GetBitmapResource(B_MESSAGE_TYPE, fResIDDisabled, &bmpDisabled); + GetTrackerResources()->GetBitmapResource(B_MESSAGE_TYPE, fResIDDisabled, + &bmpDisabled); SetPicture(bmpDisabled, false, false); SetPicture(bmpDisabled, false, true); delete bmpDisabled; @@ -197,8 +200,10 @@ BNavigator::Draw(BRect) // Draws a beveled smooth border BeginLineArray(4); AddLine(Bounds().LeftTop(), Bounds().RightTop(), shineColor); - AddLine(Bounds().LeftTop(), Bounds().LeftBottom() - BPoint(0, 1), shineColor); - AddLine(Bounds().LeftBottom() - BPoint(-1, 1), Bounds().RightBottom() - BPoint(0, 1), halfDarkColor); + AddLine(Bounds().LeftTop(), Bounds().LeftBottom() - BPoint(0, 1), + shineColor); + AddLine(Bounds().LeftBottom() - BPoint(-1, 1), + Bounds().RightBottom() - BPoint(0, 1), halfDarkColor); AddLine(Bounds().LeftBottom(), Bounds().RightBottom(), darkColor); EndLineArray(); } @@ -275,14 +280,17 @@ BNavigator::GoUp(bool option) BEntry entry; if (entry.SetTo(fPath.Path()) == B_OK) { BEntry parentEntry; - if (entry.GetParent(&parentEntry) == B_OK && !FSIsDeskDir(&parentEntry)) + if (entry.GetParent(&parentEntry) == B_OK + && !FSIsDeskDir(&parentEntry)) { SendNavigationMessage(kActionUp, &parentEntry, option); + } } } void -BNavigator::SendNavigationMessage(NavigationAction action, BEntry* entry, bool option) +BNavigator::SendNavigationMessage(NavigationAction action, BEntry* entry, + bool option) { entry_ref ref; @@ -298,26 +306,33 @@ BNavigator::SendNavigationMessage(NavigationAction action, BEntry* entry, bool o else nodeRef = NULL; - // if the option key was held down, open in new window (send message to be_app) - // otherwise send message to this window. TTracker (be_app) understands nodeRefToSlection, - // BContainerWindow doesn't, so we have to select the item manually + // if the option key was held down, open in new window (send message + // to be_app) otherwise send message to this window. TTracker + // (be_app) understands nodeRefToSlection, BContainerWindow doesn't, + // so we have to select the item manually if (option) { message.what = B_REFS_RECEIVED; - if (nodeRef) - message.AddData("nodeRefToSelect", B_RAW_TYPE, nodeRef, sizeof(node_ref)); + if (nodeRef) { + message.AddData("nodeRefToSelect", B_RAW_TYPE, nodeRef, + sizeof(node_ref)); + } be_app->PostMessage(&message); } else { message.what = kSwitchDirectory; Window()->PostMessage(&message); UnlockLooper(); - // This is to prevent a dead-lock situation. SelectChildInParentSoon() - // eventually locks the TaskLoop::fLock. Later, when StandAloneTaskLoop::Run() - // runs, it also locks TaskLoop::fLock and subsequently locks this window's looper. - // Therefore we can't call SelectChildInParentSoon with our Looper locked, - // because we would get different orders of locking (thus the risk of dead-locking). + // This is to prevent a dead-lock situation. + // SelectChildInParentSoon() eventually locks the + // TaskLoop::fLock. Later, when StandAloneTaskLoop::Run() + // runs, it also locks TaskLoop::fLock and subsequently + // locks this window's looper. Therefore we can't call + // SelectChildInParentSoon with our Looper locked, + // because we would get different orders of locking + // (thus the risk of dead-locking). // - // Todo: Change the locking behaviour of StandAloneTaskLoop::Run() and sub- - // sequently called functions. + // Todo: Change the locking behaviour of + // StandAloneTaskLoop::Run() and subsequently called + // functions. if (nodeRef) dynamic_cast(be_app)->SelectChildInParentSoon(&ref, nodeRef); LockLooper(); @@ -387,7 +402,8 @@ BNavigator::UpdateLocation(const Model* newmodel, int32 action) BEntry entry; if (entry.SetTo(fPath.Path()) == B_OK) { BEntry parentEntry; - fUp->SetEnabled(entry.GetParent(&parentEntry) == B_OK && !FSIsDeskDir(&parentEntry)); + fUp->SetEnabled(entry.GetParent(&parentEntry) == B_OK + && !FSIsDeskDir(&parentEntry)); } // Enable history buttons if history contains something diff --git a/src/kits/tracker/OpenWithWindow.cpp b/src/kits/tracker/OpenWithWindow.cpp index ff957d0205..7d5456dcb6 100644 --- a/src/kits/tracker/OpenWithWindow.cpp +++ b/src/kits/tracker/OpenWithWindow.cpp @@ -1433,8 +1433,8 @@ SearchForSignatureEntryList::Relation(const BMessage* entriesToOpen, void SearchForSignatureEntryList::RelationDescription(const BMessage* entriesToOpen, - const Model* applicationModel, BString* description, const entry_ref* preferredApp, - const entry_ref* preferredAppForFile) + const Model* applicationModel, BString* description, + const entry_ref* preferredApp, const entry_ref* preferredAppForFile) { for (int32 index = 0; ;index++) { entry_ref ref; @@ -1482,10 +1482,11 @@ SearchForSignatureEntryList::RelationDescription(const BMessage* entriesToOpen, { mimeType.SetTo(model.MimeType()); - if (preferredApp && *applicationModel->EntryRef() == *preferredApp) + if (preferredApp + && *applicationModel->EntryRef() == *preferredApp) { // application matches cached preferred app, we are done description->SetTo(B_TRANSLATE("Preferred for %type")); - else + } else description->SetTo(B_TRANSLATE("Handles %type")); char shortDescription[256]; @@ -1543,7 +1544,9 @@ SearchForSignatureEntryList::CanOpenWithFilter(const Model* appModel, BEntry entry2(&trackerInfo.ref); entry2.GetPath(&path2); - PRINT(("filtering out %s, sig %s, active Tracker at %s, result %s, refName %s\n", + PRINT( + ("filtering out %s, sig %s, active Tracker at %s, " + "result %s, refName %s\n", path.Path(), signature, path2.Path(), strerror(result), trackerInfo.ref.name)); #endif @@ -1583,7 +1586,8 @@ SearchForSignatureEntryList::CanOpenWithFilter(const Model* appModel, return false; } - if (relation != kNoRelation && relation != kSuperhandler && !fGenericFilesOnly) { + if (relation != kNoRelation && relation != kSuperhandler + && !fGenericFilesOnly) { // we hit at least one app that is not a superhandler and // handles the document fFoundOneNonSuperHandler = true; @@ -1614,7 +1618,8 @@ ConditionalAllAppsIterator::Instantiate() BString lookForAppsPredicate; lookForAppsPredicate << "(" << kAttrAppSignature << " = \"*\" ) && ( " << kAttrMIMEType << " = " << B_APP_MIME_TYPE << " ) "; - fWalker = new BTrackerPrivate::TQueryWalker(lookForAppsPredicate.String()); + fWalker + = new BTrackerPrivate::TQueryWalker(lookForAppsPredicate.String()); } @@ -1647,8 +1652,8 @@ ConditionalAllAppsIterator::GetNextRef(entry_ref* ref) int32 -ConditionalAllAppsIterator::GetNextDirents(struct dirent* buffer, size_t length, - int32 count) +ConditionalAllAppsIterator::GetNextDirents(struct dirent* buffer, + size_t length, int32 count) { if (!Iterate()) return 0; diff --git a/src/kits/tracker/OpenWithWindow.h b/src/kits/tracker/OpenWithWindow.h index ade2d702be..21baf5844e 100644 --- a/src/kits/tracker/OpenWithWindow.h +++ b/src/kits/tracker/OpenWithWindow.h @@ -91,23 +91,26 @@ class SearchForSignatureEntryList : public EntryListBase { void TrySettingPreferredAppForFile(const entry_ref*); int32 Relation(const BMessage* entriesToOpen, const Model*) const; - // returns the reason why an application is shown in Open With window + // returns the reason why an application is shown in + // Open With window void RelationDescription(const BMessage* entriesToOpen, const Model*, BString*) const; - // returns a string describing why application handles files to open + // returns a string describing why application handles files + // to open static int32 Relation(const BMessage* entriesToOpen, const Model*, const entry_ref* preferredApp, const entry_ref* preferredAppForFile); - // returns the reason why an application is shown in Open With window - // static version, needs the preferred app for preformance + // returns the reason why an application is shown in Open With + // window static version, needs the preferred app for preformance static void RelationDescription(const BMessage* entriesToOpen, const Model*, BString*, const entry_ref* preferredApp, const entry_ref* preferredAppForFile); - // returns a string describing why application handles files to open + // returns a string describing why application handles files + // to open - bool CanOpenWithFilter(const Model* appModel, const BMessage* entriesToOpen, - const entry_ref* preferredApp); + bool CanOpenWithFilter(const Model* appModel, + const BMessage* entriesToOpen, const entry_ref* preferredApp); void NonGenericFileFound(); bool GenericFilesOnly() const; @@ -116,7 +119,8 @@ class SearchForSignatureEntryList : public EntryListBase { private: static int32 Relation(const Model* node, const Model* app); - // returns the reason why an application is shown in Open With window + // returns the reason why an application is shown in + // Open With window CachedEntryIteratorList* fIteratorList; BObjectList fSignatures; @@ -152,7 +156,8 @@ class OpenWithContainerWindow : public BContainerWindow { OpenWithPoseView* PoseView() const; protected: - virtual BPoseView* NewPoseView(Model* model, BRect rect, uint32 viewMode); + virtual BPoseView* NewPoseView(Model* model, BRect rect, + uint32 viewMode); virtual bool ShouldAddMenus() const; virtual void ShowContextMenu(BPoint, const entry_ref*, BView*); @@ -176,10 +181,12 @@ class OpenWithContainerWindow : public BContainerWindow { void OpenWithSelection(); // open entries with the selected app void MakeDefaultAndOpen(); - // open entries with the selected app and make it the default handler + // open entries with the selected app and make it + // the default handler private: - static filter_result KeyDownFilter(BMessage*, BHandler**, BMessageFilter*); + static filter_result KeyDownFilter(BMessage*, BHandler**, + BMessageFilter*); BMessage* fEntriesToOpen; BButton* fLaunchButton; @@ -198,16 +205,19 @@ class OpenWithPoseView : public BPoseView { // open entries with the selected app int32 OpenWithRelation(const Model*) const; - // returns the reason why an application is shown in Open With window + // returns the reason why an application is shown in + // Open With window void OpenWithRelationDescription(const Model*, BString*) const; - // returns a string describing why application handles files to open + // returns a string describing why application handles files + // to open OpenWithContainerWindow* ContainerWindow() const; virtual bool AddPosesThreadValid(const entry_ref*) const; protected: - // don't do any volume watching and memtamime watching in open with panels for now + // don't do any volume watching and memtamime watching in open with + // panels for now virtual void InitialStartWatching() {} virtual void FinalStopWatching() {} @@ -225,18 +235,22 @@ class OpenWithPoseView : public BPoseView { virtual void SavePoseLocations(BRect* = NULL); virtual void MoveSelectionToTrash(bool selectNext = true); virtual void MoveSelectionTo(BPoint, BPoint, BContainerWindow*); - virtual void MoveSelectionInto(Model* destFolder, BContainerWindow* srcWindow, - bool forceCopy, bool create_link = false); + virtual void MoveSelectionInto(Model* destFolder, + BContainerWindow* srcWindow, bool forceCopy, + bool create_link = false); virtual bool HandleMessageDropped(BMessage*); - virtual bool CanHandleDragSelection(const Model*, const BMessage*, bool); + virtual bool CanHandleDragSelection(const Model*, const BMessage*, + bool); virtual bool Represents(const node_ref*) const; virtual bool Represents(const entry_ref*) const; - virtual void CreatePoses(Model** models, PoseInfo* poseInfoArray, int32 count, - BPose** resultingPoses, bool insertionSort = true, int32* lastPoseIndexPtr = NULL, - BRect* boundsPtr = NULL, bool forceDraw = false); - // override to add selecting the default handling app for selection + virtual void CreatePoses(Model** models, PoseInfo* poseInfoArray, + int32 count, BPose** resultingPoses, bool insertionSort = true, + int32* lastPoseIndexPtr = NULL, BRect* boundsPtr = NULL, + bool forceDraw = false); + // override to add selecting the default handling app + // for selection virtual bool ShouldShowPose(const Model*, const PoseInfo*); @@ -260,7 +274,8 @@ class RelationCachingModelProxy { RelationCachingModelProxy(Model* model); ~RelationCachingModelProxy(); - int32 Relation(SearchForSignatureEntryList* iterator, BMessage* entries) const; + int32 Relation(SearchForSignatureEntryList* iterator, + BMessage* entries) const; Model* fModel; mutable int32 fRelation; diff --git a/src/kits/tracker/OverrideAlert.cpp b/src/kits/tracker/OverrideAlert.cpp index 8431b3bc1f..b282b8006f 100644 --- a/src/kits/tracker/OverrideAlert.cpp +++ b/src/kits/tracker/OverrideAlert.cpp @@ -101,8 +101,9 @@ OverrideAlert::OverPosition(float width, float height) { // This positions the alert window like a normal alert, put // places it on top of the calling window if possible. - - BWindow* window = dynamic_cast(BLooper::LooperForThread(find_thread(NULL))); + + BWindow* window + = dynamic_cast(BLooper::LooperForThread(find_thread(NULL))); BRect screenFrame; BRect desirableRect; screenFrame = BScreen(window).Frame(); @@ -149,7 +150,9 @@ OverrideAlert::UpdateButtons(uint32 modifiers, bool force) fCurModifiers = modifiers; for (int32 i = 0; i < 3; i++) { BButton* button = ButtonAt(i); - if (button) - button->SetEnabled(((fButtonModifiers[i] & fCurModifiers) == fButtonModifiers[i])); + if (button) { + button->SetEnabled(((fButtonModifiers[i] & fCurModifiers) + == fButtonModifiers[i])); + } } } diff --git a/src/kits/tracker/Pose.cpp b/src/kits/tracker/Pose.cpp index f35bd15607..f56618b0fd 100644 --- a/src/kits/tracker/Pose.cpp +++ b/src/kits/tracker/Pose.cpp @@ -56,7 +56,8 @@ CalcFreeSpace(BVolume* volume) if (capacity == 0) return 100; - int32 percent = static_cast(volume->FreeBytes() / (capacity / 100)); + int32 percent + = static_cast(volume->FreeBytes() / (capacity / 100)); // warn below 20 MB of free space (if this is less than 10% of free space) if (volume->FreeBytes() < 20 * 1024 * 1024 && percent < 10) @@ -69,7 +70,8 @@ CalcFreeSpace(BVolume* volume) // symlink pose uses the resolved model to retrieve the icon, if not broken // everything else, like the attributes, etc. is retrieved directly from the // symlink itself -BPose::BPose(Model* model, BPoseView* view, uint32 clipboardMode, bool selected) +BPose::BPose(Model* model, BPoseView* view, uint32 clipboardMode, + bool selected) : fModel(model), fWidgetList(4, true), fClipboardMode(clipboardMode), @@ -148,7 +150,8 @@ BPose::AddWidget(BPoseView* poseView, BColumn* column) BTextWidget* -BPose::AddWidget(BPoseView* poseView, BColumn* column, ModelNodeLazyOpener &opener) +BPose::AddWidget(BPoseView* poseView, BColumn* column, + ModelNodeLazyOpener &opener) { opener.OpenNode(); if (fModel->InitCheck() != B_OK) @@ -171,7 +174,8 @@ BPose::RemoveWidget(BPoseView*, BColumn* column) void -BPose::Commit(bool saveChanges, BPoint loc, BPoseView* poseView, int32 poseIndex) +BPose::Commit(bool saveChanges, BPoint loc, BPoseView* poseView, + int32 poseIndex) { int32 count = fWidgetList.CountItems(); for (int32 index = 0; index < count; index++) { @@ -185,8 +189,8 @@ BPose::Commit(bool saveChanges, BPoint loc, BPoseView* poseView, int32 poseIndex inline bool -OneMouseUp(BTextWidget* widget, BPose* pose, BPoseView* poseView, BColumn* column, - BPoint poseLoc, BPoint where) +OneMouseUp(BTextWidget* widget, BPose* pose, BPoseView* poseView, + BColumn* column, BPoint poseLoc, BPoint where) { BRect rect; if (poseView->ViewMode() == kListMode) @@ -258,7 +262,8 @@ BPose::UpdateWidgetAndModel(Model* resolvedModel, const char* attrName, BTextWidget* widget = fWidgetList.ItemAt(i); BColumn* column = poseView->ColumnFor(widget->AttrHash()); if (column != NULL && !strcmp(column->AttrName(), attrName)) { - widget->CheckAndUpdate(poseLoc, column, poseView, visible); + widget->CheckAndUpdate(poseLoc, column, poseView, + visible); break; } } @@ -283,8 +288,10 @@ BPose::UpdateWidgetAndModel(Model* resolvedModel, const char* attrName, if (column->StatField()) { BTextWidget* widget = WidgetFor(column->AttrHash()); - if (widget) - widget->CheckAndUpdate(poseLoc, column, poseView, visible); + if (widget) { + widget->CheckAndUpdate(poseLoc, column, poseView, + visible); + } } } } @@ -403,7 +410,8 @@ BPose::EditPreviousNextWidgetCommon(BPoseView* poseView, bool next) { bool found = false; int32 delta = next ? 1 : -1; - for (int32 index = next ? 0 : poseView->CountColumns() - 1; ; index += delta) { + for (int32 index = next ? 0 : poseView->CountColumns() - 1; ; + index += delta) { BColumn* column = poseView->ColumnAt(index); if (!column) break; @@ -510,7 +518,8 @@ BPose::PointInPose(BPoint loc, const BPoseView* poseView, BPoint where, if (!column) break; BTextWidget* widget = WidgetFor(column->AttrHash()); - if (widget && widget->CalcClickRect(loc, column, poseView).Contains(where)) { + if (widget + && widget->CalcClickRect(loc, column, poseView).Contains(where)) { if (hitWidget) *hitWidget = widget; return true; @@ -522,8 +531,8 @@ BPose::PointInPose(BPoint loc, const BPoseView* poseView, BPoint where, void -BPose::Draw(BRect rect, const BRect& updateRect, BPoseView* poseView, BView* drawView, - bool fullDraw, BPoint offset, bool selected) +BPose::Draw(BRect rect, const BRect& updateRect, BPoseView* poseView, + BView* drawView, bool fullDraw, BPoint offset, bool selected) { // If the background wasn't cleared and Draw() is not called after // having edited a name or similar (with fullDraw) @@ -549,8 +558,8 @@ BPose::Draw(BRect rect, const BRect& updateRect, BPoseView* poseView, BView* dra iconRect.top = iconRect.bottom - size; if (updateRect.Intersects(iconRect)) { iconRect.OffsetBy(offset); - DrawIcon(iconRect.LeftTop(), drawView, poseView->IconSize(), directDraw, - !windowActive && !showSelectionWhenInactive); + DrawIcon(iconRect.LeftTop(), drawView, poseView->IconSize(), + directDraw, !windowActive && !showSelectionWhenInactive); } // draw text @@ -571,8 +580,8 @@ BPose::Draw(BRect rect, const BRect& updateRect, BPoseView* poseView, BView* dra poseView)); if (updateRect.Intersects(widgetRect)) { - BRect widgetTextRect(widget->CalcRect(rect.LeftTop(), column, - poseView)); + BRect widgetTextRect(widget->CalcRect(rect.LeftTop(), + column, poseView)); bool selectDuringDraw = directDraw && selected && windowActive; @@ -583,12 +592,15 @@ BPose::Draw(BRect rect, const BRect& updateRect, BPoseView* poseView, BView* dra drawView->SetLowColor(0, 0, 0); } - if (index == 0) - widget->Draw(widgetRect, widgetTextRect, column->Width(), - poseView, drawView, selected, fClipboardMode, offset, directDraw); - else + if (index == 0) { + widget->Draw(widgetRect, widgetTextRect, + column->Width(), poseView, drawView, selected, + fClipboardMode, offset, directDraw); + } else { widget->Draw(widgetTextRect, widgetTextRect, column->Width(), - poseView, drawView, false, fClipboardMode, offset, directDraw); + poseView, drawView, false, fClipboardMode, + offset, directDraw); + } if (index == 0 && selectDuringDraw) drawView->PopState(); @@ -596,7 +608,8 @@ BPose::Draw(BRect rect, const BRect& updateRect, BPoseView* poseView, BView* dra if (windowActive || isDrawingSelectionRect) { widgetTextRect.OffsetBy(offset); drawView->InvertRect(widgetTextRect); - } else if (!windowActive && showSelectionWhenInactive) { + } else if (!windowActive + && showSelectionWhenInactive) { widgetTextRect.OffsetBy(offset); drawView->PushState(); drawView->SetDrawingMode(B_OP_BLEND); @@ -705,8 +718,10 @@ BPose::MoveTo(BPoint point, BPoseView* poseView, bool inval) // might need to move a text view if we're active if (poseView->ActivePose() == this) { BView* border_view = poseView->FindView("BorderView"); - if (border_view) - border_view->MoveBy(point.x - oldLocation.x, point.y - oldLocation.y); + if (border_view) { + border_view->MoveBy(point.x - oldLocation.x, + point.y - oldLocation.y); + } } float scale = 1.0; @@ -756,8 +771,8 @@ BPose::WidgetFor(uint32 attr, int32* index) const BTextWidget* -BPose::WidgetFor(BColumn* column, BPoseView* poseView, ModelNodeLazyOpener &opener, - int32* index) +BPose::WidgetFor(BColumn* column, BPoseView* poseView, + ModelNodeLazyOpener &opener, int32* index) { BTextWidget* widget = WidgetFor(column->AttrHash(), index); if (!widget) @@ -777,17 +792,20 @@ BPose::TestLargeIconPixel(BPoint point) const void -BPose::DrawIcon(BPoint where, BView* view, icon_size kind, bool direct, bool drawUnselected) +BPose::DrawIcon(BPoint where, BView* view, icon_size kind, bool direct, + bool drawUnselected) { if (fClipboardMode == kMoveSelectionTo) { view->SetDrawingMode(B_OP_ALPHA); - view->SetHighColor(0, 0, 0, 64); // set the level of transparency + view->SetHighColor(0, 0, 0, 64); + // set the level of transparency view->SetBlendingMode(B_CONSTANT_ALPHA, B_ALPHA_OVERLAY); } else if (direct) view->SetDrawingMode(B_OP_OVER); IconCache::sIconCache->Draw(ResolvedModel(), view, where, - fIsSelected && !drawUnselected ? kSelectedIcon : kNormalIcon, kind, true); + fIsSelected && !drawUnselected ? kSelectedIcon : kNormalIcon, kind, + true); if (fPercent != -1) DrawBar(where, view, kind); @@ -816,7 +834,8 @@ BPose::DrawBar(BPoint where,BView* view,icon_size kind) view->SetHighColor(32, 32, 32, 92); view->MovePenTo(BPoint(where.x + size, where.y + 1 + yOffset)); view->StrokeLine(BPoint(where.x + size, where.y + size - yOffset)); - view->StrokeLine(BPoint(where.x + size - barWidth + 1, where.y + size - yOffset)); + view->StrokeLine(BPoint(where.x + size - barWidth + 1, + where.y + size - yOffset)); view->SetDrawingMode(B_OP_ALPHA); @@ -846,7 +865,9 @@ BPose::DrawBar(BPoint where,BView* view,icon_size kind) // the used space bar bar.top = bar.bottom + 1; bar.bottom = rect.bottom; - view->SetHighColor(fPercent < -1 ? TrackerSettings().WarningSpaceColor() : TrackerSettings().UsedSpaceColor()); + view->SetHighColor(fPercent < -1 + ? TrackerSettings().WarningSpaceColor() + : TrackerSettings().UsedSpaceColor()); view->FillRect(bar); view->PopState(); @@ -899,8 +920,10 @@ BPose::CalcRect(BPoint loc, const BPoseView* poseView, bool minimalRect) const if (minimalRect) { BTextWidget* widget = WidgetFor(poseView->FirstColumn()->AttrHash()); - if (widget) - rect.right = widget->CalcRect(loc, poseView->FirstColumn(), poseView).right; + if (widget) { + rect.right = widget->CalcRect(loc, poseView->FirstColumn(), + poseView).right; + } } return rect; diff --git a/src/kits/tracker/Pose.h b/src/kits/tracker/Pose.h index d03a6ef5d0..1cfefb3fdf 100644 --- a/src/kits/tracker/Pose.h +++ b/src/kits/tracker/Pose.h @@ -55,11 +55,13 @@ enum { class BPose { public: - BPose(Model* adopt, BPoseView*, uint32 clipboardMode, bool selected = false); + BPose(Model* adopt, BPoseView*, uint32 clipboardMode, + bool selected = false); virtual ~BPose(); BTextWidget* AddWidget(BPoseView*, BColumn*); - BTextWidget* AddWidget(BPoseView*, BColumn*, ModelNodeLazyOpener &opener); + BTextWidget* AddWidget(BPoseView*, BColumn*, + ModelNodeLazyOpener &opener); void RemoveWidget(BPoseView*, BColumn*); void SetLocation(BPoint, const BPoseView*); void MoveTo(BPoint, BPoseView*, bool inval = true); @@ -68,13 +70,15 @@ class BPose { bool fullDraw = true); void Draw(BRect poseRect, const BRect& updateRect, BPoseView*, BView* drawView, bool fullDraw, BPoint offset, bool selected); - void DeselectWithoutErasingBackground(BRect rect, BPoseView* poseView); + void DeselectWithoutErasingBackground(BRect rect, + BPoseView* poseView); // special purpose draw call for deselecting over a textured // background void DrawBar(BPoint where, BView* view, icon_size kind); - void DrawIcon(BPoint, BView*, icon_size, bool direct, bool drawUnselected = false); + void DrawIcon(BPoint, BView*, icon_size, bool direct, + bool drawUnselected = false); void DrawToggleSwitch(BRect, BPoseView*); void MouseUp(BPoint poseLoc, BPoseView*, BPoint where, int32 index); Model* TargetModel() const; diff --git a/src/kits/tracker/PoseList.h b/src/kits/tracker/PoseList.h index 4e8c287073..945dda370e 100644 --- a/src/kits/tracker/PoseList.h +++ b/src/kits/tracker/PoseList.h @@ -73,7 +73,8 @@ public: template void -EachPoseAndModel(PoseList* list, void (*eachFunction)(BPose*, Model*, EachParam1), +EachPoseAndModel(PoseList* list, + void (*eachFunction)(BPose*, Model*, EachParam1), EachParam1 eachParam1) { for (int32 index = list->CountItems() - 1; index >= 0; index--) { @@ -87,8 +88,9 @@ EachPoseAndModel(PoseList* list, void (*eachFunction)(BPose*, Model*, EachParam1 template void -EachPoseAndModel(PoseList* list, void (*eachFunction)(BPose*, Model*, int32 , - EachParam1), EachParam1 eachParam1) +EachPoseAndModel(PoseList* list, + void (*eachFunction)(BPose*, Model*, int32, EachParam1), + EachParam1 eachParam1) { for (int32 index = list->CountItems() - 1; index >= 0; index--) { BPose* pose = list->ItemAt(index); @@ -101,8 +103,9 @@ EachPoseAndModel(PoseList* list, void (*eachFunction)(BPose*, Model*, int32 , template void -EachPoseAndModel(PoseList* list, void (*eachFunction)(BPose*, Model*, EachParam1, - EachParam2), EachParam1 eachParam1, EachParam2 eachParam2) +EachPoseAndModel(PoseList* list, + void (*eachFunction)(BPose*, Model*, EachParam1, EachParam2), + EachParam1 eachParam1, EachParam2 eachParam2) { for (int32 index = list->CountItems() - 1; index >= 0; index--) { BPose* pose = list->ItemAt(index); @@ -114,8 +117,9 @@ EachPoseAndModel(PoseList* list, void (*eachFunction)(BPose*, Model*, EachParam1 template void -EachPoseAndModel(PoseList* list, void (*eachFunction)(BPose*, Model*, int32, - EachParam1, EachParam2), EachParam1 eachParam1, EachParam2 eachParam2) +EachPoseAndModel(PoseList* list, + void (*eachFunction)(BPose*, Model*, int32, EachParam1, EachParam2), + EachParam1 eachParam1, EachParam2 eachParam2) { for (int32 index = list->CountItems() - 1; index >= 0; index--) { BPose* pose = list->ItemAt(index); @@ -127,8 +131,8 @@ EachPoseAndModel(PoseList* list, void (*eachFunction)(BPose*, Model*, int32, template void -EachPoseAndResolvedModel(PoseList* list, void (*eachFunction)(BPose*, Model*, EachParam1), - EachParam1 eachParam1) +EachPoseAndResolvedModel(PoseList* list, + void (*eachFunction)(BPose*, Model*, EachParam1), EachParam1 eachParam1) { for (int32 index = list->CountItems() - 1; index >= 0; index--) { BPose* pose = list->ItemAt(index); @@ -140,8 +144,9 @@ EachPoseAndResolvedModel(PoseList* list, void (*eachFunction)(BPose*, Model*, Ea template void -EachPoseAndResolvedModel(PoseList* list, void (*eachFunction)(BPose*, Model*, int32 , - EachParam1), EachParam1 eachParam1) +EachPoseAndResolvedModel(PoseList* list, + void (*eachFunction)(BPose*, Model*, int32 , EachParam1), + EachParam1 eachParam1) { for (int32 index = list->CountItems() - 1; index >= 0; index--) { BPose* pose = list->ItemAt(index); @@ -153,8 +158,9 @@ EachPoseAndResolvedModel(PoseList* list, void (*eachFunction)(BPose*, Model*, in template void -EachPoseAndResolvedModel(PoseList* list, void (*eachFunction)(BPose*, Model*, EachParam1, - EachParam2), EachParam1 eachParam1, EachParam2 eachParam2) +EachPoseAndResolvedModel(PoseList* list, + void (*eachFunction)(BPose*, Model*, EachParam1, EachParam2), + EachParam1 eachParam1, EachParam2 eachParam2) { for (int32 index = list->CountItems() - 1; index >= 0; index--) { BPose* pose = list->ItemAt(index); @@ -166,8 +172,9 @@ EachPoseAndResolvedModel(PoseList* list, void (*eachFunction)(BPose*, Model*, Ea template void -EachPoseAndResolvedModel(PoseList* list, void (*eachFunction)(BPose*, Model*, int32, - EachParam1, EachParam2), EachParam1 eachParam1, EachParam2 eachParam2) +EachPoseAndResolvedModel(PoseList* list, + void (*eachFunction)(BPose*, Model*, int32, EachParam1, EachParam2), + EachParam1 eachParam1, EachParam2 eachParam2) { for (int32 index = list->CountItems() - 1; index >= 0; index--) { BPose* pose = list->ItemAt(index); diff --git a/src/kits/tracker/PoseView.cpp b/src/kits/tracker/PoseView.cpp index 47d15731c6..11b0e3ec79 100644 --- a/src/kits/tracker/PoseView.cpp +++ b/src/kits/tracker/PoseView.cpp @@ -203,7 +203,8 @@ PoseCompareAddWidget(const BPose* p1, const BPose* p2, BPoseView* view); // #pragma mark - -BPoseView::BPoseView(Model* model, BRect bounds, uint32 viewMode, uint32 resizeMask) +BPoseView::BPoseView(Model* model, BRect bounds, uint32 viewMode, + uint32 resizeMask) : BView(bounds, "PoseView", resizeMask, B_WILL_DRAW | B_PULSE_NEEDED), fIsDrawingSelectionRect(false), fHScrollBar(NULL), @@ -265,7 +266,8 @@ BPoseView::BPoseView(Model* model, BRect bounds, uint32 viewMode, uint32 resizeM fDeskbarFrame(0, 0, -1, -1) { fViewState->SetViewMode(viewMode); - fShowSelectionWhenInactive = TrackerSettings().ShowSelectionWhenInactive(); + fShowSelectionWhenInactive + = TrackerSettings().ShowSelectionWhenInactive(); fTransparentSelection = TrackerSettings().TransparentSelection(); fFilterStrings.AddItem(new BString("")); } @@ -400,7 +402,8 @@ BPoseView::RestoreColumnState(AttributeStreamNode* node) } if (size > 0 && size < 10000) { - // check for invalid sizes here to protect against munged attributes + // check for invalid sizes here to protect against + // munged attributes char* buffer = new char[size]; off_t result = node->Read(name, 0, B_RAW_TYPE, size, buffer); if (result) { @@ -468,7 +471,8 @@ BPoseView::AddColumnList(BObjectList* list) list->SortItems(&CompareColumns); float nextLeftEdge = 0; - for (int32 columIndex = 0; columIndex < list->CountItems(); columIndex++) { + for (int32 columIndex = 0; columIndex < list->CountItems(); + columIndex++) { BColumn* column = list->ItemAt(columIndex); // Make sure that columns don't overlap @@ -477,12 +481,14 @@ BPoseView::AddColumnList(BObjectList* list) column->SetOffset(nextLeftEdge); } - nextLeftEdge = column->Offset() + column->Width() - kRoomForLine / 2.0f - + kTitleColumnExtraMargin; + nextLeftEdge = column->Offset() + column->Width() + - kRoomForLine / 2.0f + kTitleColumnExtraMargin; fColumnList->AddItem(column); - if (!IsWatchingDateFormatChange() && column->AttrType() == B_TIME_TYPE) + if (!IsWatchingDateFormatChange() + && column->AttrType() == B_TIME_TYPE) { StartWatchDateFormatChange(); + } } } @@ -514,15 +520,17 @@ BPoseView::RestoreState(AttributeStreamNode* node) } if (size > 0 && size < 10000) { - // check for invalid sizes here to protect against munged attributes + // check for invalid sizes here to protect against + // munged attributes char* buffer = new char[size]; off_t result = node->Read(name, 0, B_RAW_TYPE, size, buffer); if (result) { BMallocIO stream; stream.WriteAt(0, buffer, size); stream.Seek(0, SEEK_SET); - BViewState* viewstate = BViewState::InstantiateFromStream(&stream, - wrongEndianness); + BViewState* viewstate + = BViewState::InstantiateFromStream(&stream, + wrongEndianness); if (viewstate) { delete fViewState; fViewState = viewstate; @@ -805,25 +813,28 @@ BPoseView::SavePoseLocations(BRect* frameIfDesktop) // nuke opposite endianness dir.RemoveAttr(poseInfoAttrForeign); - if (!isTrash && desktop && dir.WriteAttr(kAttrExtendedDisksPoseInfo, - B_RAW_TYPE, 0, - extendedPoseInfo, extendedPoseInfoSize) - == (ssize_t)extendedPoseInfoSize) + if (!isTrash && desktop + && dir.WriteAttr(kAttrExtendedDisksPoseInfo, + B_RAW_TYPE, 0, extendedPoseInfo, extendedPoseInfoSize) + == (ssize_t)extendedPoseInfoSize) { // nuke opposite endianness dir.RemoveAttr(kAttrExtendedDisksPoseInfoForegin); + } } } else { - model->WriteAttrKillForeign(kAttrPoseInfo, kAttrPoseInfoForeign, - B_RAW_TYPE, 0, &poseInfo, sizeof(poseInfo)); + model->WriteAttrKillForeign(kAttrPoseInfo, + kAttrPoseInfoForeign, B_RAW_TYPE, 0, &poseInfo, + sizeof(poseInfo)); if (desktop) { model->WriteAttrKillForeign(kAttrExtendedPoseInfo, kAttrExtendedPoseInfoForegin, - B_RAW_TYPE, 0, extendedPoseInfo, extendedPoseInfoSize); + B_RAW_TYPE, 0, extendedPoseInfo, + extendedPoseInfoSize); } } - delete [] (char*)extendedPoseInfo; + delete[] (char*)extendedPoseInfo; // TODO: fix up this mess } } @@ -935,15 +946,19 @@ BPoseView::AttachedToWindow() if (fIsDesktopWindow) AddFilter(new TPoseViewFilter(this)); - AddFilter(new ShortcutFilter(B_RETURN, B_OPTION_KEY, kOpenSelection, this)); - // add Option-Return as a shortcut filter because AddShortcut doesn't allow - // us to have shortcuts without Command yet + AddFilter(new ShortcutFilter(B_RETURN, B_OPTION_KEY, kOpenSelection, + this)); + // add Option-Return as a shortcut filter because AddShortcut + // doesn't allow us to have shortcuts without Command yet AddFilter(new ShortcutFilter(B_ESCAPE, 0, B_CANCEL, this)); // Escape key, used to abort an on-going clipboard cut or filtering - AddFilter(new ShortcutFilter(B_ESCAPE, B_SHIFT_KEY, kCancelSelectionToClipboard, this)); - // Escape + SHIFT will remove current selection from clipboard, or all poses from current folder if 0 selected + AddFilter(new ShortcutFilter(B_ESCAPE, B_SHIFT_KEY, + kCancelSelectionToClipboard, this)); + // Escape + SHIFT will remove current selection from clipboard, + // or all poses from current folder if 0 selected - AddFilter(new LongAndDragTrackingFilter(kMsgMouseLongDown, kMsgMouseDragged)); + AddFilter(new LongAndDragTrackingFilter(kMsgMouseLongDown, + kMsgMouseDragged)); fLastLeftTop = LeftTop(); BFont font(be_plain_font); @@ -954,7 +969,8 @@ BPoseView::AttachedToWindow() // static - init just once if (sFontHeight == -1) { font.GetHeight(&sFontInfo); - sFontHeight = sFontInfo.ascent + sFontInfo.descent + sFontInfo.leading; + sFontHeight = sFontInfo.ascent + sFontInfo.descent + + sFontInfo.leading; } if (TTracker* app = dynamic_cast(be_app)) { @@ -981,7 +997,8 @@ BPoseView::SetIconPoseHeight() case kMiniIconMode: fViewState->SetIconSize(B_MINI_ICON); - fIconPoseHeight = ceilf(sFontHeight < IconSizeInt() ? IconSizeInt() : sFontHeight + 1); + fIconPoseHeight = ceilf(sFontHeight < + IconSizeInt() ? IconSizeInt() : sFontHeight + 1); break; default: @@ -1263,7 +1280,7 @@ BPoseView::AddPosesTask(void* castToParams) { // AddPosesTask reeds a bunch of models and passes them off to // the pose placing and drawing routine. - // + AddPosesParams* params = (AddPosesParams*)castToParams; BMessenger target(params->target); entry_ref ref(params->ref); @@ -1318,8 +1335,9 @@ BPoseView::AddPosesTask(void* castToParams) node_ref itemNode; posesResult->fModels[modelChunkIndex] = 0; - // ToDo - redo this so that modelChunkIndex increments right before - // a new model is added to the array; start with modelChunkIndex = -1 + // ToDo - redo this so that modelChunkIndex increments + // right before a new model is added to the array; + // start with modelChunkIndex = -1 int32 count = container->GetNextDirents(eptr, 1024, 1); if (count <= 0 && !modelChunkIndex) @@ -1328,9 +1346,11 @@ BPoseView::AddPosesTask(void* castToParams) if (count) { ASSERT(count == 1); - if ((!hideDotFiles && (!strcmp(eptr->d_name, ".") || !strcmp(eptr->d_name, ".."))) - || (hideDotFiles && eptr->d_name[0] == '.')) + if ((!hideDotFiles && (!strcmp(eptr->d_name, ".") + || !strcmp(eptr->d_name, ".."))) + || (hideDotFiles && eptr->d_name[0] == '.')) { continue; + } dirNode.device = eptr->d_pdev; dirNode.node = eptr->d_pino;