亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? fl_scrollbar.cxx

?? flnx 0.17 是做嵌入linux gui 必備工具箱
?? CXX
字號:
//// "$Id: Fl_Scrollbar.cxx,v 1.1.1.1 2003/08/07 21:18:40 jasonk Exp $"//// Scroll bar widget for the Fast Light Tool Kit (FLTK).//// Copyright 1998-1999 by Bill Spitzak and others.//// This library is free software; you can redistribute it and/or// modify it under the terms of the GNU Library General Public// License as published by the Free Software Foundation; either// version 2 of the License, or (at your option) any later version.//// This library is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU// Library General Public License for more details.//// You should have received a copy of the GNU Library General Public// License along with this library; if not, write to the Free Software// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307// USA.//// Please report all bugs and problems to "fltk-bugs@easysw.com".//#include <FL/Fl.H>#include <FL/Fl_Scrollbar.H>#include <FL/fl_draw.H>#include <math.h>#define INITIALREPEAT .5#define REPEAT .05void Fl_Scrollbar::increment_cb() {  int i;  int W = horizontal() ? w() : h();  int S = int(slider_size()*W+.5);  switch (pushed_) {  case 1: i = -linesize_; break;  default:i =  linesize_; break;  case 3: i = -int(S * (maximum() - minimum()) / W); break;  case 4: i =  int(S * (maximum() - minimum()) / W); break;  }  if (maximum() < minimum() && pushed_ < 3) i = -i;  handle_drag(clamp(value() + i));}void Fl_Scrollbar::timeout_cb(void* v) {  Fl_Scrollbar* s = (Fl_Scrollbar*)v;  s->increment_cb();  //Fl::add_timeout(REPEAT, timeout_cb, s);}int Fl_Scrollbar::handle(int event) {  // area of scrollbar:  int area;  int X=x(); int Y=y(); int W=w(); int H=h();  int SX = X; int SY = Y; int SW = W; int SH = H;  // adjust slider area to be inside the arrow buttons:  if (horizontal()) {    if (W >= 3*H) {X += H; W -= 2*H;}  } else {    if (H >= 3*W) {Y += W; H -= 2*W;}  }  // which widget part is highlighted?  int mx = Fl::event_x();  int my = Fl::event_y();  if (!Fl::event_inside(SX, SY, SW, SH)) area = 0;  else if (horizontal()) {    if (mx < X) area = 1;    else if (mx >= X+W) area = 2;    else {      int sliderx;      int S = int(slider_size()*W+.5);      double val = (value()-minimum())/(maximum()-minimum());		if (val >= 1.0) sliderx = W-S;      else if (val <= 0.0) sliderx = 0;      else sliderx = int(val*(W-S)+.5);      if (mx < X+sliderx) area = 3;      else if (mx >= X+sliderx+S) area = 4;      else area = 5;    }  } else {    if (mx < X || mx >= X+W) area = 0;    else if (my < Y) area = 1;    else if (my >= Y+H) area = 2;    else {      int slidery;      int S = int(slider_size()*H+.5);      double val = (value()-minimum())/(maximum()-minimum());      if (val >= 1.0) slidery = H-S;      else if (val <= 0.0) slidery = 0;      else slidery = int(val*(H-S)+.5);      if (my < Y+slidery) area = 3;      else if (my >= Y+slidery+S) area = 4;      else area = 5;    }  }  switch (event) {  case FL_ENTER:  case FL_LEAVE:    return 1;  case FL_RELEASE:    damage(FL_DAMAGE_EXPOSE);    if (pushed_) {      //Fl::remove_timeout(timeout_cb, this);      pushed_ = 0;    }    handle_release();    return 1;  case FL_PUSH:    if (pushed_) return 1;	 if (area != 5) pushed_ = area;    if (pushed_) {      handle_push();      //Fl::add_timeout(INITIALREPEAT, timeout_cb, this);      increment_cb();      damage(FL_DAMAGE_EXPOSE);      return 1;    }    return Fl_Slider::handle(event, X,Y,W,H);  case FL_DRAG:    if (pushed_) return 1;    return Fl_Slider::handle(event, X,Y,W,H);  case FL_SHORTCUT: {    int v = value();    int ls = maximum()>=minimum() ? linesize_ : -linesize_;    if (horizontal()) {      switch (Fl::event_key()) {      case FL_Left:	v -= ls;	break;      case FL_Right:	v += ls;	break;      default:	return 0;      }    } else { // vertical      switch (Fl::event_key()) {      case FL_Up:	v -= ls;	break;      case FL_Down:	v += ls;	break;      case FL_Page_Up:	if (slider_size() >= 1.0) return 0;	v -= int((maximum()-minimum())*slider_size()/(1.0-slider_size()));	v += ls;	break;      case FL_Page_Down:	if (slider_size() >= 1.0) return 0;	v += int((maximum()-minimum())*slider_size()/(1.0-slider_size()));	v -= ls;	break;      case FL_Home:	v = int(minimum());	break;      case FL_End:	v = int(maximum());	break;      default:	return 0;      }    }    v = int(clamp(v));    if (v != value()) {      Fl_Slider::value(v);      value_damage();      do_callback();    }    return 1;}  }  return 0;}void Fl_Scrollbar::draw() {#ifdef PDA   box(FL_BORDER_BOX);  Fl_Color col = selection_color();#endif    int X = x()+Fl::box_dx(box());  int Y = y()+Fl::box_dy(box());  int W = w()-Fl::box_dw(box());  int H = h()-Fl::box_dh(box());  if (damage()&FL_DAMAGE_ALL); draw_box();  if (horizontal()) {#ifdef PDA	 // the slider button    if (W < 3*H) {Fl_Slider::draw(X-1,Y,W+2,H); return;}	 Fl_Slider::draw(X+H-1,Y,W-2*H+2,H);      // draw the boxes for the buttons    if (damage()) {		draw_box((pushed_ == 1) ? FL_BLACK_BOX : FL_BORDER_BOX,	       X, Y, H, H, col);		draw_box((pushed_ == 2) ? FL_BLACK_BOX : FL_BORDER_BOX,	       X+W-H, Y, H, H, col);#else	 // the slider button    if (W < 3*H) {Fl_Slider::draw(X,Y,W,H); return;}	 Fl_Slider::draw(X+H,Y,W-2*H,H);      // draw the boxes for the buttons    if (damage()) {      draw_box((pushed_ == 2) ? down(slider()) : slider(),		  X+W-H, Y, H, H, selection_color());      draw_box((pushed_ == 1) ? down(slider()) : slider(),		  X, Y, H, H, selection_color());#endif      if (active_r())        fl_color(labelcolor());      else        fl_color(inactive(labelcolor()));      int w1 = (H-1)|1; // use odd sizes only      int Y1 = Y+w1/2;      int W1 = w1/3;      int X1 = X+w1/2+W1/2;		//or arrows on buttons#ifdef PDA		if ( pushed_ == 1 )			fl_color(FL_WHITE);		else 			fl_color(FL_BLACK);		fl_polygon(X1-W1, Y1, X1, Y1-W1, X1, Y1+W1);      X1 = X+W-(X1-X)-1;#else		fl_polygon(X1-W1, Y1, X1, Y1-W1, X1, Y1+W1);      X1 = X+W-(X1-X)-1;#endif#ifdef PDA		if ( pushed_ == 2)			fl_color(FL_WHITE);		else			fl_color(FL_BLACK);      fl_polygon(X1+W1, Y1, X1, Y1+W1, X1, Y1-W1);#else      fl_polygon(X1+W1, Y1, X1, Y1+W1, X1, Y1-W1);#endif    	 }  } else { // vertical#ifdef PDA    if (H < 3*W) {Fl_Slider::draw(X,Y-1,W,H+2); return;}    Fl_Slider::draw(X,Y+W-1,W,H-2*W+2);    if (damage()) {      draw_box((pushed_ == 1) ? FL_BLACK_BOX : FL_BORDER_BOX,	       X, Y, W, W, col);      draw_box((pushed_ == 2) ? FL_BLACK_BOX : FL_BORDER_BOX,	       X, Y+H-W, W, W, col);#else          if (H < 3*W) {Fl_Slider::draw(X,Y,W,H); return;}    Fl_Slider::draw(X,Y+W,W,H-2*W);    if (damage()) {		draw_box((pushed_ == 1) ? down(slider()) : slider(),	       X, Y, W, W, selection_color());      draw_box((pushed_ == 2) ? down(slider()) : slider(),	       X, Y+H-W, W, W, selection_color());#endif		if (active_r())        fl_color(labelcolor());      else        fl_color(labelcolor() | 8);      int w1 = (W-1)|1; // use odd sizes only      int X1 = X+w1/2;      int W1 = w1/3;      int Y1 = Y+w1/2+W1/2;		// draw the arrow on the buttons#ifdef PDA		if ( pushed_ == 1 )			fl_color(FL_WHITE);		else 			fl_color(FL_BLACK);#endif      fl_polygon(X1, Y1-W1, X1+W1, Y1, X1-W1, Y1);      Y1 = Y+H-(Y1-Y)-1;#ifdef PDA		if ( pushed_ == 2 )			fl_color(FL_WHITE);		else			fl_color(FL_BLACK);#endif      fl_polygon(X1, Y1+W1, X1-W1, Y1, X1+W1, Y1);    }  }}Fl_Scrollbar::Fl_Scrollbar(int X, int Y, int W, int H, const char* L)  : Fl_Slider(X, Y, W, H, L){  box(FL_FLAT_BOX);  // set the color for the underbar here#ifdef PDA  color(FL_WHITE);#else  color(FL_DARK2);#endif  slider(FL_UP_BOX);  linesize_ = 16;  pushed_ = 0;  step(1);}//// End of "$Id: Fl_Scrollbar.cxx,v 1.1.1.1 2003/08/07 21:18:40 jasonk Exp $".//

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91麻豆精品国产91久久久| 一区二区三区视频在线观看 | 黑人巨大精品欧美一区| 白白色亚洲国产精品| 日韩亚洲欧美一区二区三区| 国产精品第一页第二页第三页| 日韩成人一级片| 91精品91久久久中77777| 欧美精品一区二区在线播放| 亚洲成人免费av| 波多野结衣一区二区三区| 精品国产自在久精品国产| 亚洲伊人色欲综合网| jlzzjlzz亚洲日本少妇| 久久久久久久精| 青青草精品视频| 欧美精品在线视频| 亚洲一区在线观看网站| 色婷婷综合在线| 日韩理论片一区二区| 不卡的电影网站| 国产精品乱子久久久久| 懂色av中文一区二区三区 | 欧美视频一二三区| 一区二区三区在线视频观看58| 成人午夜短视频| 欧美国产一区视频在线观看| 国产精品一二一区| 久久精品一区二区| 国产999精品久久久久久| 久久精品人人爽人人爽| 国产成人在线网站| 国产亚洲成年网址在线观看| 懂色av中文字幕一区二区三区| 久久久不卡影院| 国产一区二区伦理| 久久久不卡影院| 成人午夜伦理影院| ...av二区三区久久精品| 91在线视频免费91| 亚洲精品自拍动漫在线| 欧美中文字幕一二三区视频| 偷拍一区二区三区四区| 日韩欧美高清在线| 国产成人在线观看| 亚洲婷婷国产精品电影人久久| 色狠狠桃花综合| 日韩精品91亚洲二区在线观看| 日韩欧美电影一二三| 国产精品一线二线三线精华| 国产精品天干天干在线综合| 91麻豆精品在线观看| 亚洲成人av福利| 久久一区二区三区国产精品| 成人深夜视频在线观看| 亚洲激情第一区| 日韩欧美国产高清| 成人av在线网站| 五月婷婷激情综合| 久久精品日产第一区二区三区高清版| 波多野结衣中文字幕一区 | 欧美日韩精品高清| 久久 天天综合| 成人欧美一区二区三区在线播放| 色婷婷精品大在线视频| 久久av资源站| 亚洲久草在线视频| 精品日本一线二线三线不卡| 91在线国产观看| 五月天激情综合| 国产精品网站导航| 欧美一区二区大片| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 在线免费一区三区| 精品一区二区av| 亚洲免费av观看| 精品国内二区三区| 欧美日韩一区中文字幕| 国产成人啪午夜精品网站男同| 亚洲图片欧美综合| 国产精品国产自产拍高清av| 日韩一区二区电影网| 色呦呦网站一区| 国产乱人伦偷精品视频不卡| 亚洲成人一二三| 亚洲乱码一区二区三区在线观看| 精品sm在线观看| 欧美日韩成人综合| 91浏览器在线视频| 国产高清精品久久久久| 免费在线观看成人| 亚洲成人动漫一区| 伊人色综合久久天天| 国产精品天干天干在观线| 精品久久久久久最新网址| 欧美丰满一区二区免费视频| 欧美综合天天夜夜久久| 不卡一区二区三区四区| 国产a区久久久| 国内成人免费视频| 裸体健美xxxx欧美裸体表演| 三级欧美韩日大片在线看| 亚洲在线视频网站| 亚洲品质自拍视频| 亚洲情趣在线观看| 亚洲三级电影网站| 中文字幕一区二区在线播放| 国产精品久久午夜| 国产精品成人一区二区三区夜夜夜| 久久久久国产精品人| 国产午夜精品久久久久久免费视| 欧美一区二区三区啪啪| 日韩三级精品电影久久久| 在线不卡一区二区| 91精品午夜视频| 欧美一级黄色录像| 日韩欧美在线1卡| 日韩精品一区二区三区在线观看| 日韩一区二区三区免费观看| 日韩一级视频免费观看在线| 欧美zozo另类异族| 久久精品一二三| 国产精品久久久久久久久免费樱桃| 国产视频一区二区在线| 国产精品国产三级国产| 日韩一区在线看| 亚洲图片欧美视频| 青青草97国产精品免费观看无弹窗版| 青椒成人免费视频| 国产最新精品精品你懂的| 大胆亚洲人体视频| 91免费看`日韩一区二区| 欧美日韩一区二区三区不卡| 日韩欧美国产麻豆| 国产日韩精品久久久| 亚洲女与黑人做爰| 五月天网站亚洲| 国产米奇在线777精品观看| av亚洲精华国产精华| 欧美三级日韩三级| 精品精品国产高清a毛片牛牛| 欧美激情一区二区三区四区| 亚洲综合色婷婷| 久久精品国产亚洲一区二区三区| 粉嫩久久99精品久久久久久夜| 在线视频综合导航| 欧美va亚洲va| 亚洲精品视频自拍| 精品一二三四在线| 91久久精品一区二区三区| 欧美成人福利视频| 自拍偷拍亚洲综合| 久久精品久久久精品美女| 99久久伊人久久99| 欧美一区二区视频在线观看2020| 国产三级一区二区| 午夜成人在线视频| eeuss鲁片一区二区三区| 日韩一区二区三区免费看| 亚洲欧美视频在线观看视频| 久久精品99久久久| 欧美性色黄大片手机版| 2024国产精品视频| 午夜精品一区在线观看| a美女胸又www黄视频久久| 日韩午夜在线影院| 一区二区三区.www| 成人在线一区二区三区| 日韩欧美国产三级| 亚洲高清免费观看| 99精品欧美一区| 国产亚洲一区二区三区四区 | 欧美极品美女视频| 日韩黄色小视频| 91精品福利视频| 亚洲一区二区精品久久av| 成人深夜在线观看| 日韩欧美视频在线| 午夜精品久久久久| 91免费版在线| 国产精品国产三级国产有无不卡| 久久精品久久综合| 欧美一级日韩一级| 亚洲成人激情av| 欧美亚洲国产bt| 一区二区三区**美女毛片| 99久久夜色精品国产网站| 日本一区二区免费在线| 精品一区二区三区在线播放视频| 欧美精品高清视频| 亚洲va天堂va国产va久| 色婷婷综合中文久久一本| 亚洲丝袜另类动漫二区| 不卡影院免费观看| 中文字幕中文乱码欧美一区二区 | 久久久久国产免费免费| 国产在线视频一区二区| 日韩一二三区视频| 久久黄色级2电影| 欧美精品一区视频|