OS/2 Updates for this week.
authorDavid Webster <Dave.Webster@bhmi.com>
Fri, 13 Jul 2001 17:41:54 +0000 (17:41 +0000)
committerDavid Webster <Dave.Webster@bhmi.com>
Fri, 13 Jul 2001 17:41:54 +0000 (17:41 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/os2/dc.h
include/wx/os2/dcprint.h
include/wx/os2/frame.h
include/wx/os2/settings.h
include/wx/os2/setup.h
include/wx/os2/setup0.h

index 26c20594f70281758f82c8191249a39eae8e2d40..89377fd23c7c44c3257e10ecd85a8cc7f22e37b0 100644 (file)
 
 #define     wx_round(a)    (int)((a)+.5)
 
+#if wxUSE_DC_CACHEING
+/*
+ * Cached blitting, maintaining a cache
+ * of bitmaps required for transparent blitting
+ * instead of constant creation/deletion
+ */
+
+class wxDCCacheEntry : public wxObject
+{
+public:
+    wxDCCacheEntry( WXHBITMAP hBitmap
+                   ,int       nWidth
+                   ,int       nHeight
+                   ,int       nDepth
+                  );
+    wxDCCacheEntry( HPS   hPS
+                   ,int   nDepth
+                  );
+    ~wxDCCacheEntry();
+
+    WXHBITMAP                       m_hBitmap;
+    HPS                             m_hPS;
+    int                             m_nWidth;
+    int                             m_nHeight;
+    int                             m_nDepth;
+}; // end of CLASS wxDCCacheEntry
+#endif
+
 class WXDLLEXPORT wxDC : public wxDCBase
 {
     DECLARE_DYNAMIC_CLASS(wxDC)
@@ -159,6 +187,20 @@ public:
 
     void            UpdateClipBox();
 
+#if wxUSE_DC_CACHEING
+    static wxDCCacheEntry* FindBitmapInCache( HPS hPS
+                                             ,int nWidth
+                                             ,int nHeight
+                                            );
+    static wxDCCacheEntry* FindDCInCache( wxDCCacheEntry* pNotThis
+                                         ,HPS             hPS
+                                        );
+
+    static void AddToBitmapCache(wxDCCacheEntry* pEntry);
+    static void AddToDCCache(wxDCCacheEntry* pEntry);
+    static void ClearCache(void);
+#endif
+
 protected:
     virtual void DoFloodFill( wxCoord         vX
                              ,wxCoord         vY
@@ -250,8 +292,8 @@ protected:
                         ,wxCoord vYsrc
                         ,int     nRop = wxCOPY
                         ,bool    bUseMask = FALSE
-                        ,wxCoord xsrcMask = -1
-                        ,wxCoord ysrcMask = -1
+                        ,wxCoord vXsrcMask = -1
+                        ,wxCoord vYsrcMask = -1
                        );
 
     virtual void DoSetClippingRegionAsRegion(const wxRegion& rRegion);
@@ -337,6 +379,11 @@ public:
     WXHBRUSH                        m_hOldBrush;
     WXHFONT                         m_hOldFont;
     WXHPALETTE                      m_hOldPalette;
-};
+
+#if wxUSE_DC_CACHEING
+    static wxList                   m_svBitmapCache;
+    static wxList                   m_svDCCache;
+#endif
+}; // end of CLASS wxDC
 #endif
     // _WX_DC_H_
index fef20ef34760aea0185cc94e89f6257ec4c98300..c91a88849e471aede764333074af5bbd470ae126 100644 (file)
@@ -52,8 +52,8 @@ protected:
                         ,wxCoord vYsrc
                         ,int     nRop = wxCOPY
                         ,bool    bUseMask = FALSE
-                        ,wxCoord xsrcMask = -1
-                        ,wxCoord ysrcMask = -1
+                        ,wxCoord vXsrcMask = -1
+                        ,wxCoord vYsrcMask = -1
                        );
 
     // init the dc
index 38d5f57600e50b02c0598c8e2f5a23b511b46961..cd9ebaf89adbca141e845d3d9638e0394d6fc57d 100644 (file)
@@ -178,10 +178,13 @@ protected:
     // helper
     void         DetachMenuBar(void);
 
+#if wxUSE_MENUS_NATIVE
+    // perform MSW-specific action when menubar is changed
+    virtual void AttachMenuBar(wxMenuBar* pMenubar);
     // a plug in for MDI frame classes which need to do something special when
     // the menubar is set
     virtual void InternalSetMenuBar(void);
-
+#endif
     // propagate our state change to all child frames
     void IconizeChildFrames(bool bIconize);
 
index 2164abb8de6cf84e65d615125105d84d21e566ef..03b343faad11b7ab17171c5bf6a007b8dfb2a885 100644 (file)
@@ -24,15 +24,6 @@ public:
     static wxColour    GetSystemColour(int index);
     static wxFont      GetSystemFont(int index);
     static int         GetSystemMetric(int index);
-    static void        SetOption( const wxString& rsName
-                                 ,const wxString& rsValue
-                                );
-    static void        SetOption( const wxString& rsName
-                                 ,int             nValue
-                                );
-    static wxString    GetOption(const wxString& rsName) ;
-    static int         GetOptionInt(const wxString& rsName) ;
-    static bool        HasOption(const wxString& rsName) ;
 }; // end of CLASS wxSystemSettings
 
 #endif
index 1fdeed452fc0edcbea7f55917f6a28ecf299f2eb..3ef0298525a6559bbd0dfc59377c010f56f53d6a 100644 (file)
 #define wxUSE_STOPWATCH    1
 #define wxUSE_TAB_DIALOG   1
 #define wxUSE_WXHTML_HELP  1
-
 #define wxUSE_BUTTONBAR     1
                                     // Define 1 to use buttonbar classes (enhanced toolbar
                                     // for MS Windows)
index 283a68a07570e6a39d8509b0d14753ea69d4492b..3ef0298525a6559bbd0dfc59377c010f56f53d6a 100644 (file)
 
 #define wxUSE_NET_API          1 // Utilize OS/2's UPM netapi's
 
+#define wxUSE_DATETIME         1 // Utilize the date-time classes
+
 #define wxUSE_CONFIG           1
                                 // Use wxConfig, with CreateConfig in wxApp
+
 #define wxUSE_POSTSCRIPT  1
                             // 0 for no PostScript device context
 #define wxUSE_AFM_FOR_POSTSCRIPT 1
 #define wxUSE_DRAG_AND_DROP 1
                                 // 0 for no drag and drop
 
+#define wxUSE_CONTROLS     1    // Do not change
+#define wxUSE_POPUPWIN     0    // OS/2 does not use this
+
+// Recommended setting: 1
+#define wxUSE_BUTTON       1    // wxButton
+#define wxUSE_BMPBUTTON    1    // wxBitmapButton
+#define wxUSE_CALENDARCTRL 1    // wxCalendarCtrl
+#define wxUSE_CHECKBOX     1    // wxCheckBox
+#define wxUSE_CHECKLISTBOX 1    // wxCheckListBox (requires wxUSE_OWNER_DRAWN)
+#define wxUSE_CHOICE       1    // wxChoice
+#define wxUSE_COMBOBOX     1    // wxComboBox
+#define wxUSE_GAUGE        1    // wxGauge
+#define wxUSE_LISTBOX      1    // wxListBox
+#define wxUSE_LISTCTRL     1    // wxListCtrl
+#define wxUSE_RADIOBOX     1    // wxRadioBox
+#define wxUSE_RADIOBTN     1    // wxRadioButton
+#define wxUSE_SCROLLBAR    1    // wxScrollBar
+#define wxUSE_SLIDER       1    // wxSlider
+#define wxUSE_SPINBTN      1    // wxSpinButton
+#define wxUSE_SPINCTRL     1    // wxSpinCtrl
+#define wxUSE_STATBOX      1    // wxStaticBox
+#define wxUSE_STATLINE     1    // wxStaticLine
+#define wxUSE_STATTEXT     1    // wxStaticText
+#define wxUSE_STATBMP      1    // wxStaticBitmap
+#define wxUSE_TEXTCTRL     1    // wxTextCtrl
+#define wxUSE_TOGGLEBTN    1    // requires wxButton
+#define wxUSE_TREECTRL     1    // wxTreeCtrl
+#define wxUSE_CHOICEDLG    1
+#define wxUSE_COLOURDLG    1
+#define wxUSE_DATAOBJ      1
+#define wxUSE_FILEDLG      1
+#define wxUSE_FONTDLG      1
+#define wxUSE_FONTMAP      1
+#define wxUSE_GRID         1
+#define wxUSE_IMAGLIST     1
+#define wxUSE_LOGGUI       1
+#define wxUSE_LOGWINDOW    1
+#define wxUSE_LOG_DIALOG   1
+#define wxUSE_MIMETYPE     1
+#define wxUSE_MSGDLG       1
+#define wxUSE_NOTEBOOK     1
+#define wxUSE_SPLITTER     1
+#define wxUSE_STOPWATCH    1
+#define wxUSE_TAB_DIALOG   1
+#define wxUSE_WXHTML_HELP  1
 #define wxUSE_BUTTONBAR     1
                                     // Define 1 to use buttonbar classes (enhanced toolbar
                                     // for MS Windows)
-#define wxUSE_GAUGE         1
-                                    // Define 1 to use Microsoft's gauge (Windows)
-                                    // or Bull's gauge (Motif) library (both in contrib).
-#define wxUSE_COMBOBOX      1
-                                    // Define 1 to use COMBOXBOX control (Windows)
-                                    // or FWW's ComboBox widget (Motif).
-#define wxUSE_CHOICE      1
-                                    // Define 1 to use CHOICE
 
 #define wxUSE_RADIOBUTTON   1
                                     // Define 1 to use radio button control
-#define wxUSE_RADIOBTN   1
-                                    // Unfortunately someone introduced this one, too
 
 #define wxUSE_SCROLLBAR   1
                                     // Define 1 to compile contributed wxScrollBar class
 
-#define wxUSE_CHECKBOX 1
-                                    // Define 1 to compile checkbox
-
-#define wxUSE_LISTBOX 1
-                                    // Define 1 to compile listbox
-
-#define wxUSE_SPINBTN 1
-                                    // Define 1 to compile spin button
-
-// use wxStaticLine class (separator line in the dialog)?
-#define wxUSE_STATLINE 1
-
-#define wxUSE_CHECKLISTBOX 1
-                                    // Define 1 to compile check listbox
 #define wxUSE_CARET       1
                                     // Define 1 to use wxCaret class
 #define wxUSE_TREECTRL    1
 #define wxUSE_ZIPSTREAM     1
                                   // input stream for reading from zip archives
 
+#define wxUSE_TIMER         1     // use the timer class
 /*
  * Finer detail
  *
 // use wxFile class - required by i18n code, wxConfig and others - recommended
 #define wxUSE_FILE                1
 
+#define wxUSE_FFILE         1
+
 // use wxTextFile class: requires wxFile, required by wxConfig
 #define wxUSE_TEXTFILE            1
 
 
 #define wxUSE_NEW_GRID 1
                                 // Define 1 to use the new drid classes
+
 /*
  * Any platform
  *