Mercurial > projects > dwt-mac
diff dwt/custom/CLayoutData.d @ 41:6337764516f1
Sync dwt/custom with dwt-linux (took copy of complete folder)
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Tue, 07 Oct 2008 16:29:55 +0200 |
parents | f565d3a95c0a |
children |
line wrap: on
line diff
--- a/dwt/custom/CLayoutData.d Tue Oct 07 14:41:31 2008 +0200 +++ b/dwt/custom/CLayoutData.d Tue Oct 07 16:29:55 2008 +0200 @@ -1,4 +1,4 @@ -/******************************************************************************* +/******************************************************************************* * Copyright (c) 2005 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 @@ -7,12 +7,12 @@ * * Contributors: * IBM Corporation - initial API and implementation - * * Port to the D programming language: - * Jacob Carlborg <jacob.carlborg@gmail.com> + * Frank Benoit <benoit@tionex.de> *******************************************************************************/ module dwt.custom.CLayoutData; + import dwt.DWT; import dwt.graphics.Point; import dwt.widgets.Control; @@ -22,29 +22,27 @@ int defaultWidth = -1, defaultHeight = -1; int currentWhint, currentHhint, currentWidth = -1, currentHeight = -1; - Point computeSize (Control control, int wHint, int hHint, bool flushCache) { - if (flushCache) - flushCache(); - if (wHint is DWT.DEFAULT && hHint is DWT.DEFAULT) { - if (defaultWidth is -1 || defaultHeight is -1) { - Point size = control.computeSize(wHint, hHint, flushCache); - defaultWidth = size.x; - defaultHeight = size.y; - } - return new Point(defaultWidth, defaultHeight); +Point computeSize (Control control, int wHint, int hHint, bool flushCache_) { + if (flushCache_) flushCache(); + if (wHint is DWT.DEFAULT && hHint is DWT.DEFAULT) { + if (defaultWidth is -1 || defaultHeight is -1) { + Point size = control.computeSize (wHint, hHint, flushCache_); + defaultWidth = size.x; + defaultHeight = size.y; } - if (currentWidth is -1 || currentHeight is -1 || wHint !is currentWhint || hHint !is currentHhint) { - Point size = control.computeSize(wHint, hHint, flushCache); - currentWhint = wHint; - currentHhint = hHint; - currentWidth = size.x; - currentHeight = size.y; - } - return new Point(currentWidth, currentHeight); + return new Point(defaultWidth, defaultHeight); } - - void flushCache () { - defaultWidth = defaultHeight = -1; - currentWidth = currentHeight = -1; + if (currentWidth is -1 || currentHeight is -1 || wHint !is currentWhint || hHint !is currentHhint) { + Point size = control.computeSize (wHint, hHint, flushCache_); + currentWhint = wHint; + currentHhint = hHint; + currentWidth = size.x; + currentHeight = size.y; } + return new Point(currentWidth, currentHeight); } +void flushCache () { + defaultWidth = defaultHeight = -1; + currentWidth = currentHeight = -1; +} +}