summaryrefslogtreecommitdiffstats
path: root/vncviewer/CViewOptions.h
blob: e45612c3c9ee5e53bf444f5bf235b3b902df1112 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
/* Copyright (C) 2002-2004 RealVNC Ltd.  All Rights Reserved.
 *    
 * This is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 * 
 * This software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this software; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
 * USA.
 */

// -=- CViewOptions.h

// Definition of the CViewOptions class, responsible for storing the
// current & requested VNCviewer options.

#ifndef __RFB_WIN32_CVIEW_OPTIONS_H__
#define __RFB_WIN32_CVIEW_OPTIONS_H__

#include <rfb/util.h>

namespace rfb {

  namespace win32 {

    //
    // -=- Options structure.  Each viewer option has a corresponding
    //     entry in CViewOptions.  The viewer options are set by calling
    //     CView::applyOptions(...)
    //     The CViewOptions structure automatically picks up the default
    //     value of each option from the Configuration system
    //     The readFromFile and writeFromFile methods can be used to load
    //     and save VNC configuration files.  readFromFile is backwards
    //     compatible with 3.3 releases, while writeToFile is not.

    class CViewOptions {
    public:
      CViewOptions();
      CViewOptions(const CViewOptions& o) {operator=(o);}
      CViewOptions& operator=(const CViewOptions& o);
      void readFromFile(const char* filename_);
      void writeToFile(const char* filename_);
      void writeDefaults();
      bool useLocalCursor;
      bool useDesktopResize;
      bool fullScreen;
      bool fullColour;
      int lowColourLevel;
      int preferredEncoding;
      bool autoSelect;
      bool shared;
      bool sendPtrEvents;
      bool sendKeyEvents;
      bool clientCutText;
      bool serverCutText;
      bool emulate3;
      int pointerEventInterval;
      bool protocol3_3;
      bool acceptBell;
      CharArray userName;
      void setUserName(const char* user);
      CharArray password;
      void setPassword(const char* pwd);
      CharArray configFileName;
      void setConfigFileName(const char* cfn);
      CharArray host;
      void setHost(const char* h);
      CharArray monitor;
      void setMonitor(const char* m);
      unsigned int menuKey;
      void setMenuKey(const char* keyName);
      char* menuKeyName();

      bool customCompressLevel;
      int compressLevel;
      bool noJpeg;
      int qualityLevel;

    };


  };

};

#endif