2015-04-28 13:40:51 -05:00
// 7 april 2015
/*
This file assumes that you have imported < Cocoa / Cocoa . h > and " ui.h " beforehand . It provides API - specific functions for interfacing with foreign controls on Mac OS X .
*/
# ifndef __UI_UI_DARWIN_H__
# define __UI_UI_DARWIN_H__
2015-05-02 19:51:00 -05:00
// uiDarwinMakeControl() initializes the given uiControl with the given Cocoa control inside.
2015-04-28 13:40:51 -05:00
// The second parameter should come from [RealControlType class].
// The two scrollView parameters allow placing scrollbars on the new control.
// The two onDestroy parameters define a function and its parameter to call when the widget is destroyed.
2015-05-02 19:51:00 -05:00
extern void uiDarwinMakeControl ( uiControl * c , Class class , BOOL inScrollView , BOOL scrollViewHasBorder , void ( * onDestroy ) ( void * ) , void * onDestroyData ) ;
2015-04-28 13:40:51 -05:00
2015-05-07 11:58:33 -05:00
// You can use this function from within your control implementations to return text strings that can be freed with uiFreeText().
2015-04-28 13:40:51 -05:00
extern char * uiDarwinNSStringToText ( NSString * ) ;
struct uiSizingSys {
// this structure currently left blank
} ;
2015-05-04 00:14:18 -05:00
struct uiControlSysFuncParams {
int Func ;
} ;
enum {
// These should enable and disable the uiControl while preserving the user enable/disable setting.
// These are needed because enabling and disabling of views on OS X is available on a view-by-view basis, and is not transitive to subviews by default as a result.
uiDarwinSysFuncContainerEnable ,
uiDarwinSysFuncContainerDisable ,
} ;
2015-04-28 13:40:51 -05:00
# endif