I finished the new MDI-background-painter.
What You can do :
1. Paint MDI-childs, MDI-Buttons and Dialogs on a MDI-frame
2. Any Background-combinations are possible
3. Painters/Selectors for : Colors, Gradients, Brushes, Images and extra Image-selection for Button-transp
4. Any changes from inside the Painters also changes the Background of the MDI-child, MDI-buttons and Dialog.
( to show a changed Background of the MDI-frame, You have to Restart. )
5. Restart from inside the Application, to repaint the MDI-frame-background ( Thanks to Daniel )
6. Save and Load selections from Ini-file
7. Hide the MDI-buttons, to capture the Background-area for transparent-effect.
8. Write a PRG with selected Values
Many Samples, showing the use of the new TSelex-class from inside a Ribbonbar.
No Exit/close-buttons are used for the Painters.
They are closed automaticly, as soon You select a different option from the Ribbonbar.
Changing a option inside a TSelex-group, also changes the selected Painter ( Dialog ) automaticly.
Download Version 1.2 ( 4.8 MB ) : http://www.pflegeplus.com/fw_downloads/MDIPaint.zip
The Start-screen

The MDI-frame selection

The MDI-Child and Dialog selection

The MDI-button selection

Color-selection

Gradient-selection

Change Gradient-display

Brush-selection

Image-selection

Write PRG

Hide MDI-child ( Buttons ) for Screenshot-area
I used for the Screenshot the same Image-name like for the MDI-frame-background like :
MDI-frame = BACK1.jpg, Screenshot-area = BACK1A.jpg

Info about INI-file-values :
Code: Select all | Expand
nOption1 := 4 // MDI-Frame => Color, Gradient, Brush, Image
nOption2 := 4 // MDI-Child => Color, Gradient, Brush, Image
nOption3 := 5 // MDI-Button => Color, Gradient, Brush, Image, Transparent
nOption4 := 5 // MDI-Frame, MDI-Child, MDI-Button, ??? => Color-Selection
nOption5 := 5 // MDI-Frame, MDI-Child, MDI-Button, ??? => Gradient-Selection
nOption6 := 6 // MDI-Frame Gradient-pos
nOption7 := 1 // GRADIENT - Direction MDI-Frame
nOption8 := 6 // MDI-Child Gradient-pos
nOption9 := 1 // GRADIENT - Direction MDI-Child
nOption10 := 6 // MDI-Button Gradient-pos
nOption11 := 1 // GRADIENT - Direction MDI-Button
nOption12 := 5 // MDI-Frame, MDI-Child, MDI-Button, ??? = Brush-Selection
nOption13 := 5 // MDI-Frame, MDI-Child, MDI-Button, ??? = Image-Selection
nMainStyle = nOR( WS_OVERLAPPED | WS_VISIBLE )
// Some Colors
// -------------------
// Black = 0
// White = 16777215
// Blue = 8388608
// Blue+ = 16776960
// Green = 32768
// Green+ = 8454016
// Red = 128
// Red+ = 10853885
// Yellow = 65535
// MDI-Frame
// ---------------
nColor1a := 14853684
nColor1b := 16312263
nMove1 := 0.50
nPos1a := 10
nPos1b := 10
lDirect1 := .T.
aColors1 := { { nMove1, nColor1a, nColor1b }, { nMove1, nColor1b, nColor1a } }
cBrush1 := c_Path + "\bitmaps\Marble.bmp"
cImage1 := c_Path + "\bitmaps\Back3.jpg"
// Child-Window and Dialog
// ---------------------------------
nColor2a := 14853684
nColor2b := 16312263
nMove2 := 0.50
nPos2a := 10
nPos2b := 10
lDirect2 := .T.
aColors2 := { { nMove2, nColor2a, nColor2b }, { nMove2, nColor2b, nColor2a } }
cBrush2 := c_Path + "\bitmaps\Marble.bmp"
cImage2 := c_Path + "\bitmaps\Back1.jpg"
cBrush4 := c_Path + "\bitmaps\Marble.bmp"
// MDI-Frame-Buttons
// --------------------------
nColor3a := 14853684
nColor3b := 16312263
nMove3 := 0.50
nPos3a := 10
nPos3b := 10
lDirect3 := .T.
aColors3 := { { nMove3, nColor3a, nColor3b }, { nMove3, nColor3b, nColor3a } }
cBrush3 := c_Path + "\bitmaps\Marble.bmp"
cImage3 := c_Path + "\bitmaps\Back3.jpg"
cImage3A := c_Path + "\bitmaps\Back3A.jpg"
Best Regards
Uwe
