Info Extension Plugin

General discussion about Celestia that doesn't fit into other forums.
Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 2 months
Location: NY, USA

Post #21by selden » 06.02.2004, 16:16

maxim,

I seem to have said something in the wrong way. I did indeed mean the % settings in CSS.

I really don't understand why you want to change any of the font settings at all, to be truthful. Why not just let the browser use whatever preferences the user has configured?
Selden

Topic author
maxim
Posts: 1036
Joined: 13.11.2003
With us: 21 years
Location: N?rnberg, Germany

Post #22by maxim » 06.02.2004, 17:48

selden wrote:I seem to have said something in the wrong way. I did indeed mean the % settings in CSS.

But, as I said above, the CSS % settings as defined by W3C does reflect size in relation to the direct parental HTML element. So there is no way to get a direct relation between user defined font size and new font size.

selden wrote:I really don't understand why you want to change any of the font settings at all, to be truthful. Why not just let the browser use whatever preferences the user has configured?


Because it's only a small popup window in the left(right) lower(upper) corner in front of running Celestia. I thought it'll be well balanced with these settings.
I'll gonna check for a 'styleless' version.

maxim.

don
Posts: 1709
Joined: 12.07.2003
With us: 21 years 4 months
Location: Colorado, USA (7000 ft)

Post #23by don » 06.02.2004, 22:05

Howdy Maxim,

Thanks for working on this!

In the previous version, I thought your Info Panel was a sub-option in the Celestia Info section, no? Now, the only thing that shows up is Info and when you click this, your Info Panel is displayed.


maxim wrote:Resizable is default now.
Hmmmm, when a window is resized, the next link (forward or backward) resizes the window back to it's initial size. The user must manually modify the base window size to be the size they would generally want. Doesn't seem very intuitive.


maxim wrote:Hand cursor is used.
Good addition!


maxim wrote:I removed function code from 'pluginConfig.js', so it can be regarded now as something like a plain text configuration file. More configuration settings are available. One of them is font size, which can now be adjusted from a central point.
Using EarthInfo as an example, it seems that this change has lost the ability for .bs to actually get set and used, even though it's specified in BODY. The other fonts are not inheriting the font size from bs. If I set it to 50px, it is not used.

As for percentages, you should be able to specify the bs font size as [font-size: 100%;] or any other percentage desired. At least in CSS 2.0.


maxim wrote:There is no way of using a 'real' configurations file, because javascript is not allowed to read/write onto your filesystem.
Okay. Thanks maxim.


maxim wrote:The hijacking thing ... If you try to open another 'InfoURL' that referres directly to a web adress (there should be several inside default Celestia) you should also watch that an existing window is hijacked.

Yes! I had not noticed this before. I'll have to dig through the browser option settings.

Thanks again!

-Don G.

Topic author
maxim
Posts: 1036
Joined: 13.11.2003
With us: 21 years
Location: N?rnberg, Germany

Post #24by maxim » 07.02.2004, 00:18

don wrote:In the previous version, I thought your Info Panel was a sub-option in the Celestia Info section, no? Now, the only thing that shows up is Info and when you click this, your Info Panel is displayed.
No, it was like that before.

don wrote:Hmmmm, when a window is resized, the next link (forward or backward) resizes the window back to it's initial size. The user must manually modify the base window size to be the size they would generally want. Doesn't seem very intuitive.
Well, actually I'm currently working with a lot more info panels that are included in the base version I provide. There are such things as key charts, pictures or diagrams. These are usually image data and need a certain window size to be fully or sufficiently displayed (without repeated user interaction). The window resizes when displaying them, and has to resize back when leaving them. So every window uses either a fixed size or the default size from 'pluginConfig.js'. The base version reflects this, even if there seems to be no apparend reason. At the moment I have no idea of how to keep this functionality and simultaneously remember handmade size changes.

don wrote:Using EarthInfo as an example, it seems that this change has lost the ability for .bs to actually get set and used, even though it's specified in BODY. The other fonts are not inheriting the font size from bs. If I set it to 50px, it is not used.
It works for me - althought 50 pixel is incredible huge. Did you set it to '50' or to '50px' (first one is correct)?
Addition: Sorry, I've detected that it's a bug. The integer value is used directly, which means it's not 50 pixel, but 50 points.

don wrote:As for percentages, you should be able to specify the bs font size as [font-size: 100%;] or any other percentage desired. At least in CSS 2.0.

Yes, you can specify the font_size as xxx%. That's not the problem - it's the fact that the percentage is relativ to it parent element. Suppose you have a page with a headline, followed by a list of certain width, followed by a table with 5 columns. If you use always let's say 80%, in the headline, one list row and a table data field, that will result in three different font sizes because the sizes of the three parent elements are different.

maxim.

don
Posts: 1709
Joined: 12.07.2003
With us: 21 years 4 months
Location: Colorado, USA (7000 ft)

Post #25by don » 07.02.2004, 06:13

Hi maxim,

Thanks for your answers.

Regarding the font-size setting, changing the font-size in .bs does not change the font size of .dt on my browser (IE 6), and I do not have anything disabled. The only way for me to change the body text font size in the info panel is to add a font-size spec to .dt. Strange.

-Don G.

Topic author
maxim
Posts: 1036
Joined: 13.11.2003
With us: 21 years
Location: N?rnberg, Germany

Post #26by maxim » 07.02.2004, 07:40

There may be a misunderstanding.
You shouldn't change font sizes in 'styles.css' any more. Instead there is a configuration setting in 'pluginConfig.js' called 'font_size'. This is used to determine the font settings for '.bs'. Only if you set this setting to '0' any predefined setting from inside .bs is used - but you shouldn't need to do that.

maxim :)

don
Posts: 1709
Joined: 12.07.2003
With us: 21 years 4 months
Location: Colorado, USA (7000 ft)

Post #27by don » 07.02.2004, 15:45

:oops: Ooops, sorry, I missed that one. My fault.

Thanks maxim! :)

Topic author
maxim
Posts: 1036
Joined: 13.11.2003
With us: 21 years
Location: N?rnberg, Germany

Post #28by maxim » 08.02.2004, 22:46

Ok, for all of you who want to keep browser settings, here's a simplified version of 'styles.css':

Code: Select all

/**
 *  Simple Styles for Celestia Base and Info Panel.
 *  Use this if you don't want your own browser settings to be overwritten.
 *
 *   @author  maxim
 *   @date    2004-02-05
 *   @version 1.1
 */

/*** Text styles ***/

.bs /* Base Style */
{ color: #88BBFF; }

.lt /* Headline */
{ color: #2277FF; }

.dt /* Normal Text */
{ color: #88BBFF; }

.ht /* Highlighted Text*/
{ color: #CC8855; }

.st /* List Text */
{
  color:  #885588;
  cursor: hand;
}

.sct /* Remark Text */
{
  font-style: italic;
  color:      #88BBFF;
}

/*** Button styles ***/

.cb
{ color: #2277FF; }


You should also make shure then, that 'font_size' in 'pluginConfig.js' is set to '0' and adjust your windows width and height.

Code: Select all

/**
 *   Celestia Info - javascript info plugin configuration
 *
 *   @author  maxim
 *   @date    2004-02-05
 *   @version 1.1
 */

/***** Default Value Set ***********************************************************/
var path             = "default/";// starting path of actual info deployment
var width            = 300;       // start width of info window
var height           = 200;       // start height of info window
var horizontal_align = "right";   // Windows alignment. May be 'left' or 'right'
var vertical_align   = "bottom";  // Windows alignment. May be 'bottom' or 'top'
var horizontal_offset= 20;        // Windows distance from horizontal screen align border
var vertical_offset  = 80;        // Windows distance from vertical screen align border
var font_size        = 0;          // User defined font size in points. (0=off)
// The following values may be 'no' or 'yes'
var wlocation   = "no";     // Popup window has a location bar
var wmenubar    = "no";     // Popup window has a menubar
var wresizable  = "yes";    // Popup window is resizable
var wstatus     = "no";     // Popup window has a statusbar
var wscrollbars = "yes";    // Popup window may have scrollbars
var wtoolbar    = "no";     // Popup window has a toolbar
/***** End Of Default Value Set ****************************************************/

/**********************************************************************/
/* Put other value sets here. Only one set may be activ at same time. */
/**********************************************************************/

don
Posts: 1709
Joined: 12.07.2003
With us: 21 years 4 months
Location: Colorado, USA (7000 ft)

Post #29by don » 09.02.2004, 00:22

Thank you maxim. :D

-Don G.

Guest

Re: Info Extension Plugin

Post #30by Guest » 05.10.2004, 03:41

maxim wrote:I've written a concept for pluging Info data more closely into Celestia. Here is what it does:

---------------------------------------------------------------------------------
The Info Extension Plugin was created to offer a concept of how to include more, and more extended informations for planets, moons and other objects, than Celestia itself can provide currently.

The plugin uses the Info menu topic together with the 'InfoURL' setting to provide extended information throught a set of HTML/Javascript Files. The plugin is prepared to be used with alternate Info sets for different tasks. Following is a short usage description:

. The plugin adds a new directory 'html' to the Celestia base folder. It is itself contained within the 'info' directory inside 'html'.

. Every information set for an object starts with a HTML document called base[ObjectName].html.

. The object definition has to contain a setting 'InfoURL "html/info/base[ObjectName].html"' inside its defining .ssc.

. For the info set supplied with this base package, which provides extended information for the nine planets, this means you have to add the following lines to each planet definition inside 'solarsys.ssc':
InfoURL "html/info/baseMercury.html"
InfoURL "html/info/baseVenus.html"
InfoURL "html/info/baseEarth.html"
InfoURL "html/info/baseMars.html"
InfoURL "html/info/baseJupiter.html"
...

. The list of information sources (online and offline) provided in the initial window can be extended to your needs.

. Alternative info sets can be switched via 'pluginConfig.js' inside 'html/info/js'.

. A script or activity designer who wants to provide an alternate set of object informations that is suited to his intends, may to so by either providing an alternate 'pluginConfig.js', or by extending the existing one with an alternate value set, defining the start directory and the size and position of the info window. The info set itself goes into a separate directory inside 'html/info'.

. An addon designer who has created his own fictional solarsystem(s) may provide extended information for his planets, moons and stars, by placing the HTML/Javascript files, the styles and the page design graphics into a complete own directory inside 'html/info', and adding 'InfoURL' definitions to his .scc files.

. Any changes done inside the HTML/Javascript files can take effect without restarting Celestia, because they are handled by your local webbrowser and not by Celestia.

-------------------------------------------------------

This is however more a proof of concept than a ready solution.
So you will find the pages design quite simple. Moreover I do really want to have feedback about acceptance, usability, testing with different browsers/OS and startup delay times on different systems.

The download is available here: http://www.nefkom.net/z-bau/celestia/info%20plugin.zip

have fun :D

maxim


Return to “Celestia Users”