dslinux/user/pixil/apps/fltk/find Makefile handlestatus.cxx handlestatus.h nxcalendar.cxx nxfind.cxx nxfind.h nxfindapp.cxx nxfindapp.h

amadeus dslinux_amadeus at user.in-berlin.de
Tue Oct 3 13:24:23 CEST 2006


Update of /cvsroot/dslinux/dslinux/user/pixil/apps/fltk/find
In directory antilope:/tmp/cvs-serv11916/apps/fltk/find

Added Files:
	Makefile handlestatus.cxx handlestatus.h nxcalendar.cxx 
	nxfind.cxx nxfind.h nxfindapp.cxx nxfindapp.h 
Log Message:
adding pristine copy of pixil to HEAD so I can branch from it

--- NEW FILE: Makefile ---
# apps/find/Makefile

TARGET_CXX=gfind

SRC=${shell ls *.cxx} 
OBJS=${SRC:.cxx=.o}

# This is for FLEK 
CFLAGS ?=
CFLAGS +=-DPIXIL

LIBS=-lpixil-pim

ifeq ($(CONFIG_NANOX),y)
LIBS += -lwm
endif

ifeq ($(CONFIG_PAR),y)
LIBS+=-lpar
endif

ifeq ($(CONFIG_SYNC),y)
LIBS+=-lpixil-sync
endif

LIBS+=-lfltk -lflek

ifeq ($(CONFIG_NANOX),y)
LIBS+=-lnano-X 
endif

ifeq ($(CONFIG_X11),y)
LIBS+=-lX11
endif

ifeq ($(CONFIG_COLOSSEUM),y)
LIBS+=-lipc
endif

include $(BASE_DIR)/Rules.make


--- NEW FILE: nxfind.cxx ---
/*                                                                       
 * Copyright (c) 2003 Century Software, Inc.   All Rights Reserved.     
 *                                                                       
 * This file is part of the PIXIL Operating Environment                 
 *                                                                       
 * The use, copying and distribution of this file is governed by one    
 * of two licenses, the PIXIL Commercial License, or the GNU General    
 * Public License, version 2.                                           
 *                                                                       
 * Licensees holding a valid PIXIL Commercial License may use this file 
 * in accordance with the PIXIL Commercial License Agreement provided   
 * with the Software. Others are governed under the terms of the GNU   
 * General Public License version 2.                                    
 *                                                                       
 * This file may be distributed and/or modified under the terms of the  
 * GNU General Public License version 2 as published by the Free        
 * Software Foundation and appearing in the file LICENSE.GPL included   
 * in the packaging of this file.                                      
 *                                                                       
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING  
 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A            
 * PARTICULAR PURPOSE.                                                  
 *                                                                       
 * RESTRICTED RIGHTS LEGEND                                             
 *                                                                     
 * Use, duplication, or disclosure by the government is subject to      
 * restriction as set forth in paragraph (b)(3)(b) of the Rights in     
 * Technical Data and Computer Software clause in DAR 7-104.9(a).       
 *                                                                      
 * See http://www.pixil.org/gpl/ for GPL licensing       
 * information.                                                         
 *                                                                      
 * See http://www.pixil.org/license.html or              
 * email cetsales at centurysoftware.com for information about the PIXIL   
 * Commercial License Agreement, or if any conditions of this licensing 
 * are not clear to you.                                                
 */

#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include "nxfindapp.h"

int exit_flag = 0;
//int noguisearch_flag = 0;

int
main(int argc, char *argv[])
{
    NxFind find(argc, argv);

    Fl_Window *w = find.get_main_window();

    w->show();

    find.show_default_window();


    while (Fl::run());

    while (!exit_flag) {

	if (Fl::wait() == 0) {
	    break;
	}
    }

    return 0;
}

--- NEW FILE: handlestatus.cxx ---
/*                                                                       
 * Copyright (c) 2003 Century Software, Inc.   All Rights Reserved.     
 *                                                                       
 * This file is part of the PIXIL Operating Environment                 
 *                                                                       
 * The use, copying and distribution of this file is governed by one    
 * of two licenses, the PIXIL Commercial License, or the GNU General    
 * Public License, version 2.                                           
 *                                                                       
 * Licensees holding a valid PIXIL Commercial License may use this file 
 * in accordance with the PIXIL Commercial License Agreement provided   
 * with the Software. Others are governed under the terms of the GNU   
 * General Public License version 2.                                    
 *                                                                       
 * This file may be distributed and/or modified under the terms of the  
 * GNU General Public License version 2 as published by the Free        
 * Software Foundation and appearing in the file LICENSE.GPL included   
 * in the packaging of this file.                                      
 *                                                                       
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING  
 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A            
 * PARTICULAR PURPOSE.                                                  
 *                                                                       
 * RESTRICTED RIGHTS LEGEND                                             
 *                                                                     
 * Use, duplication, or disclosure by the government is subject to      
 * restriction as set forth in paragraph (b)(3)(b) of the Rights in     
 * Technical Data and Computer Software clause in DAR 7-104.9(a).       
 *                                                                      
 * See http://www.pixil.org/gpl/ for GPL licensing       
 * information.                                                         
 *                                                                      
 * See http://www.pixil.org/license.html or              
 * email cetsales at centurysoftware.com for information about the PIXIL   
 * Commercial License Agreement, or if any conditions of this licensing 
 * are not clear to you.                                                
 */

#include <stdio.h>
#include <stdlib.h>
#ifdef NOTUSED
#include "nxfindstatus.h"
#endif

#include "nxfindapp.h"
#include "handlestatus.h"

#ifdef NOTUSED
static searchStatus *getThread;

static c_statusWindow *statusGetUI;
#endif

char statusStr[150];

#ifdef NOTUSED

static void
threadMonitor(void *data)
{
    searchStatus *curThread = (searchStatus *) data;
    statusGetUI->setStatus(curThread->getStatus());

    bool val = statusGetUI->getExpectingFlag();
    bool cancel = statusGetUI->getCancelFlag();

    unsigned char done = 0;

    switch (curThread->getState()) {
    case STATE_INIT:

	if (cancel) {
	    curThread->setState(STATE_CANCEL);
	} else {
	    statusGetUI->setStatus("Starting Search...");
	    curThread->setState(STATE_READY);
	}
	break;

#ifdef NOTUSED
    case STATE_IDLE:
	if (val) {
	    curThread->setState(STATE_READY);
	}

	break;
#endif

    case STATE_READY:
	if (cancel)
	    curThread->setState(STATE_CANCEL);
	else {
	    statusGetUI->show();
	    curThread->setState(STATE_NEXT);
	}

	break;

    case STATE_DONE:
	done = 1;
	if (false == cancel) {
	    statusGetUI->hide();
	    statusGetUI->setStatus("Done searching...");
	}

	statusGetUI->setExpectingFlag(false);
	statusGetUI->setCancelFlag(false);
	break;

    case STATE_BUSY:
	if (cancel)
	    curThread->setState(STATE_CANCEL);
	if (!val)
	    curThread->setState(STATE_NEXT);
	else {
	    char status[150];
	    sprintf(status, "Searching %s", statusGetUI->getService());
	    statusGetUI->setStatus(status);
	    statusGetUI->search();
	    curThread->setState(STATE_NEXT);
	}
	break;

    case STATE_NEXT:
	char *service;

	if (cancel) {
	    curThread->setState(STATE_CANCEL);
	} else {
	    service = statusGetUI->getNextService();
	    if (NULL == service)
		curThread->setState(STATE_DONE);
	    else {
		statusGetUI->setExpectingFlag(true);
		statusGetUI->setService(service);
		curThread->setState(STATE_BUSY);
	    }
	}
	break;

    case STATE_CANCEL:
	statusGetUI->setCurNode(NULL);
	statusGetUI->setStatus("Canceling search...");
	curThread->setState(STATE_DONE);
	statusGetUI->setExpectingFlag(false);
	statusGetUI->setCancelFlag(true);
	break;

    default:
	break;
    }

    if (0 == done)
	Fl::add_timeout(.25, threadMonitor, data);
}

searchStatus *
startSearchStatus()
{

    statusGetUI = ((NxFind *) (NxApp::Instance))->getStatusWindow();

    getThread = new searchStatus();

    Fl::add_timeout(.25, threadMonitor, (void *) getThread);

    atexit(leave_program);
    return (getThread);
}
#endif

void
searchTimeout(void *data)
{

    searchStatus *ui = (searchStatus *) data;

    if (ui->_UI->getCancelFlag() == true)
	ui->searchCancel();

    if (ui->startSearch() == 0)
	ui->searchDone();
}

void
searchStatus::searchCancel(void)
{

    setState(STATE_DONE);

    _UI->setExpectingFlag(false);
    _UI->setCancelFlag(false);

    _UI->hide();
}

void
searchStatus::searchDone(void)
{

    setState(STATE_DONE);

    _UI->setExpectingFlag(false);
    _UI->setCancelFlag(false);

    _UI->hide();
}

void
searchStatus::ackSearch(void)
{

    if (getState() != STATE_SEARCH)
	return;

    Fl::remove_timeout(searchTimeout, (void *) this);

    if (_UI->getCancelFlag() == true)
	searchCancel();

    if (startSearch() == 0)
	searchDone();
}


int
searchStatus::startSearch(void)
{

    char *app = 0;
    char *service = 0;

    service = _UI->getNextService();
    if (!service)
	return (0);
    app = _UI->getApp();
    if (!app)
	return (0);

    if (_UI->getCancelFlag() == true)
	return (0);

    _UI->setExpectingFlag(true);
    _UI->setService(service);

    Fl::add_timeout(5, searchTimeout, (void *) this);

    sprintf(statusStr, "Searching %s...", app);
    _UI->setStatus(statusStr);

    setState(STATE_SEARCH);
    _UI->search();

    return (1);
}

searchStatus::searchStatus(c_statusWindow * ui)
{
    _UI = ui;
    setState(STATE_READY);
}

searchStatus::~searchStatus(void)
{

    if (getState() == STATE_SEARCH)
	Fl::remove_timeout(searchTimeout);

}

searchStatus *
startSearchStatus()
{

    searchStatus *search;
    c_statusWindow *ui;

    ui = ((NxFind *) (NxApp::Instance))->getStatusWindow();
    ui->show();

    search = new searchStatus(ui);

    search->startSearch();

    return (search);
}

--- NEW FILE: nxcalendar.cxx ---
/*                                                                       
 * Copyright (c) 2003 Century Software, Inc.   All Rights Reserved.     
 *                                                                       
 * This file is part of the PIXIL Operating Environment                 
 *                                                                       
 * The use, copying and distribution of this file is governed by one    
 * of two licenses, the PIXIL Commercial License, or the GNU General    
 * Public License, version 2.                                           
 *                                                                       
 * Licensees holding a valid PIXIL Commercial License may use this file 
 * in accordance with the PIXIL Commercial License Agreement provided   
 * with the Software. Others are governed under the terms of the GNU   
 * General Public License version 2.                                    
 *                                                                       
 * This file may be distributed and/or modified under the terms of the  
 * GNU General Public License version 2 as published by the Free        
 * Software Foundation and appearing in the file LICENSE.GPL included   
 * in the packaging of this file.                                      
 *                                                                       
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING  
 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A            
 * PARTICULAR PURPOSE.                                                  
 *                                                                       
 * RESTRICTED RIGHTS LEGEND                                             
 *                                                                     
 * Use, duplication, or disclosure by the government is subject to      
 * restriction as set forth in paragraph (b)(3)(b) of the Rights in     
 * Technical Data and Computer Software clause in DAR 7-104.9(a).       
 *                                                                      
 * See http://www.pixil.org/gpl/ for GPL licensing       
 * information.                                                         
 *                                                                      
 * See http://www.pixil.org/license.html or              
 * email cetsales at centurysoftware.com for information about the PIXIL   
 * Commercial License Agreement, or if any conditions of this licensing 
 * are not clear to you.                                                
 */

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <time.h>

#include "nxfindapp.h"

time_t NxFind::GetPickedDate()
{
    return m_nDatePicked;
}

void
NxFind::doneDate_callback(Fl_Widget * fl, void *l)
{
    NxFind *pThis = (NxFind *) l;

    tm d;
    memset(&d, 0, sizeof(d));
    d.tm_year = pThis->m_pDatePickerCalendar->year() - 1900;
    d.tm_mon = pThis->m_pDatePickerCalendar->month() - 1;
    d.tm_mday = pThis->m_pDatePickerCalendar->day();

    pThis->m_nDatePicked = mktime(&d);

    (*pThis->m_pDatePickerCallback) (fl, l);
}

void
NxFind::todayDate_callback(Fl_Widget * fl, void *l)
{
    NxFind *pThis = (NxFind *) l;

    pThis->m_nDatePicked = time(0);

    (*pThis->m_pDatePickerCallback) (fl, l);
}

void
NxFind::SetPickedDate(time_t t)
{
    tm *tt = localtime(&t);

    m_pDatePickerCalendar->set_date(tt->tm_year + 1900, tt->tm_mon + 1,
				    tt->tm_mday);
    m_pDatePickerCalendar->update();
}

void
NxFind::cancelDate_callback(Fl_Widget * fl, void *l)
{
    NxFind *pThis = (NxFind *) l;
    pThis->m_nDatePicked = 0;
    (*pThis->m_pDatePickerCallback) (fl, l);
}

void
NxFind::MakeCalendarWindow()
{

    dateWindow = new NxPimWindow(0, 0, W_W, W_H);

    add_window((Fl_Window *) dateWindow->GetWindowPtr());

    {
	Fl_Calendar *o =
	    new Fl_Calendar(3, 5, dateWindow->GetWindowPtr()->w() - 6, 200);
	m_pDatePickerCalendar = o;
	dateWindow->add(o);
    }
    {
	NxButton *o = new NxButton(POP_BUTTON_X, POP_BUTTON_Y(dateWindow),
				   BUTTON_WIDTH, BUTTON_HEIGHT, "Done");
	o->callback(doneDate_callback, this);
	NxApp::Instance()->def_font((Fl_Widget *) o);
	dateWindow->add((Fl_Widget *) o);
    }
    {
	NxButton *o = new NxButton(POP_BUTTON_X + BUTTON_WIDTH + 5,
				   POP_BUTTON_Y(dateWindow),
				   BUTTON_WIDTH, BUTTON_HEIGHT, "Cancel");
	o->callback(cancelDate_callback, this);
	NxApp::Instance()->def_font((Fl_Widget *) o);
	dateWindow->add((Fl_Widget *) o);
    }
    {
	NxButton *o =
	    new NxButton(dateWindow->GetWindowPtr()->w() - BUTTON_WIDTH - 5,
			 POP_BUTTON_Y(dateWindow),
			 BUTTON_WIDTH, BUTTON_HEIGHT, "Today");
	o->callback(todayDate_callback, this);
	NxApp::Instance()->def_font((Fl_Widget *) o);
	dateWindow->add((Fl_Widget *) o);
    }

    dateWindow->GetWindowPtr()->end();
}

void
NxFind::date_callback(void (*cb) (Fl_Widget *, void *))
{
    m_pDatePickerCallback = cb;
}

--- NEW FILE: nxfindapp.h ---
/*                                                                       
 * Copyright (c) 2003 Century Software, Inc.   All Rights Reserved.     
 *                                                                       
 * This file is part of the PIXIL Operating Environment                 
 *                                                                       
 * The use, copying and distribution of this file is governed by one    
 * of two licenses, the PIXIL Commercial License, or the GNU General    
 * Public License, version 2.                                           
 *                                                                       
 * Licensees holding a valid PIXIL Commercial License may use this file 
 * in accordance with the PIXIL Commercial License Agreement provided   
 * with the Software. Others are governed under the terms of the GNU   
 * General Public License version 2.                                    
 *                                                                       
 * This file may be distributed and/or modified under the terms of the  
 * GNU General Public License version 2 as published by the Free        
 * Software Foundation and appearing in the file LICENSE.GPL included   
 * in the packaging of this file.                                      
 *                                                                       
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING  
 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A            
 * PARTICULAR PURPOSE.                                                  
 *                                                                       
 * RESTRICTED RIGHTS LEGEND                                             
 *                                                                     
 * Use, duplication, or disclosure by the government is subject to      
 * restriction as set forth in paragraph (b)(3)(b) of the Rights in     
 * Technical Data and Computer Software clause in DAR 7-104.9(a).       
 *                                                                      
 * See http://www.pixil.org/gpl/ for GPL licensing       
 * information.                                                         
 *                                                                      
 * See http://www.pixil.org/license.html or              
 * email cetsales at centurysoftware.com for information about the PIXIL   
 * Commercial License Agreement, or if any conditions of this licensing 
 * are not clear to you.                                                
 */

#ifndef __NXFIND_H
#define __NXFIND_H

#include <FL/Fl.H>
#include <Flek/Fl_Calendar.H>
#include <FL/Fl_Window.H>
#include <FL/Fl_Box.H>
#include <FL/Flv_Table_Child.H>
#include <FL/fl_draw.H>
#include <Flek/Fl_Toggle_Tree.H>

#include <nxapp.h>
#include <nxwindow.h>
#include <nxdb.h>

#include <nxinput.h>
#include <nxoutput.h>
#include <nxbutton.h>
#include <nxcheckbutton.h>
#include <nxscroll.h>

#include <time.h>

extern "C"
{
#include <ipc/colosseum.h>
}

#include "nxfind.h"
#include "handlestatus.h"

#define POP_BUTTON_X 5
#define POP_BUTTON_Y(_x) ((_x->GetWindowPtr()->h()) - BUTTON_HEIGHT - 10 )

#define APP_NAME "Global Search"

#define APP_DESC -1
#define APP_FILE -2

struct NxAppData
{
    char appName[50];
    char nxAppName[50];
    bool appSearch;
};

struct NxSearchData
{
    char data[CL_MAX_MSG_LEN];
    char appName[50];
    char fileName[255];
    int recno;
};

class NxFind;
class c_statusWindow;

class c_statusWindow:public NxPimPopWindow
{
  private:
    static bool expectingResults;
    static bool cancelSearch;
    static NxOutput *status_msg;
    static NxButton *cancelButton;
    char _service[128];
    static Fl_Toggle_Node *curNode;

  public:

    static void statusCancel_callback(Fl_Widget * fl, void *l);

    bool getCancelFlag()
    {
	return cancelSearch;
    }
    void setCancelFlag(bool val)
    {
	cancelSearch = val;
    }
    bool getExpectingFlag()
    {
	return expectingResults;
    }
    void setExpectingFlag(bool val)
    {
	expectingResults = val;
    }
    void setStatus(char *status);
    void setService(char *service)
    {
	strcpy(_service, service);
    }
    char *getService()
    {
	return _service;
    }
    char *getAppNameString(char *format_string);
    char *getApp();
    char *getNextService();
    void search();
    void hide();
    void show();
    void executeSearch(int ipc_id, char *msg);
    void initiateSearch(int ipc_id);
    void setCurNode(Fl_Toggle_Node * node);
    c_statusWindow();
    virtual ~ c_statusWindow();

};

class NxCalendar:public Fl_Calendar
{
  protected:
    NxFind * m_pFind;
  public:
    NxCalendar(NxFind * p, int x, int y, int w = (7 * 20), int h =
	       (8 * 20), bool bCaption = true);
    virtual void update();
};

class NxFind:public NxApp
{
  private:

    static NxWindow *mainWindow;

    static NxPimWindow *dateWindow;
    static NxPimPopWindow *errorWindow;
    static NxPimWindow *findWindow;
    static NxPimWindow *resultWindow;

    //              static void clientIpc_handler(int fd, void *o);
    virtual void ClientIPCHandler(int fd, void *o, int ipc_id = -1);

    // Find window
    static searchStatus *status;
    static NxInput *lookup_input;
    static void searchLookup_callback(Fl_Widget * fl, void *l);
    static void fromCalendar_callback(Fl_Widget * fl, void *l);
    static void toCalendar_callback(Fl_Widget * fl, void *l);
    static NxButton *fromDateButton;
    static NxButton *toDateButton;
    static NxCheckButton *stringCheck;
    static NxCheckButton *dateCheck;
    static void fromDate_callback(Fl_Widget * fl, void *l);
    static void toDate_callback(Fl_Widget * fl, void *l);
    void UpdateFromButton();
    void UpdateToButton();
    static time_t fromTime;
    static time_t toTime;

    // App tree
    static int nodeNum;
    static void checkIt_callback(Fl_Widget * fl, void *l);
    static Fl_Toggle_Tree *appTree;
    static NxScroll *appList;
    static Fl_Pixmap *echeck_pixmap;
    static Fl_Pixmap *check_pixmap;
    static void add_apps(Fl_Toggle_Tree * _appTree);

    // results window
    static int total_found;
    static Flv_Table_Child *results_table;
    static NxOutput *results_message;
    static void doneLookup_callback(Fl_Widget * fl, void *l);
    static void resultsView_callback(Fl_Widget * fl, void *l);
    static void viewRecord(NxSearchData * data);

    // error window
    static NxOutput *error_msg;
    static void errorOk_callback(Fl_Widget * fl, void *l);


    // status window
    static c_statusWindow *statusWindow;
    static NxOutput *status_msg;
    static void statusCancel_callback(Fl_Widget * fl, void *l);

    // for the calendar window
    void date_callback(void (*)(Fl_Widget *, void *));
    static void doneDate_callback(Fl_Widget * fl, void *l);
    static void cancelDate_callback(Fl_Widget * fl, void *l);
    static void todayDate_callback(Fl_Widget * fl, void *l);
    Fl_Calendar *m_pDatePickerCalendar;
    time_t m_nDatePicked;

    time_t GetPickedDate();
    void SetPickedDate(time_t t);

    void (*m_pDatePickerCallback) (Fl_Widget *, void *);

    void MakeFindWindow();
    void MakeResultsWindow();
    void MakeCalendarWindow();
    void MakeErrorWindow();
    void MakeStatusWindow();

  public:
      NxPimWindow * getFindWindow()
    {
	return findWindow;
    }
    NxPimWindow *getResultWindow()
    {
	return resultWindow;
    }
    c_statusWindow *getStatusWindow()
    {
	return statusWindow;
    }
    NxFind(int arg, char *argv[]);
    virtual ~ NxFind();
    Fl_Window *get_main_window();
    void show_default_window();
    NxInput *getLookupInput()
    {
	return lookup_input;
    }
    Flv_Table_Child *getResultsTable()
    {
	return results_table;
    }
    NxOutput *getResultsMessage()
    {
	return results_message;
    }
    Fl_Toggle_Tree *getAppTree()
    {
	return appTree;
    }
    int getTotalFound()
    {
	return total_found;
    }
    int getNodeNum()
    {
	return nodeNum;
    }
    void setNodeNum(int val)
    {
	nodeNum = val;
    }
    time_t getStartTime()
    {
	return fromTime;
    }
    time_t getEndTime()
    {
	return toTime;
    }
    bool getStringCheckValue()
    {
	return stringCheck->value();
    }
    bool getDateCheckValue()
    {
	return dateCheck->value();
    }
    static void addData(NxSearchData * data);

    // menu callbacks
    static void exit_callback(Fl_Widget * fl, void *l);
};

#endif

--- NEW FILE: nxfindapp.cxx ---
/*                                                                       
 * Copyright (c) 2003 Century Software, Inc.   All Rights Reserved.     
 *                                                                       
 * This file is part of the PIXIL Operating Environment                 
 *                                                                       
 * The use, copying and distribution of this file is governed by one    
 * of two licenses, the PIXIL Commercial License, or the GNU General    
 * Public License, version 2.                                           
 *                                                                       
 * Licensees holding a valid PIXIL Commercial License may use this file 
 * in accordance with the PIXIL Commercial License Agreement provided   
 * with the Software. Others are governed under the terms of the GNU   
 * General Public License version 2.                                    
 *                                                                       
 * This file may be distributed and/or modified under the terms of the  
 * GNU General Public License version 2 as published by the Free        
 * Software Foundation and appearing in the file LICENSE.GPL included   
 * in the packaging of this file.                                      
 *                                                                       
[...1047 lines suppressed...]
	    NxAppData *data = new NxAppData;
	    strcpy(data->appName, title);
	    strcpy(data->nxAppName, application);
	    data->appSearch = false;
	    appNode->user_data(data);
	    _appTree->traverse_up();
	}
    }

    db_closeDB(db);
}

Fl_Window *
NxFind::get_main_window()
{
    if (mainWindow)
	return mainWindow;
    else
	return 0;
}

--- NEW FILE: nxfind.h ---
/*                                                                       
 * Copyright (c) 2003 Century Software, Inc.   All Rights Reserved.     
 *                                                                       
 * This file is part of the PIXIL Operating Environment                 
 *                                                                       
 * The use, copying and distribution of this file is governed by one    
 * of two licenses, the PIXIL Commercial License, or the GNU General    
 * Public License, version 2.                                           
 *                                                                       
 * Licensees holding a valid PIXIL Commercial License may use this file 
 * in accordance with the PIXIL Commercial License Agreement provided   
 * with the Software. Others are governed under the terms of the GNU   
 * General Public License version 2.                                    
 *                                                                       
 * This file may be distributed and/or modified under the terms of the  
 * GNU General Public License version 2 as published by the Free        
 * Software Foundation and appearing in the file LICENSE.GPL included   
 * in the packaging of this file.                                      
 *                                                                       
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING  
 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A            
 * PARTICULAR PURPOSE.                                                  
 *                                                                       
 * RESTRICTED RIGHTS LEGEND                                             
 *                                                                     
 * Use, duplication, or disclosure by the government is subject to      
 * restriction as set forth in paragraph (b)(3)(b) of the Rights in     
 * Technical Data and Computer Software clause in DAR 7-104.9(a).       
 *                                                                      
 * See http://www.pixil.org/gpl/ for GPL licensing       
 * information.                                                         
 *                                                                      
 * See http://www.pixil.org/license.html or              
 * email cetsales at centurysoftware.com for information about the PIXIL   
 * Commercial License Agreement, or if any conditions of this licensing 
 * are not clear to you.                                                
 */

#ifndef __NXFIND_H
#define __NxFIND_H

#endif

--- NEW FILE: handlestatus.h ---
/*                                                                       
 * Copyright (c) 2003 Century Software, Inc.   All Rights Reserved.     
 *                                                                       
 * This file is part of the PIXIL Operating Environment                 
 *                                                                       
 * The use, copying and distribution of this file is governed by one    
 * of two licenses, the PIXIL Commercial License, or the GNU General    
 * Public License, version 2.                                           
 *                                                                       
 * Licensees holding a valid PIXIL Commercial License may use this file 
 * in accordance with the PIXIL Commercial License Agreement provided   
 * with the Software. Others are governed under the terms of the GNU   
 * General Public License version 2.                                    
 *                                                                       
 * This file may be distributed and/or modified under the terms of the  
 * GNU General Public License version 2 as published by the Free        
 * Software Foundation and appearing in the file LICENSE.GPL included   
 * in the packaging of this file.                                      
 *                                                                       
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING  
 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A            
 * PARTICULAR PURPOSE.                                                  
 *                                                                       
 * RESTRICTED RIGHTS LEGEND                                             
 *                                                                     
 * Use, duplication, or disclosure by the government is subject to      
 * restriction as set forth in paragraph (b)(3)(b) of the Rights in     
 * Technical Data and Computer Software clause in DAR 7-104.9(a).       
 *                                                                      
 * See http://www.pixil.org/gpl/ for GPL licensing       
 * information.                                                         
 *                                                                      
 * See http://www.pixil.org/license.html or              
 * email cetsales at centurysoftware.com for information about the PIXIL   
 * Commercial License Agreement, or if any conditions of this licensing 
 * are not clear to you.                                                
 */

#ifndef _HANDLESTATUS_H_
#define _HANDLESTATUS_H_

#define STATE_READY 0
#define STATE_SEARCH 1
#define STATE_DONE  2

class c_statusWindow;

class searchStatus
{

  private:
    int _state;

  public:

      c_statusWindow * _UI;

    void searchDone();
    void searchCancel();

    void ackSearch();
    int startSearch();

    void setState(int status)
    {
	_state = status;
    }
    int getState(void)
    {
	return (_state);
    }

    searchStatus(c_statusWindow *);
    ~searchStatus();

};

searchStatus *startSearchStatus();

#endif




More information about the dslinux-commit mailing list