Changeset 24147
- Timestamp:
- 10/08/13 23:12:11 (9 years ago)
- Location:
- titan/titan
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
titan/titan/struct.h
r24146 r24147 638 638 int regverticaladdress; 639 639 int scaleposx, scaleposy; 640 int drawed;641 640 struct subpagereg *next; 642 641 }; -
titan/titan/subtitle.h
r24146 r24147 80 80 while(pageregnode != NULL) 81 81 { 82 if(pageregnode->drawed == 0)83 {84 pageregnode = pageregnode->next;85 continue;86 }87 88 82 struct subreg *regnode = subnode->regions; 89 83 while(regnode != NULL) … … 107 101 subfree(0); 108 102 } 109 }110 111 int checkfbregion(struct subpage* page)112 {113 struct subpagereg* pageregnode = NULL;114 int y, x;115 116 if(status.autosubtitle == 0) return 0;117 if(page == NULL) return 0;118 119 pageregnode = page->pageregions;120 while(pageregnode != NULL)121 {122 struct subreg *regnode = page->regions;123 while(regnode != NULL)124 {125 if(regnode->regid == pageregnode->regid) break;126 regnode = regnode->next;127 }128 129 if(regnode != NULL && regnode->buf != NULL)130 {131 int posx = pageregnode->reghorizontaladdress * skinfb->width / subdisplaywidth;132 int posy = pageregnode->regverticaladdress * skinfb->height / subdisplayheight;133 134 //check if drawing place is empty135 for(y = 0; y < regnode->scaleheight; y++)136 {137 if(y == 0 || y == regnode->scaleheight - 1)138 {139 for(x = 0; x < regnode->scalewidth; x++)140 {141 if(getpixel(posx + x, posy + y) != 0)142 return 1;143 }144 }145 else146 {147 if(getpixel(posx, posy + y) != 0 || getpixel(posx + regnode->scalewidth - 1, posy + y) != 0)148 return 1;149 }150 }151 }152 153 pageregnode = pageregnode->next;154 }155 156 return 0;157 103 } 158 104 … … 189 135 190 136 subclear(0); 191 192 if(checkfbregion(page) == 1) return;193 137 194 138 pageregnode = page->pageregions; … … 212 156 pageregnode->scaleposx = posx; 213 157 pageregnode->scaleposy = posy; 214 pageregnode->drawed = 1;215 158 216 159 //scale
Note: See TracChangeset
for help on using the changeset viewer.