LibreOffice Module vcl (master) 1
Classes | Macros | Typedefs | Functions
layout.cxx File Reference
#include <sal/config.h>
#include <config_libcxx.h>
#include <string_view>
#include <config_features.h>
#include <com/sun/star/accessibility/AccessibleRole.hpp>
#include <comphelper/base64.hxx>
#include <comphelper/lok.hxx>
#include <o3tl/enumarray.hxx>
#include <o3tl/enumrange.hxx>
#include <o3tl/string_view.hxx>
#include <tools/stream.hxx>
#include <utility>
#include <vcl/builder.hxx>
#include <vcl/toolkit/button.hxx>
#include <vcl/cvtgrf.hxx>
#include <vcl/decoview.hxx>
#include <vcl/help.hxx>
#include <vcl/toolkit/dialog.hxx>
#include <vcl/layout.hxx>
#include <vcl/toolkit/scrbar.hxx>
#include <vcl/stdtext.hxx>
#include <vcl/split.hxx>
#include <vcl/svapp.hxx>
#include <vcl/settings.hxx>
#include <vcl/virdev.hxx>
#include <bitmaps.hlst>
#include <messagedialog.hxx>
#include <svdata.hxx>
#include <window.h>
#include <boost/multi_array.hpp>
#include <vcl/toolkit/vclmedit.hxx>
#include <vcl/uitest/uiobject.hxx>
#include <sal/log.hxx>
#include <tools/json_writer.hxx>
Include dependency graph for layout.cxx:

Go to the source code of this file.

Classes

class  DisclosureButton
 

Macros

#define DEFAULT_CHILD_MIN_WIDTH   85
 
#define DEFAULT_CHILD_MIN_HEIGHT   27
 

Typedefs

typedef boost::multi_array< GridEntry, 2 > array_type
 

Functions

static tools::Long getMaxNonOutlier (const std::vector< tools::Long > &rG, tools::Long nAvgDimension)
 
static std::vector< tools::LongsetButtonSizes (const std::vector< tools::Long > &rG, const std::vector< bool > &rNonHomogeneous, tools::Long nAvgDimension, tools::Long nMaxNonOutlier, tools::Long nMinWidth)
 
static int getButtonPriority (std::u16string_view rType)
 
void sort_native_button_order (const VclBox &rContainer)
 
static array_type assembleGrid (const VclGrid &rGrid)
 
static bool isNullGrid (const array_type &A)
 
static void calcMaxs (const array_type &A, std::vector< VclGrid::Value > &rWidths, std::vector< VclGrid::Value > &rHeights)
 
static bool compareValues (const VclGrid::Value &i, const VclGrid::Value &j)
 
static VclGrid::Value accumulateValues (const VclGrid::Value &i, const VclGrid::Value &j)
 
bool toBool (std::u16string_view rValue)
 
 IMPL_LINK (VclFrame, WindowEventListener, VclWindowEvent &, rEvent, void)
 
 IMPL_LINK (VclExpander, ClickHdl, CheckBox &, rBtn, void)
 
 IMPL_LINK_NOARG (VclScrolledWindow, ScrollBarHdl, ScrollBar *, void)
 
 IMPL_LINK (VclVPaned, SplitHdl, Splitter *, pSplitter, void)
 
 IMPL_LINK (VclHPaned, SplitHdl, Splitter *, pSplitter, void)
 
Size getLegacyBestSizeForChildren (const vcl::Window &rWindow)
 
vcl::WindowgetNonLayoutParent (vcl::Window *pWindow)
 
bool isVisibleInLayout (const vcl::Window *pWindow)
 
bool isEnabledInLayout (const vcl::Window *pWindow)
 
bool isLayoutEnabled (const vcl::Window *pWindow)
 

Macro Definition Documentation

◆ DEFAULT_CHILD_MIN_HEIGHT

#define DEFAULT_CHILD_MIN_HEIGHT   27

Definition at line 419 of file layout.cxx.

◆ DEFAULT_CHILD_MIN_WIDTH

#define DEFAULT_CHILD_MIN_WIDTH   85

Definition at line 418 of file layout.cxx.

Typedef Documentation

◆ array_type

typedef boost::multi_array<GridEntry, 2> array_type

Definition at line 898 of file layout.cxx.

Function Documentation

◆ accumulateValues()

static VclGrid::Value accumulateValues ( const VclGrid::Value i,
const VclGrid::Value j 
)
static

◆ assembleGrid()

array_type assembleGrid ( const VclGrid rGrid)
static

◆ calcMaxs()

static void calcMaxs ( const array_type A,
std::vector< VclGrid::Value > &  rWidths,
std::vector< VclGrid::Value > &  rHeights 
)
static

◆ compareValues()

static bool compareValues ( const VclGrid::Value i,
const VclGrid::Value j 
)
static

Definition at line 1206 of file layout.cxx.

References i, and VclGrid::Value::m_nValue.

Referenced by VclGrid::calculateRequisitionForSpacings().

◆ getButtonPriority()

static int getButtonPriority ( std::u16string_view  rType)
static

Definition at line 772 of file layout.cxx.

References Application::GetDesktopEnvironment(), i, and u.

◆ getLegacyBestSizeForChildren()

Size getLegacyBestSizeForChildren ( const vcl::Window rWindow)

◆ getMaxNonOutlier()

static tools::Long getMaxNonOutlier ( const std::vector< tools::Long > &  rG,
tools::Long  nAvgDimension 
)
static

Definition at line 453 of file layout.cxx.

Referenced by VclButtonBox::calculatePrimarySecondaryRequisitions().

◆ getNonLayoutParent()

vcl::Window * getNonLayoutParent ( vcl::Window pWindow)

◆ IMPL_LINK() [1/4]

IMPL_LINK ( VclExpander  ,
ClickHdl  ,
CheckBox ,
rBtn  ,
void   
)

Definition at line 1850 of file layout.cxx.

References SystemWindow::setOptimalLayoutSize(), and vcl::Window::Show().

◆ IMPL_LINK() [2/4]

IMPL_LINK ( VclFrame  ,
WindowEventListener  ,
VclWindowEvent ,
rEvent  ,
void   
)

Definition at line 1521 of file layout.cxx.

References ObjectDying.

◆ IMPL_LINK() [3/4]

IMPL_LINK ( VclHPaned  ,
SplitHdl  ,
Splitter ,
pSplitter  ,
void   
)

Definition at line 2830 of file layout.cxx.

References Size::Width().

◆ IMPL_LINK() [4/4]

IMPL_LINK ( VclVPaned  ,
SplitHdl  ,
Splitter ,
pSplitter  ,
void   
)

Definition at line 2711 of file layout.cxx.

References Size::Height().

◆ IMPL_LINK_NOARG()

IMPL_LINK_NOARG ( VclScrolledWindow  ,
ScrollBarHdl  ,
ScrollBar ,
void   
)

Definition at line 1908 of file layout.cxx.

References FirstChild, vcl::Window::GetWindow(), and vcl::Window::SetPosPixel().

◆ isEnabledInLayout()

bool isEnabledInLayout ( const vcl::Window pWindow)

◆ isLayoutEnabled()

bool isLayoutEnabled ( const vcl::Window pWindow)

◆ isNullGrid()

static bool isNullGrid ( const array_type A)
static

Definition at line 1066 of file layout.cxx.

References A.

Referenced by VclGrid::calculateRequisitionForSpacings(), and VclGrid::setAllocation().

◆ isVisibleInLayout()

bool isVisibleInLayout ( const vcl::Window pWindow)

◆ setButtonSizes()

static std::vector< tools::Long > setButtonSizes ( const std::vector< tools::Long > &  rG,
const std::vector< bool > &  rNonHomogeneous,
tools::Long  nAvgDimension,
tools::Long  nMaxNonOutlier,
tools::Long  nMinWidth 
)
static

Definition at line 467 of file layout.cxx.

Referenced by VclButtonBox::calculatePrimarySecondaryRequisitions().

◆ sort_native_button_order()

void sort_native_button_order ( const VclBox rContainer)

◆ toBool()

bool toBool ( std::u16string_view  rValue)