test_settings.cpp
上传用户:yhdzpy8989
上传日期:2007-06-13
资源大小:13604k
文件大小:4k
源码类别:

生物技术

开发平台:

C/C++

  1. /*
  2.  * ===========================================================================
  3.  * PRODUCTION $Log: test_settings.cpp,v $
  4.  * PRODUCTION Revision 1000.1  2004/06/01 20:46:24  gouriano
  5.  * PRODUCTION PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.2
  6.  * PRODUCTION
  7.  * ===========================================================================
  8.  */
  9. #ifndef GUI_WIDGETS_SEQ_GRAPHIC___CONFIG__CPP
  10. #define GUI_WIDGETS_SEQ_GRAPHIC___CONFIG__CPP
  11. /*  $Id: test_settings.cpp,v 1000.1 2004/06/01 20:46:24 gouriano Exp $
  12.  * ===========================================================================
  13.  *
  14.  *                            PUBLIC DOMAIN NOTICE
  15.  *               National Center for Biotechnology Information
  16.  *
  17.  *  This software/database is a "United States Government Work" under the
  18.  *  terms of the United States Copyright Act.  It was written as part of
  19.  *  the author's official duties as a United States Government employee and
  20.  *  thus cannot be copyrighted.  This software/database is freely available
  21.  *  to the public for use. The National Library of Medicine and the U.S.
  22.  *  Government have not placed any restriction on its use or reproduction.
  23.  *
  24.  *  Although all reasonable efforts have been taken to ensure the accuracy
  25.  *  and reliability of the software and data, the NLM and the U.S.
  26.  *  Government do not and cannot warrant the performance or results that
  27.  *  may be obtained by using this software or data. The NLM and the U.S.
  28.  *  Government disclaim all warranties, express or implied, including
  29.  *  warranties of performance, merchantability or fitness for any particular
  30.  *  purpose.
  31.  *
  32.  *  Please cite the author in any work or product based on this material.
  33.  *
  34.  * ===========================================================================
  35.  *
  36.  * Authors:  Robert Smith
  37.  *
  38.  * File Description:
  39.  *   Preferences for the Graphic Sequence view widget 
  40.  *   Independent from FLTK.
  41.  *
  42.  */
  43. #include <ncbi_pch.hpp>
  44. #include "test_settings.hpp"
  45. BEGIN_NCBI_SCOPE
  46. static AutoPtr<IFactoryDefaultSettings> InitFactoryDefaults(void)
  47. {
  48.     CFactoryDefaultSettings::TFDInput fds;
  49.     
  50.     fds["SelectionColor"]  = "0 0 255";  // blue
  51.     fds["ShowFeatures"]   = "true";
  52.     fds["Name"]   = "blank";
  53.     
  54.     return AutoPtr<IFactoryDefaultSettings>(new CFactoryDefaultSettings(fds));
  55. }
  56. CTestSettings::CTestSettings(CRef<objects::CPluginConfigCache> config_cache)
  57.     : CSettingsSet(config_cache, 
  58.                     "test config", 
  59.                     InitFactoryDefaults())
  60. {
  61.     LoadCurrentSettings(eLoad_Current);
  62. }
  63. /*
  64.     Each of the key strings used below in LoadCurrentSettings
  65.     must be in InitFactoryDefaults() above.
  66.     If not the Get() will throw an assertion.
  67.     The conversion can throw CStringException.
  68. */
  69. bool CTestSettings::LoadCurrentSettings(ELoadValueSource src)
  70. {
  71.     m_ShowFeatures = NStr::StringToBool( Get("ShowFeatures", src) );
  72.     m_SelectionColor = CGlColor( Get("SelectionColor", src) );
  73.     m_Name = Get("Name", src);
  74.         
  75.     return true;
  76. }
  77. bool CTestSettings::SaveCurrentSettings(void)
  78. {
  79.     Set("ShowFeatures", NStr::BoolToString(m_ShowFeatures));
  80.     Set("SelectionColor", m_SelectionColor.ToString(false));
  81.     Set("Name", m_Name);
  82.     return true;
  83. }
  84. END_NCBI_SCOPE
  85. /*
  86.  * ===========================================================================
  87.  * $Log: test_settings.cpp,v $
  88.  * Revision 1000.1  2004/06/01 20:46:24  gouriano
  89.  * PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.2
  90.  *
  91.  * Revision 1.2  2004/05/21 22:27:41  gorelenk
  92.  * Added PCH ncbi_pch.hpp
  93.  *
  94.  * Revision 1.1  2004/02/12 14:57:48  rsmith
  95.  * initial checkin. Moved from gui/config/test
  96.  *
  97.  * Revision 1.1  2003/11/18 20:17:20  rsmith
  98.  * Initial checkin. Demo of gui_config dialog.
  99.  *
  100.  * ===========================================================================
  101.  */
  102. #endif  /* GUI_WIDGETS_SEQ_GRAPHIC___CONFIG__CPP */