libplasma
plasma.cpp
Go to the documentation of this file.00001 /* 00002 * Copyright 2005 by Aaron Seigo <aseigo@kde.org> 00003 * 00004 * This program is free software; you can redistribute it and/or modify 00005 * it under the terms of the GNU Library General Public License as 00006 * published by the Free Software Foundation; either version 2, or 00007 * (at your option) any later version. 00008 * 00009 * This program is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details 00013 * 00014 * You should have received a copy of the GNU Library General Public 00015 * License along with this program; if not, write to the 00016 * Free Software Foundation, Inc., 00017 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00018 */ 00019 00020 #include <plasma.h> 00021 00022 namespace Plasma 00023 { 00024 00025 qreal scalingFactor(ZoomLevel level) 00026 { 00027 switch (level) { 00028 case DesktopZoom: 00029 return 1; 00030 break; 00031 case GroupZoom: 00032 return 0.5; 00033 break; 00034 case OverviewZoom: 00035 return 0.2; 00036 break; 00037 } 00038 00039 // to make odd compilers not warn like silly beasts 00040 return 1; 00041 } 00042 00043 Direction locationToDirection(Location location) 00044 { 00045 switch (location) 00046 { 00047 case Floating: 00048 case Desktop: 00049 case TopEdge: 00050 case FullScreen: 00051 //TODO: should we be smarter for floating and planer? 00052 // perhaps we should take a QRect and/or QPos as well? 00053 return Down; 00054 case BottomEdge: 00055 return Up; 00056 case LeftEdge: 00057 return Right; 00058 case RightEdge: 00059 return Left; 00060 } 00061 00062 return Down; 00063 } 00064 00065 } // Plasma namespace