view dwt/internal/cocoa/NSText.d @ 13:f565d3a95c0a

Ported dwt.internal
author Jacob Carlborg <doob@me.com> <jacob.carlborg@gmail.com>
date Fri, 22 Aug 2008 16:46:34 +0200
parents 8b48be5454ce
children 642f460a0908
line wrap: on
line source

/*******************************************************************************
 * Copyright (c) 2007 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
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *     
 * Port to the D programming language:
 *     Jacob Carlborg <jacob.carlborg@gmail.com>
 *******************************************************************************/
module dwt.internal.cocoa.NSText;

import dwt.internal.cocoa.id;
import dwt.internal.cocoa.NSColor;
import dwt.internal.cocoa.NSData;
import dwt.internal.cocoa.NSFont;
import dwt.internal.cocoa.NSRange;
import dwt.internal.cocoa.NSSize;
import dwt.internal.cocoa.NSString;
import dwt.internal.cocoa.NSView;
import dwt.internal.cocoa.OS;
import objc = dwt.internal.objc.runtime;



enum NSWritingDirection
{
    NSWritingDirectionNatural = -1,
    NSWritingDirectionLeftToRight = 0,
    NSWritingDirectionRightToLeft
}

alias NSWritingDirection.NSWritingDirectionNatural NSWritingDirectionNatural;
alias NSWritingDirection.NSWritingDirectionLeftToRight NSWritingDirectionLeftToRight;
alias NSWritingDirection.NSWritingDirectionRightToLeft NSWritingDirectionRightToLeft;



enum NSTextAlignment
{
    NSLeftTextAlignment = 0,
    NSRightTextAlignment = 1,
    NSCenterTextAlignment = 2,
    NSJustifiedTextAlignment = 3,
    NSNaturalTextAlignment = 4
}

alias NSTextAlignment.NSLeftTextAlignment NSLeftTextAlignment;
alias NSTextAlignment.NSRightTextAlignment NSRightTextAlignment;
alias NSTextAlignment.NSCenterTextAlignment NSCenterTextAlignment;
alias NSTextAlignment.NSJustifiedTextAlignment NSJustifiedTextAlignment;
alias NSTextAlignment.NSNaturalTextAlignment NSNaturalTextAlignment;



public class NSText : NSView
{

    public this ()
    {
        super();
    }

    public this (objc.id id)
    {
        super(id);
    }

    public static objc.Class static_class ()
    {
        return cast(objc.Class) OS.objc_msgSend(OS.class_NSText, OS.sel_class);
    }

    public NSData RTFDFromRange (NSRange range)
    {
        objc.id result = OS.objc_msgSend(this.id_, OS.sel_RTFDFromRange_1, range);
        return result !is null ? new NSData(result) : null;
    }

    public NSData RTFFromRange (NSRange range)
    {
        objc.id result = OS.objc_msgSend(this.id_, OS.sel_RTFFromRange_1, range);
        return result !is null ? new NSData(result) : null;
    }

    public void alignCenter (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_alignCenter_1, sender !is null ? sender.id_ : null);
    }

    public void alignLeft (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_alignLeft_1, sender !is null ? sender.id_ : null);
    }

    public void alignRight (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_alignRight_1, sender !is null ? sender.id_ : null);
    }

    public NSTextAlignment alignment ()
    {
        return cast(NSTextAlignment) OS.objc_msgSend(this.id_, OS.sel_alignment);
    }

    public NSColor backgroundColor ()
    {
        objc.id result = OS.objc_msgSend(this.id_, OS.sel_backgroundColor);
        return result !is null ? new NSColor(result) : null;
    }

    public NSWritingDirection baseWritingDirection ()
    {
        return cast(NSWritingDirection) OS.objc_msgSend(this.id_, OS.sel_baseWritingDirection);
    }

    public void changeFont (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_changeFont_1, sender !is null ? sender.id_ : null);
    }

    public void checkSpelling (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_checkSpelling_1, sender !is null ? sender.id_ : null);
    }

    public void copy (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_copy_1, sender !is null ? sender.id_ : null);
    }

    public void copyFont (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_copyFont_1, sender !is null ? sender.id_ : null);
    }

    public void copyRuler (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_copyRuler_1, sender !is null ? sender.id_ : null);
    }

    public void cut (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_cut_1, sender !is null ? sender.id_ : null);
    }

    public id delegatee ()
    {
        objc.id result = OS.objc_msgSend(this.id_, OS.sel_delegate);
        return result !is null ? new id(result) : null;
    }

    public void deletee (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_delete_1, sender !is null ? sender.id_ : null);
    }

    public bool drawsBackground ()
    {
        return OS.objc_msgSend(this.id_, OS.sel_drawsBackground) !is null;
    }

    public NSFont font ()
    {
        objc.id result = OS.objc_msgSend(this.id_, OS.sel_font);
        return result !is null ? new NSFont(result) : null;
    }

    public bool importsGraphics ()
    {
        return OS.objc_msgSend(this.id_, OS.sel_importsGraphics) !is null;
    }

    public bool isEditable ()
    {
        return OS.objc_msgSend(this.id_, OS.sel_isEditable) !is null;
    }

    public bool isFieldEditor ()
    {
        return OS.objc_msgSend(this.id_, OS.sel_isFieldEditor) !is null;
    }

    public bool isHorizontallyResizable ()
    {
        return OS.objc_msgSend(this.id_, OS.sel_isHorizontallyResizable) !is null;
    }

    public bool isRichText ()
    {
        return OS.objc_msgSend(this.id_, OS.sel_isRichText) !is null;
    }

    public bool isRulerVisible ()
    {
        return OS.objc_msgSend(this.id_, OS.sel_isRulerVisible) !is null;
    }

    public bool isSelectable ()
    {
        return OS.objc_msgSend(this.id_, OS.sel_isSelectable) !is null;
    }

    public bool isVerticallyResizable ()
    {
        return OS.objc_msgSend(this.id_, OS.sel_isVerticallyResizable) !is null;
    }

    public NSSize maxSize ()
    {
        NSSize result;
        OS.objc_msgSend_stret(&result, this.id_, OS.sel_maxSize);
        return result;
    }

    public NSSize minSize ()
    {
        NSSize result;
        OS.objc_msgSend_stret(&result, this.id_, OS.sel_minSize);
        return result;
    }

    public void paste (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_paste_1, sender !is null ? sender.id_ : null);
    }

    public void pasteFont (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_pasteFont_1, sender !is null ? sender.id_ : null);
    }

    public void pasteRuler (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_pasteRuler_1, sender !is null ? sender.id_ : null);
    }

    public bool readRTFDFromFile (NSString path)
    {
        return OS.objc_msgSend(this.id_, OS.sel_readRTFDFromFile_1, path !is null ? path.id_ : null) !is null;
    }

    public void replaceCharactersInRange_withRTF_ (NSRange range, NSData rtfData)
    {
        OS.objc_msgSend(this.id_, OS.sel_replaceCharactersInRange_1withRTF_1, range, rtfData !is null ? rtfData.id_ : null);
    }

    public void replaceCharactersInRange_withRTFD_ (NSRange range, NSData rtfdData)
    {
        OS.objc_msgSend(this.id_, OS.sel_replaceCharactersInRange_1withRTFD_1, range, rtfdData !is null ? rtfdData.id_ : null);
    }

    public void replaceCharactersInRange_withString_ (NSRange range, NSString aString)
    {
        OS.objc_msgSend(this.id_, OS.sel_replaceCharactersInRange_1withString_1, range, aString !is null ? aString.id_ : null);
    }

    public void scrollRangeToVisible (NSRange range)
    {
        OS.objc_msgSend(this.id_, OS.sel_scrollRangeToVisible_1, range);
    }

    public void selectAll (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_selectAll_1, sender !is null ? sender.id_ : null);
    }

    public NSRange selectedRange ()
    {
        NSRange result;
        OS.objc_msgSend_struct(&result, this.id_, OS.sel_selectedRange);
        return result;
    }

    public void setAlignment (NSTextAlignment mode)
    {
        OS.objc_msgSend(this.id_, OS.sel_setAlignment_1, mode);
    }

    public void setBackgroundColor (NSColor color)
    {
        OS.objc_msgSend(this.id_, OS.sel_setBackgroundColor_1, color !is null ? color.id_ : null);
    }

    public void setBaseWritingDirection (NSWritingDirection writingDirection)
    {
        OS.objc_msgSend(this.id_, OS.sel_setBaseWritingDirection_1, writingDirection);
    }

    public void setDelegate (id anObject)
    {
        OS.objc_msgSend(this.id_, OS.sel_setDelegate_1, anObject !is null ? anObject.id_ : null);
    }

    public void setDrawsBackground (bool flag)
    {
        OS.objc_msgSend(this.id_, OS.sel_setDrawsBackground_1, flag);
    }

    public void setEditable (bool flag)
    {
        OS.objc_msgSend(this.id_, OS.sel_setEditable_1, flag);
    }

    public void setFieldEditor (bool flag)
    {
        OS.objc_msgSend(this.id_, OS.sel_setFieldEditor_1, flag);
    }

    public void setFont_ (NSFont obj)
    {
        OS.objc_msgSend(this.id_, OS.sel_setFont_1, obj !is null ? obj.id_ : null);
    }

    public void setFont_range_ (NSFont font, NSRange range)
    {
        OS.objc_msgSend(this.id_, OS.sel_setFont_1range_1, font !is null ? font.id_ : null, range);
    }

    public void setHorizontallyResizable (bool flag)
    {
        OS.objc_msgSend(this.id_, OS.sel_setHorizontallyResizable_1, flag);
    }

    public void setImportsGraphics (bool flag)
    {
        OS.objc_msgSend(this.id_, OS.sel_setImportsGraphics_1, flag);
    }

    public void setMaxSize (NSSize newMaxSize)
    {
        OS.objc_msgSend(this.id_, OS.sel_setMaxSize_1, newMaxSize);
    }

    public void setMinSize (NSSize newMinSize)
    {
        OS.objc_msgSend(this.id_, OS.sel_setMinSize_1, newMinSize);
    }

    public void setRichText (bool flag)
    {
        OS.objc_msgSend(this.id_, OS.sel_setRichText_1, flag);
    }

    public void setSelectable (bool flag)
    {
        OS.objc_msgSend(this.id_, OS.sel_setSelectable_1, flag);
    }

    public void setSelectedRange (NSRange range)
    {
        OS.objc_msgSend(this.id_, OS.sel_setSelectedRange_1, range);
    }

    public void setString (NSString string)
    {
        OS.objc_msgSend(this.id_, OS.sel_setString_1, string !is null ? string.id_ : null);
    }

    public void setTextColor_ (NSColor color)
    {
        OS.objc_msgSend(this.id_, OS.sel_setTextColor_1, color !is null ? color.id_ : null);
    }

    public void setTextColor_range_ (NSColor color, NSRange range)
    {
        OS.objc_msgSend(this.id_, OS.sel_setTextColor_1range_1, color !is null ? color.id_ : null, range);
    }

    public void setUsesFontPanel (bool flag)
    {
        OS.objc_msgSend(this.id_, OS.sel_setUsesFontPanel_1, flag);
    }

    public void setVerticallyResizable (bool flag)
    {
        OS.objc_msgSend(this.id_, OS.sel_setVerticallyResizable_1, flag);
    }

    public void showGuessPanel (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_showGuessPanel_1, sender !is null ? sender.id_ : null);
    }

    public void sizeToFit ()
    {
        OS.objc_msgSend(this.id_, OS.sel_sizeToFit);
    }

    public NSString string ()
    {
        objc.id result = OS.objc_msgSend(this.id_, OS.sel_string);
        return result !is null ? new NSString(result) : null;
    }

    public void subscript (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_subscript_1, sender !is null ? sender.id_ : null);
    }

    public void superscript (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_superscript_1, sender !is null ? sender.id_ : null);
    }

    public NSColor textColor ()
    {
        objc.id result = OS.objc_msgSend(this.id_, OS.sel_textColor);
        return result !is null ? new NSColor(result) : null;
    }

    public void toggleRuler (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_toggleRuler_1, sender !is null ? sender.id_ : null);
    }

    public void underline (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_underline_1, sender !is null ? sender.id_ : null);
    }

    public void unscript (id sender)
    {
        OS.objc_msgSend(this.id_, OS.sel_unscript_1, sender !is null ? sender.id_ : null);
    }

    public bool usesFontPanel ()
    {
        return OS.objc_msgSend(this.id_, OS.sel_usesFontPanel) !is null;
    }

    public bool writeRTFDToFile (NSString path, bool flag)
    {
        return OS.objc_msgSend(this.id_, OS.sel_writeRTFDToFile_1atomically_1, path !is null ? path.id_ : null, flag) !is null;
    }

}