File: TopShell.h

package info (click to toggle)
gmod 3.1-8.3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 1,340 kB
  • ctags: 808
  • sloc: cpp: 7,764; makefile: 76
file content (87 lines) | stat: -rw-r--r-- 1,552 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// -*-C++-*-
// This file is part of the gmod package
// Copyright (C) 1997 by Andrew J. Robinson

#ifndef __TopShellH
#define __TopShellH

#include <qapp.h>
#include <qlabel.h>
#include <qlcdnum.h>
#include <qpixmap.h>
#include <qpushbt.h>
#include <qwidget.h>

class CommentShell;
class OptShell;
class QueueShell;
class TrackShell;
class SampleShell;

class TopShell : public QWidget
{
  Q_OBJECT

  signals:
  void channelSignal(int);

public:
  TopShell(CommentShell *, OptShell *, QueueShell *, SampleShell *, TrackShell *);
  void moduleFile(const char *);
  void moduleTitle(const char *);
  void setPosition(int);
  void setChannels(int);
  void setMaxPosition(int);
  void doNext(int);

private:
  void pickRandom();

  static const char *backXbm;
  static const char *forwardXbm;
  static const char *previousXbm;
  static const char *nextXbm;
  static const char *playXbm;
  static const char *stopXbm;

  QLabel *fileLabel;
  QLabel *nameLabel;
  
  QLCDNumber *positionLcd;
  QLCDNumber *channelLcd;

  QPushButton *button[12];
  QPixmap *pixmaps[6];

  int maxPosition;
  int doRandom;

 private slots:
 void backClicked();
  void forwardClicked();
  void playClicked();
  void nextClicked();
  void previousClicked();
  void stopClicked();
  void setRandom();
};

inline void
TopShell::setMaxPosition(int position)
{
  maxPosition = position;
}

inline void
TopShell::moduleFile(const char *modFile)
{
  fileLabel->setText(modFile);
}

inline void
TopShell::moduleTitle(const char *modTitle)
{
  nameLabel->setText(modTitle);
}

#endif