File fix-icons-dir.patch of Package HeeksCAD
diff -uNr old-heekscad/interface/ToolImage.cpp heekscad/interface/ToolImage.cpp
--- old-heekscad/interface/ToolImage.cpp 2009-05-03 00:32:04.000000000 +0200
+++ heekscad/interface/ToolImage.cpp 2009-05-04 10:55:26.000000000 +0200
@@ -10,10 +10,21 @@
const int ToolImage::full_size = 96;
const int ToolImage::default_bitmap_size = 24;
-ToolImage::ToolImage(const wxString& name):wxImage(wxGetApp().GetExeFolder() + _T("/bitmaps/") + name + _T(".png"), wxBITMAP_TYPE_PNG)
-#else
-ToolImage::ToolImage(const wxString& name):wxImage(theApp.GetDllFolder() + _T("/bitmaps/") + name + _T(".png"), wxBITMAP_TYPE_PNG)
-#endif
+ #ifdef WIN32
+ToolImage::ToolImage(const wxString& name):wxImage(wxGetApp().GetExeFolder() + _T("/bitmaps/") + name + _T(".png"), wxBITMAP_TYPE_PNG)
+ #else
+ToolImage::ToolImage(const wxString& name):wxImage(wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/bitmaps/") + name + _T(".png"), wxBITMAP_TYPE_PNG)
+ #endif
+
+#else
+
+ #ifdef WIN32
+ToolImage::ToolImage(const wxString& name):wxImage(theApp.GetDllFolder() + _T("/bitmaps/") + name + _T(".png"), wxBITMAP_TYPE_PNG)
+ #else
+ToolImage::ToolImage(const wxString& name):wxImage(theApp.GetDllFolder() + _T("/../share/HeeksCAD/bitmaps/") + name + _T(".png"), wxBITMAP_TYPE_PNG)
+ #endif
+
+#endif
{
int width = GetWidth();
int height = GetHeight();
diff -uNr old-heekscad/src/Cone.h heekscad/src/Cone.h
--- old-heekscad/src/Cone.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/Cone.h 2009-05-04 10:55:26.000000000 +0200
@@ -24,7 +24,11 @@
// HeeksObj's virtual functions
const wxChar* GetTypeString(void)const{return _("Cone");}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/cone");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/cone");}
+#endif
void glCommands(bool select, bool marked, bool no_color);
HeeksObj *MakeACopy(void)const;
bool ModifyByMatrix(const double* m);
diff -uNr old-heekscad/src/CoordinateSystem.h heekscad/src/CoordinateSystem.h
--- old-heekscad/src/CoordinateSystem.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/CoordinateSystem.h 2009-05-04 10:55:26.000000000 +0200
@@ -39,7 +39,11 @@
void GetBox(CBox &box);
const wxChar* GetTypeString(void)const{return _("Coordinate System");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/coordsys");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/coordsys");}
+#endif
bool ModifyByMatrix(const double *mat);
void GetProperties(std::list<Property *> *list);
void GetGripperPositions(std::list<double> *list, bool just_for_endof){}
diff -uNr old-heekscad/src/Cuboid.h heekscad/src/Cuboid.h
--- old-heekscad/src/Cuboid.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/Cuboid.h 2009-05-04 10:55:26.000000000 +0200
@@ -21,7 +21,11 @@
// HeeksObj's virtual functions
const wxChar* GetTypeString(void)const{return _("Cuboid");}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/cube");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/cube");}
+#endif
HeeksObj *MakeACopy(void)const;
bool ModifyByMatrix(const double* m);
void GetProperties(std::list<Property *> *list);
diff -uNr old-heekscad/src/Cylinder.h heekscad/src/Cylinder.h
--- old-heekscad/src/Cylinder.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/Cylinder.h 2009-05-04 10:55:26.000000000 +0200
@@ -20,7 +20,11 @@
// HeeksObj's virtual functions
const wxChar* GetTypeString(void)const{return _("Cylinder");}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/cyl");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/cyl");}
+#endif
HeeksObj *MakeACopy(void)const;
bool ModifyByMatrix(const double* m);
void GetProperties(std::list<Property *> *list);
diff -uNr old-heekscad/src/Edge.h heekscad/src/Edge.h
--- old-heekscad/src/Edge.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/Edge.h 2009-05-04 10:55:26.000000000 +0200
@@ -44,7 +44,11 @@
void GetBox(CBox &box);
void GetGripperPositions(std::list<double> *list, bool just_for_endof);
HeeksObj *MakeACopy(void)const{ return new CEdge(*this);}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/edge");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/edge");}
+#endif
const wxChar* GetTypeString(void)const{return _("Edge");}
void GetTools(std::list<Tool*>* t_list, const wxPoint* p);
void WriteXML(TiXmlNode *root);
diff -uNr old-heekscad/src/Face.h heekscad/src/Face.h
--- old-heekscad/src/Face.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/Face.h 2009-05-04 10:55:26.000000000 +0200
@@ -40,7 +40,11 @@
long GetMarkingMask()const{return MARKING_FILTER_FACE;}
void glCommands(bool select, bool marked, bool no_color);
void GetBox(CBox &box);
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/face");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/face");}
+#endif
HeeksObj *MakeACopy(void)const{ return new CFace(*this);}
const wxChar* GetTypeString(void)const{return _("Face");}
void GetTriangles(void(*callbackfunc)(const double* x, const double* n), double cusp, bool just_one_average_normal = true);
diff -uNr old-heekscad/src/Group.h heekscad/src/Group.h
--- old-heekscad/src/Group.h 2009-05-04 01:28:49.000000000 +0200
+++ heekscad/src/Group.h 2009-05-04 10:55:26.000000000 +0200
@@ -13,7 +13,11 @@
const wxChar* GetTypeString(void)const{return _("Group");}
int GetType()const{return GroupType;}
HeeksObj *MakeACopy(void)const{ return new CGroup(*this);}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/group");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/group");}
+#endif
void WriteXML(TiXmlNode *root);
bool UsesID(){return true;}
diff -uNr old-heekscad/src/HArc.h heekscad/src/HArc.h
--- old-heekscad/src/HArc.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HArc.h 2009-05-04 10:55:26.000000000 +0200
@@ -32,7 +32,11 @@
void GetBox(CBox &box);
const wxChar* GetTypeString(void)const{return _("Arc");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/arc");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/arc");}
+#endif
bool ModifyByMatrix(const double *mat);
void SetColor(const HeeksColor &col){color = col;}
const HeeksColor* GetColor()const{return &color;}
diff -uNr old-heekscad/src/HCircle.h heekscad/src/HCircle.h
--- old-heekscad/src/HCircle.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HCircle.h 2009-05-04 10:55:26.000000000 +0200
@@ -29,7 +29,11 @@
void GetBox(CBox &box);
const wxChar* GetTypeString(void)const{return _("Circle");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/circle");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/circle");}
+#endif
bool ModifyByMatrix(const double *mat);
void SetColor(const HeeksColor &col){color = col;}
const HeeksColor* GetColor()const{return &color;}
diff -uNr old-heekscad/src/HDimension.h heekscad/src/HDimension.h
--- old-heekscad/src/HDimension.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HDimension.h 2009-05-04 10:55:26.000000000 +0200
@@ -41,7 +41,11 @@
void GetBox(CBox &box);
const wxChar* GetTypeString(void)const{return _("Dimension");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/dimension");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/dimension");}
+#endif
bool ModifyByMatrix(const double *mat);
void SetColor(const HeeksColor &col){m_color = col;}
const HeeksColor* GetColor()const{return &m_color;}
diff -uNr old-heekscad/src/HeeksCAD.cpp heekscad/src/HeeksCAD.cpp
--- old-heekscad/src/HeeksCAD.cpp 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HeeksCAD.cpp 2009-05-04 10:51:00.000000000 +0200
@@ -2918,7 +2918,11 @@
{
if(m_gl_font == NULL)
{
+#ifdef WIN32
wxString fstr = GetExeFolder() + _T("/bitmaps/font.glf");
+#else
+ wxString fstr = GetExeFolder() + _T("/../share/HeeksCAD/bitmaps/font.glf");
+#endif
glGenTextures( 1, &m_font_tex_number );
m_gl_font = new GLFONT;
glFontCreate(m_gl_font, (char*)Ttc(fstr.c_str()), m_font_tex_number);
diff -uNr old-heekscad/src/HEllipse.h heekscad/src/HEllipse.h
--- old-heekscad/src/HEllipse.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HEllipse.h 2009-05-04 10:55:26.000000000 +0200
@@ -31,7 +31,11 @@
void GetBox(CBox &box);
const wxChar* GetTypeString(void)const{return _("Ellipse");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/circle");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/circle");}
+#endif
bool ModifyByMatrix(const double *mat);
void SetColor(const HeeksColor &col){color = col;}
const HeeksColor* GetColor()const{return &color;}
diff -uNr old-heekscad/src/HILine.h heekscad/src/HILine.h
--- old-heekscad/src/HILine.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HILine.h 2009-05-04 10:55:26.000000000 +0200
@@ -28,7 +28,11 @@
void GetBox(CBox &box);
const wxChar* GetTypeString(void)const{return _("Infinite Line");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/iline");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/iline");}
+#endif
bool ModifyByMatrix(const double *mat);
void SetColor(const HeeksColor &col){color = col;}
const HeeksColor* GetColor()const{return &color;}
diff -uNr old-heekscad/src/HImage.h heekscad/src/HImage.h
--- old-heekscad/src/HImage.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HImage.h 2009-05-04 10:55:26.000000000 +0200
@@ -38,7 +38,11 @@
long GetMarkingMask()const{return MARKING_FILTER_IMAGE;}
void glCommands(bool select, bool marked, bool no_color);
void GetBox(CBox &box);
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/picture");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/picture");}
+#endif
const wxChar* GetShortString(void)const;
const wxChar* GetTypeString(void)const{return _("Image");}
HeeksObj *MakeACopy(void)const;
diff -uNr old-heekscad/src/HLine.h heekscad/src/HLine.h
--- old-heekscad/src/HLine.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HLine.h 2009-05-04 10:55:26.000000000 +0200
@@ -29,7 +29,11 @@
void GetBox(CBox &box);
const wxChar* GetTypeString(void)const{return _("Line");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/line");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/line");}
+#endif
bool ModifyByMatrix(const double *mat);
void SetColor(const HeeksColor &col){color = col;}
const HeeksColor* GetColor()const{return &color;}
diff -uNr old-heekscad/src/HPoint.h heekscad/src/HPoint.h
--- old-heekscad/src/HPoint.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HPoint.h 2009-05-04 10:55:26.000000000 +0200
@@ -28,7 +28,11 @@
void GetBox(CBox &box);
const wxChar* GetTypeString(void)const{return _("Point");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/point");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/point");}
+#endif
bool ModifyByMatrix(const double *mat);
void SetColor(const HeeksColor &col){color = col;}
const HeeksColor* GetColor()const{return &color;}
diff -uNr old-heekscad/src/HSpline.h heekscad/src/HSpline.h
--- old-heekscad/src/HSpline.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HSpline.h 2009-05-04 10:55:26.000000000 +0200
@@ -31,7 +31,11 @@
void GetBox(CBox &box);
const wxChar* GetTypeString(void)const{return _("Spline");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/circle");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/circle");}
+#endif
bool ModifyByMatrix(const double *mat);
void SetColor(const HeeksColor &col){color = col;}
const HeeksColor* GetColor()const{return &color;}
diff -uNr old-heekscad/src/HText.h heekscad/src/HText.h
--- old-heekscad/src/HText.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HText.h 2009-05-04 10:55:26.000000000 +0200
@@ -30,7 +30,11 @@
void GetBox(CBox &box);
const wxChar* GetTypeString(void)const{return _("Text");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/text");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/text");}
+#endif
bool ModifyByMatrix(const double *mat);
void SetColor(const HeeksColor &col){m_color = col;}
const HeeksColor* GetColor()const{return &m_color;}
diff -uNr old-heekscad/src/HXml.h heekscad/src/HXml.h
--- old-heekscad/src/HXml.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/HXml.h 2009-05-04 10:55:26.000000000 +0200
@@ -22,7 +22,11 @@
const wxChar* GetShortString(void)const;
const wxChar* GetTypeString(void)const{return _("Xml");}
HeeksObj *MakeACopy(void)const;
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/xml");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/xml");}
+#endif
void GetProperties(std::list<Property *> *list);
void CopyFrom(const HeeksObj* object){operator=(*((HXml*)object));}
void WriteXML(TiXmlNode *root);
diff -uNr old-heekscad/src/Shape.h heekscad/src/Shape.h
--- old-heekscad/src/Shape.h 2009-05-04 01:28:49.000000000 +0200
+++ heekscad/src/Shape.h 2009-05-04 10:55:26.000000000 +0200
@@ -16,7 +16,11 @@
public:
const wxChar* GetTypeString(void)const{return _("Faces");}
HeeksObj *MakeACopy(void)const{ return new CFaceList(*this);}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/faces");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/faces");}
+#endif
};
class CEdgeList: public ObjList{
@@ -24,7 +28,11 @@
public:
const wxChar* GetTypeString(void)const{return _("Edges");}
HeeksObj *MakeACopy(void)const{ return new CEdgeList(*this);}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/edges");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/edges");}
+#endif
};
class CShape:public ObjList{
diff -uNr old-heekscad/src/Sketch.h heekscad/src/Sketch.h
--- old-heekscad/src/Sketch.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/Sketch.h 2009-05-04 10:55:26.000000000 +0200
@@ -32,7 +32,11 @@
int GetType()const{return SketchType;}
long GetMarkingMask()const{return MARKING_FILTER_SKETCH;}
const wxChar* GetTypeString(void)const{return _("Sketch");}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/linedrawing");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/linedrawing");}
+#endif
void GetProperties(std::list<Property *> *list);
void GetTools(std::list<Tool*>* t_list, const wxPoint* p);
HeeksObj *MakeACopy(void)const;
diff -uNr old-heekscad/src/Solid.h heekscad/src/Solid.h
--- old-heekscad/src/Solid.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/Solid.h 2009-05-04 10:55:26.000000000 +0200
@@ -23,7 +23,11 @@
int GetType()const{return SolidType;}
long GetMarkingMask()const{return MARKING_FILTER_SOLID;}
const wxChar* GetTypeString(void)const{return _("Solid");}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/solid");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/solid");}
+#endif
HeeksObj *MakeACopy(void)const;
void SetColor(const HeeksColor &col){m_color = col;}
const HeeksColor* GetColor()const{return &m_color;}
diff -uNr old-heekscad/src/Sphere.h heekscad/src/Sphere.h
--- old-heekscad/src/Sphere.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/Sphere.h 2009-05-04 10:55:26.000000000 +0200
@@ -19,7 +19,11 @@
// HeeksObj's virtual functions
const wxChar* GetTypeString(void)const{return _("Sphere");}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/sphere");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/sphere");}
+#endif
HeeksObj *MakeACopy(void)const;
bool ModifyByMatrix(const double* m);
void GetProperties(std::list<Property *> *list);
diff -uNr old-heekscad/src/StlSolid.h heekscad/src/StlSolid.h
--- old-heekscad/src/StlSolid.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/StlSolid.h 2009-05-04 10:55:26.000000000 +0200
@@ -36,7 +36,11 @@
long GetMarkingMask()const{return MARKING_FILTER_STL_SOLID;}
int GetIDGroupType()const{return SolidType;}
const wxChar* GetTypeString(void)const{return _("STL Solid");}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/stlsolid");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/stlsolid");}
+#endif
void glCommands(bool select, bool marked, bool no_color);
void GetBox(CBox &box);
void KillGLLists(void);
diff -uNr old-heekscad/src/Wire.h heekscad/src/Wire.h
--- old-heekscad/src/Wire.h 2009-05-03 00:32:12.000000000 +0200
+++ heekscad/src/Wire.h 2009-05-04 10:55:26.000000000 +0200
@@ -17,7 +17,11 @@
long GetMarkingMask()const{return MARKING_FILTER_WIRE;}
const wxChar* GetTypeString(void)const{return _("Wire");}
HeeksObj *MakeACopy(void)const{ return new CWire(*this);}
+#ifdef WIN32
wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/icons/wire");}
+#else
+ wxString GetIcon(){return wxGetApp().GetExeFolder() + _T("/../share/HeeksCAD/icons/wire");}
+#endif
void GetTools(std::list<Tool*>* t_list, const wxPoint* p);
const TopoDS_Wire &Wire()const;