]> git.saurik.com Git - wxWidgets.git/blobdiff - src/qt/cursor.cpp
Merged some STC fixes over to the main branch
[wxWidgets.git] / src / qt / cursor.cpp
index 76f245408016ac7079591ddd0086b0b863cb8bee..29b7d5c996d67eb887efa80dea96f82220a91d9a 100644 (file)
 /////////////////////////////////////////////////////////////////////////////
 // Name:        cursor.cpp
-// Purpose:
-// Author:      Robert Roebling
-// Created:     01/02/97
-// Id:
-// Copyright:   (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
+// Purpose:     wxCursor class
+// Author:      AUTHOR
+// Modified by:
+// Created:     ??/??/98
+// RCS-ID:      $Id$
+// Copyright:   (c) AUTHOR
 // Licence:    wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-
 #ifdef __GNUG__
 #pragma implementation "cursor.h"
 #endif
 
 #include "wx/cursor.h"
 
-//-----------------------------------------------------------------------------
-// wxCursor
-//-----------------------------------------------------------------------------
-
-class wxCursorRefData: public wxObjectRefData
-{
-  public:
-  
-    wxCursorRefData(void);
-    ~wxCursorRefData(void);
-  
-};
-
-wxCursorRefData::wxCursorRefData(void)
-{
-};
-
-wxCursorRefData::~wxCursorRefData(void)
-{
-};
-
-//-----------------------------------------------------------------------------
-
-#define M_CURSORDATA ((wxCursorRefData *)m_refData)
-
-IMPLEMENT_DYNAMIC_CLASS(wxCursor,wxObject)
-
-wxCursor::wxCursor(void)
-{
-};
-
-wxCursor::wxCursor( int WXUNUSED(cursorId) )
-{
-  m_refData = new wxCursorRefData();
-};
-
-wxCursor::wxCursor( const wxCursor &cursor )
-{
-  Ref( cursor );
-};
-
-wxCursor::wxCursor( const wxCursor *cursor )
-{
-  UnRef();
-  if (cursor) Ref( *cursor );
-};
-
-wxCursor::~wxCursor(void)
-{
-};
-
-wxCursor& wxCursor::operator = ( const wxCursor& cursor )
-{
-  if (*this == cursor) return (*this); 
-  Ref( cursor ); 
-  return *this; 
-};
-
-bool wxCursor::operator == ( const wxCursor& cursor )
-{
-  return m_refData == cursor.m_refData; 
-};
-
-bool wxCursor::operator != ( const wxCursor& cursor )
-{
-  return m_refData != cursor.m_refData; 
-};
-
-bool wxCursor::Ok(void) const
-{
-  return TRUE;
-};
-
-//-----------------------------------------------------------------------------
-// busy cursor routines
-//-----------------------------------------------------------------------------
-
-bool g_isBusy = FALSE;
-
-void wxEndBusyCursor(void)
-{
-  g_isBusy = FALSE;
-};
-
-void wxBeginBusyCursor( wxCursor *WXUNUSED(cursor) )
-{
-  g_isBusy = TRUE;
-};
-
-bool wxIsBusy(void)
-{
-  return g_isBusy;
-};
-
-void wxSetCursor( const wxCursor& cursor )
-{
-  extern wxCursor *g_globalCursor;
-  if (g_globalCursor) (*g_globalCursor) = cursor;
-
-  if (cursor.Ok()) {};
-};
+IMPLEMENT_DYNAMIC_CLASS(wxCursor, wxBitmap)
+
+wxCursorRefData::wxCursorRefData()
+{
+    m_width = 32; m_height = 32;
+
+/* TODO
+    m_hCursor = 0 ;
+*/
+}
+
+wxCursorRefData::~wxCursorRefData()
+{
+    // TODO: destroy cursor
+}
+
+// Cursors
+wxCursor::wxCursor()
+{
+}
+
+wxCursor::wxCursor(const char WXUNUSED(bits)[], int WXUNUSED(width), int WXUNUSED(height),
+    int WXUNUSED(hotSpotX), int WXUNUSED(hotSpotY), const char WXUNUSED(maskBits)[])
+{
+}
+
+wxCursor::wxCursor(const wxString& cursor_file, long flags, int hotSpotX, int hotSpotY)
+{
+    m_refData = new wxIconRefData;
+
+    // TODO: create cursor from a file
+}
+
+// Cursors by stock number
+wxCursor::wxCursor(int cursor_type)
+{
+  m_refData = new wxIconRefData;
+
+/* TODO
+  switch (cursor_type)
+  {
+    case wxCURSOR_WAIT:
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_WAIT);
+      break;
+    case wxCURSOR_IBEAM:
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_IBEAM);
+      break;
+    case wxCURSOR_CROSS:
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_CROSS);
+      break;
+    case wxCURSOR_SIZENWSE:
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_SIZENWSE);
+      break;
+    case wxCURSOR_SIZENESW:
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_SIZENESW);
+      break;
+    case wxCURSOR_SIZEWE:
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_SIZEWE);
+      break;
+    case wxCURSOR_SIZENS:
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_SIZENS);
+      break;
+    case wxCURSOR_CHAR:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_ARROW);
+      break;
+    }
+    case wxCURSOR_HAND:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_HAND");
+      break;
+    }
+    case wxCURSOR_BULLSEYE:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_BULLSEYE");
+      break;
+    }
+    case wxCURSOR_PENCIL:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_PENCIL");
+      break;
+    }
+    case wxCURSOR_MAGNIFIER:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_MAGNIFIER");
+      break;
+    }
+    case wxCURSOR_NO_ENTRY:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_NO_ENTRY");
+      break;
+    }
+    case wxCURSOR_LEFT_BUTTON:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_ARROW);
+      break;
+    }
+    case wxCURSOR_RIGHT_BUTTON:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_ARROW);
+      break;
+    }
+    case wxCURSOR_MIDDLE_BUTTON:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_ARROW);
+      break;
+    }
+    case wxCURSOR_SIZING:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_SIZING");
+      break;
+    }
+    case wxCURSOR_WATCH:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_WATCH");
+      break;
+    }
+    case wxCURSOR_SPRAYCAN:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_ROLLER");
+      break;
+    }
+    case wxCURSOR_PAINT_BRUSH:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_PBRUSH");
+      break;
+    }
+    case wxCURSOR_POINT_LEFT:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_PLEFT");
+      break;
+    }
+    case wxCURSOR_POINT_RIGHT:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_PRIGHT");
+      break;
+    }
+    case wxCURSOR_QUESTION_ARROW:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_QARROW");
+      break;
+    }
+    case wxCURSOR_BLANK:
+    {
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), "wxCURSOR_BLANK");
+      break;
+    }
+    default:
+    case wxCURSOR_ARROW:
+      M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(NULL, IDC_ARROW);
+      break;
+  }
+*/
+
+}
+
+wxCursor::~wxCursor()
+{
+}
+
+// Global cursor setting
+void wxSetCursor(const wxCursor& cursor)
+{
+  // TODO (optional on platforms with no global cursor)
+}