Back to index

im-sdk  12.3.91
IIIMLookupChoice.hh
Go to the documentation of this file.
00001 #ifndef IIIMLOOKUPCHOICE_HH_
00002 #define IIIMLOOKUPCHOICE_HH_
00003 
00004 #include <iiimcf.h>
00005 #include <qhbox.h>
00006 #include <qlayout.h>
00007 #include <qvaluelist.h>
00008 #include "IIIMText.hh"
00009 
00010 class IIIMLookupChoiceItemWidget : public QFrame
00011 {
00012     QSize currentsize;
00013 
00014     IIIMText *plabel;
00015     IIIMText *pchoice;
00016 
00017     void drawContents(
00018        QPainter *p
00019     );
00020 
00021     QSize sizeHint() const;
00022     QSize minimumSizeHint() const;
00023 
00024   public:
00025     IIIMLookupChoiceItemWidget(
00026        IIIMCF_text label,
00027        IIIMCF_text choice,
00028        QWidget *parent = 0,
00029        const char *name = 0,
00030        WFlags f = 0
00031     );
00032     ~IIIMLookupChoiceItemWidget();
00033 };
00034 
00035 class IIIMLookupChoiceWidget : public QHBox
00036 {
00037     QBoxLayout *playout;
00038     IIIMCF_context ctx;
00039     typedef QValueList<IIIMLookupChoiceItemWidget*> IIIMLookupChoiceItemWidgetList;
00040     IIIMLookupChoiceItemWidgetList itemlist;
00041 
00042     int choices_per_window;
00043     int number_of_rows;
00044     int number_of_columns;
00045     int direction;
00046 
00047     void erase_all_items();
00048     void set_layout(
00049         IIIMCF_lookup_choice ilc
00050     );
00051     void update_items(
00052        IIIMCF_lookup_choice ilc
00053     );
00054 
00055   public:
00056     void update_im();
00057 
00058     IIIMLookupChoiceWidget(
00059        IIIMCF_context ctx,
00060        QWidget *parent = 0,
00061        const char *name = 0,
00062        WFlags f = 0
00063     );
00064     ~IIIMLookupChoiceWidget();
00065 };
00066 
00067 #endif
00068 
00069 /* Local Variables: */
00070 /* c-file-style: "iiim-project" */
00071 /* End: */
00072 
00073