Removed those extra CVS tag lines in the header files of ghost (now I know what
authorMaarten Gribnau <mail@maartengribnau.com>
Sat, 28 Dec 2002 22:26:45 +0000 (22:26 +0000)
committerMaarten Gribnau <mail@maartengribnau.com>
Sat, 28 Dec 2002 22:26:45 +0000 (22:26 +0000)
Gilles meant) and added some extra doxygen tags I had lying around.
Removed the cocoa file since it was rubbish.
Maarten

35 files changed:
intern/ghost/GHOST_C-api.h
intern/ghost/GHOST_IEvent.h
intern/ghost/GHOST_IEventConsumer.h
intern/ghost/GHOST_ISystem.h
intern/ghost/GHOST_ITimerTask.h
intern/ghost/GHOST_IWindow.h
intern/ghost/GHOST_Rect.h
intern/ghost/GHOST_Types.h
intern/ghost/intern/GHOST_Buttons.cpp
intern/ghost/intern/GHOST_Buttons.h
intern/ghost/intern/GHOST_CallbackEventConsumer.h
intern/ghost/intern/GHOST_Debug.h
intern/ghost/intern/GHOST_DisplayManager.h
intern/ghost/intern/GHOST_DisplayManagerCarbon.h
intern/ghost/intern/GHOST_DisplayManagerWin32.h
intern/ghost/intern/GHOST_DisplayManagerX11.h
intern/ghost/intern/GHOST_Event.h
intern/ghost/intern/GHOST_EventButton.h
intern/ghost/intern/GHOST_EventCursor.h
intern/ghost/intern/GHOST_EventKey.h
intern/ghost/intern/GHOST_EventManager.h
intern/ghost/intern/GHOST_EventPrinter.h
intern/ghost/intern/GHOST_ModifierKeys.h
intern/ghost/intern/GHOST_System.h
intern/ghost/intern/GHOST_SystemCarbon.h
intern/ghost/intern/GHOST_SystemCocoa.h [deleted file]
intern/ghost/intern/GHOST_SystemWin32.h
intern/ghost/intern/GHOST_SystemX11.h
intern/ghost/intern/GHOST_TimerManager.h
intern/ghost/intern/GHOST_TimerTask.h
intern/ghost/intern/GHOST_Window.h
intern/ghost/intern/GHOST_WindowCarbon.h
intern/ghost/intern/GHOST_WindowManager.h
intern/ghost/intern/GHOST_WindowWin32.h
intern/ghost/intern/GHOST_WindowX11.h

index 2574b84e51cac23f3379da0b8a19ded44c3238bf..35191c4e45dca4e46a34640e83e9670b44a88d3e 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
+/**
+ * @file       GHOST_C-api.h
+ * GHOST C-API function and type declarations.
+ * The C-API wraps the C++ objects with the 
+ */
 
 #ifndef        GHOST_C_API_H
 #define GHOST_C_API_H
 extern "C" { 
 #endif
 
+/**
+ * Creates a &quot;handle&quot; for a C++ GHOST object.
+ * A handle is just an opaque pointer to an empty struct.
+ * In the API the pointer is casted to the actual C++ class.
+ * @param      name    Name of the handle to create.
+ */
 #define GHOST_DECLARE_HANDLE(name) typedef struct name##__ { int unused; } *name
 
 GHOST_DECLARE_HANDLE(GHOST_SystemHandle);
index eb60b5d2e53dfb00df0ed8b314cc9afb2f5faba7..4ec47c6d7327f25b8b04249b54d29245bc738b7d 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 31, 2001
+ * @file       GHOST_IEvent.h
+ * Declaration of GHOST_IEvent interface class.
  */
 
 #ifndef _GHOST_IEVENT_H_
 class GHOST_IWindow;
 
 /**
- * Interface class for events received the operating system.
+ * Interface class for events received from GHOST.
+ * You should not need to inherit this class. The system will pass these events
+ * to the GHOST_IEventConsumer::processEvent() method of event consumers.<br>
+ * Use the getType() method to retrieve the type of event and the getData() 
+ * method to get the event data out. Using the event type you can cast the 
+ * event data to the correct event dat structure.
+ * @see GHOST_IEventConsumer#processEvent
+ * @see GHOST_TEventType
  * @author     Maarten Gribnau
  * @date       May 31, 2001
  */
index ddb3de99953cd8ebad36ee3539c5772e60066788..4186d4c1cab2a7149f954fada516e6c4993c995f 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 14, 2001
+ * @file       GHOST_IEventConsumer.h
+ * Declaration of GHOST_IEventConsumer interface class.
  */
 
 #ifndef _GHOST_IEVENT_CONSUMER_H_
 
 /**
  * Interface class for objects interested in receiving events.
+ * Objects interested in events should inherit this class and implement the
+ * processEvent() method. They should then be registered with the system that
+ * they want to receive events. The system will call the processEvent() method
+ * for every installed event consumer to pass events.
+ * @see GHOST_ISystem#addEventConsumer
+ * @author     Maarten Gribnau
+ * @date       May 14, 2001
  */
 class GHOST_IEventConsumer
 {
@@ -56,9 +59,10 @@ public:
        }
 
        /**
-        * This method is called by an event producer when an event is available.
-        * @param event The event that can be handled or ignored.
-        * @return Indication as to whether the event was handled.
+        * This method is called by the system when it has events to dispatch.
+        * @see GHOST_ISystem#dispatchEvents
+        * @param       event   The event that can be handled or ignored.
+        * @return      Indication as to whether the event was handled.
         */
        virtual bool processEvent(GHOST_IEvent* event) = 0;
 };
index 56c32ee870a845afccf49a0082e3d72c01a48abb..29c37561604ac1ed3f94754b60d69872820ba459 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 30, 2001
+ * @file       GHOST_ISystem.h
+ * Main interface file for C++ Api with declaration of GHOST_ISystem interface
+ * class.
+ * Contains the doxygen documentation main page.
  */
 
 #ifndef _GHOST_ISYSTEM_H_
 
 class GHOST_IEventConsumer;
 
+/**
+ *! \mainpage GHOST Main Page
+ *
+ * \section intro Introduction
+ *
+ * GHOST is yet another acronym. It stands for "Generic Handy Operating System
+ * Toolkit". It has been created to replace the OpenGL utility tool kit  
+ * <a href="http://www.opengl.org/developers/documentation/glut.html">GLUT</a>.
+ * GLUT was used in <a href="http://www.blender3d.com">Blender</a> until the
+ * point that Blender needed to be ported to Apple's Mac OSX. Blender needed a
+ * number of modifications in GLUT to work but the GLUT sources for OSX were
+ * unavailable at the time. The decision was made to build our own replacement
+ * for GLUT. In those days, NaN Technologies BV was the company that developed 
+ * Blender. 
+ * <br><br>
+ * Enough history. What does GHOST have to offer?<br>
+ * In short: everything that Blender needed from GLUT to run on all it's supported
+ * operating systems and some extra's.
+ * This includes :
+ * <ul>
+ * <li> Time(r) management.</li>
+ * <li> Display/window management (windows are only created on the main display).
+ * <li> Event management.</li>
+ * <li> Cursor shape management (no custom cursors for now).</li>
+ * <li> Access to the state of the mouse buttons and the keyboard.</li>
+ * <li> Menus for windows with events generated when they are accessed (this is
+ *     work in progress).</li>
+ * </ul>
+ * Font management has been moved to a separate library.
+ *
+ * \section Platforms
+ *
+ * \section Building GHOST
+ *
+ * \section interface Interface
+ * GHOST has two programming interfaces:
+ * <ul>
+ * <li>The C-API. For programs written in C.</li>
+ * <li>The C++-API. For programs written in C++.</li>
+ * </ul>
+ * GHOST itself is writtem in C++ and the C-API is a wrapper around the C++ 
+ * API.
+ *
+ * \subsection cplusplus_api The C++ API consists of the following files:
+ * <ul>
+ * <li>GHOST_IEvent.h</li>
+ * <li>GHOST_IEventConsumer.h</li>
+ * <li>GHOST_IMenu.h (in progress)</li>
+ * <li>GHOST_IMenuBar.h (in progress)</li>
+ * <li>GHOST_ISystem.h</li>
+ * <li>GHOST_ITimerTask.h</li>
+ * <li>GHOST_IWindow.h</li>
+ * <li>GHOST_Rect.h</li>
+ * <li>GHOST_Types.h</li>
+ * </ul>
+ * For an example of using the C++-API, have a look at the GHOST_C-Test.cpp
+ * program in the ?/ghost/test/gears/ directory.
+ *
+ * \subsection c_api The C-API
+ * To use GHOST in programs written in C, include the file GHOST_C-API.h in 
+ * your program. This file includes the GHOST_Types.h file for all GHOST types
+ * and defines functions that give you access to the same functionality present
+ * in the C++ API.<br>
+ * For an example of using the C-API, have a look at the GHOST_C-Test.c program
+ * in the ?/ghost/test/gears/ directory.
+ *
+ * \section work Work in progress
+ *
+ * \subsection menus Menu functionality
+ * Menu bars with pull-down menu's for windows are in development in the 
+ * current version of GHOST. The file GHOST_MenuDependKludge.h contains a 
+ * setting to turn menu functionality on or off.
+ */
 /**
  * Interface for classes that provide access to the operating system.
  * There should be only one system class in an application.
  * Therefore, the routines to create and dispose the system are static.
  * Provides:
- * 1. Time(r) management.
- * 2. Display/window management (windows are only created on the main display for now).
- * 3. Event management.
- * 4. Access to the state of the mouse buttons and the keyboard.
+ *     -# Time(r) management.
+ *     -# Display/window management (windows are only created on the main display).
+ *     -# Event management.
+ *     -# Cursor shape management (no custom cursors for now).
+ *     -# Access to the state of the mouse buttons and the keyboard.
+ *     -# Menus for windows with events generated when they are accessed (this is
+ *     work in progress).
  * @author     Maarten Gribnau
  * @date       May 30, 2001
  */
-
 class GHOST_ISystem
 {
 public:
index a9adb447ee20e7811d65cb0572a7fd6df9691128..61a2b83011b662cf77901471248a873e89fb7431 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 31, 2001
+ * @file       GHOST_ITimerTask.h
+ * Declaration of GHOST_ITimerTask interface class.
  */
 
 #ifndef _GHOST_ITIMER_TASK_H_
 
 /**
  * Interface for a timer task.
+ * Timer tasks are created by the system and can be installed by the system.
+ * After installation, the timer callback-procedure or "timerProc" will be called 
+ * periodically. You should not need to inherit this class. It is passed to the
+ * application in the timer-callback.<br>
+ * <br>
+ * Note that GHOST processes timers in the UI thread. You should ask GHOST 
+ * process messages in order for the timer-callbacks to be called.
+ * @see GHOST_ISystem#installTimer
+ * @see GHOST_TimerProcPtr
  * @author     Maarten Gribnau
  * @date       May 31, 2001
  */
index ee576230890fbd674a50deab251f2418005b793e..a9331fadf59d8552d01ee62a3304ac0ea464302f 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 31, 2001
+ * @file       GHOST_IWindow.h
+ * Declaration of GHOST_IWindow interface class.
  */
 
 #ifndef _GHOST_IWINDOW_H_
 
 /**
  * Interface for GHOST windows.
- * Dimensions are given in screen coordinates that are relative to the upper-left corner of the screen. 
+ *
+ * You can create a window with the system's GHOST_ISystem::createWindow 
+ * method.
+ * @see GHOST_ISystem#createWindow
+ *
+ * There are two coordinate systems:
+ * <ul>
+ * <li>The screen coordinate system. The origin of the screen is located in the
+ * upper left corner of the screen.</li> 
+ * <li>The client rectangle coordinate system. The client rectangle of a window
+ * is the area that is drawable by the application (excluding title bars etc.).
+ * </li> 
+ * </ul>
  * @author     Maarten Gribnau
  * @date       May 31, 2001
  */
-
 class GHOST_IWindow
 {
 public:
index fdf88697d94281ab09871dc2492b95de2fa5f0c9..6b3035045720d5046e20e6903def956b2ccc396e 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 10, 2001
+ * @file       GHOST_Rect.h
+ * Declaration of GHOST_Rect rectangle class.
  */
 
 #ifndef _H_GHOST_Rect
index b48e8f2054c37328134ae7b149c1bc7b42a13194..cf148adea109e011a4c93704c468aa63cf1c38c5 100644 (file)
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
 
-/**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 31, 2001
- */
-
 #ifndef _GHOST_TYPES_H_
 #define _GHOST_TYPES_H_
 
index fb878ee6244141d47e19eb8c4feef6fb4a212b1b..96ac87925dbe562b7c468a31c88de2ce5d604788 100644 (file)
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
 
-/**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 31, 2001
- */
-
 #include "GHOST_Buttons.h"
 
 #ifdef HAVE_CONFIG_H
index d803ace435285a805741a616df6ec37efb494930..ddf5eebe6ddfeedb5e05e978c9e91258f3c6713a 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 15, 2001
+ * @file       GHOST_Buttons.h
+ * Declaration of GHOST_Buttons struct.
  */
 
 #ifndef _GHOST_BUTTONS_H_
 #include "GHOST_Types.h"
 
 
+/**
+ * This struct stores the state of the mouse buttons.
+ * Buttons can be set using button masks. 
+ * @author     Maarten Gribnau
+ * @date       May 15, 2001
+ */
 struct GHOST_Buttons {
     /**
      * Constructor.
index bdbbb7d7feafe77773a3ddd10c5c945725398787..eb54d1c0e14295ac3461236c71989e83068d8c64 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       October 25, 2001
+ * @file       GHOST_CallbackEventConsumer.h
+ * Declaration of GHOST_CallbackEventConsumer class.
  */
 
 #ifndef _GHOST_CALLBACK_EVENT_CONSUMER_H_
 #include "GHOST_C-api.h"
 
 /**
- * Interface class for objects interested in receiving events.
+ * Event consumer that will forward events to a call-back routine.
+ * Especially useful for the C-API.
+ * @author     Maarten Gribnau
+ * @date       October 25, 2001
  */
 class GHOST_CallbackEventConsumer : public GHOST_IEventConsumer
 {
 public:
        /**
         * Constructor.
+        * @param       eventCallback   The call-back routine invoked.
+        * @param       userData                The data passed back though the call-back routine.
         */
-       GHOST_CallbackEventConsumer(GHOST_EventCallbackProcPtr eventCallback, 
-                                                               GHOST_TUserDataPtr userData);
+       GHOST_CallbackEventConsumer(
+               GHOST_EventCallbackProcPtr eventCallback, 
+               GHOST_TUserDataPtr userData);
 
        /**
         * Destructor.
@@ -70,7 +72,9 @@ public:
        virtual bool processEvent(GHOST_IEvent* event);
 
 protected:
+       /** The call-back routine invoked. */
        GHOST_EventCallbackProcPtr      m_eventCallback;
+       /** The data passed back though the call-back routine. */
        GHOST_TUserDataPtr                      m_userData;
 };
 
index b63aaedfdecaa02170fc65500d09390b0de379e4..ceb29b92df3b3b9fe2e1eda8975eb62d649c16b9 100644 (file)
  */
 
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       June 1, 2001
+ * @file       GHOST_Debug.h
+ * Macro's used in GHOST debug target.
  */
 
 #ifndef _GHOST_DEBUG_H_
index a206243df79a89be7c91d54a28a4fc2abcc7fb43..d7133f4401fb27012770146bd6fe5e28ee9f5d16 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       September 21, 2001
+ * @file       GHOST_DisplayManager.h
+ * Declaration of GHOST_DisplayManager class.
  */
 
 #ifndef _GHOST_DISPLAY_MANAGER_H_
@@ -50,8 +46,9 @@
 
 /**
  * Manages system displays  (platform independent implementation).
+ * @author     Maarten Gribnau
+ * @date       September 21, 2001
  */
-
 class GHOST_DisplayManager
 {
 public:
index 644761f5c2a7b0cc922a8a329a20f52dbb5af929..1523980f38f8443f858158a5ed3fc3bcd299d5fc 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       September 21, 2001
+ * @file       GHOST_DisplayManagerCarbon.h
+ * Declaration of GHOST_DisplayManagerCarbon class.
  */
 
 #ifndef _GHOST_DISPLAY_MANAGER_CARBON_H_
 
 /**
  * Manages system displays  (Mac OSX/Carbon implementation).
+ * @see GHOST_DisplayManager
+ * @author     Maarten Gribnau
+ * @date       September 21, 2001
  */
-
 class GHOST_DisplayManagerCarbon : public GHOST_DisplayManager
 {
 public:
index 93be57c72cda310e0c79c5c9bc6d9aa55796fad1..71fc56257f8f7404ea0f2805c3b8ad2f18e9d282 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       September 21, 2001
+ * @file       GHOST_DisplayManagerWin32.h
+ * Declaration of GHOST_DisplayManagerWin32 class.
  */
 
 #ifndef _GHOST_DISPLAY_MANAGER_WIN32_H_
@@ -49,8 +45,9 @@
 
 /**
  * Manages system displays  (WIN32 implementation).
+ * @author     Maarten Gribnau
+ * @date       September 21, 2001
  */
-
 class GHOST_DisplayManagerWin32 : public GHOST_DisplayManager
 {
 public:
index c6babfc6b02291f75f6745ed45c35778d54c68d1..18226a25e74353d860d48359252408c8ab64ba1b 100755 (executable)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       September 21, 2001
+ * @file       GHOST_DisplayManagerX11.h
+ * Declaration of GHOST_DisplayManagerX11 class.
  */
 
 #ifndef _GHOST_DISPLAY_MANAGER_X11_H_
@@ -47,8 +43,9 @@ class GHOST_SystemX11;
 
 /**
  * Manages system displays  (X11 implementation).
+ * @author     Laurence Bourn
+ * @date       October 26, 2001
  */
-
 class GHOST_DisplayManagerX11 : public GHOST_DisplayManager
 {
 public:
index 05c133cb332325d08e45bdd0cfd6873b4d356981..e4844f9bab50456bde4f81be8f21adc6496982b6 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 11, 2001
+ * @file       GHOST_Event.h
+ * Declaration of GHOST_Event class.
  */
 
 #ifndef _GHOST_EVENT_H_
@@ -48,7 +44,6 @@
  * @author     Maarten Gribnau
  * @date       May 11, 2001
  */
-
 class GHOST_Event : public GHOST_IEvent
 {
 public:
index 013aa92e2fb766b546d6108e549c94ed2e66a980..c808fd444301e7dd555ad8074569931a059497ba 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 11, 2001
+ * @file       GHOST_EventButton.h
+ * Declaration of GHOST_EventButton class.
  */
 
 #ifndef _GHOST_EVENT_BUTTON_H_
index 5d14e28971501a1b112ed5e911ed26959b2b2c25..a174242653e08cdc58009c9ce48d41aaeb3398c6 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 11, 2001
+ * @file       GHOST_EventCursor.h
+ * Declaration of GHOST_EventCursor class.
  */
 
 #ifndef _GHOST_EVENT_CURSOR_H_
index d31ba84542694bdd7747e3605f9bd299b5c0a7d3..b170d5a9a4812bc0dc31ef95157a05dc0fc6042d 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 11, 2001
+ * @file       GHOST_EventKey.h
+ * Declaration of GHOST_EventKey class.
  */
 
 #ifndef _GHOST_EVENT_KEY_H_
index 7f955eb42dfa1140f8eb8828af50bb65dd9d4737..b8c3812b8e1bf3a8dcb9440f5759bc15a7e4b4e8 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 14, 2001
+ * @file       GHOST_EventManager.h
+ * Declaration of GHOST_EventManager class.
  */
 
 #ifndef _GHOST_EVENT_MANAGER_H_
index a943742026df1d2d4d71a82fdba1ae68dc986267..9838d2fb6d5dc945ffc5382f7615f0543235c3ca 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 14, 2001
+ * @file       GHOST_EventPrinter.h
+ * Declaration of GHOST_EventPrinter class.
  */
 
 #ifndef _GHOST_EVENT_PRINTER_H_
index 6b1e3c2e9704aec73b5ba82a5624b7b86d38ece2..067b66dd1065bad3fb51020593bae70b77f131da 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 17, 2001
+ * @file       GHOST_ModifierKeys.h
+ * Declaration of GHOST_ModifierKeys struct.
  */
 
 #ifndef _GHOST_MODIFIER_KEYS_H_
 
 #include "GHOST_Types.h"
 
+/**
+ * Stores the state of modifier keys.
+ * Discriminates between left and right modifier keys.
+ * @author     Maarten Gribnau
+ * @date       May 17, 2001
+ */
 struct GHOST_ModifierKeys
 {
     /**
index 533665b6671fa9bb3d987ef6d81d3b3cdd08ba76..85e7b2d6b44224ea9ffd404d5ad77aec0a0a8e76 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 7, 2001
+ * @file       GHOST_System.h
+ * Declaration of GHOST_System class.
  */
 
 #ifndef _GHOST_SYSTEM_H_
@@ -57,21 +53,14 @@ class GHOST_Window;
 class GHOST_WindowManager;
 
 /**
- * Implementation of platform independent functionality of the GHOST_ISystem interface.
- * GHOST_System is an abstract base class because not all methods of GHOST_ISystem are implemented.
- * There should be only one system class in an application.
- * Therefore, the routines to create and dispose the system are static.
- * Provides:
- * 1. Time(r) management.
- * 2. Display/window management (windows are only created on the main display for now).
- * 3. Event management.
- * 4. Cursor shape management (no custom cursors for now).
- * 5. Access to the state of the mouse buttons and the keyboard.
+ * Implementation of platform independent functionality of the GHOST_ISystem
+ * interface.
+ * GHOST_System is an abstract class because not all methods of GHOST_ISystem
+ * are implemented.
  * @see GHOST_ISystem.
  * @author     Maarten Gribnau
  * @date       May 7, 2001
  */
-
 class GHOST_System : public GHOST_ISystem
 {
 protected:
index b8316a2d46caebd78b3ba61476342879c957b5bc..ec1ff338c8f235e000cecf722bc8ed1661d02cbd 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 10, 2001
+ * @file       GHOST_SystemCarbon.h
+ * Declaration of GHOST_SystemCarbon class.
  */
 
 #ifndef _GHOST_SYSTEM_CARBON_H_
diff --git a/intern/ghost/intern/GHOST_SystemCocoa.h b/intern/ghost/intern/GHOST_SystemCocoa.h
deleted file mode 100644 (file)
index 96199af..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/**
- * $Id$
- * ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version. The Blender
- * Foundation also sells licenses for use in proprietary software under
- * the Blender License.  See http://www.blender.org/BL/ for information
- * about this.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL/BL DUAL LICENSE BLOCK *****
- */
-
-/**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 22, 2001
- */
-
-#ifndef _GHOST_SYSTEM_CARBON_H_
-#define _GHOST_SYSTEM_CARBON_H_
-
-#ifndef __APPLE__
-#error Apple OSX only!
-#endif // __APPLE__
-
-#include "GHOST_System.h"
-#include "GHOST_Keys.h"
-
-#include <Carbon/Carbon.h>
-
-class GHOST_EventCursor;
-class GHOST_EventKey;
-class GHOST_EventWindow;
-
-/**
- * OSX/Cocoa Implementation of GHOST_System class.
- * @see GHOST_System.
- * @author     Maarten Gribnau
- * @date       May 21, 2001
- */
-class GHOST_SystemCarbon : public GHOST_System {
-};
-
-#endif // _GHOST_SYSTEM_CARBON_H_
-
index f38a104de3dff67065d260fa53d1898e86e557a9..9d48c5c7cdced0676a13dbf978eddc6ada7422d2 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 10, 2001
+ * @file       GHOST_SystemWin32.h
+ * Declaration of GHOST_SystemWin32 class.
  */
 
 #ifndef _GHOST_SYSTEM_WIN32_H_
index ae828a9d4dac95f65135762ef7aafbe66c82001e..6c98ba714339b378064eded5a9f8de7f7a0381ec 100755 (executable)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 10, 2001
+ * @file       GHOST_SystemCarbon.h
+ * Declaration of GHOST_SystemCarbon class.
  */
 
 #ifndef _GHOST_SYSTEM_X11_H_
index fe843442661692265a081c7987b75834f4e1c946..31016032dd2dbb2d0900b8006d5af7d92ad3e9c4 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
+/**
+ * @file       GHOST_SystemX11.h
+ * Declaration of GHOST_SystemX11 class.
+ */
 
 /**
 
  * $Id$
  * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 31, 2001
  */
 
 #ifndef _GHOST_TIMER_MANAGER_H_
@@ -55,6 +57,8 @@ class GHOST_TimerTask;
  * Manages a list of timer tasks.
  * Timer tasks added are owned by the manager.
  * Don't delete timer task objects.
+ * @author     Maarten Gribnau
+ * @date       May 31, 2001
  */
 class GHOST_TimerManager
 {
index bbcb75f4dcd73134826a38f751aef8c392042fcd..49bbe5e09abac4cc9dabb4d70c6028f52486f8ab 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 28, 2001
+ * @file       GHOST_TimerTask.h
+ * Declaration of GHOST_TimerTask class.
  */
 
 #ifndef _GHOST_TIMER_TASK_H_
index 2947f94802bf32649a7392425a851f359e3ff7ca..be4dc808981d727d5a2c5f297bb0637370c8da93 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 7, 2001
+ * @file       GHOST_Window.h
+ * Declaration of GHOST_Window class.
  */
 
 #ifndef _GHOST_WINDOW_H_
@@ -46,14 +42,38 @@ class STR_String;
 
 /**
  * Platform independent implementation of GHOST_IWindow.
- * Dimensions are given in screen coordinates that are relative to the upper-left corner of the screen. 
+ * Dimensions are given in screen coordinates that are relative to the 
+ * upper-left corner of the screen.
+ * Implements part of the GHOST_IWindow interface and adds some methods to
+ * be implemented by childs of this class.
  * @author     Maarten Gribnau
  * @date       May 7, 2001
  */
-
 class GHOST_Window : public GHOST_IWindow
 {
 public:
+       /**
+        * @section Interface inherited from GHOST_IWindow left for derived class
+        * implementation.
+        * virtual      bool getValid() const = 0;
+        * virtual void setTitle(const STR_String& title) = 0;
+        * virtual void getTitle(STR_String& title) const = 0;
+        * virtual      void getWindowBounds(GHOST_Rect& bounds) const = 0;
+        * virtual      void getClientBounds(GHOST_Rect& bounds) const = 0;
+        * virtual      GHOST_TSuccess setClientWidth(GHOST_TUns32 width) = 0;
+        * virtual      GHOST_TSuccess setClientHeight(GHOST_TUns32 height) = 0;
+        * virtual      GHOST_TSuccess setClientSize(GHOST_TUns32 width, GHOST_TUns32 height) = 0;
+        * virtual      void screenToClient(GHOST_TInt32 inX, GHOST_TInt32 inY, GHOST_TInt32& outX, GHOST_TInt32& outY) const = 0;
+        * virtual      void clientToScreen(GHOST_TInt32 inX, GHOST_TInt32 inY, GHOST_TInt32& outX, GHOST_TInt32& outY) const = 0;
+        * virtual GHOST_TWindowState getState() const = 0;
+        * virtual GHOST_TSuccess setState(GHOST_TWindowState state) = 0;
+        * virtual GHOST_TWindowOrder getOrder(void) = 0;
+        * virtual GHOST_TSuccess setOrder(GHOST_TWindowOrder order) = 0;
+        * virtual GHOST_TSuccess swapBuffers() = 0;
+        * virtual GHOST_TSuccess activateDrawingContext() = 0;
+        * virtual GHOST_TSuccess invalidate() = 0;
+        */
+
        /**
         * Constructor.
         * Creates a new window and opens it.
index 8fb4663b3dfe31a144b9d3a4537c3e316021ade1..ce1dd7c1007b0df423ff1f4bd79a3c591cb917e8 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 10, 2001
+ * @file       GHOST_WindowCarbon.h
+ * Declaration of GHOST_WindowCarbon class.
  */
 
 #ifndef _GHOST_WINDOW_CARBON_H_
 
 /**
  * Window on Mac OSX/Carbon.
+ * WILL BE ADDED:
+ * Carbon windows have a size widget in the lower right corner of the window.
+ * To force it to be visible, the height of the client rectangle is reduced so
+ * that applications do not draw in that area. GHOST will manage that area
+ * which is called the gutter.
+ * END WILL BE ADDED
+ * When OpenGL contexts are active, GHOST will use AGL_BUFFER_RECT to prevent
+ * OpenGL drawing outside the reduced client rectangle.
  * @author     Maarten Gribnau
  * @date       May 23, 2001
  */
-
 class GHOST_WindowCarbon : public GHOST_Window {
 public:
        /**
index f5af43e5cdc561e88286f9878a688a6506d25d07..a88b3f792ea42c89d91a6297803b49bffd2cf1ae 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 11, 2001
+ * @file       GHOST_WindowManager.h
+ * Declaration of GHOST_WindowManager class.
  */
 
 #ifndef _GHOST_WINDOW_MANAGER_H_
 #include "GHOST_Rect.h"
 #include "GHOST_IWindow.h"
 
-//class GHOST_Window;
 
 /**
  * Manages system windows (platform independent implementation).
+ * @author     Maarten Gribnau
+ * @date       May 11, 2001
  */
-
 class GHOST_WindowManager
 {
 public:
index 2663869ea47c927d9e8c16c695058a8c593506d8..3d45d2afa5df01ce6ff1f8f05f90b3013275fea5 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 10, 2001
+ * @file       GHOST_WindowWin32.h
+ * Declaration of GHOST_WindowWin32 class.
  */
 
 #ifndef _GHOST_WINDOW_WIN32_H_
@@ -54,7 +50,6 @@
  * @author     Maarten Gribnau
  * @date       May 10, 2001
  */
-
 class GHOST_WindowWin32 : public GHOST_Window {
 public:
        /**
index 5a56a9a82e91ba282491fad9e2edd4a9445c1be6..0b0b8d596d55a9264c7d3ce90189421384fea739 100755 (executable)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-
 /**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author     Maarten Gribnau
- * @date       May 7, 2001
+ * @file       GHOST_WindowX11.h
+ * Declaration of GHOST_WindowX11 class.
  */
 
 #ifndef _GHOST_WINDOWX11_H_