Files
libreoffice/vcl/osx/a11yutil.mm

47 lines
1.9 KiB
Plaintext
Raw Normal View History

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2012-06-25 16:56:16 +01:00
/*
* This file is part of the LibreOffice project.
*
2012-06-25 16:56:16 +01:00
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
2012-06-25 16:56:16 +01:00
* This file incorporates work covered by the following license notice:
*
2012-06-25 16:56:16 +01:00
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#include "osx/osxvcltypes.h"
#include "a11yutil.h"
using namespace ::com::sun::star::awt;
@implementation AquaA11yUtil : NSObject
// TODO: should be merged with AquaSalFrame::VCLToCocoa... to a general helper method
+(NSValue *)vclPointToNSPoint:(Point)vclPoint {
// VCL coordinates are in upper-left-notation, Cocoa likes it the Cartesian way (lower-left)
NSRect screenRect = [ [ NSScreen mainScreen ] frame ];
NSPoint nsPoint = NSMakePoint ( (float) vclPoint.X, (float) ( screenRect.size.height - vclPoint.Y ) );
return [ NSValue valueWithPoint: nsPoint ];
}
// TODO: should be merged with AquaSalFrame::VCLToCocoa... to a general helper method
+(Point)nsPointToVclPoint:(NSValue *)nsPoint {
// VCL coordinates are in upper-left-notation, Cocoa likes it the Cartesian way (lower-left)
NSRect screenRect = [ [ NSScreen mainScreen ] frame ];
CWS-TOOLING: integrate CWS vcl103 2009-07-24 Jens-Heiner Rechtien #i10000#: merge with m53 2009-07-10 Philipp Lohmann merge 2009-07-10 hdu #i103417# ignore non-standard font styles 2009-07-07 Philipp Lohmann #i98789# add: Invalidate on StateChanged( STATE_CHANGE_ENABLE ) 2009-07-07 Philipp Lohmann #i102501# ExportFormFields should be persistent 2009-07-07 Philipp Lohmann merge 2009-07-07 Philipp Lohmann #i103319# there is no platform currently where we should beep on disabled controls 2009-07-02 Philipp Lohmann merge 2009-07-01 Philipp Lohmann #i93100# handle ListBox with no border a little more graceful on MacOSX 2009-07-01 Philipp Lohmann #i101307# don't crash due to unfortunate timing 2009-07-03 thb #i103145# Swapped HINT_DOCK for HINT_TOOLBAR for the presentation fullscreen window; anecdotal evidence suggests it works much better then for wide-spread window managers 2009-06-30 Philipp Lohmann #i103102# evaluate Cmd-Option key combinations 2009-06-29 Philipp Lohmann #i103148# catch exception from missing UCB (thanks thb) 2009-06-29 hdu #i102378# fix PDF-export on PPC (thanks cloph!) 2009-06-25 Philipp Lohmann fix another link problem 2009-06-24 Philipp Lohmann use correct method signature 2009-06-24 Philipp Lohmann fix a warning 2009-06-24 Philipp Lohmann fix a warning 2009-06-24 Philipp Lohmann #i100357# add: GDIMetaFile::GetBoundRect 2009-06-24 Philipp Lohmann merge 2009-06-24 hdu #i100357# extend GetTextBoundRect() to measure justified text too 2009-06-23 Philipp Lohmann #i101108# protect writer from itself, no one could ever use paper of size (0,0) 2009-06-22 Philipp Lohmann merge 2009-06-22 Philipp Lohmann #i92356# treat windows running a popup menu as modal 2009-06-22 hdu #i100000# remove sft.h again (CWS dba32b accidentially reintroduced it) 2009-06-17 Philipp Lohmann merge 2009-06-17 Philipp Lohmann remove warnings (thanks ericb) 2009-06-17 Philipp Lohmann merge 2009-06-17 Philipp Lohmann #i102133# free cursors (thanks cmc) 2009-06-17 Philipp Lohmann #i97293# catch exception 2009-06-17 Philipp Lohmann #i91240# fix images in menus, again 2009-06-15 Philipp Lohmann #i100586# fix a pure virtual method (thanks cmc) 2009-06-15 Philipp Lohmann fix an array delete issue 2009-06-15 Philipp Lohmann #i102228# fix a cleanup issue 2009-06-15 Philipp Lohmann #i97218# solve duplicate accelerator 2009-06-12 hdu #i102219# avoid void*->oslGenericFunction cast for MingW (thanks tono!)
2009-07-24 15:45:35 +00:00
return Point ( static_cast<long>([ nsPoint pointValue ].x), static_cast<long>(screenRect.size.height - [ nsPoint pointValue ].y) );
}
@end
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */