~ubuntu-branches/ubuntu/vivid/gimp/vivid

« back to all changes in this revision

Viewing changes to app/config/gimpdisplayconfig.c

  • Committer: Package Import Robot
  • Author(s): Jordi Mallach
  • Date: 2012-05-08 18:50:03 UTC
  • mto: (1.1.26) (0.5.1 experimental)
  • mto: This revision was merged to the branch mainline in revision 71.
  • Revision ID: package-import@ubuntu.com-20120508185003-tltkvbaysf8d2426
ImportĀ upstreamĀ versionĀ 2.8.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
 * GimpDisplayConfig class
5
5
 * Copyright (C) 2001  Sven Neumann <sven@gimp.org>
6
6
 *
7
 
 * This program is free software; you can redistribute it and/or modify
 
7
 * This program is free software: you can redistribute it and/or modify
8
8
 * it under the terms of the GNU General Public License as published by
9
 
 * the Free Software Foundation; either version 2 of the License, or
 
9
 * the Free Software Foundation; either version 3 of the License, or
10
10
 * (at your option) any later version.
11
11
 *
12
12
 * This program is distributed in the hope that it will be useful,
15
15
 * GNU General Public License for more details.
16
16
 *
17
17
 * You should have received a copy of the GNU General Public License
18
 
 * along with this program; if not, write to the Free Software
19
 
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
18
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
19
 */
21
20
 
22
21
#include "config.h"
23
22
 
 
23
#include <cairo.h>
24
24
#include <glib-object.h>
25
25
 
26
26
#include "libgimpbase/gimpbase.h"
29
29
 
30
30
#include "config-types.h"
31
31
 
32
 
#include "display/display-enums.h"
33
 
#include "display/gimpdisplayoptions.h"
34
 
 
35
32
#include "gimprc-blurbs.h"
36
33
#include "gimpdisplayconfig.h"
 
34
#include "gimpdisplayoptions.h"
37
35
 
38
36
#include "gimp-intl.h"
39
37
 
41
39
#define DEFAULT_ACTIVATE_ON_FOCUS    TRUE
42
40
#define DEFAULT_MONITOR_RESOLUTION   96.0
43
41
#define DEFAULT_MARCHING_ANTS_SPEED  200
 
42
#define DEFAULT_USE_EVENT_HISTORY    FALSE
44
43
 
45
44
enum
46
45
{
67
66
  PROP_NAV_PREVIEW_SIZE,
68
67
  PROP_DEFAULT_VIEW,
69
68
  PROP_DEFAULT_FULLSCREEN_VIEW,
 
69
  PROP_DEFAULT_SNAP_TO_GUIDES,
 
70
  PROP_DEFAULT_SNAP_TO_GRID,
 
71
  PROP_DEFAULT_SNAP_TO_CANVAS,
 
72
  PROP_DEFAULT_SNAP_TO_PATH,
70
73
  PROP_ACTIVATE_ON_FOCUS,
71
74
  PROP_SPACE_BAR_ACTION,
72
 
  PROP_XOR_COLOR,
73
 
  PROP_ZOOM_QUALITY
 
75
  PROP_ZOOM_QUALITY,
 
76
  PROP_USE_EVENT_HISTORY,
 
77
 
 
78
  /* ignored, only for backward compatibility: */
 
79
  PROP_XOR_COLOR
74
80
};
75
81
 
76
82
 
101
107
gimp_display_config_class_init (GimpDisplayConfigClass *klass)
102
108
{
103
109
  GObjectClass *object_class = G_OBJECT_CLASS (klass);
104
 
  GimpRGB       color;
105
 
 
106
 
  gimp_rgba_set_uchar (&color, 0x80, 0xff, 0x80, 0xff);
 
110
  GimpRGB       color        = { 0, 0, 0, 0 };
107
111
 
108
112
  object_class->finalize     = gimp_display_config_finalize;
109
113
  object_class->set_property = gimp_display_config_set_property;
126
130
  GIMP_CONFIG_INSTALL_PROP_INT (object_class, PROP_MARCHING_ANTS_SPEED,
127
131
                                "marching-ants-speed",
128
132
                                MARCHING_ANTS_SPEED_BLURB,
129
 
                                10, 1000, DEFAULT_MARCHING_ANTS_SPEED,
 
133
                                10, 10000, DEFAULT_MARCHING_ANTS_SPEED,
130
134
                                GIMP_PARAM_STATIC_STRINGS);
131
135
  GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_RESIZE_WINDOWS_ON_ZOOM,
132
136
                                    "resize-windows-on-zoom",
218
222
                                   GIMP_TYPE_DISPLAY_OPTIONS,
219
223
                                   GIMP_PARAM_STATIC_STRINGS |
220
224
                                   GIMP_CONFIG_PARAM_AGGREGATE);
 
225
  GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_DEFAULT_SNAP_TO_GUIDES,
 
226
                                    "default-snap-to-guides",
 
227
                                    DEFAULT_SNAP_TO_GUIDES_BLURB,
 
228
                                    TRUE,
 
229
                                    GIMP_PARAM_STATIC_STRINGS);
 
230
  GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_DEFAULT_SNAP_TO_GRID,
 
231
                                    "default-snap-to-grid",
 
232
                                    DEFAULT_SNAP_TO_GRID_BLURB,
 
233
                                    FALSE,
 
234
                                    GIMP_PARAM_STATIC_STRINGS);
 
235
  GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_DEFAULT_SNAP_TO_CANVAS,
 
236
                                    "default-snap-to-canvas",
 
237
                                    DEFAULT_SNAP_TO_CANVAS_BLURB,
 
238
                                    FALSE,
 
239
                                    GIMP_PARAM_STATIC_STRINGS);
 
240
  GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_DEFAULT_SNAP_TO_PATH,
 
241
                                    "default-snap-to-path",
 
242
                                    DEFAULT_SNAP_TO_PATH_BLURB,
 
243
                                    FALSE,
 
244
                                    GIMP_PARAM_STATIC_STRINGS);
221
245
  GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_ACTIVATE_ON_FOCUS,
222
246
                                    "activate-on-focus",
223
247
                                    ACTIVATE_ON_FOCUS_BLURB,
229
253
                                 GIMP_TYPE_SPACE_BAR_ACTION,
230
254
                                 GIMP_SPACE_BAR_ACTION_PAN,
231
255
                                 GIMP_PARAM_STATIC_STRINGS);
232
 
  GIMP_CONFIG_INSTALL_PROP_RGB (object_class, PROP_XOR_COLOR,
233
 
                                "xor-color", XOR_COLOR_BLURB,
234
 
                                FALSE, &color,
235
 
                                GIMP_PARAM_STATIC_STRINGS);
236
256
  GIMP_CONFIG_INSTALL_PROP_ENUM (object_class, PROP_ZOOM_QUALITY,
237
257
                                 "zoom-quality",
238
258
                                 ZOOM_QUALITY_BLURB,
239
259
                                 GIMP_TYPE_ZOOM_QUALITY,
240
260
                                 GIMP_ZOOM_QUALITY_HIGH,
241
261
                                 GIMP_PARAM_STATIC_STRINGS);
 
262
 
 
263
  GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_USE_EVENT_HISTORY,
 
264
                                    "use-event-history",
 
265
                                    DEFAULT_USE_EVENT_HISTORY_BLURB,
 
266
                                    DEFAULT_USE_EVENT_HISTORY,
 
267
                                    GIMP_PARAM_STATIC_STRINGS);
 
268
 
 
269
  /*  only for backward compatibility:  */
 
270
  GIMP_CONFIG_INSTALL_PROP_RGB (object_class, PROP_XOR_COLOR,
 
271
                                "xor-color", NULL,
 
272
                                FALSE, &color,
 
273
                                GIMP_PARAM_STATIC_STRINGS |
 
274
                                GIMP_CONFIG_PARAM_IGNORE);
242
275
}
243
276
 
244
277
static void
359
392
                          G_OBJECT (display_config->default_fullscreen_view),
360
393
                          0);
361
394
      break;
 
395
    case PROP_DEFAULT_SNAP_TO_GUIDES:
 
396
      display_config->default_snap_to_guides = g_value_get_boolean (value);
 
397
      break;
 
398
    case PROP_DEFAULT_SNAP_TO_GRID:
 
399
      display_config->default_snap_to_grid = g_value_get_boolean (value);
 
400
      break;
 
401
    case PROP_DEFAULT_SNAP_TO_CANVAS:
 
402
      display_config->default_snap_to_canvas = g_value_get_boolean (value);
 
403
      break;
 
404
    case PROP_DEFAULT_SNAP_TO_PATH:
 
405
      display_config->default_snap_to_path = g_value_get_boolean (value);
 
406
      break;
362
407
    case PROP_ACTIVATE_ON_FOCUS:
363
408
      display_config->activate_on_focus = g_value_get_boolean (value);
364
409
      break;
365
410
    case PROP_SPACE_BAR_ACTION:
366
411
      display_config->space_bar_action = g_value_get_enum (value);
367
412
      break;
368
 
    case PROP_XOR_COLOR:
369
 
      display_config->xor_color = *(GimpRGB *) g_value_get_boxed (value);
370
 
      break;
371
413
    case PROP_ZOOM_QUALITY:
372
414
      display_config->zoom_quality = g_value_get_enum (value);
373
415
      break;
 
416
    case PROP_USE_EVENT_HISTORY:
 
417
      display_config->use_event_history = g_value_get_boolean (value);
 
418
      break;
 
419
    case PROP_XOR_COLOR:
 
420
      /* ignored */
 
421
      break;
374
422
 
375
423
    default:
376
424
      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
454
502
    case PROP_DEFAULT_FULLSCREEN_VIEW:
455
503
      g_value_set_object (value, display_config->default_fullscreen_view);
456
504
      break;
 
505
    case PROP_DEFAULT_SNAP_TO_GUIDES:
 
506
      g_value_set_boolean (value, display_config->default_snap_to_guides);
 
507
      break;
 
508
    case PROP_DEFAULT_SNAP_TO_GRID:
 
509
      g_value_set_boolean (value, display_config->default_snap_to_grid);
 
510
      break;
 
511
    case PROP_DEFAULT_SNAP_TO_CANVAS:
 
512
      g_value_set_boolean (value, display_config->default_snap_to_canvas);
 
513
      break;
 
514
    case PROP_DEFAULT_SNAP_TO_PATH:
 
515
      g_value_set_boolean (value, display_config->default_snap_to_path);
 
516
      break;
457
517
    case PROP_ACTIVATE_ON_FOCUS:
458
518
      g_value_set_boolean (value, display_config->activate_on_focus);
459
519
      break;
460
520
    case PROP_SPACE_BAR_ACTION:
461
521
      g_value_set_enum (value, display_config->space_bar_action);
462
522
      break;
463
 
    case PROP_XOR_COLOR:
464
 
      g_value_set_boxed (value, &display_config->xor_color);
465
 
      break;
466
523
    case PROP_ZOOM_QUALITY:
467
524
      g_value_set_enum (value, display_config->zoom_quality);
468
525
      break;
 
526
    case PROP_USE_EVENT_HISTORY:
 
527
      g_value_set_boolean (value, display_config->use_event_history);
 
528
      break;
 
529
    case PROP_XOR_COLOR:
 
530
      /* ignored */
 
531
      break;
469
532
 
470
533
    default:
471
534
      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);