Changeset 502 for branches


Ignore:
Timestamp:
04/03/14 17:27:33 (5 years ago)
Author:
jls17
Message:
Location:
branches/work_311
Files:
5 edited
2 copied

Legend:

Unmodified
Added
Removed
  • branches/work_311/ARInsideLib.vcproj

    r501 r502  
    11281128                        <File 
    11291129                                RelativePath=".\Output\RoleTable.h" 
     1130                                > 
     1131                        </File> 
     1132                        <File 
     1133                                RelativePath=".\output\RootLevel.cpp" 
     1134                                > 
     1135                        </File> 
     1136                        <File 
     1137                                RelativePath=".\output\RootLevel.h" 
    11301138                                > 
    11311139                        </File> 
  • branches/work_311/output/ImageTag.cpp

    r501 r502  
    1818#include "ImageTag.h" 
    1919#include "../core/ARServerObject.h" 
     20#include "../util/RootLevel.h" 
    2021 
    2122namespace OUTPUT 
    2223{ 
    23         const char* GetImageName(int imageId) 
    24         { 
    25                 switch (imageId) 
    26                 { 
    27                 case ImageTag::Schema: return "schema.gif"; 
    28                 } 
    29                 return ""; 
    30         } 
    31  
    3224        struct ImageDimensions 
    3325        { 
     
    3628        }; 
    3729 
     30        // the following function maps the imageId to a file name 
     31        // make sure new images are added here 
     32        const char* GetImageName(int imageId) 
     33        { 
     34                switch (imageId) 
     35                { 
     36                case ImageTag::NoImage: return ""; 
     37                case ImageTag::Schema: return "schema.gif"; 
     38                } 
     39                // always throw an assert here, in case a undefined image is used! 
     40                assert(false); 
     41                return ""; 
     42        } 
     43 
    3844        ImageDimensions DefaultImageDimmensions = { 16, 16 }; 
    3945 
     46        // the following provides the image dimensions (width and height) 
     47        // for a particular imageId. If new images don't use the default 
     48        // width and height of 16x16, make sure the correct dimension is 
     49        // returned here. 
    4050        ImageDimensions GetImageDimensions(ImageTag::ImageEnum image) 
    4151        { 
     
    4656        } 
    4757 
    48         ImageTag::ImageTag(OUTPUT::ImageTag::ImageEnum image) 
     58        // ################################################################ 
     59        // ## ImageTag class definition 
     60        ImageTag::ImageTag(OUTPUT::ImageTag::ImageEnum image, int currentRootLevel) 
    4961        { 
     62                rootLevel = currentRootLevel; 
    5063                imageId = image; 
    5164        } 
     
    5972 
    6073                        strm << "<img "; 
    61                         strm << "src=\"" << "img/" << imageName << "\" "; 
     74                        strm << "src=\"" << RootLevel(rootLevel) << "img/" << imageName << "\" "; 
    6275                        strm << "width=\"" << imageDim.x << "\" height=\"" << imageDim.y << "\" alt=\"" << imageName << "\" />"; 
    6376                } 
     
    6881ostream& operator <<(ostream &strm, OUTPUT::ImageTag::ImageEnum image) 
    6982{ 
    70         ImageTag img(image); 
     83        ImageTag img(image, 0); 
    7184        return img.ToStream(strm); 
    7285} 
     86 
     87ostream& operator <<(ostream &strm, OUTPUT::ImageTag &image) 
     88{ 
     89        return image.ToStream(strm); 
     90} 
  • branches/work_311/output/ImageTag.h

    r501 r502  
    3737                // constructors 
    3838                ImageTag(const CARServerObject &obj, int rootLevel); 
    39                 ImageTag(ImageEnum image); 
     39                ImageTag(ImageEnum image, int rootLevel); 
    4040 
    4141                std::ostream& ToStream(std::ostream &strm); 
     
    4848 
    4949std::ostream& operator<<(std::ostream& strm, OUTPUT::ImageTag::ImageEnum image); 
     50std::ostream& operator<<(std::ostream& strm, OUTPUT::ImageTag &image); 
  • branches/work_311/output/ImageTagTest.cpp

    r501 r502  
    1010        ASSERT_STREQ("<img src=\"img/schema.gif\" width=\"16\" height=\"16\" alt=\"schema.gif\" />", result.c_str()); 
    1111} 
     12 
     13TEST(ImageTag, ObjInstToStream) 
     14{ 
     15        stringstream strm; 
     16 
     17        strm << OUTPUT::ImageTag(OUTPUT::ImageTag::SchemaRegular, 1); 
     18        string result = strm.str(); 
     19        ASSERT_STREQ("<img src=\"../img/schema.gif\" width=\"16\" height=\"16\" alt=\"schema.gif\" />", result.c_str()); 
     20} 
  • branches/work_311/output/RootLevel.cpp

    r501 r502  
    1515//    along with ARInside.  If not, see <http://www.gnu.org/licenses/>. 
    1616 
    17 #pragma once 
     17#include "stdafx.h" 
     18#include "RootLevel.h" 
    1819 
    19 class CARServerObject; 
     20namespace OUTPUT  
     21{ 
    2022 
    21 namespace OUTPUT 
     23        RootLevel::RootLevel(int currentRootLevel) 
     24        { 
     25                rootLevel = currentRootLevel; 
     26        } 
     27 
     28        const char* RootLevel::GetRootPath() const 
     29        { 
     30                switch(rootLevel) 
     31                { 
     32                case 1: return "../"; 
     33                case 2: return "../../"; 
     34                case 3: return "../../../"; 
     35                default: return ""; 
     36                }        
     37        } 
     38 
     39}; // end namespace OUTPUT; 
     40 
     41ostream& operator <<(ostream &stream, OUTPUT::RootLevel &rootLevelObj) 
    2242{ 
    23         class ImageTag  
    24         { 
    25         public: 
    26                 enum ImageEnum 
    27                 { 
    28                         NoImage = 0, 
    29                         Schema = 1, 
    30                         SchemaRegular = 1, 
    31                         SchemaJoin, 
    32                         SchemaView, 
    33                         SchemaDialog, 
    34                         SchemaVendor, 
    35                 }; 
    36  
    37                 // constructors 
    38                 ImageTag(const CARServerObject &obj, int rootLevel); 
    39                 ImageTag(ImageEnum image); 
    40  
    41                 std::ostream& ToStream(std::ostream &strm); 
    42         private: 
    43                 int rootLevel; 
    44                 ImageEnum imageId; 
    45                 ImageEnum imageOverlayId; 
    46         }; 
    47 }; 
    48  
    49 std::ostream& operator<<(std::ostream& strm, OUTPUT::ImageTag::ImageEnum image); 
     43        stream << rootLevelObj.GetRootPath(); 
     44        return stream; 
     45} 
  • branches/work_311/output/RootLevel.h

    r501 r502  
    1717#pragma once 
    1818 
    19 class CARServerObject; 
     19namespace OUTPUT { 
    2020 
    21 namespace OUTPUT 
    22 { 
    23         class ImageTag  
     21        class RootLevel 
    2422        { 
    2523        public: 
    26                 enum ImageEnum 
    27                 { 
    28                         NoImage = 0, 
    29                         Schema = 1, 
    30                         SchemaRegular = 1, 
    31                         SchemaJoin, 
    32                         SchemaView, 
    33                         SchemaDialog, 
    34                         SchemaVendor, 
    35                 }; 
     24                RootLevel(int rootLevel); 
     25                const char * GetRootPath() const; 
    3626 
    37                 // constructors 
    38                 ImageTag(const CARServerObject &obj, int rootLevel); 
    39                 ImageTag(ImageEnum image); 
    40  
    41                 std::ostream& ToStream(std::ostream &strm); 
    4227        private: 
    4328                int rootLevel; 
    44                 ImageEnum imageId; 
    45                 ImageEnum imageOverlayId; 
    4629        }; 
    47 }; 
    4830 
    49 std::ostream& operator<<(std::ostream& strm, OUTPUT::ImageTag::ImageEnum image); 
     31}; // end namespace OUTPUT 
     32 
     33std::ostream& operator <<(std::ostream &stream, OUTPUT::RootLevel &rootLevelObj); 
  • branches/work_311/project.cmake/files.cmake

    r501 r502  
    187187 output/ObjectTable.cpp 
    188188 output/RoleTable.cpp 
     189 output/RootLevel.cpp 
    189190 output/SchemaTable.cpp 
    190191 output/TabControl.cpp 
     
    217218 output/ObjectTable.h 
    218219 output/RoleTable.h 
     220 output/RootLevel.h 
    219221 output/SchemaTable.h 
    220222 output/TabControl.h 
Note: See TracChangeset for help on using the changeset viewer.