示例#1
0
DLineEdit::DLineEdit(QWidget *parent, const char *name) :
  QWidget(parent)
{
  setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed);
  setFocusPolicy(Qt::StrongFocus);
  setMaximumWidth(200);
  setObjectName(name);

  QHBoxLayout *hbox = new QHBoxLayout(this);
  hbox->addWidget(&_lineedit);
  hbox->addWidget(&_calbutton);
  hbox->setSpacing(1);
  hbox->setMargin(0);

  QPixmap pixmap(":/widgets/images/calendar_24.png"); 
  _calbutton.setIconSize(QSize(24,24));
  _calbutton.setIcon(QIcon(pixmap));
  _calbutton.setFlat(true);
  _calbutton.setMaximumSize(pixmap.size());
  _calbutton.setFocusPolicy(Qt::NoFocus);

  connect(&_calbutton,            SIGNAL(clicked()), &_lineedit, SLOT(showCalendar()));
  connect(&_lineedit,     SIGNAL(editingFinished()), &_lineedit, SLOT(parseDate()));
  connect(&_lineedit,SIGNAL(newDate(const QDate &)), this,       SIGNAL(newDate(const QDate &)));

  setFocusProxy(&_lineedit);
}
示例#2
0
FilterDateOrderWidget::FilterDateOrderWidget(QWidget *parent) :
    QWidget(parent),
    m_currentIndex(-1),
    m_chooseDateDlg(0)
{
    setFont(QFont("tahoma", 16));

    m_btnCalendar = new QPushButton(this);
    m_labCurrenttDate = new QLabel(this);
    m_btnBackward = new QPushButton(this);
    m_btnForward  = new QPushButton(this);

    m_btnCalendar->setIconSize(QSize(60, 60));
    m_btnCalendar->setIcon(QIcon(":/images/calendar.png"));
    m_labCurrenttDate->setAlignment(Qt::AlignCenter);
    m_btnBackward->setMinimumSize(100,100);
    m_btnForward->setMinimumSize(100,100);
    m_btnCalendar->setMinimumSize(100,100);


    QHBoxLayout *centrLay = new QHBoxLayout(this);
    centrLay->addWidget(m_btnCalendar);
    centrLay->addSpacing(40);
    centrLay->addWidget(m_btnBackward);
    centrLay->addWidget(m_labCurrenttDate);
    centrLay->addWidget(m_btnForward);

    setFocusProxy(m_btnForward);
    m_currentDate = QDate::currentDate();

    connect(m_btnForward, SIGNAL(clicked()), SLOT(forward()));
    connect(m_btnBackward, SIGNAL(clicked()), SLOT(backward()));
    connect(m_btnCalendar, SIGNAL(clicked()), SLOT(showCalendar()));
}
示例#3
0
XDateEdit::XDateEdit(QWidget *parent, const char *name) :
  XLineEdit(parent, name)
{
  connect(this, SIGNAL(editingFinished()), this, SLOT(parseDate()));
  connect(this, SIGNAL(requestList()),     this, SLOT(showCalendar()));
  connect(this, SIGNAL(requestSearch()),   this, SLOT(showCalendar()));

  if (parent && ! parent->objectName().isEmpty())
    setObjectName(parent->objectName());
  else
    setObjectName(metaObject()->className());

  _allowNull   = FALSE;
  _parsed      = FALSE;
  _nullString  = QString::null;
  _valid       = FALSE;
}
示例#4
0
void main()
{

	int year,month;
	
	printf("please input year and month");
	scanf("y=%d m=%d",&year,&month);
	showCalendar(year,month);
}
示例#5
0
NewAccount::NewAccount ( QWidget *parent, const char *name, bool modal ) : QDialog ( parent, name, modal )
  {
    accountdescription = "";
    dateedited = FALSE;
    setCaption( tr( "Account" ) );

    namelabel = new QLabel ( "Account Name", this );

    accountbox = new QHBox ( this );
    accountname = new QLineEdit ( accountbox );
    descriptionbutton = new QPushButton ( accountbox );
    descriptionbutton->setPixmap ( QPixmap ( "/opt/QtPalmtop/pics/info.png" ) );

    datelabel = new QLabel ( "Date", this );

    datebox = new QHBox ( this );
    startdate = new QLineEdit ( datebox );
    startdate->setDisabled ( TRUE );
    datebutton = new QPushButton ( datebox );
    datebutton->setPixmap ( QPixmap ( "/opt/QtPalmtop/pics/date.png" ) );

    childcheckbox = new QCheckBox ( this );
    childcheckbox->setText( tr ( "Child Account" ) );

    childlabel = new QLabel ( "Child of", this );
    childbox = new QComboBox ( FALSE, this );
    hideChildPulldownMenu ();

    balancelabel = new QLabel ( "Balance", this );

    balancebox = new QHBox ( this );
    accountbalance = new QLineEdit ( balancebox );
    accountbalance->setText ( "0.00" );
    balancecalculator = new QPushButton( balancebox );
    balancecalculator->setPixmap ( QPixmap ( "/opt/QtPalmtop/pics/kcalc.png" ) );

    creditlimitlabel = new QLabel ( "Credit Limit", this );

    creditlimitbox = new QHBox ( this );
    creditlimit = new QLineEdit ( creditlimitbox );
    creditlimitbox->setEnabled ( FALSE );
    creditlimitcalculator = new QPushButton( creditlimitbox );
    creditlimitcalculator->setPixmap ( QPixmap ( "/opt/QtPalmtop/pics/kcalc.png" ) );

    currencybox = new Currency ( this );

    typelabel = new QLabel ( "Type", this );
    accounttype = new QComboBox ( FALSE, this );
    accounttype->insertItem( tr( "Bank" ) );
    accounttype->insertItem( tr( "Cash" ) );
    accounttype->insertItem( tr( "Credit Card" ) );
    accounttype->insertItem( tr( "Equity" ) );
    accounttype->insertItem( tr( "Asset" ) );
    accounttype->insertItem( tr( "Liability" ) );

    layout = new QGridLayout ( this, 7, 2, 4, 2 );
    layout->addWidget ( namelabel , 0, 0, Qt::AlignLeft );
    layout->addWidget ( accountbox, 1, 0, Qt::AlignLeft );
    layout->addWidget ( datelabel, 2, 0, Qt::AlignLeft );
    layout->addWidget ( datebox, 3, 0, Qt::AlignLeft );
    layout->addWidget ( childcheckbox, 4, 0, Qt::AlignLeft );
    layout->addWidget ( childlabel, 5, 0, Qt::AlignLeft );
    layout->addWidget ( childbox, 6, 0, Qt::AlignLeft );
    layout->addWidget ( balancelabel, 0, 1, Qt::AlignLeft );
    layout->addWidget ( balancebox, 1, 1, Qt::AlignLeft );
    layout->addWidget ( creditlimitlabel, 2, 1, Qt::AlignLeft );
    layout->addWidget ( creditlimitbox, 3, 1, Qt::AlignLeft );
    layout->addWidget ( currencybox, 4, 1, Qt::AlignLeft );
    layout->addWidget ( typelabel, 5, 1, Qt::AlignLeft );
    layout->addWidget ( accounttype, 6, 1, Qt::AlignLeft );

    connect ( childcheckbox, SIGNAL ( clicked() ), this, SLOT ( showChildPulldownMenu() ) );
    connect ( balancecalculator, SIGNAL ( released() ), this, SLOT ( showCalculator() ) );
    connect ( creditlimitcalculator, SIGNAL ( released() ), this, SLOT ( showCreditLimitCalculator() ) );
    connect ( accounttype, SIGNAL ( activated(int) ), this, SLOT ( activateCreditLimit(int) ) );
    connect ( datebutton, SIGNAL ( released() ), this, SLOT ( showCalendar() ) );
    connect ( descriptionbutton, SIGNAL ( released() ), this, SLOT ( addAccountDescription() ) );
}
MainWindow::MainWindow(QWidget *parent): QWidget(parent) {
    this->resize(1400,950);


    mainLayer = new QVBoxLayout(this);
    topMenuLayer = new QHBoxLayout(this);
    topLayer = new QHBoxLayout(this);
    workSpaceLayer = new QHBoxLayout(this);
    itemsMenuLayer = new QVBoxLayout(this);
    displayLayer = new QVBoxLayout(this);


    // in top menu layer
    QMenu* tempTopMenu;
    topMenu = new QMenuBar(this);
    tempTopMenu = topMenu->addMenu("File");
    tempTopMenu->addAction("Export to XML");
    tempTopMenu->addAction("Import XML");

    QObject::connect(tempTopMenu,SIGNAL(triggered(QAction*)),this,SLOT(topMenuTreatment(QAction*)));

    topMenuLayer->addWidget(topMenu);

    // in topLayer

    newProjectB = new NewProjectB("New Project",this);
    newTaskB = new NewTaskB("New Task",this);
    calendarB = new QPushButton("Calendar",this);

    calendarB->connect(calendarB,SIGNAL(clicked()),this,SLOT(showCalendar()));

    topLayer->addWidget(newProjectB);
    topLayer->addWidget(newTaskB);
    topLayer->addWidget(calendarB);

    // in itemsMenuLayer

    itemTypeSelector = new MyComboBox(this);
    projectsTree = new QTreeView(this);
    projectsTreeView = new QTreeView(this);
    independentTasksTree = new QTreeView(this);
    projectsTree->setModel(projectsModel);
    projectsTreeView->setModel(projectsTreeModel);
    independentTasksTree->setModel(independentTasksModel);
    independentTasksTree->hide();
    projectsTree->hide();

    projectsTree->setContextMenuPolicy(Qt::CustomContextMenu);
    connect(projectsTree, SIGNAL(customContextMenuRequested(const QPoint&)),
        this, SLOT(showProjectContextMenu(const QPoint&)));

    independentTasksTree->setContextMenuPolicy(Qt::CustomContextMenu);
    connect(independentTasksTree, SIGNAL(customContextMenuRequested(const QPoint&)),
        this, SLOT(showTaskContextMenu(const QPoint&)));

    projectsTreeView->setContextMenuPolicy(Qt::CustomContextMenu);
    connect(projectsTreeView,SIGNAL(customContextMenuRequested(QPoint)),
            this,SLOT(showProjectContextMenu(QPoint)));

    itemTypeSelector->addItem("Projects");
    itemTypeSelector->addItem("Independent Tasks");
    itemTypeSelector->addItem("Projects Trees");

    itemsMenuLayer->addWidget(itemTypeSelector);
    itemsMenuLayer->addWidget(projectsTree);
    itemsMenuLayer->addWidget(projectsTreeView);
    itemsMenuLayer->addWidget(independentTasksTree);

    //setProjectsInMenu(); // no need to call it, already done by the first "indexChanged" event on MyComboBox
    //setEventsInMenu();
    setIndependentTasksInMenu();
    setTasksInModel();
    setProjectsTreeModel();

    // in displayLayer
    calendarTable = new Week(this);
    treeScene = new QGraphicsScene;
    treeView = new QGraphicsView(treeScene);

    treeScene->setSceneRect(300,50,500,500);
    treeView->setScene(treeScene);
    treeView->hide();

    displayLayer->addWidget(calendarTable);
    displayLayer->addWidget(treeView);


    // bottom Event Layer

    eventForm = new EventForm(this);
    eventLayer = new QHBoxLayout(this);
    eventLayer->addWidget(eventForm);
    //////////////////////////////////////


    mainLayer->addLayout(topMenuLayer);
    mainLayer->addLayout(topLayer);
    workSpaceLayer->addLayout(itemsMenuLayer,1);
    workSpaceLayer->addLayout(displayLayer,4);
    mainLayer->addLayout(workSpaceLayer);
    mainLayer->addLayout(eventLayer);


    setLayout(mainLayer);
}