Renamed Variant to BVariant and moved it to libshared.a.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31127 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold
2009-06-19 23:00:25 +00:00
parent 15f040e596
commit b7c5bd634b
24 changed files with 185 additions and 194 deletions
@@ -2,8 +2,8 @@
* Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de. * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
*/ */
#ifndef VARIANT_H #ifndef _VARIANT_H
#define VARIANT_H #define _VARIANT_H
#include <SupportDefs.h> #include <SupportDefs.h>
@@ -11,31 +11,31 @@
enum { enum {
VARIANT_DONT_COPY_DATA = 0x01, B_VARIANT_DONT_COPY_DATA = 0x01,
VARIANT_OWNS_DATA = 0x02 B_VARIANT_OWNS_DATA = 0x02
}; };
class Variant { class BVariant {
public: public:
inline Variant(); inline BVariant();
inline Variant(int8 value); inline BVariant(int8 value);
inline Variant(uint8 value); inline BVariant(uint8 value);
inline Variant(int16 value); inline BVariant(int16 value);
inline Variant(uint16 value); inline BVariant(uint16 value);
inline Variant(int32 value); inline BVariant(int32 value);
inline Variant(uint32 value); inline BVariant(uint32 value);
inline Variant(int64 value); inline BVariant(int64 value);
inline Variant(uint64 value); inline BVariant(uint64 value);
inline Variant(float value); inline BVariant(float value);
inline Variant(double value); inline BVariant(double value);
inline Variant(const void* value); inline BVariant(const void* value);
inline Variant(const char* value, inline BVariant(const char* value,
uint32 flags = 0); uint32 flags = 0);
inline Variant(const Variant& other); inline BVariant(const BVariant& other);
~Variant(); ~BVariant();
inline void SetTo(const Variant& other); inline void SetTo(const BVariant& other);
inline void SetTo(int8 value); inline void SetTo(int8 value);
inline void SetTo(uint8 value); inline void SetTo(uint8 value);
inline void SetTo(int16 value); inline void SetTo(int16 value);
@@ -51,7 +51,7 @@ public:
uint32 flags = 0); uint32 flags = 0);
void Unset(); void Unset();
inline Variant& operator=(const Variant& other); inline BVariant& operator=(const BVariant& other);
type_code Type() const { return fType; } type_code Type() const { return fType; }
@@ -74,7 +74,7 @@ public:
const char* ToString() const; const char* ToString() const;
private: private:
void _SetTo(const Variant& other); void _SetTo(const BVariant& other);
void _SetTo(int8 value); void _SetTo(int8 value);
void _SetTo(uint8 value); void _SetTo(uint8 value);
void _SetTo(int16 value); void _SetTo(int16 value);
@@ -112,7 +112,7 @@ private:
}; };
Variant::Variant() BVariant::BVariant()
: :
fType(0), fType(0),
fFlags(0) fFlags(0)
@@ -120,86 +120,86 @@ Variant::Variant()
} }
Variant::Variant(int8 value) BVariant::BVariant(int8 value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(uint8 value) BVariant::BVariant(uint8 value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(int16 value) BVariant::BVariant(int16 value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(uint16 value) BVariant::BVariant(uint16 value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(int32 value) BVariant::BVariant(int32 value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(uint32 value) BVariant::BVariant(uint32 value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(int64 value) BVariant::BVariant(int64 value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(uint64 value) BVariant::BVariant(uint64 value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(float value) BVariant::BVariant(float value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(double value) BVariant::BVariant(double value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(const void* value) BVariant::BVariant(const void* value)
{ {
_SetTo(value); _SetTo(value);
} }
Variant::Variant(const char* value, uint32 flags) BVariant::BVariant(const char* value, uint32 flags)
{ {
_SetTo(value, flags); _SetTo(value, flags);
} }
Variant::Variant(const Variant& other) BVariant::BVariant(const BVariant& other)
{ {
_SetTo(other); _SetTo(other);
} }
Variant& BVariant&
Variant::operator=(const Variant& other) BVariant::operator=(const BVariant& other)
{ {
Unset(); Unset();
_SetTo(other); _SetTo(other);
@@ -208,7 +208,7 @@ Variant::operator=(const Variant& other)
void void
Variant::SetTo(const Variant& other) BVariant::SetTo(const BVariant& other)
{ {
Unset(); Unset();
_SetTo(other); _SetTo(other);
@@ -216,7 +216,7 @@ Variant::SetTo(const Variant& other)
void void
Variant::SetTo(int8 value) BVariant::SetTo(int8 value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -224,7 +224,7 @@ Variant::SetTo(int8 value)
void void
Variant::SetTo(uint8 value) BVariant::SetTo(uint8 value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -232,7 +232,7 @@ Variant::SetTo(uint8 value)
void void
Variant::SetTo(int16 value) BVariant::SetTo(int16 value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -240,7 +240,7 @@ Variant::SetTo(int16 value)
void void
Variant::SetTo(uint16 value) BVariant::SetTo(uint16 value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -248,7 +248,7 @@ Variant::SetTo(uint16 value)
void void
Variant::SetTo(int32 value) BVariant::SetTo(int32 value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -256,7 +256,7 @@ Variant::SetTo(int32 value)
void void
Variant::SetTo(uint32 value) BVariant::SetTo(uint32 value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -264,7 +264,7 @@ Variant::SetTo(uint32 value)
void void
Variant::SetTo(int64 value) BVariant::SetTo(int64 value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -272,7 +272,7 @@ Variant::SetTo(int64 value)
void void
Variant::SetTo(uint64 value) BVariant::SetTo(uint64 value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -280,7 +280,7 @@ Variant::SetTo(uint64 value)
void void
Variant::SetTo(float value) BVariant::SetTo(float value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -288,7 +288,7 @@ Variant::SetTo(float value)
void void
Variant::SetTo(double value) BVariant::SetTo(double value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -296,7 +296,7 @@ Variant::SetTo(double value)
void void
Variant::SetTo(const void* value) BVariant::SetTo(const void* value)
{ {
Unset(); Unset();
_SetTo(value); _SetTo(value);
@@ -304,11 +304,11 @@ Variant::SetTo(const void* value)
void void
Variant::SetTo(const char* value, uint32 flags) BVariant::SetTo(const char* value, uint32 flags)
{ {
Unset(); Unset();
_SetTo(value, flags); _SetTo(value, flags);
} }
#endif // VARIANT_H #endif // _VARIANT_H
+1 -1
View File
@@ -24,7 +24,7 @@ Application DebugAnalyzer
<nogrist>DebugAnalyzer_model_loader.o <nogrist>DebugAnalyzer_model_loader.o
<nogrist>DebugAnalyzer_util.o <nogrist>DebugAnalyzer_util.o
libcolumnlistview.a libdebug.so be libcolumnlistview.a libshared.a libdebug.so be
: :
DebugAnalyzer.rdef DebugAnalyzer.rdef
; ;
@@ -33,7 +33,7 @@ public:
return fModel->CountTeams(); return fModel->CountTeams();
} }
virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, Variant& value) virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, BVariant& value)
{ {
Model::Team* team = fModel->TeamAt(rowIndex); Model::Team* team = fModel->TeamAt(rowIndex);
if (team == NULL) if (team == NULL)
@@ -44,7 +44,7 @@ public:
value.SetTo(team->ID()); value.SetTo(team->ID());
return true; return true;
case 1: case 1:
value.SetTo(team->Name(), VARIANT_DONT_COPY_DATA); value.SetTo(team->Name(), B_VARIANT_DONT_COPY_DATA);
return true; return true;
case 2: case 2:
value.SetTo(team->CreationTime()); value.SetTo(team->CreationTime());
@@ -33,7 +33,7 @@ public:
return fModel->CountThreads(); return fModel->CountThreads();
} }
virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, Variant& value) virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, BVariant& value)
{ {
Model::Thread* thread = fModel->ThreadAt(rowIndex); Model::Thread* thread = fModel->ThreadAt(rowIndex);
if (thread == NULL) if (thread == NULL)
@@ -44,7 +44,7 @@ public:
value.SetTo(thread->ID()); value.SetTo(thread->ID());
return true; return true;
case 1: case 1:
value.SetTo(thread->Name(), VARIANT_DONT_COPY_DATA); value.SetTo(thread->Name(), B_VARIANT_DONT_COPY_DATA);
return true; return true;
case 2: case 2:
{ {
+4 -4
View File
@@ -271,7 +271,7 @@ Table::Column::DrawField(BField* _field, BRect rect, BView* targetView)
return; return;
int32 modelIndex = fTableColumn->ModelIndex(); int32 modelIndex = fTableColumn->ModelIndex();
Variant value; BVariant value;
if (!fModel->GetValueAt(field->RowIndex(), modelIndex, value)) if (!fModel->GetValueAt(field->RowIndex(), modelIndex, value))
return; return;
fTableColumn->DrawValue(value, rect, targetView); fTableColumn->DrawValue(value, rect, targetView);
@@ -293,9 +293,9 @@ Table::Column::CompareFields(BField* _field1, BField* _field2)
return 1; return 1;
int32 modelIndex = fTableColumn->ModelIndex(); int32 modelIndex = fTableColumn->ModelIndex();
Variant value1; BVariant value1;
bool valid1 = fModel->GetValueAt(field1->RowIndex(), modelIndex, value1); bool valid1 = fModel->GetValueAt(field1->RowIndex(), modelIndex, value1);
Variant value2; BVariant value2;
bool valid2 = fModel->GetValueAt(field2->RowIndex(), modelIndex, value2); bool valid2 = fModel->GetValueAt(field2->RowIndex(), modelIndex, value2);
if (!valid1) if (!valid1)
@@ -322,7 +322,7 @@ Table::Column::GetPreferredWidth(BField* _field, BView* parent) const
return Width(); return Width();
int32 modelIndex = fTableColumn->ModelIndex(); int32 modelIndex = fTableColumn->ModelIndex();
Variant value; BVariant value;
if (!fModel->GetValueAt(field->RowIndex(), modelIndex, value)) if (!fModel->GetValueAt(field->RowIndex(), modelIndex, value))
return Width(); return Width();
return fTableColumn->GetPreferredWidth(value, parent); return fTableColumn->GetPreferredWidth(value, parent);
+2 -3
View File
@@ -9,12 +9,11 @@
#include <ObjectList.h> #include <ObjectList.h>
#include <util/DoublyLinkedList.h> #include <util/DoublyLinkedList.h>
#include <Variant.h>
#include "table/AbstractTable.h" #include "table/AbstractTable.h"
#include "table/TableColumn.h" #include "table/TableColumn.h"
#include "Variant.h"
class Table; class Table;
class TableModel; class TableModel;
@@ -40,7 +39,7 @@ public:
virtual int32 CountRows() const = 0; virtual int32 CountRows() const = 0;
virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, virtual bool GetValueAt(int32 rowIndex, int32 columnIndex,
Variant& value) = 0; BVariant& value) = 0;
virtual bool AddListener(TableModelListener* listener); virtual bool AddListener(TableModelListener* listener);
virtual void RemoveListener(TableModelListener* listener); virtual void RemoveListener(TableModelListener* listener);
@@ -39,20 +39,20 @@ TableColumn::DrawTitle(BRect rect, BView* targetView)
void void
TableColumn::DrawValue(const Variant& value, BRect rect, BView* targetView) TableColumn::DrawValue(const BVariant& value, BRect rect, BView* targetView)
{ {
} }
int int
TableColumn::CompareValues(const Variant& a, const Variant& b) TableColumn::CompareValues(const BVariant& a, const BVariant& b)
{ {
return 0; return 0;
} }
float float
TableColumn::GetPreferredWidth(const Variant& value, BView* parent) const TableColumn::GetPreferredWidth(const BVariant& value, BView* parent) const
{ {
return Width(); return Width();
} }
@@ -8,7 +8,7 @@
#include <InterfaceDefs.h> #include <InterfaceDefs.h>
#include <Rect.h> #include <Rect.h>
#include "Variant.h" #include <Variant.h>
class BString; class BString;
@@ -33,11 +33,11 @@ public:
virtual void GetColumnName(BString* into) const; virtual void GetColumnName(BString* into) const;
virtual void DrawTitle(BRect rect, BView* targetView); virtual void DrawTitle(BRect rect, BView* targetView);
virtual void DrawValue(const Variant& value, BRect rect, virtual void DrawValue(const BVariant& value, BRect rect,
BView* targetView); BView* targetView);
virtual int CompareValues(const Variant& a, virtual int CompareValues(const BVariant& a,
const Variant& b); const BVariant& b);
virtual float GetPreferredWidth(const Variant& value, virtual float GetPreferredWidth(const BVariant& value,
BView* parent) const; BView* parent) const;
private: private:
@@ -41,7 +41,7 @@ DelagateBasedTableColumn::GetColumnName(BString* into) const
void void
DelagateBasedTableColumn::DrawValue(const Variant& value, BRect rect, DelagateBasedTableColumn::DrawValue(const BVariant& value, BRect rect,
BView* targetView) BView* targetView)
{ {
fColumnDelegate->DrawField(PrepareField(value), rect, targetView); fColumnDelegate->DrawField(PrepareField(value), rect, targetView);
@@ -49,7 +49,7 @@ DelagateBasedTableColumn::DrawValue(const Variant& value, BRect rect,
float float
DelagateBasedTableColumn::GetPreferredWidth(const Variant& value, DelagateBasedTableColumn::GetPreferredWidth(const BVariant& value,
BView* parent) const BView* parent) const
{ {
return fColumnDelegate->GetPreferredWidth(PrepareField(value), parent); return fColumnDelegate->GetPreferredWidth(PrepareField(value), parent);
@@ -77,7 +77,7 @@ StringTableColumn::~StringTableColumn()
BField* BField*
StringTableColumn::PrepareField(const Variant& value) const StringTableColumn::PrepareField(const BVariant& value) const
{ {
fField.SetString(value.ToString()); fField.SetString(value.ToString());
fField.SetWidth(Width()); fField.SetWidth(Width());
@@ -86,7 +86,7 @@ StringTableColumn::PrepareField(const Variant& value) const
int int
StringTableColumn::CompareValues(const Variant& a, const Variant& b) StringTableColumn::CompareValues(const BVariant& a, const BVariant& b)
{ {
return strcasecmp(a.ToString(), b.ToString()); return strcasecmp(a.ToString(), b.ToString());
} }
@@ -106,17 +106,17 @@ Int32TableColumn::Int32TableColumn(int32 modelIndex, const char* title,
BField* BField*
Int32TableColumn::PrepareField(const Variant& value) const Int32TableColumn::PrepareField(const BVariant& value) const
{ {
char buffer[16]; char buffer[16];
snprintf(buffer, sizeof(buffer), "%ld", value.ToInt32()); snprintf(buffer, sizeof(buffer), "%ld", value.ToInt32());
return StringTableColumn::PrepareField( return StringTableColumn::PrepareField(
Variant(buffer, VARIANT_DONT_COPY_DATA)); BVariant(buffer, B_VARIANT_DONT_COPY_DATA));
} }
int int
Int32TableColumn::CompareValues(const Variant& a, const Variant& b) Int32TableColumn::CompareValues(const BVariant& a, const BVariant& b)
{ {
return a.ToInt32() - b.ToInt32(); return a.ToInt32() - b.ToInt32();
} }
@@ -136,17 +136,17 @@ Int64TableColumn::Int64TableColumn(int32 modelIndex, const char* title,
BField* BField*
Int64TableColumn::PrepareField(const Variant& value) const Int64TableColumn::PrepareField(const BVariant& value) const
{ {
char buffer[32]; char buffer[32];
snprintf(buffer, sizeof(buffer), "%lld", value.ToInt64()); snprintf(buffer, sizeof(buffer), "%lld", value.ToInt64());
return StringTableColumn::PrepareField( return StringTableColumn::PrepareField(
Variant(buffer, VARIANT_DONT_COPY_DATA)); BVariant(buffer, B_VARIANT_DONT_COPY_DATA));
} }
int int
Int64TableColumn::CompareValues(const Variant& a, const Variant& b) Int64TableColumn::CompareValues(const BVariant& a, const BVariant& b)
{ {
int64 diff = a.ToInt64() - b.ToInt64(); int64 diff = a.ToInt64() - b.ToInt64();
if (diff == 0) if (diff == 0)
@@ -170,12 +170,12 @@ BigtimeTableColumn::BigtimeTableColumn(int32 modelIndex, const char* title,
BField* BField*
BigtimeTableColumn::PrepareField(const Variant& value) const BigtimeTableColumn::PrepareField(const BVariant& value) const
{ {
bigtime_t time = value.ToInt64(); bigtime_t time = value.ToInt64();
if (time < 0) { if (time < 0) {
return StringTableColumn::PrepareField( return StringTableColumn::PrepareField(
Variant("-", VARIANT_DONT_COPY_DATA)); BVariant("-", B_VARIANT_DONT_COPY_DATA));
} }
int micros = int(time % 1000000); int micros = int(time % 1000000);
@@ -189,12 +189,12 @@ BigtimeTableColumn::PrepareField(const Variant& value) const
snprintf(buffer, sizeof(buffer), "%02lld:%02d:%02d:%06d", time, minutes, snprintf(buffer, sizeof(buffer), "%02lld:%02d:%02d:%06d", time, minutes,
seconds, micros); seconds, micros);
return StringTableColumn::PrepareField( return StringTableColumn::PrepareField(
Variant(buffer, VARIANT_DONT_COPY_DATA)); BVariant(buffer, B_VARIANT_DONT_COPY_DATA));
} }
int int
BigtimeTableColumn::CompareValues(const Variant& _a, const Variant& _b) BigtimeTableColumn::CompareValues(const BVariant& _a, const BVariant& _b)
{ {
bigtime_t a = _a.ToInt64(); bigtime_t a = _a.ToInt64();
bigtime_t b = _b.ToInt64(); bigtime_t b = _b.ToInt64();
+15 -15
View File
@@ -23,12 +23,12 @@ protected:
virtual void DrawTitle(BRect rect, BView* targetView); virtual void DrawTitle(BRect rect, BView* targetView);
virtual void GetColumnName(BString* into) const; virtual void GetColumnName(BString* into) const;
virtual void DrawValue(const Variant& value, BRect rect, virtual void DrawValue(const BVariant& value, BRect rect,
BView* targetView); BView* targetView);
virtual float GetPreferredWidth(const Variant& value, virtual float GetPreferredWidth(const BVariant& value,
BView* parent) const; BView* parent) const;
virtual BField* PrepareField(const Variant& value) const = 0; virtual BField* PrepareField(const BVariant& value) const = 0;
protected: protected:
BColumn* fColumnDelegate; BColumn* fColumnDelegate;
@@ -45,10 +45,10 @@ public:
virtual ~StringTableColumn(); virtual ~StringTableColumn();
protected: protected:
virtual BField* PrepareField(const Variant& value) const; virtual BField* PrepareField(const BVariant& value) const;
virtual int CompareValues(const Variant& a, virtual int CompareValues(const BVariant& a,
const Variant& b); const BVariant& b);
private: private:
BStringColumn fColumn; BStringColumn fColumn;
@@ -65,10 +65,10 @@ public:
alignment align = B_ALIGN_RIGHT); alignment align = B_ALIGN_RIGHT);
protected: protected:
virtual BField* PrepareField(const Variant& value) const; virtual BField* PrepareField(const BVariant& value) const;
virtual int CompareValues(const Variant& a, virtual int CompareValues(const BVariant& a,
const Variant& b); const BVariant& b);
}; };
@@ -81,10 +81,10 @@ public:
alignment align = B_ALIGN_RIGHT); alignment align = B_ALIGN_RIGHT);
protected: protected:
virtual BField* PrepareField(const Variant& value) const; virtual BField* PrepareField(const BVariant& value) const;
virtual int CompareValues(const Variant& a, virtual int CompareValues(const BVariant& a,
const Variant& b); const BVariant& b);
}; };
@@ -98,10 +98,10 @@ public:
alignment align = B_ALIGN_RIGHT); alignment align = B_ALIGN_RIGHT);
protected: protected:
virtual BField* PrepareField(const Variant& value) const; virtual BField* PrepareField(const BVariant& value) const;
virtual int CompareValues(const Variant& a, virtual int CompareValues(const BVariant& a,
const Variant& b); const BVariant& b);
private: private:
bool fInvalidFirst; bool fInvalidFirst;
@@ -112,7 +112,7 @@ TreeTable::Column::DrawField(BField* _field, BRect rect, BView* targetView)
return; return;
int32 modelIndex = fTableColumn->ModelIndex(); int32 modelIndex = fTableColumn->ModelIndex();
Variant value; BVariant value;
if (!fModel->GetValueAt(field->Object(), modelIndex, value)) if (!fModel->GetValueAt(field->Object(), modelIndex, value))
return; return;
fTableColumn->DrawValue(value, rect, targetView); fTableColumn->DrawValue(value, rect, targetView);
@@ -134,9 +134,9 @@ TreeTable::Column::CompareFields(BField* _field1, BField* _field2)
return 1; return 1;
int32 modelIndex = fTableColumn->ModelIndex(); int32 modelIndex = fTableColumn->ModelIndex();
Variant value1; BVariant value1;
bool valid1 = fModel->GetValueAt(field1->Object(), modelIndex, value1); bool valid1 = fModel->GetValueAt(field1->Object(), modelIndex, value1);
Variant value2; BVariant value2;
bool valid2 = fModel->GetValueAt(field2->Object(), modelIndex, value2); bool valid2 = fModel->GetValueAt(field2->Object(), modelIndex, value2);
if (!valid1) if (!valid1)
@@ -163,7 +163,7 @@ TreeTable::Column::GetPreferredWidth(BField* _field, BView* parent) const
return Width(); return Width();
int32 modelIndex = fTableColumn->ModelIndex(); int32 modelIndex = fTableColumn->ModelIndex();
Variant value; BVariant value;
if (!fModel->GetValueAt(field->Object(), modelIndex, value)) if (!fModel->GetValueAt(field->Object(), modelIndex, value))
return Width(); return Width();
return fTableColumn->GetPreferredWidth(value, parent); return fTableColumn->GetPreferredWidth(value, parent);
+2 -3
View File
@@ -6,12 +6,11 @@
#define TREE_TABLE_H #define TREE_TABLE_H
#include <ColumnTypes.h> #include <ColumnTypes.h>
#include <Variant.h>
#include "table/AbstractTable.h" #include "table/AbstractTable.h"
#include "table/TableColumn.h" #include "table/TableColumn.h"
#include "Variant.h"
class TreeTable; class TreeTable;
@@ -27,7 +26,7 @@ public:
virtual void* ChildAt(void* parent, int32 index) const = 0; virtual void* ChildAt(void* parent, int32 index) const = 0;
virtual bool GetValueAt(void* object, int32 columnIndex, virtual bool GetValueAt(void* object, int32 columnIndex,
Variant& value) = 0; BVariant& value) = 0;
}; };
@@ -55,7 +55,7 @@ public:
return 6; return 6;
} }
virtual bool GetValueAt(void* object, int32 columnIndex, Variant& value) virtual bool GetValueAt(void* object, int32 columnIndex, BVariant& value)
{ {
return ((Node*)object)->GetValueAt(columnIndex, value); return ((Node*)object)->GetValueAt(columnIndex, value);
} }
@@ -66,7 +66,7 @@ private:
virtual int32 CountChildren() const = 0; virtual int32 CountChildren() const = 0;
virtual void* ChildAt(int32 index) const = 0; virtual void* ChildAt(int32 index) const = 0;
virtual bool GetValueAt(int32 columnIndex, Variant& value) = 0; virtual bool GetValueAt(int32 columnIndex, BVariant& value) = 0;
}; };
struct ObjectNode : Node { struct ObjectNode : Node {
@@ -88,7 +88,7 @@ private:
return NULL; return NULL;
} }
virtual bool GetValueAt(int32 columnIndex, Variant& value) virtual bool GetValueAt(int32 columnIndex, BVariant& value)
{ {
return _GetWaitObjectValueAt(object, columnIndex, value); return _GetWaitObjectValueAt(object, columnIndex, value);
} }
@@ -123,7 +123,7 @@ private:
return objectNodes.ItemAt(index); return objectNodes.ItemAt(index);
} }
virtual bool GetValueAt(int32 columnIndex, Variant& value) virtual bool GetValueAt(int32 columnIndex, BVariant& value)
{ {
if (columnIndex <= 2) { if (columnIndex <= 2) {
return _GetWaitObjectValueAt(group->WaitObjectAt(0), return _GetWaitObjectValueAt(group->WaitObjectAt(0),
@@ -174,7 +174,7 @@ private:
return groupNodes.ItemAt(index); return groupNodes.ItemAt(index);
} }
virtual bool GetValueAt(int32 columnIndex, Variant& value) virtual bool GetValueAt(int32 columnIndex, BVariant& value)
{ {
return false; return false;
} }
@@ -215,15 +215,15 @@ private:
} }
static bool _GetWaitObjectValueAt(Model::ThreadWaitObject* waitObject, static bool _GetWaitObjectValueAt(Model::ThreadWaitObject* waitObject,
int32 columnIndex, Variant& value) int32 columnIndex, BVariant& value)
{ {
switch (columnIndex) { switch (columnIndex) {
case 0: case 0:
value.SetTo(_TypeToString(waitObject->Type()), value.SetTo(_TypeToString(waitObject->Type()),
VARIANT_DONT_COPY_DATA); B_VARIANT_DONT_COPY_DATA);
return true; return true;
case 1: case 1:
value.SetTo(waitObject->Name(), VARIANT_DONT_COPY_DATA); value.SetTo(waitObject->Name(), B_VARIANT_DONT_COPY_DATA);
return true; return true;
case 2: case 2:
{ {
-1
View File
@@ -9,5 +9,4 @@ UseHeaders $(HAIKU_DEBUG_ANALYZER_HEADERS) ;
MergeObject DebugAnalyzer_util.o MergeObject DebugAnalyzer_util.o
: :
DataSource.cpp DataSource.cpp
Variant.cpp
; ;
+1 -7
View File
@@ -16,7 +16,6 @@ local debugAnalyzerSources
SubDirHdrs [ FDirName $(HAIKU_TOP) src bin debug ] ; SubDirHdrs [ FDirName $(HAIKU_TOP) src bin debug ] ;
SubDirHdrs [ FDirName $(debugAnalyzerSources) gui ] ; SubDirHdrs [ FDirName $(debugAnalyzerSources) gui ] ;
SubDirHdrs [ FDirName $(debugAnalyzerSources) util ] ;
Application Debugger : Application Debugger :
Debugger.cpp Debugger.cpp
@@ -54,9 +53,6 @@ Application Debugger :
TeamWindow.cpp TeamWindow.cpp
ThreadListView.cpp ThreadListView.cpp
# DebugAnalyzer:util
Variant.cpp
# DWARF # DWARF
# attribute_classes.cpp # attribute_classes.cpp
# AttributeValue.cpp # AttributeValue.cpp
@@ -71,6 +67,7 @@ Application Debugger :
<bin>debug_utils.a <bin>debug_utils.a
libcolumnlistview.a libcolumnlistview.a
libshared.a
$(TARGET_LIBSTDC++) $(TARGET_LIBSTDC++)
be debug be debug
@@ -78,7 +75,4 @@ Application Debugger :
: Debugger.rdef : Debugger.rdef
; ;
SEARCH on [ FGristFiles Variant.cpp ]
= [ FDirName $(debugAnalyzerSources) util ] ;
HaikuSubInclude gui running_teams_window ; HaikuSubInclude gui running_teams_window ;
+2 -3
View File
@@ -8,8 +8,7 @@
#include <OS.h> #include <OS.h>
#include <Referenceable.h> #include <Referenceable.h>
#include <Variant.h>
#include "Variant.h"
class Register; class Register;
@@ -20,7 +19,7 @@ public:
virtual ~CpuState(); virtual ~CpuState();
virtual bool GetRegisterValue(const Register* reg, virtual bool GetRegisterValue(const Register* reg,
Variant& _value) = 0; BVariant& _value) = 0;
}; };
+1 -1
View File
@@ -43,7 +43,7 @@ CpuStateX86::~CpuStateX86()
bool bool
CpuStateX86::GetRegisterValue(const Register* reg, Variant& _value) CpuStateX86::GetRegisterValue(const Register* reg, BVariant& _value)
{ {
int32 index = reg->Index(); int32 index = reg->Index();
if (!IsRegisterSet(index)) if (!IsRegisterSet(index))
+1 -1
View File
@@ -47,7 +47,7 @@ public:
virtual ~CpuStateX86(); virtual ~CpuStateX86();
virtual bool GetRegisterValue(const Register* reg, virtual bool GetRegisterValue(const Register* reg,
Variant& _value); BVariant& _value);
bool IsRegisterSet(int32 index) const; bool IsRegisterSet(int32 index) const;
uint32 IntRegisterValue(int32 index) const; uint32 IntRegisterValue(int32 index) const;
@@ -97,7 +97,7 @@ public:
return fImages.CountItems(); return fImages.CountItems();
} }
virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, Variant& value) virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, BVariant& value)
{ {
Image* image = fImages.ItemAt(rowIndex); Image* image = fImages.ItemAt(rowIndex);
if (image == NULL) if (image == NULL)
@@ -108,7 +108,7 @@ public:
value.SetTo(image->ID()); value.SetTo(image->ID());
return true; return true;
case 1: case 1:
value.SetTo(image->Name(), VARIANT_DONT_COPY_DATA); value.SetTo(image->Name(), B_VARIANT_DONT_COPY_DATA);
return true; return true;
default: default:
return false; return false;
@@ -31,15 +31,15 @@ public:
} }
protected: protected:
virtual BField* PrepareField(const Variant& value) const virtual BField* PrepareField(const BVariant& value) const
{ {
char buffer[64]; char buffer[64];
return StringTableColumn::PrepareField( return StringTableColumn::PrepareField(
Variant(_ToString(value, buffer, sizeof(buffer)), BVariant(_ToString(value, buffer, sizeof(buffer)),
VARIANT_DONT_COPY_DATA)); B_VARIANT_DONT_COPY_DATA));
} }
virtual int CompareValues(const Variant& a, const Variant& b) virtual int CompareValues(const BVariant& a, const BVariant& b)
{ {
// If neither value is a number, compare the strings. If only one value // If neither value is a number, compare the strings. If only one value
// is a number, it is considered to be greater. // is a number, it is considered to be greater.
@@ -49,10 +49,10 @@ protected:
char bufferA[64]; char bufferA[64];
char bufferB[64]; char bufferB[64];
return StringTableColumn::CompareValues( return StringTableColumn::CompareValues(
Variant(_ToString(a, bufferA, sizeof(bufferA)), BVariant(_ToString(a, bufferA, sizeof(bufferA)),
VARIANT_DONT_COPY_DATA), B_VARIANT_DONT_COPY_DATA),
Variant(_ToString(b, bufferB, sizeof(bufferB)), BVariant(_ToString(b, bufferB, sizeof(bufferB)),
VARIANT_DONT_COPY_DATA)); B_VARIANT_DONT_COPY_DATA));
} }
if (!b.IsNumber()) if (!b.IsNumber())
@@ -71,7 +71,7 @@ protected:
} }
private: private:
const char* _ToString(const Variant& value, char* buffer, const char* _ToString(const BVariant& value, char* buffer,
size_t bufferSize) const size_t bufferSize) const
{ {
if (!value.IsNumber()) if (!value.IsNumber())
@@ -139,7 +139,7 @@ public:
return fArchitecture->CountRegisters(); return fArchitecture->CountRegisters();
} }
virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, Variant& value) virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, BVariant& value)
{ {
if (rowIndex < 0 || rowIndex >= fArchitecture->CountRegisters()) if (rowIndex < 0 || rowIndex >= fArchitecture->CountRegisters())
return false; return false;
@@ -148,13 +148,13 @@ public:
switch (columnIndex) { switch (columnIndex) {
case 0: case 0:
value.SetTo(reg->Name(), VARIANT_DONT_COPY_DATA); value.SetTo(reg->Name(), B_VARIANT_DONT_COPY_DATA);
return true; return true;
case 1: case 1:
if (fCpuState == NULL) if (fCpuState == NULL)
return false; return false;
if (!fCpuState->GetRegisterValue(reg, value)) if (!fCpuState->GetRegisterValue(reg, value))
value.SetTo("?", VARIANT_DONT_COPY_DATA); value.SetTo("?", B_VARIANT_DONT_COPY_DATA);
return true; return true;
default: default:
return false; return false;
@@ -29,16 +29,16 @@ public:
} }
protected: protected:
virtual BField* PrepareField(const Variant& value) const virtual BField* PrepareField(const BVariant& value) const
{ {
char buffer[64]; char buffer[64];
snprintf(buffer, sizeof(buffer), "%#llx", value.ToUInt64()); snprintf(buffer, sizeof(buffer), "%#llx", value.ToUInt64());
return StringTableColumn::PrepareField( return StringTableColumn::PrepareField(
Variant(buffer, VARIANT_DONT_COPY_DATA)); BVariant(buffer, B_VARIANT_DONT_COPY_DATA));
} }
virtual int CompareValues(const Variant& a, const Variant& b) virtual int CompareValues(const BVariant& a, const BVariant& b)
{ {
uint64 valueA = a.ToUInt64(); uint64 valueA = a.ToUInt64();
uint64 valueB = b.ToUInt64(); uint64 valueB = b.ToUInt64();
@@ -102,7 +102,7 @@ public:
return fFrames.CountItems(); return fFrames.CountItems();
} }
virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, Variant& value) virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, BVariant& value)
{ {
StackFrame* frame = fFrames.ItemAt(rowIndex); StackFrame* frame = fFrames.ItemAt(rowIndex);
if (frame == NULL) if (frame == NULL)
@@ -97,7 +97,7 @@ public:
return fThreads.CountItems(); return fThreads.CountItems();
} }
virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, Variant& value) virtual bool GetValueAt(int32 rowIndex, int32 columnIndex, BVariant& value)
{ {
Thread* thread = fThreads.ItemAt(rowIndex); Thread* thread = fThreads.ItemAt(rowIndex);
if (thread == NULL) if (thread == NULL)
@@ -108,7 +108,7 @@ public:
value.SetTo(thread->ID()); value.SetTo(thread->ID());
return true; return true;
case 1: case 1:
value.SetTo(thread->Name(), VARIANT_DONT_COPY_DATA); value.SetTo(thread->Name(), B_VARIANT_DONT_COPY_DATA);
return true; return true;
default: default:
return false; return false;
+1
View File
@@ -20,4 +20,5 @@ StaticLibrary libshared.a :
DragTrackingFilter.cpp DragTrackingFilter.cpp
HashString.cpp HashString.cpp
RWLockManager.cpp RWLockManager.cpp
Variant.cpp
; ;
@@ -3,7 +3,7 @@
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
*/ */
#include "Variant.h" #include <Variant.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
@@ -11,7 +11,7 @@
template<typename NumberType> template<typename NumberType>
inline NumberType inline NumberType
Variant::_ToNumber() const BVariant::_ToNumber() const
{ {
switch (fType) { switch (fType) {
case B_INT8_TYPE: case B_INT8_TYPE:
@@ -40,16 +40,16 @@ Variant::_ToNumber() const
} }
Variant::~Variant() BVariant::~BVariant()
{ {
Unset(); Unset();
} }
void void
Variant::Unset() BVariant::Unset()
{ {
if ((fFlags & VARIANT_OWNS_DATA) != 0) { if ((fFlags & B_VARIANT_OWNS_DATA) != 0) {
switch (fType) { switch (fType) {
case B_STRING_TYPE: case B_STRING_TYPE:
free(fString); free(fString);
@@ -65,7 +65,7 @@ Variant::Unset()
bool bool
Variant::IsNumber() const BVariant::IsNumber() const
{ {
switch (fType) { switch (fType) {
case B_INT8_TYPE: case B_INT8_TYPE:
@@ -86,7 +86,7 @@ Variant::IsNumber() const
bool bool
Variant::IsInteger() const BVariant::IsInteger() const
{ {
switch (fType) { switch (fType) {
case B_INT8_TYPE: case B_INT8_TYPE:
@@ -105,7 +105,7 @@ Variant::IsInteger() const
bool bool
Variant::IsFloat() const BVariant::IsFloat() const
{ {
switch (fType) { switch (fType) {
case B_FLOAT_TYPE: case B_FLOAT_TYPE:
@@ -118,110 +118,110 @@ Variant::IsFloat() const
int8 int8
Variant::ToInt8() const BVariant::ToInt8() const
{ {
return _ToNumber<int8>(); return _ToNumber<int8>();
} }
uint8 uint8
Variant::ToUInt8() const BVariant::ToUInt8() const
{ {
return _ToNumber<uint8>(); return _ToNumber<uint8>();
} }
int16 int16
Variant::ToInt16() const BVariant::ToInt16() const
{ {
return _ToNumber<int16>(); return _ToNumber<int16>();
} }
uint16 uint16
Variant::ToUInt16() const BVariant::ToUInt16() const
{ {
return _ToNumber<uint16>(); return _ToNumber<uint16>();
} }
int32 int32
Variant::ToInt32() const BVariant::ToInt32() const
{ {
return _ToNumber<int32>(); return _ToNumber<int32>();
} }
uint32 uint32
Variant::ToUInt32() const BVariant::ToUInt32() const
{ {
return _ToNumber<uint32>(); return _ToNumber<uint32>();
} }
int64 int64
Variant::ToInt64() const BVariant::ToInt64() const
{ {
return _ToNumber<int64>(); return _ToNumber<int64>();
} }
uint64 uint64
Variant::ToUInt64() const BVariant::ToUInt64() const
{ {
return _ToNumber<uint64>(); return _ToNumber<uint64>();
} }
float float
Variant::ToFloat() const BVariant::ToFloat() const
{ {
return _ToNumber<float>(); return _ToNumber<float>();
} }
double double
Variant::ToDouble() const BVariant::ToDouble() const
{ {
return _ToNumber<double>(); return _ToNumber<double>();
} }
void* void*
Variant::ToPointer() const BVariant::ToPointer() const
{ {
return fType == B_POINTER_TYPE ? fString : NULL; return fType == B_POINTER_TYPE ? fString : NULL;
} }
const char* const char*
Variant::ToString() const BVariant::ToString() const
{ {
return fType == B_STRING_TYPE ? fString : NULL; return fType == B_STRING_TYPE ? fString : NULL;
} }
void void
Variant::_SetTo(const Variant& other) BVariant::_SetTo(const BVariant& other)
{ {
if ((other.fFlags & VARIANT_OWNS_DATA) != 0) { if ((other.fFlags & B_VARIANT_OWNS_DATA) != 0) {
switch (other.fType) { switch (other.fType) {
case B_STRING_TYPE: case B_STRING_TYPE:
fType = B_STRING_TYPE; fType = B_STRING_TYPE;
fString = strdup(other.fString); fString = strdup(other.fString);
fFlags = VARIANT_OWNS_DATA; fFlags = B_VARIANT_OWNS_DATA;
return; return;
default: default:
break; break;
} }
} }
memcpy(this, &other, sizeof(Variant)); memcpy(this, &other, sizeof(BVariant));
} }
void void
Variant::_SetTo(int8 value) BVariant::_SetTo(int8 value)
{ {
fType = B_INT8_TYPE; fType = B_INT8_TYPE;
fFlags = 0; fFlags = 0;
@@ -230,7 +230,7 @@ Variant::_SetTo(int8 value)
void void
Variant::_SetTo(uint8 value) BVariant::_SetTo(uint8 value)
{ {
fType = B_UINT8_TYPE; fType = B_UINT8_TYPE;
fFlags = 0; fFlags = 0;
@@ -239,7 +239,7 @@ Variant::_SetTo(uint8 value)
void void
Variant::_SetTo(int16 value) BVariant::_SetTo(int16 value)
{ {
fType = B_INT16_TYPE; fType = B_INT16_TYPE;
fFlags = 0; fFlags = 0;
@@ -248,7 +248,7 @@ Variant::_SetTo(int16 value)
void void
Variant::_SetTo(uint16 value) BVariant::_SetTo(uint16 value)
{ {
fType = B_UINT16_TYPE; fType = B_UINT16_TYPE;
fFlags = 0; fFlags = 0;
@@ -257,7 +257,7 @@ Variant::_SetTo(uint16 value)
void void
Variant::_SetTo(int32 value) BVariant::_SetTo(int32 value)
{ {
fType = B_INT32_TYPE; fType = B_INT32_TYPE;
fFlags = 0; fFlags = 0;
@@ -266,7 +266,7 @@ Variant::_SetTo(int32 value)
void void
Variant::_SetTo(uint32 value) BVariant::_SetTo(uint32 value)
{ {
fType = B_UINT32_TYPE; fType = B_UINT32_TYPE;
fFlags = 0; fFlags = 0;
@@ -275,7 +275,7 @@ Variant::_SetTo(uint32 value)
void void
Variant::_SetTo(int64 value) BVariant::_SetTo(int64 value)
{ {
fType = B_INT64_TYPE; fType = B_INT64_TYPE;
fFlags = 0; fFlags = 0;
@@ -284,7 +284,7 @@ Variant::_SetTo(int64 value)
void void
Variant::_SetTo(uint64 value) BVariant::_SetTo(uint64 value)
{ {
fType = B_UINT64_TYPE; fType = B_UINT64_TYPE;
fFlags = 0; fFlags = 0;
@@ -293,7 +293,7 @@ Variant::_SetTo(uint64 value)
void void
Variant::_SetTo(float value) BVariant::_SetTo(float value)
{ {
fType = B_FLOAT_TYPE; fType = B_FLOAT_TYPE;
fFlags = 0; fFlags = 0;
@@ -302,7 +302,7 @@ Variant::_SetTo(float value)
void void
Variant::_SetTo(double value) BVariant::_SetTo(double value)
{ {
fType = B_DOUBLE_TYPE; fType = B_DOUBLE_TYPE;
fFlags = 0; fFlags = 0;
@@ -311,7 +311,7 @@ Variant::_SetTo(double value)
void void
Variant::_SetTo(const void* value) BVariant::_SetTo(const void* value)
{ {
fType = B_POINTER_TYPE; fType = B_POINTER_TYPE;
fFlags = 0; fFlags = 0;
@@ -320,18 +320,18 @@ Variant::_SetTo(const void* value)
void void
Variant::_SetTo(const char* value, uint32 flags) BVariant::_SetTo(const char* value, uint32 flags)
{ {
fType = B_STRING_TYPE; fType = B_STRING_TYPE;
fFlags = 0; fFlags = 0;
if (value != NULL) { if (value != NULL) {
if ((flags & VARIANT_DONT_COPY_DATA) == 0) { if ((flags & B_VARIANT_DONT_COPY_DATA) == 0) {
fString = strdup(value); fString = strdup(value);
fFlags |= VARIANT_OWNS_DATA; fFlags |= B_VARIANT_OWNS_DATA;
} else { } else {
fString = (char*)value; fString = (char*)value;
fFlags |= flags & VARIANT_OWNS_DATA; fFlags |= flags & B_VARIANT_OWNS_DATA;
} }
} else } else
fString = NULL; fString = NULL;