~registry/codeblocks/trunk

« back to all changes in this revision

Viewing changes to src/plugins/contrib/wxSmithContribItems/wxflatnotebook/wxFlatNotebook/cb_wxfn.patch

  • Committer: mortenmacfly
  • Date: 2012-02-22 14:40:26 UTC
  • Revision ID: svn-v4:98b59c6a-2706-0410-b7d6-d2fa1a1880c9:trunk:7835
* merged wxSmith branch into trunk
* this brings tons of new wxSmith items, including KWIC, wxImagePanel, wxGridBagSizer and more
* based on work of the community, mainly cryogen
* for more information, see changelog of wxSmith branch
* also, re-factoring of contributed wxWidgets items for wxSmith
* PLEASE DO A CLEAN CHECKOUT AND RE-BUILD EVERYTHING FROM SCRATCH!

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
Only in D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook: .svn
2
 
Only in D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook: AUTHORS
3
 
Only in D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook: Makefile.am
4
 
diff -u -r D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/README D:\projects\CodeBlocks(commit)\src\sdk\2FNB/README
5
 
--- D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/README        Tue Jun  6 13:13:58 2006
6
 
+++ D:\projects\CodeBlocks(commit)\src\sdk\2FNB/README  Sat Oct  7 02:06:40 2006
7
 
@@ -11,16 +11,10 @@
8
 
 
9
 
 # cd contrib/build/wxFlatNotebook
10
 
 # make clean
11
 
-# make 
12
 
+# make type=[release | debug ]
13
 
 
14
 
 This will create both the library and the wxFlatNotebookTest executable
15
 
 
16
 
-To build in debug mode:
17
 
-
18
 
-# cd contrib/build/wxFlatNotebook
19
 
-# make clean
20
 
-# make type=debug 
21
 
-
22
 
 
23
 
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
24
 
 VERSIONS:
25
 
@@ -109,3 +103,46 @@
26
 
 + Fixed minor drawing issues
27
 
 + Fixed bug that when closing the a tab using the mouse middle button, the page was set to active and only then closed.
28
 
 + Fixed bug that the old selection value in the event when closing a page was incorrect
29
 
+
30
 
+
31
 
+
32
 
+======================================================
33
 
+Version 1.5  9/13/2006 7:40PM
34
 
+======================================================
35
 
+
36
 
+Features:
37
 
+
38
 
++ New style added - VC8 style, with curved tabs 
39
 
+  The new style has the following features
40
 
+       - Background of tab area can be painted in gradient
41
 
+       - Colourful tabs - a random gentle colour is generated for each new tab (very cool :))
42
 
+       
43
 
+       Note: that the new tab DOES NOT support 'X' button on the tab
44
 
+
45
 
++ Build for DLL debug/release was fixed (on windows)
46
 
++ Makefile for Linux is now more generic using wx-config tool
47
 
++ Several drawing issues were fixed
48
 
++ Tabs now has an extra line that separate them from the page
49
 
+
50
 
+========================================================
51
 
+Version 2.0 
52
 
+========================================================
53
 
+
54
 
+ - Code refactoring: 
55
 
+   + remove wxStyledNotebook class, the same functionality now exist under wxFlatNotebook
56
 
+   + All drawing was moved to renderers (wxFlatNotebook.cpp file is now cleaned from drawing)
57
 
+   + Now using smart_ptr & singleton template classes where ever possible
58
 
+   
59
 
+ - Added smart tabbing style with new and easy way to select tabs (request #1527285)
60
 
+   Once this style is enabled, pressing Ctrl+[Shift]+T will popup a dialog with all the open tabs, another Ctrl+[Shift]+T will run throw the 
61
 
+   dialog list, until the Ctrl key is released.
62
 
+   
63
 
+ - Added new styles:
64
 
+   wxFNB_SMART_TABS - which enables the above feature
65
 
+   wxFNB_DROPDOWN_TABS_LIST - which replaces the '<>' (left, right arrows buttons) with a drop down list (popup menu) with all the open tabs
66
 
+   this feature is similar to VS8 tabs styles.
67
 
+   
68
 
+- Fixed a bug in SetSelection - in case that the navigation buttons were hidden, and the selection was not visible, it did not ensure that it will be visible
69
 
+
70
 
+Have fun !
71
 
+Eran
72
 
Only in D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook: README.patch
73
 
Only in D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook: cb_wxfn.patch
74
 
Only in D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook: libwxflatnotebook.a
75
 
diff -u -r D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/popup_dlg.cpp D:\projects\CodeBlocks(commit)\src\sdk\2FNB/popup_dlg.cpp
76
 
--- D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/popup_dlg.cpp Wed Oct 11 09:43:07 2006
77
 
+++ D:\projects\CodeBlocks(commit)\src\sdk\2FNB/popup_dlg.cpp   Sat Oct  7 17:22:46 2006
78
 
@@ -1,7 +1,7 @@
79
 
-#include "popup_dlg.h"
80
 
+#include <wx/wxFlatNotebook/popup_dlg.h>
81
 
 #include <wx/listctrl.h>
82
 
-#include "wxFlatNotebook.h"
83
 
-#include "renderer.h"
84
 
+#include <wx/wxFlatNotebook/wxFlatNotebook.h>
85
 
+#include <wx/wxFlatNotebook/renderer.h>
86
 
 #include <wx/listbox.h>
87
 
 #include <wx/image.h>
88
 
 #include <wx/mstream.h>
89
 
@@ -67,14 +67,14 @@
90
 
 
91
 
        sz->Add( m_panel );
92
 
        sz->Add( m_listBox, 1, wxEXPAND );
93
 
-
94
 
+       
95
 
        SetSizer( sz );
96
 
 
97
 
        // Connect events to the list box
98
 
-       m_listBox->Connect(wxID_ANY, wxEVT_KEY_UP, wxKeyEventHandler(wxTabNavigatorWindow::OnKeyUp), NULL, this);
99
 
-       m_listBox->Connect(wxID_ANY, wxEVT_NAVIGATION_KEY, wxNavigationKeyEventHandler(wxTabNavigatorWindow::OnNavigationKey), NULL, this);
100
 
+       m_listBox->Connect(wxID_ANY, wxEVT_KEY_UP, wxKeyEventHandler(wxTabNavigatorWindow::OnKeyUp), NULL, this); 
101
 
+       m_listBox->Connect(wxID_ANY, wxEVT_NAVIGATION_KEY, wxNavigationKeyEventHandler(wxTabNavigatorWindow::OnNavigationKey), NULL, this); 
102
 
        m_listBox->Connect(wxID_ANY, wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler(wxTabNavigatorWindow::OnItemSelected), NULL, this);
103
 
-
104
 
+       
105
 
        // Connect paint event to the panel
106
 
        m_panel->Connect(wxID_ANY, wxEVT_PAINT, wxPaintEventHandler(wxTabNavigatorWindow::OnPanelPaint), NULL, this);
107
 
        m_panel->Connect(wxID_ANY, wxEVT_ERASE_BACKGROUND, wxEraseEventHandler(wxTabNavigatorWindow::OnPanelEraseBg), NULL, this);
108
 
@@ -86,7 +86,7 @@
109
 
        // Create the bitmap, only once
110
 
        if( !m_bmp.Ok() )
111
 
        {
112
 
-               wxImage::AddHandler( new wxPNGHandler );
113
 
+               wxImage::AddHandler( new wxPNGHandler ); 
114
 
                wxInputStream *str = new wxMemoryInputStream(tab_selection_png, tab_selection_png_size);
115
 
                wxImage img(*str);
116
 
                m_bmp =  wxBitmap(img);
117
 
@@ -108,7 +108,7 @@
118
 
        wxFlatNotebook* bk = static_cast<wxFlatNotebook*>(GetParent());
119
 
        long maxItems = bk->GetPageCount();
120
 
        long itemToSelect;
121
 
-
122
 
+               
123
 
        if( event.GetDirection() )
124
 
        {
125
 
                // Select next page
126
 
@@ -133,7 +133,7 @@
127
 
 {
128
 
        int selection = book->GetSelection();
129
 
        int count     = book->GetPageCount();
130
 
-
131
 
+       
132
 
 
133
 
        m_listBox->Append( book->GetPageText(static_cast<int>(selection)) );
134
 
        m_indexMap[0] = selection;
135
 
@@ -142,7 +142,7 @@
136
 
        int prevSel = book->GetPreviousSelection();
137
 
        if( prevSel != wxNOT_FOUND )
138
 
        {
139
 
-               // Insert the previous selection as second entry
140
 
+               // Insert the previous selection as second entry 
141
 
                m_listBox->Append( book->GetPageText(static_cast<int>(prevSel)) );
142
 
                m_indexMap[1] = prevSel;
143
 
                itemIdx++;
144
 
@@ -219,7 +219,7 @@
145
 
                font.SetWeight( wxBOLD );
146
 
                mem_dc.SetFont( font );
147
 
                mem_dc.GetTextExtent( wxT("Tp"), &w, &fontHeight );
148
 
-
149
 
+               
150
 
                txtPt.x = bmpPt.x + m_bmp.GetWidth() + 4;
151
 
                txtPt.y = (rect.height - fontHeight)/2;
152
 
                mem_dc.SetTextForeground( *wxWHITE );
153
 
@@ -233,5 +233,5 @@
154
 
 void wxTabNavigatorWindow::OnPanelEraseBg(wxEraseEvent &event)
155
 
 {
156
 
        wxUnusedVar(event);
157
 
-
158
 
+       
159
 
 }
160
 
diff -u -r D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/renderer.cpp D:\projects\CodeBlocks(commit)\src\sdk\2FNB/renderer.cpp
161
 
--- D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/renderer.cpp  Wed Oct 11 09:44:40 2006
162
 
+++ D:\projects\CodeBlocks(commit)\src\sdk\2FNB/renderer.cpp    Sat Oct  7 13:28:20 2006
163
 
@@ -1,5 +1,5 @@
164
 
-#include "renderer.h"
165
 
-#include "wxFlatNotebook.h" // for the styles
166
 
+#include <wx/wxFlatNotebook/renderer.h>
167
 
+#include <wx/wxFlatNotebook/wxFlatNotebook.h> // for the styles
168
 
 
169
 
 wxFNBRenderer::wxFNBRenderer()
170
 
 : m_tabXBgBmp(16, 16)
171
 
@@ -62,15 +62,15 @@
172
 
        // ''
173
 
        if(style & wxFNB_NO_NAV_BUTTONS && style & wxFNB_NO_X_BUTTON && !(style & wxFNB_DROPDOWN_TABS_LIST))
174
 
                return 0;
175
 
-
176
 
+       
177
 
        // 'x'
178
 
        if((style & wxFNB_NO_NAV_BUTTONS) && !(style & wxFNB_NO_X_BUTTON) && !(style & wxFNB_DROPDOWN_TABS_LIST))
179
 
                return 22;
180
 
-
181
 
+       
182
 
        // '<>'
183
 
        if(!(style & wxFNB_NO_NAV_BUTTONS) && (style & wxFNB_NO_X_BUTTON) && !(style & wxFNB_DROPDOWN_TABS_LIST))
184
 
                return 53 - 16;
185
 
-
186
 
+       
187
 
        // 'vx'
188
 
        if((style & wxFNB_DROPDOWN_TABS_LIST) && !(style & wxFNB_NO_X_BUTTON))
189
 
                return 22 + 16;
190
 
@@ -185,7 +185,7 @@
191
 
 
192
 
        // Set the bitmap according to the button status
193
 
        wxBitmap xbmp;
194
 
-
195
 
+       
196
 
        switch(pc->m_nArrowDownButtonStatus)
197
 
        {
198
 
        case wxFNB_BTN_HOVER:
199
 
@@ -501,7 +501,7 @@
200
 
        // Get the text hight
201
 
        int tabHeight = CalcTabHeight(pageContainer);
202
 
        long style = pc->GetParent()->GetWindowStyleFlag();
203
 
-
204
 
+       
205
 
        // Calculate the number of rows required for drawing the tabs
206
 
        wxRect rect = pc->GetClientRect();
207
 
        int clientWidth = rect.width;
208
 
@@ -698,7 +698,7 @@
209
 
 
210
 
 wxFNBRendererPtr wxFNBRendererMgr::GetRenderer(long style)
211
 
 {
212
 
-       // since we dont have a style for default tabs, we
213
 
+       // since we dont have a style for default tabs, we 
214
 
        // test for all others - FIXME: add style for default tabs
215
 
        if( !(style & wxFNB_VC71) && !(style & wxFNB_VC8) && !(style & wxFNB_FANCY_TABS) )
216
 
                return m_renderers[-1];
217
 
@@ -717,7 +717,7 @@
218
 
 }
219
 
 
220
 
 //------------------------------------------
221
 
-// Default renderer
222
 
+// Default renderer 
223
 
 //------------------------------------------
224
 
 
225
 
 void wxFNBRendererDefault::DrawTab(wxWindow* pageContainer, wxDC &dc, const int &posx, const int &tabIdx, const int &tabWidth, const int &tabHeight, const int btnStatus)
226
 
@@ -827,12 +827,12 @@
227
 
                GetBitmap(dc, x_rect, m_tabXBgBmp);
228
 
 
229
 
                // Draw the tab
230
 
-               DrawTabX(pc, dc, x_rect, tabIdx, btnStatus);
231
 
+               DrawTabX(pc, dc, x_rect, tabIdx, btnStatus);                    
232
 
        }
233
 
 }
234
 
 
235
 
 //------------------------------------------------------------------
236
 
-// Visual studio 7.1
237
 
+// Visual studio 7.1 
238
 
 //------------------------------------------------------------------
239
 
 
240
 
 void wxFNBRendererVC71::DrawTab(wxWindow* pageContainer, wxDC &dc, const int &posx, const int &tabIdx, const int &tabWidth, const int &tabHeight, const int btnStatus)
241
 
@@ -895,7 +895,7 @@
242
 
        int padding = static_cast<wxFlatNotebook*>( pc->GetParent() )->GetPadding();
243
 
        bool hasImage = pc->GetPageInfoVector()[tabIdx].GetImageIndex() != -1;
244
 
        int imageYCoord = pc->HasFlag(wxFNB_BOTTOM) ? 6 : 8;
245
 
-
246
 
+       
247
 
        hasImage ? textOffset = padding * 2 + 16 : textOffset = padding;
248
 
 
249
 
        if(tabIdx != pc->GetSelection())
250
 
@@ -912,7 +912,7 @@
251
 
        }
252
 
 
253
 
        dc.DrawText(pc->GetPageText(tabIdx), posx + textOffset, imageYCoord);
254
 
-
255
 
+       
256
 
        // draw 'x' on tab (if enabled)
257
 
        if(pc->HasFlag(wxFNB_X_ON_TAB) && tabIdx == pc->GetSelection())
258
 
        {
259
 
@@ -927,7 +927,7 @@
260
 
                GetBitmap(dc, x_rect, m_tabXBgBmp);
261
 
 
262
 
                // Draw the tab
263
 
-               DrawTabX(pc, dc, x_rect, tabIdx, btnStatus);
264
 
+               DrawTabX(pc, dc, x_rect, tabIdx, btnStatus);                    
265
 
        }
266
 
 }
267
 
 
268
 
@@ -1003,7 +1003,7 @@
269
 
        }
270
 
 
271
 
        dc.DrawText(pc->GetPageText(tabIdx), posx + textOffset, imageYCoord);
272
 
-
273
 
+       
274
 
        // draw 'x' on tab (if enabled)
275
 
        if(pc->HasFlag(wxFNB_X_ON_TAB) && tabIdx == pc->GetSelection())
276
 
        {
277
 
@@ -1018,7 +1018,7 @@
278
 
                GetBitmap(dc, x_rect, m_tabXBgBmp);
279
 
 
280
 
                // Draw the tab
281
 
-               DrawTabX(pc, dc, x_rect, tabIdx, btnStatus);
282
 
+               DrawTabX(pc, dc, x_rect, tabIdx, btnStatus);                    
283
 
        }
284
 
 }
285
 
 
286
 
@@ -1029,7 +1029,7 @@
287
 
 {
288
 
        wxPageContainer *pc = static_cast<wxPageContainer*>( pageContainer );
289
 
 
290
 
-#ifndef __WXMAC__
291
 
+#ifndef __WXMAC__ 
292
 
        // Works well on MSW & GTK, however this lines should be skipped on MAC
293
 
        if(pc->GetPageInfoVector().empty() || pc->m_nFrom >= (int)pc->GetPageInfoVector().GetCount())
294
 
        {
295
 
@@ -1063,7 +1063,7 @@
296
 
        // Background
297
 
        dc.SetTextBackground(pc->GetBackgroundColour());
298
 
        dc.SetTextForeground(pc->m_activeTextColor);
299
 
-
300
 
+       
301
 
        // If border style is set, set the pen to be border pen
302
 
        if( pc->HasFlag(wxFNB_TABS_BORDER_SIMPLE) )
303
 
                dc.SetPen(borderPen);
304
 
@@ -1081,7 +1081,7 @@
305
 
        {
306
 
                wxMemoryDC mem_dc;
307
 
                wxRect rect;
308
 
-
309
 
+               
310
 
                //---------------------------------------
311
 
                // X button
312
 
                //---------------------------------------
313
 
@@ -1134,7 +1134,7 @@
314
 
        int activeTabWidth(0);
315
 
        int     activeTabHeight(0);
316
 
 
317
 
-       for(cur=(int)vTabsInfo.size() - 1; cur>=0; cur--)
318
 
+       for(cur=(int)vTabsInfo.size() - 1; cur>=0; cur--) 
319
 
        {
320
 
                /// 'i' points to the index of the currently drawn tab
321
 
                /// in pc->GetPageInfoVector() vector
322
 
@@ -1159,8 +1159,8 @@
323
 
                // the region, it will be filled by the function
324
 
                // drawVc8Tab
325
 
                pc->GetPageInfoVector()[i].GetRegion().Clear();
326
 
-
327
 
-               // Clean the 'x' buttn on the tab
328
 
+               
329
 
+               // Clean the 'x' buttn on the tab 
330
 
                // 'Clean' rectanlge is a rectangle with width or height
331
 
                // with values lower than or equal to 0
332
 
                pc->GetPageInfoVector()[i].GetXRect().SetSize(wxSize(-1, -1));
333
 
@@ -1204,7 +1204,7 @@
334
 
                pc->GetPageInfoVector()[xx].GetRegion().Clear();
335
 
        }
336
 
 
337
 
-       // Draw the left/right/close buttons
338
 
+       // Draw the left/right/close buttons 
339
 
        // Left arrow
340
 
        DrawLeftArrow(pc, dc);
341
 
        DrawRightArrow(pc, dc);
342
 
@@ -1222,14 +1222,14 @@
343
 
        wxPen borderPen = wxPen( pc->GetBorderColour() );
344
 
        wxPoint tabPoints[8];
345
 
 
346
 
-       // If we draw the first tab or the active tab,
347
 
+       // If we draw the first tab or the active tab, 
348
 
        // we draw a full tab, else we draw a truncated tab
349
 
        //
350
 
        //             X(2)                  X(3)
351
 
        //        X(1)                            X(4)
352
 
-       //
353
 
+       //                                          
354
 
        //                                           X(5)
355
 
-       //
356
 
+       //                                           
357
 
        // X(0),(7)                                  X(6)
358
 
        //
359
 
        //
360
 
@@ -1292,7 +1292,7 @@
361
 
                dc.SetBrush(brush);
362
 
                dc.DrawPolygon(8, tabPoints);
363
 
 
364
 
-               // Delete the bottom line (or the upper one, incase we use wxBOTTOM)
365
 
+               // Delete the bottom line (or the upper one, incase we use wxBOTTOM) 
366
 
                dc.SetPen(wxPen(wxT("WHITE")));
367
 
                dc.DrawLine(tabPoints[0], tabPoints[6]);
368
 
        }
369
 
@@ -1308,14 +1308,14 @@
370
 
                dc.DrawLine(tabPoints[5].x-1, tabPoints[5].y, tabPoints[6].x-1, tabPoints[6].y);
371
 
        }
372
 
 
373
 
-       // Text drawing offset from the left border of the
374
 
+       // Text drawing offset from the left border of the 
375
 
        // rectangle
376
 
        int textOffset;
377
 
 
378
 
        // The width of the images are 16 pixels
379
 
        int vc8ShapeLen = tabHeight - VERTICAL_BORDER_PADDING - 2;
380
 
        if( pc->TabHasImage( tabIdx ) )
381
 
-               textOffset = ((wxFlatNotebook *)pc->m_pParent)->GetPadding() * 2 + 16 + vc8ShapeLen;
382
 
+               textOffset = ((wxFlatNotebook *)pc->m_pParent)->GetPadding() * 2 + 16 + vc8ShapeLen; 
383
 
        else
384
 
                textOffset = ((wxFlatNotebook *)pc->m_pParent)->GetPadding() + vc8ShapeLen;
385
 
 
386
 
@@ -1325,12 +1325,12 @@
387
 
        if( pc->TabHasImage( tabIdx ) )
388
 
        {
389
 
                int imageXOffset = textOffset - 16 - ((wxFlatNotebook *)pc->m_pParent)->GetPadding();
390
 
-               dc.DrawBitmap((*pc->GetImageList())[pc->GetPageInfoVector()[tabIdx].GetImageIndex()],
391
 
+               dc.DrawBitmap((*pc->GetImageList())[pc->GetPageInfoVector()[tabIdx].GetImageIndex()], 
392
 
                        posx + imageXOffset, imageYCoord, true);
393
 
        }
394
 
 
395
 
        wxFont boldFont = wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT);
396
 
-
397
 
+               
398
 
        // if selected tab, draw text in bold
399
 
        if( tabIdx == pc->GetSelection() )
400
 
        {
401
 
@@ -1349,7 +1349,7 @@
402
 
        if( m_first )
403
 
        {
404
 
                m_first = false;
405
 
-               pc->m_colorTo   = LightColour(wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE), 0);
406
 
+               pc->m_colorTo   = LightColour(wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE), 0); 
407
 
                pc->m_colorFrom = LightColour(wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE), 60);
408
 
        }
409
 
        wxColour col2 = pc->HasFlag( wxFNB_BOTTOM ) ? pc->GetGradientColourTo() : pc->GetGradientColourFrom();
410
 
@@ -1384,9 +1384,9 @@
411
 
                bstep = double((col2.Blue() -  col1.Blue())) / double(size), bf = 0;
412
 
 
413
 
        wxColour currCol;
414
 
-       int y = tabPoints[0].y;
415
 
+       int y = tabPoints[0].y; 
416
 
 
417
 
-       // If we are drawing the selected tab, we need also to draw a line
418
 
+       // If we are drawing the selected tab, we need also to draw a line 
419
 
        // from 0->tabPoints[0].x and tabPoints[6].x -> end, we achieve this
420
 
        // by drawing the rectangle with transparent brush
421
 
        // the line under the selected tab will be deleted by the drwaing loop
422
 
@@ -1419,11 +1419,11 @@
423
 
 
424
 
                // Draw the border using the 'edge' point
425
 
                dc.SetPen(wxPen(bSelectedTab ? wxSystemSettings::GetColour(wxSYS_COLOUR_BTNSHADOW) : pc->m_colorBorder));
426
 
-
427
 
+               
428
 
                dc.DrawPoint(startX, y);
429
 
                dc.DrawPoint(endX, y);
430
 
-
431
 
-               // Progress the color
432
 
+               
433
 
+               // Progress the color 
434
 
                rf += rstep; gf += gstep; bf += bstep;
435
 
 
436
 
                pc->HasFlag( wxFNB_BOTTOM ) ? y++ : y--;
437
 
@@ -1441,7 +1441,7 @@
438
 
        if(bBottomStyle)
439
 
        {
440
 
                for(int i=0; i<3; i++)
441
 
-               {
442
 
+               {       
443
 
                        if(y >= tabPoints[i].y && y < tabPoints[i+1].y)
444
 
                        {
445
 
                                x1 = tabPoints[i].x;
446
 
@@ -1456,7 +1456,7 @@
447
 
        else
448
 
        {
449
 
                for(int i=0; i<3; i++)
450
 
-               {
451
 
+               {       
452
 
                        if(y <= tabPoints[i].y && y > tabPoints[i+1].y)
453
 
                        {
454
 
                                x1 = tabPoints[i].x;
455
 
@@ -1476,14 +1476,14 @@
456
 
        // We know the first 2 points
457
 
 
458
 
        double a;
459
 
-       if(x2 == x1)
460
 
+       if(x2 == x1) 
461
 
                return static_cast<int>( x2 );
462
 
        else
463
 
                a = (y2 - y1) / (x2 - x1);
464
 
 
465
 
        double b = y1 - ((y2 - y1) / (x2 - x1)) * x1;
466
 
 
467
 
-       if(a == 0)
468
 
+       if(a == 0) 
469
 
                return static_cast<int>( x1 );
470
 
 
471
 
        double x = (y - b) / a;
472
 
@@ -1501,7 +1501,7 @@
473
 
        if(bBottomStyle)
474
 
        {
475
 
                for(int i=7; i>3; i--)
476
 
-               {
477
 
+               {       
478
 
                        if(y >= tabPoints[i].y && y < tabPoints[i-1].y)
479
 
                        {
480
 
                                x1 = tabPoints[i].x;
481
 
@@ -1516,7 +1516,7 @@
482
 
        else
483
 
        {
484
 
                for(int i=7; i>3; i--)
485
 
-               {
486
 
+               {       
487
 
                        if(y <= tabPoints[i].y && y > tabPoints[i-1].y)
488
 
                        {
489
 
                                x1 = tabPoints[i].x;
490
 
@@ -1537,7 +1537,7 @@
491
 
        double a = (y2 - y1) / (x2 - x1);
492
 
        double b = y1 - ((y2 - y1) / (x2 - x1)) * x1;
493
 
 
494
 
-       if(a == 0)
495
 
+       if(a == 0) 
496
 
                return (int)x1;
497
 
 
498
 
        // Vertical line
499
 
@@ -1552,7 +1552,7 @@
500
 
 {
501
 
        wxPageContainer *pc = static_cast<wxPageContainer*>( pageContainer );
502
 
        int tabHeight, clientWidth;
503
 
-
504
 
+       
505
 
        wxRect rect = pc->GetClientRect();
506
 
        clientWidth = rect.width;
507
 
 
508
 
@@ -1563,7 +1563,7 @@
509
 
 
510
 
        // The drawing starts from posx
511
 
        int posx = ((wxFlatNotebook *)pc->m_pParent)->GetPadding();
512
 
-
513
 
+       
514
 
        if( from < 0 )
515
 
                from = pc->m_nFrom;
516
 
 
517
 
diff -u -r D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/renderer.h D:\projects\CodeBlocks(commit)\src\sdk\2FNB/renderer.h
518
 
--- D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/renderer.h    Wed Oct 11 09:44:58 2006
519
 
+++ D:\projects\CodeBlocks(commit)\src\sdk\2FNB/renderer.h      Sat Oct  7 13:34:10 2006
520
 
@@ -3,8 +3,8 @@
521
 
 
522
 
 #include <wx/dc.h>
523
 
 #include <wx/string.h>
524
 
-#include "singleton.h"
525
 
-#include "smart_ptr.h"
526
 
+#include <wx/wxFlatNotebook/singleton.h>
527
 
+#include <wx/wxFlatNotebook/smart_ptr.h>
528
 
 #include <map>
529
 
 #include <vector>
530
 
 
531
 
@@ -31,7 +31,7 @@
532
 
         * \param pageContainer parent window on which to draw
533
 
         * \param dc device context to use
534
 
         * \param rect button rectangle
535
 
-        * \param tabIdx tab index
536
 
+        * \param tabIdx tab index 
537
 
         * \param btnStatus button status, can be one of
538
 
         *   - wxFNB_BTN_PRESSED
539
 
         *   - wxFNB_BTN_HOVER
540
 
@@ -41,13 +41,13 @@
541
 
        virtual void DrawTabX(wxWindow* pageContainer, wxDC& dc, const wxRect& rect, const int& tabIdx, const int btnStatus);
542
 
 
543
 
        /**
544
 
-        * Draw tab
545
 
+        * Draw tab 
546
 
         * \param pageContainer parent window on which to draw
547
 
         * \param dc device context to use
548
 
         * \param posx tab x coordinate
549
 
         * \param tabIdx tab index
550
 
-        * \param tabWidth tab width
551
 
-        * \param tabHeight tab height
552
 
+        * \param tabWidth tab width 
553
 
+        * \param tabHeight tab height 
554
 
         * \param btnStatus btnStatus the little 'x' button (on top of the active tab) status, can be one of
555
 
         *   - wxFNB_BTN_PRESSED
556
 
         *   - wxFNB_BTN_HOVER
557
 
@@ -56,7 +56,7 @@
558
 
        virtual void DrawTab(wxWindow* pageContainer, wxDC &dc, const int &posx, const int &tabIdx, const int &tabWidth, const int &tabHeight, const int btnStatus) = 0;
559
 
 
560
 
        /**
561
 
-        * Calculate tab width , based on its index (for image, x button on tab)
562
 
+        * Calculate tab width , based on its index (for image, x button on tab) 
563
 
         * \param pageContainer pageContainer parent window on which to draw
564
 
         * \param tabIdx tab index
565
 
         * \param tabHeight the tab height (used for tan() function calculations)
566
 
@@ -79,9 +79,9 @@
567
 
         */
568
 
        virtual void GetBitmap(wxDC& dc, const wxRect &rect, wxBitmap &bmp);
569
 
 
570
 
-       /**
571
 
+       /** 
572
 
         * Draw a bottom line for the tabs area
573
 
-        */
574
 
+        */ 
575
 
        void DrawTabsLine(wxWindow *pageContainer, wxDC& dc);
576
 
 
577
 
        /**
578
 
@@ -95,7 +95,7 @@
579
 
        /**
580
 
         * Paint rectangle with gradient colouring
581
 
         * \param dc device context
582
 
-        * \param rect rectangle
583
 
+        * \param rect rectangle 
584
 
         * \param startColor gradient colour 1
585
 
         * \param endColor gradient colour 2
586
 
         * \param vertical use vertical gradient or horizontal
587
 
@@ -178,7 +178,7 @@
588
 
        void FillVC8GradientColor(wxWindow* pageContainer, wxDC &dc, const wxPoint tabPoints[], const bool bSelectedTab, const int tabIdx);
589
 
        int GetEndX(const wxPoint tabPoints[], const int &y, long style);
590
 
        int GetStartX(const wxPoint tabPoints[], const int &y, long style);
591
 
-
592
 
+       
593
 
 };
594
 
 
595
 
 //-----------------------------------
596
 
@@ -194,7 +194,7 @@
597
 
         * Return the renderer according to the style flag, the returned pointer should not be
598
 
         * deleted by caller, it is owned by this class
599
 
         * \param style window style flag
600
 
-        * \return wxFNBRenderer
601
 
+        * \return wxFNBRenderer 
602
 
         */
603
 
        wxFNBRendererPtr GetRenderer(long style);
604
 
 
605
 
diff -u -r D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/wxFlatNotebook.cpp D:\projects\CodeBlocks(commit)\src\sdk\2FNB/wxFlatNotebook.cpp
606
 
--- D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/wxFlatNotebook.cpp    Wed Oct 11 09:47:14 2006
607
 
+++ D:\projects\CodeBlocks(commit)\src\sdk\2FNB/wxFlatNotebook.cpp      Sat Oct  7 13:51:12 2006
608
 
@@ -1,5 +1,5 @@
609
 
 ///////////////////////////////////////////////////////////////////////////////
610
 
-// Name:               wxFlatNotebook.cpp
611
 
+// Name:               wxFlatNotebook.cpp 
612
 
 // Purpose:     generic implementation of flat style notebook class.
613
 
 // Author:      Eran Ifrah <eranif@bezeqint.net>
614
 
 // Modified by: Priyank Bolia <soft@priyank.in>
615
 
@@ -9,471 +9,10 @@
616
 
 // Licence:     wxWindows license <http://www.wxwidgets.org/licence3.txt>
617
 
 ///////////////////////////////////////////////////////////////////////////////
618
 
 
619
 
-namespace FNB
620
 
-{
621
 
-       ////////////////////////////////////////////////////////////
622
 
-       // Images used by the control
623
 
-       ////////////////////////////////////////////////////////////
624
 
-       /* XPM */
625
 
-       const char *left_arrow_disabled_xpm[] = {
626
 
-               /* width height num_colors chars_per_pixel */
627
 
-               "    16    16        8            1",
628
 
-                       /* colors */
629
 
-                       "` c #008080",
630
 
-                       ". c #555555",
631
 
-                       "# c #000000",
632
 
-                       "a c #000000",
633
 
-                       "b c #000000",
634
 
-                       "c c #000000",
635
 
-                       "d c #000000",
636
 
-                       "e c #000000",
637
 
-                       /* pixels */
638
 
-                       "````````````````",
639
 
-                       "````````````````",
640
 
-                       "````````````````",
641
 
-                       "````````.```````",
642
 
-                       "```````..```````",
643
 
-                       "``````.`.```````",
644
 
-                       "`````.``.```````",
645
 
-                       "````.```.```````",
646
 
-                       "`````.``.```````",
647
 
-                       "``````.`.```````",
648
 
-                       "```````..```````",
649
 
-                       "````````.```````",
650
 
-                       "````````````````",
651
 
-                       "````````````````",
652
 
-                       "````````````````",
653
 
-                       "````````````````"
654
 
-       };
655
 
-
656
 
-       /* XPM */
657
 
-       const char *x_button_pressed_xpm[] = {
658
 
-               /* width height num_colors chars_per_pixel */
659
 
-               "    16    16        8            1",
660
 
-                       /* colors */
661
 
-                       "` c #008080",
662
 
-                       ". c #4766e0",
663
 
-                       "# c #9e9ede",
664
 
-                       "a c #000000",
665
 
-                       "b c #000000",
666
 
-                       "c c #000000",
667
 
-                       "d c #000000",
668
 
-                       "e c #000000",
669
 
-                       /* pixels */
670
 
-                       "````````````````",
671
 
-                       "`..............`",
672
 
-                       "`.############.`",
673
 
-                       "`.############.`",
674
 
-                       "`.############.`",
675
 
-                       "`.###aa####aa#.`",
676
 
-                       "`.####aa##aa##.`",
677
 
-                       "`.#####aaaa###.`",
678
 
-                       "`.######aa####.`",
679
 
-                       "`.#####aaaa###.`",
680
 
-                       "`.####aa##aa##.`",
681
 
-                       "`.###aa####aa#.`",
682
 
-                       "`.############.`",
683
 
-                       "`..............`",
684
 
-                       "````````````````",
685
 
-                       "````````````````"
686
 
-       };
687
 
-
688
 
-
689
 
-       /* XPM */
690
 
-       const char *left_arrow_xpm[] = {
691
 
-               /* width height num_colors chars_per_pixel */
692
 
-               "    16    16        8            1",
693
 
-                       /* colors */
694
 
-                       "` c #008080",
695
 
-                       ". c #555555",
696
 
-                       "# c #000000",
697
 
-                       "a c #000000",
698
 
-                       "b c #000000",
699
 
-                       "c c #000000",
700
 
-                       "d c #000000",
701
 
-                       "e c #000000",
702
 
-                       /* pixels */
703
 
-                       "````````````````",
704
 
-                       "````````````````",
705
 
-                       "````````````````",
706
 
-                       "````````.```````",
707
 
-                       "```````..```````",
708
 
-                       "``````...```````",
709
 
-                       "`````....```````",
710
 
-                       "````.....```````",
711
 
-                       "`````....```````",
712
 
-                       "``````...```````",
713
 
-                       "```````..```````",
714
 
-                       "````````.```````",
715
 
-                       "````````````````",
716
 
-                       "````````````````",
717
 
-                       "````````````````",
718
 
-                       "````````````````"
719
 
-       };
720
 
-
721
 
-       /* XPM */
722
 
-       const char *x_button_hilite_xpm[] = {
723
 
-               /* width height num_colors chars_per_pixel */
724
 
-               "    16    16        8            1",
725
 
-                       /* colors */
726
 
-                       "` c #008080",
727
 
-                       ". c #4766e0",
728
 
-                       "# c #c9dafb",
729
 
-                       "a c #000000",
730
 
-                       "b c #000000",
731
 
-                       "c c #000000",
732
 
-                       "d c #000000",
733
 
-                       "e c #000000",
734
 
-                       /* pixels */
735
 
-                       "````````````````",
736
 
-                       "`..............`",
737
 
-                       "`.############.`",
738
 
-                       "`.############.`",
739
 
-                       "`.##aa####aa##.`",
740
 
-                       "`.###aa##aa###.`",
741
 
-                       "`.####aaaa####.`",
742
 
-                       "`.#####aa#####.`",
743
 
-                       "`.####aaaa####.`",
744
 
-                       "`.###aa##aa###.`",
745
 
-                       "`.##aa####aa##.`",
746
 
-                       "`.############.`",
747
 
-                       "`.############.`",
748
 
-                       "`..............`",
749
 
-                       "````````````````",
750
 
-                       "````````````````"
751
 
-       };
752
 
-
753
 
-       /* XPM */
754
 
-       const char *x_button_xpm[] = {
755
 
-               /* width height num_colors chars_per_pixel */
756
 
-               "    16    16        8            1",
757
 
-                       /* colors */
758
 
-                       "` c #008080",
759
 
-                       ". c #555555",
760
 
-                       "# c #000000",
761
 
-                       "a c #000000",
762
 
-                       "b c #000000",
763
 
-                       "c c #000000",
764
 
-                       "d c #000000",
765
 
-                       "e c #000000",
766
 
-                       /* pixels */
767
 
-                       "````````````````",
768
 
-                       "````````````````",
769
 
-                       "````````````````",
770
 
-                       "````````````````",
771
 
-                       "````..````..````",
772
 
-                       "`````..``..`````",
773
 
-                       "``````....``````",
774
 
-                       "```````..```````",
775
 
-                       "``````....``````",
776
 
-                       "`````..``..`````",
777
 
-                       "````..````..````",
778
 
-                       "````````````````",
779
 
-                       "````````````````",
780
 
-                       "````````````````",
781
 
-                       "````````````````",
782
 
-                       "````````````````"
783
 
-       };
784
 
-
785
 
-       /* XPM */
786
 
-       const char *left_arrow_pressed_xpm[] = {
787
 
-               /* width height num_colors chars_per_pixel */
788
 
-               "    16    16        8            1",
789
 
-                       /* colors */
790
 
-                       "` c #008080",
791
 
-                       ". c #4766e0",
792
 
-                       "# c #9e9ede",
793
 
-                       "a c #000000",
794
 
-                       "b c #000000",
795
 
-                       "c c #000000",
796
 
-                       "d c #000000",
797
 
-                       "e c #000000",
798
 
-                       /* pixels */
799
 
-                       "````````````````",
800
 
-                       "`..............`",
801
 
-                       "`.############.`",
802
 
-                       "`.############.`",
803
 
-                       "`.#######a####.`",
804
 
-                       "`.######aa####.`",
805
 
-                       "`.#####aaa####.`",
806
 
-                       "`.####aaaa####.`",
807
 
-                       "`.###aaaaa####.`",
808
 
-                       "`.####aaaa####.`",
809
 
-                       "`.#####aaa####.`",
810
 
-                       "`.######aa####.`",
811
 
-                       "`.#######a####.`",
812
 
-                       "`..............`",
813
 
-                       "````````````````",
814
 
-                       "````````````````"
815
 
-       };
816
 
-
817
 
-       /* XPM */
818
 
-       const char *left_arrow_hilite_xpm[] = {
819
 
-               /* width height num_colors chars_per_pixel */
820
 
-               "    16    16        8            1",
821
 
-                       /* colors */
822
 
-                       "` c #008080",
823
 
-                       ". c #4766e0",
824
 
-                       "# c #c9dafb",
825
 
-                       "a c #000000",
826
 
-                       "b c #000000",
827
 
-                       "c c #000000",
828
 
-                       "d c #000000",
829
 
-                       "e c #000000",
830
 
-                       /* pixels */
831
 
-                       "````````````````",
832
 
-                       "`..............`",
833
 
-                       "`.############.`",
834
 
-                       "`.######a#####.`",
835
 
-                       "`.#####aa#####.`",
836
 
-                       "`.####aaa#####.`",
837
 
-                       "`.###aaaa#####.`",
838
 
-                       "`.##aaaaa#####.`",
839
 
-                       "`.###aaaa#####.`",
840
 
-                       "`.####aaa#####.`",
841
 
-                       "`.#####aa#####.`",
842
 
-                       "`.######a#####.`",
843
 
-                       "`.############.`",
844
 
-                       "`..............`",
845
 
-                       "````````````````",
846
 
-                       "````````````````"
847
 
-       };
848
 
-
849
 
-       /* XPM */
850
 
-       const char *right_arrow_disabled_xpm[] = {
851
 
-               /* width height num_colors chars_per_pixel */
852
 
-               "    16    16        8            1",
853
 
-                       /* colors */
854
 
-                       "` c #008080",
855
 
-                       ". c #555555",
856
 
-                       "# c #000000",
857
 
-                       "a c #000000",
858
 
-                       "b c #000000",
859
 
-                       "c c #000000",
860
 
-                       "d c #000000",
861
 
-                       "e c #000000",
862
 
-                       /* pixels */
863
 
-                       "````````````````",
864
 
-                       "````````````````",
865
 
-                       "````````````````",
866
 
-                       "```````.````````",
867
 
-                       "```````..```````",
868
 
-                       "```````.`.``````",
869
 
-                       "```````.``.`````",
870
 
-                       "```````.```.````",
871
 
-                       "```````.``.`````",
872
 
-                       "```````.`.``````",
873
 
-                       "```````..```````",
874
 
-                       "```````.````````",
875
 
-                       "````````````````",
876
 
-                       "````````````````",
877
 
-                       "````````````````",
878
 
-                       "````````````````"
879
 
-       };
880
 
-
881
 
-       /* XPM */
882
 
-       const char *right_arrow_hilite_xpm[] = {
883
 
-               /* width height num_colors chars_per_pixel */
884
 
-               "    16    16        8            1",
885
 
-                       /* colors */
886
 
-                       "` c #008080",
887
 
-                       ". c #4766e0",
888
 
-                       "# c #c9dafb",
889
 
-                       "a c #000000",
890
 
-                       "b c #000000",
891
 
-                       "c c #000000",
892
 
-                       "d c #000000",
893
 
-                       "e c #000000",
894
 
-                       /* pixels */
895
 
-                       "````````````````",
896
 
-                       "`..............`",
897
 
-                       "`.############.`",
898
 
-                       "`.####a#######.`",
899
 
-                       "`.####aa######.`",
900
 
-                       "`.####aaa#####.`",
901
 
-                       "`.####aaaa####.`",
902
 
-                       "`.####aaaaa###.`",
903
 
-                       "`.####aaaa####.`",
904
 
-                       "`.####aaa#####.`",
905
 
-                       "`.####aa######.`",
906
 
-                       "`.####a#######.`",
907
 
-                       "`.############.`",
908
 
-                       "`..............`",
909
 
-                       "````````````````",
910
 
-                       "````````````````"
911
 
-       };
912
 
-
913
 
-       /* XPM */
914
 
-       const char *right_arrow_pressed_xpm[] = {
915
 
-               /* width height num_colors chars_per_pixel */
916
 
-               "    16    16        8            1",
917
 
-                       /* colors */
918
 
-                       "` c #008080",
919
 
-                       ". c #4766e0",
920
 
-                       "# c #9e9ede",
921
 
-                       "a c #000000",
922
 
-                       "b c #000000",
923
 
-                       "c c #000000",
924
 
-                       "d c #000000",
925
 
-                       "e c #000000",
926
 
-                       /* pixels */
927
 
-                       "````````````````",
928
 
-                       "`..............`",
929
 
-                       "`.############.`",
930
 
-                       "`.############.`",
931
 
-                       "`.#####a######.`",
932
 
-                       "`.#####aa#####.`",
933
 
-                       "`.#####aaa####.`",
934
 
-                       "`.#####aaaa###.`",
935
 
-                       "`.#####aaaaa##.`",
936
 
-                       "`.#####aaaa###.`",
937
 
-                       "`.#####aaa####.`",
938
 
-                       "`.#####aa#####.`",
939
 
-                       "`.#####a######.`",
940
 
-                       "`..............`",
941
 
-                       "````````````````",
942
 
-                       "````````````````"
943
 
-       };
944
 
-
945
 
-
946
 
-       /* XPM */
947
 
-       const char *right_arrow_xpm[] = {
948
 
-               /* width height num_colors chars_per_pixel */
949
 
-               "    16    16        8            1",
950
 
-                       /* colors */
951
 
-                       "` c #008080",
952
 
-                       ". c #555555",
953
 
-                       "# c #000000",
954
 
-                       "a c #000000",
955
 
-                       "b c #000000",
956
 
-                       "c c #000000",
957
 
-                       "d c #000000",
958
 
-                       "e c #000000",
959
 
-                       /* pixels */
960
 
-                       "````````````````",
961
 
-                       "````````````````",
962
 
-                       "````````````````",
963
 
-                       "```````.````````",
964
 
-                       "```````..```````",
965
 
-                       "```````...``````",
966
 
-                       "```````....`````",
967
 
-                       "```````.....````",
968
 
-                       "```````....`````",
969
 
-                       "```````...``````",
970
 
-                       "```````..```````",
971
 
-                       "```````.````````",
972
 
-                       "````````````````",
973
 
-                       "````````````````",
974
 
-                       "````````````````",
975
 
-                       "````````````````"
976
 
-       };
977
 
-
978
 
-       // Arrow down bitmaps
979
 
-       /* XPM */
980
 
-       const char *down_arrow_hilite_xpm[] = {
981
 
-               /* width height num_colors chars_per_pixel */
982
 
-               "    16    16        8            1",
983
 
-                       /* colors */
984
 
-                       "` c #008080",
985
 
-                       ". c #4766e0",
986
 
-                       "# c #c9dafb",
987
 
-                       "a c #000000",
988
 
-                       "b c #000000",
989
 
-                       "c c #000000",
990
 
-                       "d c #000000",
991
 
-                       "e c #000000",
992
 
-                       /* pixels */
993
 
-                       "````````````````",
994
 
-                       "``.............`",
995
 
-                       "``.###########.`",
996
 
-                       "``.###########.`",
997
 
-                       "``.###########.`",
998
 
-                       "``.#aaaaaaaaa#.`",
999
 
-                       "``.##aaaaaaa##.`",
1000
 
-                       "``.###aaaaa###.`",
1001
 
-                       "``.####aaa####.`",
1002
 
-                       "``.#####a#####.`",
1003
 
-                       "``.###########.`",
1004
 
-                       "``.###########.`",
1005
 
-                       "``.###########.`",
1006
 
-                       "``.............`",
1007
 
-                       "````````````````",
1008
 
-                       "````````````````"
1009
 
-       };
1010
 
-
1011
 
-       /* XPM */
1012
 
-       const char *down_arrow_pressed_xpm[] = {
1013
 
-               /* width height num_colors chars_per_pixel */
1014
 
-               "    16    16        8            1",
1015
 
-                       /* colors */
1016
 
 
1017
 
-                       "` c #008080",
1018
 
-                       ". c #4766e0",
1019
 
-                       "# c #9e9ede",
1020
 
-                       "a c #000000",
1021
 
-                       "b c #000000",
1022
 
-                       "c c #000000",
1023
 
-                       "d c #000000",
1024
 
-                       "e c #000000",
1025
 
-                       /* pixels */
1026
 
-                       "````````````````",
1027
 
-                       "``.............`",
1028
 
-                       "``.###########.`",
1029
 
-                       "``.###########.`",
1030
 
-                       "``.###########.`",
1031
 
-                       "``.###########.`",
1032
 
-                       "``.###########.`",
1033
 
-                       "``.#aaaaaaaaa#.`",
1034
 
-                       "``.##aaaaaaa##.`",
1035
 
-                       "``.###aaaaa###.`",
1036
 
-                       "``.####aaa####.`",
1037
 
-                       "``.#####a#####.`",
1038
 
-                       "``.###########.`",
1039
 
-                       "``.............`",
1040
 
-                       "````````````````",
1041
 
-                       "````````````````"
1042
 
-       };
1043
 
-
1044
 
-
1045
 
-       /* XPM */
1046
 
-       const char *down_arrow_xpm[] = {
1047
 
-               /* width height num_colors chars_per_pixel */
1048
 
-               "    16    16        8            1",
1049
 
-                       /* colors */
1050
 
-                       "` c #008080",
1051
 
-                       ". c #000000",
1052
 
-                       "# c #000000",
1053
 
-                       "a c #000000",
1054
 
-                       "b c #000000",
1055
 
-                       "c c #000000",
1056
 
-                       "d c #000000",
1057
 
-                       "e c #000000",
1058
 
-                       /* pixels */
1059
 
-                       "````````````````",
1060
 
-                       "````````````````",
1061
 
-                       "````````````````",
1062
 
-                       "````````````````",
1063
 
-                       "````````````````",
1064
 
-                       "````````````````",
1065
 
-                       "````.........```",
1066
 
-                       "`````.......````",
1067
 
-                       "``````.....`````",
1068
 
-                       "```````...``````",
1069
 
-                       "````````.```````",
1070
 
-                       "````````````````",
1071
 
-                       "````````````````",
1072
 
-                       "````````````````",
1073
 
-                       "````````````````",
1074
 
-                       "````````````````"
1075
 
-       };
1076
 
-
1077
 
-       // Arrow down bitmaps
1078
 
-
1079
 
-       const int tab_x_size = 9;
1080
 
-}
1081
 
-
1082
 
-#include "wxFlatNotebook.h"
1083
 
-#include "renderer.h"
1084
 
-#include "popup_dlg.h"
1085
 
+
1086
 
+#include <wx/wxFlatNotebook/wxFlatNotebook.h>
1087
 
+#include <wx/wxFlatNotebook/renderer.h>
1088
 
+#include <wx/wxFlatNotebook/popup_dlg.h>
1089
 
 #include <algorithm>
1090
 
 #include <wx/tooltip.h>
1091
 
 #include <wx/tipwin.h>
1092
 
@@ -547,7 +86,7 @@
1093
 
        tabHeight += 6;
1094
 
 #endif
1095
 
        m_pages->SetSizeHints(wxSize(-1, tabHeight));
1096
 
-
1097
 
+       
1098
 
        // Add the tab container to the sizer
1099
 
        m_mainSizer->Insert(0, m_pages, 0, wxEXPAND);
1100
 
        m_mainSizer->Layout();
1101
 
@@ -733,23 +272,20 @@
1102
 
        m_pages->DoSetSelection(page);
1103
 
 }
1104
 
 
1105
 
-void wxFlatNotebook::DeletePage(size_t page, bool notify)
1106
 
+void wxFlatNotebook::DeletePage(size_t page)
1107
 
 {
1108
 
        if(page >= m_windows.GetCount())
1109
 
                return;
1110
 
 
1111
 
-       if (notify)
1112
 
-       {
1113
 
-               // Fire a closing event
1114
 
-               wxFlatNotebookEvent event(wxEVT_COMMAND_FLATNOTEBOOK_PAGE_CLOSING, GetId());
1115
 
-               event.SetSelection((int)page);
1116
 
-               event.SetEventObject(this);
1117
 
-               GetEventHandler()->ProcessEvent(event);
1118
 
-
1119
 
-               // The event handler allows it?
1120
 
-               if (!event.IsAllowed())
1121
 
-                       return;
1122
 
-       }
1123
 
+       // Fire a closing event
1124
 
+       wxFlatNotebookEvent event(wxEVT_COMMAND_FLATNOTEBOOK_PAGE_CLOSING, GetId());
1125
 
+       event.SetSelection((int)page);
1126
 
+       event.SetEventObject(this);
1127
 
+       GetEventHandler()->ProcessEvent(event);
1128
 
+
1129
 
+       // The event handler allows it?
1130
 
+       if (!event.IsAllowed())
1131
 
+               return;
1132
 
 
1133
 
        Freeze();
1134
 
 
1135
 
@@ -853,7 +389,7 @@
1136
 
                        {
1137
 
                                m_popupWin = new wxTabNavigatorWindow( this );
1138
 
                                m_popupWin->ShowModal();
1139
 
-                               m_popupWin->Destroy();
1140
 
+                               m_popupWin->Destroy(); 
1141
 
                                m_popupWin = NULL;
1142
 
                        }
1143
 
                        else
1144
 
@@ -934,23 +470,20 @@
1145
 
        }
1146
 
 }
1147
 
 
1148
 
-bool wxFlatNotebook::RemovePage(size_t page, bool notify)
1149
 
+bool wxFlatNotebook::RemovePage(size_t page)
1150
 
 {
1151
 
        if(page >= m_windows.GetCount())
1152
 
                return false;
1153
 
 
1154
 
-       if (notify)
1155
 
-       {
1156
 
-               // Fire a closing event
1157
 
-               wxFlatNotebookEvent event(wxEVT_COMMAND_FLATNOTEBOOK_PAGE_CLOSING, GetId());
1158
 
-               event.SetSelection((int)page);
1159
 
-               event.SetEventObject(this);
1160
 
-               GetEventHandler()->ProcessEvent(event);
1161
 
-
1162
 
-               // The event handler allows it?
1163
 
-               if (!event.IsAllowed())
1164
 
-                       return false;
1165
 
-       }
1166
 
+       // Fire a closing event
1167
 
+       wxFlatNotebookEvent event(wxEVT_COMMAND_FLATNOTEBOOK_PAGE_CLOSING, GetId());
1168
 
+       event.SetSelection((int)page);
1169
 
+       event.SetEventObject(this);
1170
 
+       GetEventHandler()->ProcessEvent(event);
1171
 
+
1172
 
+       // The event handler allows it?
1173
 
+       if (!event.IsAllowed())
1174
 
+               return false;
1175
 
 
1176
 
        Freeze();
1177
 
 
1178
 
@@ -1171,7 +704,6 @@
1179
 
 
1180
 
        /// Create page info and add it to the vector
1181
 
        wxPageInfo pageInfo(caption, imgindex);
1182
 
-       pageInfo.SetPosition(wxPoint(1,1));
1183
 
        m_pagesInfoVec.Add(pageInfo);
1184
 
        Refresh();
1185
 
 }
1186
 
@@ -1183,9 +715,7 @@
1187
 
                m_iPreviousActivePage = m_iActivePage;
1188
 
                m_iActivePage = (int)m_pagesInfoVec.GetCount();
1189
 
        }
1190
 
-       wxPageInfo pg(text, imgindex);
1191
 
-       pg.SetPosition(wxPoint(1,1));
1192
 
-       m_pagesInfoVec.Insert(pg, index);
1193
 
+       m_pagesInfoVec.Insert(wxPageInfo(text, imgindex), index);
1194
 
        Refresh();
1195
 
        return true;
1196
 
 }
1197
 
@@ -1209,16 +739,8 @@
1198
 
        {
1199
 
        case wxFNB_TAB:
1200
 
                {
1201
 
-                       wxFlatNotebookEvent event(wxEVT_COMMAND_FLATNOTEBOOK_PAGE_CLOSING, GetParent()->GetId());
1202
 
-                       event.SetSelection(tabIdx);
1203
 
-                       event.SetEventObject(GetParent());
1204
 
-                       GetParent()->GetEventHandler()->ProcessEvent(event);
1205
 
-                       if (event.IsAllowed())
1206
 
-                       {
1207
 
-                               // Set the current tab to be active
1208
 
-                               SetSelection((size_t)tabIdx);
1209
 
-                               DeletePage((size_t)tabIdx, false);
1210
 
-                       }
1211
 
+                       DeletePage((size_t)tabIdx);
1212
 
+                       break;
1213
 
                }
1214
 
        default:
1215
 
                break;
1216
 
@@ -1228,37 +750,40 @@
1217
 
 
1218
 
 void wxPageContainer::OnRightDown(wxMouseEvent& event)
1219
 
 {
1220
 
-       wxPageInfo pgInfo;
1221
 
-       int tabIdx;
1222
 
-       int where = HitTest(event.GetPosition(), pgInfo, tabIdx);
1223
 
-       switch(where)
1224
 
+       if(m_pRightClickMenu)
1225
 
        {
1226
 
-       case wxFNB_TAB:
1227
 
-       case wxFNB_TAB_X:
1228
 
+               wxPageInfo pgInfo;
1229
 
+               int tabIdx;
1230
 
+               int where = HitTest(event.GetPosition(), pgInfo, tabIdx);
1231
 
+               switch(where)
1232
 
                {
1233
 
-                       if(!m_pagesInfoVec[tabIdx].GetEnabled())
1234
 
-                               break;
1235
 
+               case wxFNB_TAB:
1236
 
+               case wxFNB_TAB_X:
1237
 
+                       {
1238
 
+                               if(!m_pagesInfoVec[tabIdx].GetEnabled())
1239
 
+                                       break;
1240
 
 
1241
 
-                       // Set the current tab to be active
1242
 
-                       SetSelection((size_t)tabIdx);
1243
 
+                               // Set the current tab to be active
1244
 
+                               SetSelection((size_t)tabIdx);
1245
 
 
1246
 
-                       // If the owner has defined a context menu for the tabs,
1247
 
-                       // popup the right click menu
1248
 
-                       if (m_pRightClickMenu)
1249
 
-                               PopupMenu(m_pRightClickMenu);
1250
 
-                       else
1251
 
-                       {
1252
 
-                               // send a message to popup a custom menu
1253
 
-                               wxFlatNotebookEvent event(wxEVT_COMMAND_FLATNOTEBOOK_CONTEXT_MENU, GetParent()->GetId());
1254
 
-                               event.SetSelection((int)tabIdx);
1255
 
-                               event.SetOldSelection((int)m_iActivePage);
1256
 
-                               event.SetEventObject(GetParent());
1257
 
-                               GetParent()->GetEventHandler()->ProcessEvent(event);
1258
 
+                               // If the owner has defined a context menu for the tabs,
1259
 
+                               // popup the right click menu
1260
 
+                               if (m_pRightClickMenu)
1261
 
+                                       PopupMenu(m_pRightClickMenu);
1262
 
+                               else
1263
 
+                               {
1264
 
+                                       // send a message to popup a custom menu
1265
 
+                                       wxFlatNotebookEvent event(wxEVT_COMMAND_FLATNOTEBOOK_CONTEXT_MENU, GetParent()->GetId());
1266
 
+                                       event.SetSelection((int)tabIdx);
1267
 
+                                       event.SetOldSelection((int)m_iActivePage);
1268
 
+                                       event.SetEventObject(GetParent());
1269
 
+                                       GetParent()->GetEventHandler()->ProcessEvent(event);
1270
 
+                               }
1271
 
                        }
1272
 
+                       break;
1273
 
+               default:
1274
 
+                       break;
1275
 
                }
1276
 
-               break;
1277
 
-       default:
1278
 
-               break;
1279
 
        }
1280
 
        event.Skip();
1281
 
 }
1282
 
@@ -1431,7 +956,7 @@
1283
 
 int wxPageContainer::HitTest(const wxPoint& pt, wxPageInfo& pageInfo, int &tabIdx)
1284
 
 {
1285
 
        wxFNBRendererPtr render = wxFNBRendererMgrST::Get()->GetRenderer( GetParent()->GetWindowStyleFlag() );
1286
 
-
1287
 
+       
1288
 
        wxRect rect = GetClientRect();
1289
 
        int btnLeftPos = render->GetLeftButtonPos(this);
1290
 
        int btnRightPos = render->GetRightButtonPos(this);
1291
 
@@ -1505,7 +1030,7 @@
1292
 
                                }
1293
 
                        }
1294
 
 
1295
 
-                       wxRect tabRect = wxRect(pgInfo.GetPosition().x, pgInfo.GetPosition().y,
1296
 
+                       wxRect tabRect = wxRect(pgInfo.GetPosition().x, pgInfo.GetPosition().y, 
1297
 
                                pgInfo.GetSize().x, pgInfo.GetSize().y);
1298
 
                        if(tabRect.Inside(pt))
1299
 
                        {
1300
 
@@ -1577,10 +1102,10 @@
1301
 
        }
1302
 
 }
1303
 
 
1304
 
-void wxPageContainer::DeletePage(size_t page, bool notify)
1305
 
+void wxPageContainer::DeletePage(size_t page)
1306
 
 {
1307
 
        wxFlatNotebook* book = (wxFlatNotebook*)GetParent();
1308
 
-       book->DeletePage(page, notify);
1309
 
+       book->DeletePage(page);
1310
 
        book->Refresh();
1311
 
 }
1312
 
 
1313
 
@@ -1598,7 +1123,7 @@
1314
 
        wxFlatNotebook* book = (wxFlatNotebook*)GetParent();
1315
 
        m_pagesInfoVec.RemoveAt(page);
1316
 
 
1317
 
-       // Thanks to Yiannis AKA Mandrav
1318
 
+       // Thanks to Yiaanis AKA Mandrav
1319
 
        if (m_iActivePage >= (int)page)
1320
 
        {
1321
 
                m_iActivePage--;
1322
 
@@ -1744,7 +1269,7 @@
1323
 
                const bool bRedrawRight = m_nRightButtonStatus != rightButtonStatus;
1324
 
                const bool bRedrawLeft = m_nLeftButtonStatus != leftButtonStatus;
1325
 
                const bool bRedrawTabX = m_nTabXButtonStatus != xTabButtonStatus;
1326
 
-
1327
 
+               
1328
 
                wxFNBRendererPtr render = wxFNBRendererMgrST::Get()->GetRenderer( GetParent()->GetWindowStyleFlag() );
1329
 
 
1330
 
                if (bRedrawX || bRedrawRight || bRedrawLeft || bRedrawTabX || bRedrawDropArrow)
1331
 
@@ -1971,7 +1496,7 @@
1332
 
                        }
1333
 
                }
1334
 
        }
1335
 
-       else if (GetParent()->GetWindowStyleFlag() & wxFNB_ALLOW_FOREIGN_DND)
1336
 
+       else
1337
 
        {
1338
 
 #if defined(__WXMSW__) || defined(__WXGTK__)
1339
 
                if(nTabPage >= 0)
1340
 
@@ -2052,7 +1577,7 @@
1341
 
 
1342
 
        if( !HasFlag( wxFNB_VC8 ) )
1343
 
        {
1344
 
-
1345
 
+               
1346
 
                wxRect rect = GetClientRect();
1347
 
                int clientWidth = rect.width;
1348
 
                int tabHeight = render->CalcTabHeight( this );
1349
 
diff -u -r D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/wxFlatNotebook.h D:\projects\CodeBlocks(commit)\src\sdk\2FNB/wxFlatNotebook.h
1350
 
--- D:\projects\CodeBlocks(commit)\src\sdk\wxFlatNotebook/wxFlatNotebook.h      Wed Oct 11 09:43:28 2006
1351
 
+++ D:\projects\CodeBlocks(commit)\src\sdk\2FNB/wxFlatNotebook.h        Sat Oct  7 01:32:48 2006
1352
 
@@ -1,5 +1,5 @@
1353
 
 ///////////////////////////////////////////////////////////////////////////////
1354
 
-// Name:               wxFlatNotebook.cpp
1355
 
+// Name:               wxFlatNotebook.cpp 
1356
 
 // Purpose:     generic implementation of flat style notebook class.
1357
 
 // Author:      Eran Ifrah <eranif@bezeqint.net>
1358
 
 // Modified by: Priyank Bolia <soft@priyank.in>
1359
 
@@ -37,7 +37,7 @@
1360
 
 #include <wx/dataobj.h>
1361
 
 #include <wx/dnd.h>
1362
 
 
1363
 
-#include "wxFNBDropTarget.h"
1364
 
+#include <wx/wxFlatNotebook/wxFNBDropTarget.h>
1365
 
 
1366
 
 class wxPageContainer;
1367
 
 
1368
 
@@ -73,7 +73,6 @@
1369
 
 #define wxFNB_MOUSE_MIDDLE_CLOSES_TABS 0x00000020
1370
 
 #define wxFNB_BOTTOM                                   0x00000040
1371
 
 #define wxFNB_NODRAG                                   0x00000080
1372
 
-#define wxFNB_ALLOW_FOREIGN_DND                        0x00000080
1373
 
 #define wxFNB_VC8                                              0x00000100
1374
 
 #define wxFNB_X_ON_TAB                                 0x00000200
1375
 
 #define wxFNB_BACKGROUND_GRADIENT              0x00000400
1376
 
@@ -147,7 +146,7 @@
1377
 
        /**
1378
 
        \param page - index of page to be deleted
1379
 
        */
1380
 
-       void DeletePage(size_t page, bool notify = true);
1381
 
+       void DeletePage(size_t page);
1382
 
 
1383
 
        /// Deletes all notebook pages and destroys all windows associated with pages
1384
 
        bool DeleteAllPages();
1385
 
@@ -174,7 +173,7 @@
1386
 
 
1387
 
        /**
1388
 
        * Return the previous selection, useful when implementing smart tabulation
1389
 
-       * \return previous selection, or wxNOT_FOUND
1390
 
+       * \return previous selection, or wxNOT_FOUND 
1391
 
        */
1392
 
        int GetPreviousSelection() const;
1393
 
 
1394
 
@@ -210,7 +209,7 @@
1395
 
        /**
1396
 
        \param page - page index to be removed
1397
 
        */
1398
 
-       bool RemovePage(size_t page, bool notify = true);
1399
 
+       bool RemovePage(size_t page);
1400
 
 
1401
 
        /// Sets the amount of space around each page's icon and label, in pixels.
1402
 
        /**
1403
 
@@ -718,7 +717,7 @@
1404
 
        virtual void ShowTabTooltip(int tabIdx);
1405
 
 
1406
 
        /// A wrapper from calling the DoDeletePage()
1407
 
-       virtual void DeletePage(size_t page, bool notify = true);
1408
 
+       virtual void DeletePage(size_t page);
1409
 
 
1410
 
        /// Remove all pages from the container (it also deletes them)
1411
 
        virtual void DeleteAllPages();
1412
 
@@ -872,21 +871,460 @@
1413
 
        // Images used by the control
1414
 
        ////////////////////////////////////////////////////////////
1415
 
        /* XPM */
1416
 
-       extern const char *left_arrow_disabled_xpm[];
1417
 
-       extern const char *x_button_pressed_xpm[];
1418
 
-       extern const char *left_arrow_xpm[];
1419
 
-       extern const char *x_button_hilite_xpm[];
1420
 
-       extern const char *x_button_xpm[];
1421
 
-       extern const char *left_arrow_pressed_xpm[];
1422
 
-       extern const char *left_arrow_hilite_xpm[];
1423
 
-       extern const char *right_arrow_disabled_xpm[];
1424
 
-       extern const char *right_arrow_hilite_xpm[];
1425
 
-       extern const char *right_arrow_pressed_xpm[];
1426
 
-       extern const char *right_arrow_xpm[];
1427
 
-       extern const char *down_arrow_hilite_xpm[];
1428
 
-       extern const char *down_arrow_pressed_xpm[];
1429
 
-       extern const char *down_arrow_xpm[];
1430
 
-       extern const int tab_x_size;
1431
 
+       static char *left_arrow_disabled_xpm[] = {
1432
 
+               /* width height num_colors chars_per_pixel */
1433
 
+               "    16    16        8            1",
1434
 
+                       /* colors */
1435
 
+                       "` c #008080",
1436
 
+                       ". c #555555",
1437
 
+                       "# c #000000",
1438
 
+                       "a c #000000",
1439
 
+                       "b c #000000",
1440
 
+                       "c c #000000",
1441
 
+                       "d c #000000",
1442
 
+                       "e c #000000",
1443
 
+                       /* pixels */
1444
 
+                       "````````````````",
1445
 
+                       "````````````````",
1446
 
+                       "````````````````",
1447
 
+                       "````````.```````",
1448
 
+                       "```````..```````",
1449
 
+                       "``````.`.```````",
1450
 
+                       "`````.``.```````",
1451
 
+                       "````.```.```````",
1452
 
+                       "`````.``.```````",
1453
 
+                       "``````.`.```````",
1454
 
+                       "```````..```````",
1455
 
+                       "````````.```````",
1456
 
+                       "````````````````",
1457
 
+                       "````````````````",
1458
 
+                       "````````````````",
1459
 
+                       "````````````````"
1460
 
+       };
1461
 
+
1462
 
+       /* XPM */
1463
 
+       static char *x_button_pressed_xpm[] = {
1464
 
+               /* width height num_colors chars_per_pixel */
1465
 
+               "    16    16        8            1",
1466
 
+                       /* colors */
1467
 
+                       "` c #008080",
1468
 
+                       ". c #4766e0",
1469
 
+                       "# c #9e9ede",
1470
 
+                       "a c #000000",
1471
 
+                       "b c #000000",
1472
 
+                       "c c #000000",
1473
 
+                       "d c #000000",
1474
 
+                       "e c #000000",
1475
 
+                       /* pixels */
1476
 
+                       "````````````````",
1477
 
+                       "`..............`",
1478
 
+                       "`.############.`",
1479
 
+                       "`.############.`",
1480
 
+                       "`.############.`",
1481
 
+                       "`.###aa####aa#.`",
1482
 
+                       "`.####aa##aa##.`",
1483
 
+                       "`.#####aaaa###.`",
1484
 
+                       "`.######aa####.`",
1485
 
+                       "`.#####aaaa###.`",
1486
 
+                       "`.####aa##aa##.`",
1487
 
+                       "`.###aa####aa#.`",
1488
 
+                       "`.############.`",
1489
 
+                       "`..............`",
1490
 
+                       "````````````````",
1491
 
+                       "````````````````"
1492
 
+       };
1493
 
+
1494
 
+
1495
 
+       /* XPM */
1496
 
+       static char *left_arrow_xpm[] = {
1497
 
+               /* width height num_colors chars_per_pixel */
1498
 
+               "    16    16        8            1",
1499
 
+                       /* colors */
1500
 
+                       "` c #008080",
1501
 
+                       ". c #555555",
1502
 
+                       "# c #000000",
1503
 
+                       "a c #000000",
1504
 
+                       "b c #000000",
1505
 
+                       "c c #000000",
1506
 
+                       "d c #000000",
1507
 
+                       "e c #000000",
1508
 
+                       /* pixels */
1509
 
+                       "````````````````",
1510
 
+                       "````````````````",
1511
 
+                       "````````````````",
1512
 
+                       "````````.```````",
1513
 
+                       "```````..```````",
1514
 
+                       "``````...```````",
1515
 
+                       "`````....```````",
1516
 
+                       "````.....```````",
1517
 
+                       "`````....```````",
1518
 
+                       "``````...```````",
1519
 
+                       "```````..```````",
1520
 
+                       "````````.```````",
1521
 
+                       "````````````````",
1522
 
+                       "````````````````",
1523
 
+                       "````````````````",
1524
 
+                       "````````````````"
1525
 
+       };
1526
 
+
1527
 
+       /* XPM */
1528
 
+       static char *x_button_hilite_xpm[] = {
1529
 
+               /* width height num_colors chars_per_pixel */
1530
 
+               "    16    16        8            1",
1531
 
+                       /* colors */
1532
 
+                       "` c #008080",
1533
 
+                       ". c #4766e0",
1534
 
+                       "# c #c9dafb",
1535
 
+                       "a c #000000",
1536
 
+                       "b c #000000",
1537
 
+                       "c c #000000",
1538
 
+                       "d c #000000",
1539
 
+                       "e c #000000",
1540
 
+                       /* pixels */
1541
 
+                       "````````````````",
1542
 
+                       "`..............`",
1543
 
+                       "`.############.`",
1544
 
+                       "`.############.`",
1545
 
+                       "`.##aa####aa##.`",
1546
 
+                       "`.###aa##aa###.`",
1547
 
+                       "`.####aaaa####.`",
1548
 
+                       "`.#####aa#####.`",
1549
 
+                       "`.####aaaa####.`",
1550
 
+                       "`.###aa##aa###.`",
1551
 
+                       "`.##aa####aa##.`",
1552
 
+                       "`.############.`",
1553
 
+                       "`.############.`",
1554
 
+                       "`..............`",
1555
 
+                       "````````````````",
1556
 
+                       "````````````````"
1557
 
+       };
1558
 
+
1559
 
+       /* XPM */
1560
 
+       static char *x_button_xpm[] = {
1561
 
+               /* width height num_colors chars_per_pixel */
1562
 
+               "    16    16        8            1",
1563
 
+                       /* colors */
1564
 
+                       "` c #008080",
1565
 
+                       ". c #555555",
1566
 
+                       "# c #000000",
1567
 
+                       "a c #000000",
1568
 
+                       "b c #000000",
1569
 
+                       "c c #000000",
1570
 
+                       "d c #000000",
1571
 
+                       "e c #000000",
1572
 
+                       /* pixels */
1573
 
+                       "````````````````",
1574
 
+                       "````````````````",
1575
 
+                       "````````````````",
1576
 
+                       "````````````````",
1577
 
+                       "````..````..````",
1578
 
+                       "`````..``..`````",
1579
 
+                       "``````....``````",
1580
 
+                       "```````..```````",
1581
 
+                       "``````....``````",
1582
 
+                       "`````..``..`````",
1583
 
+                       "````..````..````",
1584
 
+                       "````````````````",
1585
 
+                       "````````````````",
1586
 
+                       "````````````````",
1587
 
+                       "````````````````",
1588
 
+                       "````````````````"
1589
 
+       };
1590
 
+
1591
 
+       /* XPM */
1592
 
+       static char *left_arrow_pressed_xpm[] = {
1593
 
+               /* width height num_colors chars_per_pixel */
1594
 
+               "    16    16        8            1",
1595
 
+                       /* colors */
1596
 
+                       "` c #008080",
1597
 
+                       ". c #4766e0",
1598
 
+                       "# c #9e9ede",
1599
 
+                       "a c #000000",
1600
 
+                       "b c #000000",
1601
 
+                       "c c #000000",
1602
 
+                       "d c #000000",
1603
 
+                       "e c #000000",
1604
 
+                       /* pixels */
1605
 
+                       "````````````````",
1606
 
+                       "`..............`",
1607
 
+                       "`.############.`",
1608
 
+                       "`.############.`",
1609
 
+                       "`.#######a####.`",
1610
 
+                       "`.######aa####.`",
1611
 
+                       "`.#####aaa####.`",
1612
 
+                       "`.####aaaa####.`",
1613
 
+                       "`.###aaaaa####.`",
1614
 
+                       "`.####aaaa####.`",
1615
 
+                       "`.#####aaa####.`",
1616
 
+                       "`.######aa####.`",
1617
 
+                       "`.#######a####.`",
1618
 
+                       "`..............`",
1619
 
+                       "````````````````",
1620
 
+                       "````````````````"
1621
 
+       };
1622
 
+
1623
 
+       /* XPM */
1624
 
+       static char *left_arrow_hilite_xpm[] = {
1625
 
+               /* width height num_colors chars_per_pixel */
1626
 
+               "    16    16        8            1",
1627
 
+                       /* colors */
1628
 
+                       "` c #008080",
1629
 
+                       ". c #4766e0",
1630
 
+                       "# c #c9dafb",
1631
 
+                       "a c #000000",
1632
 
+                       "b c #000000",
1633
 
+                       "c c #000000",
1634
 
+                       "d c #000000",
1635
 
+                       "e c #000000",
1636
 
+                       /* pixels */
1637
 
+                       "````````````````",
1638
 
+                       "`..............`",
1639
 
+                       "`.############.`",
1640
 
+                       "`.######a#####.`",
1641
 
+                       "`.#####aa#####.`",
1642
 
+                       "`.####aaa#####.`",
1643
 
+                       "`.###aaaa#####.`",
1644
 
+                       "`.##aaaaa#####.`",
1645
 
+                       "`.###aaaa#####.`",
1646
 
+                       "`.####aaa#####.`",
1647
 
+                       "`.#####aa#####.`",
1648
 
+                       "`.######a#####.`",
1649
 
+                       "`.############.`",
1650
 
+                       "`..............`",
1651
 
+                       "````````````````",
1652
 
+                       "````````````````"
1653
 
+       };
1654
 
+
1655
 
+       /* XPM */
1656
 
+       static char *right_arrow_disabled_xpm[] = {
1657
 
+               /* width height num_colors chars_per_pixel */
1658
 
+               "    16    16        8            1",
1659
 
+                       /* colors */
1660
 
+                       "` c #008080",
1661
 
+                       ". c #555555",
1662
 
+                       "# c #000000",
1663
 
+                       "a c #000000",
1664
 
+                       "b c #000000",
1665
 
+                       "c c #000000",
1666
 
+                       "d c #000000",
1667
 
+                       "e c #000000",
1668
 
+                       /* pixels */
1669
 
+                       "````````````````",
1670
 
+                       "````````````````",
1671
 
+                       "````````````````",
1672
 
+                       "```````.````````",
1673
 
+                       "```````..```````",
1674
 
+                       "```````.`.``````",
1675
 
+                       "```````.``.`````",
1676
 
+                       "```````.```.````",
1677
 
+                       "```````.``.`````",
1678
 
+                       "```````.`.``````",
1679
 
+                       "```````..```````",
1680
 
+                       "```````.````````",
1681
 
+                       "````````````````",
1682
 
+                       "````````````````",
1683
 
+                       "````````````````",
1684
 
+                       "````````````````"
1685
 
+       };
1686
 
+
1687
 
+       /* XPM */
1688
 
+       static char *right_arrow_hilite_xpm[] = {
1689
 
+               /* width height num_colors chars_per_pixel */
1690
 
+               "    16    16        8            1",
1691
 
+                       /* colors */
1692
 
+                       "` c #008080",
1693
 
+                       ". c #4766e0",
1694
 
+                       "# c #c9dafb",
1695
 
+                       "a c #000000",
1696
 
+                       "b c #000000",
1697
 
+                       "c c #000000",
1698
 
+                       "d c #000000",
1699
 
+                       "e c #000000",
1700
 
+                       /* pixels */
1701
 
+                       "````````````````",
1702
 
+                       "`..............`",
1703
 
+                       "`.############.`",
1704
 
+                       "`.####a#######.`",
1705
 
+                       "`.####aa######.`",
1706
 
+                       "`.####aaa#####.`",
1707
 
+                       "`.####aaaa####.`",
1708
 
+                       "`.####aaaaa###.`",
1709
 
+                       "`.####aaaa####.`",
1710
 
+                       "`.####aaa#####.`",
1711
 
+                       "`.####aa######.`",
1712
 
+                       "`.####a#######.`",
1713
 
+                       "`.############.`",
1714
 
+                       "`..............`",
1715
 
+                       "````````````````",
1716
 
+                       "````````````````"
1717
 
+       };
1718
 
+
1719
 
+       /* XPM */
1720
 
+       static char *right_arrow_pressed_xpm[] = {
1721
 
+               /* width height num_colors chars_per_pixel */
1722
 
+               "    16    16        8            1",
1723
 
+                       /* colors */
1724
 
+                       "` c #008080",
1725
 
+                       ". c #4766e0",
1726
 
+                       "# c #9e9ede",
1727
 
+                       "a c #000000",
1728
 
+                       "b c #000000",
1729
 
+                       "c c #000000",
1730
 
+                       "d c #000000",
1731
 
+                       "e c #000000",
1732
 
+                       /* pixels */
1733
 
+                       "````````````````",
1734
 
+                       "`..............`",
1735
 
+                       "`.############.`",
1736
 
+                       "`.############.`",
1737
 
+                       "`.#####a######.`",
1738
 
+                       "`.#####aa#####.`",
1739
 
+                       "`.#####aaa####.`",
1740
 
+                       "`.#####aaaa###.`",
1741
 
+                       "`.#####aaaaa##.`",
1742
 
+                       "`.#####aaaa###.`",
1743
 
+                       "`.#####aaa####.`",
1744
 
+                       "`.#####aa#####.`",
1745
 
+                       "`.#####a######.`",
1746
 
+                       "`..............`",
1747
 
+                       "````````````````",
1748
 
+                       "````````````````"
1749
 
+       };
1750
 
+
1751
 
+
1752
 
+       /* XPM */
1753
 
+       static char *right_arrow_xpm[] = {
1754
 
+               /* width height num_colors chars_per_pixel */
1755
 
+               "    16    16        8            1",
1756
 
+                       /* colors */
1757
 
+                       "` c #008080",
1758
 
+                       ". c #555555",
1759
 
+                       "# c #000000",
1760
 
+                       "a c #000000",
1761
 
+                       "b c #000000",
1762
 
+                       "c c #000000",
1763
 
+                       "d c #000000",
1764
 
+                       "e c #000000",
1765
 
+                       /* pixels */
1766
 
+                       "````````````````",
1767
 
+                       "````````````````",
1768
 
+                       "````````````````",
1769
 
+                       "```````.````````",
1770
 
+                       "```````..```````",
1771
 
+                       "```````...``````",
1772
 
+                       "```````....`````",
1773
 
+                       "```````.....````",
1774
 
+                       "```````....`````",
1775
 
+                       "```````...``````",
1776
 
+                       "```````..```````",
1777
 
+                       "```````.````````",
1778
 
+                       "````````````````",
1779
 
+                       "````````````````",
1780
 
+                       "````````````````",
1781
 
+                       "````````````````"
1782
 
+       };
1783
 
+
1784
 
+       // Arrow down bitmaps
1785
 
+       /* XPM */
1786
 
+       static char *down_arrow_hilite_xpm[] = {
1787
 
+               /* width height num_colors chars_per_pixel */
1788
 
+               "    16    16        8            1",
1789
 
+                       /* colors */
1790
 
+                       "` c #008080",
1791
 
+                       ". c #4766e0",
1792
 
+                       "# c #c9dafb",
1793
 
+                       "a c #000000",
1794
 
+                       "b c #000000",
1795
 
+                       "c c #000000",
1796
 
+                       "d c #000000",
1797
 
+                       "e c #000000",
1798
 
+                       /* pixels */
1799
 
+                       "````````````````",
1800
 
+                       "``.............`",
1801
 
+                       "``.###########.`",
1802
 
+                       "``.###########.`",
1803
 
+                       "``.###########.`",
1804
 
+                       "``.#aaaaaaaaa#.`",
1805
 
+                       "``.##aaaaaaa##.`",
1806
 
+                       "``.###aaaaa###.`",
1807
 
+                       "``.####aaa####.`",
1808
 
+                       "``.#####a#####.`",
1809
 
+                       "``.###########.`",
1810
 
+                       "``.###########.`",
1811
 
+                       "``.###########.`",
1812
 
+                       "``.............`",
1813
 
+                       "````````````````",
1814
 
+                       "````````````````"
1815
 
+       };
1816
 
+
1817
 
+       /* XPM */
1818
 
+       static char *down_arrow_pressed_xpm[] = {
1819
 
+               /* width height num_colors chars_per_pixel */
1820
 
+               "    16    16        8            1",
1821
 
+                       /* colors */
1822
 
+                       "` c #008080",
1823
 
+                       ". c #4766e0",
1824
 
+                       "# c #9e9ede",
1825
 
+                       "a c #000000",
1826
 
+                       "b c #000000",
1827
 
+                       "c c #000000",
1828
 
+                       "d c #000000",
1829
 
+                       "e c #000000",
1830
 
+                       /* pixels */
1831
 
+                       "````````````````",
1832
 
+                       "``.............`",
1833
 
+                       "``.###########.`",
1834
 
+                       "``.###########.`",
1835
 
+                       "``.###########.`",
1836
 
+                       "``.###########.`",
1837
 
+                       "``.###########.`",
1838
 
+                       "``.#aaaaaaaaa#.`",
1839
 
+                       "``.##aaaaaaa##.`",
1840
 
+                       "``.###aaaaa###.`",
1841
 
+                       "``.####aaa####.`",
1842
 
+                       "``.#####a#####.`",
1843
 
+                       "``.###########.`",
1844
 
+                       "``.............`",
1845
 
+                       "````````````````",
1846
 
+                       "````````````````"
1847
 
+       };
1848
 
+
1849
 
+
1850
 
+       /* XPM */
1851
 
+       static char *down_arrow_xpm[] = {
1852
 
+               /* width height num_colors chars_per_pixel */
1853
 
+               "    16    16        8            1",
1854
 
+                       /* colors */
1855
 
+                       "` c #008080",
1856
 
+                       ". c #000000",
1857
 
+                       "# c #000000",
1858
 
+                       "a c #000000",
1859
 
+                       "b c #000000",
1860
 
+                       "c c #000000",
1861
 
+                       "d c #000000",
1862
 
+                       "e c #000000",
1863
 
+                       /* pixels */
1864
 
+                       "````````````````",
1865
 
+                       "````````````````",
1866
 
+                       "````````````````",
1867
 
+                       "````````````````",
1868
 
+                       "````````````````",
1869
 
+                       "````````````````",
1870
 
+                       "````.........```",
1871
 
+                       "`````.......````",
1872
 
+                       "``````.....`````",
1873
 
+                       "```````...``````",
1874
 
+                       "````````.```````",
1875
 
+                       "````````````````",
1876
 
+                       "````````````````",
1877
 
+                       "````````````````",
1878
 
+                       "````````````````",
1879
 
+                       "````````````````"
1880
 
+       };      
1881
 
+
1882
 
+       // Arrow down bitmaps
1883
 
+
1884
 
+       const int tab_x_size = 9;
1885
 
 }
1886
 
 
1887
 
 //////////////////////////////////////////////////////////////////////////////////////////////////