Recent

Author Topic: How to change the default palette of FV?  (Read 649 times)

alecar

  • Newbie
  • Posts: 2
How to change the default palette of FV?
« on: May 29, 2024, 01:50:19 am »
Hi, I'm trying to learn a little bit of FV with the help of this tutorial: https://nachocabanes.com/pascal/curso/cupas17.php

Everything works fine but I would like to change the palette because I prefer to avoid colors in the terminal. I only found this info (https://stackoverflow.com/q/43728401) but I'm new to Pascal and I don't understand what they're talking about.

Can you help me with this?.

Code: Pascal  [Select][+][-]
  1.  {--------------------------}
  2.  {  Ejemplo en Pascal:      }
  3.  {                          }
  4.  {    Turbo Vision - 3      }
  5.  {    TV3.PAS               }
  6.  {                          }
  7.  {  Este fuente procede de  }
  8.  {  CUPAS, curso de Pascal  }
  9.  {  por Nacho Cabanes       }
  10.  {                          }
  11.  {  Comprobado con:         }
  12.  {    - Free Pascal 2.2.0w  }
  13.  {    - Turbo Pascal 7.0    }
  14.  {--------------------------}
  15.  program TV3;
  16.  uses App, Objects, Menus, Drivers, Views, MsgBox;
  17.  const
  18.    cmAyuda = 100;   { Una orden que vamos a crear }
  19.  type Programa = object (TApplication)
  20.      procedure InitStatusLine; virtual;
  21.      procedure HandleEvent(var Suceso: TEvent); virtual;
  22.    end;
  23.  procedure Programa.InitStatusLine;
  24.  var
  25.    R: TRect;               { Rectangulo de pantalla }
  26.  begin
  27.    GetExtent(R);           { Miramos cuando ocupa }
  28.    R.A.Y := R.B.Y - 1;     { Nos quedamos la línea inferior }
  29.    New(StatusLine, Init(R,
  30.      NewStatusDef(0, $FFFF,
  31.        NewStatusKey('~Alt-S~ Salir', kbAltS, cmQuit,
  32.        NewStatusKey('~F1~ Ayuda', kbF1, cmAyuda,
  33.        nil)),
  34.      nil)));
  35.  end;
  36.  procedure Programa.HandleEvent(var Suceso: TEvent);
  37.  var
  38.    R: TRect;
  39.  begin
  40.    inherited HandleEvent(Suceso);       { Primero que mire el "padre" }
  41.    if Suceso.What = evCommand then      { Si es una orden }
  42.      case Suceso.Command of             { Miramos que orden es }
  43.        cmAyuda:
  44.           MessageBox('¡Aun no hay ayuda disponible!',
  45.             nil, mfWarning or mfOKButton);
  46.      end;
  47.  end;
  48.  var Prog: Programa;
  49.  begin
  50.    Prog.Init;
  51.    Prog.Run;
  52.    Prog.Done;
  53.  end.

cdbc

  • Hero Member
  • *****
  • Posts: 1250
    • http://www.cdbc.dk
Re: How to change the default palette of FV?
« Reply #1 on: May 29, 2024, 06:19:22 am »
Hi
Hmmm, maybe like this:
Code: Pascal  [Select][+][-]
  1.  {--------------------------}
  2.  {  Ejemplo en Pascal:      }
  3.  {                          }
  4.  {    Turbo Vision - 3      }
  5.  {    TV3.PAS               }
  6.  {                          }
  7.  {  Este fuente procede de  }
  8.  {  CUPAS, curso de Pascal  }
  9.  {  por Nacho Cabanes       }
  10.  {                          }
  11.  {  Comprobado con:         }
  12.  {    - Free Pascal 2.2.0w  }
  13.  {    - Turbo Pascal 7.0    }
  14.  {--------------------------}
  15.  program TV3;
  16.  uses App, Objects, Menus, Drivers, Views, MsgBox;
  17.  const
  18.    cmAyuda = 100;   { Una orden que vamos a crear }
  19.  type Programa = object (TApplication)
  20.      procedure InitStatusLine; virtual;
  21.      procedure HandleEvent(var Suceso: TEvent); virtual;
  22.    end;
  23.  procedure Programa.InitStatusLine;
  24.  var
  25.    R: TRect;               { Rectangulo de pantalla }
  26.  begin
  27.    GetExtent(R);           { Miramos cuando ocupa }
  28.    R.A.Y := R.B.Y - 1;     { Nos quedamos la línea inferior }
  29.    New(StatusLine, Init(R,
  30.      NewStatusDef(0, $FFFF,
  31.        NewStatusKey('~Alt-S~ Salir', kbAltS, cmQuit,
  32.        NewStatusKey('~F1~ Ayuda', kbF1, cmAyuda,
  33.        nil)),
  34.      nil)));
  35.  end;
  36.  procedure Programa.HandleEvent(var Suceso: TEvent);
  37.  var
  38.    R: TRect;
  39.  begin
  40.    inherited HandleEvent(Suceso);       { Primero que mire el "padre" }
  41.    if Suceso.What = evCommand then      { Si es una orden }
  42.      case Suceso.Command of             { Miramos que orden es }
  43.        cmAyuda:
  44.           MessageBox('¡Aun no hay ayuda disponible!',
  45.             nil, mfWarning or mfOKButton);
  46.      end;
  47.  end;
  48.  var Prog: Programa;
  49.  begin
  50.    Prog.Init;
  51.    AppPalette := apMonochrome; { <- I think it's here }
  52.    Prog.Run;
  53.    Prog.Done;
  54.  end.
  55.  
Regards Benny
If it ain't broke, don't fix it ;)
PCLinuxOS(rolling release) 64bit -> KDE5 -> FPC 3.2.2 -> Lazarus 2.2.6 up until Jan 2024 from then on it's: KDE5/QT5 -> FPC 3.3.1 -> Lazarus 3.0

alecar

  • Newbie
  • Posts: 2
Re: How to change the default palette of FV?
« Reply #2 on: May 29, 2024, 11:28:15 pm »
I've already tried that before of opening the thread, but the palette doesn't change.

 

TinyPortal © 2005-2018