JIMS: plug extraction
[scilab.git] / scilab / modules / external_objects_java / src / cpp / JavaOptionsSetter.cpp
1 /*
2  * PIMS ( http://forge.scilab.org/index.php/p/pims ) - This file is part of PIMS
3  * Copyright (C) 2012 - Scilab Enterprises - Calixte DENIZET
4  *
5  * This file must be used under the terms of the CeCILL.
6  * This source file is licensed as described in the file COPYING, which
7  * you should have received as part of this distribution.  The terms
8  * are also available at
9  * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
10  *
11  */
12
13 #include "JavaOptionsHelper.hxx"
14 #include "JavaOptionsSetter.hxx"
15
16 using namespace org_modules_external_objects;
17
18 namespace org_scilab_modules_external_objects_java
19 {
20 const unsigned int JavaOptionsSetter::SHOWPRIVATE = LAST_OPTION_INDEX + 2;
21 const unsigned int JavaOptionsSetter::ATTACHMODULE = LAST_OPTION_INDEX + 3;
22
23 JavaOptionsSetter::JavaOptionsSetter(JavaOptionsHelper & _helper, unsigned int _type) : ScilabOptionsSetter(_helper, _type) { }
24
25 void JavaOptionsSetter::set(const bool state)
26 {
27     switch (type)
28     {
29         case SHOWPRIVATE:
30             reinterpret_cast<JavaOptionsHelper *>(&helper)->setShowPrivate(state);
31             break;
32         case ATTACHMODULE:
33             reinterpret_cast<JavaOptionsHelper *>(&helper)->setAttachModule(state);
34             break;
35         default:
36             ScilabOptionsSetter::set(state);
37     }
38 }
39
40 bool JavaOptionsSetter::get() const
41 {
42     switch (type)
43     {
44         case SHOWPRIVATE:
45             return reinterpret_cast<JavaOptionsHelper *>(&helper)->getShowPrivate();
46         case ATTACHMODULE:
47             return reinterpret_cast<JavaOptionsHelper *>(&helper)->getAttachModule();
48         default:
49             return ScilabOptionsSetter::get();
50     }
51 }
52 }