Ejemplo n.º 1
0
PUBLIC
void _System
DoHelpPanel ( register
              panel_t  *panel )
{
    uint    message_number,
            save_control;
    void    *memory;

    message_number = panel->help.default_message;

    if ( panel->help.array ) {
        if ( panel->choice < panel->help.array_size ) {
            message_number = panel->help.array [ panel->choice ];
        }
    }

    memory = get_help_message ( message_number );

    Help_panel.control |= NOT_SIZED;
    Help_panel.box.row_length = 0;
    SetPanelSize ( &Help_panel );
    Help_panel.box.column = SCREEN_WIDTH - min( Help_panel.box.row_length, SCREEN_WIDTH );

    save_control = Message_bar_panel.control;
    Message_bar_panel.control |= SAVE_RESTORE;

    MESSAGE_BAR_PANEL ( Help_message_line );
    ScrollingPanel ( &Help_panel );

    ErasePanel ( &Help_panel );
    ErasePanel ( &Message_bar_panel );
    Message_bar_panel.control = save_control;

    if ( memory ) {
        free ( memory );
    }

}
Ejemplo n.º 2
0
void command_option(int   argc,
		    char *argv[])
{
#ifdef DETAIL
	g_debug("! Launch command_option()!");
#endif

#ifdef SAFEMODE
	if (argv==NULL) return;
#endif
	gint i;
	for (i=0; i<argc; i++)
	{
#ifdef SAFEMODE
		if (argv[i]==NULL) break;
#endif
		// g_debug("%2d (Total %d): %s",i, argc, argv[i]);
		if ((!strcmp(argv[i], "-v")) || (!strcmp(argv[i], "--version")))
		{
			g_print("%s %s\n", PACKAGE, VERSION);
			exit (0);
		}
		else if ((!strcmp(argv[i], "-?")) || (!strcmp(argv[i], "-h")) || (!strcmp(argv[i], "--help")))
		{

			// LilyTerm will exit immediately, so we don't need to free the get_help_message... XD
			g_print("\n%s\n", get_help_message(NULL));

			// GString *help_msg = get_help_message();
			// g_print("\n%s\n", help_msg->str);
			// g_string_free (help_msg, TRUE);

			exit (0);
		}
		else if ((!strcmp(argv[i], "-p")) || (!strcmp(argv[i], "--profile")))
		{
			GString *settings = save_user_settings(NULL, NULL);
#ifdef SAFEMODE
			if (settings)
#endif
				g_print("%s", settings->str);
			g_string_free(settings, TRUE);
			exit (0);
		}
		else if ((!strcmp(argv[i], "-s")) || (!strcmp(argv[i], "--separate")))
		{
			single_process = FALSE;
		}
		else if ((!strcmp(argv[i], "-e")) || (!strcmp(argv[i], "-x")) || (!strcmp(argv[i], "--execute")))
		{
			// If -e or -x options specified then ignore anything beyond them
			break;
		}
		else if (!strcmp(argv[i], "--name"))
		{
			if (++i==argc)
				g_critical("missing program name after --name!\n");
			else
			{
				extern gchar *wmclass_name;
				wmclass_name = argv[i];
			}
		}
		else if (!strcmp(argv[i], "--class"))
		{
			if (++i==argc)
				g_critical("missing program class after --class!\n");
			else
			{
				extern gchar *wmclass_class;
				wmclass_class = argv[i];
			}
		}
	}
}