gettingstarted
[Top] [All Lists]

Re: Preferences!?

To: Getting Started <gettingstarted at lists dot realsoftware dot com>
Subject: Re: Preferences!?
From: Eirik Karlsen <eikarlse at online dot no>
Date: Wed, 30 Mar 2005 01:48:02 +0200
Delivered-to: gettingstarted at lists dot realsoftware dot com
References: <bc7a4f71691091f65874aa5da20a109b at athenet dot net>
Tristian,
I'm working on just that sort of thing right now, and got it working for my
type of variables.
I don't know what type of data you are going to save but this may give you
some ideas.
(sample *.ini file and Save and restore code):

Sample ini file:
********************
Machine generated file...Do NOT edit !
UEGO configuration settings:

[RPM]
RPMDROcolor=&hFFFF00
RPMgraphcolor=&hFF0000
RPMgreen_yellowpercent=33
RPMyellow_redpercent=55
MaxRPM=16000
LogTriggerRPM=12345
StatusRPM=True

[Colors]
AFRDROcolor=&h000000
EGTDROcolor=&h000000
.
.
.
**********************

SAVE-code:
**********************
  Dim TempOut As Variant   'For crosslinking datatypes
  Dim ConfigFile As FolderItem
  Dim fileStream As TextOutputStream
  ConfigFile=GetFolderItem("config.ini")
  fileStream=ConfigFile.CreateTextFile
  '------------- Header ----------------------------------------------
  fileStream.WriteLine "Machine generated file...Do NOT edit !"
  fileStream.WriteLine "UEGO configuration settings:"
  fileStream.WriteLine ""
  '-------------------------------------------------------------------
  '
  '-------------------
  fileStream.WriteLine "[RPM]"
  TempOut=RPMDROcolor
  fileStream.WriteLine "RPMDROcolor="+TempOut.stringvalue
  TempOut=RPMgraphcolor
  fileStream.WriteLine "RPMgraphcolor="+TempOut.stringvalue
  TempOut=RPMgreen_yellowpercent
  fileStream.WriteLine "RPMgreen_yellowpercent="+TempOut.stringvalue
  TempOut=RPMyellow_redpercent
  fileStream.WriteLine "RPMyellow_redpercent="+TempOut.stringvalue
  TempOut=MaxRPM
  fileStream.WriteLine "MaxRPM="+TempOut.stringvalue
  TempOut=LogTriggerRPM
  fileStream.WriteLine "LogTriggerRPM="+TempOut.stringvalue
  TempOut=StatusRPM
  fileStream.WriteLine "StatusRPM="+TempOut.stringvalue
  '-------------------


  fileStream.WriteLine ""  'Separate the sections
  fileStream.WriteLine "[Colors]"
  TempOut=AFRDROcolor
  fileStream.WriteLine "AFRDROcolor="+TempOut.stringvalue
  TempOut=EGTDROcolor
  fileStream.WriteLine "EGTDROcolor="+TempOut.stringvalue
  TempOut=CH1DROcolor
'
'
'
*********************


RESTORE-code:
********************
  Dim ConfigFile as FolderItem
  Dim stream as TextInputStream
  Dim TempIn As Variant   'For crosslinking datatypes
  '---------
  ConfigFile=GetFolderItem("config.ini")
  If ConfigFile = Nil then
    MsgBox "config.ini not found !"
  Else
    If not ConfigFile.Exists then
      MsgBox "config.ini not found !"
    Else
      '----------------------------------
      stream = ConfigFile.OpenAsTextFile
      TempIn=stream.ReadLine   'Skip the headers
      TempIn=stream.ReadLine
      '
      TempIn=stream.ReadLine                                'section
separator
      '----------- RPM -------------------------------------
      TempIn=stream.ReadLine
      '
      TempIn=stream.ReadLine                                'Read next
record from file
      TempIn=Right(TempIn,8)                                'Extract the
data
      RPMDROcolor=TempIn.colorValue                         '---- MOVE TO
VARIABLES ----
      RPMDROcolorCounter=ColorArray.IndexOf(TempIn)
      '
      TempIn=stream.ReadLine                                'Read next
record from file
      TempIn=Right(TempIn,8)                                'Extract the
data
      RPMgraphcolor=TempIn.colorValue                       '---- MOVE TO
VARIABLES ----
      StaticRPM.TextColor=TempIn
      RPMgraphcolorcounter=ColorArray.IndexOf(TempIn)
      '
      TempIn=stream.ReadLine                                'Read next
record from file
      TempIn=Right(TempIn,(Len(TempIn)-InStr(TempIn,"=")))  'Extract data
right of "="
      RPMgreen_yellowpercent=val(TempIn)                    '---- MOVE TO
VARIABLES ----
      '
      TempIn=stream.ReadLine                                'Read next
record from file
      TempIn=Right(TempIn,(Len(TempIn)-InStr(TempIn,"=")))  'Extract data
right of "="
      RPMyellow_redpercent=val(TempIn)                      '---- MOVE TO
VARIABLES ----
      '
      TempIn=stream.ReadLine                                'Read next
record from file
      TempIn=Right(TempIn,(Len(TempIn)-InStr(TempIn,"=")))  'Extract data
right of "="
      MaxRPM=val(TempIn)                                    '---- MOVE TO
VARIABLES ----
      '
      TempIn=stream.ReadLine                                'Read next
record from file
      TempIn=Right(TempIn,(Len(TempIn)-InStr(TempIn,"=")))  'Extract data
right of "="
      LogTriggerRPM=val(TempIn)                             '---- MOVE TO
VARIABLES ----
      '
      TempIn=stream.ReadLine                                'Read next
record from file
      TempIn=Right(TempIn,(Len(TempIn)-InStr(TempIn,"=")))  'Extract data
right of "="
      StatusRPM=TempIn                                      '---- MOVE TO
VARIABLES ----
      If StatusRPM=True Then 'Button IN and Light ON
        BButtonRPM.value=True
        LightON=NewPicture(BButtonRPM.width,BButtonRPM.height,16)
        LightON.graphics.ForeColor=ButtLightColor ' Lightcolor:Light Amber
        LightON.graphics.FillRect 0,0,(BButtonRPM.width,BButtonRPM.height)
        BButtonRPM.icon=LightON
      Else                   'Button OUT and Light OFF
        BButtonRPM.value=False
        LightOFF=NewPicture(BButtonRPM.width,BButtonRPM.height,16)
        LightOFF.graphics.ForeColor=ButtDarkColor    'Windows Standard Gray

        LightOFF.graphics.FillRect 0,0,(BButtonRPM.width,BButtonRPM.height)

        BButtonRPM.icon=LightOFF
      End If
      '------------------------------------------------------
'
'
'
'
************************


Hope This Helps









Tristan wrote:

> I know that many programs have preferences that stay at the value that
> the user wants instead of reverting to the defaults. Is it possible for
> me to do this in REALBasic? If so, HOW?
>
>         Thx,
>                 Tbg10101

--
*******************************************
VISIT MY HOME PAGE:
<http://home.online.no/~eikarlse/index.htm>
LAST UPDATED: 23/08/2003
*******************************************
Regards
Eirik Karlsen

_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>

<Prev in Thread] Current Thread [Next in Thread>