Avoid potential negative array index access to cached text.
[LibreOffice.git] / vcl / inc / osx / salnativewidgets.h
blob86675e0623d60f0444515b55dc460ab0ae5cf429
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef INCLUDED_VCL_INC_OSX_SALNATIVEWIDGETS_H
21 #define INCLUDED_VCL_INC_OSX_SALNATIVEWIDGETS_H
23 #define TAB_HEIGHT 20 // height of tab header in pixels
24 #define TAB_TEXT_MARGIN 12 // left/right margin of text within tab headers
26 #define FOCUS_RING_WIDTH 4 // width of focus ring in pixels
28 #define MEDIUM_PROGRESS_INDICATOR_HEIGHT 10 // height of medium progress indicator in pixels
29 #define LARGE_PROGRESS_INDICATOR_HEIGHT 16 // height of large progress indicator in pixels
31 #define PUSH_BUTTON_NORMAL_HEIGHT 21 // height of normal push button without focus ring in pixels
32 #define PUSH_BUTTON_SMALL_HEIGHT 15 // height of small push button without focus ring in pixels
34 #define RADIO_BUTTON_SMALL_SIZE 14 // width/height of small radio button without focus ring in pixels
35 #define RADIO_BUTTON_TEXT_SEPARATOR 3 // space between radio button and following text in pixels
37 #define CHECKBOX_SMALL_SIZE 14 // width/height of checkbox without focus ring in pixels
38 #define CHECKBOX_TEXT_SEPARATOR 3 // space between checkbox and following text in pixels
40 #define SLIDER_WIDTH 19 // width of slider in pixels
41 #define SLIDER_HEIGHT 18 // height of slider in pixels
43 #define EDITBOX_HEIGHT 21 // height of editbox without focus ring in pixels
44 #define EDITBOX_BORDER_WIDTH 1 // width of editbox border in pixels
45 #define EDITBOX_INSET_MARGIN 1 // width of left/right as well as top/bottom editbox margin in pixels
47 #define COMBOBOX_HEIGHT 20 // height of combobox without focus ring in pixels
48 #define COMBOBOX_BUTTON_WIDTH 18 // width of combobox button without focus ring in pixels
49 #define COMBOBOX_BORDER_WIDTH 1 // width of combobox border in pixels
50 #define COMBOBOX_TEXT_MARGIN 1 // left/right margin of text in pixels
52 #define LISTBOX_HEIGHT 20 // height of listbox without focus ring in pixels
53 #define LISTBOX_BUTTON_WIDTH 18 // width of listbox button without focus ring in pixels
54 #define LISTBOX_BORDER_WIDTH 1 // width of listbox border in pixels
55 #define LISTBOX_TEXT_MARGIN 1 // left/right margin of text in pixels
57 #define SPIN_BUTTON_WIDTH 13 // width of spin button without focus ring in pixels
58 #define SPIN_UPPER_BUTTON_HEIGHT 11 // height of upper spin button without focus ring in pixels
59 #define SPIN_LOWER_BUTTON_HEIGHT 11 // height of lower spin button without focus ring in pixels
61 // FIXME: spinboxes are positioned one pixel shifted to the right by VCL. As positioning as well as size should be equal to
62 // corresponding editboxes, comboboxes or listboxes, positioning of spinboxes should by equal too. Issue cannot be fixed within
63 // native widget drawing code. As a workaround, an offset is considered for spinboxes to align spinboxes correctly.
65 #define SPINBOX_OFFSET 1 // left offset for alignment with editboxes, comboboxes, and listboxes
67 #endif // INCLUDED_VCL_INC_OSX_SALNATIVEWIDGETS_H
69 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */