Back to index

unity  6.0.0
MockShortcutHint.h
Go to the documentation of this file.
00001 // -*- Mode: C++; indent-tabs-mode: nil; tab-width: 2 -*-
00002 /*
00003  * Copyright (C) 2011 Canonical Ltd
00004  *
00005  * This program is free software: you can redistribute it and/or modify
00006  * it under the terms of the GNU General Public License version 3 as
00007  * published by the Free Software Foundation.
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 General Public License
00015  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
00016  *
00017  * Authored by: Andrea Azzarone <azzaronea@gmail.com>
00018  */
00019 
00020 #ifndef UNITYSHELL_MOCK_SHORTCUT_HINT_H
00021 #define UNITYSHELL_MOCK_SHORTCUT_HINT_H
00022 
00023 #include "AbstractShortcutHint.h"
00024 
00025 namespace unity
00026 {
00027 namespace shortcut
00028 {
00029 
00030 class MockHint : public AbstractHint
00031 {
00032 public:
00033    // Ctor and dtor
00034   MockHint(std::string const& category,
00035            std::string const& prefix,
00036            std::string const& postfix,
00037            std::string const& description,
00038            OptionType const type,
00039            std::string const& arg1, 
00040            std::string const& arg2 = "",
00041            std::string const& arg3 = "")
00042     : AbstractHint(category, prefix, postfix, description, type, arg1, arg2, arg3)
00043   {
00044   }
00045   
00046   ~MockHint() {};
00047   
00048   // Methods...
00049   bool Fill()
00050   {
00051     switch (type())
00052     {
00053       case COMPIZ_MOUSE_OPTION:
00054       case COMPIZ_KEY_OPTION:
00055       case COMPIZ_METAKEY_OPTION:
00056         value = arg1() + "-" + arg2();
00057         shortkey = prefix() + value() + postfix();
00058         return true;
00059       
00060       case HARDCODED_OPTION:
00061         value = arg1();
00062         shortkey = prefix() + value() + postfix();
00063         return true;
00064     }
00065     
00066     return false;
00067   }
00068 };
00069   
00070 } // shortcut hint
00071 } // namespace unity
00072 
00073 #endif // UNITYSHELL_MOCK_SHORTCUT_HINT_H