From 6d01b66d300c2841dba033705f120a7f6e709696 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Sun, 13 Nov 2005 13:43:11 +0000 Subject: [PATCH] GCC 4 fixes by Ingo Weinhold. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14893 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/apps/deskbar/BarView.cpp | 3 +- src/apps/deskbar/StatusView.cpp | 1 + src/apps/deskbar/StatusView.h | 2 + src/kits/tracker/FunctionObject.h | 15 ++++--- src/kits/tracker/Pose.h | 57 --------------------------- src/kits/tracker/PoseList.h | 2 +- src/kits/tracker/PoseView.h | 59 +++++++++++++++++++++++++++- src/kits/tracker/Thread.h | 2 +- src/kits/tracker/TrackerSettings.cpp | 2 +- src/kits/tracker/Utilities.cpp | 2 +- src/kits/tracker/Utilities.h | 2 +- 11 files changed, 77 insertions(+), 70 deletions(-) diff --git a/src/apps/deskbar/BarView.cpp b/src/apps/deskbar/BarView.cpp index 3dd8ba2a4c..59765a988c 100644 --- a/src/apps/deskbar/BarView.cpp +++ b/src/apps/deskbar/BarView.cpp @@ -857,7 +857,8 @@ TBarView::SendDragMessage(const char *signature, entry_ref *ref) // can toss it after send err = mess.SendMessage(fDragMessage); } else if (ref) { - FSLaunchItem(ref, fDragMessage, true, true); + FSLaunchItem((const entry_ref*)ref, (const BMessage*)fDragMessage, + true, true); } else if (signature && strlen(signature) > 0) { roster.Launch(signature, fDragMessage); } diff --git a/src/apps/deskbar/StatusView.cpp b/src/apps/deskbar/StatusView.cpp index b6afaf07ec..6b3249e103 100644 --- a/src/apps/deskbar/StatusView.cpp +++ b/src/apps/deskbar/StatusView.cpp @@ -66,6 +66,7 @@ All rights reserved. #include "TimeView.h" #include "BarApp.h" +using std::max; #ifdef DB_ADDONS // Add-on support diff --git a/src/apps/deskbar/StatusView.h b/src/apps/deskbar/StatusView.h index ea569bac85..1622d63233 100644 --- a/src/apps/deskbar/StatusView.h +++ b/src/apps/deskbar/StatusView.h @@ -70,6 +70,8 @@ struct DeskbarItemInfo { }; #endif +class TReplicantShelf; + class TReplicantTray : public BView { public: TReplicantTray(TBarView *bv, bool vertical); diff --git a/src/kits/tracker/FunctionObject.h b/src/kits/tracker/FunctionObject.h index 228cfd3ed2..c609772936 100644 --- a/src/kits/tracker/FunctionObject.h +++ b/src/kits/tracker/FunctionObject.h @@ -194,7 +194,7 @@ public: virtual void operator()() - { result = (function)(p1.Pass()); } + { FunctionObjectWithResult::result = (function)(p1.Pass()); } private: Result (*function)(Param1); @@ -258,7 +258,8 @@ public: } virtual void operator()() - { result = (function)(p1.Pass(), p2.Pass(), p3.Pass()); } + { FunctionObjectWithResult::result + = (function)(p1.Pass(), p2.Pass(), p3.Pass()); } private: Result (*function)(Param1, Param2, Param3); @@ -305,7 +306,8 @@ public: } virtual void operator()() - { result = (function)(p1.Pass(), p2.Pass(), p3.Pass(), p4.Pass()); } + { FunctionObjectWithResult::result + = (function)(p1.Pass(), p2.Pass(), p3.Pass(), p4.Pass()); } private: Result (*function)(Param1, Param2, Param3, Param4); @@ -365,7 +367,7 @@ public: } virtual void operator()() - { result = (target->*function)(); } + { FunctionObjectWithResult::result = (target->*function)(); } private: @@ -428,7 +430,7 @@ public: } virtual void operator()() - { result = (target->*function)(p1.Pass()); } + { FunctionObjectWithResult::result = (target->*function)(p1.Pass()); } protected: R (T::*function)(Param1); @@ -449,7 +451,8 @@ public: } virtual void operator()() - { result = (target->*function)(p1.Pass(), p2.Pass()); } + { FunctionObjectWithResult::result + = (target->*function)(p1.Pass(), p2.Pass()); } protected: R (T::*function)(Param1, Param2); diff --git a/src/kits/tracker/Pose.h b/src/kits/tracker/Pose.h index 2d74a164d9..c6d6aa7b6e 100644 --- a/src/kits/tracker/Pose.h +++ b/src/kits/tracker/Pose.h @@ -148,63 +148,6 @@ class BPose { }; -template -void -EachTextWidget(BPose *pose, BPoseView *poseView, - void (*func)(BTextWidget *, BPose *, BPoseView *, BColumn *, Param1), Param1 p1) -{ - for (int32 index = 0; ;index++) { - BColumn *column = poseView->ColumnAt(index); - if (!column) - break; - - BTextWidget *widget = pose->WidgetFor(column->AttrHash()); - if (widget) - (func)(widget, pose, poseView, column, p1); - } -} - - -template -void -EachTextWidget(BPose *pose, BPoseView *poseView, - void (*func)(BTextWidget *, BPose *, BPoseView *, BColumn *, - Param1, Param2), Param1 p1, Param2 p2) -{ - for (int32 index = 0; ;index++) { - BColumn *column = poseView->ColumnAt(index); - if (!column) - break; - - BTextWidget *widget = pose->WidgetFor(column->AttrHash()); - if (widget) - (func)(widget, pose, poseView, column, p1, p2); - } -} - - -template -Result -WhileEachTextWidget(BPose *pose, BPoseView *poseView, - Result (*func)(BTextWidget *, BPose *, BPoseView *, BColumn *, - Param1, Param2), Param1 p1, Param2 p2) -{ - for (int32 index = 0; ;index++) { - BColumn *column = poseView->ColumnAt(index); - if (!column) - break; - - BTextWidget *widget = pose->WidgetFor(column->AttrHash()); - if (widget) { - Result result = (func)(widget, pose, poseView, column, p1, p2); - if (result) - return result; - } - } - return 0; -} - - inline Model * BPose::TargetModel() const { diff --git a/src/kits/tracker/PoseList.h b/src/kits/tracker/PoseList.h index 9ed738f52c..c28959905c 100644 --- a/src/kits/tracker/PoseList.h +++ b/src/kits/tracker/PoseList.h @@ -39,13 +39,13 @@ All rights reserved. #define _POSE_LIST_H #include "ObjectList.h" +#include "Pose.h" struct node_ref; struct entry_ref; namespace BPrivate { -class BPose; class Model; class PoseList : public BObjectList { diff --git a/src/kits/tracker/PoseView.h b/src/kits/tracker/PoseView.h index 1dd8e38bdc..ad2705efe7 100644 --- a/src/kits/tracker/PoseView.h +++ b/src/kits/tracker/PoseView.h @@ -46,7 +46,6 @@ All rights reserved. #include "ContainerWindow.h" #include "Model.h" #include "PendingNodeMonitorCache.h" -#include "Pose.h" #include "PoseList.h" #include "TitleView.h" #include "Utilities.h" @@ -73,6 +72,7 @@ class BContainerWindow; class BHScrollBar; class EntryListBase; + const int32 kSmallStep = 10; const int32 kListOffset = 20; @@ -1001,6 +1001,63 @@ BPoseView::FindPose(const entry_ref *entry, int32 *index) const } +template +void +EachTextWidget(BPose *pose, BPoseView *poseView, + void (*func)(BTextWidget *, BPose *, BPoseView *, BColumn *, Param1), Param1 p1) +{ + for (int32 index = 0; ;index++) { + BColumn *column = poseView->ColumnAt(index); + if (!column) + break; + + BTextWidget *widget = pose->WidgetFor(column->AttrHash()); + if (widget) + (func)(widget, pose, poseView, column, p1); + } +} + + +template +void +EachTextWidget(BPose *pose, BPoseView *poseView, + void (*func)(BTextWidget *, BPose *, BPoseView *, BColumn *, + Param1, Param2), Param1 p1, Param2 p2) +{ + for (int32 index = 0; ;index++) { + BColumn *column = poseView->ColumnAt(index); + if (!column) + break; + + BTextWidget *widget = pose->WidgetFor(column->AttrHash()); + if (widget) + (func)(widget, pose, poseView, column, p1, p2); + } +} + + +template +Result +WhileEachTextWidget(BPose *pose, BPoseView *poseView, + Result (*func)(BTextWidget *, BPose *, BPoseView *, BColumn *, + Param1, Param2), Param1 p1, Param2 p2) +{ + for (int32 index = 0; ;index++) { + BColumn *column = poseView->ColumnAt(index); + if (!column) + break; + + BTextWidget *widget = pose->WidgetFor(column->AttrHash()); + if (widget) { + Result result = (func)(widget, pose, poseView, column, p1, p2); + if (result) + return result; + } + } + return 0; +} + + } // namespace BPrivate using namespace BPrivate; diff --git a/src/kits/tracker/Thread.h b/src/kits/tracker/Thread.h index 81634abff4..d7c120e00e 100644 --- a/src/kits/tracker/Thread.h +++ b/src/kits/tracker/Thread.h @@ -215,7 +215,7 @@ template void LaunchInNewThread(const char *name, int32 priority, status_t (T::*function)(), T *onThis) { - Thread::Launch(new SimpleMemberFunctionObjectWorkaround(func, onThis), + Thread::Launch(new SimpleMemberFunctionObjectWorkaround(function, onThis), priority, name); } diff --git a/src/kits/tracker/TrackerSettings.cpp b/src/kits/tracker/TrackerSettings.cpp index dc1ed73ced..0f5747f75d 100644 --- a/src/kits/tracker/TrackerSettings.cpp +++ b/src/kits/tracker/TrackerSettings.cpp @@ -50,7 +50,7 @@ class TTrackerState : public Settings { ~TTrackerState(); private: - friend TrackerSettings; + friend class BPrivate::TrackerSettings; static void InitIfNeeded(); TTrackerState(const TTrackerState&); diff --git a/src/kits/tracker/Utilities.cpp b/src/kits/tracker/Utilities.cpp index f21827fe4e..d655044b37 100644 --- a/src/kits/tracker/Utilities.cpp +++ b/src/kits/tracker/Utilities.cpp @@ -1067,7 +1067,7 @@ StringToScalar(const char *text) return val; } -#if B_BEOS_VERSION <= B_BEOS_VERSION_MAUI +#if B_BEOS_VERSION <= B_BEOS_VERSION_MAUI && !defined(__HAIKU__) bool operator==(const rgb_color &a, const rgb_color &b) diff --git a/src/kits/tracker/Utilities.h b/src/kits/tracker/Utilities.h index 4e85167ab4..fc75506f1d 100644 --- a/src/kits/tracker/Utilities.h +++ b/src/kits/tracker/Utilities.h @@ -424,7 +424,7 @@ extern void DeleteSubmenu(BMenuItem *submenuItem); extern bool BootedInSafeMode(); // Now is in kits -#if B_BEOS_VERSION <= B_BEOS_VERSION_MAUI +#if B_BEOS_VERSION <= B_BEOS_VERSION_MAUI && !defined(__HAIKU__) // Should be in kits bool operator==(const rgb_color &, const rgb_color &);