* Put the remaining libicon.a classes into the BPrivate::Icon namespace.

* Minor cleanup (like removing the extra blank line between the copyright and the
  header guard).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20507 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2007-04-02 09:08:57 +00:00
parent a073ba1aa8
commit 325a6253ce
74 changed files with 745 additions and 316 deletions
+10 -3
View File
@@ -1,20 +1,27 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef CANVAS_VIEW_H #ifndef CANVAS_VIEW_H
#define CANVAS_VIEW_H #define CANVAS_VIEW_H
#include "Icon.h" #include "Icon.h"
#include "Scrollable.h" #include "Scrollable.h"
#include "StateView.h" #include "StateView.h"
class BBitmap; class BBitmap;
class IconRenderer;
namespace BPrivate {
namespace Icon {
class IconRenderer;
}
}
using namespace BPrivate::Icon;
enum { enum {
SNAPPING_OFF = 0, SNAPPING_OFF = 0,
+7 -1
View File
@@ -19,7 +19,6 @@ class BMenuBar;
class BMenuItem; class BMenuItem;
class CanvasView; class CanvasView;
class Document; class Document;
class Icon;
class IconObjectListView; class IconObjectListView;
class IconEditorApp; class IconEditorApp;
class IconView; class IconView;
@@ -30,6 +29,13 @@ class StyleView;
class SwatchGroup; class SwatchGroup;
class TransformerListView; class TransformerListView;
namespace BPrivate {
namespace Icon {
class Icon;
}
}
using namespace BPrivate::Icon;
class MultipleManipulatorState; class MultipleManipulatorState;
enum { enum {
+14 -7
View File
@@ -1,22 +1,30 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef UTIL_H #ifndef UTIL_H
#define UTIL_H #define UTIL_H
#include <GraphicsDefs.h> #include <GraphicsDefs.h>
class AddPathsCommand; class AddPathsCommand;
class AddStylesCommand; class AddStylesCommand;
class PathContainer;
class Style; namespace BPrivate {
class StyleContainer; namespace Icon {
class VectorPath; class PathContainer;
class Style;
class StyleContainer;
class VectorPath;
}
}
using namespace BPrivate::Icon;
void new_style(rgb_color color, StyleContainer* container, void new_style(rgb_color color, StyleContainer* container,
Style** style, AddStylesCommand** command); Style** style, AddStylesCommand** command);
@@ -24,5 +32,4 @@ void new_style(rgb_color color, StyleContainer* container,
void new_path(PathContainer* container, VectorPath** path, void new_path(PathContainer* container, VectorPath** path,
AddPathsCommand** command, VectorPath* other = NULL); AddPathsCommand** command, VectorPath* other = NULL);
#endif // UTIL_H #endif // UTIL_H
+12 -8
View File
@@ -1,29 +1,33 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#include "Document.h" #include "Document.h"
#include <new>
#include <stdio.h>
#include <Entry.h>
#include "CommandStack.h" #include "CommandStack.h"
#include "DocumentSaver.h" #include "DocumentSaver.h"
#include "Icon.h" #include "Icon.h"
#include "Selection.h" #include "Selection.h"
#include <Entry.h>
#include <new>
#include <stdio.h>
using std::nothrow; using std::nothrow;
using namespace BPrivate::Icon;
// constructor // constructor
Document::Document(const char* name) Document::Document(const char* name)
: RWLocker("document rw lock"), : RWLocker("document rw lock"),
fIcon(new (nothrow) ::Icon()), fIcon(new (nothrow) BPrivate::Icon::Icon()),
fCommandStack(new (nothrow) ::CommandStack()), fCommandStack(new (nothrow) ::CommandStack()),
fSelection(new (nothrow) ::Selection()), fSelection(new (nothrow) ::Selection()),
@@ -80,7 +84,7 @@ Document::SetExportSaver(::DocumentSaver* saver)
// SetIcon // SetIcon
void void
Document::SetIcon(::Icon* icon) Document::SetIcon(BPrivate::Icon::Icon* icon)
{ {
if (fIcon == icon) if (fIcon == icon)
return; return;
+14 -7
View File
@@ -1,24 +1,31 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef DOCUMENT_H #ifndef DOCUMENT_H
#define DOCUMENT_H #define DOCUMENT_H
#include <String.h>
#include "Observable.h" #include "Observable.h"
#include "RWLocker.h" #include "RWLocker.h"
#include <String.h>
struct entry_ref; struct entry_ref;
namespace BPrivate {
namespace Icon {
class Icon;
} // namespace Icon
} // namespace BPrivate
class CommandStack; class CommandStack;
class DocumentSaver; class DocumentSaver;
class Icon;
class Selection; class Selection;
class Document : public RWLocker, class Document : public RWLocker,
@@ -44,14 +51,14 @@ class Document : public RWLocker,
inline ::DocumentSaver* ExportSaver() const inline ::DocumentSaver* ExportSaver() const
{ return fExportSaver; } { return fExportSaver; }
void SetIcon(::Icon* icon); void SetIcon(BPrivate::Icon::Icon* icon);
inline ::Icon* Icon() const inline BPrivate::Icon::Icon* Icon() const
{ return fIcon; } { return fIcon; }
void MakeEmpty(bool includingSavers = true); void MakeEmpty(bool includingSavers = true);
private: private:
::Icon* fIcon; BPrivate::Icon::Icon* fIcon;
::CommandStack* fCommandStack; ::CommandStack* fCommandStack;
::Selection* fSelection; ::Selection* fSelection;
+14 -6
View File
@@ -1,22 +1,29 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef GRADIENT_CONTROL_H #ifndef GRADIENT_CONTROL_H
#define GRADIENT_CONTROL_H #define GRADIENT_CONTROL_H
#include <View.h> #include <View.h>
#if LIB_LAYOUT #if LIB_LAYOUT
#include <layout.h> # include <layout.h>
#endif #endif
namespace BPrivate {
namespace Icon {
class Gradient; class Gradient;
} // namespace Icon
} // namespace BPrivate
enum { enum {
MSG_GRADIENT_CONTROL_FOCUS_CHANGED = 'gcfc', MSG_GRADIENT_CONTROL_FOCUS_CHANGED = 'gcfc',
}; };
@@ -54,8 +61,9 @@ class GradientControl :
virtual void FrameResized(float width, float height); virtual void FrameResized(float width, float height);
// GradientControl // GradientControl
void SetGradient(const ::Gradient* gradient); void SetGradient(const BPrivate::Icon::Gradient*
::Gradient* Gradient() const gradient);
BPrivate::Icon::Gradient* Gradient() const
{ return fGradient; } { return fGradient; }
void SetCurrentStop(const rgb_color& color); void SetCurrentStop(const rgb_color& color);
@@ -73,7 +81,7 @@ class GradientControl :
float _OffsetFor(BPoint where) const; float _OffsetFor(BPoint where) const;
void _UpdateCurrentColor() const; void _UpdateCurrentColor() const;
::Gradient* fGradient; BPrivate::Icon::Gradient* fGradient;
BBitmap* fGradientBitmap; BBitmap* fGradientBitmap;
int32 fDraggingStepIndex; int32 fDraggingStepIndex;
int32 fCurrentStepIndex; int32 fCurrentStepIndex;
+11 -4
View File
@@ -1,20 +1,27 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef ICON_VIEW_H #ifndef ICON_VIEW_H
#define ICON_VIEW_H #define ICON_VIEW_H
#include <View.h>
#include "Icon.h" #include "Icon.h"
#include <View.h>
class BBitmap; class BBitmap;
class IconRenderer;
namespace BPrivate {
namespace Icon {
class IconRenderer;
}
}
using namespace BPrivate::Icon;
class IconView : public BView, class IconView : public BView,
public IconListener { public IconListener {
+12 -4
View File
@@ -1,5 +1,5 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
@@ -8,20 +8,28 @@
#ifndef PATH_LIST_VIEW_H #ifndef PATH_LIST_VIEW_H
#define PATH_LIST_VIEW_H #define PATH_LIST_VIEW_H
#include "ListViews.h" #include "ListViews.h"
#include "PathContainer.h" #include "PathContainer.h"
class BMenu; class BMenu;
class BMenuItem; class BMenuItem;
namespace BPrivate {
namespace Icon {
class VectorPath;
class Shape;
class ShapeContainer;
}
}
class CommandStack; class CommandStack;
class VectorPath;
class PathListItem; class PathListItem;
class Selection; class Selection;
class Shape;
class ShapeContainer;
class ShapePathListener; class ShapePathListener;
using namespace BPrivate::Icon;
class PathListView : public SimpleListView, class PathListView : public SimpleListView,
public PathContainerListener { public PathContainerListener {
public: public:
+10 -3
View File
@@ -1,24 +1,31 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef SHAPE_LIST_VIEW_H #ifndef SHAPE_LIST_VIEW_H
#define SHAPE_LIST_VIEW_H #define SHAPE_LIST_VIEW_H
#include "ListViews.h" #include "ListViews.h"
#include "ShapeContainer.h" #include "ShapeContainer.h"
class BMenu; class BMenu;
class BMenuItem; class BMenuItem;
class CommandStack; class CommandStack;
class Shape;
class ShapeListItem; class ShapeListItem;
class Selection; class Selection;
namespace BPrivate {
namespace Icon {
class Shape;
}
}
using namespace BPrivate::Icon;
enum { enum {
MSG_ADD_SHAPE = 'adsh', MSG_ADD_SHAPE = 'adsh',
}; };
+13 -6
View File
@@ -1,28 +1,35 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef STYLE_LIST_VIEW_H #ifndef STYLE_LIST_VIEW_H
#define STYLE_LIST_VIEW_H #define STYLE_LIST_VIEW_H
#include "ListViews.h" #include "ListViews.h"
#include "StyleContainer.h" #include "StyleContainer.h"
class BMenu; class BMenu;
class BMenuItem; class BMenuItem;
class CommandStack; class CommandStack;
class Selection; class Selection;
class Shape;
class ShapeContainer;
class ShapeListener;
class ShapeStyleListener; class ShapeStyleListener;
class Style;
class StyleListItem; class StyleListItem;
namespace BPrivate {
namespace Icon {
class Shape;
class ShapeContainer;
class ShapeListener;
class Style;
}
}
using namespace BPrivate::Icon;
class StyleListView : public SimpleListView, class StyleListView : public SimpleListView,
public StyleContainerListener { public StyleContainerListener {
public: public:
+12 -5
View File
@@ -1,25 +1,32 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef STYLE_VIEW_H #ifndef STYLE_VIEW_H
#define STYLE_VIEW_H #define STYLE_VIEW_H
#include <View.h>
#include "Observer.h" #include "Observer.h"
#include <View.h>
class BMenu; class BMenu;
class BMenuField; class BMenuField;
class CommandStack; class CommandStack;
class CurrentColor; class CurrentColor;
class Gradient;
class GradientControl; class GradientControl;
class Style;
namespace BPrivate {
namespace Icon {
class Gradient;
class Style;
}
}
using namespace BPrivate::Icon;
// TODO: write lock the document when changing something... // TODO: write lock the document when changing something...
@@ -1,23 +1,29 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef TRANSFORMER_LIST_VIEW_H #ifndef TRANSFORMER_LIST_VIEW_H
#define TRANSFORMER_LIST_VIEW_H #define TRANSFORMER_LIST_VIEW_H
#include "ListViews.h" #include "ListViews.h"
#include "Shape.h" #include "Shape.h"
class BMenu; class BMenu;
class CommandStack; class CommandStack;
class Transformer;
class TransformerItem; class TransformerItem;
class Selection; class Selection;
namespace BPrivate {
namespace Icon {
class Transformer;
}
}
class TransformerListView : public SimpleListView, class TransformerListView : public SimpleListView,
public ShapeListener { public ShapeListener {
public: public:
+11 -2
View File
@@ -1,21 +1,30 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef EXPORTER_H #ifndef EXPORTER_H
#define EXPORTER_H #define EXPORTER_H
#include <Entry.h> #include <Entry.h>
#include <OS.h> #include <OS.h>
class BPositionIO; class BPositionIO;
class Document; class Document;
namespace BPrivate {
namespace Icon {
class Icon; class Icon;
} // namespace Icon
} // namespace BPrivate
using namespace BPrivate::Icon;
class Exporter { class Exporter {
public: public:
Exporter(); Exporter();
+10 -1
View File
@@ -5,14 +5,23 @@
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef IMPORTER_H #ifndef IMPORTER_H
#define IMPORTER_H #define IMPORTER_H
#include <SupportDefs.h> #include <SupportDefs.h>
namespace BPrivate {
namespace Icon {
class Icon; class Icon;
} // namespace Icon
} // namespace BPrivate
using namespace BPrivate::Icon;
class Importer { class Importer {
public: public:
Importer(); Importer();
@@ -1,27 +1,34 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef FLAT_ICON_EXPORTER_H #ifndef FLAT_ICON_EXPORTER_H
#define FLAT_ICON_EXPORTER_H #define FLAT_ICON_EXPORTER_H
#include "Exporter.h" #include "Exporter.h"
class BMessage; class BMessage;
class BNode; class BNode;
class BPositionIO; class BPositionIO;
namespace BPrivate {
namespace Icon {
class Gradient; class Gradient;
class Icon;
class LittleEndianBuffer; class LittleEndianBuffer;
class PathContainer; class PathContainer;
class ShapeContainer; class ShapeContainer;
class StyleContainer; class StyleContainer;
class VectorPath; class VectorPath;
} // namespace Icon
} // namespace BPrivate
#define PRINT_STATISTICS 1 #define PRINT_STATISTICS 1
#if PRINT_STATISTICS #if PRINT_STATISTICS
@@ -1,25 +1,30 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef MESSAGE_EXPORTER_H #ifndef MESSAGE_EXPORTER_H
#define MESSAGE_EXPORTER_H #define MESSAGE_EXPORTER_H
#include "Exporter.h" #include "Exporter.h"
class BMessage; class BMessage;
class BPositionIO; class BPositionIO;
class Icon;
class PathContainer; namespace BPrivate {
class Shape; namespace Icon {
class Style; class Icon;
class StyleContainer; class PathContainer;
class Transformer; class Shape;
class VectorPath; class Style;
class StyleContainer;
class Transformer;
class VectorPath;
}
}
class MessageExporter : public Exporter { class MessageExporter : public Exporter {
public: public:
@@ -1,22 +1,27 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef MESSAGE_IMPORTER_H #ifndef MESSAGE_IMPORTER_H
#define MESSAGE_IMPORTER_H #define MESSAGE_IMPORTER_H
#include "Importer.h" #include "Importer.h"
class BMessage; class BMessage;
class BPositionIO; class BPositionIO;
class Icon;
class PathContainer; namespace BPrivate {
class ShapeContainer; namespace Icon {
class StyleContainer; class Icon;
class PathContainer;
class ShapeContainer;
class StyleContainer;
}
}
class MessageImporter : public Importer { class MessageImporter : public Importer {
public: public:
@@ -41,15 +41,15 @@
#include "PathTokenizer.h" #include "PathTokenizer.h"
class Icon;
class SVGImporter; class SVGImporter;
namespace BPrivate { namespace BPrivate {
namespace Icon { namespace Icon {
class Icon;
class Transformable; class Transformable;
} }
} }
using BPrivate::Icon::Transformable; using namespace BPrivate::Icon;
namespace agg { namespace agg {
namespace svg { namespace svg {
@@ -1,28 +1,28 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef SVG_EXPORTER_H #ifndef SVG_EXPORTER_H
#define SVG_EXPORTER_H #define SVG_EXPORTER_H
#include <String.h>
#include "Exporter.h" #include "Exporter.h"
class Gradient; #include <String.h>
class Shape;
class Style;
namespace BPrivate { namespace BPrivate {
namespace Icon { namespace Icon {
class Gradient;
class Shape;
class Style;
class Transformable; class Transformable;
} }
} }
using BPrivate::Icon::Transformable; using namespace BPrivate::Icon;
class SVGExporter : public Exporter { class SVGExporter : public Exporter {
public: public:
@@ -1,22 +1,25 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef SVG_GRADIENTS_H #ifndef SVG_GRADIENTS_H
#define SVG_GRADIENTS_H #define SVG_GRADIENTS_H
#include <Message.h>
#include <String.h>
#include <agg_color_rgba.h> #include <agg_color_rgba.h>
#include <agg_trans_affine.h> #include <agg_trans_affine.h>
class Gradient; #include <Message.h>
#include <String.h>
namespace BPrivate {
namespace Icon {
class Gradient;
}
}
namespace agg { namespace agg {
namespace svg { namespace svg {
@@ -1,18 +1,24 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef ADD_PATHS_COMMAND_H #ifndef ADD_PATHS_COMMAND_H
#define ADD_PATHS_COMMAND_H #define ADD_PATHS_COMMAND_H
#include "Command.h" #include "Command.h"
class VectorPath;
class PathContainer; namespace BPrivate {
namespace Icon {
class VectorPath;
class PathContainer;
}
}
using namespace BPrivate::Icon;
class AddPathsCommand : public Command { class AddPathsCommand : public Command {
public: public:
@@ -1,18 +1,19 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef ADD_POINT_COMMAND_H #ifndef ADD_POINT_COMMAND_H
#define ADD_POINT_COMMAND_H #define ADD_POINT_COMMAND_H
#include <Point.h>
#include "PathCommand.h" #include "PathCommand.h"
#include <Point.h>
class AddPointCommand : public PathCommand { class AddPointCommand : public PathCommand {
public: public:
AddPointCommand(VectorPath* path, AddPointCommand(VectorPath* path,
@@ -1,20 +1,27 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef ADD_SHAPES_COMMAND_H #ifndef ADD_SHAPES_COMMAND_H
#define ADD_SHAPES_COMMAND_H #define ADD_SHAPES_COMMAND_H
#include "Command.h" #include "Command.h"
class Shape;
class ShapeContainer;
class Selection; class Selection;
namespace BPrivate {
namespace Icon {
class Shape;
class ShapeContainer;
}
}
using namespace BPrivate::Icon;
class AddShapesCommand : public Command { class AddShapesCommand : public Command {
public: public:
AddShapesCommand( AddShapesCommand(
@@ -1,18 +1,24 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef ADD_TRANSFORMERS_COMMAND_H #ifndef ADD_TRANSFORMERS_COMMAND_H
#define ADD_TRANSFORMERS_COMMAND_H #define ADD_TRANSFORMERS_COMMAND_H
#include "Command.h" #include "Command.h"
class Shape;
class Transformer; namespace BPrivate {
namespace Icon {
class Shape;
class Transformer;
}
}
using namespace BPrivate::Icon;
// TODO: make a templated "add items" command? // TODO: make a templated "add items" command?
@@ -1,24 +1,24 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef FREEZE_TRANSFORMATION_COMMAND_H #ifndef FREEZE_TRANSFORMATION_COMMAND_H
#define FREEZE_TRANSFORMATION_COMMAND_H #define FREEZE_TRANSFORMATION_COMMAND_H
#include "Command.h" #include "Command.h"
class Shape;
namespace BPrivate { namespace BPrivate {
namespace Icon { namespace Icon {
class Shape;
class Transformable; class Transformable;
} }
} }
using BPrivate::Icon::Transformable; using namespace BPrivate::Icon;
class FreezeTransformationCommand : public Command { class FreezeTransformationCommand : public Command {
public: public:
@@ -1,20 +1,25 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef MOVE_SHAPES_COMMAND_H #ifndef MOVE_SHAPES_COMMAND_H
#define MOVE_SHAPES_COMMAND_H #define MOVE_SHAPES_COMMAND_H
#include "Command.h" #include "Command.h"
// TODO: make a templated "move items" command? // TODO: make a templated "move items" command?
class VectorPath; namespace BPrivate {
class PathContainer; namespace Icon {
class VectorPath;
class PathContainer;
}
}
using namespace BPrivate::Icon;
class MovePathsCommand : public Command { class MovePathsCommand : public Command {
public: public:
@@ -1,20 +1,26 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef MOVE_SHAPES_COMMAND_H #ifndef MOVE_SHAPES_COMMAND_H
#define MOVE_SHAPES_COMMAND_H #define MOVE_SHAPES_COMMAND_H
#include "Command.h" #include "Command.h"
// TODO: make a templated "move items" command? // TODO: make a templated "move items" command?
class Shape; namespace BPrivate {
class ShapeContainer; namespace Icon {
class Shape;
class ShapeContainer;
}
}
using namespace BPrivate::Icon;
class MoveShapesCommand : public Command { class MoveShapesCommand : public Command {
public: public:
@@ -5,16 +5,21 @@
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef MOVE_TRANSFORMERS_COMMAND_H #ifndef MOVE_TRANSFORMERS_COMMAND_H
#define MOVE_TRANSFORMERS_COMMAND_H #define MOVE_TRANSFORMERS_COMMAND_H
#include "Command.h" #include "Command.h"
// TODO: make a templated "move items" command? // TODO: make a templated "move items" command?
class Shape; namespace BPrivate {
class Transformer; namespace Icon {
class Shape;
class Transformer;
}
}
using namespace BPrivate::Icon;
class MoveTransformersCommand : public Command { class MoveTransformersCommand : public Command {
public: public:
@@ -1,21 +1,26 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef NUDGE_POINTS_ACTION_H #ifndef NUDGE_POINTS_ACTION_H
#define NUDGE_POINTS_ACTION_H #define NUDGE_POINTS_ACTION_H
#include <String.h>
#include "TransformCommand.h" #include "TransformCommand.h"
class VectorPath; #include <String.h>
struct control_point;
namespace BPrivate {
namespace Icon {
class VectorPath;
struct control_point;
}
}
using namespace BPrivate::Icon;
class NudgePointsCommand : public TransformCommand { class NudgePointsCommand : public TransformCommand {
public: public:
@@ -1,17 +1,23 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef PATH_COMMAND_H #ifndef PATH_COMMAND_H
#define PATH_COMMAND_H #define PATH_COMMAND_H
#include "Command.h" #include "Command.h"
class VectorPath;
namespace BPrivate {
namespace Icon {
class VectorPath;
}
}
using namespace BPrivate::Icon;
class PathCommand : public Command { class PathCommand : public Command {
public: public:
@@ -1,20 +1,26 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef REMOVE_PATHS_COMMAND_H #ifndef REMOVE_PATHS_COMMAND_H
#define REMOVE_PATHS_COMMAND_H #define REMOVE_PATHS_COMMAND_H
#include <List.h>
#include "Command.h" #include "Command.h"
class VectorPath; #include <List.h>
class PathContainer;
namespace BPrivate {
namespace Icon {
class VectorPath;
class PathContainer;
}
}
using namespace BPrivate::Icon;
class RemovePathsCommand : public Command { class RemovePathsCommand : public Command {
public: public:
@@ -1,18 +1,24 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef REMOVE_SHAPES_COMMAND_H #ifndef REMOVE_SHAPES_COMMAND_H
#define REMOVE_SHAPES_COMMAND_H #define REMOVE_SHAPES_COMMAND_H
#include "Command.h" #include "Command.h"
class Shape;
class ShapeContainer; namespace BPrivate {
namespace Icon {
class Shape;
class ShapeContainer;
}
}
using namespace BPrivate::Icon;
class RemoveShapesCommand : public Command { class RemoveShapesCommand : public Command {
public: public:
@@ -1,18 +1,24 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef REMOVE_TRANSFORMERS_COMMAND_H #ifndef REMOVE_TRANSFORMERS_COMMAND_H
#define REMOVE_TRANSFORMERS_COMMAND_H #define REMOVE_TRANSFORMERS_COMMAND_H
#include "Command.h" #include "Command.h"
class Shape;
class Transformer; namespace BPrivate {
namespace Icon {
class Shape;
class Transformer;
}
}
using namespace BPrivate::Icon;
// TODO: make a templated "remove items" command? // TODO: make a templated "remove items" command?
@@ -1,26 +1,26 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef TRANSFORM_POINTS_COMMAND_H #ifndef TRANSFORM_POINTS_COMMAND_H
#define TRANSFORM_POINTS_COMMAND_H #define TRANSFORM_POINTS_COMMAND_H
#include "TransformBox.h" #include "TransformBox.h"
#include "TransformCommand.h" #include "TransformCommand.h"
class VectorPath;
struct control_point;
namespace BPrivate { namespace BPrivate {
namespace Icon { namespace Icon {
struct control_point;
class Transformable; class Transformable;
class VectorPath;
} }
} }
using BPrivate::Icon::Transformable; using namespace BPrivate::Icon;
class TransformPointsCommand : public TransformCommand, class TransformPointsCommand : public TransformCommand,
public TransformBoxListener { public TransformBoxListener {
@@ -1,18 +1,24 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef UNASSIGN_PATH_COMMAND_H #ifndef UNASSIGN_PATH_COMMAND_H
#define UNASSIGN_PATH_COMMAND_H #define UNASSIGN_PATH_COMMAND_H
#include "Command.h" #include "Command.h"
class Shape;
class VectorPath; namespace BPrivate {
namespace Icon {
class Shape;
class VectorPath;
}
}
using namespace BPrivate::Icon;
class UnassignPathCommand : public Command { class UnassignPathCommand : public Command {
public: public:
+10 -4
View File
@@ -1,18 +1,24 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef ADD_STYLES_COMMAND_H #ifndef ADD_STYLES_COMMAND_H
#define ADD_STYLES_COMMAND_H #define ADD_STYLES_COMMAND_H
#include "Command.h" #include "Command.h"
class Style;
class StyleContainer; namespace BPrivate {
namespace Icon {
class Style;
class StyleContainer;
}
}
using namespace BPrivate::Icon;
class AddStylesCommand : public Command { class AddStylesCommand : public Command {
public: public:
@@ -1,20 +1,26 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef ASSIGN_STYLE_COMMAND_H #ifndef ASSIGN_STYLE_COMMAND_H
#define ASSIGN_STYLE_COMMAND_H #define ASSIGN_STYLE_COMMAND_H
#include <InterfaceDefs.h>
#include "Command.h" #include "Command.h"
class Shape; #include <InterfaceDefs.h>
class Style;
namespace BPrivate {
namespace Icon {
class Shape;
class Style;
}
}
using namespace BPrivate::Icon;
class AssignStyleCommand : public Command { class AssignStyleCommand : public Command {
public: public:
@@ -1,20 +1,25 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef MOVE_STYLES_COMMAND_H #ifndef MOVE_STYLES_COMMAND_H
#define MOVE_STYLES_COMMAND_H #define MOVE_STYLES_COMMAND_H
#include "Command.h" #include "Command.h"
// TODO: make a templated "move items" command? // TODO: make a templated "move items" command?
class Style; namespace BPrivate {
class StyleContainer; namespace Icon {
class Style;
class StyleContainer;
}
}
using namespace BPrivate::Icon;
class MoveStylesCommand : public Command { class MoveStylesCommand : public Command {
public: public:
@@ -1,20 +1,26 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef REMOVE_STYLES_COMMAND_H #ifndef REMOVE_STYLES_COMMAND_H
#define REMOVE_STYLES_COMMAND_H #define REMOVE_STYLES_COMMAND_H
#include <List.h>
#include "Command.h" #include "Command.h"
class Style; #include <List.h>
class StyleContainer;
namespace BPrivate {
namespace Icon {
class Style;
class StyleContainer;
}
}
using namespace BPrivate::Icon;
class RemoveStylesCommand : public Command { class RemoveStylesCommand : public Command {
public: public:
+10 -4
View File
@@ -1,19 +1,25 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef SET_COLOR_COMMAND_H #ifndef SET_COLOR_COMMAND_H
#define SET_COLOR_COMMAND_H #define SET_COLOR_COMMAND_H
#include <InterfaceDefs.h>
#include "Command.h" #include "Command.h"
class Style; #include <InterfaceDefs.h>
namespace BPrivate {
namespace Icon {
class Style;
}
}
using namespace BPrivate::Icon;
class SetColorCommand : public Command { class SetColorCommand : public Command {
public: public:
@@ -1,18 +1,24 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef SET_GRADIENT_COMMAND_H #ifndef SET_GRADIENT_COMMAND_H
#define SET_GRADIENT_COMMAND_H #define SET_GRADIENT_COMMAND_H
#include "Command.h" #include "Command.h"
class Gradient;
class Style; namespace BPrivate {
namespace Icon {
class Gradient;
class Style;
}
}
using namespace BPrivate::Icon;
class SetGradientCommand : public Command { class SetGradientCommand : public Command {
public: public:
@@ -1,19 +1,26 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef TRANSFORM_GRADIENT_BOX_H #ifndef TRANSFORM_GRADIENT_BOX_H
#define TRANSFORM_GRADIENT_BOX_H #define TRANSFORM_GRADIENT_BOX_H
#include "TransformBox.h" #include "TransformBox.h"
class CanvasView; class CanvasView;
class Gradient;
class Shape; namespace BPrivate {
namespace Icon {
class Gradient;
class Shape;
}
}
using namespace BPrivate::Icon;
class TransformGradientBox : public TransformBox { class TransformGradientBox : public TransformBox {
public: public:
@@ -1,23 +1,24 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef TRANSFORM_OBJECTS_COMMAND_H #ifndef TRANSFORM_OBJECTS_COMMAND_H
#define TRANSFORM_OBJECTS_COMMAND_H #define TRANSFORM_OBJECTS_COMMAND_H
#include "TransformBox.h" #include "TransformBox.h"
#include "TransformCommand.h" #include "TransformCommand.h"
namespace BPrivate { namespace BPrivate {
namespace Icon { namespace Icon {
class Transformable; class Transformable;
} }
} }
using BPrivate::Icon::Transformable; using namespace BPrivate::Icon;
class TransformObjectsCommand : public TransformCommand, class TransformObjectsCommand : public TransformCommand,
public TransformBoxListener { public TransformBoxListener {
@@ -1,21 +1,27 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef TRANSFORM_POINTS_BOX_H #ifndef TRANSFORM_POINTS_BOX_H
#define TRANSFORM_POINTS_BOX_H #define TRANSFORM_POINTS_BOX_H
#include "CanvasTransformBox.h" #include "CanvasTransformBox.h"
class CanvasView; class CanvasView;
class PathManipulator; class PathManipulator;
class VectorPath;
struct control_point; namespace BPrivate {
namespace Icon {
class VectorPath;
struct control_point;
}
}
using namespace BPrivate::Icon;
class TransformPointsBox : public CanvasTransformBox { class TransformPointsBox : public CanvasTransformBox {
public: public:
@@ -1,17 +1,23 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef TRANSFORM_SHAPES_BOX_H #ifndef TRANSFORM_SHAPES_BOX_H
#define TRANSFORM_SHAPES_BOX_H #define TRANSFORM_SHAPES_BOX_H
#include "CanvasTransformBox.h" #include "CanvasTransformBox.h"
class Shape;
namespace BPrivate {
namespace Icon {
class Shape;
}
}
using namespace BPrivate::Icon;
class TransformShapesBox : public CanvasTransformBox { class TransformShapesBox : public CanvasTransformBox {
public: public:
+13 -4
View File
@@ -1,25 +1,31 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef ICON_H #ifndef ICON_H
#define ICON_H #define ICON_H
#include "ShapeContainer.h"
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
#include <List.h> # include <List.h>
# include "Observer.h" # include "Observer.h"
# include "Referenceable.h" # include "Referenceable.h"
#else #else
# include <SupportDefs.h> # include <SupportDefs.h>
#endif #endif
#include "ShapeContainer.h"
class BRect; class BRect;
namespace BPrivate {
namespace Icon {
class PathContainer; class PathContainer;
class StyleContainer; class StyleContainer;
@@ -84,4 +90,7 @@ class Icon {
#endif #endif
}; };
} // namespace Icon
} // namespace BPrivate
#endif // ICON_H #endif // ICON_H
+12 -4
View File
@@ -1,14 +1,14 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef ICON_RENDERER_H #ifndef ICON_RENDERER_H
#define ICON_RENDERER_H #define ICON_RENDERER_H
#include <agg_gamma_lut.h> #include <agg_gamma_lut.h>
#include <agg_pixfmt_rgba.h> #include <agg_pixfmt_rgba.h>
#include <agg_rasterizer_compound_aa.h> #include <agg_rasterizer_compound_aa.h>
@@ -21,6 +21,11 @@
class BBitmap; class BBitmap;
class BRect; class BRect;
namespace BPrivate {
namespace Icon {
class Icon; class Icon;
typedef agg::gamma_lut typedef agg::gamma_lut
@@ -61,7 +66,7 @@ class IconRenderer {
// used when no background bitmap // used when no background bitmap
// is set // is set
const ::GammaTable& GammaTable() const const BPrivate::Icon::GammaTable& GammaTable() const
{ return fGammaTable; } { return fGammaTable; }
void Demultiply(); void Demultiply();
@@ -74,7 +79,7 @@ class IconRenderer {
agg::rgba8 fBackgroundColor; agg::rgba8 fBackgroundColor;
const Icon* fIcon; const Icon* fIcon;
::GammaTable fGammaTable; BPrivate::Icon::GammaTable fGammaTable;
RenderingBuffer fRenderingBuffer; RenderingBuffer fRenderingBuffer;
PixelFormat fPixelFormat; PixelFormat fPixelFormat;
@@ -91,4 +96,7 @@ class IconRenderer {
Transformation fGlobalTransform; Transformation fGlobalTransform;
}; };
} // namespace Icon
} // namespace BPrivate
#endif // ICON_RENDERER_H #endif // ICON_RENDERER_H
+5 -1
View File
@@ -1,5 +1,5 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
@@ -7,6 +7,7 @@
* Ingo Weinhold <[email protected]> * Ingo Weinhold <[email protected]>
*/ */
#include "IconUtils.h" #include "IconUtils.h"
#include <new> #include <new>
@@ -22,8 +23,11 @@
#include "IconRenderer.h" #include "IconRenderer.h"
#include "FlatIconImporter.h" #include "FlatIconImporter.h"
using namespace BPrivate::Icon;
using std::nothrow; using std::nothrow;
// GetIcon // GetIcon
status_t status_t
BIconUtils::GetIcon(BNode* node, BIconUtils::GetIcon(BNode* node,
+10 -1
View File
@@ -1,20 +1,26 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#include "FlatIconFormat.h" #include "FlatIconFormat.h"
#include "LittleEndianBuffer.h" #include "LittleEndianBuffer.h"
namespace BPrivate {
namespace Icon {
const uint32 FLAT_ICON_MAGIC = 'ficn'; const uint32 FLAT_ICON_MAGIC = 'ficn';
const char* kVectorAttrNodeName = "BEOS:ICON"; const char* kVectorAttrNodeName = "BEOS:ICON";
const char* kVectorAttrMimeName = "META:ICON"; const char* kVectorAttrMimeName = "META:ICON";
// read_coord // read_coord
bool bool
read_coord(LittleEndianBuffer& buffer, float& coord) read_coord(LittleEndianBuffer& buffer, float& coord)
@@ -119,3 +125,6 @@ write_float_24(LittleEndianBuffer& buffer, float _value)
&& buffer.Write((uint8)((shortValue >> 8) & 0xff)) && buffer.Write((uint8)((shortValue >> 8) & 0xff))
&& buffer.Write((uint8)(shortValue & 0xff)); && buffer.Write((uint8)(shortValue & 0xff));
} }
} // namespace Icon
} // namespace BPrivate
+9 -2
View File
@@ -1,16 +1,20 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef FLAT_ICON_FORMAT_H #ifndef FLAT_ICON_FORMAT_H
#define FLAT_ICON_FORMAT_H #define FLAT_ICON_FORMAT_H
#include <SupportDefs.h> #include <SupportDefs.h>
namespace BPrivate {
namespace Icon {
extern const uint32 FLAT_ICON_MAGIC; extern const uint32 FLAT_ICON_MAGIC;
extern const char* kVectorAttrNodeName; extern const char* kVectorAttrNodeName;
@@ -69,4 +73,7 @@ bool write_coord(LittleEndianBuffer& buffer, float coord);
bool read_float_24(LittleEndianBuffer& buffer, float& value); bool read_float_24(LittleEndianBuffer& buffer, float& value);
bool write_float_24(LittleEndianBuffer& buffer, float value); bool write_float_24(LittleEndianBuffer& buffer, float value);
} // namespace Icon
} // namespace BPrivate
#endif // FLAT_ICON_FORMAT_H #endif // FLAT_ICON_FORMAT_H
+9 -2
View File
@@ -1,14 +1,14 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef FLAT_ICON_IMPORTER_H #ifndef FLAT_ICON_IMPORTER_H
#define FLAT_ICON_IMPORTER_H #define FLAT_ICON_IMPORTER_H
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
# include "Importer.h" # include "Importer.h"
#else #else
@@ -17,6 +17,10 @@
class BMessage; class BMessage;
class BPositionIO; class BPositionIO;
namespace BPrivate {
namespace Icon {
class Icon; class Icon;
class LittleEndianBuffer; class LittleEndianBuffer;
class PathContainer; class PathContainer;
@@ -58,4 +62,7 @@ class FlatIconImporter {
ShapeContainer* shapes); ShapeContainer* shapes);
}; };
} // namespace Icon
} // namespace BPrivate
#endif // FLAT_ICON_IMPORTER_H #endif // FLAT_ICON_IMPORTER_H
@@ -1,21 +1,25 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#include "LittleEndianBuffer.h"
#include <malloc.h> #include "LittleEndianBuffer.h"
#include <stdio.h>
#include <string.h>
#include <ByteOrder.h> #include <ByteOrder.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace BPrivate::Icon;
#define CHUNK_SIZE 256 #define CHUNK_SIZE 256
// constructor // constructor
LittleEndianBuffer::LittleEndianBuffer() LittleEndianBuffer::LittleEndianBuffer()
: fBuffer((uint8*)malloc(CHUNK_SIZE)), : fBuffer((uint8*)malloc(CHUNK_SIZE)),
+9 -2
View File
@@ -1,16 +1,20 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef LITTLE_ENDIAN_BUFFER_H #ifndef LITTLE_ENDIAN_BUFFER_H
#define LITTLE_ENDIAN_BUFFER_H #define LITTLE_ENDIAN_BUFFER_H
#include <SupportDefs.h> #include <SupportDefs.h>
namespace BPrivate {
namespace Icon {
class LittleEndianBuffer { class LittleEndianBuffer {
public: public:
LittleEndianBuffer(); LittleEndianBuffer();
@@ -54,4 +58,7 @@ class LittleEndianBuffer {
bool fOwnsBuffer; bool fOwnsBuffer;
}; };
} // namespace Icon
} // namespace BPrivate
#endif // LITTLE_ENDIAN_BUFFER_H #endif // LITTLE_ENDIAN_BUFFER_H
+10 -2
View File
@@ -1,17 +1,22 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef PATH_COMMAND_QUEUE_H #ifndef PATH_COMMAND_QUEUE_H
#define PATH_COMMAND_QUEUE_H #define PATH_COMMAND_QUEUE_H
#include "LittleEndianBuffer.h" #include "LittleEndianBuffer.h"
class BPoint; class BPoint;
namespace BPrivate {
namespace Icon {
class VectorPath; class VectorPath;
class PathCommandQueue { class PathCommandQueue {
@@ -50,4 +55,7 @@ class PathCommandQueue {
uint8 fCommandCount; uint8 fCommandCount;
}; };
} // namespace Icon
} // namespace BPrivate
#endif // PATH_COMMAND_QUEUE_H #endif // PATH_COMMAND_QUEUE_H
+9 -2
View File
@@ -1,16 +1,20 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef PATH_CONTAINER_H #ifndef PATH_CONTAINER_H
#define PATH_CONTAINER_H #define PATH_CONTAINER_H
#include <List.h> #include <List.h>
namespace BPrivate {
namespace Icon {
class VectorPath; class VectorPath;
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
@@ -63,4 +67,7 @@ class PathContainer {
#endif // ICON_O_MATIC #endif // ICON_O_MATIC
}; };
} // namespace Icon
} // namespace BPrivate
#endif // PATH_CONTAINER_H #endif // PATH_CONTAINER_H
+11 -4
View File
@@ -1,16 +1,13 @@
/* /*
* Copyright 2006, Haiku. All rights reserved. * Copyright 2006-2007, Haiku. All rights reserved.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef SHAPE_H #ifndef SHAPE_H
#define SHAPE_H #define SHAPE_H
#include <List.h>
#include <Rect.h>
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
# include "IconObject.h" # include "IconObject.h"
@@ -21,6 +18,13 @@
#include "Transformable.h" #include "Transformable.h"
#include "VectorPath.h" #include "VectorPath.h"
#include <List.h>
#include <Rect.h>
namespace BPrivate {
namespace Icon {
class Style; class Style;
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
@@ -159,4 +163,7 @@ class Shape : public BPrivate::Icon::Transformable {
#endif #endif
}; };
} // namespace Icon
} // namespace BPrivate
#endif // SHAPE_H #endif // SHAPE_H
+9 -2
View File
@@ -1,16 +1,20 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef SHAPE_CONTAINER_H #ifndef SHAPE_CONTAINER_H
#define SHAPE_CONTAINER_H #define SHAPE_CONTAINER_H
#include <List.h> #include <List.h>
namespace BPrivate {
namespace Icon {
class Shape; class Shape;
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
@@ -63,4 +67,7 @@ class ShapeContainer {
#endif // ICON_O_MATIC #endif // ICON_O_MATIC
}; };
} // namespace Icon
} // namespace BPrivate
#endif // SHAPE_CONTAINER_H #endif // SHAPE_CONTAINER_H
+14 -8
View File
@@ -5,28 +5,32 @@
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef VECTOR_PATH_H #ifndef VECTOR_PATH_H
#define VECTOR_PATH_H #define VECTOR_PATH_H
#include "Transformable.h"
#include <agg_path_storage.h>
#include <Rect.h> #include <Rect.h>
#include <String.h> #include <String.h>
#include <agg_path_storage.h>
#include "Transformable.h"
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
# include "IconObject.h"
# include <Archivable.h> # include <Archivable.h>
# include <List.h> # include <List.h>
# include "IconObject.h"
#endif // ICON_O_MATIC #endif // ICON_O_MATIC
class BBitmap; class BBitmap;
class BMessage; class BMessage;
class BView; class BView;
namespace BPrivate {
namespace Icon {
struct control_point { struct control_point {
BPoint point; // actual point on path BPoint point; // actual point on path
BPoint point_in; // control point for incomming curve BPoint point_in; // control point for incomming curve
@@ -207,5 +211,7 @@ class VectorPath {
mutable BRect fCachedBounds; mutable BRect fCachedBounds;
}; };
#endif // VECTOR_PATH_H } // namespace Icon
} // namespace BPrivate
#endif // VECTOR_PATH_H
+10 -4
View File
@@ -1,16 +1,13 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef GRADIENT_H #ifndef GRADIENT_H
#define GRADIENT_H #define GRADIENT_H
#include <GraphicsDefs.h>
#include <List.h>
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
# include <Archivable.h> # include <Archivable.h>
@@ -20,8 +17,15 @@
#include "Transformable.h" #include "Transformable.h"
#include <GraphicsDefs.h>
#include <List.h>
class BMessage; class BMessage;
namespace BPrivate {
namespace Icon {
enum gradient_type { enum gradient_type {
GRADIENT_LINEAR = 0, GRADIENT_LINEAR = 0,
GRADIENT_CIRCULAR, GRADIENT_CIRCULAR,
@@ -121,5 +125,7 @@ class Gradient : public Transformable {
bool fInheritTransformation; bool fInheritTransformation;
}; };
} // namespace Icon
} // namespace BPrivate
#endif // GRADIENT_H #endif // GRADIENT_H
+18 -8
View File
@@ -1,17 +1,13 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef STYLE_H #ifndef STYLE_H
#define STYLE_H #define STYLE_H
#include <GraphicsDefs.h>
#include <agg_color_rgba.h>
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
# include "IconObject.h" # include "IconObject.h"
@@ -21,6 +17,14 @@
#include "IconRenderer.h" #include "IconRenderer.h"
// TODO: put GammaTable into its own file // TODO: put GammaTable into its own file
#include <GraphicsDefs.h>
#include <agg_color_rgba.h>
namespace BPrivate {
namespace Icon {
class Gradient; class Gradient;
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
@@ -55,8 +59,9 @@ class Style {
inline rgb_color Color() const inline rgb_color Color() const
{ return fColor; } { return fColor; }
void SetGradient(const ::Gradient* gradient); void SetGradient(const BPrivate::Icon::Gradient*
::Gradient* Gradient() const gradient);
BPrivate::Icon::Gradient* Gradient() const
{ return fGradient; } { return fGradient; }
const agg::rgba8* Colors() const const agg::rgba8* Colors() const
@@ -67,7 +72,7 @@ class Style {
private: private:
rgb_color fColor; rgb_color fColor;
::Gradient* fGradient; BPrivate::Icon::Gradient* fGradient;
// hold gradient color array // hold gradient color array
agg::rgba8* fColors; agg::rgba8* fColors;
@@ -77,4 +82,9 @@ class Style {
mutable bool fGammaCorrectedColorsValid; mutable bool fGammaCorrectedColorsValid;
}; };
} // namespace Icon
} // namespace BPrivate
using namespace BPrivate::Icon;
#endif // STYLE_H #endif // STYLE_H
+9 -2
View File
@@ -1,16 +1,20 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef STYLE_MANAGER_H #ifndef STYLE_MANAGER_H
#define STYLE_MANAGER_H #define STYLE_MANAGER_H
#include <List.h> #include <List.h>
namespace BPrivate {
namespace Icon {
class Style; class Style;
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
@@ -62,4 +66,7 @@ class StyleContainer {
#endif // ICON_O_MATIC #endif // ICON_O_MATIC
}; };
} // namespace Icon
} // namespace BPrivate
#endif // STYLE_MANAGER_H #endif // STYLE_MANAGER_H
@@ -1,14 +1,13 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#include "AffineTransformer.h"
#include <new> #include "AffineTransformer.h"
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
# include <Message.h> # include <Message.h>
@@ -18,9 +17,13 @@
# include "PropertyObject.h" # include "PropertyObject.h"
#endif #endif
#include <new>
using namespace BPrivate::Icon;
using std::nothrow; using std::nothrow;
// constructor // constructor
AffineTransformer::AffineTransformer(VertexSource& source) AffineTransformer::AffineTransformer(VertexSource& source)
: Transformer(source, "Transformation"), : Transformer(source, "Transformation"),
+10 -3
View File
@@ -1,18 +1,22 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#ifndef AFFINE_TRANSFORMER_H #ifndef AFFINE_TRANSFORMER_H
#define AFFINE_TRANSFORMER_H #define AFFINE_TRANSFORMER_H
#include "Transformer.h"
#include <agg_conv_transform.h> #include <agg_conv_transform.h>
#include <agg_trans_affine.h> #include <agg_trans_affine.h>
#include "Transformer.h"
namespace BPrivate {
namespace Icon {
typedef agg::conv_transform<VertexSource, typedef agg::conv_transform<VertexSource,
agg::trans_affine> Affine; agg::trans_affine> Affine;
@@ -54,4 +58,7 @@ class AffineTransformer : public Transformer,
#endif #endif
}; };
} // namespace Icon
} // namespace BPrivate
#endif // AFFINE_TRANSFORMER_H #endif // AFFINE_TRANSFORMER_H
@@ -1,14 +1,13 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <[email protected]> * Stephan Aßmus <[email protected]>
*/ */
#include "ContourTransformer.h"
#include <new> #include "ContourTransformer.h"
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
# include <Message.h> # include <Message.h>
@@ -19,8 +18,13 @@
# include "PropertyObject.h" # include "PropertyObject.h"
#endif // ICON_O_MATIC #endif // ICON_O_MATIC
#include <new>
using namespace BPrivate::Icon;
using std::nothrow; using std::nothrow;
// constructor // constructor
ContourTransformer::ContourTransformer(VertexSource& source) ContourTransformer::ContourTransformer(VertexSource& source)
: Transformer(source, "Contour"), : Transformer(source, "Contour"),
+10 -3
View File
@@ -1,18 +1,22 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <superstippi@gmx.de> * Stephan Aßmus <superstippi@gmx.de>
*/ */
#ifndef CONTOUR_TRANSFORMER_H #ifndef CONTOUR_TRANSFORMER_H
#define CONTOUR_TRANSFORMER_H #define CONTOUR_TRANSFORMER_H
#include <agg_conv_contour.h>
#include "Transformer.h" #include "Transformer.h"
#include <agg_conv_contour.h>
namespace BPrivate {
namespace Icon {
typedef agg::conv_contour<VertexSource> Contour; typedef agg::conv_contour<VertexSource> Contour;
class ContourTransformer : public Transformer, class ContourTransformer : public Transformer,
@@ -51,4 +55,7 @@ class ContourTransformer : public Transformer,
#endif #endif
}; };
} // namespace Icon
} // namespace BPrivate
#endif // CONTOUR_TRANSFORMER_H #endif // CONTOUR_TRANSFORMER_H
+9 -2
View File
@@ -1,19 +1,23 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <superstippi@gmx.de> * Stephan Aßmus <superstippi@gmx.de>
*/ */
#ifndef PATH_SOURCE_H #ifndef PATH_SOURCE_H
#define PATH_SOURCE_H #define PATH_SOURCE_H
#include "Transformer.h" #include "Transformer.h"
#include "agg_path_storage.h" #include "agg_path_storage.h"
#include "agg_conv_curve.h" #include "agg_conv_curve.h"
namespace BPrivate {
namespace Icon {
class PathContainer; class PathContainer;
class VectorPath; class VectorPath;
@@ -41,4 +45,7 @@ class PathSource : public VertexSource {
AGGCurvedPath fAGGCurvedPath; AGGCurvedPath fAGGCurvedPath;
}; };
} // namespace Icon
} // namespace BPrivate
#endif // PATH_SOURCE_H #endif // PATH_SOURCE_H
@@ -1,11 +1,12 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <superstippi@gmx.de> * Stephan Aßmus <superstippi@gmx.de>
*/ */
#include "PerspectiveTransformer.h" #include "PerspectiveTransformer.h"
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
@@ -14,8 +15,10 @@
#include <new> #include <new>
using namespace BPrivate::Icon;
using std::nothrow; using std::nothrow;
// constructor // constructor
PerspectiveTransformer::PerspectiveTransformer(VertexSource& source) PerspectiveTransformer::PerspectiveTransformer(VertexSource& source)
: Transformer(source, "Perspective"), : Transformer(source, "Perspective"),
@@ -1,18 +1,22 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <superstippi@gmx.de> * Stephan Aßmus <superstippi@gmx.de>
*/ */
#ifndef PERSPECTIVE_TRANSFORMER_H #ifndef PERSPECTIVE_TRANSFORMER_H
#define PERSPECTIVE_TRANSFORMER_H #define PERSPECTIVE_TRANSFORMER_H
#include "Transformer.h"
#include <agg_conv_transform.h> #include <agg_conv_transform.h>
#include <agg_trans_perspective.h> #include <agg_trans_perspective.h>
#include "Transformer.h"
namespace BPrivate {
namespace Icon {
typedef agg::conv_transform<VertexSource, typedef agg::conv_transform<VertexSource,
agg::trans_perspective> Perspective; agg::trans_perspective> Perspective;
@@ -52,4 +56,7 @@ class PerspectiveTransformer : public Transformer,
#endif #endif
}; };
} // namespace Icon
} // namespace BPrivate
#endif // PERSPECTIVE_TRANSFORMER_H #endif // PERSPECTIVE_TRANSFORMER_H
@@ -1,14 +1,13 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <superstippi@gmx.de> * Stephan Aßmus <superstippi@gmx.de>
*/ */
#include "StrokeTransformer.h"
#include <new> #include "StrokeTransformer.h"
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
# include <Message.h> # include <Message.h>
@@ -19,8 +18,12 @@
# include "PropertyObject.h" # include "PropertyObject.h"
#endif // ICON_O_MATIC #endif // ICON_O_MATIC
#include <new>
using namespace BPrivate::Icon;
using std::nothrow; using std::nothrow;
// constructor // constructor
StrokeTransformer::StrokeTransformer(VertexSource& source) StrokeTransformer::StrokeTransformer(VertexSource& source)
: Transformer(source, "Stroke"), : Transformer(source, "Stroke"),
+10 -3
View File
@@ -1,18 +1,22 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <superstippi@gmx.de> * Stephan Aßmus <superstippi@gmx.de>
*/ */
#ifndef STROKE_TRANSFORMER_H #ifndef STROKE_TRANSFORMER_H
#define STROKE_TRANSFORMER_H #define STROKE_TRANSFORMER_H
#include <agg_conv_stroke.h>
#include "Transformer.h" #include "Transformer.h"
#include <agg_conv_stroke.h>
namespace BPrivate {
namespace Icon {
typedef agg::conv_stroke<VertexSource> Stroke; typedef agg::conv_stroke<VertexSource> Stroke;
class StrokeTransformer : public Transformer, class StrokeTransformer : public Transformer,
@@ -53,4 +57,7 @@ class StrokeTransformer : public Transformer,
#endif #endif
}; };
} // namespace Icon
} // namespace BPrivate
#endif // STROKE_TRANSFORMER_H #endif // STROKE_TRANSFORMER_H
+6 -1
View File
@@ -1,13 +1,18 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <superstippi@gmx.de> * Stephan Aßmus <superstippi@gmx.de>
*/ */
#include "Transformer.h" #include "Transformer.h"
using namespace BPrivate::Icon;
// constructor // constructor
VertexSource::VertexSource() VertexSource::VertexSource()
{ {
+9 -2
View File
@@ -1,20 +1,24 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <superstippi@gmx.de> * Stephan Aßmus <superstippi@gmx.de>
*/ */
#ifndef TRANSFORMER_H #ifndef TRANSFORMER_H
#define TRANSFORMER_H #define TRANSFORMER_H
#ifdef ICON_O_MATIC #ifdef ICON_O_MATIC
# include "IconObject.h" # include "IconObject.h"
#else #else
# include <SupportDefs.h> # include <SupportDefs.h>
#endif #endif
namespace BPrivate {
namespace Icon {
class VertexSource { class VertexSource {
public: public:
VertexSource(); VertexSource();
@@ -58,4 +62,7 @@ class Transformer : public VertexSource {
VertexSource& fSource; VertexSource& fSource;
}; };
} // namespace Icon
} // namespace BPrivate
#endif // TRANSFORMER_H #endif // TRANSFORMER_H
@@ -1,5 +1,5 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
@@ -8,15 +8,18 @@
#include "TransformerFactory.h" #include "TransformerFactory.h"
#ifdef ICON_O_MATIC
# include <Message.h>
#endif
#include "AffineTransformer.h" #include "AffineTransformer.h"
#include "ContourTransformer.h" #include "ContourTransformer.h"
#include "PerspectiveTransformer.h" #include "PerspectiveTransformer.h"
#include "StrokeTransformer.h" #include "StrokeTransformer.h"
#ifdef ICON_O_MATIC
# include <Message.h>
#endif
using namespace BPrivate::Icon;
// TransformerFor // TransformerFor
Transformer* Transformer*
TransformerFactory::TransformerFor(uint32 type, VertexSource& source) TransformerFactory::TransformerFor(uint32 type, VertexSource& source)
+10 -2
View File
@@ -1,17 +1,22 @@
/* /*
* Copyright 2006, Haiku. * Copyright 2006-2007, Haiku.
* Distributed under the terms of the MIT License. * Distributed under the terms of the MIT License.
* *
* Authors: * Authors:
* Stephan Aßmus <superstippi@gmx.de> * Stephan Aßmus <superstippi@gmx.de>
*/ */
#ifndef TRANSFORMER_FACTORY_H #ifndef TRANSFORMER_FACTORY_H
#define TRANSFORMER_FACTORY_H #define TRANSFORMER_FACTORY_H
#include <String.h> #include <String.h>
class BMessage; class BMessage;
namespace BPrivate {
namespace Icon {
class Transformer; class Transformer;
class VertexSource; class VertexSource;
@@ -32,4 +37,7 @@ class TransformerFactory {
#endif // ICON_O_MATIC #endif // ICON_O_MATIC
}; };
} // namespace Icon
} // namespace BPrivate
#endif // TRANSFORMER_FACTORY_H #endif // TRANSFORMER_FACTORY_H