Logo
  • Main Page
  • Related Pages
  • Modules
  • Classes
  • Files

mmsborderclass.cpp

Go to the documentation of this file.
00001 /***************************************************************************
00002  *   Copyright (C) 2005-2007 Stefan Schwarzer, Jens Schneider,             *
00003  *                           Matthias Hardt, Guido Madaus                  *
00004  *                                                                         *
00005  *   Copyright (C) 2007-2008 BerLinux Solutions GbR                        *
00006  *                           Stefan Schwarzer & Guido Madaus               *
00007  *                                                                         *
00008  *   Copyright (C) 2009-2013 BerLinux Solutions GmbH                       *
00009  *                                                                         *
00010  *   Authors:                                                              *
00011  *      Stefan Schwarzer   <stefan.schwarzer@diskohq.org>,                 *
00012  *      Matthias Hardt     <matthias.hardt@diskohq.org>,                   *
00013  *      Jens Schneider     <jens.schneider@diskohq.org>,                   *
00014  *      Guido Madaus       <guido.madaus@diskohq.org>,                     *
00015  *      Patrick Helterhoff <patrick.helterhoff@diskohq.org>,               *
00016  *      René Bählkow       <rene.baehlkow@diskohq.org>                     *
00017  *                                                                         *
00018  *   This library is free software; you can redistribute it and/or         *
00019  *   modify it under the terms of the GNU Lesser General Public            *
00020  *   License version 2.1 as published by the Free Software Foundation.     *
00021  *                                                                         *
00022  *   This library is distributed in the hope that it will be useful,       *
00023  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00024  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
00025  *   Lesser General Public License for more details.                       *
00026  *                                                                         *
00027  *   You should have received a copy of the GNU Lesser General Public      *
00028  *   License along with this library; if not, write to the                 *
00029  *   Free Software Foundation, Inc.,                                       *
00030  *   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA            *
00031  **************************************************************************/
00032 
00033 #include "mmsgui/theme/mmsborderclass.h"
00034 #include <string.h>
00035 
00036 //store attribute descriptions here
00037 TAFF_ATTRDESC MMSGUI_BORDER_ATTR_I[] = MMSGUI_BORDER_ATTR_INIT;
00038 
00039 // address attribute names
00040 #define GETATTRNAME(aname) MMSGUI_BORDER_ATTR_I[MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_##aname].name
00041 
00042 // address attribute types
00043 #define GETATTRTYPE(aname) MMSGUI_BORDER_ATTR_I[MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_##aname].type
00044 
00045 
00046 MMSBorderClass::MMSBorderClass() {
00047     initColor();
00048     initSelColor();
00049 
00050     initImagePath();
00051     initImageNames();
00052     initSelImagePath();
00053     initSelImageNames();
00054 
00055     initThickness();
00056     initMargin();
00057     initRCorners();
00058 }
00059 
00060 MMSBorderClass::~MMSBorderClass() {
00061     freeColor();
00062     freeSelColor();
00063 
00064     freeImagePath();
00065     freeImageNames();
00066     freeSelImagePath();
00067     freeSelImageNames();
00068 
00069     freeThickness();
00070     freeMargin();
00071     freeRCorners();
00072 }
00073 
00074 MMSBorderClass &MMSBorderClass::operator=(const MMSBorderClass &c) {
00075     if (this != &c) {
00076         /* copy internal fix data area */
00077         this->id = c.id;
00078 
00079         /* copy external data */
00080         memset(&(this->ed), 0, sizeof(this->ed));
00081         if (c.id.isimagepath)
00082             this->ed.imagepath = new string(*c.ed.imagepath);
00083         if (c.id.isselimagepath)
00084             this->ed.selimagepath = new string(*c.ed.selimagepath);
00085         if (c.id.isimagenames)
00086             for (int i = 0; i < 8; i++)
00087                 this->ed.imagenames[i] = new string(*c.ed.imagenames[i]);
00088         if (c.id.isselimagenames)
00089             for (int i = 0; i < 8; i++)
00090                 this->ed.selimagenames[i] = new string(*c.ed.selimagenames[i]);
00091     }
00092     return *this;
00093 }
00094 
00095 void MMSBorderClass::unsetAll() {
00096     unsetColor();
00097     unsetSelColor();
00098 
00099     unsetImagePath();
00100     unsetImageNames();
00101     unsetSelImagePath();
00102     unsetSelImageNames();
00103 
00104     unsetThickness();
00105     unsetMargin();
00106     unsetRCorners();
00107 }
00108 
00109 void MMSBorderClass::setAttributesFromTAFF(MMSTaffFile *tafff, string *prefix, string *path, bool reset_paths) {
00110     MMSFBColor color;
00111 
00112     if ((reset_paths)&&(path)&&(*path!="")) {
00113         // unset my paths
00114         unsetImagePath();
00115         unsetSelImagePath();
00116     }
00117 
00118     if (!prefix) {
00119         startTAFFScan
00120         {
00121             switch (attrid) {
00122             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_color:
00123                 setColor(MMSFBColor((unsigned int)attrval_int));
00124                 break;
00125             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_color_a:
00126                 color.a = color.r = color.g = color.b = 0;
00127                 if (isColor()) getColor(color);
00128                 color.a = attrval_int;
00129                 setColor(color);
00130                 break;
00131             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_color_r:
00132                 color.a = color.r = color.g = color.b = 0;
00133                 if (isColor()) getColor(color);
00134                 color.r = attrval_int;
00135                 setColor(color);
00136                 break;
00137             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_color_g:
00138                 color.a = color.r = color.g = color.b = 0;
00139                 if (isColor()) getColor(color);
00140                 color.g = attrval_int;
00141                 setColor(color);
00142                 break;
00143             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_color_b:
00144                 color.a = color.r = color.g = color.b = 0;
00145                 if (isColor()) getColor(color);
00146                 color.b = attrval_int;
00147                 setColor(color);
00148                 break;
00149             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selcolor:
00150                 setSelColor(MMSFBColor((unsigned int)attrval_int));
00151                 break;
00152             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selcolor_a:
00153                 color.a = color.r = color.g = color.b = 0;
00154                 if (isSelColor()) getSelColor(color);
00155                 color.a = attrval_int;
00156                 setSelColor(color);
00157                 break;
00158             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selcolor_r:
00159                 color.a = color.r = color.g = color.b = 0;
00160                 if (isSelColor()) getSelColor(color);
00161                 color.r = attrval_int;
00162                 setSelColor(color);
00163                 break;
00164             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selcolor_g:
00165                 color.a = color.r = color.g = color.b = 0;
00166                 if (isSelColor()) getSelColor(color);
00167                 color.g = attrval_int;
00168                 setSelColor(color);
00169                 break;
00170             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selcolor_b:
00171                 color.a = color.r = color.g = color.b = 0;
00172                 if (isSelColor()) getSelColor(color);
00173                 color.b = attrval_int;
00174                 setSelColor(color);
00175                 break;
00176             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_image_path:
00177                 if (*attrval_str)
00178                     setImagePath(attrval_str);
00179                 else
00180                     setImagePath((path)?*path:"");
00181                 break;
00182             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_image_top_left:
00183                 setImageNames(MMSBORDER_IMAGE_NUM_TOP_LEFT, attrval_str);
00184                 break;
00185             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_image_top:
00186                 setImageNames(MMSBORDER_IMAGE_NUM_TOP, attrval_str);
00187                 break;
00188             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_image_top_right:
00189                 setImageNames(MMSBORDER_IMAGE_NUM_TOP_RIGHT, attrval_str);
00190                 break;
00191             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_image_right:
00192                 setImageNames(MMSBORDER_IMAGE_NUM_RIGHT, attrval_str);
00193                 break;
00194             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_image_bottom_right:
00195                 setImageNames(MMSBORDER_IMAGE_NUM_BOTTOM_RIGHT, attrval_str);
00196                 break;
00197             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_image_bottom:
00198                 setImageNames(MMSBORDER_IMAGE_NUM_BOTTOM, attrval_str);
00199                 break;
00200             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_image_bottom_left:
00201                 setImageNames(MMSBORDER_IMAGE_NUM_BOTTOM_LEFT, attrval_str);
00202                 break;
00203             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_image_left:
00204                 setImageNames(MMSBORDER_IMAGE_NUM_LEFT, attrval_str);
00205                 break;
00206             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selimage_path:
00207                 if (*attrval_str)
00208                     setSelImagePath(attrval_str);
00209                 else
00210                     setSelImagePath((path)?*path:"");
00211                 break;
00212             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selimage_top_left:
00213                 setSelImageNames(MMSBORDER_IMAGE_NUM_TOP_LEFT, attrval_str);
00214                 break;
00215             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selimage_top:
00216                 setSelImageNames(MMSBORDER_IMAGE_NUM_TOP, attrval_str);
00217                 break;
00218             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selimage_top_right:
00219                 setSelImageNames(MMSBORDER_IMAGE_NUM_TOP_RIGHT, attrval_str);
00220                 break;
00221             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selimage_right:
00222                 setSelImageNames(MMSBORDER_IMAGE_NUM_RIGHT, attrval_str);
00223                 break;
00224             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selimage_bottom_right:
00225                 setSelImageNames(MMSBORDER_IMAGE_NUM_BOTTOM_RIGHT, attrval_str);
00226                 break;
00227             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selimage_bottom:
00228                 setSelImageNames(MMSBORDER_IMAGE_NUM_BOTTOM, attrval_str);
00229                 break;
00230             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selimage_bottom_left:
00231                 setSelImageNames(MMSBORDER_IMAGE_NUM_BOTTOM_LEFT, attrval_str);
00232                 break;
00233             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_selimage_left:
00234                 setSelImageNames(MMSBORDER_IMAGE_NUM_LEFT, attrval_str);
00235                 break;
00236             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_thickness:
00237                 setThickness(attrval_int);
00238                 break;
00239             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_margin:
00240                 setMargin(attrval_int);
00241                 break;
00242             case MMSGUI_BORDER_ATTR::MMSGUI_BORDER_ATTR_IDS_border_rcorners:
00243                 setRCorners((attrval_int) ? true : false);
00244                 break;
00245             }
00246         }
00247         endTAFFScan
00248     }
00249     else {
00250         unsigned int pl = strlen(prefix->c_str());
00251 
00252         startTAFFScan_WITHOUT_ID
00253         {
00254             // check if attrname has correct prefix
00255             if (pl >= strlen(attrname))
00256                 continue;
00257             if (memcmp(attrname, prefix->c_str(), pl)!=0)
00258                 continue;
00259             attrname = &attrname[pl];
00260 
00261             // special storage for macros
00262             bool attrval_str_valid;
00263             bool int_val_set;
00264             bool byte_val_set;
00265             int  *p_int_val = &attrval_int;
00266 
00267             // okay, correct prefix, check attributes now
00268             if (ISATTRNAME(border_color)) {
00269                 setColor(MMSFBColor((unsigned int)attrval_int));
00270             }
00271             else
00272             if (ISATTRNAME(border_color_a)) {
00273                 color.a = color.r = color.g = color.b = 0;
00274                 if (isColor()) getColor(color);
00275                 color.a = attrval_int;
00276                 setColor(color);
00277             }
00278             else
00279             if (ISATTRNAME(border_color_r)) {
00280                 color.a = color.r = color.g = color.b = 0;
00281                 if (isColor()) getColor(color);
00282                 color.r = attrval_int;
00283                 setColor(color);
00284             }
00285             else
00286             if (ISATTRNAME(border_color_g)) {
00287                 color.a = color.r = color.g = color.b = 0;
00288                 if (isColor()) getColor(color);
00289                 color.g = attrval_int;
00290                 setColor(color);
00291             }
00292             else
00293             if (ISATTRNAME(border_color_b)) {
00294                 color.a = color.r = color.g = color.b = 0;
00295                 if (isColor()) getColor(color);
00296                 color.b = attrval_int;
00297                 setColor(color);
00298             }
00299             else
00300             if (ISATTRNAME(border_selcolor)) {
00301                 setSelColor(MMSFBColor((unsigned int)attrval_int));
00302             }
00303             else
00304             if (ISATTRNAME(border_selcolor_a)) {
00305                 color.a = color.r = color.g = color.b = 0;
00306                 if (isSelColor()) getSelColor(color);
00307                 color.a = attrval_int;
00308                 setSelColor(color);
00309             }
00310             else
00311             if (ISATTRNAME(border_selcolor_r)) {
00312                 color.a = color.r = color.g = color.b = 0;
00313                 if (isSelColor()) getSelColor(color);
00314                 color.r = attrval_int;
00315                 setSelColor(color);
00316             }
00317             else
00318             if (ISATTRNAME(border_selcolor_g)) {
00319                 color.a = color.r = color.g = color.b = 0;
00320                 if (isSelColor()) getSelColor(color);
00321                 color.g = attrval_int;
00322                 setSelColor(color);
00323             }
00324             else
00325             if (ISATTRNAME(border_selcolor_b)) {
00326                 color.a = color.r = color.g = color.b = 0;
00327                 if (isSelColor()) getSelColor(color);
00328                 color.b = attrval_int;
00329                 setSelColor(color);
00330             }
00331             else
00332             if (ISATTRNAME(border_image_path)) {
00333                 if (*attrval_str)
00334                     setImagePath(attrval_str);
00335                 else
00336                     setImagePath((path)?*path:"");
00337             }
00338             else
00339             if (ISATTRNAME(border_image_top_left)) {
00340                 setImageNames(MMSBORDER_IMAGE_NUM_TOP_LEFT, attrval_str);
00341             }
00342             else
00343             if (ISATTRNAME(border_image_top)) {
00344                 setImageNames(MMSBORDER_IMAGE_NUM_TOP, attrval_str);
00345             }
00346             else
00347             if (ISATTRNAME(border_image_top_right)) {
00348                 setImageNames(MMSBORDER_IMAGE_NUM_TOP_RIGHT, attrval_str);
00349             }
00350             else
00351             if (ISATTRNAME(border_image_right)) {
00352                 setImageNames(MMSBORDER_IMAGE_NUM_RIGHT, attrval_str);
00353             }
00354             else
00355             if (ISATTRNAME(border_image_bottom_right)) {
00356                 setImageNames(MMSBORDER_IMAGE_NUM_BOTTOM_RIGHT, attrval_str);
00357             }
00358             else
00359             if (ISATTRNAME(border_image_bottom)) {
00360                 setImageNames(MMSBORDER_IMAGE_NUM_BOTTOM, attrval_str);
00361             }
00362             else
00363             if (ISATTRNAME(border_image_bottom_left)) {
00364                 setImageNames(MMSBORDER_IMAGE_NUM_BOTTOM_LEFT, attrval_str);
00365             }
00366             else
00367             if (ISATTRNAME(border_image_left)) {
00368                 setImageNames(MMSBORDER_IMAGE_NUM_LEFT, attrval_str);
00369             }
00370             else
00371             if (ISATTRNAME(border_selimage_path)) {
00372                 if (*attrval_str)
00373                     setSelImagePath(attrval_str);
00374                 else
00375                     setSelImagePath((path)?*path:"");
00376             }
00377             else
00378             if (ISATTRNAME(border_selimage_top_left)) {
00379                 setSelImageNames(MMSBORDER_IMAGE_NUM_TOP_LEFT, attrval_str);
00380             }
00381             else
00382             if (ISATTRNAME(border_selimage_top)) {
00383                 setSelImageNames(MMSBORDER_IMAGE_NUM_TOP, attrval_str);
00384             }
00385             else
00386             if (ISATTRNAME(border_selimage_top_right)) {
00387                 setSelImageNames(MMSBORDER_IMAGE_NUM_TOP_RIGHT, attrval_str);
00388             }
00389             else
00390             if (ISATTRNAME(border_selimage_right)) {
00391                 setSelImageNames(MMSBORDER_IMAGE_NUM_RIGHT, attrval_str);
00392             }
00393             else
00394             if (ISATTRNAME(border_selimage_bottom_right)) {
00395                 setSelImageNames(MMSBORDER_IMAGE_NUM_BOTTOM_RIGHT, attrval_str);
00396             }
00397             else
00398             if (ISATTRNAME(border_selimage_bottom)) {
00399                 setSelImageNames(MMSBORDER_IMAGE_NUM_BOTTOM, attrval_str);
00400             }
00401             else
00402             if (ISATTRNAME(border_selimage_bottom_left)) {
00403                 setSelImageNames(MMSBORDER_IMAGE_NUM_BOTTOM_LEFT, attrval_str);
00404             }
00405             else
00406             if (ISATTRNAME(border_selimage_left)) {
00407                 setSelImageNames(MMSBORDER_IMAGE_NUM_LEFT, attrval_str);
00408             }
00409             else
00410             if (ISATTRNAME(border_thickness)) {
00411                 setThickness(attrval_int);
00412             }
00413             else
00414             if (ISATTRNAME(border_margin)) {
00415                 setMargin(attrval_int);
00416             }
00417             else
00418             if (ISATTRNAME(border_rcorners)) {
00419                 setRCorners((attrval_int) ? true : false);
00420             }
00421         }
00422         endTAFFScan_WITHOUT_ID
00423     }
00424 
00425     if ((reset_paths)&&(path)&&(*path!="")) {
00426         // set my paths
00427         if (!isImagePath())
00428             setImagePath(*path);
00429         if (!isSelImagePath())
00430             setSelImagePath(*path);
00431     }
00432 }
00433 
00434 
00435 void MMSBorderClass::initColor() {
00436     MMSTHEMECLASS_INIT_BASIC(color);
00437 }
00438 
00439 void MMSBorderClass::freeColor() {
00440     MMSTHEMECLASS_FREE_BASIC(color);
00441 }
00442 
00443 bool MMSBorderClass::isColor() {
00444     MMSTHEMECLASS_ISSET(color);
00445 }
00446 
00447 void MMSBorderClass::unsetColor() {
00448     MMSTHEMECLASS_UNSET(color);
00449 }
00450 
00451 void MMSBorderClass::setColor(const MMSFBColor &color) {
00452     MMSTHEMECLASS_SET_BASIC(color);
00453 }
00454 
00455 bool MMSBorderClass::getColor(MMSFBColor &color) {
00456     MMSTHEMECLASS_GET_BASIC(color);
00457 }
00458 
00459 
00460 void MMSBorderClass::initSelColor() {
00461     MMSTHEMECLASS_INIT_BASIC(selcolor);
00462 }
00463 
00464 void MMSBorderClass::freeSelColor() {
00465     MMSTHEMECLASS_FREE_BASIC(selcolor);
00466 }
00467 
00468 bool MMSBorderClass::isSelColor() {
00469     MMSTHEMECLASS_ISSET(selcolor);
00470 }
00471 
00472 void MMSBorderClass::unsetSelColor() {
00473     MMSTHEMECLASS_UNSET(selcolor);
00474 }
00475 
00476 void MMSBorderClass::setSelColor(const MMSFBColor &selcolor) {
00477     MMSTHEMECLASS_SET_BASIC(selcolor);
00478 }
00479 
00480 bool MMSBorderClass::getSelColor(MMSFBColor &selcolor) {
00481     MMSTHEMECLASS_GET_BASIC(selcolor);
00482 }
00483 
00484 
00485 
00486 void MMSBorderClass::initImagePath() {
00487     MMSTHEMECLASS_INIT_STRING(imagepath);
00488 }
00489 
00490 void MMSBorderClass::freeImagePath() {
00491     MMSTHEMECLASS_FREE_STRING(imagepath);
00492 }
00493 
00494 bool MMSBorderClass::isImagePath() {
00495     MMSTHEMECLASS_ISSET(imagepath);
00496 }
00497 
00498 void MMSBorderClass::unsetImagePath() {
00499     MMSTHEMECLASS_UNSET(imagepath);
00500 }
00501 
00502 void MMSBorderClass::setImagePath(const string &imagepath) {
00503     MMSTHEMECLASS_SET_STRING(imagepath);
00504 }
00505 
00506 bool MMSBorderClass::getImagePath(string &imagepath) {
00507     MMSTHEMECLASS_GET_STRING(imagepath);
00508 }
00509 
00510 
00511 
00512 
00513 void MMSBorderClass::initImageNames() {
00514     MMSTHEMECLASS_INIT_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_SIZE);
00515 }
00516 
00517 void MMSBorderClass::freeImageNames() {
00518     MMSTHEMECLASS_FREE_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_SIZE);
00519 }
00520 
00521 bool MMSBorderClass::isImageNames() {
00522     MMSTHEMECLASS_ISSET(imagenames);
00523 }
00524 
00525 void MMSBorderClass::unsetImageNames() {
00526     MMSTHEMECLASS_UNSET_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_SIZE);
00527 }
00528 
00529 void MMSBorderClass::setImageNames(const string &imagename_1, const string &imagename_2, const string &imagename_3, const string &imagename_4,
00530                                    const string &imagename_5, const string &imagename_6, const string &imagename_7, const string &imagename_8) {
00531     MMSTHEMECLASS_SET_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_TOP_LEFT,imagename_1);
00532     MMSTHEMECLASS_SET_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_TOP,imagename_2);
00533     MMSTHEMECLASS_SET_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_TOP_RIGHT,imagename_3);
00534     MMSTHEMECLASS_SET_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_RIGHT,imagename_4);
00535     MMSTHEMECLASS_SET_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_BOTTOM_RIGHT,imagename_5);
00536     MMSTHEMECLASS_SET_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_BOTTOM,imagename_6);
00537     MMSTHEMECLASS_SET_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_BOTTOM_LEFT,imagename_7);
00538     MMSTHEMECLASS_SET_STRINGS(imagenames,MMSBORDER_IMAGE_NUM_LEFT,imagename_8);
00539 }
00540 
00541 void MMSBorderClass::setImageNames(MMSBORDER_IMAGE_NUM num, const string &imagename) {
00542     MMSTHEMECLASS_SET_STRINGS(imagenames,num,imagename);
00543 }
00544 
00545 bool MMSBorderClass::getImageNames(MMSBORDER_IMAGE_NUM num, string &imagename) {
00546     MMSTHEMECLASS_GET_STRINGS(imagenames,num,imagename);
00547 }
00548 
00549 
00550 void MMSBorderClass::initSelImagePath() {
00551     MMSTHEMECLASS_INIT_STRING(selimagepath);
00552 }
00553 
00554 void MMSBorderClass::freeSelImagePath() {
00555     MMSTHEMECLASS_FREE_STRING(selimagepath);
00556 }
00557 
00558 bool MMSBorderClass::isSelImagePath() {
00559     MMSTHEMECLASS_ISSET(selimagepath);
00560 }
00561 
00562 void MMSBorderClass::unsetSelImagePath() {
00563     MMSTHEMECLASS_UNSET(selimagepath);
00564 }
00565 
00566 void MMSBorderClass::setSelImagePath(const string &selimagepath) {
00567     MMSTHEMECLASS_SET_STRING(selimagepath);
00568 }
00569 
00570 bool MMSBorderClass::getSelImagePath(string &selimagepath) {
00571     MMSTHEMECLASS_GET_STRING(selimagepath);
00572 }
00573 
00574 
00575 
00576 void MMSBorderClass::initSelImageNames() {
00577     MMSTHEMECLASS_INIT_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_SIZE);
00578 }
00579 
00580 void MMSBorderClass::freeSelImageNames() {
00581     MMSTHEMECLASS_FREE_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_SIZE);
00582 }
00583 
00584 bool MMSBorderClass::isSelImageNames() {
00585     MMSTHEMECLASS_ISSET(selimagenames);
00586 }
00587 
00588 void MMSBorderClass::unsetSelImageNames() {
00589     MMSTHEMECLASS_UNSET_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_SIZE);
00590 }
00591 
00592 void MMSBorderClass::setSelImageNames(const string &selimagename_1, const string &selimagename_2, const string &selimagename_3, const string &selimagename_4,
00593                                       const string &selimagename_5, const string &selimagename_6, const string &selimagename_7, const string &selimagename_8) {
00594     MMSTHEMECLASS_SET_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_TOP_LEFT,selimagename_1);
00595     MMSTHEMECLASS_SET_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_TOP,selimagename_2);
00596     MMSTHEMECLASS_SET_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_TOP_RIGHT,selimagename_3);
00597     MMSTHEMECLASS_SET_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_RIGHT,selimagename_4);
00598     MMSTHEMECLASS_SET_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_BOTTOM_RIGHT,selimagename_5);
00599     MMSTHEMECLASS_SET_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_BOTTOM,selimagename_6);
00600     MMSTHEMECLASS_SET_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_BOTTOM_LEFT,selimagename_7);
00601     MMSTHEMECLASS_SET_STRINGS(selimagenames,MMSBORDER_IMAGE_NUM_LEFT,selimagename_8);
00602 }
00603 
00604 void MMSBorderClass::setSelImageNames(MMSBORDER_IMAGE_NUM num, const string &selimagename) {
00605     MMSTHEMECLASS_SET_STRINGS(selimagenames,num,selimagename);
00606 }
00607 
00608 bool MMSBorderClass::getSelImageNames(MMSBORDER_IMAGE_NUM num, string &selimagename) {
00609     MMSTHEMECLASS_GET_STRINGS(selimagenames,num,selimagename);
00610 }
00611 
00612 
00613 void MMSBorderClass::initThickness() {
00614     MMSTHEMECLASS_INIT_BASIC(thickness);
00615 }
00616 
00617 void MMSBorderClass::freeThickness() {
00618     MMSTHEMECLASS_FREE_BASIC(thickness);
00619 }
00620 
00621 bool MMSBorderClass::isThickness() {
00622     MMSTHEMECLASS_ISSET(thickness);
00623 }
00624 
00625 void MMSBorderClass::unsetThickness() {
00626     MMSTHEMECLASS_UNSET(thickness);
00627 }
00628 
00629 void MMSBorderClass::setThickness(unsigned int thickness) {
00630     MMSTHEMECLASS_SET_BASIC(thickness);
00631 }
00632 
00633 bool MMSBorderClass::getThickness(unsigned int &thickness) {
00634     MMSTHEMECLASS_GET_BASIC(thickness);
00635 }
00636 
00637 void MMSBorderClass::initMargin() {
00638     MMSTHEMECLASS_INIT_BASIC(margin);
00639 }
00640 
00641 void MMSBorderClass::freeMargin() {
00642     MMSTHEMECLASS_FREE_BASIC(margin);
00643 }
00644 
00645 bool MMSBorderClass::isMargin() {
00646     MMSTHEMECLASS_ISSET(margin);
00647 }
00648 
00649 void MMSBorderClass::unsetMargin() {
00650     MMSTHEMECLASS_UNSET(margin);
00651 }
00652 
00653 void MMSBorderClass::setMargin(unsigned int margin) {
00654     MMSTHEMECLASS_SET_BASIC(margin);
00655 }
00656 
00657 bool MMSBorderClass::getMargin(unsigned int &margin) {
00658     MMSTHEMECLASS_GET_BASIC(margin);
00659 }
00660 
00661 void MMSBorderClass::initRCorners() {
00662     MMSTHEMECLASS_INIT_BASIC(rcorners);
00663 }
00664 
00665 void MMSBorderClass::freeRCorners() {
00666     MMSTHEMECLASS_FREE_BASIC(rcorners);
00667 }
00668 
00669 bool MMSBorderClass::isRCorners() {
00670     MMSTHEMECLASS_ISSET(rcorners);
00671 }
00672 
00673 void MMSBorderClass::unsetRCorners() {
00674     MMSTHEMECLASS_UNSET(rcorners);
00675 }
00676 
00677 void MMSBorderClass::setRCorners(bool rcorners) {
00678     MMSTHEMECLASS_SET_BASIC(rcorners);
00679 }
00680 
00681 bool MMSBorderClass::getRCorners(bool &rcorners) {
00682     MMSTHEMECLASS_GET_BASIC(rcorners);
00683 }
00684 

Generated by doxygen