Click here to Skip to main content
Licence 
First Posted 29 May 2001
Views 74,703
Bookmarked 23 times

Saving and restoring window appearance in WTL

By | 27 Jun 2001 | Article
Simple, but useful classes to save/restore window appearance

Overview

Now you can use simple classes CWindowSettings, CReBarSettings, CSplitterSettings with your WTL projects to quickly save/restore window appearance (size, position). Settings are saved in registry. Additional properties saved for ReBar Control including bands sequence and position. So your window will appear next time when opened as user customized him.

How to use these classes in your WTL App

  1. Add two files RegSettings.h and RegSettings.cpp to your project.
  2. Add the header file RegSettings.h to the Frame or Window source code that will be using the classes.
  3. Load window settings from registry by adding the following code to the method that shows the window (the global Run function for a main frame):

    CWindowSettings ws;
    if(ws.Load("Software\\WTLApps\\DemoApp", "MainFrame"))
       ws.ApplyTo(wndMain, nCmdShow);
    else
       wndMain.ShowWindow(nCmdShow);
    
  4. Load rebar settings from registry by adding the following code to the OnCreate method of the frame class:

    CReBarSettings rs;
    CReBarCtrl rbc = m_hWndToolBar;
    if(rs.Load("Software\\WTLApps\\DemoApp", "ReBar"))
      rs.ApplyTo(rbc);
    
  5. Save window and rebar settings to registry by adding the following code to the OnDestroy method of the frame class:

    CWindowSettings ws;
    ws.GetFrom(*this);
    ws.Save("Software\\WTLApps\\DemoApp", "MainFrame");
    
    CReBarSettings rs;
    CReBarCtrl rbc = m_hWndToolBar;
    rs.GetFrom(rbc);
    rs.Save("Software\\WTLApps\\DemoApp", "ReBar");
    

    Also you can save/restore splitter position using CSplitterSettings class

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

About the Author

Magomed Abdurakhmanov

Web Developer

Russian Federation Russian Federation

Member



Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
GeneralSmall adjustment to CreateEx when using splitter bars PinmemberJonathan Davies6:00 16 Mar '09  
GeneralRe: Small adjustment to CreateEx when using splitter bars PinmemberMagomed Abdurakhmanov23:50 16 Mar '09  
GeneralRe: Small adjustment to CreateEx when using splitter bars PinmemberJonathan Davies2:48 17 Mar '09  
GeneralThis is really good Pinmemberbeaverdown10:58 10 Mar '04  
GeneralAnother suggestion Pinmemberyarp5:11 4 Jun '03  
QuestionHow about.. PinmemberTerry Denham12:22 30 May '01  
AnswerRe: How about.. PinmemberMagomed G. Abdurakhmanov22:32 30 May '01  
GeneralRe: How about.. PinmemberTerry Denham6:00 31 May '01  
GeneralRe: How about.. PinmemberJames Pullicino22:31 3 Jun '01  
GeneralSuggestions PinmemberMaximilian Hänel7:56 30 May '01  
GeneralRe: Suggestions PinmemberMagomed G. Abdurakhmanov22:38 30 May '01  
GeneralRe: Suggestions PinmemberPhilippe Mori4:08 31 May '01  
GeneralRe: Suggestions PinmemberMagomed Abdurakhmanov5:56 1 Jun '01  
GeneralRe: Suggestions PinmemberMaximilian Hänel12:16 2 Jun '01  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web02 | 2.5.120528.1 | Last Updated 28 Jun 2001
Article Copyright 2001 by Magomed Abdurakhmanov
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid