2
* This file is part of Maliit Plugins
4
* Copyright (C) 2012 Openismus GmbH. All rights reserved.
6
* Contact: maliit-discuss@lists.maliit.org
8
* Redistribution and use in source and binary forms, with or without modification,
9
* are permitted provided that the following conditions are met:
11
* Redistributions of source code must retain the above copyright notice, this list
12
* of conditions and the following disclaimer.
13
* Redistributions in binary form must reproduce the above copyright notice, this list
14
* of conditions and the following disclaimer in the documentation and/or other materials
15
* provided with the distribution.
16
* Neither the name of Nokia Corporation nor the names of its contributors may be
17
* used to endorse or promote products derived from this software without specific
18
* prior written permission.
20
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
21
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
22
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
23
* THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
24
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
27
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32
#include "maliitcontext.h"
33
#include "inputmethod.h"
35
namespace MaliitKeyboard {
36
//! \class MaliitContext
37
//! \brief Helper class to export properties and static data to QML
40
class MaliitContextPrivate
43
InputMethod * const input_method;
46
explicit MaliitContextPrivate(InputMethod * const new_input_method,
47
const SharedStyle &new_style);
51
MaliitContextPrivate::MaliitContextPrivate(InputMethod *const new_input_method,
52
const SharedStyle &new_style)
53
: input_method(new_input_method)
56
Q_ASSERT(input_method != 0);
57
Q_ASSERT(not style.isNull());
61
MaliitContext::MaliitContext(InputMethod *const input_method,
62
const SharedStyle &style,
65
, d_ptr(new MaliitContextPrivate(input_method, style))
69
MaliitContext::~MaliitContext()
73
//! \brief Converts image name to a fully qualified file name.
75
//! Takes the currently chosen styling profile into account.
76
//! \param base_name Base name of the image.
77
QString MaliitContext::image(const QString &base_name) const
79
if (not base_name.isEmpty()) {
80
Q_D(const MaliitContext);
81
return d->style->directory(Style::Images) + "/" + base_name;
88
//! \brief Triggers user-initiated hiding of virtual keyboard.
89
void MaliitContext::hide()
92
d->input_method->hide();
96
void MaliitContext::selectLeftLayout()
99
d->input_method->onLeftLayoutSelected();
103
void MaliitContext::selectRightLayout()
106
d->input_method->onRightLayoutSelected();
109
} // namespace MaliitKeyboard